@charset "utf-8";
.notes {
	font-size: 1rem;
	line-height: 1.6;
	letter-spacing: 0.05em;
	margin-top: 10px;
}
@media screen and (max-width: 767px) {
	.mb30_sp { margin-bottom: 30px;}
}
.ttl_line {
	border-bottom: 1px solid;
	color: #4a655b;
	position: relative;
	font-size: clamp(1.4rem, 0.95238095238095238095vw, 1.6rem);
	line-height: 1.6;
	letter-spacing: 0.1em;
	margin-bottom: clamp(2rem, 1.7857142857142857143vw, 3rem);
	padding-bottom: 10px;
}
.ttl_line .md { font-size: 125%;}
.ttl_line .lg {
	font-size: 150%;
	line-height: 1;
}
.ttl_line .ver { padding-left: clamp(5px, 0.5952380952380952381vw, 10px);}
.ttl_line.icon_leaf { padding-left: clamp(30px, 2.3809523809523809524vw, 40px);}
.ttl_line.icon_leaf::before {
	background: url(../imgs/icon_leaf02.svg) no-repeat center center/contain;
	content: "";
	display: inline-block;
	position: absolute;
	left: 0;
	height: 22px;
	width: 20px;
}
.info_text {
	font-size: clamp(1.1rem, 0.71428571428571428571vw, 1.2rem);
	line-height: 1.5;
	letter-spacing: 0.01em;
}
.info_estimate {
	font-size: clamp(1.4rem, 0.95238095238095238095vw, 1.6rem);
	line-height: 1.4;
	letter-spacing: 0.01em;
}
.info_estimate > * { display: inline-block;}
.info_estimate .num {
	font-size: 237%;
	line-height: 0.8;
}
.info_estimate .num .num_char { font-size: 52.8%;}
.info_estimate .large {
	font-size: 150%;
	line-height: 1;
}
.info_estimate .medium { font-size: 112%;}
.info_estimate .small { font-size: 87.5%;}
.info_time {
	font-size: clamp(1.4rem, 1.1904761904761904762vw, 2rem);
	line-height: 1.4;
	letter-spacing: 0.01em;
}
.info_time > * { display: inline-block;}
.info_time .sm { font-size: 75%;}
.info_time .md { font-size: 80%;}
.info_time .lg { font-size: 140%;}
.info_time .xl {
	font-size: 210%;
	font-size: 160%;
	line-height: 0.8;
}
/* sec_access */
.sec_access { 
	padding: clamp(60px, 7.1428571428571428571vw, 120px) 0 clamp(60px, 7.1428571428571428571vw, 120px);
	color: #333333;
}
/* .sec_train */
.train_rank {
	margin: 0 auto clamp(40px, 5.3571428571428571429vw, 90px);
	max-width: 570px;
}
.train_rank .box {
	border: 1px solid #829e74;
	padding: 10px;
}
.train_rank .cont {
	background-color: #cddad4;
	padding: 15px 15px 15px 25px;
}
.train_rank .rank_block {
	display: grid;
	grid-template-columns: 55% auto;
	gap: 15px;
}
.train_rank .rank_ttl { margin-bottom: clamp(15px, 1.1904761904761904762vw, 20px);}
.train_rank .rank_ttl .ttl {
	color: #4a655b;
	position: relative;
	font-size: clamp(1.6rem, 1.1904761904761904762vw, 2rem);
	line-height: 1.3;
	margin-bottom: 10px;
	padding-left: clamp(30px, 2.0833333333333333333vw, 35px);
}
.train_rank .rank_ttl .ttl::before {
	background: url(../imgs/icon_leaf02.svg) no-repeat center center/contain;
	content: "";
	display: inline-block;
	position: absolute;
	left: clamp(2px,0.0029761904761904761905vw, 5px);
	height: 22px;
	width: 20px;
}
.train_rank .rank_ttl .ttl_sub {
	font-size: clamp(1.4rem, 1.0714285714285714286vw, 1.8rem);
	line-height: 1.3;
	margin-bottom: 10px;
}
.train_rank .rank_txt {
	font-size: clamp(1.2rem, 0.77380952380952380952vw, 1.3rem);
	line-height: 1.8;
	letter-spacing: 0.1em;
}
.train_rank .rank_tbl {
	border-collapse: collapse;
	border-spacing: 0;
	width: 100%;
}
.train_rank .rank_tbl tbody td:first-child { width: 60px;}
.train_rank .rank_tbl tbody tr td {
	border: 1px solid #231815;
	background-color: #fff;
	color: #231815;
	font-size: clamp(1.2rem, 0.77380952380952380952vw, 1.3rem);
	letter-spacing: 0.05em;
	padding: 7px 5px;
}
.train_rank .rank_tbl tbody tr td:first-child { text-align: center;}
.train_rank .rank_tbl tbody tr td:last-child { padding: 7px 5px 7px 20px;}
.train_rank .rank_tbl tbody tr.current td {
	background-color: #6a8079;
	position: relative;
	font-size: clamp(1.6rem, 1.0714285714285714286vw, 1.8rem);
	line-height: 1.3;
}
.train_rank .rank_tbl tbody tr.current td:nth-child(2) { color: #fff;}
.train_rank .rank_tbl tbody tr.current td .num { position: relative;}
.train_rank .rank_tbl tbody tr.current td:first-child:before {
	background: url(../imgs/icon_rank.svg) no-repeat center center / contain;
	content: "";
	position: absolute;
	top: -4px;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: clamp(35px, 2.202380952380952381vw, 37px);
}
.train_rank .notes { padding-left: clamp(0px, 0.89285714285714285714vw, 15px);}
.train_block {
	padding-bottom: clamp(50px, 4.1666666666666666667vw, 70px);
}
.train_block .gallery_list {
	grid-template-columns: 1fr;
	margin-bottom: clamp(30px, 3.5714285714285714286vw, 60px);
	gap: clamp(25px, 1.7857142857142857143vw, 30px);
}
.train_block .gallery_list .box { margin-bottom: clamp(10px, 0.5952380952380952381vw, 10px);}
.train_block .gallery_list .desc { padding: 0 !important;}
.train_list .item {
	border-bottom: 1px solid #333333;
	padding: clamp(10px, 0.89285714285714285714vw, 15px) 0;
}
.train_list.bdr_none .item {
	border-bottom: none;
	padding: 0;
}
.train_minami {
	margin: auto;
	max-width: 1070px;
}
.train_minami .ttl_line { margin-bottom: clamp(20px, 2.3809523809523809524vw, 40px);}
.train_minami .gallery_list {
	column-gap: 10px;
	margin-top: clamp(30px, 2.9761904761904761905vw, 50px);
	row-gap: clamp(20px, 1.7857142857142857143vw, 30px);
}
.train_minami .gallery_list .cont { top: 5px;}
.train_minami .gallery_list .cont .ttl { letter-spacing: 0;}
.train_minami .gallery_list .desc { padding: 0 !important;}
@media screen and (min-width: 768px) {
	.train_block .col-md-7 {
		-ms-flex: 0 0 52.8%;
		flex: 0 0 52.8%;
		max-width: 52.8%;
	}
}
@media screen and (max-width: 767px) {
	.train_rank .rank_block { grid-template-columns: 1fr;}
	.train_rank .cont { padding: 15px;}
}
/* gallery_list */
.gallery_list {
	column-gap: clamp(20px, 1.1904761904761904762vw, 20px);
	display: grid;
	position: relative;
	flex-wrap: wrap;
	grid-template-columns: repeat(3, 1fr);
	row-gap: clamp(30px, 5.0595238095238095238vw, 85px);
}
.gallery_list .box {
	position: relative;
	margin-bottom: clamp(10px, 1.1904761904761904762vw, 20px);
	overflow: hidden;
}
.gallery_list .cont {
	position: absolute;
	top: clamp(10px, 0.89285714285714285714vw, 15px);
	right: clamp(15px, 1.7857142857142857143vw, 30px);
	z-index: 1;
}
.gallery_list .cont .ttl {
	color: #fff;
	font-size: clamp(3rem, 2.9761904761904761905vw, 5rem);
	line-height: 1.2;
}
.gallery_list .box .img img { transition: transform 1.4s cubic-bezier(0.23, 1, 0.32, 1);}
.gallery_list .box:hover .img img { transform: scale(1.1);}
.gallery_list .item:nth-child(3n + 1) .desc { padding-left: clamp(0px, 2.9761904761904761905vw, 50px);}
@media screen and (max-width: 767px) {
	.gallery_list { grid-template-columns: 1fr;}
	.gallery_list .item:nth-child(3n + 1) .desc,
	.gallery_list .desc {
		padding: 0 15px;
	}
}
/* sec_shinkansen */
.sec_shinkansen { color: #fff;}
.shinkansen_img {
	margin: clamp(0px, 4.7619047619047619048vw, 80px) auto clamp(60px, 7.1428571428571428571vw, 120px);
	max-width: 815px;
}
.shinkansen_station {
	margin: auto;
	max-width: 1030px;
}
.sec_shinkansen .sec_head .ttl { color: #c1e4d2;}
/* .sec_bicycle */
.sec_bicycle { overflow: hidden;}
.bicycle_map {
	max-width: 1005px;
	margin: clamp(50px,7.1428571428571428571vw,120px) auto clamp(50px,13.690476190476190476vw,230px);
}
.bicycle_text_box .title01 {
	border-bottom: 1px solid #4a655b;
	display: flex;
	flex-direction: column;
	font-size: clamp(2rem, 1.54761905vw, 2.6rem);
	margin-bottom: 2rem;
	padding-bottom: 0.5rem;
}
.bicycle_text_box .title01 .en {
	color: rgba(137, 158, 149, 0.7);
	font-size: 77%;
}
.bicycle_text_box .title01 .jp { color: #4a655b;}
.bicycle_text_box .title01 .jp small { font-size: 77%;}
.bicycle_text_box .title02 { font-size: clamp(1.4rem, 1.07142857vw, 1.8rem);}
.bicycle_text_box .text01 {
	background: url(../imgs/icon_bike.svg) no-repeat left center / 40px 28px;
	font-size: clamp(1.4rem, 0.952380952vw, 1.6rem);
	padding-left: 50px;
}
.bicycle_text_box .text01 .min1 { font-size: 237.5%;}
.bicycle_text_box .text01 .min2 { font-size: 175%;}
.gallery_main .slick-arrow {
	z-index: 10;
	height: 60px;
	width: 60px;
}
.gallery_wrap { margin-bottom: clamp(30px,4.4642857142857142857vw,75px);}
.gallery_main .slick-arrow:before { display: none;}
.gallery_main .slick-prev:hover,
.gallery_main .slick-prev:focus,
.gallery_main .slick-prev {
	background: url(../imgs/icon_prev.png) no-repeat 0 0 / cover;
	left: -30px;
}
.gallery_main .slick-next:hover,
.gallery_main .slick-next:focus,
.gallery_main .slick-next {
	background: url(../imgs/icon_next.png) no-repeat 0 0 / cover;
	right: 40.33333%;
}
.gallery_navs_wrap {
	position: absolute;
	bottom: 0;
	left: calc(58.333333% + 0px);
	z-index: 11;
	width: 100%;
}
.gallery_navs .item {
	outline: none;
	cursor: pointer;
	margin: 0 15px;
}
.gallery_navs .item.slick-current { display: none;}
@media screen and (max-width: 1230px) {
	.gallery_main .slick-arrow {
		height: 40px;
		width: 40px;
	}
	.gallery_main .slick-prev:hover,
	.gallery_main .slick-prev:focus,
	.gallery_main .slick-prev { left: 0;}
	.gallery_main .slick-next:hover,
	.gallery_main .slick-next:focus,
	.gallery_main .slick-next { right: 43.33333%;}
}
@media screen and (max-width: 767px) {
	.bicycle_text_box .text01 {
		background-size: 30px 20px;
		padding-left: 35px;
	}
	.bicycle_text_box { margin-top: 20px;}
	.gallery_navs_wrap {
		position: static;
		margin-top: 20px;
	}
	.gallery_navs .item { margin: 0 5px;}
	.gallery_main .slick-arrow { top: 30%;}
	.gallery_main .slick-next:hover,
	.gallery_main .slick-next:focus,
	.gallery_main .slick-next { right: 0;}
}
/* sec_car */
.sec_car { background-color: #f0f0ed;}
.car_img {
	margin: clamp(0px, 9.2261904761904761905vw, 155px) auto clamp(60px, 8.9285714285714285714vw, 150px);
	max-width: 930px;
}
.car_highway {
	margin: 0 auto clamp(40px, 7.7380952380952380952vw, 130px);
	max-width: 1065px;
}
.car_highway .highway_list {
	column-gap: 10px;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	row-gap: clamp(20px, 1.4880952380952380952vw, 25px);
}
.car_highway .highway_list .txt {
	font-size: clamp(1.2rem, 0.89285714285714285714vw, 1.5rem);
	line-height: 1.4;
}
.car_highway .highway_list .txt > * { display: inline-block;}
.car_highway .highway_list .txt .lg { font-size: 160%;}
.car_highway .highway_list .txt .md { font-size: 120%;}
.car_highway .highway_list .txt .sm { font-size: 94%;}
.car_highway .highway_list .txt .sm .num { font-size: 129%;}
@media screen and (max-width: 767px) {
	.car_highway .highway_list { grid-template-columns: 1fr;}
}