@charset "UTF-8";
/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	english-camps-motion.css — English Camp 全ページ共通の「動き」
	- 登場: js/english-camps-motion.js が付ける .ec-reveal / .is-inview を使う
	  （html.ec-js が無い＝JS無効のときは何も隠れない）
	- 常時: 装飾イラスト・アイコンのゆらぎ（CSSのみ）
	- ホバー: ボタン・カードの持ち上げ
	- prefers-reduced-motion: reduce では全部止める
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/

/* 登場アニメーション（スクロール連動）
———————————————————————————————————————————————————————————————————*/
.ec-js .ec-reveal{
	opacity: 0;
	transition:
		opacity .7s ease,
		transform .8s cubic-bezier(.22, 1, .36, 1);
	transition-delay: calc(var(--ec-i, 0) * 90ms);
	will-change: opacity, transform;
}
.ec-js .ec-reveal--up{ transform: translateY(32px); }
.ec-js .ec-reveal--pop{ transform: translateY(16px) scale(.92); }
.ec-js .ec-reveal--left{ transform: translateX(-40px); }
.ec-js .ec-reveal--right{ transform: translateX(40px); }
.ec-js .ec-reveal--zoom{ transform: scale(.6); }
.ec-js .ec-reveal.is-inview{
	opacity: 1;
	transform: none;
	will-change: auto;
}
/* 見出しの下線（拠点LP）はにゅっと伸びる */
.ec-js .type2__title.ec-reveal::after{
	transform: translateX(-50%) scaleX(0);
	transition: transform .6s cubic-bezier(.22, 1, .36, 1) .35s;
}
.ec-js .type2__title.ec-reveal.is-inview::after{
	transform: translateX(-50%) scaleX(1);
}
/* 見出し下の星（ハブ）は登場後にきらめく */
.english-camps__title > img{
	animation: ecTwinkle 2.6s ease-in-out 1.2s infinite;
}
/* ハブの「01/02/03」とフローのアイコンは少し遅れてポン */
.ec-js .reason__item.ec-reveal .reason__num,
.ec-js .flow__step.ec-reveal .flow__icon,
.ec-js .support__item.ec-reveal > img{
	opacity: 0;
	transform: scale(.5) rotate(-8deg);
	transition: opacity .5s ease .35s, transform .7s cubic-bezier(.34, 1.56, .64, 1) .35s;
}
.ec-js .reason__item.ec-reveal.is-inview .reason__num,
.ec-js .flow__step.ec-reveal.is-inview .flow__icon,
.ec-js .support__item.ec-reveal.is-inview > img{
	opacity: 1;
	transform: none;
}
/* お悩みリストのチェック（拠点LP）は1行ずつ */
.ec-js .problem .type1__flex2 > div:nth-of-type(1) > p.ec-reveal{
	transition-delay: calc(var(--ec-i, 0) * 120ms);
}

/* 常時アニメーション（装飾）
———————————————————————————————————————————————————————————————————*/
@media (prefers-reduced-motion: no-preference){
	/* ハブ: about のコラージュ */
	.about__illust--6, .about__band--illust2{ transform-origin: 50% 100%; animation: ecSway 3.8s ease-in-out infinite; }
	.about__illust--1{ transform-origin: 50% 100%; animation: ecSway 4.6s ease-in-out -1.2s infinite; }
	.about__illust--2, .about__band--illust1{ transform-origin: 50% 100%; animation: ecSway 6s ease-in-out -2s infinite; }
		.about__illust--5, .about__band--illust3{ animation: ecCrawl 5.5s ease-in-out infinite; }
	.about__illust--7, .about__illust--8, .about__illust--9, .about__band--illust4{ animation: ecFloat 3.4s ease-in-out infinite; }
	.about__illust--8{ animation-delay: -1.1s; }
	.about__illust--9{ animation-delay: -2.3s; }
	.about__photo{ animation: ecDrift 6s ease-in-out infinite; }
	.about__photo--2, .about__photo--5{ animation-delay: -2s; }
	.about__photo--3, .about__photo--6{ animation-delay: -4s; }
	/* 参加実績のきらきら */
	.jisseki__label img:first-of-type{ animation: ecTwinkle 2.2s ease-in-out infinite; }
	.jisseki__label img:last-of-type{ animation: ecTwinkleFlip 2.2s ease-in-out -1.1s infinite; }
	/* 3つの理由のトウモロコシ */
	.reason__corn{ animation: ecFloat 3.2s ease-in-out infinite; }
	.reason__corn--2{ animation-delay: -1s; }
	.reason__corn--3{ animation-delay: -2.1s; }
	/* CTA: テント・人・ボタン */
	.cta__tent{ animation: ecTentWiggle 3s ease-in-out infinite; }
	.cta__person{ transform-origin: 50% 100%; animation: ecBob 2.8s ease-in-out infinite; }
	.cta__button{ animation: ecPulse 3.2s ease-in-out 2s infinite; } /* ボタン本体に transform を掛けると ::before の影が前面に出て黄色いボタンになるため、外側で脈動させる */
	/* ギャラリーの吹き出し・地図・声のアバター */
	.gallery__talk{ animation: ecFloat 4s ease-in-out infinite; }
	.voice__avatar{ animation: ecBob 3s ease-in-out infinite; }
	.voice__card:nth-child(2) .voice__avatar{ animation-delay: -1s; }
	.voice__card:nth-child(3) .voice__avatar{ animation-delay: -2s; }
	/* 受付中バッジは脈打つ */
	.cycle__status.is-open{ animation: ecPulse 2.4s ease-in-out infinite; }
	/* 拠点LP: お悩みのイラスト・FVの写真や飾り */
	.problem .type1__flex2 > div:nth-of-type(2) img{ animation: ecFloat 4.2s ease-in-out infinite; }
	.kanagawa .fv__photo--1, .nasu .fv__photo--1, .osaka-wakayama .fv__photo--1{ animation: ecDrift 6s ease-in-out infinite; }
	.kanagawa .fv__photo--2, .nasu .fv__photo--2, .osaka-wakayama .fv__photo--2{ animation: ecDrift 6s ease-in-out -2s infinite; }
	.kanagawa .fv__photo--3, .nasu .fv__photo--3, .osaka-wakayama .fv__photo--3{ animation: ecDrift 6s ease-in-out -4s infinite; }
	.kanagawa .fv__deco--hero, .nasu .fv__deco--hero{ transform-origin: 50% 100%; animation: ecSway 7s ease-in-out infinite; }
	.kanagawa .fv__badge, .osaka-wakayama .fv__badge{ transform-origin: 50% 0; animation: ecSwing 4s ease-in-out infinite; }
	.nasu .fv__stamp{ animation: ecStampSwing 4s ease-in-out infinite; }
	.fv__inner--text--catch img{ animation: ecRise .8s ease-out .2s both; }
	.fv__inner--text--title img{ animation: ecRise .8s ease-out .4s both; }
	.fv__inner--text--info{ animation: ecRise .8s ease-out .6s both; }
	.fv__inner--text--btn, .fv__inner--text--subbtn{ animation: ecRise .8s ease-out .8s both; }
	.fv__hero-line1{ animation: ecRise .9s ease-out .3s both; }
	.fv__hero-line2{ animation: ecRise .9s ease-out .55s both; }
	.kanagawa .fv__ribbon, .kanagawa .fv__catch, .nasu .fv__catch, .osaka-wakayama .fv__catch{ animation: ecRise .8s ease-out .2s both; }
	.kanagawa .fv__title, .nasu .fv__title, .osaka-wakayama .fv__title{ animation: ecRise .8s ease-out .4s both; }
	.kanagawa .fv__inkanagawa, .nasu .fv__in-location, .kanagawa .fv__date, .nasu .fv__date, .osaka-wakayama .fv__info{ animation: ecRise .8s ease-out .6s both; }
	.kanagawa .fv__cta-wrapper, .nasu .fv__cta-wrapper, .osaka-wakayama .fv__cta{ animation: ecRise .8s ease-out .8s both; }
}

/* ホバー
———————————————————————————————————————————————————————————————————*/
.refund__link, .cycle__more, .course-cards__cta-btn,
.fv__inner--text--btn a, .fv__inner--text--subbtn a, .fv__lstep{
	transition: transform .25s ease, box-shadow .25s ease;
}
.refund__link:hover, .cycle__more:hover, .course-cards__cta-btn:hover,
.fv__inner--text--btn a:hover, .fv__inner--text--subbtn a:hover, .fv__lstep:hover{
	transform: translateY(-3px);
}
/* 黄色い影つきボタン（CTA・詳しく見る・声をもっと見る）: 既定=影が下に見える / ホバー=影の位置まで沈んで「押している感」 */
/* ボタン本体は transform でなく top で沈める（transform は stacking context を作り、z-index:-1 の影(::before)が本体の上に回り込んで黄色に見える） */
.cta__link, .place__button, .voice__more{ top: 0; transition: top .15s ease; }
.cta__link::before, .place__button::before, .voice__more::before{ transition: transform .15s ease; }
.cta__button:hover{ animation: none; }
.cta__link:hover{ top: 5px; }
.cta__link:hover::before{ transform: translateY(0); }
.place__button:hover{ top: 4px; }
.place__button:hover::before{ transform: translateY(0); }
.voice__more:hover{ top: 5px; }
.voice__more:hover::before{ transform: translateY(0); }
/* .flash のホバー点滅（opacity .3→1）はボタンが一瞬消えて見えるので、ECページでは持ち上げに置き換える */
.flash:hover{ animation: none; opacity: 1; }
.headertop__inner--right a{ transition: transform .25s ease; }
.headertop__inner--right a:hover{ transform: translateY(-2px); }

/* カード */
.cycle__card, .sort__list .place, .support__item, .voice__card, .flow__step,
.point .type1__flex4 > div, .schedule .type1__flex4 > div, .place__flex > a, .achievements .type1__flex3 > div,
.course-cards__item, .recommended-for__item, .experience-by-location__item, .achievements__card, .voice__item, .schedule__item,
.reason__row, .support__grid .support__item{
	transition: transform .35s cubic-bezier(.22, 1, .36, 1), box-shadow .35s ease;
}
@media (hover: hover){
.cycle__card:hover, .support__item:hover, .voice__card:hover, .flow__step:hover,
.point .type1__flex4 > div:hover, .schedule .type1__flex4 > div:hover, .place__flex > a:hover, .achievements .type1__flex3 > div:hover,
.course-cards__item:hover, .recommended-for__item:hover, .experience-by-location__item:hover, .achievements__card:hover, .voice__item:hover, .schedule__item:hover,
.ec-js .ec-reveal.is-inview:is(.cycle__card, .support__item, .voice__card, .flow__step, .point .type1__flex4 > div, .schedule .type1__flex4 > div, .place__flex > a, .achievements .type1__flex3 > div, .course-cards__item, .recommended-for__item, .experience-by-location__item, .achievements__card, .voice__item, .schedule__item):hover{
	transform: translateY(-6px);
}
}
/* 写真はふわっと寄る */
.place__flex > a, .experience-by-location__image, .point .type1__flex4 > div, .schedule .type1__flex4 > div{
	overflow: hidden;
}
/* ハブの拠点カード: 装飾が枠の外まで広がる画像なので切り抜かず、持ち上げる */
.place__image{ overflow: visible; }
.place__image img, .place__flex > a img, .experience-by-location__image img,
.point .type1__flex4 > div img, .schedule .type1__flex4 > div img, .reason__image img, .gallery__photo, .schedule__photo, .about__photo{
	transition: transform .6s cubic-bezier(.22, 1, .36, 1);
}
.place__flex > a:hover img, .experience-by-location__item:hover .experience-by-location__image img,
.point .type1__flex4 > div:hover img, .schedule .type1__flex4 > div:hover img, .reason__image:hover img, .gallery__photo:hover, .schedule__photo:hover{
	transform: scale(1.05);
}
.sort__list .place:hover .place__image > img{ transform: translateY(-6px); }
/* サポートのアイコンはホバーでぷるん */
@media (hover: hover){ .support__item:hover > img{ animation: ecJelly .7s ease; } }
/* FAQ の質問はホバーで少し右へ */
.faq__item--question{ transition: transform .25s ease, opacity .25s ease; }
.faq__item--question:hover{ transform: translateX(4px); }
/* 開催地チップ・シーズンチップ */
.cycle__chip{ transition: transform .2s ease, box-shadow .2s ease; }
.cycle__chip:hover{ transform: translateY(-2px); }

/* keyframes
———————————————————————————————————————————————————————————————————*/
@keyframes ecSway{
	0%, 100%{ transform: rotate(-5deg); }
	50%{ transform: rotate(5deg); }
}
@keyframes ecFloat{
	0%, 100%{ transform: translateY(0) rotate(-3deg); }
	50%{ transform: translateY(-14%) rotate(4deg); }
}
@keyframes ecDrift{
	0%, 100%{ transform: translate(0, 0) rotate(0); }
	50%{ transform: translate(0, -8px) rotate(.6deg); }
}
@keyframes ecCrawl{
	0%, 100%{ transform: translate(0, 0) rotate(0); }
	25%{ transform: translate(8%, -5%) rotate(-6deg); }
	50%{ transform: translate(16%, 0) rotate(0); }
	75%{ transform: translate(8%, 5%) rotate(6deg); }
}
@keyframes ecBob{
	0%, 100%{ transform: translateY(0); }
	50%{ transform: translateY(-8px); }
}
@keyframes ecTwinkle{
	0%, 100%{ transform: scale(1) rotate(0); opacity: 1; }
	50%{ transform: scale(.7) rotate(15deg); opacity: .55; }
}
@keyframes ecTwinkleFlip{
	0%, 100%{ transform: scaleX(-1) scale(1) rotate(0); opacity: 1; }
	50%{ transform: scaleX(-1) scale(.7) rotate(15deg); opacity: .55; }
}
@keyframes ecTentWiggle{
	0%, 100%{ transform: translateX(-50%) rotate(-4deg); }
	50%{ transform: translateX(-50%) rotate(4deg); }
}
@keyframes ecPulse{
	0%, 100%{ transform: scale(1); }
	50%{ transform: scale(1.04); }
}
@keyframes ecSwing{
	0%, 100%{ transform: rotate(-6deg); }
	50%{ transform: rotate(6deg); }
}
@keyframes ecStampSwing{
	0%, 100%{ transform: rotate(-7deg); }
	50%{ transform: rotate(2deg); }
}
@keyframes ecRise{
	0%{ opacity: 0; transform: translateY(16px); }
	100%{ opacity: 1; transform: translateY(0); }
}
@keyframes ecJelly{
	0%{ transform: scale(1, 1); }
	30%{ transform: scale(1.15, .85); }
	50%{ transform: scale(.9, 1.1); }
	70%{ transform: scale(1.05, .95); }
	100%{ transform: scale(1, 1); }
}

/* 動きを減らす設定
———————————————————————————————————————————————————————————————————*/
@media (prefers-reduced-motion: reduce){
	.ec-js .ec-reveal,
	.ec-js .ec-reveal .reason__num,
	.ec-js .ec-reveal .flow__icon,
	.ec-js .support__item.ec-reveal > img{
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
	}
	.english-camps__title > img,
	.cta__button{
		animation: none !important;
	}
}

/* 拠点LPのFV装飾（パーツ分解版）
———————————————————————————————————————————————————————————————————*/
.ecd{
	position: relative;
	display: block;
	width: 100%;
	height: 0;
	overflow: visible;
	--ecd: #333;
}
.ecd__el{
	position: absolute;
	display: block;
	background: var(--ecd);
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: 100% 100%;
	mask-size: 100% 100%;
	will-change: transform;
}
/* 拠点ごとの色（旧画像から実測） */
.cebu .ecd{ --ecd: #ff6600; }
.okinawa .ecd{ --ecd: #0085fe; }
.shiojiri .ecd{ --ecd: #c162cd; }
.tokushima .ecd{ --ecd: #5d7333; }
.kanagawa .ecd{ --ecd: #30e52d; }
.nasu .ecd{ --ecd: #5B8DB8; }
.osaka-wakayama .ecd{ --ecd: #ffd95c; }
.osaka-wakayama .ecd__el--band{ background: #fff0aa; opacity: 1; }
/* 関西: CSS背景の1枚画像をやめてパーツに（マークアップは page-kansai.php） */
.osaka-wakayama .fv{ background-image: none !important; }
.osaka-wakayama .fv__bg{ position: absolute; left: 0; bottom: 0; width: 100%; z-index: 0; pointer-events: none; }
/* 神奈川・那須: 旧 img と同じ置き方 */
.kanagawa .fv__deco-wrapper .fv__deco--hero.ecd, .nasu .fv__deco-wrapper .fv__deco--hero.ecd{ left: 0; right: 0; margin: 0 auto; bottom: -35px; width: 100%; max-width: 1440px; } /* 本文・写真(.fv__inner max-width:1440px 中央寄せ)と同じ幅に揃え、超ワイド画面でも装飾の位置関係を保つ（transformは拠点CSSに打ち消されるため margin:auto で中央寄せ） */
.kanagawa .fv__mdeco-bg.ecd, .nasu .fv__mdeco-bg.ecd{ display: block; width: 100%; }


/* 拠点LPのFV装飾（ご当地セット）
   マスク画像（白＋アルファ／SVG）を背景色 --ecd で塗る。位置は .ecd（幅基準の固定比率ボックス）に対する%。
   生成元: 各セットの要素定義（cebu/okinawa=トロピカル、tokushima=畑と鳥、nagano=山と葡萄と星、kansai=みかんと山、kanagawa=富士山、nasu=山と温泉と雪）
———————————————————————————————————————————————————————————————————*/
.ecd--cebu-pc{ padding-top: 15.9%; }
.ecd--cebu-pc .ecd__el--hibiscus-l{ left:0.0%; top:64.62%; width:5.72%; height:35.38%; -webkit-mask-image:url(../images/english-camps/deco/pc/hibiscus-l.png); mask-image:url(../images/english-camps/deco/pc/hibiscus-l.png); transform-origin:50% 100%; animation:ecdBloom 5s ease-in-out -0.0s infinite; }
.ecd--cebu-pc .ecd__el--palm-l{ left:0.23%; top:0.0%; width:8.13%; height:72.8%; -webkit-mask-image:url(../images/english-camps/deco/pc/palm-l.png); mask-image:url(../images/english-camps/deco/pc/palm-l.png); transform-origin:50% 100%; animation:ecdSway 5.2s ease-in-out -4.3s infinite; }
.ecd--cebu-pc .ecd__el--fish-1{ left:11.45%; top:67.69%; width:2.08%; height:6.95%; -webkit-mask-image:url(../images/english-camps/deco/pc/fish-1.png); mask-image:url(../images/english-camps/deco/pc/fish-1.png); animation:ecdSwim 5s ease-in-out -3.2s infinite; }
.ecd--cebu-pc .ecd__el--fish-2{ left:13.3%; top:57.87%; width:3.45%; height:10.02%; -webkit-mask-image:url(../images/english-camps/deco/pc/fish-2.png); mask-image:url(../images/english-camps/deco/pc/fish-2.png); animation:ecdSwim 5s ease-in-out -2.3s infinite; }
.ecd--cebu-pc .ecd__el--fish-3{ left:13.3%; top:73.21%; width:4.81%; height:11.86%; -webkit-mask-image:url(../images/english-camps/deco/pc/fish-3.png); mask-image:url(../images/english-camps/deco/pc/fish-3.png); animation:ecdSwim 5s ease-in-out -1.4s infinite; }
.ecd--cebu-pc .ecd__el--fish-4{ left:18.08%; top:81.19%; width:3.25%; height:10.63%; -webkit-mask-image:url(../images/english-camps/deco/pc/fish-4.png); mask-image:url(../images/english-camps/deco/pc/fish-4.png); animation:ecdSwim 5s ease-in-out -0.5s infinite; }
.ecd--cebu-pc .ecd__el--fish-5{ left:18.28%; top:63.39%; width:1.59%; height:6.34%; -webkit-mask-image:url(../images/english-camps/deco/pc/fish-5.png); mask-image:url(../images/english-camps/deco/pc/fish-5.png); animation:ecdSwim 5s ease-in-out -4.6s infinite; }
.ecd--cebu-pc .ecd__el--fish-6{ left:19.35%; top:67.69%; width:3.15%; height:13.7%; -webkit-mask-image:url(../images/english-camps/deco/pc/fish-6.png); mask-image:url(../images/english-camps/deco/pc/fish-6.png); animation:ecdSwim 5s ease-in-out -3.7s infinite; }
.ecd--cebu-pc .ecd__el--turtle-s{ left:82.28%; top:75.66%; width:4.42%; height:14.31%; -webkit-mask-image:url(../images/english-camps/deco/pc/turtle-s.png); mask-image:url(../images/english-camps/deco/pc/turtle-s.png); animation:ecdCrawl 5s ease-in-out -2.8s infinite; }
.ecd--cebu-pc .ecd__el--turtle-b{ left:86.37%; top:61.55%; width:5.2%; height:30.27%; -webkit-mask-image:url(../images/english-camps/deco/pc/turtle-b.png); mask-image:url(../images/english-camps/deco/pc/turtle-b.png); animation:ecdCrawl 5s ease-in-out -1.9s infinite; }
.ecd--cebu-pc .ecd__el--palm-r{ left:91.84%; top:28.43%; width:5.01%; height:54.19%; -webkit-mask-image:url(../images/english-camps/deco/pc/palm-r.png); mask-image:url(../images/english-camps/deco/pc/palm-r.png); transform-origin:50% 100%; animation:ecdSway 5.2s ease-in-out -1.4s infinite; }
.ecd--cebu-pc .ecd__el--hibiscus-r{ left:94.28%; top:64.62%; width:5.72%; height:35.38%; -webkit-mask-image:url(../images/english-camps/deco/pc/hibiscus-r.png); mask-image:url(../images/english-camps/deco/pc/hibiscus-r.png); transform-origin:50% 100%; animation:ecdBloom 5s ease-in-out -0.1s infinite; }
.ecd--cebu-pc .ecd__el--band{ left:0%; top:60.53%; width:100%; height:39.47%; -webkit-mask-image:url(../images/english-camps/deco/pc/band.png); mask-image:url(../images/english-camps/deco/pc/band.png); opacity:.24; }
.ecd--cebu-pc .ecd__el--snorkeler-1{ left:33.5%; top:30%; width:11.5%; height:42.74%; -webkit-mask-image:url(../images/english-camps/fv__snorkeler.svg); mask-image:url(../images/english-camps/fv__snorkeler.svg); animation:ecdDive 5s ease-in-out -3.3s infinite; }
.ecd--cebu-pc .ecd__el--sun-1{ left:60%; top:6%; width:4.5%; height:28.3%; -webkit-mask-image:url(../images/english-camps/deco/icons/sun.svg); mask-image:url(../images/english-camps/deco/icons/sun.svg); transform-origin:50% 50%; animation:ecdSpin 60s ease-in-out -47.4s infinite; }
.ecd--cebu-sp{ padding-top: 30.4%; }
.ecd--cebu-sp .ecd__el--hibiscus-l{ left:0.0%; top:35.67%; width:14.76%; height:64.33%; -webkit-mask-image:url(../images/english-camps/deco/sp/hibiscus-l.png); mask-image:url(../images/english-camps/deco/sp/hibiscus-l.png); transform-origin:50% 100%; animation:ecdBloom 5s ease-in-out -0.0s infinite; }
.ecd--cebu-sp .ecd__el--fish-1{ left:27.91%; top:77.78%; width:4.98%; height:8.77%; -webkit-mask-image:url(../images/english-camps/deco/sp/fish-1.png); mask-image:url(../images/english-camps/deco/sp/fish-1.png); animation:ecdSwim 5s ease-in-out -4.1s infinite; }
.ecd--cebu-sp .ecd__el--fish-2{ left:29.87%; top:89.47%; width:2.67%; height:10.53%; -webkit-mask-image:url(../images/english-camps/deco/sp/fish-2.png); mask-image:url(../images/english-camps/deco/sp/fish-2.png); animation:ecdSwim 5s ease-in-out -3.2s infinite; }
.ecd--cebu-sp .ecd__el--fish-3{ left:31.29%; top:83.04%; width:8.89%; height:13.45%; -webkit-mask-image:url(../images/english-camps/deco/sp/fish-3.png); mask-image:url(../images/english-camps/deco/sp/fish-3.png); animation:ecdSwim 5s ease-in-out -2.3s infinite; }
.ecd--cebu-sp .ecd__el--fish-4{ left:33.42%; top:64.33%; width:9.96%; height:18.71%; -webkit-mask-image:url(../images/english-camps/deco/sp/fish-4.png); mask-image:url(../images/english-camps/deco/sp/fish-4.png); animation:ecdSwim 5s ease-in-out -1.4s infinite; }
.ecd--cebu-sp .ecd__el--turtle-s{ left:64.0%; top:76.02%; width:12.09%; height:20.47%; -webkit-mask-image:url(../images/english-camps/deco/sp/turtle-s.png); mask-image:url(../images/english-camps/deco/sp/turtle-s.png); animation:ecdCrawl 5s ease-in-out -0.5s infinite; }
.ecd--cebu-sp .ecd__el--turtle-b{ left:75.2%; top:55.56%; width:14.22%; height:42.69%; -webkit-mask-image:url(../images/english-camps/deco/sp/turtle-b.png); mask-image:url(../images/english-camps/deco/sp/turtle-b.png); animation:ecdCrawl 5s ease-in-out -4.6s infinite; }
.ecd--cebu-sp .ecd__el--palm-r{ left:86.93%; top:0.0%; width:13.07%; height:74.27%; -webkit-mask-image:url(../images/english-camps/deco/sp/palm-r.png); mask-image:url(../images/english-camps/deco/sp/palm-r.png); transform-origin:50% 100%; animation:ecdSway 5.2s ease-in-out -4.1s infinite; }
.ecd--cebu-sp .ecd__el--band{ left:0%; top:61.11%; width:100%; height:38.89%; -webkit-mask-image:url(../images/english-camps/deco/sp/band.png); mask-image:url(../images/english-camps/deco/sp/band.png); opacity:.24; }
.ecd--cebu-sp .ecd__el--snorkeler-1{ left:18%; top:40%; width:22%; height:42.76%; -webkit-mask-image:url(../images/english-camps/fv__snorkeler.svg); mask-image:url(../images/english-camps/fv__snorkeler.svg); animation:ecdDive 5s ease-in-out -1.9s infinite; }
.ecd--okinawa-pc{ padding-top: 15.9%; }
.ecd--okinawa-pc .ecd__el--hibiscus-l{ left:0.0%; top:64.62%; width:5.72%; height:35.38%; -webkit-mask-image:url(../images/english-camps/deco/pc/hibiscus-l.png); mask-image:url(../images/english-camps/deco/pc/hibiscus-l.png); transform-origin:50% 100%; animation:ecdBloom 5s ease-in-out -0.0s infinite; }
.ecd--okinawa-pc .ecd__el--palm-l{ left:0.23%; top:0.0%; width:8.13%; height:72.8%; -webkit-mask-image:url(../images/english-camps/deco/pc/palm-l.png); mask-image:url(../images/english-camps/deco/pc/palm-l.png); transform-origin:50% 100%; animation:ecdSway 5.2s ease-in-out -4.3s infinite; }
.ecd--okinawa-pc .ecd__el--fish-1{ left:11.45%; top:67.69%; width:2.08%; height:6.95%; -webkit-mask-image:url(../images/english-camps/deco/pc/fish-1.png); mask-image:url(../images/english-camps/deco/pc/fish-1.png); animation:ecdSwim 5s ease-in-out -3.2s infinite; }
.ecd--okinawa-pc .ecd__el--fish-2{ left:13.3%; top:57.87%; width:3.45%; height:10.02%; -webkit-mask-image:url(../images/english-camps/deco/pc/fish-2.png); mask-image:url(../images/english-camps/deco/pc/fish-2.png); animation:ecdSwim 5s ease-in-out -2.3s infinite; }
.ecd--okinawa-pc .ecd__el--fish-3{ left:13.3%; top:73.21%; width:4.81%; height:11.86%; -webkit-mask-image:url(../images/english-camps/deco/pc/fish-3.png); mask-image:url(../images/english-camps/deco/pc/fish-3.png); animation:ecdSwim 5s ease-in-out -1.4s infinite; }
.ecd--okinawa-pc .ecd__el--fish-4{ left:18.08%; top:81.19%; width:3.25%; height:10.63%; -webkit-mask-image:url(../images/english-camps/deco/pc/fish-4.png); mask-image:url(../images/english-camps/deco/pc/fish-4.png); animation:ecdSwim 5s ease-in-out -0.5s infinite; }
.ecd--okinawa-pc .ecd__el--fish-5{ left:18.28%; top:63.39%; width:1.59%; height:6.34%; -webkit-mask-image:url(../images/english-camps/deco/pc/fish-5.png); mask-image:url(../images/english-camps/deco/pc/fish-5.png); animation:ecdSwim 5s ease-in-out -4.6s infinite; }
.ecd--okinawa-pc .ecd__el--fish-6{ left:19.35%; top:67.69%; width:3.15%; height:13.7%; -webkit-mask-image:url(../images/english-camps/deco/pc/fish-6.png); mask-image:url(../images/english-camps/deco/pc/fish-6.png); animation:ecdSwim 5s ease-in-out -3.7s infinite; }
.ecd--okinawa-pc .ecd__el--turtle-s{ left:82.28%; top:75.66%; width:4.42%; height:14.31%; -webkit-mask-image:url(../images/english-camps/deco/pc/turtle-s.png); mask-image:url(../images/english-camps/deco/pc/turtle-s.png); animation:ecdCrawl 5s ease-in-out -2.8s infinite; }
.ecd--okinawa-pc .ecd__el--turtle-b{ left:86.37%; top:61.55%; width:5.2%; height:30.27%; -webkit-mask-image:url(../images/english-camps/deco/pc/turtle-b.png); mask-image:url(../images/english-camps/deco/pc/turtle-b.png); animation:ecdCrawl 5s ease-in-out -1.9s infinite; }
.ecd--okinawa-pc .ecd__el--palm-r{ left:91.84%; top:28.43%; width:5.01%; height:54.19%; -webkit-mask-image:url(../images/english-camps/deco/pc/palm-r.png); mask-image:url(../images/english-camps/deco/pc/palm-r.png); transform-origin:50% 100%; animation:ecdSway 5.2s ease-in-out -1.4s infinite; }
.ecd--okinawa-pc .ecd__el--hibiscus-r{ left:94.28%; top:64.62%; width:5.72%; height:35.38%; -webkit-mask-image:url(../images/english-camps/deco/pc/hibiscus-r.png); mask-image:url(../images/english-camps/deco/pc/hibiscus-r.png); transform-origin:50% 100%; animation:ecdBloom 5s ease-in-out -0.1s infinite; }
.ecd--okinawa-pc .ecd__el--band{ left:0%; top:60.53%; width:100%; height:39.47%; -webkit-mask-image:url(../images/english-camps/deco/pc/band.png); mask-image:url(../images/english-camps/deco/pc/band.png); opacity:.24; }
.ecd--okinawa-pc .ecd__el--sailboat-1{ left:34%; top:26%; width:8%; height:46.29%; -webkit-mask-image:url(../images/english-camps/deco/icons/sailboat.svg); mask-image:url(../images/english-camps/deco/icons/sailboat.svg); animation:ecdSail 4.5s ease-in-out -1.8s infinite; }
.ecd--okinawa-pc .ecd__el--sun-1{ left:62%; top:4%; width:5%; height:31.45%; -webkit-mask-image:url(../images/english-camps/deco/icons/sun.svg); mask-image:url(../images/english-camps/deco/icons/sun.svg); transform-origin:50% 50%; animation:ecdSpin 60s ease-in-out -47.4s infinite; }
.ecd--okinawa-sp{ padding-top: 30.4%; }
.ecd--okinawa-sp .ecd__el--hibiscus-l{ left:0.0%; top:35.67%; width:14.76%; height:64.33%; -webkit-mask-image:url(../images/english-camps/deco/sp/hibiscus-l.png); mask-image:url(../images/english-camps/deco/sp/hibiscus-l.png); transform-origin:50% 100%; animation:ecdBloom 5s ease-in-out -0.0s infinite; }
.ecd--okinawa-sp .ecd__el--fish-1{ left:27.91%; top:77.78%; width:4.98%; height:8.77%; -webkit-mask-image:url(../images/english-camps/deco/sp/fish-1.png); mask-image:url(../images/english-camps/deco/sp/fish-1.png); animation:ecdSwim 5s ease-in-out -4.1s infinite; }
.ecd--okinawa-sp .ecd__el--fish-2{ left:29.87%; top:89.47%; width:2.67%; height:10.53%; -webkit-mask-image:url(../images/english-camps/deco/sp/fish-2.png); mask-image:url(../images/english-camps/deco/sp/fish-2.png); animation:ecdSwim 5s ease-in-out -3.2s infinite; }
.ecd--okinawa-sp .ecd__el--fish-3{ left:31.29%; top:83.04%; width:8.89%; height:13.45%; -webkit-mask-image:url(../images/english-camps/deco/sp/fish-3.png); mask-image:url(../images/english-camps/deco/sp/fish-3.png); animation:ecdSwim 5s ease-in-out -2.3s infinite; }
.ecd--okinawa-sp .ecd__el--fish-4{ left:33.42%; top:64.33%; width:9.96%; height:18.71%; -webkit-mask-image:url(../images/english-camps/deco/sp/fish-4.png); mask-image:url(../images/english-camps/deco/sp/fish-4.png); animation:ecdSwim 5s ease-in-out -1.4s infinite; }
.ecd--okinawa-sp .ecd__el--turtle-s{ left:64.0%; top:76.02%; width:12.09%; height:20.47%; -webkit-mask-image:url(../images/english-camps/deco/sp/turtle-s.png); mask-image:url(../images/english-camps/deco/sp/turtle-s.png); animation:ecdCrawl 5s ease-in-out -0.5s infinite; }
.ecd--okinawa-sp .ecd__el--turtle-b{ left:75.2%; top:55.56%; width:14.22%; height:42.69%; -webkit-mask-image:url(../images/english-camps/deco/sp/turtle-b.png); mask-image:url(../images/english-camps/deco/sp/turtle-b.png); animation:ecdCrawl 5s ease-in-out -4.6s infinite; }
.ecd--okinawa-sp .ecd__el--palm-r{ left:86.93%; top:0.0%; width:13.07%; height:74.27%; -webkit-mask-image:url(../images/english-camps/deco/sp/palm-r.png); mask-image:url(../images/english-camps/deco/sp/palm-r.png); transform-origin:50% 100%; animation:ecdSway 5.2s ease-in-out -4.1s infinite; }
.ecd--okinawa-sp .ecd__el--band{ left:0%; top:61.11%; width:100%; height:38.89%; -webkit-mask-image:url(../images/english-camps/deco/sp/band.png); mask-image:url(../images/english-camps/deco/sp/band.png); opacity:.24; }
.ecd--okinawa-sp .ecd__el--sailboat-1{ left:20%; top:30%; width:16%; height:48.42%; -webkit-mask-image:url(../images/english-camps/deco/icons/sailboat.svg); mask-image:url(../images/english-camps/deco/icons/sailboat.svg); animation:ecdSail 4.5s ease-in-out -0.9s infinite; }
.ecd--tokushima-pc{ padding-top: 15.9%; }
.ecd--tokushima-pc .ecd__el--band{ left:0%; top:60.53%; width:100%; height:39.47%; -webkit-mask-image:url(../images/english-camps/deco/pc/band.png); mask-image:url(../images/english-camps/deco/pc/band.png); opacity:.24; }
.ecd--tokushima-pc .ecd__el--tree-1{ left:1.5%; top:8%; width:6%; height:53.15%; -webkit-mask-image:url(../images/english-camps/about__illust--1.svg); mask-image:url(../images/english-camps/about__illust--1.svg); transform-origin:50% 100%; animation:ecdSway 5.2s ease-in-out -4.3s infinite; }
.ecd--tokushima-pc .ecd__el--tree-2{ left:7.5%; top:30%; width:4%; height:35.44%; -webkit-mask-image:url(../images/english-camps/about__illust--1.svg); mask-image:url(../images/english-camps/about__illust--1.svg); transform-origin:50% 100%; animation:ecdSway 5.2s ease-in-out -3.4s infinite; }
.ecd--tokushima-pc .ecd__el--corn-1{ left:13.5%; top:66%; width:2.2%; height:15.29%; -webkit-mask-image:url(../images/english-camps/about__illust--7.svg); mask-image:url(../images/english-camps/about__illust--7.svg); animation:ecdFloat 3.6s ease-in-out -0.9s infinite; }
.ecd--tokushima-pc .ecd__el--corn-2{ left:16.2%; top:70%; width:1.8%; height:12.51%; -webkit-mask-image:url(../images/english-camps/about__illust--7.svg); mask-image:url(../images/english-camps/about__illust--7.svg); animation:ecdFloat 3.6s ease-in-out -0.0s infinite; }
.ecd--tokushima-pc .ecd__el--tomato-1{ left:19%; top:72%; width:2.6%; height:13.86%; -webkit-mask-image:url(../images/english-camps/fv__tomato.png); mask-image:url(../images/english-camps/fv__tomato.png); animation:ecdFloat 3.6s ease-in-out -2.7s infinite; }
.ecd--tokushima-pc .ecd__el--citrus-1{ left:22.5%; top:76%; width:2.2%; height:13.28%; -webkit-mask-image:url(../images/english-camps/deco/icons/citrus.svg); mask-image:url(../images/english-camps/deco/icons/citrus.svg); animation:ecdFloat 3.6s ease-in-out -1.8s infinite; }
.ecd--tokushima-pc .ecd__el--bird-1{ left:30%; top:22%; width:2.6%; height:7.85%; -webkit-mask-image:url(../images/english-camps/deco/icons/bird.svg); mask-image:url(../images/english-camps/deco/icons/bird.svg); animation:ecdFly 9s ease-in-out -2.7s infinite; }
.ecd--tokushima-pc .ecd__el--bird-2{ left:33.5%; top:15%; width:2.1%; height:6.34%; -webkit-mask-image:url(../images/english-camps/deco/icons/bird.svg); mask-image:url(../images/english-camps/deco/icons/bird.svg); animation:ecdFly 9s ease-in-out -1.8s infinite; }
.ecd--tokushima-pc .ecd__el--bird-3{ left:36.5%; top:24%; width:1.8%; height:5.43%; -webkit-mask-image:url(../images/english-camps/deco/icons/bird.svg); mask-image:url(../images/english-camps/deco/icons/bird.svg); animation:ecdFly 9s ease-in-out -0.9s infinite; }
.ecd--tokushima-pc .ecd__el--sun-1{ left:58%; top:6%; width:5%; height:31.45%; -webkit-mask-image:url(../images/english-camps/deco/icons/sun.svg); mask-image:url(../images/english-camps/deco/icons/sun.svg); transform-origin:50% 50%; animation:ecdSpin 60s ease-in-out -51.0s infinite; }
.ecd--tokushima-pc .ecd__el--mountain-1{ left:79%; top:50%; width:13%; height:27.92%; -webkit-mask-image:url(../images/english-camps/about__illust--2.svg); mask-image:url(../images/english-camps/about__illust--2.svg); }
.ecd--tokushima-pc .ecd__el--tree-3{ left:92.5%; top:22%; width:5%; height:44.3%; -webkit-mask-image:url(../images/english-camps/about__illust--1.svg); mask-image:url(../images/english-camps/about__illust--1.svg); transform-origin:50% 100%; animation:ecdSway 5.2s ease-in-out -4.8s infinite; }
.ecd--tokushima-pc .ecd__el--citrus-2{ left:97%; top:74%; width:2.2%; height:13.28%; -webkit-mask-image:url(../images/english-camps/deco/icons/citrus.svg); mask-image:url(../images/english-camps/deco/icons/citrus.svg); animation:ecdFloat 3.6s ease-in-out -2.7s infinite; }
.ecd--tokushima-sp{ padding-top: 30.4%; }
.ecd--tokushima-sp .ecd__el--band{ left:0%; top:61.11%; width:100%; height:38.89%; -webkit-mask-image:url(../images/english-camps/deco/sp/band.png); mask-image:url(../images/english-camps/deco/sp/band.png); opacity:.24; }
.ecd--tokushima-sp .ecd__el--tree-1{ left:2%; top:6%; width:13%; height:60.24%; -webkit-mask-image:url(../images/english-camps/about__illust--1.svg); mask-image:url(../images/english-camps/about__illust--1.svg); transform-origin:50% 100%; animation:ecdSway 5.2s ease-in-out -4.3s infinite; }
.ecd--tokushima-sp .ecd__el--corn-1{ left:5%; top:64%; width:5%; height:18.18%; -webkit-mask-image:url(../images/english-camps/about__illust--7.svg); mask-image:url(../images/english-camps/about__illust--7.svg); animation:ecdFloat 3.6s ease-in-out -1.8s infinite; }
.ecd--tokushima-sp .ecd__el--tomato-1{ left:10.5%; top:66%; width:6%; height:16.72%; -webkit-mask-image:url(../images/english-camps/fv__tomato.png); mask-image:url(../images/english-camps/fv__tomato.png); animation:ecdFloat 3.6s ease-in-out -0.9s infinite; }
.ecd--tokushima-sp .ecd__el--citrus-1{ left:17%; top:72%; width:5%; height:15.79%; -webkit-mask-image:url(../images/english-camps/deco/icons/citrus.svg); mask-image:url(../images/english-camps/deco/icons/citrus.svg); animation:ecdFloat 3.6s ease-in-out -0.0s infinite; }
.ecd--tokushima-sp .ecd__el--bird-1{ left:40%; top:16%; width:7%; height:11.05%; -webkit-mask-image:url(../images/english-camps/deco/icons/bird.svg); mask-image:url(../images/english-camps/deco/icons/bird.svg); animation:ecdFly 9s ease-in-out -4.5s infinite; }
.ecd--tokushima-sp .ecd__el--bird-2{ left:47%; top:8%; width:5%; height:7.89%; -webkit-mask-image:url(../images/english-camps/deco/icons/bird.svg); mask-image:url(../images/english-camps/deco/icons/bird.svg); animation:ecdFly 9s ease-in-out -3.6s infinite; }
.ecd--tokushima-sp .ecd__el--sun-1{ left:68%; top:4%; width:12%; height:39.47%; -webkit-mask-image:url(../images/english-camps/deco/icons/sun.svg); mask-image:url(../images/english-camps/deco/icons/sun.svg); transform-origin:50% 50%; animation:ecdSpin 60s ease-in-out -53.7s infinite; }
.ecd--tokushima-sp .ecd__el--mountain-1{ left:70%; top:48%; width:28%; height:31.45%; -webkit-mask-image:url(../images/english-camps/about__illust--2.svg); mask-image:url(../images/english-camps/about__illust--2.svg); }
.ecd--nagano-pc{ padding-top: 15.9%; }
.ecd--nagano-pc .ecd__el--band{ left:0%; top:60.53%; width:100%; height:39.47%; -webkit-mask-image:url(../images/english-camps/deco/pc/band.png); mask-image:url(../images/english-camps/deco/pc/band.png); opacity:.24; }
.ecd--nagano-pc .ecd__el--mountain-1{ left:1%; top:22%; width:20%; height:42.95%; -webkit-mask-image:url(../images/english-camps/about__illust--2.svg); mask-image:url(../images/english-camps/about__illust--2.svg); }
.ecd--nagano-pc .ecd__el--mountain-2{ left:15%; top:38%; width:12%; height:25.77%; -webkit-mask-image:url(../images/english-camps/about__illust--2.svg); mask-image:url(../images/english-camps/about__illust--2.svg); }
.ecd--nagano-pc .ecd__el--tree-1{ left:29%; top:44%; width:4.5%; height:39.87%; -webkit-mask-image:url(../images/english-camps/about__illust--1.svg); mask-image:url(../images/english-camps/about__illust--1.svg); transform-origin:50% 100%; animation:ecdSway 5.2s ease-in-out -2.5s infinite; }
.ecd--nagano-pc .ecd__el--tree-2{ left:33.5%; top:54%; width:3.2%; height:28.35%; -webkit-mask-image:url(../images/english-camps/about__illust--1.svg); mask-image:url(../images/english-camps/about__illust--1.svg); transform-origin:50% 100%; animation:ecdSway 5.2s ease-in-out -1.6s infinite; }
.ecd--nagano-pc .ecd__el--grapes-1{ left:39.5%; top:60%; width:2.4%; height:19.62%; -webkit-mask-image:url(../images/english-camps/deco/icons/grapes.svg); mask-image:url(../images/english-camps/deco/icons/grapes.svg); animation:ecdFloat 3.6s ease-in-out -2.7s infinite; }
.ecd--nagano-pc .ecd__el--grapes-2{ left:42.5%; top:66%; width:2%; height:16.35%; -webkit-mask-image:url(../images/english-camps/deco/icons/grapes.svg); mask-image:url(../images/english-camps/deco/icons/grapes.svg); animation:ecdFloat 3.6s ease-in-out -1.8s infinite; }
.ecd--nagano-pc .ecd__el--stars-1{ left:54%; top:8%; width:4%; height:19.96%; -webkit-mask-image:url(../images/english-camps/fv__stars.png); mask-image:url(../images/english-camps/fv__stars.png); animation:ecdTwinkle 2.6s ease-in-out -1.5s infinite; }
.ecd--nagano-pc .ecd__el--stars-2{ left:61%; top:20%; width:3%; height:14.97%; -webkit-mask-image:url(../images/english-camps/fv__stars.png); mask-image:url(../images/english-camps/fv__stars.png); animation:ecdTwinkle 2.6s ease-in-out -0.6s infinite; }
.ecd--nagano-pc .ecd__el--bird-1{ left:70%; top:26%; width:2.4%; height:7.25%; -webkit-mask-image:url(../images/english-camps/deco/icons/bird.svg); mask-image:url(../images/english-camps/deco/icons/bird.svg); animation:ecdFly 9s ease-in-out -0.9s infinite; }
.ecd--nagano-pc .ecd__el--bird-2{ left:73%; top:19%; width:2%; height:6.04%; -webkit-mask-image:url(../images/english-camps/deco/icons/bird.svg); mask-image:url(../images/english-camps/deco/icons/bird.svg); animation:ecdFly 9s ease-in-out -0.0s infinite; }
.ecd--nagano-pc .ecd__el--tree-3{ left:88%; top:26%; width:5.5%; height:48.73%; -webkit-mask-image:url(../images/english-camps/about__illust--1.svg); mask-image:url(../images/english-camps/about__illust--1.svg); transform-origin:50% 100%; animation:ecdSway 5.2s ease-in-out -0.5s infinite; }
.ecd--nagano-pc .ecd__el--tree-4{ left:93.8%; top:40%; width:4.2%; height:37.21%; -webkit-mask-image:url(../images/english-camps/about__illust--1.svg); mask-image:url(../images/english-camps/about__illust--1.svg); transform-origin:50% 100%; animation:ecdSway 5.2s ease-in-out -4.8s infinite; }
.ecd--nagano-pc .ecd__el--grapes-3{ left:97%; top:70%; width:2.4%; height:19.62%; -webkit-mask-image:url(../images/english-camps/deco/icons/grapes.svg); mask-image:url(../images/english-camps/deco/icons/grapes.svg); animation:ecdFloat 3.6s ease-in-out -2.7s infinite; }
.ecd--nagano-sp{ padding-top: 30.4%; }
.ecd--nagano-sp .ecd__el--band{ left:0%; top:61.11%; width:100%; height:38.89%; -webkit-mask-image:url(../images/english-camps/deco/sp/band.png); mask-image:url(../images/english-camps/deco/sp/band.png); opacity:.24; }
.ecd--nagano-sp .ecd__el--mountain-1{ left:0%; top:14%; width:40%; height:44.93%; -webkit-mask-image:url(../images/english-camps/about__illust--2.svg); mask-image:url(../images/english-camps/about__illust--2.svg); }
.ecd--nagano-sp .ecd__el--tree-1{ left:38%; top:30%; width:10%; height:46.34%; -webkit-mask-image:url(../images/english-camps/about__illust--1.svg); mask-image:url(../images/english-camps/about__illust--1.svg); transform-origin:50% 100%; animation:ecdSway 5.2s ease-in-out -3.4s infinite; }
.ecd--nagano-sp .ecd__el--grapes-1{ left:47%; top:60%; width:6%; height:25.66%; -webkit-mask-image:url(../images/english-camps/deco/icons/grapes.svg); mask-image:url(../images/english-camps/deco/icons/grapes.svg); animation:ecdFloat 3.6s ease-in-out -0.9s infinite; }
.ecd--nagano-sp .ecd__el--stars-1{ left:68%; top:6%; width:10%; height:26.1%; -webkit-mask-image:url(../images/english-camps/fv__stars.png); mask-image:url(../images/english-camps/fv__stars.png); animation:ecdTwinkle 2.6s ease-in-out -1.6s infinite; }
.ecd--nagano-sp .ecd__el--tree-2{ left:85%; top:26%; width:13%; height:60.24%; -webkit-mask-image:url(../images/english-camps/about__illust--1.svg); mask-image:url(../images/english-camps/about__illust--1.svg); transform-origin:50% 100%; animation:ecdSway 5.2s ease-in-out -0.7s infinite; }
.ecd--nagano-sp .ecd__el--grapes-2{ left:94%; top:70%; width:5%; height:21.38%; -webkit-mask-image:url(../images/english-camps/deco/icons/grapes.svg); mask-image:url(../images/english-camps/deco/icons/grapes.svg); animation:ecdFloat 3.6s ease-in-out -1.8s infinite; }
.ecd--kansai-pc{ padding-top: 15.9%; }
.ecd--kansai-pc .ecd__el--band{ left:0%; top:60.53%; width:100%; height:39.47%; -webkit-mask-image:url(../images/english-camps/deco/pc/band.png); mask-image:url(../images/english-camps/deco/pc/band.png); opacity:.24; }
.ecd--kansai-pc .ecd__el--tree-1{ left:1%; top:48%; width:4.5%; height:39.87%; -webkit-mask-image:url(../images/english-camps/about__illust--1.svg); mask-image:url(../images/english-camps/about__illust--1.svg); transform-origin:50% 100%; animation:ecdSway 5.2s ease-in-out -4.3s infinite; }
.ecd--kansai-pc .ecd__el--citrus-1{ left:6.5%; top:74%; width:2.2%; height:13.28%; -webkit-mask-image:url(../images/english-camps/deco/icons/citrus.svg); mask-image:url(../images/english-camps/deco/icons/citrus.svg); animation:ecdFloat 3.6s ease-in-out -1.8s infinite; }
.ecd--kansai-pc .ecd__el--citrus-2{ left:9.5%; top:80%; width:1.8%; height:10.87%; -webkit-mask-image:url(../images/english-camps/deco/icons/citrus.svg); mask-image:url(../images/english-camps/deco/icons/citrus.svg); animation:ecdFloat 3.6s ease-in-out -0.9s infinite; }
.ecd--kansai-pc .ecd__el--sun-1{ left:38%; top:4%; width:5.5%; height:34.59%; -webkit-mask-image:url(../images/english-camps/deco/icons/sun.svg); mask-image:url(../images/english-camps/deco/icons/sun.svg); transform-origin:50% 50%; animation:ecdSpin 60s ease-in-out -56.4s infinite; }
.ecd--kansai-pc .ecd__el--bird-1{ left:48%; top:18%; width:2.6%; height:7.85%; -webkit-mask-image:url(../images/english-camps/deco/icons/bird.svg); mask-image:url(../images/english-camps/deco/icons/bird.svg); animation:ecdFly 9s ease-in-out -4.5s infinite; }
.ecd--kansai-pc .ecd__el--bird-2{ left:51.5%; top:12%; width:2%; height:6.04%; -webkit-mask-image:url(../images/english-camps/deco/icons/bird.svg); mask-image:url(../images/english-camps/deco/icons/bird.svg); animation:ecdFly 9s ease-in-out -3.6s infinite; }
.ecd--kansai-pc .ecd__el--mountain-1{ left:56%; top:50%; width:12%; height:25.77%; -webkit-mask-image:url(../images/english-camps/about__illust--2.svg); mask-image:url(../images/english-camps/about__illust--2.svg); }
.ecd--kansai-pc .ecd__el--citrus-3{ left:80%; top:74%; width:2.2%; height:13.28%; -webkit-mask-image:url(../images/english-camps/deco/icons/citrus.svg); mask-image:url(../images/english-camps/deco/icons/citrus.svg); animation:ecdFloat 3.6s ease-in-out -0.0s infinite; }
.ecd--kansai-pc .ecd__el--tree-2{ left:93%; top:44%; width:5%; height:44.3%; -webkit-mask-image:url(../images/english-camps/about__illust--1.svg); mask-image:url(../images/english-camps/about__illust--1.svg); transform-origin:50% 100%; animation:ecdSway 5.2s ease-in-out -2.3s infinite; }
.ecd--kansai-pc .ecd__el--citrus-4{ left:97.5%; top:78%; width:2%; height:12.08%; -webkit-mask-image:url(../images/english-camps/deco/icons/citrus.svg); mask-image:url(../images/english-camps/deco/icons/citrus.svg); animation:ecdFloat 3.6s ease-in-out -1.8s infinite; }
.ecd--kansai-sp{ padding-top: 30.4%; }
.ecd--kansai-sp .ecd__el--band{ left:0%; top:61.11%; width:100%; height:38.89%; -webkit-mask-image:url(../images/english-camps/deco/sp/band.png); mask-image:url(../images/english-camps/deco/sp/band.png); opacity:.24; }
.ecd--kansai-sp .ecd__el--tree-1{ left:2%; top:58%; width:9%; height:41.7%; -webkit-mask-image:url(../images/english-camps/about__illust--1.svg); mask-image:url(../images/english-camps/about__illust--1.svg); transform-origin:50% 100%; animation:ecdSway 5.2s ease-in-out -4.3s infinite; }
.ecd--kansai-sp .ecd__el--citrus-1{ left:12%; top:80%; width:5%; height:15.79%; -webkit-mask-image:url(../images/english-camps/deco/icons/citrus.svg); mask-image:url(../images/english-camps/deco/icons/citrus.svg); animation:ecdFloat 3.6s ease-in-out -1.8s infinite; }
.ecd--kansai-sp .ecd__el--citrus-2{ left:18%; top:86%; width:4%; height:12.63%; -webkit-mask-image:url(../images/english-camps/deco/icons/citrus.svg); mask-image:url(../images/english-camps/deco/icons/citrus.svg); animation:ecdFloat 3.6s ease-in-out -0.9s infinite; }
.ecd--kansai-sp .ecd__el--sun-1{ left:70%; top:40%; width:9%; height:29.61%; -webkit-mask-image:url(../images/english-camps/deco/icons/sun.svg); mask-image:url(../images/english-camps/deco/icons/sun.svg); transform-origin:50% 50%; animation:ecdSpin 60s ease-in-out -56.4s infinite; }
.ecd--kansai-sp .ecd__el--mountain-1{ left:40%; top:70%; width:26%; height:29.2%; -webkit-mask-image:url(../images/english-camps/about__illust--2.svg); mask-image:url(../images/english-camps/about__illust--2.svg); }
.ecd--kansai-sp .ecd__el--tree-2{ left:89%; top:60%; width:8%; height:37.07%; -webkit-mask-image:url(../images/english-camps/about__illust--1.svg); mask-image:url(../images/english-camps/about__illust--1.svg); transform-origin:50% 100%; animation:ecdSway 5.2s ease-in-out -5.0s infinite; }
.ecd--kanagawa-pc{ padding-top: min(17.88%, 257.5px); } /* 幅は max-width:1440px で止まるが padding-top の%は親幅基準なので高さも 1440px 相当で止める */
.ecd--kanagawa-pc .ecd__el--fuji-1{ left:34%; top:52%; width:13%; height:30.4%; -webkit-mask-image:url(../images/english-camps/deco/icons/fuji.svg); mask-image:url(../images/english-camps/deco/icons/fuji.svg); }
.ecd--kanagawa-pc .ecd__el--tree-1{ left:1.5%; top:62%; width:5%; height:39.39%; -webkit-mask-image:url(../images/english-camps/about__illust--1.svg); mask-image:url(../images/english-camps/about__illust--1.svg); transform-origin:50% 100%; animation:ecdSway 5.2s ease-in-out -4.3s infinite; }
.ecd--kanagawa-pc .ecd__el--tree-2{ left:6.5%; top:74%; width:3.4%; height:26.79%; -webkit-mask-image:url(../images/english-camps/about__illust--1.svg); mask-image:url(../images/english-camps/about__illust--1.svg); transform-origin:50% 100%; animation:ecdSway 5.2s ease-in-out -3.4s infinite; }
.ecd--kanagawa-pc .ecd__el--bird-1{ left:43%; top:30%; width:2.4%; height:6.44%; -webkit-mask-image:url(../images/english-camps/deco/icons/bird.svg); mask-image:url(../images/english-camps/deco/icons/bird.svg); animation:ecdFly 9s ease-in-out -6.3s infinite; }
.ecd--kanagawa-pc .ecd__el--bird-2{ left:46%; top:24%; width:2.0%; height:5.37%; -webkit-mask-image:url(../images/english-camps/deco/icons/bird.svg); mask-image:url(../images/english-camps/deco/icons/bird.svg); animation:ecdFly 9s ease-in-out -5.4s infinite; }
.ecd--kanagawa-pc .ecd__el--cloud-1{ left:39.5%; top:4%; width:6%; height:17.26%; -webkit-mask-image:url(../images/english-camps/deco/icons/cloud.svg); mask-image:url(../images/english-camps/deco/icons/cloud.svg); animation:ecdDrift 14s ease-in-out -9.5s infinite; }
.ecd--kanagawa-pc .ecd__el--tree-3{ left:26%; top:58%; width:4.5%; height:35.45%; -webkit-mask-image:url(../images/english-camps/about__illust--1.svg); mask-image:url(../images/english-camps/about__illust--1.svg); transform-origin:50% 100%; animation:ecdSway 5.2s ease-in-out -5.0s infinite; }
.ecd--kanagawa-pc .ecd__el--tree-4{ left:30.5%; top:72%; width:3.0%; height:23.63%; -webkit-mask-image:url(../images/english-camps/about__illust--1.svg); mask-image:url(../images/english-camps/about__illust--1.svg); transform-origin:50% 100%; animation:ecdSway 5.2s ease-in-out -4.1s infinite; }
.ecd--kanagawa-sp{ padding-top: 30.67%; }
.ecd--kanagawa-sp .ecd__el--fuji-1{ left:32%; top:54%; width:34%; height:46.36%; -webkit-mask-image:url(../images/english-camps/deco/icons/fuji.svg); mask-image:url(../images/english-camps/deco/icons/fuji.svg); }
.ecd--kanagawa-sp .ecd__el--tree-1{ left:2%; top:62%; width:9%; height:41.33%; -webkit-mask-image:url(../images/english-camps/about__illust--1.svg); mask-image:url(../images/english-camps/about__illust--1.svg); transform-origin:50% 100%; animation:ecdSway 5.2s ease-in-out -4.3s infinite; }
.ecd--kanagawa-sp .ecd__el--bird-1{ left:70%; top:40%; width:7%; height:10.96%; -webkit-mask-image:url(../images/english-camps/deco/icons/bird.svg); mask-image:url(../images/english-camps/deco/icons/bird.svg); animation:ecdFly 9s ease-in-out -7.2s infinite; }
.ecd--kanagawa-sp .ecd__el--cloud-1{ left:78%; top:28%; width:12%; height:20.12%; -webkit-mask-image:url(../images/english-camps/deco/icons/cloud.svg); mask-image:url(../images/english-camps/deco/icons/cloud.svg); animation:ecdDrift 14s ease-in-out -11.3s infinite; }
.ecd--kanagawa-sp .ecd__el--tree-2{ left:90%; top:60%; width:8%; height:36.74%; -webkit-mask-image:url(../images/english-camps/about__illust--1.svg); mask-image:url(../images/english-camps/about__illust--1.svg); transform-origin:50% 100%; animation:ecdSway 5.2s ease-in-out -1.6s infinite; }
.ecd--nasu-pc{ padding-top: min(17.88%, 257.5px); }
.ecd--nasu-pc .ecd__el--mountain-1{ left:10%; top:60%; width:16%; height:30.56%; -webkit-mask-image:url(../images/english-camps/about__illust--2.svg); mask-image:url(../images/english-camps/about__illust--2.svg); }
.ecd--nasu-pc .ecd__el--mountain-2{ left:23%; top:68%; width:10%; height:19.1%; -webkit-mask-image:url(../images/english-camps/about__illust--2.svg); mask-image:url(../images/english-camps/about__illust--2.svg); }
.ecd--nasu-pc .ecd__el--tree-1{ left:1.5%; top:62%; width:5%; height:39.39%; -webkit-mask-image:url(../images/english-camps/about__illust--1.svg); mask-image:url(../images/english-camps/about__illust--1.svg); transform-origin:50% 100%; animation:ecdSway 5.2s ease-in-out -3.4s infinite; }
.ecd--nasu-pc .ecd__el--tree-2{ left:6.5%; top:74%; width:3.4%; height:26.79%; -webkit-mask-image:url(../images/english-camps/about__illust--1.svg); mask-image:url(../images/english-camps/about__illust--1.svg); transform-origin:50% 100%; animation:ecdSway 5.2s ease-in-out -2.5s infinite; }
.ecd--nasu-pc .ecd__el--onsen-1{ left:42%; top:6%; width:4.5%; height:25.17%; -webkit-mask-image:url(../images/english-camps/deco/icons/onsen.svg); mask-image:url(../images/english-camps/deco/icons/onsen.svg); transform-origin:50% 100%; animation:ecdSteam 3s ease-in-out -2.4s infinite; }
.ecd--nasu-pc .ecd__el--snowman-1{ left:44%; top:66%; width:3.2%; height:22.37%; -webkit-mask-image:url(../images/english-camps/deco/icons/snowman.svg); mask-image:url(../images/english-camps/deco/icons/snowman.svg); }
.ecd--nasu-pc .ecd__el--cloud-1{ left:41.5%; top:40%; width:6.5%; height:18.7%; -webkit-mask-image:url(../images/english-camps/deco/icons/cloud.svg); mask-image:url(../images/english-camps/deco/icons/cloud.svg); animation:ecdDrift 14s ease-in-out -8.6s infinite; }
.ecd--nasu-pc .ecd__el--skier-1{ left:33%; top:50%; width:5.5%; height:25.63%; -webkit-mask-image:url(../images/english-camps/deco/icons/skier.svg); mask-image:url(../images/english-camps/deco/icons/skier.svg); animation:ecdSki 8s ease-in-out -1.7s infinite; }
.ecd--nasu-pc .ecd__el--tree-3{ left:26%; top:58%; width:4.5%; height:35.45%; -webkit-mask-image:url(../images/english-camps/about__illust--1.svg); mask-image:url(../images/english-camps/about__illust--1.svg); transform-origin:50% 100%; animation:ecdSway 5.2s ease-in-out -3.2s infinite; }
.ecd--nasu-pc .ecd__el--tree-4{ left:30.5%; top:72%; width:3.0%; height:23.63%; -webkit-mask-image:url(../images/english-camps/about__illust--1.svg); mask-image:url(../images/english-camps/about__illust--1.svg); transform-origin:50% 100%; animation:ecdSway 5.2s ease-in-out -2.3s infinite; }
.ecd--nasu-sp{ padding-top: 30.67%; }
.ecd--nasu-sp .ecd__el--mountain-1{ left:2%; top:62%; width:32%; height:35.63%; -webkit-mask-image:url(../images/english-camps/about__illust--2.svg); mask-image:url(../images/english-camps/about__illust--2.svg); }
.ecd--nasu-sp .ecd__el--onsen-1{ left:44%; top:58%; width:9%; height:29.34%; -webkit-mask-image:url(../images/english-camps/deco/icons/onsen.svg); mask-image:url(../images/english-camps/deco/icons/onsen.svg); transform-origin:50% 100%; animation:ecdSteam 3s ease-in-out -2.1s infinite; }
.ecd--nasu-sp .ecd__el--snowman-1{ left:56%; top:64%; width:6%; height:24.45%; -webkit-mask-image:url(../images/english-camps/deco/icons/snowman.svg); mask-image:url(../images/english-camps/deco/icons/snowman.svg); }
.ecd--nasu-sp .ecd__el--tree-1{ left:66%; top:56%; width:8%; height:36.74%; -webkit-mask-image:url(../images/english-camps/about__illust--1.svg); mask-image:url(../images/english-camps/about__illust--1.svg); transform-origin:50% 100%; animation:ecdSway 5.2s ease-in-out -2.5s infinite; }
.ecd--nasu-sp .ecd__el--tree-2{ left:90%; top:62%; width:7%; height:32.15%; -webkit-mask-image:url(../images/english-camps/about__illust--1.svg); mask-image:url(../images/english-camps/about__illust--1.svg); transform-origin:50% 100%; animation:ecdSway 5.2s ease-in-out -1.6s infinite; }

/* 神奈川・那須(PC): 1230px以下は本文カラムと写真の間に隙間がなくなるため、中央の装飾（富士山・鳥・雲・左林の奥の木）を出さず端の木だけ残す */
@media only screen and (min-width: 769px) and (max-width: 1230px){
	.ecd--kanagawa-pc .ecd__el--fuji-1, .ecd--kanagawa-pc .ecd__el--bird-1, .ecd--kanagawa-pc .ecd__el--bird-2, .ecd--kanagawa-pc .ecd__el--cloud-1, .ecd--kanagawa-pc .ecd__el--tree-3, .ecd--kanagawa-pc .ecd__el--tree-4,
	.ecd--nasu-pc .ecd__el--mountain-1, .ecd--nasu-pc .ecd__el--mountain-2, .ecd--nasu-pc .ecd__el--onsen-1, .ecd--nasu-pc .ecd__el--cloud-1, .ecd--nasu-pc .ecd__el--skier-1, .ecd--nasu-pc .ecd__el--snowman-1, .ecd--nasu-pc .ecd__el--tree-3, .ecd--nasu-pc .ecd__el--tree-4{
		display: none;
	}
}

/* 神奈川(PC): 1900px以上は本文カラム（padding-left:8vw）が右に寄って写真との隙間が消えるため、隙間に置いている雲と鳥だけ非表示 */
@media only screen and (min-width: 1900px){
	.ecd--kanagawa-pc .ecd__el--cloud-1, .ecd--kanagawa-pc .ecd__el--bird-1, .ecd--kanagawa-pc .ecd__el--bird-2,
	.ecd--nasu-pc .ecd__el--onsen-1, .ecd--nasu-pc .ecd__el--cloud-1, .ecd--nasu-pc .ecd__el--snowman-1{
		display: none;
	}
}

@keyframes ecdFloat{
	0%, 100%{ transform: translateY(0) rotate(-3deg); }
	50%{ transform: translateY(-14%) rotate(3deg); }
}
@keyframes ecdFly{
	0%{ transform: translate(0, 0) scaleY(1); }
	25%{ transform: translate(6%, -30%) scaleY(.6); }
	50%{ transform: translate(14%, -10%) scaleY(1); }
	75%{ transform: translate(6%, 20%) scaleY(.6); }
	100%{ transform: translate(0, 0) scaleY(1); }
}
@keyframes ecdSpin{
	0%{ transform: rotate(0); }
	100%{ transform: rotate(360deg); }
}
@keyframes ecdTwinkle{
	0%, 100%{ transform: scale(1) rotate(0); opacity: 1; }
	50%{ transform: scale(.7) rotate(15deg); opacity: .5; }
}
@keyframes ecdDrift{
	0%, 100%{ transform: translateX(0); }
	50%{ transform: translateX(30%); }
}
@keyframes ecdSteam{
	0%, 100%{ transform: translateY(0) scaleY(1); }
	50%{ transform: translateY(-6%) scaleY(1.08); }
}
@keyframes ecdDive{
	0%, 100%{ transform: rotate(-10deg) translate(0, 0); }
	50%{ transform: rotate(-18deg) translate(-10%, 14%); }
}
@keyframes ecdSail{
	0%, 100%{ transform: translateX(0) rotate(-4deg); }
	50%{ transform: translateX(12%) rotate(4deg); }
}
@keyframes ecdSki{
	0%, 100%{ transform: translate(0, 0) rotate(0); }
	50%{ transform: translate(-16%, 10%) rotate(-4deg); }
}
@keyframes ecdSway{
	0%, 100%{ transform: rotate(-3deg); }
	50%{ transform: rotate(3deg); }
}
@keyframes ecdBloom{
	0%, 100%{ transform: scale(1) rotate(-2deg); }
	50%{ transform: scale(1.06) rotate(2deg); }
}
@keyframes ecdSwim{
	0%{ transform: translate(0, 0) rotate(0); }
	25%{ transform: translate(-18%, -12%) rotate(-6deg); }
	50%{ transform: translate(-36%, 0) rotate(0); }
	75%{ transform: translate(-18%, 12%) rotate(6deg); }
	100%{ transform: translate(0, 0) rotate(0); }
}
@keyframes ecdStep{
	0%, 100%{ transform: translateY(0) rotate(0); }
	30%{ transform: translateY(-5%) rotate(-2deg); }
	60%{ transform: translateY(0) rotate(1.5deg); }
}
@keyframes ecdCrawl{
	0%{ transform: translateX(0) rotate(0); }
	25%{ transform: translateX(-10%) rotate(-2deg); }
	50%{ transform: translateX(-20%) rotate(0); }
	75%{ transform: translateX(-10%) rotate(2deg); }
	100%{ transform: translateX(0) rotate(0); }
}

/* ニセコ: 雪（旧装飾画像が存在しなかったため新設）
———————————————————————————————————————————————————————————————————*/
.niseko .ecd-snow, .nasu .ecd-snow{
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	transform: none; /* .fv__bg の left:50%/translate(-50%) を打ち消す */
	overflow: hidden;
	pointer-events: none;
	z-index: 0;
}
.niseko .fv__inner{ position: relative; z-index: 1; }
.nasu .ecd-snow{ z-index: 2; }
.nasu .ecd-snow__flake{ background: radial-gradient(circle at 40% 40%, #fff 0 42%, rgba(127, 168, 201, .55) 44%, rgba(127, 168, 201, 0) 72%); opacity: .95; }
.ecd-snow__flake{
	position: absolute;
	top: -6%;
	left: var(--x, 50%);
	width: calc(18px * var(--s, 1));
	height: calc(18px * var(--s, 1));
	border-radius: 50%;
	background: radial-gradient(circle at 40% 40%, #fff 0 38%, rgba(236, 69, 130, .55) 40%, rgba(236, 69, 130, 0) 72%);
	opacity: .85;
	animation: ecdSnow calc(11s / var(--s, 1)) linear var(--d, 0s) infinite;
}
@keyframes ecdSnow{
	0%{ transform: translate(0, 0); opacity: 0; }
	8%{ opacity: .85; }
	50%{ transform: translate(26px, 55vh); }
	92%{ opacity: .85; }
	100%{ transform: translate(-16px, 110vh); opacity: 0; }
}

@media (prefers-reduced-motion: reduce){
	.ecd__el, .ecd-snow__flake{ animation: none !important; }
}

/* ハブの拠点カード（写真2枚＋装飾をHTML化。旧: place__N.webp の1枚画像）
———————————————————————————————————————————————————————————————————*/
.pcard{ position: relative; aspect-ratio: 1049 / 773; overflow: visible; }
.pcard__photo{ position: absolute; border-radius: 50%; overflow: hidden; aspect-ratio: 1; transition: transform .5s cubic-bezier(.22, 1, .36, 1); }
.pcard__photo--big{ left: 0; top: 0; width: 62%; z-index: 1; }
.pcard__photo--small{ left: 50%; top: 26%; width: 47%; z-index: 2; }
.pcard .pcard__photo img{ display: block; width: 100%; height: 100%; object-fit: cover; }
.pcard .pcard__deco{ position: absolute; z-index: 3; height: auto; }
.pcard__icon{ position: absolute; z-index: 3; display: block; background: var(--c, #FE766B); -webkit-mask: var(--m) center / contain no-repeat; mask: var(--m) center / contain no-repeat; }
.pcard__word{ position: absolute; z-index: 3; margin: 0; font-family: "Caveat", "Bradley Hand", cursive; font-weight: 600; font-size: clamp(18px, 2.1vw, 30px); line-height: 1; color: #333; white-space: nowrap; transform: rotate(var(--r, -8deg)); animation: fvWiggle 3s ease-in-out infinite; }
.pcard__word--marks::before{ content: "\\\\ "; font-weight: 500; }
.pcard__word--marks::after{ content: " //"; font-weight: 500; }
.sort__list .place:hover .pcard__photo--big{ transform: scale(1.03); }
.sort__list .place:hover .pcard__photo--small{ transform: scale(1.05); }
/* cebu */
.pcard--cebu .pcard__deco--palm{ left: -2%; bottom: 2%; width: 17%; transform-origin: 50% 100%; animation: fvSway 4s ease-in-out infinite; }
.pcard--cebu .pcard__deco--fish{ left: 43%; top: 84%; width: 13.92%; animation: fvSwim 6s ease-in-out infinite; }
.pcard--cebu .pcard__word{ left: 63%; top: 10%; --r: -8deg; }
/* okinawa */
.pcard--okinawa .pcard__deco--turtle{ left: -1%; top: 72%; width: 17%; animation: fvCrawl 6s ease-in-out infinite; }
.pcard--okinawa .pcard__icon--sun{ left: 86%; top: 4%; width: 11%; aspect-ratio: 1; --c: #FE766B; animation: ecdSpin 40s linear infinite; }
.pcard--okinawa .pcard__word{ left: 65%; top: 10%; --r: -6deg; }
/* tokushima */
.pcard--tokushima .pcard__deco--corn{ left: 1%; top: 74%; width: 7%; animation: fvFloat 3.4s ease-in-out infinite; }
.pcard--tokushima .pcard__deco--tomato{ left: 9%; top: 80%; width: 5.8%; animation: fvFloat 3.8s ease-in-out -1.2s infinite; }
.pcard--tokushima .pcard__icon--citrus{ left: 18%; top: 78%; width: 7%; aspect-ratio: 100 / 96; --c: #8BC34A; animation: fvFloat 3.2s ease-in-out -2.2s infinite; }
.pcard--tokushima .pcard__word{ left: 66%; top: 10%; --r: -6deg; }
/* nagano */
.pcard--nagano .pcard__deco--mountain{ left: -2%; top: 80%; width: 26%; }
.pcard--nagano .pcard__deco--stars{ left: 86%; top: 12%; width: 9%; animation: fvTwinkle 2.4s ease-in-out infinite; }
.pcard--nagano .pcard__word{ left: 65%; top: 10%; --r: -6deg; }
/* nasu */
.pcard--nasu .pcard__deco--mountain{ left: -2%; top: 80%; width: 26%; }
.pcard--nasu .pcard__icon--snowman{ left: 24%; top: 82%; width: 7%; aspect-ratio: 80 / 100; --c: #7FA8C9; animation: fvFloat 4s ease-in-out infinite; }
.pcard--nasu .pcard__icon--onsen{ left: 86%; top: 6%; width: 10%; aspect-ratio: 1; --c: #FE766B; animation: ecdSteam 3s ease-in-out infinite; transform-origin: 50% 100%; }
.pcard--nasu .pcard__word{ left: 62%; top: 10%; --r: -8deg; }
@media only screen and (max-width: 768px){ .pcard__word{ font-size: 18px; } }
@media (prefers-reduced-motion: reduce){ .pcard__deco, .pcard__icon, .pcard__word{ animation: none !important; } }
