
/* variable set */
:root {
	--concept-color: #009ce5;
	--acce-color: #ffe100;
	--base-color: #fff;
	--base-fontsize: clamp(1.5rem,calc(0.27vw + 13px),1.8rem);
	--base-lineheight: 1.71;
	
	
	--visual-height: clamp(600px,calc(23.94vw + 641px),650px);
}
@media (max-width: 1600px) {
	:root {
		--visual-height: 600px;
	}
}
@media (max-width: 1200px) {
	:root {
		--visual-height: 500px;
	}
}
@media (max-width: 1000px) {
	:root {
		--visual-height: 450px;
	}
}
@media (max-width: 767px) {
	:root {
		--base-fontsize: 1.5rem;
		
		--visual-height: auto;
	}
}

/* font set */
@font-face {
  font-family: 'rajdhani';
  font-weight: 700;
  src: url('../font/rajdhani.woff') format('opentype');
}
@font-face {
  font-family: 'bahnschrift';
  src: url('../font/bahnschrift.woff') format('opentype');
}



/* page css */
body { font-size: var(--base-fontsize); background: var(--base-color); color: #333; }
.page-txt { font-size: var(--base-fontsize); line-height: var(--base-lineheight); }
.page-txt::before { content: ""; width: 0; height: 0; display: block; margin-top: -0.575em; }
.page-txt + .page-txt { margin-top: 1.8em; }

.page-item { position: relative; }
.page-item--box { padding-left: 15px; }
.page-item--box::before { position: absolute; content: ""; top: 0.45em; left: 0; width: 12px; height: 12px; background: #333; }
.page-item__wrap { display: flex; flex-wrap: wrap; justify-content: space-between; }
.page-item__ex { flex: 1; }
.page-item a { display: inline; }
.page-top__area { bottom: 0; right: 0; width: 100%; height: 50px; background: #ccc; }
.page-top__area-btn { width: 100px; height: 100px; background: #cc0; display: block; }
.page-top__btn { position: relative; display: block; width: 80px; height: 80px; border-radius: 100%; background: #333; }
.page-top__btn::after { content:""; position: absolute; margin: auto; top: 10px; bottom: 0; left: 0; right: 0; border-top: 3px solid #fff; border-right: 3px solid #fff; transform: rotate(-45deg); width: 20px; height: 20px; }

.page-btn { display: block; }


@media (max-width: 767px) {
	.page-wrap { max-width: 598px; }
	.page-txt::before { margin-top: -0.5em; }
	.page-ex::before { margin-top: -0.5em; }
	.page-top { position: fixed; right: 15px; }
	.page-top__btn { width: 54px; height: 54px; }
	.page-top__btn::after { top: 8px; width: 15px; height: 15px; }
}

/* header */
.visual { position: relative; animation: fade_in .75s forwards; }
.visual-wrap { position: absolute; top: 0; left: 0; display: grid; grid-auto-rows: auto 1fr; grid-auto-columns: 1fr 45.3vw; z-index: 100; background: rgba(0,156,229,.9); width: 100%; height: var(--visual-height); overflow: hidden; padding-left: clamp(20px,calc(24.31vw + -272px),195px); }
.visual-ex { width: min(calc(31.39vw + 204px),806px); margin-top: clamp(40px,calc(3.48vw + -2px),65px); grid-row: 1 / 2; grid-column: 1 / 2; }
.visual-txt { font-size: clamp(2.2rem,calc(1.39vw + 6px),3.2rem); font-weight: 700; line-height: 1.5; color: #fff; max-width: 750px; margin: clamp(30px,calc(2.78vw + -4px),50px) auto 0; padding: 0 clamp(0px,calc(-3.34vw + 61px),20px); }
.visual-txt--bold { color: var(--acce-color); }
.visual-fig { width: 65vw; position: relative; grid-row: 1 / 3; grid-column: 2 / 3; }
.visual-fig__img { position: absolute; top: clamp(-60px,calc(-19.59vw + 317px),120px); left: 0; width: 50%; }
.visual-stamp { grid-row: 2 / 3; grid-column: 1 / 2; width: min(calc(31.39vw + 204px),806px); z-index: 100; }
.visual-stamp__wrap { background: var(--acce-color); box-shadow: 20px 20px 0 0 rgba(0,68,133,.5); padding: 25px 25px 30px; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; margin: 0 auto; width: calc((100% - 40px)); margin-top: clamp(20px,calc(4.35vw + -24px),60px); }
.visual-stamp__ex { flex: 1; }
.visual-stamp__label { font-size: clamp(1.8rem,calc(1.12vw + 5px),2.6rem); line-height: 1.2; font-weight: 700; }
.visual-stamp__txt { margin-top: 20px; }
.visual-stamp__acce { width: clamp(100px,calc(8.34vw + -1px),160px); }
.visual-stamp__list-wrap { overflow: hidden; margin-top: 10px; font-size: 1.6rem; }
.visual-stamp__list-img { float: right; width: 100px; padding: 10px; background: #fff; margin-left: 15px; margin-top: 5px; }

.visual-bg { width: 100%; height: var(--visual-height); overflow: hidden; }
.visual-bg__list { position: relative; }
.visual-bg__item { position: absolute; top: 0; left: 0; width: 100%; height: var(--visual-height); z-index: 10; opacity: 0; animation: itemO .25s forwards; }
.visual-bg__item.active { animation: item .25s forwards; }
.visual-bg__item-img { width: 100%; height: 100%; object-fit: cover; }

.visual-list { display: flex; flex-wrap: wrap; gap: 30px 40px; max-width: 1580px; inline-size: calc(100% - clamp(30px, calc(0.87vw + 24px), 40px)); margin: 90px auto 0; padding: 0 clamp(0px, calc(16.21vw + -93px), 70px); }
.visual-item { inline-size: calc((100% - 40px) / 2); border-radius: 20px; border: 3px solid #0b2c67; overflow: hidden; box-shadow: clamp(10px,calc(1.48vw + 2px),30px) clamp(10px,calc(1.48vw + 2px),30px) 0 rgba(11,44,103,.5); margin-bottom: 30px; }
.visual-list__label { background: #0b2c67; text-align: center; color: #fff; font-weight: 700; padding: 13px 15px 16px; font-size: 2.4rem; }
.visual-list__ex { padding: 40px 30px; }
.visual-list__days { display: flex; flex-wrap: wrap; gap: 10px 30px; align-items: center; }
.visual-list__date { font-size: 4rem; width: 160px; line-height: 1; }
.visual-list__date .t { font-size: 0.55em; font-weight: 700; color: #0b2c67; }
.visual-list__date .s { font-size: 0.55em; font-weight: 700; color: #c00; }
.visual-list__adress { flex: 1; font-size: 2rem; }

.visual-list__txt { margin-top: 20px; font-size: 1.8rem; }
.visual-list__img { margin: 0 auto 30px; }
.visual-item:nth-child(1) .visual-list__img { max-width: 330px; }
.visual-item:nth-child(2) .visual-list__img { max-width: 600px; }

@keyframes item{
	0%   { opacity: 0; z-index: 10; }
	1%   { opacity: 0; z-index: 15; }
	100% { opacity: 1; z-index: 15; }
}
@keyframes itemO{
	0%   { opacity: 1; z-index: 15; }
	99%   { opacity: 0; z-index: 15; }
	100% { opacity: 0; z-index: 10; }
}


.subimg { width: 100%; height: 100%; display: block; background-repeat: repeat; background-size: cover; background-position: center; }

@media (max-width: 1000px) {
	.visual-ex { grid-row: 1 / 2; grid-column: 1 / 2; }
	.visual-fig { grid-row: 1 / 2; grid-column: 2 / 3; }
	.visual-fig__img { top: clamp(-80px,calc(-32.33vw + 244px),-5px); width: 80%; }
	.visual-stamp { grid-row: 2 / 3; grid-column: 1 / 3; width: 100%; margin: 0 auto; padding-right: 40px; }
	.visual-stamp__wrap { max-width: clamp(700px,calc(21.56vw + 535px),750px); margin: 40px auto 0; }
	
	.visual-list__date { font-size: 4rem; width: 160px; }
	.visual-list__adress { flex: 0 1 auto; font-size: 2rem; }
}

@media (max-width: 767px) {
	.visual-wrap { position: relative; display: flex; flex-direction: column; padding: 0 15px 40px; }
	.visual-ex { width: 100%; margin-top: 20px; order: 2; }
	.visual-title { max-width: 400px; margin: 0 auto; position: relative; z-index: 10; }
	.visual-txt { font-size: 1.8rem; max-width: 500px; margin: 30px auto 0; padding: 0; }
	.visual-txt br { display: none; }
	.visual-txt .inliner { display: inline; }
	.visual-txt--bold { color: var(--acce-color); }
	.visual-fig { position: relative; width: 100%; max-width: 300px; order: 1; margin: -30px auto -100px; z-index: 8; }
	.visual-fig__img { position: relative; width: 100%; margin-left: 16px; }
	.visual-stamp { width: 100%; max-width: 500px; order: 3; padding-right: 0; }
	.visual-stamp__wrap { box-shadow: 10px 10px 0 0 rgba(0,68,133,.5); padding: 20px 15px 20px 20px; width: 100%; margin-top: 30px; }
	.visual-stamp__ex { flex: 1; }
	.visual-stamp__label { font-size: 1.6rem; }
	.visual-stamp__txt { margin-top: 20px; }
	.visual-stamp__acce { width: clamp(100px,calc(8.34vw + -1px),160px); display: none; }
	.visual-bg { display: none; }
	
	.visual-list { inline-size: calc((100% - 30px)); max-width: 568px; margin: 60px auto 0; }
	.visual-item { inline-size: 100%; margin-bottom: 15px; }
	.visual-list__label { font-size: 2rem; }
	.visual-list__ex { padding: 30px 15px; }
	.visual-list__date { font-size: 2.8rem; width: 120px; }
	.visual-list__adress { font-size: 1.6rem; }
	.visual-list__txt { font-size: 1.5rem; }
	.visual-list__img { margin: 0 auto 20px; }
	.visual-item:nth-child(1) .visual-list__img { max-width: 330px; }
	.visual-item:nth-child(2) .visual-list__img { max-width: 600px; }
}
@media (max-width: 767px) {
	.visual-stamp__wrap { padding: 20px 15px; }
	.visual-stamp__ex { flex: 0 1 auto; margin-right: 0; }
	.visual-stamp__acce { width: 170px; margin: 20px auto 0; padding-right: 30px; }
}

/* contents */

.sct-event { background: #fff; padding-top: clamp(70px,calc(5.63vw + 52px),160px); }
.sct-event__img { margin-top: 60px; display: block; }
.sct-head { position: relative; text-align: center; font-size: clamp(2.8rem,calc(2vw + 22px),6rem); font-weight: 700; line-height: 1.2; padding-bottom: clamp(35px,calc(0.94vw + 32px),50px); padding-left: 15px; padding-right: 15px; margin-inline-start: auto; margin-inline-end: auto; }
.sct-head::after { position: absolute; content: ""; bottom: 0; left: 0; right: 0; margin: 0 auto; width: clamp(80px,calc(4.38vw + 66px),150px); height: 15px; border-radius: 7px; background: var(--acce-color); }
.sct-event__unc { margin: 0 auto; padding-top: clamp(50px,calc(3.13vw + 40px),100px); display: flex; flex-wrap: wrap; justify-content: center; }
.sct-event__unc-item { width: clamp(150px,calc(11.1vw + 87px),300px); }
.sct-event__unc-item + .sct-event__unc-item { margin-left: clamp(30px,calc(3.7vw + 9px),80px); }
.sct-event__unc-btn { position: relative; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; border-radius: 100%; color: #fff; height: clamp(150px,calc(11.1vw + 87px),300px); line-height: 1.31; font-size: clamp(2rem,calc(1.63vw + 11px),4.2rem); font-weight: 700; text-align: center; }
.sct-event__unc-btn__wrap::before { position: absolute; content: ""; bottom: clamp(20px,calc(0.74vw + 16px),30px); left: 0; right: 0; margin: 0 auto; width: 3px; height: clamp(8px,calc(0.6vw + 5px),16px); background: #fff; z-index: 20; }
.sct-event__unc-btn__wrap::after  { position: absolute; content: ""; bottom: clamp(11px,calc(0.82vw + 7px),22px); left: 0; right: 0; margin: 0 auto; width: clamp(12px,calc(0.74vw + 8px),22px); height: clamp(12px,calc(0.74vw + 8px),22px); border-right: 2px solid #fff; border-bottom: 2px solid #fff; transform: rotate(45deg); z-index: 20; }
.sct-event__place { margin-top: clamp(60px,calc(3.75vw + 48px),120px); }
.sct-place + .sct-place { margin-top: 120px; }
.sct-place__head { text-align: center; font-size: clamp(2.6rem,calc(2.13vw + 20px),6rem); line-height: 1; color: #fff; font-weight: 700; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; height: clamp(120px,calc(5vw + 104px),200px); width: 100%; }
.sct-place__list { margin: clamp(50px,calc(3.13vw + 40px),100px) auto 0; max-width: 1580px; padding: 0 clamp(0px,calc(16.21vw + -93px),70px); width: calc(100% - clamp(30px,calc(0.87vw + 24px),40px)); }
.sct-place__item { border-radius: clamp(20px,calc(2.22vw + 8px),50px); background: #fff; overflow: hidden; }
.sct-place__back { margin-top: clamp(60px,calc(3.75vw + 48px),120px); text-align: center; font-size: clamp(1.8rem,calc(0.63vw + 16px),2.8rem); }
.sct-place__back-btn { position: relative; display: inline; color: #444; padding-right: 30px; }
.sct-place__back-btn::after { position: absolute; content: ""; top: 0.25em; bottom: 0; right: 0; margin: auto 0; width: 0; height: 0; border-style: solid; border-width: 0 10px 17.3px 10px; border-color: transparent transparent #333 transparent; }

.sct-place__item:nth-child(n+2) { margin-top: clamp(60px,calc(3.75vw + 48px),120px); }
.sct-place__title { min-height: 200px; width: 100%; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; padding: 10px 0; font-weight: 700; }
.sct-place__title--l .sct-place__title-txt { text-align: left; }
.sct-place__title-txt { flex: 1; text-align: center; color: #fff; font-size: clamp(2rem,calc(1.63vw + 15px),4.6rem); line-height: 1.2; padding: 0 20px; }
.sct-place__title-stamp { width: clamp(120px,calc(2.22vw + 108px),150px); padding-right: clamp(25px,calc(1.11vw + 19px),40px) ; }
.sct-place__content { width: calc(100% - 80px); max-width: 1080px; margin: 0 auto; padding-bottom: clamp(60px,calc(3.75vw + 48px),120px); }
.sct-place__content-txt { padding: clamp(40px,calc(2.5vw + 32px),80px) 0; font-size: clamp(1.8rem,calc(0.88vw + 16px),3.2rem); line-height: 1.5; text-align: center; }
.sct-place__content-txt--l { text-align: left; }
.sct-place__about { border-top: 3px solid #ccc; border-bottom: 3px solid #ccc; padding: clamp(35px,calc(1.25vw + 31px),55px) 0; font-size: clamp(1.5rem,calc(0.57vw + 14px),2.4rem); line-height: 1.4; }
.sct-place__about-item { display: flex; flex-wrap: wrap; justify-content: space-between; }
.sct-place__about-item:nth-child(n+2) { margin-top: clamp(25px,calc(0.94vw + 22px),40px); }
.sct-place__about-label { font-weight: 700; width: 9em; }
.sct-place__about-ex { flex: 1; width: 100%; }
.sct-place__about-map { position: relative; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; max-width: 500px; border-radius: 20px; text-align: center; color: #444; background: var(--acce-color); font-weight: 700; height: clamp(55px,calc(2.22vw + 43px),85px); margin-top: 15px; }
.sct-place__about-map::after { position: absolute; content: ""; top: 0; bottom: 0; right: 30px; margin: auto 0; width: 0; height: 0; border-style: solid; border-width: 26.0px 15px 0 15px; border-color: #444 transparent transparent transparent; }
.sct-place__about-link { position: relative; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; max-width: 500px; border-radius: 20px; text-align: center; color: #444; background: var(--acce-color); font-weight: 700; height: clamp(55px,calc(2.22vw + 43px),85px); }
.sct-place__about-link::before { position: absolute; content: ""; top: 8px; bottom: 0; right: 35px; margin: auto 0; width: 24px; height: 20px; border-left: 2px solid #444; border-bottom: 2px solid #444; }
.sct-place__about-link::after { position: absolute; content: ""; top: 0; bottom: 0; right: 30px; margin: auto 0; width: 24px; height: 20px; border: 2px solid #444; }


#shinjuku .sct-place__title-txt::before { content: "新宿駅周辺"; color: #ae88d9; display: block; max-width: 300px; text-align: center; text-align: center; font-size: 0.75em; margin: 0 auto 10px; background: #fff; border-radius: 30px; padding: 5px 10px; }
#yotsukagu .sct-place__title-txt::before { content: "四谷・神楽坂"; color: #f6a914; display: block; max-width: 300px; text-align: center; text-align: center; font-size: 0.75em; margin: 0 auto 10px; background: #fff; border-radius: 30px; padding: 5px 10px; }
#tawao .sct-place__title-txt::before { content: "高田馬場・早稲田・大久保"; color: #90da49; display: block; max-width: 400px; text-align: center; text-align: center; font-size: 0.75em; margin: 0 auto 10px; background: #fff; border-radius: 30px; padding: 5px 10px; }

.sct-place__fig { margin-top: clamp(40px,calc(9.26vw + -13px),80px); }
.sct-place__fig-wrap { display: flex; flex-wrap: wrap; justify-content: space-between; }
.sct-place__fig--1 { max-width: 768px; margin: 0 auto; }
.sct-place__fig--1 .sct-place__fig-item { width: 100%; }
.sct-place__fig--2 .sct-place__fig-item { width: calc((100% - 40px) / 2); }
.sct-place__fig--3 .sct-place__fig-item { width: calc((100% - 40px) / 3); }
.sct-place__fig-item { background: #ccc; }

.sct-event__unc-btn[href*="shinjuku"] { filter:drop-shadow(15px 15px 0 rgba(174,136,217,.5)); background: #ae88d9; }
.sct-event__unc-btn[href*="yotsukagu"] { filter:drop-shadow(15px 15px 0 rgba(246,169,20,.5)); background: #f6a914; }
.sct-event__unc-btn[href*="tawao"] { filter:drop-shadow(15px 15px 0 rgba(144,218,73,.5)); background: #90da49; }
.sct-event__unc-btn[href*="shinjuku"]::after { position: absolute; content: ""; bottom: -20px; left: 0; right: 0; margin: 0 auto; width: 0; height: 0; border-style: solid; border-width: 26.0px 15px 0 15px; border-color: #ae88d9 transparent transparent transparent; z-index: 10; }
.sct-event__unc-btn[href*="yotsukagu"]::after { position: absolute; content: ""; bottom: -20px; left: 0; right: 0; margin: 0 auto; width: 0; height: 0; border-style: solid; border-width: 26.0px 15px 0 15px; border-color: #f6a914 transparent transparent transparent; z-index: 10; }
.sct-event__unc-btn[href*="tawao"]::after { position: absolute; content: ""; bottom: -20px; left: 0; right: 0; margin: 0 auto; width: 0; height: 0; border-style: solid; border-width: 26.0px 15px 0 15px; border-color: #90da49 transparent transparent transparent; z-index: 10; }

@media (max-width: 1000px) {
	.sct-place__fig--3 .sct-place__fig-item { width: calc((100% - 40px) / 2); }
	.sct-place__fig--3 .sct-place__fig-item:nth-child(3) { margin: 40px auto 0; }
}
@media (max-width: 767px) {
	.sct-place__title { min-height: 100px; }
	.sct-event__img { margin-top: 40px; }
}
@media (max-width: 568px) {
	.sct-event__unc { max-width: 300px; } 
	.sct-event__unc-item { width: 140px; }
	.sct-event__unc-item + .sct-event__unc-item { margin-left: 0; }
	.sct-event__unc-item:nth-child(2) { margin-left: 10px; }
	.sct-event__unc-btn { height: 140px; font-size: 1.8rem; }
	.sct-event__unc-btn[href*="shinjuku"] { filter:drop-shadow(5px 5px 0 rgba(174,136,217,.5)); }
	.sct-event__unc-btn[href*="yotsukagu"] { filter:drop-shadow(5px 5px 0 rgba(246,169,20,.5)); }
	.sct-event__unc-btn[href*="tawao"] { filter:drop-shadow(5px 5px 0 rgba(144,218,73,.5)); }
	.sct-event__unc-btn[href*="shinjuku"]::after { bottom: -10px; }
	.sct-event__unc-btn[href*="yotsukagu"]::after { bottom: -10px; }
	.sct-event__unc-btn[href*="tawao"]::after { bottom: -10px; }
	.sct-place + .sct-place { margin-top: 60px; }
	.sct-place__title { justify-content: space-between; align-items: center; padding: 20px 0; }
	.sct-place__title-txt { flex: 0 1 auto; padding: 0 10px; width: 100%; }
	.sct-place__title-stamp { margin: 15px auto 0; padding-right: 0; width: 70px; }
	.sct-place__content { width: calc(100% - clamp(30px,calc(3.13vw + 20px),80px)); }
	.sct-place__content-txt { text-align: left; }
	.sct-place__about-label { width: 100%; }
	.sct-place__about-ex { flex: 0 1 auto; margin-top: 10px; }
	.sct-place__about-map::after { right: 30px; border-width: 13.0px 7.5px 0 7.5px; }
	.sct-place__about-link::before { top: 8px; right: 25px; width: 16px; height: 12px; }
	.sct-place__about-link::after { right: 20px; width: 16px; height: 12px; }
	.sct-place__fig-wrap { max-width: 420px; margin: 0 auto; }
	.sct-place__fig--1 .sct-place__fig-item { width: 100%; }
	.sct-place__fig--2 .sct-place__fig-item { width: 100%; }
	.sct-place__fig--3 .sct-place__fig-item { width: 100%; }
	.sct-place__fig-item:nth-child(n+2) { margin-top: 20px!important; }
}



.sct-place--shinjuku { background: #fff; }
.sct-place--shinjuku .sct-place__head { background: #ae88d9; }
.sct-place--shinjuku .sct-place__item { box-shadow: clamp(10px,calc(1.48vw + 2px),30px) clamp(10px,calc(1.48vw + 2px),30px) 0 rgba(174,136,217,.5); border: 3px solid #ae88d9; }
.sct-place--shinjuku .sct-place__title { background: #ae88d9; }

.sct-place--yotsukagu { background: #fff; }
.sct-place--yotsukagu .sct-place__head { background: #f6a914; }
.sct-place--yotsukagu .sct-place__item { box-shadow: clamp(10px,calc(1.48vw + 2px),30px) clamp(10px,calc(1.48vw + 2px),30px) 0 rgba(246,169,20,.5); border: 3px solid #f6a914; }
.sct-place--yotsukagu .sct-place__title { background: #f6a914; }

.sct-place--tawao { background: #fff; }
.sct-place--tawao .sct-place__head { background: #90da49; }
.sct-place--tawao .sct-place__item { box-shadow: clamp(10px,calc(1.48vw + 2px),30px) clamp(10px,calc(1.48vw + 2px),30px) 0 rgba(144,218,73,.5); border: 3px solid #90da49; }
.sct-place--tawao .sct-place__title { background: #90da49; }


.stamp-info { margin: 120px auto 0; max-width: 900px; padding: 0 clamp(15px,calc(1.16vw + 7px),20px); }
.stamp-info__wrap { background: var(--acce-color); padding: clamp(30px,calc(1.14vw + 27px),40px) clamp(15px,calc(2.32vw + -3px),25px) clamp(35px,calc(1.14vw + 32px),45px); }
.stamp-info__label { text-align: center; font-weight: 700; font-size: clamp(2rem,calc(1.37vw + 16px),3.2rem); }
.stamp-info__ex { margin: 25px auto 0; max-width: 650px; border-top: 2px solid #000; border-bottom: 2px solid #000; padding: 30px 0; }
.stamp-info__place { font-weight: 700; font-size: clamp(1.8rem,calc(0.69vw + 16px),2.4rem); }
.stamp-info__list { margin-top: 10px; font-size: clamp(1.5rem,calc(0.57vw + 14px),2rem); }
.stamp-info__item a { display: inline; }



.sct-map { margin-top: clamp(35px,calc(2.82vw + 26px),80px); padding-top: clamp(35px,calc(2.82vw + 26px),80px); }
.sct-map__area { position: relative; margin: 15px auto 0; width: 100%; height: clamp(280px,calc(26.25vw + 196px),700px); max-width: 1440px; }
.sct-map__area-txt { margin-block-start: clamp(50px, calc(3.13vw + 40px), 100px); padding: 0 15px; line-height: 1.5; text-align: center; font-size: 2rem; height: 3em; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; }
.sct-map__area-icon { display: inline-block; width: 1.75em; aspect-ratio: 1; margin-right: 5px; }
.sct-map__area iframe { position: absolute; content: ""; top: 0; left: 0; width: 100%; height: 100%; }

.logo { max-width: 100px; margin: 90px auto 0; }

/* footer */
.footer { position: relative; padding: 60px 0; background: #333; color: #fff; margin-top: 60px; }
.footer-ex { text-align: center; }
.footer-item:nth-child(n+2) { margin-top: 30px; }
.footer-label { font-weight: 700; }
.footer-txt { margin-top: 5px; font-size: 1.5rem; }


@media (min-width: 769px) {
	.sct-event__unc-btn,
	a.sct-place__title-stamp,
	.sct-place__about-map,
	.sct-place__back-btn,
	.sct-place__about-link { transition: .25s; }
	.sct-event__unc-btn:hover { transform: translateY(10px); }
	.sct-place__back-btn:hover { opacity: 0.5; }
	a.sct-place__title-stamp:hover { transform: scale(1.1) rotate(5deg); }
	.sct-place__about-map:hover,
	.sct-place__about-link:hover { opacity: 0.5; }
}
@media (max-width: 767px) {
	.sct-map__area-txt { font-size: 1.3rem; }
}


/*animate*/
.pointer.active { display: block; opacity: 1; transform: translateY(0); }
.pointer { opacity: 0; transform: translateY(50px); transition: .5s; }

@keyframes fade_in {
	0% { opacity: 0; display: none; }
	1% { opacity: 0.01; display: block; }
	100% { opacity: 1; }
}

@keyframes slideLeft {
	0%   { transform: translate(100%,0); }
	100% { transform: translate(0%,0); }
}
@keyframes slideRight {
	0%   { transform: translate(0%,0); }
	100% { transform: translate(100%,0); }
}

body.fade-out {
	opacity: 0;
	transition: opacity 0.5s ease;
}

body.fade-in {
	opacity: 1;
	transition: opacity 0.5s ease;
}

.pageTop { position: fixed; bottom: 30px; right: 15px; color: white; width: 60px; height: 60px; cursor: pointer; opacity: 0; transition: opacity 0.5s ease; visibility: hidden; z-index: 1000; }
.pageTop span { position: relative; width: 60px; height: 60px; border-radius: 100%; background: #0b2c67; display: block; }
.pageTop span::before { position: absolute; content: ""; inset: -5px 0 0 0; margin: auto; height: 20px; aspect-ratio: cos(30deg); clip-path: polygon(0 0,100% 50%,0 100%); object-fit: cover; background: #fff; transform: rotate(-90deg); }
.pageTop.visible { opacity: 1; visibility: visible; }
footer { position: relative; z-index: 1; }
@media (max-width: 767px) {
	.pageTop { width: 45px; height: 45px; }
	.pageTop span { width: 45px; height: 45px; }
	.pageTop span::before { height: 15px; }
}