@charset "UTF-8";
/* override
----------------------------------------------------------------- */
.l-localNav {
	margin-bottom: 0;
}
@media (min-width: 821px), print {
	.l-localNav {
		margin-bottom: 80px;
	}
}

/* 共通パーツ
----------------------------------------------------------------- */
[class^=c-icn] {
	display: inline-block;
	font-weight: 400;
	width: 1em;
	aspect-ratio: 1/1;
	line-height: 1;
	background: no-repeat 0 0/contain;
}

.c-icn-mappin {
	background-image: url(/en/assets/images/touristpasmo/icon_map.webp);
}

.c-icn-airline {
	background-image: url(/en/assets/images/touristpasmo/icon_airline.webp);
}

.c-icn-holdingfun {
	background-image: url(/en/assets/images/touristpasmo/icon_ougi.webp);
	aspect-ratio: 110/73;
}

/* 見出し */
.c-heading-secondary {
	position: relative;
	z-index: 2;
	margin-bottom: 40px;
	padding-bottom: 0 !important;
}
.c-heading-secondary::before {
	display: block;
	content: "";
	margin: 0 auto 10px;
	width: 42.5px;
	aspect-ratio: 42.5/38.79;
	background: url(/en/assets/images/touristpasmo/icon_h2_01.webp) no-repeat 0 0/contain;
}
.c-heading-secondary::after {
	display: none;
}
.c-heading-secondary h2 {
	color: #fff;
	font-family: "Noto Serif", serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-size: 3.4rem;
	line-height: 1.4;
	text-align: center;
}
.c-heading-secondary h2 span {
	color: var(--color-prim);
}
@media (min-width: 821px), print {
	.c-heading-secondary {
		margin-bottom: 80px;
	}
	.c-heading-secondary::before {
		width: 74.5px;
	}
	.c-heading-secondary h2 {
		font-size: 6.5rem;
	}
}

[lang=zh-Hant] .c-heading-secondary h2 {
	font-family: "Noto Serif SC", serif;
}

[lang=zh-Hans] .c-heading-secondary h2 {
	font-family: "Noto Serif SC", serif;
}

[lang=ko] .c-heading-secondary h2 {
	font-family: "Noto Serif JP", serif;
}

.l-maincontent__card .c-heading-secondary::before {
	background-image: url(/en/assets/images/touristpasmo/icon_h2_02.webp);
}

.l-maincontent__card .c-heading-secondary:first-of-type {
	margin-top: 0;
}

.c-heading-lv3 {
	margin-block: 50px 20px;
	padding-right: 20px;
	color: #24416F;
	font-size: 2.8rem;
	font-weight: 700;
	text-align: center;
}
.c-heading-lv3 > [class^=c-icn] {
	width: 1.32142857em;
	margin-right: 5px;
	vertical-align: -6px;
}
@media (min-width: 821px), print {
	.c-heading-lv3 {
		margin-block: 120px 24px;
		padding-right: 40px;
		font-size: 4rem;
	}
	.c-heading-lv3 > [class^=c-icn] {
		width: 1.125em;
		margin-right: 0;
		vertical-align: -7px;
	}
}

.c-heading-lv4 {
	margin-block: 40px 30px;
	padding: 10.5px 15px;
	background: #24416F;
	border-radius: 10px;
	color: #fff;
	font-size: 1.8rem;
	font-weight: bold;
}
.c-heading-lv4 > [class^=c-icn] {
	margin-right: 5px;
	vertical-align: -3px;
}
@media (min-width: 821px), print {
	.c-heading-lv4 {
		margin-block: 60px 40px;
		padding: 9px 15px 10px;
		font-size: 2.8rem;
	}
	.c-heading-lv4 > [class^=c-icn] {
		margin-right: 15px;
		vertical-align: -4px;
	}
}

.c-heading-lv5 {
	margin-bottom: 20px;
	color: #24416F;
	font-size: 1.8rem;
	font-weight: bold;
}
@media (min-width: 821px), print {
	.c-heading-lv5 {
		margin-bottom: 30px;
		font-size: 2.4rem;
	}
}

@media (max-width: 820px) {
	.c-pairbox__item:not(:first-of-type) {
		margin-top: clamp(30px, 8vw, 44.8px);
	}
}
@media (min-width: 821px), print {
	.c-pairbox {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		gap: 40px;
	}
	.c-pairbox__item {
		width: calc((100% - 40px) / 2);
	}
}
.c-table {
	color: #333;
}
.c-table th, .c-table td {
	padding: 20px;
	border: 1px solid #B6C9E6;
	vertical-align: top;
	font-size: 1.4rem;
}
.c-table th {
	font-weight: 700;
}
.c-table td strong {
	font-weight: 700;
}
.c-table .c-table__inner {
	table-layout: fixed;
	border-collapse: collapse;
	min-width: 100%;
	border: 1px solid #B6C9E6;
}
.c-table .c-table__subtitle {
	background: #DFE9F8;
	color: #24416F;
}
.c-table .c-table__cell {
	background: #fff;
}
.c-table .c-note {
	margin-top: 7px;
	color: #666;
	font-size: 1rem;
}
@media (min-width: 821px), print {
	.c-table .c-note {
		font-size: 1.4rem;
	}
}

.c-button__inner {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	margin-top: 18px;
	min-width: 110px;
	padding: 4px 20px 4px 6px;
	color: #fff;
	font-weight: 700;
	text-align: center;
}
.c-button__inner::before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	translate: -50% -50%;
	scale: 1 1;
	width: 100%;
	height: 100%;
	border-radius: 50px;
	background: #24416F;
}
.c-button__inner > span {
	position: relative;
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1;
	z-index: 1;
}
@media (min-width: 821px), print {
	.c-button__inner:hover::before {
		scale: 1.022222222 1.12;
	}
}

.c-button--map .c-button__inner {
	position: relative;
	display: flex;
	align-items: center;
	gap: 5px;
	margin-top: 18px;
	width: 110px;
	min-height: auto;
	min-width: 110px;
	padding: 4px 20px 4px 6px;
	text-align: center;
}
.c-button--map .c-button__inner > span {
	color: #fff;
	font-size: 1.4rem;
	font-weight: 700;
	padding: 0 0;
	transition: none;
}
.c-button--map .c-button__inner::before {
	display: none;
}
.c-button--map .c-button__inner:after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	translate: -50% -50%;
	scale: 1 1;
	width: 100%;
	height: 100%;
	border-radius: 50px;
	background: #24416F;
	transform: translate(0, 0);
	transition: none;
}
.c-button--map .c-button__inner .c-icn-map {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 auto;
	flex: 0 0 auto;
	width: 20px;
	height: 20px;
	margin-left: 0;
	padding: 0;
	background-image: url(/en/assets/images/touristpasmo/icon_map_w.webp);
	background-repeat: no-repeat;
	background-size: 100% auto;
}
@media (min-width: 821px), print {
	.c-button--map .c-button__inner:hover::after {
		border: 0;
	}
}

.c-button--close .c-button__inner {
	gap: 5px;
	width: 200px;
	margin-inline: auto;
}
.c-button--close .c-button__inner::before {
	background: var(--color-prim);
}
.c-button--close .c-icn-close {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 auto;
	flex: 0 0 auto;
	width: 12px;
}

.c-button.c-button_nb .c-button__inner {
	pointer-events: none;
}
.c-button.c-button_nb .c-button__inner:hover::after {
	border-color: #213E6D;
	transform: translate(-50%, -50%) scale(1);
}

.c-panel {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	padding: 0;
	border: 0;
	background: #fff;
	border-radius: 10px;
	overflow: hidden;
}
.c-panel + .c-panel {
	margin-top: 30px;
}
@media (min-width: 821px), print {
	.c-panel {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
	}
	.c-panel + .c-panel {
		margin-top: 40px;
	}
}

.c-panel__thumb {
	-webkit-box-ordinal-group: 2;
	-ms-flex-order: 1;
	order: 1;
	aspect-ratio: 440/272.8;
}
@media (min-width: 821px), print {
	.c-panel__thumb {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 auto;
		flex: 0 0 auto;
		max-width: 440px;
	}
}

.c-panel__content {
	-webkit-box-ordinal-group: 3;
	-ms-flex-order: 2;
	order: 2;
	padding: 25px 20px 30px;
}
@media (min-width: 821px), print {
	.c-panel__content {
		-webkit-box-flex: 1;
		-ms-flex-positive: 1;
		flex-grow: 1;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		padding: 50px 40px;
	}
}

.c-panel__title {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	gap: 10px;
	width: 100%;
	color: #24416F;
	font-size: 2rem;
	font-weight: 700;
}
.c-panel__title::before {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 auto;
	flex: 0 0 auto;
	display: block;
	content: "";
	width: 41px;
	aspect-ratio: 1/1;
	background: no-repeat 0 0/contain;
}
.c-panel__title > span {
	padding-top: 5px;
}
.c-panel__title.train::before {
	background-image: url(/en/assets/images/touristpasmo/icon_train.webp);
}
.c-panel__title.bus::before {
	background-image: url(/en/assets/images/touristpasmo/icon_bus.webp);
}
.c-panel__title.shop::before {
	background-image: url(/en/assets/images/touristpasmo/icon_shop.webp);
}
@media (min-width: 821px), print {
	.c-panel__title {
		gap: 13.8px;
		font-size: 3rem;
	}
	.c-panel__title::before {
		width: 55.21px;
	}
	.c-panel__title > span {
		padding-top: 0;
	}
}

.c-panel__description {
	margin-top: 20px;
}

.c-panel__description .catch {
	font-size: 1.5rem;
	font-weight: 500;
}

@media (min-width: 821px), print {
	.c-panel__description .catch {
		font-size: 1.8rem;
	}
}
.c-panel__description .text {
	font-size: 1.4rem;
}

@media (min-width: 821px), print {
	.c-panel__description .text {
		font-size: 1.5rem;
	}
}
.p-kv_touristpasmo {
	position: relative;
}
.p-kv_touristpasmo .kv__decos {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	width: 100%;
	height: 100%;
	pointer-events: none;
}
.p-kv_touristpasmo .kv__decos [class^=deco] {
	position: absolute;
	display: block;
	content: "";
	background: no-repeat 0 0/contain;
	-webkit-transition: opacity 2s;
	transition: opacity 2s;
}
.p-kv_touristpasmo .kv__decos .deco1 {
	top: clamp(592px, 157.86667vw, 884.05333px);
	left: clamp(-142.37px, -37.96533vw, -212.60587px);
	width: clamp(198.74px, 52.99733vw, 296.78507px);
	aspect-ratio: 300/102.86;
	background-image: url(/en/assets/images/touristpasmo/img_deco_cloud01.svg);
}
.p-kv_touristpasmo .kv__decos .deco2 {
	top: clamp(125.3px, 33.41333vw, 187.11467px);
	right: clamp(-138.8px, -37.01333vw, -207.27467px);
	width: clamp(175.53px, 46.808vw, 262.1248px);
	aspect-ratio: 300/79;
	background-image: url(/en/assets/images/touristpasmo/img_deco_cloud02.svg);
}
.p-kv_touristpasmo .kv__decos .deco3 {
	display: none;
}
@media (min-width: 821px), print {
	.p-kv_touristpasmo .kv__decos .deco1 {
		top: clamp(211.21875px, 17.60156vw, 225.3px);
		left: clamp(-271.875px, -22.65625vw, -290px);
		width: clamp(367.25625px, 30.60469vw, 391.74px);
	}
	.p-kv_touristpasmo .kv__decos .deco2 {
		top: clamp(631.875px, 52.65625vw, 674px);
		right: clamp(-240px, -20vw, -256px);
		width: clamp(266.85937px, 22.23828vw, 284.65px);
	}
	.p-kv_touristpasmo .kv__decos .deco3 {
		bottom: clamp(-149.0625px, -12.42188vw, -159px);
		left: clamp(-76.875px, -6.40625vw, -82px);
		display: block;
		width: clamp(266.85937px, 22.23828vw, 284.65px);
		aspect-ratio: 300/79;
		background-image: url(/en/assets/images/touristpasmo/img_deco_cloud02.svg);
	}
}

/* about
----------------------------------------------------------------- */
#about {
	position: relative;
	padding-top: 50px;
	padding-right: 0;
	padding-left: 0;
	padding-bottom: clamp(104px, 27.73333vw, 155.30667px);
	z-index: 2;
}
#about:before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	display: block;
	width: 100vw;
	height: 100%;
	background: url(/en/assets/images/touristpasmo/bg_maincontent.webp) repeat 0 0/250px 250px;
	transform: translateX(-50%);
}
#about .about__lead {
	position: relative;
	z-index: 2;
	margin-bottom: clamp(62px, 16.53333vw, 92.58667px);
	padding-block: clamp(22px, 5.86667vw, 32.85333px);
	border-top: 1px solid #fff;
	border-bottom: 1px solid #fff;
	font-size: clamp(22px, 5.86667vw, 32.85333px);
	font-weight: 700;
	text-align: center;
	color: #fff;
}
#about .about__list {
	position: relative;
	z-index: 2;
}
#about .about__decos {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	pointer-events: none;
}
#about .about__decos [class^=deco] {
	position: absolute;
	content: "";
	background: no-repeat 0 0/contain;
}
#about .about__decos .deco1 {
	top: clamp(125.3px, 33.41333vw, 187.11467px);
	right: clamp(-108.8px, -29.01333vw, -162.47467px);
	width: clamp(175.53px, 46.808vw, 262.1248px);
	aspect-ratio: 300/79;
	background-image: url(/en/assets/images/touristpasmo/img_deco_cloud03.svg);
}
#about .about__decos .deco2 {
	bottom: clamp(-56.22px, -14.992vw, -83.9552px);
	left: clamp(-66px, -17.6vw, -98.56px);
	width: clamp(175.53px, 46.808vw, 262.1248px);
	aspect-ratio: 300/79;
	background-image: url(/en/assets/images/touristpasmo/img_deco_cloud03.svg);
}
#about .about-balloon {
	position: relative;
	padding: clamp(3px, 0.8vw, 4.48px);
	width: clamp(278.45px, 74.25333vw, 415.81867px);
	aspect-ratio: 487.2/466.5;
	background: url(/en/assets/images/touristpasmo/bg_about_frame.svg) no-repeat 0 0/contain;
	text-align: center;
}
#about .about-balloon .image {
	aspect-ratio: 1/1;
	width: auto;
	height: 100%;
	border-radius: 50%;
}
#about .about-balloon .text {
	position: absolute;
	left: 0;
	bottom: clamp(15px, 4vw, 22.4px);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
}
#about .about-balloon .text > span {
	display: block;
	padding: clamp(7px, 1.86667vw, 10.45333px) clamp(20px, 5.33333vw, 29.86667px) clamp(9px, 2.4vw, 13.44px);
	background: var(--color-prim);
	border-radius: 40px;
	color: #fff;
	font-size: clamp(16px, 4.26667vw, 23.89333px);
	font-weight: 700;
	line-height: 1;
}
#about .about-balloon .text > span:nth-of-type(2) {
	margin-left: clamp(15px, 4vw, 22.4px);
}
@media (max-width: 820px) {
	#about .about__list {
		margin-inline: auto;
		width: clamp(315px, 84vw, 470.4px);
	}
	#about .about__list__item + .about__list__item {
		margin-top: clamp(40px, 10.66667vw, 59.73333px);
	}
	#about .about__list__item:nth-of-type(2n) > div {
		margin-left: auto;
	}
}
@media (min-width: 821px), print {
	#about {
		padding-bottom: 145px;
	}
	#about .about__lead {
		padding-block: 28px;
		font-size: 3.8rem;
	}
	#about .about__list {
		display: -ms-grid;
		display: grid;
		-ms-grid-columns: 1fr 1fr;
		grid-template-columns: 1fr 1fr;
		gap: 0 30px;
	}
	#about .about__list__item {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		padding-bottom: 90px;
	}
	#about .about__list__item:nth-of-type(2), #about .about__list__item:nth-of-type(4) {
		padding-bottom: 0;
	}
	#about .about__list__item:nth-of-type(2) > div, #about .about__list__item:nth-of-type(4) > div {
		margin-top: auto;
	}
	#about .about__list__item:nth-of-type(n + 3) > div {
		margin-left: auto;
	}
	#about .about__decos .deco1 {
		top: clamp(341.25px, 28.4375vw, 364px);
		right: clamp(-46.6875px, -3.89062vw, -49.8px);
		width: clamp(266.85937px, 22.23828vw, 284.65px);
	}
	#about .about__decos .deco2 {
		bottom: clamp(-73.125px, -6.09375vw, -78px);
		left: clamp(60.9375px, 5.07812vw, 65px);
		width: clamp(367.25625px, 30.60469vw, 391.74px);
		aspect-ratio: 300/102.86;
		background-image: url(/en/assets/images/touristpasmo/img_deco_cloud01.svg);
	}
	#about .about-balloon {
		padding: 6px;
		width: 100%;
		max-width: 487.2px;
	}
	#about .about-balloon .text {
		bottom: clamp(30.9375px, 2.57812vw, 33px);
	}
	#about .about-balloon .text > span {
		padding: clamp(12.1875px, 1.01562vw, 13px) clamp(28.125px, 2.34375vw, 30px) clamp(15.9375px, 1.32812vw, 17px);
		font-size: clamp(22.5px, 1.875vw, 24px);
	}
	#about .about-balloon .text > span:nth-of-type(2) {
		margin-left: clamp(23.4375px, 1.95312vw, 25px);
	}
}

/* buy
----------------------------------------------------------------- */
#buy {
	position: relative;
	z-index: 2;
	margin-top: -2px;
	padding-top: 110px;
	padding-right: 0;
	padding-left: 0;
	padding-bottom: 10px;
}
#buy:before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	display: block;
	width: 100vw;
	height: 100%;
	background: url(/en/assets/images/touristpasmo/bg_maincontent.webp) repeat 0 0/250px 250px;
	transform: translateX(-50%);
	z-index: -1;
}
#buy:after {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	display: block;
	width: 100vw;
	height: 100%;
	border-radius: 30px 30px 0 0;
	background-color: #F0F6FF;
	transform: translateX(-50%);
	z-index: -1;
}
#buy .c-heading-secondary::before {
	background-image: url(/en/assets/images/touristpasmo/icon_h2_02.webp);
}
#buy .c-heading-secondary h2 {
	color: #333;
}

.buy__price {
	position: relative;
	padding-top: 20px;
}

.buy__price::before {
	position: absolute;
	top: calc(50% + 10px);
	left: 50%;
	z-index: 0;
	translate: -50% -50%;
	display: block;
	content: "";
	width: 345px;
	aspect-ratio: 1184/887;
	background: url(/en/assets/images/touristpasmo/bg_buy.webp) no-repeat 0 0/contain;
}

@media (min-width: 821px), print {
	.buy__price::before {
		width: 592px;
	}
}
.buy__price .price-title {
	position: relative;
	margin-inline: auto;
	padding: 4px 20px;
	width: -webkit-max-content;
	width: -moz-max-content;
	width: max-content;
	background: var(--color-prim);
	border-radius: 40px;
	color: #fff;
	font-size: 2rem;
	font-weight: 700;
}

@media (min-width: 821px), print {
	.buy__price .price-title {
		min-width: 223px;
		font-size: 2.6rem;
		text-align: center;
	}
}
.buy__price .price-num {
	position: relative;
	color: var(--color-prim);
	font-size: 2.5rem;
	font-weight: 700;
	text-align: center;
}

@media (min-width: 821px), print {
	.buy__price .price-num {
		font-size: 3rem;
	}
}
.buy__price .price-num > span {
	font-family: var(--font-roboto);
	font-size: 3.5rem;
}

@media (min-width: 821px), print {
	.buy__price .price-num > span {
		font-size: 5rem;
	}
}
.buy__price .price-note {
	position: relative;
	color: inherit;
	text-align: center;
	font-size: 1rem;
}

@media (min-width: 821px), print {
	.buy__price .price-note {
		margin-top: 0;
		font-size: 1.4rem;
	}
}
.buy__price .price-feature {
	position: relative;
	margin: 20px auto 0;
	width: -webkit-max-content;
	width: -moz-max-content;
	width: max-content;
	max-width: 100%;
	color: #24416F;
	font-size: 1.8rem;
	font-weight: 700;
}

@media (min-width: 821px), print {
	.buy__price .price-feature {
		margin-top: 35px;
		font-size: 2.6rem;
	}
}
.buy__price .price-feature .c-icn-holdingfun {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 auto;
	flex: 0 0 auto;
	margin-right: 5.7px;
	width: 37.13px;
}

@media (min-width: 821px), print {
	.buy__price .price-feature .c-icn-holdingfun {
		margin-right: 11.7px;
		width: 53.13px;
	}
}
.buy__price .price-feature > li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
}

.buy__price .price-feature > li + li {
	margin-top: 10px;
}

.buy__lead {
	font-size: 1.6rem;
	font-weight: 500;
	text-align: center;
}

@media (min-width: 821px), print {
	.buy__lead {
		font-size: 2rem;
	}
}
/* use
----------------------------------------------------------------- */
#use {
	position: relative;
	z-index: 2;
	margin-top: -2px;
	padding-top: 70px;
	padding-right: 0;
	padding-left: 0;
	padding-bottom: clamp(104px, 27.73333vw, 155.30667px);
}
#use:after {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	display: block;
	width: 100vw;
	height: 100%;
	border-radius: 0 0;
	background-color: #F0F6FF;
	transform: translateX(-50%);
	z-index: -1;
}
#use .c-heading-secondary::before {
	background-image: url(/en/assets/images/touristpasmo/icon_h2_02.webp);
}
#use .c-heading-secondary h2 {
	color: #333;
}

.use__decos {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	pointer-events: none;
}

.use__decos [class^=deco] {
	position: absolute;
	display: block;
	content: "";
	background: no-repeat 0 0/contain;
}

.use__decos .deco1 {
	top: clamp(-32px, -8.53333vw, -47.78667px);
	right: clamp(-65px, -17.33333vw, -97.06667px);
	width: clamp(175.53px, 46.808vw, 262.1248px);
	aspect-ratio: 300/79;
	background-image: url(/en/assets/images/touristpasmo/img_deco_cloud03.svg);
}

@media (min-width: 821px), print {
	.use__decos .deco1 {
		top: clamp(-61.875px, -5.15625vw, -66px);
		right: 0;
		left: auto;
		display: block;
		width: clamp(266.85937px, 22.23828vw, 284.65px);
		aspect-ratio: 300/79;
		background-image: url(/en/assets/images/touristpasmo/img_deco_cloud02.svg);
	}
}
/* charge
----------------------------------------------------------------- */
#charge {
	position: relative;
	z-index: 3;
	margin-top: -2px;
	padding-top: 80px;
	padding-bottom: clamp(104px, 27.73333vw, 155.30667px);
}
#charge:before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	display: block;
	width: 100vw;
	height: 100%;
	background: url(/en/assets/images/touristpasmo/bg_maincontent.webp) repeat 0 0/250px 250px;
	transform: translateX(-50%);
	z-index: -1;
}
#charge:after {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	display: block;
	width: 100vw;
	height: 100%;
	border-radius: 0 0 30px 30px;
	background-color: #F0F6FF;
	transform: translateX(-50%);
	z-index: -1;
}
#charge .c-heading-secondary {
	margin-bottom: 20px;
}
#charge .c-heading-secondary::before {
	background-image: url(/en/assets/images/touristpasmo/icon_h2_02.webp);
}
#charge .c-heading-secondary h2 {
	color: #333;
}

.charge__decos {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	pointer-events: none;
}

.charge__decos [class^=deco] {
	position: absolute;
	display: block;
	content: "";
	background: no-repeat 0 0/contain;
}

.charge__decos .deco1 {
	top: clamp(-34px, -9.06667vw, -50.77333px);
	left: clamp(-120px, -32vw, -179.2px);
	width: clamp(175.53px, 46.808vw, 262.1248px);
	aspect-ratio: 300/79;
	background-image: url(/en/assets/images/touristpasmo/img_deco_cloud03.svg);
}

@media (min-width: 821px), print {
	.charge__decos .deco1 {
		top: clamp(-61.875px, -5.15625vw, -66px);
		left: clamp(-135px, -11.25vw, -144px);
		display: block;
		width: clamp(266.85937px, 22.23828vw, 284.65px);
		aspect-ratio: 300/79;
		background-image: url(/en/assets/images/touristpasmo/img_deco_cloud02.svg);
	}
}
/* return
----------------------------------------------------------------- */
#return {
	position: relative;
	z-index: 2;
	margin-top: -2px !important;
	padding-top: 140px;
	padding-bottom: 45px;
}
#return:before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	display: block;
	width: 100vw;
	height: 100%;
	background: url(/en/assets/images/touristpasmo/bg_maincontent.webp) repeat 0 0/250px 250px;
	transform: translateX(-50%);
	z-index: -1;
}
#return .l-section__inner {
	position: relative;
	min-height: 570px;
}
#return .return__content {
	position: relative;
	z-index: 5;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	width: 100%;
}
#return .return__card {
	position: relative;
	margin-top: -10px;
	text-align: center;
}
#return .return__card img {
	rotate: -6deg;
	aspect-ratio: 1059/738;
	max-width: 268px;
}
#return .return__text {
	margin-top: 145px;
	color: #fff;
	font-size: 1.6rem;
	font-weight: 700;
	text-align: center;
}
#return .return__decos {
	position: absolute;
	top: 80px;
	left: 50%;
	translate: -50% 0;
	z-index: -1;
}
#return .return__decos::after {
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 10;
	translate: -50% -50%;
	display: block;
	content: "";
	aspect-ratio: 1020.31/975.95;
	width: 506.5px;
	background: url(/en/assets/images/touristpasmo/bg_return.svg) no-repeat 0 0/contain;
}
@media (max-width: 820px) {
	#return .return__decos {
		top: -60px;
	}
}
@media (min-width: 821px), print {
	#return {
		padding-top: 265px;
		padding-bottom: 10px;
	}
	#return .l-section__inner {
		min-height: 980px;
	}
	#return .return__content {
		margin-inline: auto;
		aspect-ratio: 1020.31/975.95;
		width: 1020.31px;
	}
	#return .return__card {
		margin-top: -30px;
		text-align: center;
	}
	#return .return__card img {
		max-width: 516px;
	}
	#return .return__text {
		margin-top: 66px;
		font-size: 2rem;
	}
	#return .return__decos {
		top: -120px;
	}
	#return .return__decos::after {
		width: 1020.31px;
	}
	#return .return__decos .xfade {
		width: 976px;
	}
}

.xfade {
	position: relative;
	margin-inline: auto;
	aspect-ratio: 1/1;
	border-radius: 50%;
	overflow: hidden;
	width: 472.35px;
}
.return__decos .xfade__item {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	width: 100%;
	height: 100%;
	opacity: 1;
	-webkit-animation: animxfade 18s infinite;
	animation: animxfade 18s infinite;
}

.return__decos .xfade__item img {
	position: absolute;
	top: 50%;
	left: 50%;
	translate: -50% -50%;
	scale: 1;
	display: block;
	aspect-ratio: 1/1;
	-webkit-animation: animscale 18s linear infinite;
	animation: animscale 18s linear infinite;
}

.return__decos .xfade__item:nth-of-type(1) {
	-webkit-animation-delay: 0s;
	animation-delay: 0s;
	z-index: 2;
}

.return__decos .xfade__item:nth-of-type(1) img {
	-webkit-animation-delay: 0s;
	animation-delay: 0s;
}

.return__decos .xfade__item:nth-of-type(2) {
	-webkit-animation-delay: 6s;
	animation-delay: 6s;
	z-index: 1;
}

.return__decos .xfade__item:nth-of-type(2) img {
	-webkit-animation-delay: 6s;
	animation-delay: 6s;
}

.return__decos .xfade__item:nth-of-type(3) {
	-webkit-animation-delay: 12s;
	animation-delay: 12s;
}

.return__decos .xfade__item:nth-of-type(3) img {
	-webkit-animation-delay: 12s;
	animation-delay: 12s;
}

.return__decos [class^=deco] {
	position: absolute;
	z-index: 11;
	display: block;
	content: "";
	background: no-repeat 0 0/contain;
}

.return__decos .deco1 {
	top: clamp(53px, 14.13333vw, 79.14667px);
	right: clamp(30px, 8vw, 44.8px);
	width: clamp(175.53px, 46.808vw, 262.1248px);
	aspect-ratio: 300/79;
	background-image: url(/en/assets/images/touristpasmo/img_deco_cloud02.svg);
}

@media (min-width: 821px), print {
	.return__decos .deco1 {
		top: clamp(57.1875px, 4.76562vw, 61px);
		right: clamp(-54.9375px, -4.57812vw, -58.6px);
		width: clamp(266.85937px, 22.23828vw, 284.65px);
		aspect-ratio: 300/79;
		background-image: url(/en/assets/images/touristpasmo/img_deco_cloud03.svg);
	}
}
.return__decos .deco2 {
	top: clamp(409px, 109.06667vw, 610.77333px);
	left: clamp(22.8px, 6.08vw, 34.048px);
	width: clamp(198.74px, 52.99733vw, 296.78507px);
	aspect-ratio: 300/102.86;
	background-image: url(/en/assets/images/touristpasmo/img_deco_cloud01.svg);
}

@media (min-width: 821px), print {
	.return__decos .deco2 {
		top: clamp(768px, 64vw, 819.2px);
		left: clamp(-105.1875px, -8.76562vw, -112.2px);
		width: clamp(367.25625px, 30.60469vw, 391.74px);
	}
}
@-webkit-keyframes animxfade {
	0% {
		z-index: 2;
		opacity: 1;
	}
	9% {
		z-index: 2;
	}
	10% {
		z-index: 3;
	}
	33% {
		opacity: 1;
	}
	43% {
		z-index: 3;
		opacity: 0;
	}
	44% {
		z-index: 1;
	}
	100% {
		opacity: 0;
	}
}
@keyframes animxfade {
	0% {
		z-index: 2;
		opacity: 1;
	}
	9% {
		z-index: 2;
	}
	10% {
		z-index: 3;
	}
	33% {
		opacity: 1;
	}
	43% {
		z-index: 3;
		opacity: 0;
	}
	44% {
		z-index: 1;
	}
	100% {
		opacity: 0;
	}
}
@-webkit-keyframes animscale {
	0% {
		scale: 1;
	}
	45% {
		scale: 1.08;
	}
	46% {
		scale: 1;
	}
	100% {
		scale: 1;
	}
}
@keyframes animscale {
	0% {
		scale: 1;
	}
	45% {
		scale: 1.08;
	}
	46% {
		scale: 1;
	}
	100% {
		scale: 1;
	}
}
.disclaimer {
	margin-top: 45px;
}
.disclaimer .c-list__item {
	font-size: 1.4rem;
}
.disclaimer .c-list__item::before {
	background-color: var(--color-prim);
}
.disclaimer .c-list__item strong {
	color: var(--color-red);
	font-weight: 700;
}

/* モーダル
----------------------------------------------------------------- */
.l-modal {
	padding-inline: clamp(30px, 8vw, 44.8px);
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 100;
	overflow-x: hidden;
	overflow-y: auto;
	width: 100%;
	height: 100%;
	max-width: none;
	max-height: none;
	border: none;
	background: rgba(36, 65, 111, 0.9);
	color: #fff;
	opacity: 1;
	-webkit-transition: opacity 0.3s;
	transition: opacity 0.3s;
}

@media print, screen and (min-width: 768px) {
	.l-modal {
		padding-inline: 30px;
	}
}
.l-modal ::-webkit-backdrop {
	opacity: 0;
	-webkit-transition: opacity 600ms, overlay 600ms allow-discrete, display 600ms allow-discrete;
	transition: opacity 600ms, overlay 600ms allow-discrete, display 600ms allow-discrete;
}

.l-modal,
.l-modal ::backdrop {
	opacity: 0;
	-webkit-transition: opacity 600ms, overlay 600ms allow-discrete, display 600ms allow-discrete;
	transition: opacity 600ms, overlay 600ms allow-discrete, display 600ms allow-discrete;
}

.l-modal[open]::-webkit-backdrop {
	opacity: 1;
}

.l-modal[open], .l-modal[open]::backdrop {
	opacity: 1;
}

@starting-style {
	.l-modal[open]::-webkit-backdrop {
		opacity: 0;
		pointer-events: none;
	}
	.l-modal[open], .l-modal[open]::backdrop {
		opacity: 0;
		pointer-events: none;
	}
}
.l-modal__inner {
	max-width: 1200px;
	margin-inline: auto;
	padding-block: 80px;
	position: relative;
}

.l-modal__title {
	font-size: 1.8rem;
	font-weight: 700;
}

@media print, screen and (min-width: 768px) {
	.l-modal__title {
		font-size: 4rem;
	}
}
.l-modal__title span {
	margin-right: 5px;
	vertical-align: -2px;
}

@media print, screen and (min-width: 768px) {
	.l-modal__title span {
		margin-right: 15px;
		font-size: 3.5rem;
		vertical-align: -2px;
	}
}
.l-modal__subline {
	padding-left: 24px;
	font-size: 1.3rem;
}

@media print, screen and (min-width: 768px) {
	.l-modal__subline {
		padding-left: 52px;
		font-size: 2.2rem;
	}
}
.l-modal__map {
	margin-top: 20px;
	margin-inline: -15px;
	padding: 15px;
	overflow: hidden;
	border-radius: 20px;
	background: #fff;
}

@media print, screen and (min-width: 768px) {
	.l-modal__map {
		margin-top: 50px;
		padding: 50px 100px;
		border-radius: 50px;
	}
}
.l-modal__pinchout {
	margin-top: 10px;
	text-align: center;
	font-size: 1.1rem;
}

.l-modal__pinchout::before {
	display: inline-block;
	content: "";
	width: 14.84px;
	height: 15.1px;
	margin-right: 5px;
	background-color: #fff;
	mask-image: var(--icon-pinch-out);
	mask-position: center center;
	mask-repeat: no-repeat;
	mask-size: contain;
}

@media print, screen and (min-width: 768px) {
	.l-modal__pinchout {
		display: none;
	}
}
.l-modal__close {
	margin-top: 56px;
	font-size: 1.8rem;
	text-align: center;
}

.l-modal__close .c-button__inner {
	padding-inline: 16px;
}

.l-modal__close .c-button__inner > span {
	padding: 8px 14px;
}

.l-modal__close .c-icn {
	font-size: inherit;
}

.l-modal .c-button__inner {
	min-height: 36.8px;
	padding-block: 0;
}
.l-modal .c-button__inner::before {
	display: none;
}
.l-modal .c-button__inner::after {
	border: 0;
	background-color: var(--color-prim);
}
.l-modal .c-button__inner .c-icn {
	right: auto;
	left: 20px;
	width: 12px;
	height: 12px;
	font-size: 1.2rem;
}
.l-modal .c-button__inner > span {
	font-weight: bold;
}
.l-modal .c-button__inner:hover svg {
	fill: var(--color-txt-hover) !important;
}

body:has(dialog[open]) {
	overflow: hidden;
	width: 100%;
}
/*# sourceMappingURL=tourist.css.map */
