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

/* footer
---------------------------------------------------------- */
.footer { margin-top: 0;}

/* hero-top
---------------------------------------------------------- */
.hero-top-slider {
  position: relative;
	height: 940px;
  overflow: hidden;
}
  .hero-top-slider .slider-item {
    background-position: center center;
    -webkit-background-size: cover;
    background-size: cover;
  }
  .hero-top-slider .slider-item img { opacity: 0 !important;}
.hero-top {
	position: relative;
	height: 940px;
	/*background: url(/travel/common/img/top/mainimg_top_01.jpg) center center no-repeat;
	background-size: cover;*/
}
	.hero-top .hero-top-notice {
		background-color: rgba(255,255,255,0.8);
		position: absolute;
		top: 368px;
		left: 50%;
		width: 1000px;
		margin: 0 auto;
		margin-left: -500px;
		padding: 20px 60px;
		font-size: 110%;
		z-index: 10;
	}
	.hero-top .hero-top-notice dt {
		font-weight: bold;
	}
	.hero-top .hero-top-notice dd {
		/*padding-top: 11px;*/
		margin-bottom: 15px;
	}
	.hero-top .hero-top-notice dd:last-child {
		margin-bottom: 0;
	}
	.hero-top .hero-top-notice dd a {
		text-decoration: underline;
	}
	.hero-top .hero-top-train {
		background-color: #fff;
		position: absolute;
		top: 462px;
		left: 50%;
		width: 1000px;
		margin: 0 auto;
		margin-left: -500px;
		padding: 0;
		font-size: 110%;
		z-index: 10;		
	}
	.hero-top .hero-top-train-en {
		top: 487px;
	}
	.hero-top .hero-top-train dl {
		height: 3.5rem;
		display: table;
	}
	.hero-top .hero-top-train dt {
		background-color: #76b7b9;/*orange #ef5401*/
		color: #fff;
		width: 220px;
		font-weight: bold;
		text-align: center;
		display: table-cell;
		vertical-align: middle;
	}
	.hero-top .hero-top-train dd {
		padding: 0 30px;
		display: table-cell;
		vertical-align: middle;
		text-decoration: underline;
	}
	.hero-top .hero-top-in {
		position: absolute;
		/*top: 288px;*//*通常時*/
		/*top: 221px;*//*緊急BOXあり*/
		/*top: 201px;*//*緊急BOX+運行情報あり*/
		top: 248px;
		left: 50%;
		margin-left: -500px;
		z-index: 1;
	}
		.hero-top .hero-top-title {
			margin-bottom: 20px;
			font-size: 462%;
			font-weight: 300;
			color: #fff;
			line-height: 1;
			text-align: center;
			text-shadow: 2px 2px 10px #000000;

		}
		.hero-top .hero-top-text {
			margin-bottom: 30px;
			font-size: 120%;
			color: #fff;
			line-height:1.7;
			text-align: center;
			text-shadow: 2px 2px 13px #000000;
		}
		.hero-top-list {
      position: relative;
      overflow: hidden;
      /*margin-top: -450px;*//*通常時および緊急BOXのみあり*/
	  /*margin-top: -317px;*//*緊急BOX+運行情報あり*/
	  margin-top: -388px;/*緊急BOX大きめ+運行情報あり*/
    	}
		.hero-top-list-en {
			margin-top: -360px;
		}
			.hero-top-list li {
				float: left;
				width: 50%;
			}
				.hero-top-list li .box-pdf { background-color: #76b7b9; }
					.hero-top-list li .box-pdf a {
						display: block;
						position: relative;
						padding: 25px 20px 20px;
					}
						.hero-top-list li .box-pdf a .inner { display: block; }
							.hero-top-list li .box-pdf a .title {
								margin-bottom: 23px;
								font-size: 231%;
								line-height: 1;
								color: #fff;
							}
							.hero-top-list li .box-pdf a .desc-part {
								position: absolute;
								width: 100%;
								padding: 0 20px 20px;
								bottom: 0;
								left: 0;
							}
							.hero-top-list li .box-pdf a .txt-link {
								margin-bottom: 13px;
								padding-right: 20px;
								background: url(/travel/common/img/ico_arrow_link_01.png) right center no-repeat;
								line-height: 14px;
								color: #fff;
								text-align: right;
							}
							.hero-top-list li .box-pdf .image img { width: 100%; }
				
				/* box-label-01 */
				
				.hero-top-list li .box-label-01 { background-color: #e0c69b; }
					.hero-top-list li .box-label-01 a {
						display: block;
						padding: 20px;
					}
					.hero-top-list li .box-label-01 a:after { display: none; }
						.hero-top-list li .box-label-01 a .inner {
							display: block;
							min-height: 460px;
							background-color: #fff;
						}
						.hero-top-list li .box-label-01 a .label {
							position: relative;
							margin: -30px 0 15px;
							z-index: 1;
						}
						.hero-top-list li .box-label-01 a .title { margin-bottom: 5px; }
						.hero-top-list li .box-label-01 a .text { padding-bottom: 20px; }
						.box-label-01 .label.pink-01 {
							background: url(/travel/common/img/ico_tag_08.png) 0 0 no-repeat;
							color: #ffffff;
						}
						
				/* box-label-02 */
				
				.hero-top-list li .box-label-02 { background-color: #4cb590; }
					.hero-top-list li .box-label-02 a {
						display: block;
						padding: 20px;
					}
					.hero-top-list li .box-label-02 a:after { display: none; }
						.hero-top-list li .box-label-02 a .inner {
							display: block;
							min-height: 460px;
							background-color: #fff;
						}
						.hero-top-list li .box-label-02 a .label {
							position: relative;
							margin: -30px 0 15px;
							z-index: 1;
						}
						.hero-top-list li .box-label-02 a .title { margin-bottom: 5px; }
						.hero-top-list li .box-label-02 a .text { padding-bottom: 20px; }
						.box-label-02 .label.pink-02 {
							background: url(/travel/common/img/ico_tag_10.png) 0 0 no-repeat;
							color: #ffffff;
						}
						
				/* box-label-02-orange */
				
				.hero-top-list li .box-label-02.box-02 { background-color: #f5b24a; }
						.hero-top-list li .box-label-02.box-02 a .image {
							margin-bottom: 38px;
						}
						.hero-top-list li .box-label-02.box-02 a .label {
							position: relative;
							margin: -30px 0 15px;
							z-index: 1;
							background: url(/travel/common/img/ico_tag_06.png) 0 0 no-repeat;
						}
						
@media screen and (max-width: 767px) {
.hero-top-slider {
	height: auto;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
.hero-top {
	height: auto;
	padding-bottom: 30px;
}
	.hero-top .hero-top-in {
		position: relative;
		margin-left: 10px;
		padding-top: 120px;
    top: 0;
    left: 0;
    z-index: 50;
	}
	.hero-top .hero-top-notice {
		position:relative;
		top: 0;
    	left: 0;
		margin: 0 auto;
		padding: 10px 8%;
		width: 90%;
		font-size: 108%;
	}
	.hero-top .hero-top-train {
		position:relative;
		top: 55px;
    	left: 0;
		margin: 0 auto;
		padding: 10px 0;
		width: 100%;
		font-size: 108%;
	}
	.hero-top .hero-top-train dt {
		width: 30%;
	}
	.hero-top .hero-top-train dd {
		font-size: 12px;
	}
		.hero-top .hero-top-title {
			margin-bottom: 10px;
			font-size: 262%;
		}
		.hero-top .hero-top-text {
			margin-bottom: 15px;
			font-size: 108%;
		}
		.hero-top-list {
      margin-top: 25px;
    }
			.hero-top-list li {
				float: none;
				width: 100%;
			}
				.hero-top-list li .box-pdf {}
					.hero-top-list li .box-pdf a { padding: 10px;}
						.hero-top-list li .box-pdf a .inner {}
							.hero-top-list li .box-pdf a .title {
								margin-bottom: 10px;
								font-size: 147%;
								line-height: 1;
								color: #fff;
							}
							.hero-top-list li .box-pdf a .desc-part {
								position: static;
								padding: 0;
							}
							.hero-top-list li .box-pdf a .txt-link {
								margin-bottom: 5px;
								padding-right: 10px;
								background-size: 7px 7px;
								line-height: 10px;
								font-size: 85%;
							}
							.hero-top-list li .box-pdf .image img {}
				
				/* box-label-01 */
				.hero-top-list li .box-label-01 {}
					.hero-top-list li .box-label-01 a { padding: 10px;}
					.hero-top-list li .box-label-01 a:after {}
						.hero-top-list li .box-label-01 a .inner { min-height: initial;}
						.hero-top-list li .box-label-01 a .label {}
						.hero-top-list li .box-label-01 a .title { margin-bottom: 5px; }
						.hero-top-list li .box-label-01 a .text { padding-bottom: 20px; }
						.box-label-01 .label.pink-01 { background-size: 100px 16px;}

				/* box-label-02 */
				.hero-top-list li .box-label-02 {}
					.hero-top-list li .box-label-02 a { padding: 10px;}
					.hero-top-list li .box-label-02 a:after {}
						.hero-top-list li .box-label-02 a .inner { min-height: initial;}
						.hero-top-list li .box-label-02 a .label {}
						.hero-top-list li .box-label-02 a .title { margin-bottom: 5px; }
						.hero-top-list li .box-label-02 a .text { padding-bottom: 20px; }
						.box-label-02 .label.pink-02 { background-size: 100px 16px;}

  /* Custom Slick Slider */
  .slick-list {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .slick-track {
    height: 100%;
  }
}
/* sec-top-01
---------------------------------------------------------- */
.sec-top-01 { padding: 50px 0 50px; }

@media screen and (max-width: 767px) {
.sec-top-01 { padding: 25px 0;}
}
/* list-amazing
---------------------------------------------------------- */
.list-amazing {
	margin-bottom: 50px;
	overflow: hidden;
}
	.list-amazing li { width: 480px; }
	
	
	/* box-label-01 */
	.list-amazing .box-label-01 a {
		min-height: 500px;
	}
		/* box-01 */
		.list-amazing .box-label-01.box-01 {
			float: left;
			background-color: #ffffff;
		}
			.list-amazing .box-label-01.box-01 .label { background: url(/travel/common/img/ico_tag_11.png) 0 0 no-repeat; }
			.list-amazing .box-label-01.box-01 .title { color: #18458a; }

		/* box-02 */
		.list-amazing .box-label-01.box-02 {
			float: right;
			background-color: #ffffff;/*autumn #f5b24a*/
		}

			.list-amazing .box-label-01.box-02 .label { background: url(/travel/common/img/ico_tag_06.png) 0 0 no-repeat; }
			/*autumn .list-amazing .box-label-01.box-02 .title,
			.list-amazing .box-label-01.box-02 .text { color: #fff; }*/
			
			.contents-main .box-label-01 .title,
			.contents-main .list-box-link-01 li .title {
				line-height: 1.3;
				padding-bottom: 6px;
			}

@media screen and (max-width: 767px) {
.list-amazing { margin-bottom: 10px;}
	.list-amazing li {
		width: auto;
		margin-bottom: 15px;
	}
	.list-amazing .box-label-01 a { min-height: inherit;}
		/* box-01 */
		.list-amazing .box-label-01.box-01 { float: none;}
			.list-amazing .box-label-01.box-01 .label { background-size: 100px 16px;}
			.list-amazing .box-label-01.box-01 .title {}

		/* box-02 */
		.list-amazing .box-label-01.box-02 { float: none;}
			.list-amazing .box-label-01.box-02 .label { background-size: 100px 16px;}
			.list-amazing .box-label-01.box-02 .title,
			.list-amazing .box-label-01.box-02 .text {}
}


	/* box-label-02 */
	.list-amazing .box-label-02 a {
		min-height: 500px;
	}
		/* box-01 */
		.list-amazing .box-label-02.box-01 {
			float: left;
			background-color: #ffffff;
		}
			.list-amazing .box-label-02.box-01 .label { background: url(/travel/common/img/ico_tag_05.png) 0 0 no-repeat; }
			.list-amazing .box-label-02.box-01 .title { color: #ec87d1; }

		/* box-02 */
		.list-amazing .box-label-02.box-02 {
			float: right;
			background-color: #f54ac845;
		}

			.list-amazing .box-label-02.box-02 .label { background: url(/travel/common/img/ico_tag_04.png) 0 0 no-repeat; }
			.list-amazing .box-label-02.box-02 .title,
			.list-amazing .box-label-02.box-02 .text { color: #fff; }

@media screen and (max-width: 767px) {
.list-amazing { margin-bottom: 10px;}
	.list-amazing li {
		width: auto;
		margin-bottom: 15px;
	}
	.list-amazing .box-label-02 a { min-height: inherit;}
		/* box-01 */
		.list-amazing .box-label-02.box-01 { float: none;}
			.list-amazing .box-label-02.box-01 .label { background-size: 100px 16px;}
			.list-amazing .box-label-02.box-01 .title {}

		/* box-02 */
		.list-amazing .box-label-02.box-02 { float: none;}
			.list-amazing .box-label-02.box-02 .label { background-size: 100px 16px;}
			.list-amazing .box-label-02.box-02 .title,
			.list-amazing .box-label-02.box-02 .text {}
}


/* sec-media
---------------------------------------------------------- */
.sec-media {
	padding: 40px 0;
	background: url(/travel/common/img/bg_texture_02.jpg) 0 0 repeat;
}
	.list-media {
		overflow: hidden;
		display: flex;
		justify-content: space-between;
		
	}
	.list-media li{
		width: 300px;
	}
			.list-media li a {
				display: block;
				background-color: #fff;
				overflow: hidden;
				border-radius: 5px;
			}
				.list-media li a .info {
					position: relative;
					display: flex;
					justify-content: space-around;
					align-items: center;
					height: 100px;
				}
					.list-media li a .icon {
						flex-basis: 30px;
					}
					.list-media li.video a .icon,
					.list-media li.pdf a .icon {
						padding: 0 0 0 12px;
					}
					.list-media li.navitime a {
						background: #76b7b9;
					}
					.list-media li a .icon img {
						width: 35px;
						height: auto;
					}
					.list-media li.pdf a .icon img { 
						width: 30px;
						height: auto;
					}
					.list-media li a .txt {
						font-size: 17px;
						line-height: 1;
						color: #333;
					}
					.list-media li.navitime a .txt {
						font-size: 19px;
						line-height: 1.4;
						color: #fff;
						font-weight: 400;
						flex-basis: 182px;
					}
					.list-media li.pdf a .txt {
						font-size: 15px;
					}
					.list-media li.navitime a .txt img {
						width: 20px;
					}
				.list-media li a .image {
					padding-left: 6px;
				}
					.list-media li a .image img { 
						height: 65px;
						width: auto;
					}
			.list-media li .text{
				margin-top: 15px;
				font-size: 108%;
				line-height:1.4;
				color: #595856;
				text-align: center;
			}
@media screen and (max-width: 767px) {
.sec-media { padding: 25px 0;}
	.list-media { margin-bottom: -15px; display: block;}
		.list-media li {
			width: 100%;
			float: none;
			margin-bottom: 15px;
		}
		.list-media li:nth-child(odd) { padding-right: 0; }
		.list-media li:nth-child(even) { padding-left: 0; }
			.list-media li a { padding: 10px;}
				.list-media li a .info { height: 80px }
					.list-media li a .icon { 
						padding: 0 12px 0 19px;
						flex-basis: 81px;
						flex-grow: 0;
					}
					.list-media li.video a .icon {
						padding: 0 12px 0 19px;
					}
					.list-media li a .txt {
						font-size: 140%;
						flex-grow: 1;
					}
					.list-media li a .image {
						flex-grow: 1;
					}
					.list-media li a .image img { max-width: 100%; }
			.list-media li .text{
				margin-top: 8px;
				font-size: 77%;
			}
}

/* list-category
---------------------------------------------------------- */
.list-category {
	margin: -30px 0 0 -40px;
	overflow: hidden;
}
	.list-category li {
		float: left;
		width: 480px;
		margin: 30px 0 0 40px;
	}
	.list-category li.list-01 { background-color: #c7494f; }
	.list-category li.list-02 { background-color: #76b7b9; }
	.list-category li.list-03 { background-color: #4a9977; }
	.list-category li.list-04 { background-color: #eb8752; }
		.list-category li a {
			display: table;
			position: relative;
			width: 100%;
			padding: 15px;
			overflow: hidden;
		}
		.list-category li a:after {
			position: absolute;
			content: "";
			width: 0;
			height: 0;
			right: 0;
			bottom: 0;
			border-top: 20px solid transparent;
			border-bottom: 0 solid transparent;
			border-right: 20px solid rgba(0,0,0,0.2);
		}
		.list-category li .image {
			display: table-cell;
			width: 160px;
		}
			.list-category li .image img { width: 100%; }
		.list-category li .info {
			display: table-cell;
			height: 120px;
			vertical-align: middle;
			padding: 0 0 0 15px;
		}
			.list-category li .info .title {
				margin-bottom: 5px;
				font-size: 200%;
				color: #fff;
			}
			.list-category li .info .text { color: #fff; }

@media screen and (max-width: 767px) {
.list-category {
	margin: 0 0 -15px;
	overflow: hidden;
}
	.list-category li {
		float: none;
		width: auto;
		margin: 0 0 15px;
	}
		.list-category li a { padding: 10px;}
		.list-category li a:after {
			border-top: 10px solid transparent;
			border-right: 10px solid rgba(0,0,0,0.2);
		}
		.list-category li .image { width: 100px;}
		.list-category li .info {
			height: auto;
			padding: 0 0 0 10px;
			vertical-align: top;
		}
			.list-category li .info .title {
				margin-bottom: 3px;
				font-size: 131%;
			}
			.list-category li .info .text { font-size: 85%;}
}

/* sec-what-is-new
---------------------------------------------------------- */
.sec-what-is-new {
	padding: 50px 0 35px;
	background-color: #fff;
}
		.sec-what-is-new .link-ig {
			display: block;
			width: 480px;
			float: right;
			margin-left: 20px;
			padding-bottom: 70px;
		}
			.sec-what-is-new .link-ig img { width: 100%; }
			
			.sec-what-is-new .bnr-ttl {
				margin: 0 0 5px;
				font-size: 120%;
				font-weight: 500;
			}
			
			.sec-what-is-new .agent {
				margin-top: 30px;
				padding: 10px 20px 20px;
				background-color: #eee;

			}
			.agent .agent-banner {
				display: block;
				margin-top: 30px;
			}

			.box-what-is-new .title {
				margin-bottom: 25px;
				font-size: 231%;
				color: #323232;
				line-height: 1;
			}
				.box-what-is-new .list-new dt {
					margin-bottom: 5px;
					color: #595856;
				}
				.box-what-is-new .list-new dd { margin-bottom: 25px; }
				
.sec-what-is-new .tax {
	background-color:#F3F2F0;
	width: 100%;
	padding: 15px 30px;
}

@media screen and (max-width: 767px) {
.sec-what-is-new { padding: 25px 0 20px;}
	.sec-what-is-new .container-01 {
		display: -webkit-box;
		display: -moz-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-moz-flex-direction: column;
		-ms-flex-direction: column;
		-webkit-flex-direction: column;
		flex-direction: column;
	}
	.sec-what-is-new .link-ig {
		display: inherit;
		width: 100%;
		float: none;
		-webkit-box-ordinal-group: 2;
		-moz-box-ordinal-group: 2;
		-ms-flex-order: 2;
		-webkit-order: 2;
		order: 2;
		margin-left: 0;
		margin-bottom: 10px;
	}
	.sec-what-is-new .bnr-ttl {
		margin: 15px 0 5px;
		font-size:110%;
	}
	.sec-what-is-new .box-what-is-new {
    width: 100%;
		-webkit-box-ordinal-group: 1;
		-moz-box-ordinal-group: 1;
		-ms-flex-order: 1;
		-webkit-order: 1;
		order: 1;
		margin-bottom: 12px;
	}

		.box-what-is-new .title {
			margin-bottom: 12px;
			font-size: 147%;
		}
		.box-what-is-new .list-new { font-size: 85%;}
			.box-what-is-new .list-new dt {	margin-bottom: 3px;}
			.box-what-is-new .list-new dd { margin-bottom: 12px; }
}


/* sec-comp-information
---------------------------------------------------------- */
.sec-comp-information {
	padding: 50px 0 40px;
	background-color: #fdfcfa;
}
	.list-information-link {
		margin: -32px 0 45px -50px;
		overflow: hidden;
	}
		.list-information-link li {
			float: left;
			margin: 32px 0 0 50px;
		}
			.list-information-link li a { display: block; }
				.list-information-link li .image {
					width: 300px;
					margin-bottom: 18px;
				}
				.list-information-link li .image img { width: 100%; }
				.list-information-link li .text {
					font-size: 116%;
					line-height: 1.3;
					color: #323232;
					text-align: center;
				}

.list-top-link-01 { text-align: center;}
  .list-top-link-01 li {
    display: inline-block;
    border-right: 1px solid #ddd;
  }
    .list-top-link-01 li:first-child { border-left: 1px solid #ddd;}
    .list-top-link-01 li a {
      padding: 0 75px 0 78px;
      font-size: 115%;
      color: #323232;
    }

@media screen and (max-width: 767px) {
.sec-comp-information {	padding: 25px 0;}
	.list-information-link { margin: 0 -5px 10px;}
		.list-information-link li {
			float: left;
			width: 50%;
			margin: 0 0 15px;
			padding: 0 5px;
		}
			.list-information-link li a { display: block; }
				.list-information-link li .image {
					width: auto;
					margin-bottom: 9px;
				}
				.list-information-link li .image img { width: 100%; }
				.list-information-link li .text { font-size: 93%;}

.list-top-link-01 {}
  .list-top-link-01 li {}
    .list-top-link-01 li:first-child {}
    .list-top-link-01 li a {
      padding: 0 20px;
      font-size: 93%;
    }
}


.contents .list-box-link-01 li {
	background-color: #fff;
	position: relative;
}

.list-box-link-01 li a:after {
	display: none;
}

.contents .list-box-link-01 li:after {
			position: absolute;
			content: "";
			width: 0;
			height: 0;
			right: 0;
			bottom: 0;
			border-top: 20px solid transparent;
			border-bottom: 0 solid transparent;
			border-right: 20px solid rgba(51,51,51,0.2);
}


.modalContents {
	text-align: center;
	margin: 0 auto;
	position: relative;
}

.modalContents .navitime-ttl {
	position: absolute;
	top: 7px;
	left: 0;
	right: 0;
	margin: auto;
	font-size: 125%;
	font-weight: bold;
}

.modalContents iframe {
	margin-top: 5px;
}

/* モーダルCSS */
.modalArea {
  display: none;
  position: fixed;
  z-index: 10; 
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.modalBg {
  width: 100%;
  height: 100%;
  background-color: rgba(30,30,30,0.9);
}

.modalWrapper {
  margin: auto;
  position: fixed;
  top: 30%;
  left: 50%;
  transform:translate(-50%,-50%);
  width: 70%;
  max-width: 300px;
  padding: 10px 30px;
  background-color: #fff;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.modalContents {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  display: table;
  height: auto;
}

.closeModal {
  position: absolute;
  top: 0.5rem;
  right: 1rem;
  cursor: pointer;
}

@media screen and (max-width: 767px) {
	
.modalWrapper {
  position: fixed;
  top: 20%;
  width: 80%;
  max-width: 300px;
}

}

/* instagram */

.insta_list{
	display: flex;
	flex-wrap: wrap;
	gap: 13px;
	margin: 20px 0;
}

.insta_list li{
	position: relative;
	width: calc((100% - 40px)/4);
}

@media screen and (max-width: 750px){
	.insta_list li{
			width: calc((100% - 20px)/2);
	}
}

.insta_list li::before{
content: "";
display: block;
padding-top: 100%;
}

.insta_list a{
position: absolute;
top: 0;
width: 100%;
height: 100%;
}

.insta_list img{
width: 100%;
height: 100%;
object-fit: cover;
}

.insta_btn{
	background-color: #000;
	padding: .5em 1em;
	width: fit-content;
	margin: 0 auto 40px;
	cursor: pointer;
	transition: .3s
}

.insta_btn a{
	color: #fff;
	text-decoration: none;
}

.insta_btn:hover{
	background-color: #999;
}