@charset "utf-8";
/* CSS Document */


/*------------*/
/* * {
	margin: 0;
	padding: 0;
	list-style-type: none;
}
*,
*:before,
*:after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
} */

img {
	vertical-align: top;
	width: 100%;
	height: auto;
}

.alC {
	text-align: center;
}


/*-----------------------*/

.pc {
	display: none;
}

.sp {
	display: block;
}

.pcBr {
	display: none;
}

.spBr {
	display: inline;
}

.container {
	width: 100%;
	margin: 0 auto;
	padding: 0 4vw;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.heading_ttl {
	color: #198DA8;
	font-size: 44px;
	font-weight: bold;
	text-align: center;
	font-family: 'Noto Serif JP', '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
	line-height: 1.5;
}

.heading_ttl.txt_yellow {
	color: #FFD460
}

.txt_white {
	color: #FFF;
	margin: 40px 0 0 0;
	font-family: 'Noto Serif JP', '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
}

a[target='_blank']:after {
	display: none !important;
}

#mv {
	background-color: #198DA8;
}

.mv_inner {
	max-width: 1280px;
	margin: 0 auto;
	padding: 0;
}

@media (min-width: 1024px) {
	.mv_inner {
		padding: 32px;
	}
}

#tds25th {
	background: #198DA8 url(../img/bg_a.jpg) no-repeat center bottom;
	background-size: 140% auto;
	padding: 32px 0;
}

.logo_fs {
	width: 480px;
	margin: 0 auto;
}

.tds25th_heading {
	font-size: 40px;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
	color: #FFF;
	margin: 40px 0 16px;
	font-family: 'Noto Serif JP', '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
}

.tds25th_date {
	font-size: 32px;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
	color: #FFF;
	font-family: 'Noto Serif JP', '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
}

.tds25th_date span {
	font-size: 48px;
}

.tds25th_txt {
	color: #FFF;
	margin: 32px 24px 0;
	font-size: 28px;
	font-family: 'Noto Serif JP', '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;

}

.tds25th_btn {
	margin: 32px 0 0 0;
	display: block;
	text-align: center;
	color: #FFF;
	padding: 32px;
	background-color: #198DA8;
	border: 1px solid #BEA976;
	border-radius: 160px;
	/* width: 100%; */
	text-decoration: none;
}

#introduction,
#schedule,
#others {
	background-image: url(../img/bg_b_top.jpg), url(../img/bg_b_bottom.jpg);
	background-repeat: no-repeat, no-repeat;
	background-position: center top, center bottom;
	background-size: 100% auto;
	padding: 64px 0;
	margin: 32px 0 0;
}

.introduction_txt {
	margin: 40px 0 0 0;
	font-family: 'Noto Serif JP', '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
	font-size: 28px;

}

.introduction_subTtl {
	color: #198DA8;
	font-size: 28px;
	font-weight: bold;
	font-family: 'Noto Serif JP', '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
	text-align: center;
	margin: 48px 0 0 0;
}

.introduction_cap {
	font-size: 20px;
	line-height: 1.5;
	text-align: right;
	padding: 16px 4vw 0;
}

#tour,
#diainfo {
	background: #198DA8 url(../img/bg_c.jpg) no-repeat center center;
	background-size: 100% auto;
	padding: 64px 0;
	margin: 32px 0 0;
}

.img_comingSoon {
	max-width: 440px;
	margin: 32px auto 0;
}

.schedule_info {
	margin-top: 32px;
	padding: 32px 0;
	border-top: 1px solid #CCCCCC;
	border-bottom: 1px solid #CCCCCC;
	text-align: center;
}

.schedule_calendar {
	width: 78%;
	margin: 32px auto;
}

.schedule_dep {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 24px;
	max-width: max-content;
	/* max-width: 648px; */
	margin: 0 auto;
}

.schedule_dep_block {
	display: flex;
	gap: 16px;
}

.schedule_dep_block ul {
	font-size: 28px;
}

.schedule_icon {
	width: 48px;
	height: auto;
}

.schedule_info dl+dl {
	margin-top: 16px;
}

.schedule_info dt {
	color: #198DA8;
	font-weight: bold;
}

.schedule_dep_note {
	font-size: 24px;
	line-height: 1.5;
	text-align: center;
	margin-top: 32px;
}

.schedule_timetable_btn {
	position: relative;
	margin: 32px 0 0 0;
	display: block;
	text-align: center;
	color: #FFF;
	padding: 32px;
	background-color: #198DA8;
	border: 1px solid #BEA976;
	border-radius: 160px;
	text-decoration: none;
}

.schedule_timetable_btn img {
	position: absolute;
	right: 4rem;
	width: 48px;
	height: auto;
}

.bn_jr_operation {
	max-width: 680px;
	margin: 32px auto 0;
}

.bn_ticket {
	max-width: 680px;
	margin: 0 auto;
}

.others_txt {
	margin-top: 32px;
}

.img_qr {
	width: 160px;
	height: auto;
	margin: 32px auto 0;
}

.QR_note {
	font-size: 24px;
	line-height: 1.5;
	text-align: center;
	margin-top: 16px;
}

.wdshinkansen .site-footer {
	margin: -90px 0 0 0;
}

@keyframes fadein {
	0% {
		opacity: 0;
	}

	100% {
		opacity: 1;
	}
}

/*************
scheduleへのアンカーボタン
*************/
.schedule_btn {
	position: fixed;
	bottom: 98px;
	right: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 90px;
	width: 90px;
	border-radius: 8px 0 0 8px;
	text-decoration: none;
	font-size: 24px;
	line-height: 1.3;
	text-align: center;
	color: #FFF;
	background-color: #a49060;
	border: 1px solid #fff;
	z-index: 999;
	transition: all 0.3s;
}

@media (min-width: 768px) {
	.schedule_btn {
		position: fixed;
		bottom: 8px;
		right: 54px;
		display: flex;
		align-items: center;
		justify-content: center;
		height: 42px;
		width: 104px;
		border-radius: 8px;
		text-decoration: none;
		font-size: 14px;
		text-align: center;
		border: 1px solid #fff;
		z-index: 999;
		transition: all 0.3s;
	}

	.schedule_btn:hover {
		color: #FFF;
		background-color: #d6b362;
	}
}


/*************
splide
*************/

.splide {
	text-align: center;
}

.splide__pagination {
	margin: 24px 0 0;
}

.splide__pagination__page {
	width: 23vw;
	opacity: 0.5;
	transition: all .7s;
	background-color: #FFF;
	font-weight: bold;
	border-width: 0;
	font-size: 32px;
	height: 10vw;
}

.splide__pagination__page.is-active {
	opacity: 1;
}

.splide__pagination__page[aria-label="Go to slide 1"],
.splide__pagination__page[aria-label="Go to slide 16"] {
	border-top: 5px solid #005B82;
	color: #005B82;
}

.splide__pagination__page[aria-label="Go to slide 2"],
.splide__pagination__page[aria-label="Go to slide 5"],
.splide__pagination__page[aria-label="Go to slide 8"],
.splide__pagination__page[aria-label="Go to slide 11"],
.splide__pagination__page[aria-label="Go to slide 15"] {
	border-top: 5px solid #927AB6;
	color: #927AB6;
}

.splide__pagination__page[aria-label="Go to slide 3"],
.splide__pagination__page[aria-label="Go to slide 6"],
.splide__pagination__page[aria-label="Go to slide 9"],
.splide__pagination__page[aria-label="Go to slide 13"] {
	border-top: 5px solid #7DAB9D;
	color: #7DAB9D;
}

.splide__pagination__page[aria-label="Go to slide 4"],
.splide__pagination__page[aria-label="Go to slide 7"],
.splide__pagination__page[aria-label="Go to slide 10"],
.splide__pagination__page[aria-label="Go to slide 12"],
.splide__pagination__page[aria-label="Go to slide 14"] {
	border-top: 5px solid #81B7E4;
	color: #81B7E4;
}

.splide__toggle {
	font-size: 28px;
	padding: 8px 16px;
	color: #333;
	border: 1px solid #333;
	border-radius: 8px;
}

.splide__slide img {
	width: auto;
	height: 36vw;
}



@media (min-width: 768px) {
	.splide__pagination__page {
		width: 50px;
	}

	.splide__pagination__page {
		width: 5vw;
		opacity: 0.5;
		transition: all .7s;
		background-color: #FFF;
		font-weight: bold;
		border-width: 0;
		font-size: 18px;
		height: 40px;
	}

	.splide__slide img {
		width: auto;
		height: 14vw;
	}
}

.swiper-slide img {
	height: auto;
	width: 100%;
}

/* 前へ次への矢印カスタマイズ */
.swiper-button-prev,
.swiper-button-next {
	height: 80px;
	width: 80px;
}

/* 前へ次への矢印カスタマイズ */
.swiper-button-prev::after,
.swiper-button-next::after {
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	height: 80px;
	width: 80px;
	margin: auto;
}

/* 前への矢印カスタマイズ */
.swiper-button-prev::after {
	background-image: url(../img/icon_arrow_prev.png);
}

/* 次への矢印カスタマイズ */
.swiper-button-next::after {
	background-image: url(../img/icon_arrow_next.png);
}

.swiper-container {
	position: relative;
	width: 100%;
	margin: 0 auto;
}

.swiper-container .swiper-button-prev {
	left: -74px;
}

.swiper-container .swiper-button-next {
	right: -74px;
}


@media (min-width: 768px) {

	.hover:hover {
		filter: alpha(opacity=70);
		-moz-opacity: 0.7;
		opacity: 0.7;
		transition-duration: 0.3s;
		cursor: pointer
	}

	/*-----------------------*/

	.pc {
		display: block;
	}

	.sp {
		display: none;
	}

	.pcBr {
		display: inline;
	}

	.spBr {
		display: none;
	}

}


@media (min-width: 1024px) {
	.container {
		width: 100%;
		max-width: 1024px;
		margin: 0 auto;
	}

	.heading_ttl {
		font-size: 32px;
	}

	#tds25th {
		background: #198DA8 url(../img/bg_a.jpg) no-repeat center bottom;
		background-size: cover;
		padding: 32px 0 96px;
	}

	#introduction,
	#schedule,
	#others {
		padding: 96px 0;
	}

	.introduction_cap {
		font-size: 12px;
		line-height: 2;
	}

	.logo_fs {
		width: 440px;
	}

	.tds25th_btn {
		margin: 40px auto 0;
		max-width: 420px;
		font-size: 16px;
	}

	.tds25th_heading {
		font-size: 32px;
	}

	.tds25th_date {
		font-size: 24px;
	}

	.tds25th_date span {
		font-size: 32px;
	}

	.tds25th_txt {
		line-height: 2;
		text-align: center;
		font-size: 16px;
	}

	.tds25th_btn {
		padding: 16px 32px;
	}

	.tds25th_btn:hover {
		color: #FFD460;
		background-color: #2B798B;
	}

	.introduction_txt {
		text-align: center;
		font-size: 16px;
	}

	.introduction_subTtl {
		font-size: 24px;
		margin: 64px 0 8px 0;
	}

	.splide__toggle {
		font-size: 14px;
		padding: 4px 8px;
		border-radius: 4px;
	}

	.txt_white {
		font-family: 'Noto Serif JP', '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
		text-align: center;
	}

	.img_comingSoon {
		max-width: 300px;
	}

	.schedule_calendar {
		width: 740px;
		margin: 32px auto;
	}

	.schedule_dep_block {
		gap: 8px;
	}

	.schedule_dep_block ul {
		font-size: 14px;
		line-height: 1.3;
	}

	.schedule_dep_block ul li+li {
		margin-top: 4px;
	}

	.swiper-wrapper {
		/* カレンダーが複数の場合は以下を適用する */
		/* justify-content: space-between; */
		/* カレンダーが1つの場合は以下を適用する */
		justify-content: center;
	}

	.swiper-slide {
		width: 47% !important;
	}

	.schedule_dep {
		display: flex;
		flex-direction: row;
		align-items: flex-start;
		gap: 16px;
		justify-content: center;
		max-width: initial;
		margin: 0;
	}


	.schedule_icon {
		width: 28px;
	}

	.schedule_dep_note {
		font-size: 12px;
		line-height: 1.5;
		text-align: center;
		margin-top: 32px;
	}

	.schedule_timetable_btn {
		margin: 32px auto 0;
		max-width: 380px;
		font-size: 16px;
		padding: 16px;
	}

	.schedule_timetable_btn:hover {
		color: #FFD460;
		background-color: #2B798B;
	}

	.schedule_timetable_btn img {
		width: 32px;
	}

	.bn_jr_operation {
		max-width: 440px;
		margin: 32px auto 0;
	}

	.bn_ticket {
		max-width: 384px;
		margin: 0 auto 48px;
	}

	.others_txt {
		margin-top: 16px;
		font-size: 16px;
		line-height: 1.5;
	}

	.img_qr {
		width: 80px;
		height: auto;
		margin: 32px auto 0;
	}

	.QR_note {
		font-size: 12px;
		line-height: 1.5;
		text-align: center;
		margin-top: 8px;
	}
}

/* 260428追記 */
.schedule_dep_irregular {
	width: max-content;
	margin: 32px auto 0;
	padding: 24px 32px;
	background-color: #effdff;
	border-radius: 8px;
}

.schedule_dep_irregular_heading {
	font-size: 28px;
	font-weight: bold;
	line-height: 1.3;
	color: #198DA8;
	margin: 0 0 16px;
}

.schedule_dep_irregular_heading span{
	color: #198DA8;
	margin-right: 8px;
}

.schedule_dep_irregular ul {
	font-size: 28px;
	line-height: 1.3;
}

.schedule_dep_irregular ul li+li {
	margin-top: 4px;
}

@media (min-width: 1024px) {
	.schedule_dep_irregular {
		padding: 16px 24px;
	}

	.schedule_dep_irregular_heading {
		font-size: 28px;
		margin: 0 0 8px;
	}

	.schedule_dep_irregular ul {
		font-size: 14px;
	}

	.schedule_dep_irregular_heading {
		font-size: 14px;
	}
}