@charset "utf-8";
.notes {
	font-size: 1rem;
	line-height: 1.5;
	letter-spacing: 0.1em;
}
.w1000 { max-width: 1000px;}
.headline {
	font-size: 4rem;
	line-height: 1.4;
	letter-spacing: 0.06em;
	margin-bottom: 20px;
}
/* */
@media only screen and (min-width: 768px) {
	.adj_height{height: 598px;}
}
/* */

.block_head .inner { max-width: 1130px;}
.block_head .cont { display: flex;}
.block_head .desc {
	/*padding: 0 10px 0 15.5%;*/
	/*padding: 0 10px 0 7.5%;*/
  padding: 0 7.5% 0 0;
	padding: 0 2.5% 0 0;
	width: 51.5%;
}
.block_head.maplayout .desc {
	  padding: 0 5.5% 0 0;
	width: 47.5%;
}
.block_head .img { width: 48.5%;}
.block_head .img img { width: 100%;}
.block_head .img02 img { /*max-width: 165%; width: 165%;*/max-width: 495px; width: 100%; height: 598px;}
.block_head.maplayout .img02 img { max-width: 620px; width: 100%; height: 800px;}
.block_head .img figure {
	margin: 0 calc(-1 * (100vw - 1100px) / 2 - 8px) 0 0;
	width: calc(100% + (100vw - 1100px) / 2 - 8px);
}
.block_head .ttl {
	color: #47b9d7;
	font-size: 2.6rem;
	line-height: 1.8;
	letter-spacing: 0.2em;
	margin: 12% 0 30px;
}
.block_head .txt {
	font-size: 1.4rem;
	line-height: 2.1;
	letter-spacing: 0.1em;
}
.block_head.reverse .cont { flex-direction: row-reverse;}
.block_head.reverse .img figure { margin: 0 0 0 calc(-1 * (100vw - 1100px) / 2);}
.block_head.reverse .ttl { color: #374152;}
.block_head.reverse .headline { text-align: right;}
.block_head.reverse .desc { padding: 0 0 0 12.5%;}
@media only screen and (max-width: 1130px) {
	.block_head .img figure {
		margin: 0 -15px 0 0;
		width: calc(100% + 15px);
	}
    .block_head.reverse .img figure { margin: 0 0 0 -15px;}
	.block_head .ttl { margin: 10px 0 20px;}
}
@media only screen and (max-width: 1024px) {
	.block_head .ttl {
		font-size: 1.8rem;
		margin: 0 0 10px;
	}
	.block_head .txt {
		font-size: 1.2rem;
		letter-spacing: 0.01em;
	}
    .block_head .desc { padding: 0 10px 0 10%;}
    .block_head.reverse .desc { padding: 0 0 0 10%;}
}
@media only screen and (max-width: 767px) {
	.notes { letter-spacing: 0.05em;}
	.headline {
		font-size: 2.4rem;
		text-align: center;
		margin-bottom: 10px;
	}
	.block_head .cont { display: block;}
	.block_head .desc, .block_head.maplayout .desc {
		text-align: center;
		margin-bottom: 20px;
		padding: 0;
		width: 100%;
	}
	.block_head .img { width: 100%;}
    .block_head .img figure { 
        width: calc(100% + 30px);
        margin-left: -15px;
        margin-right: -15px;
    }
	.block_head.reverse .headline { text-align: center;}
  .block_head .img02 img { max-width: 100%; width: 100%;}
}
/* sec_train */
.sec_access { padding: 130px 0 165px;}
.sec_train .notes { margin-top: 110px;}
.train_image {
	margin: 175px auto 240px;
	max-width: 920px;
}
.train_info.row {
	margin: 0 -24px 0;
	padding-left: 24px;
}
.train_info.row > [class^="col"] { padding: 0 24px;}
.train_info.row [class^="col"]:nth-child(n + 5) { margin-top: 50px;}
.train_station.row {
	margin: 60px -5px 0;
	padding-left: 20px;
}
.train_station.row > [class^="col"] { padding: 0 24px;}
.train_station.row > [class^="col"]:nth-child(n + 4) { margin-top: 0;}
.info_image {
	position: relative;
	margin-bottom: 5px;
}
.info_wrapper { text-align: center;}
.info_arrow {
	margin: 0 auto 55px;
	width: 18px;
}
.info_ttl {
	color: #4b94aa;
	position: absolute;
	top: -35px;
	left: -30px;
	z-index: 2;
	font-size: 3.6rem;
	line-height: 1.3;
	letter-spacing: 0.1em;
	overflow: hidden;
	writing-mode: tb-rl;
	-ms-writing-mode: tb-rl;
}
.info_place {
	font-size: 2.4rem;
	line-height: 1.5;
	letter-spacing: 0.2em;
}
.info_time {
	font-size: 3.8rem;
	font-weight: lighter;
	line-height: 1.3;
	letter-spacing: 0.1em;
}
.info_time .md {
	font-size: 48%;
	letter-spacing: 0.1em;
}
.info_time .lg { font-size: 58%;}
.info_time .sm {
	font-size: 43%;
	letter-spacing: 0.1em;
}
.info_detail{
  text-align: center;
}
.info_time .sm .ss { font-size: 63%;}
.info_estimate,
.info_estimate small,
.info_name { letter-spacing: 0.1em;}
.info_name { font-size: 2rem; font-weight: lighter;}
.info_estimate {
	font-size: 3rem;
	font-weight: lighter;
	line-height: 1.2;
}
.info_estimate small { font-size: 48%;}
.info_estimate .md { font-size: 59%;}
.info_text {
	font-size: 1.2rem;
	font-weight: lighter;
	line-height: 1.5;
	letter-spacing: 0.04em;
	margin-top: 10px;
}
.info_distance {
	font-size: 3.4rem;
	font-weight: lighter;
	line-height: 1.3;
	text-align: center;
	margin-top: 25px;
}
.info_distance .sm { font-size: 36%;}
.info_distance small { font-size: 48%;}
.info_distance .md { font-size: 53%;}
@media only screen and (max-width: 1024px) {
	.sec_access {
		overflow: hidden;
		padding: 100px 0 100px !important;
	}
	.train_image { margin: 100px auto 100px;}
	.info_text {
		font-size: 0.9rem;
		letter-spacing: 0;
		margin-top: 5px;
	}
	.info_time {
		font-size: 3.4rem;
		letter-spacing: 0;
	}
	.info_distance {
		font-size: 2.8rem;
		margin: 20px -15px 0;
	}
	.info_ttl {
		top: -25px;
        left: -25px;
        font-size: 2.6rem;
	}
	.train_station.row {
		margin: 100px -5px 0;
		padding-left: 0;
	}
	.sec_train .notes { margin-top: 100px;}
	.info_arrow {
		margin: 0 auto 30px;
		width: 15px;
	}
}
@media only screen and (max-width: 767px) {
	.sec_access { padding: 60px 0 60px !important;}
	.train_image { margin: 0 auto 100px;}
	.train_info.row { margin: 0 -20px 40px;}
	.train_info.row > [class^="col"] { padding: 0 20px;}
	.info_place {
		font-size: 2rem;
		letter-spacing: 0.1em;
	}
	.info_time { font-size: 2.8rem;}
	.info_detail { text-align: center;}
	.info_name { font-size: 1.6rem;}
	.info_estimate {
		font-size: 2.4rem;
		text-align: center;
	}
	.info_image { margin-bottom: 10px;}
	.info_estimate small { font-size: 1.4rem;}
	.train_info.row > [class^="col"]:nth-child(n + 3) { margin-top: 60px;}
	.train_station.row { margin: 60px -5px 0;}
	.train_station.row > [class^="col"]:nth-child(n + 3) { margin-top: 30px;}
	.sec_train .notes { margin-top: 40px;}
}
/* sec_airport */
.sec_airport { padding: 130px 0 165px;}
.sec_airport { padding: 130px 0 50px;}
.airport_block { overflow: hidden;}
.airport_block .inner { max-width: 1165px;}
.airport_list.row { margin: 125px -40px 75px;}
.airport_list.row > [class^="col"] { padding: 0 40px;}
@media only screen and (max-width: 1024px) {
	.airport_list.row { margin: 100px -15px 70px;}
	.airport_list.row > [class^="col"] { padding: 0 15px;}
	.airport_list.row > [class^="col"] + [class^="col"] { margin-top: 30px;}
	.airport_list.row { margin: 40px -15px 40px;}
}
@media only screen and (max-width: 767px) {
}
/* sec_car */
.sec_car { padding: 190px 0 215px;}
.sec_car .notes { margin-top: 100px;}
.car_image {
	margin: 100px auto 195px;
	max-width: 820px;
}
.departure_list { margin-bottom: 5px;}
.departure_list .departure_ttl {
	border: 1px solid #d7dad5;
	color: #d7dad5;
	font-size: 1.4rem;
	letter-spacing: 0.1em;
	text-align: center;
	margin-bottom: 10px;
	padding: 5px;
}
.departure_list .departure_txt {
	color: #d7dad5;
	font-size: 1.4rem;
	line-height: 1.8;
	letter-spacing: 0.1em;
	text-align: center;
}
.departure_list .departure_txt .md { font-size: 143%;}
.departure_list .departure_txt .lg { font-size: 186%;}
.departure_list .departure_txt .sm { font-size: 129%;}
@media only screen and (max-width: 1024px) {
	.car_image {
		margin: 100px auto 100px;
		max-width: 820px;
	}
	.departure_list .departure_txt {
		font-size: 1.2rem;
		line-height: 1.6;
	}
}
@media only screen and (max-width: 767px) {
	.car_image { margin: 40px auto 40px;}
	.departure_list.row > [class^="col"] + [class^="col"] { margin-top: 30px;}
	.sec_car .notes { margin-top: 40px;}
}
.pic_cap02.sub {
    right: -50px;
}
@media only screen and (max-width: 767px) {
	.pic_cap02.sub {
    right: 20px;
}
}
.foot_caption a {color: #333;}