@charset "utf-8";

/* -----------------------------------------
contents
-----------------------------------------*/
#container {
	width: 100%;
    margin: auto;
}
#contents {
	display: block;
	width: 100%;
	margin: 0 auto;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 16px;
	line-height: 1.6;
	/* font-feature-settings: "palt";
	letter-spacing: 0.05em; */
	color: #333333;
}

.oswald{
	font-family: "Oswald", sans-serif;
}
#contents img {
    width: 100%;
}



/* -----------------------------------------
original
-----------------------------------------*/

/* contents-outer */

.contents-outer{
	position: relative;
	width: 100%;
	height: 100vh;
}
.contents-outer::before,
.contents-outer::after{
	display: block;
	content: "";
	background-image: url(../images/hero-back.png);
	background-size: cover;
	position: fixed;
	z-index: -1;
	width: 64%;
	height: 40vw;
}
.contents-outer::before{
	top: 0;
	left: 0;
}
.contents-outer::after{
	bottom: 0;
	right: 0;
	transform: rotate(180deg);
}
@media (min-width: 769px) {
	.contents-outer::before,
	.contents-outer::after{
		width: 64%;
		max-width: 800px;
		height: 40vw;
		max-height: 500px;
	}
}

/* header */

.l-header{
	width: 100%;
	padding: 12px 12px 0 12px;
}
.l-header .header-outer{
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.l-header .header-language{
	display: flex;
	background-color: #fff;
	border-radius: 10px;
}
.l-header .header-language a{
	font-size: 12px;
	line-height: 1;
	border-radius: 50%;
	text-decoration: none;
}
.l-header .header-language a:first-of-type{
	padding: 4px 6px 4px 13px;
}
.l-header .header-language a:last-of-type{
	padding: 4px 13px 4px 6px;
}
.l-header .header-language .is-active{
	position: relative;
	z-index: 10;
	padding: 4px 13px !important;
	background-color: #363185;
	color: #fff;
	border-radius: 10px;
}
.l-header .header-logo{
	display: flex;
	justify-content: flex-end;
	align-items: center;
	column-gap: 9px;
}
.l-header .header-logo p{
	font-size: 10px;
}
.l-header .header-logo a{
	width: 101px;
}

@media (min-width: 769px) {
	.l-header{
		width: 100%;
		padding: 32px 40px 0 44px;
	}
	.l-header .header-outer{
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	.l-header .header-language{
		display: flex;
		background-color: #fff;
		border-radius: 20px;
	}
	.l-header .header-language a{
		font-size: 16px;
	}
	.l-header .header-language a:first-of-type{
		padding: 7px 10px 7px 20px;
	}
	.l-header .header-language a:last-of-type{
		padding: 7px 20px 7px 10px;
	}
	.l-header .header-language .is-active{
		position: relative;
		z-index: 10;
		padding: 7px 20px !important;
		background-color: #363185;
		color: #fff;
		border-radius: 20px;
	}
	.l-header .header-logo{
		column-gap: 11px;
	}
	.l-header .header-logo p{
		font-size: 12px;
	}
	.l-header .header-logo a{
		width: 128px;
	}
}

/* hero */

.l-hero{
	width: 87.2%;
	margin: 30px auto 0;
	color: #363185;
}
.l-hero h1{
	width: 52.7217%;
	max-width: 220px;
	margin: 0 auto;
}
.l-hero .sub-title{
	margin-top: 30px;
	font-size: 16px;
	font-weight: 700;
	text-align: center;
}
.l-hero .text{
	margin-top: 16px;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.75;
}
@media (min-width: 769px) {
	.l-hero{
		width: 87.2%;
		max-width: 980px;
		margin: 30px auto 0;
	}
	.l-hero h1{
		width: 220px;
	}
	.l-hero .sub-title{
		margin-top: 26px;
		font-size: 18px;
	}
	.l-hero .text{
		margin-top: 16px;
		font-size: 16px;
		text-align: center;
	}
}
@media (max-width: 1120px) {
	.l-hero .text{
		text-align: left;
	}
	.pc-br{
		display: none;
	}
}

/* map */

.l-map{
	width: 87.2%;
	margin: 56px auto 0;
}
.l-map .title-block{
	color: #363185;
	text-align: center;
}
.l-map .title-block h2{
	font-size: 36px;
	font-weight: 500;
}
.l-map .title-block h2 span{
	font-size: 36px;
	font-weight: 500;
	color: #4EBFD6;
}
.l-map .title-block p{
	margin-top: -2px;
	font-size: 18px;
	font-weight: 700;
}
.l-map .map-container{
	position: relative;
	width: 100%;
	max-width: 484px;
	margin: 18px auto 0;
}
.l-map .map-inner{
	position: relative;
	overflow-x: auto;
	overflow-y: hidden;
	border: solid 1px #363185;
	border-radius: 4px;
}
.l-map .map-container .map-img{
	display: block;
	width: 488px !important;
	margin: 0 auto;
	height: auto;
	max-width: none;
}
.l-map .map-container .pin-hotel p{
	position: absolute;
	z-index: 10;
	width: 27.6px;
	filter: drop-shadow(0px 2px 4px rgba(0, 0, 0, 0.5))
}
.l-map .map-container .pin-hotel p a:hover{
	opacity: 1;
}
.l-map .map-container .pin-hotel .pin-hotel-01{
	bottom: 52px;
	left: 202px;
}
.l-map .map-container .pin-hotel .pin-hotel-02{
	bottom: 183px;
	left: 242px;
}
.l-map .map-container .pin-hotel .pin-hotel-03{
	bottom: 171px;
	left: 136px;
}
.l-map .map-container .pin-hotel .pin-hotel-04{
	bottom: 252.5px;
	left: 241.5px;
}
.l-map .map-container .pin-hotel .pin-hotel-05{
	bottom: 433px;
	left: 279px;
}
.l-map .map-container .pin-hotel .pin-hotel-06{
	bottom: 370px;
	left: 201px;
}
.l-map .map-container .pin-hotel .pin-hotel-07{
	bottom: 205px;
	left: 182px;
}
.l-map .map-container .pin-hotel .pin-hotel-08{
	bottom: 125px;
	left: 143px;
}
.l-map .map-container .pin-hotel .pin-hotel-09{
	bottom: 329px;
	left: 86px;
}
.l-map .map-container .pin-hotel .pin-hotel-10{
	bottom: 318px;
	left: 250px;
}
.l-map .map-container .pin-hotel .pin-hotel-11{
	bottom: 240px;
	left: 152px;
}
.l-map .map-container .pin-event p{
	position: absolute;
	width: 22.8px;
	filter: drop-shadow(0px 2px 4px rgba(0, 0, 0, 0.5))
}
.l-map .map-container .pin-event p a:hover{
	opacity: 1;
}
.l-map .map-container .pin-event .pin-event-01{
	bottom: 342px;
	left: 192px;
	z-index: 1;
}
.l-map .map-container .pin-event .pin-event-02{
	bottom: 342px;
	left: 203.5px;
	z-index: 2;
}
.l-map .map-container .pin-event .pin-event-03{
	bottom: 342px;
	left: 215px;
	z-index: 3;
}
.l-map .map-container .pin-event .pin-event-04{
	bottom: 246px;
	left: 137px;
	z-index: 1;
}
.l-map .map-container .pin-event .pin-event-05{
	bottom: 243px;
	left: 192px;
}
.l-map .map-container .pin-event .pin-event-06{
	bottom: 271px;
	left: 309px;
}
.l-map .map-container .pin-event .pin-event-07{
	bottom: 246px;
	left: 126px;
}
.l-map .map-container .pin-event .pin-event-08{
	bottom: 370px;
	left: 190px;
	z-index: 1;
}
.l-map .map-container .pin-event .pin-event-09{
	bottom: 354px;
	left: 178px;
}
.l-map .map-container .pin-event .pin-event-10{
	bottom: 269px;
	left: 178px;
}
.l-map .map-icon p{
	position: absolute;
}
.l-map .map-icon .icon-direction{
	top: 4px;
	right: 3px;
	width: 34px;
}
.l-map .map-icon .icon-flick{
	top: 54px;
	right: 3px;
	width: 34px;
}
.l-map .event-nav{
	margin: 20px auto 0;
	max-width: 484px;
}
.l-map .event-nav .app a{
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 280px;
	margin: 0 auto;
	text-decoration: none;
}
.l-map .event-nav .app .icon-guide{
	width: 100px;
}
.l-map .event-nav .app .text{
	font-size: 14px;
	color: #363185;
}
.l-map .event-nav .app .icon-tab{
	width: 14px;
	line-height: 0;
}
.l-map .event-nav .guide{
	margin: 12px auto 0;
	padding-top: 10px;
	border-top: 1px solid #363185;
}
.l-map .event-nav .guide a{
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 280px;
	margin: 0 auto;
	text-decoration: none;
}
.l-map .event-nav .guide .icon-guide{
	width: 36px;
}
.l-map .event-nav .guide .text{
	font-size: 14px;
	color: #363185;
}
.l-map .event-nav .guide .icon-tab{
	width: 14px;
	line-height: 0;
}
.l-map .event-nav .other{
	margin: 12px auto 0;
	padding-top: 10px;
	border-top: 1px solid #363185;
}
.l-map .event-nav .other a{
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 280px;
	margin: 0 auto;
	text-decoration: none;
}
.l-map .event-nav .other .icon-guide{
	width: 90px;
}
.l-map .event-nav .other .text{
	font-size: 14px;
	color: #363185;
}
.l-map .event-nav .other .icon-tab{
	width: 14px;
	line-height: 0;
}
@media (min-width: 769px) {
	.l-map{
		width: 87.2%;
		max-width: 982px;
		margin: 48px auto 0;
	}
	.l-map .title-block h2{
		font-size: 56px;
	}
	.l-map .title-block h2 span{
		font-size: 56px;
	}
	.l-map .title-block p{
		margin-top: -4px;
		font-size: 22px;
	}
	.l-map .map-container{
		position: relative;
		width: 100%;
		max-width: none;
		margin-top: 36px;
		overflow: hidden;
		border: solid 1px #363185;
		border-radius: 8px;
	}
	.l-map .map-inner{
		overflow-x: hidden;
		overflow-y: hidden;
		border: none;
		border-radius: 0;
	}
	.l-map .map-container .map-img{
		display: block;
		width: 100% !important;
		margin: 0 auto;
		height: auto;
		max-width: none;
	}
	.l-map .map-container .pin-hotel p{
		z-index: 10;
		width: 5.51%;
		max-width: 54px;
		filter: drop-shadow(0px 2px 4px rgba(0, 0, 0, 0.5))
	}
	.l-map .map-container .pin-hotel p a img{
		transition-duration: .4s;
	}
	.l-map .map-container .pin-hotel p a:hover img{
		transform: translateY(-10px) scale(1.2);
	}
	.l-map .map-container .pin-hotel .pin-hotel-01{
		bottom: 11%;
		left: 41.5%;
	}
	.l-map .map-container .pin-hotel .pin-hotel-02{
		bottom: 37.4%;
		left: 49.7%;
	}
	.l-map .map-container .pin-hotel .pin-hotel-03{
		bottom: 35.3%;
		left: 28.3%;
	}
	.l-map .map-container .pin-hotel .pin-hotel-04{
		bottom: 51.6%;
		left: 49.8%;
	}
	.l-map .map-container .pin-hotel .pin-hotel-05{
		bottom: 88.9%;
		left: 57.4%;
	}
	.l-map .map-container .pin-hotel .pin-hotel-06{
		bottom: 75.3%;
		left: 41.6%;
	}
	.l-map .map-container .pin-hotel .pin-hotel-07{
		bottom: 41.8%;
		left: 37.5%;
	}
	.l-map .map-container .pin-hotel .pin-hotel-08{
		bottom: 26.1%;
		left: 29.6%;
	}
	.l-map .map-container .pin-hotel .pin-hotel-09{
		bottom: 67.2%;
		left: 17.6%;
	}
	.l-map .map-container .pin-hotel .pin-hotel-10{
		bottom: 65.4%;
		left: 51.3%;
	}
	.l-map .map-container .pin-hotel .pin-hotel-11{
		bottom: 49.2%;
		left: 31.4%;
	}
	.l-map .map-container .pin-event p{
		width: 4.653%;
		max-width: 46px;
		filter: drop-shadow(0px 2px 4px rgba(0, 0, 0, 0.5))
	}
	.l-map .map-container .pin-event p:hover{
		z-index: 100;
	}
	.l-map .map-container .pin-event p a:hover{
		opacity: 1;
	}
	.l-map .map-container .pin-event p a img{
		transition-duration: .4s;
	}
	.l-map .map-container .pin-event p a:hover img{
		transform: translateY(-10px) scale(1.2);
	}
	.l-map .map-container .pin-event .pin-event-01{
		bottom: 69.8%;
		left: 39.8%;
	}
	.l-map .map-container .pin-event .pin-event-02{
		bottom: 69.8%;
		left: 41.8%;
	}
	.l-map .map-container .pin-event .pin-event-03{
		bottom: 69.8%;
		left: 44%;
	}
	.l-map .map-container .pin-event .pin-event-04{
		bottom: 50%;
		left: 28.2%;
	}
	.l-map .map-container .pin-event .pin-event-05{
		bottom: 49.9%;
		left: 39.8%;
	}
	.l-map .map-container .pin-event .pin-event-06{
		bottom: 55.5%;
		left: 63.4%;
	}
	.l-map .map-container .pin-event .pin-event-07{
		bottom: 50%;
		left: 25.8%;
	}
	.l-map .map-container .pin-event .pin-event-08{
		bottom: 75.4%;
		left: 39.3%;
		z-index: 1;
	}
	.l-map .map-container .pin-event .pin-event-09{
		bottom: 72.2%;
		left: 36.7%;
	}
	.l-map .map-container .pin-event .pin-event-10{
		bottom: 55.3%;
		left: 36.5%;
	}
	.l-map .map-icon p{
		position: absolute;
	}
	.l-map .map-icon .icon-direction{
		top: 0;
		right: 0;
		width: 52px;
	}
	.l-map .map-icon .icon-flick{
		display: none;
	}
	.l-map .event-nav{
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		align-items: center;
		row-gap: 8px;
		max-width: none;
		margin: 24px auto 0;
	}
	.l-map .event-nav .app{
		display: flex;
		justify-content: space-between;
		align-items: center;
		width: 328px;
		height: 60px;
		margin: 0;
		padding-top: 0;
		border-right: 1px solid #363185;
		border-top: none;
	}
	.l-map .event-nav .app a{
		display: flex;
		justify-content: space-between;
		align-items: center;
		width: 282px;
		margin: 0 auto;
		text-decoration: none;
	}
	.l-map .event-nav .app .icon-guide{
		width: 100px;
	}
	.l-map .event-nav .app .text{
		font-size: 14px;
		color: #363185;
	}
	.l-map .event-nav .app .icon-tab{
		width: 14px;
		line-height: 0;
	}
	.l-map .event-nav .guide{
		display: flex;
		justify-content: space-between;
		align-items: center;
		width: 325px;
		height: 60px;
		margin: 0;
		padding-top: 0;
		border-right: 1px solid #363185;
		border-top: none;
	}
	.l-map .event-nav .guide a{
		display: flex;
		justify-content: space-between;
		align-items: center;
		width: 290px;
		margin: 0 auto;
		text-decoration: none;
	}
	.l-map .event-nav .guide .icon-guide{
		width: 36px;
	}
	.l-map .event-nav .guide .text{
		font-size: 14px;
		color: #363185;
	}
	.l-map .event-nav .guide .icon-tab{
		width: 14px;
		line-height: 0;
	}
	.l-map .event-nav .other{
		display: flex;
		justify-content: space-between;
		align-items: center;
		width: 327px;
		height: 60px;
		margin: 0;
		padding-top: 0;
		border-top: none;
	}
	.l-map .event-nav .other a{
		display: flex;
		justify-content: space-between;
		align-items: center;
		width: 282px;
		margin: 0 auto;
		text-decoration: none;
	}
	.l-map .event-nav .other .icon-guide{
		width: 90px;
	}
	.l-map .event-nav .other .text{
		font-size: 14px;
		color: #363185;
	}
	.l-map .event-nav .other .icon-tab{
		width: 14px;
		line-height: 0;
	}
}

/* modal */

.modal{
	display: none;
	position: fixed;
	top: 0;
	width: 100%;
	height: 100vh;
	z-index: 100;
}
.modal-bg{
	position: absolute;
	width: 100%;
	height: 100vh;
	background-color: rgba(0, 0, 0, 0.5);
}
.modal-content{
	position: absolute;
	bottom: 0;
	left: 0;
	transform: translateY(100%);
	width: 100%;
	padding: 58px 6.4% 30px;
	background: #fff;
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
	transition: 0.6s;
}
.modal-content.is-active{
	transform: translateY(0);
}
.js-modal-close-btn {
	display: block;
	content: "";
	background-image: url(../images/btn-close.png);
	background-size: 100%;
	width: 23px;
	height: 23px;
	position: absolute;
	top: 18px;
	right: 18px;
}
.modal-outer{
	position: relative;
}
.modal-outer .img{
	width: 47.0948%;
}
.modal-outer .block{
	margin-top: 15px;
}
.modal-outer .title{
	position: absolute;
	top: -6px;
	left: 51.07%;
	width: 43%;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.5;
}
.modal-outer .date{
	position: relative;
	padding-left: 38px;
	font-size: 14px;
}
.modal-outer .date::before{
	display: block;
	content: "";
	background-image: url(../images/icon-modal-date.png);
	background-size: 100%;
	position: absolute;
	top: 4.5px;
	left: 0;
	width: 13.5px;
	height: 15px;
}
.modal-outer .date::after{
	display: block;
	content: "";
	position: absolute;
	top: 2px;
	left: 26px;
	width: 1px;
	height: 20px;
	background-color: #363185;
}
.modal-outer .place{
	position: relative;
	margin-top: 7px;
	padding-left: 38px;
	font-size: 14px;
}
.modal-outer .place::before{
	display: block;
	content: "";
	background-image: url(../images/icon-modal-place.png);
	background-size: 100%;
	position: absolute;
	top: 3.5px;
	left: 0;
	width: 13.5px;
	height: 17.5px;
}
.modal-outer .place::after{
	display: block;
	content: "";
	position: absolute;
	top: 2px;
	left: 26px;
	width: 1px;
	height: 20px;
	background-color: #363185;
}
.modal-content .btn{
	width: 250px;
	margin: 18px auto 0;
}
.modal-content .btn a{
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	width: 100%;
	padding: 9px 0;
	background-color: #fff;
	color: #363185;
	border-radius: 50px;
	border: 2px solid #363185;
	text-decoration: none;
	font-size: 14px;
	font-weight: 700;
	z-index: 100;
}
.modal-content .btn a::before {
	display: block;
	content: "";
	background-image: url(../images/icon-tab.png);
	background-size: 100%;
	width: 12px;
	height: 12px;
	position: absolute;
	top: 50%;
	right: 7%;
	transform: translateY(-50%);
}

@media (min-width: 769px) {
	.modal-content{
		position: absolute;
		top: 50%;
		bottom: auto;
		left: 50%;;
		transform: translate(-50%, -50%);
		width: 90%;
		max-width: 900px;
		padding: 84px 70px 64px;
		background: #fff;
		border-radius: 10px;
	}
	.modal-content.is-active{
		transform: translate(-50%, -50%);
	}
	.js-modal-close-btn {
		top: 30px;
		right: 30px;
		cursor: pointer;
	}
	.modal-outer{
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
		position: relative;
	}
	.modal-outer .img{
		width: 52.6316%;
	}
	.modal-outer .block{
		width: 43.026%;
		margin-top: 0;
	}
	.modal-outer .title{
		position: static;
		width: auto;
		margin-top: -6px;
		font-size: 24px;
		font-weight: 700;
		line-height: 1.5;
	}
	.modal-outer .date{
		position: relative;
		margin-top: 30px;
		padding-left: 38px;
		font-size: 16px;
	}
	.modal-outer .date::before{
		display: block;
		content: "";
		background-image: url(../images/icon-modal-date.png);
		background-size: 100%;
		position: absolute;
		top: 5.5px;
		left: 0;
		width: 13.5px;
		height: 15px;
	}
	.modal-outer .date::after{
		display: block;
		content: "";
		position: absolute;
		top: 3px;
		left: 26px;
		width: 1px;
		height: 20px;
		background-color: #363185;
	}
	.modal-outer .place{
		position: relative;
		margin-top: 12px;
		padding-left: 38px;
		font-size: 16px;
	}
	.modal-outer .place::before{
		display: block;
		content: "";
		background-image: url(../images/icon-modal-place.png);
		background-size: 100%;
		position: absolute;
		top: 4.5px;
		left: 0;
		width: 13.5px;
		height: 17.5px;
	}
	.modal-outer .place::after{
		display: block;
		content: "";
		position: absolute;
		top: 3px;
		left: 26px;
		width: 1px;
		height: 20px;
		background-color: #363185;
	}
	.modal-content .btn{
		width: 320px;
		margin: 40px auto 0;
	}
	.modal-content .btn a{
		width: 100%;
		padding: 12px 0;
		font-size: 14px;
		font-weight: 700;
		z-index: 100;
	}
	.modal-content .btn a::before {
		width: 14px;
		height: 14px;
		top: 50%;
		right: 7%;
		transform: translateY(-50%);
	}
}
@media (min-width: 769px) and (max-width: 900px){
	.modal-content {
		padding: 74px 40px 54px;
	}
}

/* event */

.l-event{
	margin-top: 62px;
}
.l-event h3{
	text-align: center;
}
.l-event h3 .block{
	position: relative;
	padding-left: 32px;
	font-size: 28px;
	font-weight: 500;
	color: #363185;
}
.l-event h3 .block::before{
	display: block;
	content: "";
	background-image: url(../images/icon-flag.png);
	background-size: 100%;
	width: 18.5px;
	height: 22px;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}
.l-event h3 .block .color{
	font-size: 28px;
	font-weight: 500;
	color: #4EBFD6;
}
.l-event .swiper{
	padding-top: 22px;
	padding-bottom: 52px;
}
.l-event .swiper .swiper-slide{
	width: 232px;
	border-radius: 8px;
	box-shadow: 0px 2px 8px #BCBCBC;
}
.l-event .swiper .swiper-nav{
	display: flex;
	align-items: center;
	justify-content: center;
	column-gap: 4px;
	margin-top: 16px;
}
.swiper-pagination{
	display: flex;
	align-items: center;
	position: static;
	width: auto !important;
}
.swiper-pagination-bullet{
	width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 6px));
	height: var(--swiper-pagination-bullet-height,var(--swiper-pagination-bullet-size, 6px));
	background: #737373;
	opacity: 1;
}
.swiper-pagination-bullet-active{
	width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 10px));
	height: var(--swiper-pagination-bullet-height,var(--swiper-pagination-bullet-size, 10px));
	background: #363185;
}
.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
	margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 9px);
}
.swiper-button-next, .swiper-button-prev{
	position: static;
	width: 50px;
	height: 56px;
	margin: 0;
}
.swiper-button-next:after, .swiper-button-prev:after{
	display: block;
	content: "";
	background-image: url(../images/swiper-arrow.png);
	background-size: 100%;
	width: 14.5px;
	height: 27px;
}
.swiper-button-prev:after{
	transform: scale(-1,-1);
}
@media (min-width: 769px) {
	.l-event{
		margin-top: 90px;
	}
	.l-event h3 .block{
		padding-left: 44px;
		font-size: 32px;
	}
	.l-event h3 .block::before{
		top: 54%;
		width: 23.5px;
		height: 27.5px;
	}
	.l-event h3 .block .color{
		font-size: 32px;
	}
	.l-event .swiper{
		padding-top: 32px;
		padding-bottom: 56px;
	}
	.l-event .swiper .swiper-slide{
		width: 320px;
		border-radius: 10px;
	}
	.l-event .swiper .swiper-nav{
		display: flex;
		align-items: center;
		justify-content: center;
		column-gap: 4px;
		margin-top: 8px;
	}
	.swiper-pagination{
		display: flex;
		align-items: center;
		position: static;
		width: auto !important;
	}
	.swiper-pagination-bullet{
		width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 6px));
		height: var(--swiper-pagination-bullet-height,var(--swiper-pagination-bullet-size, 6px));
		background: #737373;
		opacity: 1;
	}
	.swiper-pagination-bullet-active{
		width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 10px));
		height: var(--swiper-pagination-bullet-height,var(--swiper-pagination-bullet-size, 10px));
		background: #363185;
	}
	.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
		margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 15px);
	}
	.swiper-button-next, .swiper-button-prev{
		position: static;
		width: 50px;
		height: 56px;
		margin: 0;
	}
	.swiper-button-next:after, .swiper-button-prev:after{
		width: 14.5px;
		height: 27px;
	}
}

/* hotel */

.l-hotel{
	position: relative;
	padding: 56px 0 100px;
	background-color: #EEECE5;
}
.l-hotel .title-block{
	color: #363185;
	text-align: center;
}
.l-hotel .title-block h3 .block{
	position: relative;
	padding-left: 32px;
	font-size: 28px;
	font-weight: 500;
	color: #363185;
}
.l-hotel .title-block h3 .block::before{
	display: block;
	content: "";
	background-image: url(../images/icon-hotel.png);
	background-size: 100%;
	width: 18px;
	height: 22px;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}
.l-hotel .title-block h3 .block .color{
	font-size: 28px;
	font-weight: 500;
	color: #4EBFD6;
}
.l-hotel .title-block .sub-title{
	font-size: 14px;
	color: #333333;
}
.l-hotel .list-nav{
	display: none;
}
.l-hotel .list-btn{
	display: block;
	position: absolute;
	top: 98px;
	right: 0;
	padding: 10px 10px 10px 18px;
	font-size: 10px;
	cursor: pointer;
	background-color: #fff;
	border: none;
	border-top-left-radius: 50px;
	border-bottom-left-radius: 50px;
	z-index: 100;
	box-shadow: 0px 2px 8px #cccccc;
}
.list-btn.is-fixed {
	position: fixed;
	top: 28px;
}
.l-hotel .list-btn span{
	display: block;
	position: relative;
	padding-left: 16px;
}
.l-hotel .list-btn span::before{
	display: block;
	content: "";
	background-image: url(../images/icon-hotel.png);
	background-size: 100%;
	width: 10.5px;
	height: 13px;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}
.l-hotel .hotel-block{
	margin-top: 18px;
	padding-top: 36px;
}
.l-hotel .hotel-block:first-of-type{
	margin-top: 0;
	padding-top: 36px;
}
.l-hotel .hotel-block .img-block{
	display: flex;
	justify-content: space-between;
	width: 87.2%;
	margin: 0 auto;
	background-color: #fff;
	border-radius: 8px;
	overflow: hidden;
	box-shadow: 2px 2px 8px #BCBCBC;
}
.l-hotel .hotel-block .logo{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 33.333%;
}
.l-hotel .hotel-block .logo img{
	width: 70% !important;
}
.l-hotel .hotel-block .img{
	width: 66.667%;
}
.l-hotel .hotel-block .text-block{
	width: 87.2%;
	margin: 18px auto 0;
}
.l-hotel .hotel-block .text-block .title{
	font-size: 18px;
	font-weight: 700;
}
.l-hotel .hotel-block .text-block .text{
	margin-top: 6px;
	font-size: 14px;
	line-height: 1.7;
}
.l-hotel .hotel-block .text-block .text:nth-of-type(n+2){
	margin-top: 10px;
}
.l-hotel .hotel-block .text-block .text a{
	text-decoration: none;
}
.l-hotel .hotel-block .text-block .plan{
	margin-top: 12px;
}
.l-hotel .hotel-block .text-block .plan li{
	margin-top: 4px;
}
.l-hotel .hotel-block .text-block .plan li a{
	font-size: 14px;
	font-weight: 700;
	color: #363185;
	text-decoration: none;
}
.l-hotel .hotel-block .text-block .plan li:first-of-type{
	margin-top: 0;
}
.l-hotel .hotel-block .text-block .btn{
	width: 250px;
	margin: 26px auto 0;
}
.l-hotel .hotel-block .text-block .btn a{
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	width: 100%;
	padding: 11px 0;
	background-color: #363185;
	color: #fff;
	border-radius: 50px;
	text-decoration: none;
	font-size: 14px;
	font-weight: 700;
	box-shadow: 0px 2px 6px gray;
}
.l-hotel .hotel-block .text-block .btn a::before{
	display: block;
	content: "";
	background-image: url(../images/icon-tab-white.png);
	background-size: 100%;
	width: 12px;
	height: 12px;
	position: absolute;
	top: 50%;
	right: 7%;
	transform: translateY(-50%);
}
@media (min-width: 769px) {
	.l-hotel{
		padding: 80px 0 104px;
	}
	.l-hotel .title-block h3 .block{
		position: relative;
		padding-left: 42px;
		font-size: 32px;
	}
	.l-hotel .title-block h3 .block::before{
		width: 22.5px;
		height: 27.5px;
	}
	.l-hotel .title-block h3 .block .color{
		font-size: 32px;
	}
	.l-hotel .title-block .sub-title{
		font-size: 16px;
	}
	.l-hotel .outer{
		display: flex;
		justify-content: flex-end;
		position: relative;
		width: 87.2%;
		max-width: 980px;
		margin: 48px auto 0;
	}
	.l-hotel .list-nav{
		display: block;
		position: absolute;
		top: 0;
		left: 50%;
		transform: translateX(-190%);
		width: 255px;
		padding: 0;
		margin: 0;
	}
	.l-hotel .list-nav.is-fixed {
		position: fixed;
		top: 50px;
		left: 50%;
	}
	.l-hotel .list-nav li {
		position: relative;
		margin-top: 18px;
		padding-left: 18px;
	}
	.l-hotel .list-nav li:first-child{
		margin-top: 0;
	}
	.l-hotel .list-nav li a{
		font-size: 14px;
		color: #363185;
		text-decoration: none;
	}
	.l-hotel .list-nav li::before{
		display: block;
		content: "";
		background-image: url(../images/icon-arrow.png);
		background-size: 100%;
		width: 6px;
		height: 10.5px;
		position: absolute;
		top: 8px;
		left: -2px;
	}
	.l-hotel .plan-block{
		width: 61.224%;
	}
	.l-hotel .list-btn{
		display: none;
	}
	.l-hotel .hotel-block{
		margin-top: 40px;
		padding-top: 50px;
	}
	.l-hotel .hotel-block:first-of-type{
		margin-top: -50px;
		padding-top: 50px;
	}
	.l-hotel .hotel-block .img-block{
		display: flex;
		justify-content: space-between;
		width: 100%;
		margin: 0 auto;
		background-color: #fff;
		border-radius: 8px;
		overflow: hidden;
	}
	.l-hotel .hotel-block .logo{
		display: flex;
		justify-content: center;
		align-items: center;
		width: 33.33%;
	}
	.l-hotel .hotel-block .logo img{
		width: 70% !important;
	}
	.l-hotel .hotel-block .img{
		width: 66.67%;
	}
	.l-hotel .hotel-block .text-block{
		width: 100%;
		margin: 28px auto 0;
	}
	.l-hotel .hotel-block .text-block .title{
		font-size: 20px;
	}
	.l-hotel .hotel-block .text-block .text{
		margin-top: 16px;
		font-size: 14px;
		line-height: 1.7;
	}
	.l-hotel .hotel-block .text-block .text:nth-of-type(n+2) {
    margin-top: 10px;
	}
	.l-hotel .hotel-block .text-block .plan{
		margin-top: 16px;
	}
	.l-hotel .hotel-block .text-block .plan li{
		margin-top: 4px;
		font-size: 16px;
		font-weight: 700;
	}
	.l-hotel .hotel-block .text-block .plan li:first-of-type{
		margin-top: 0;
	}
	.l-hotel .hotel-block .text-block .btn{
		width: 320px;
		margin: 28px auto 0;
	}
	.l-hotel .hotel-block .text-block .btn a{
		padding: 12.5px 0;
		font-size: 16px;
		box-shadow: 0px 2px 6px gray;
	}
	.l-hotel .hotel-block .text-block .btn a::before{
		width: 14px;
		height: 14px;
	}
}
@media (min-width: 769px) and (max-width: 1130px){
	.l-hotel .list-nav{
		top: 0;
		left: 0;
		transform: translateX(0);
	}
	.l-hotel .list-nav.is-fixed {
		position: fixed;
		top: 50px;
		left: 6.2%;
	}
}

/* footer */

.l-footer{
	width: 100%;
	background-color: #fff;
}
.l-footer .footer-outer{
	padding: 36px 0 88px;
}
.l-footer .footer-outer .logo{
	width: 185px;
	margin: 0 auto;
}
.l-footer .footer-outer .copy{
	margin: 36px auto 0;
	font-size: 12px;
	text-align: center;
}

@media (min-width: 769px) {
	.l-footer .footer-outer{
		padding: 40px 0 14px;
	}
	.l-footer .footer-outer .logo{
		width: 185px;
		margin: 0 auto 0 40px;
	}
	.l-footer .footer-outer .copy{
		margin: 20px 40px 0 auto;
		font-size: 12px;
		text-align: right;
	}
}


/* list */

.overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.5);
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s ease, visibility 0.3s ease;
	z-index: 999;
}
.overlay.show {
	opacity: 1;
	visibility: visible;
}

.list-container {
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	max-height: 92vh;
	padding: 58px 24px 48px;
	background-color: #fff;
	box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.2);
	transform: translateY(100%);
	transition: transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	z-index: 1000;
	overflow-y: auto;
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
}
.list-container.show {
	transform: translateY(0);
}
body.no-scroll {
	overflow: hidden;
	width: 100%;
}
.btn-close {
	display: block;
	content: "";
	background-image: url(../images/btn-close.png);
	background-size: 100%;
	width: 23px;
	height: 23px;
	position: absolute;
	top: 18px;
	right: 18px;
}
.list-container ul {
	list-style: none;
	padding: 0;
	margin: 0;
}
.list-container li {
	position: relative;
	margin-top: 20px;
	padding-left: 18px;
}
.list-container li:first-child{
	margin-top: 0;
}
.list-container li a{
	font-size: 14px;
	color: #363185;
	text-decoration: none;
}
.list-container li::before{
	display: block;
	content: "";
	background-image: url(../images/icon-arrow.png);
	background-size: 100%;
	width: 6px;
	height: 10.5px;
	position: absolute;
	top: 8px;
	left: -2px;
}

@media (min-width: 769px) {

}


