/* ===========================================
Access
=============================================*/

#main {
	padding-bottom: 0;
}

#access .tab-contents {
	opacity: 0;
}

#access .tab-contents .inner > h2 {
	font-weight: normal;
	text-align: center;
}

#access .tab-contents .inner > h3 {
	font-weight: normal;
	text-align: center;
}

#access .tab-contents hr {
	border-top: 1px solid #e6e6e6;
}

#access .tab-contents .inner > i {
	width: 100%;
	display: block;
}

#access .tab-contents .inner > i img {
	width: 100%;
}

#access #access-tabs {
	/* border-bottom: 1px solid #e6e6e6; */
	text-align: center;
}

#access #access-tabs li.current {
	/* pointer-events: none; */
}

#access #access-tabs li a {
	display: block;
}

#access-content {
	padding-bottom: 100px;
}

#access-content .map-link {
	font-family: "Helvetica Neue", Helvetica, Arial, "Hiragino Kaku Gothic ProN", "游ゴシック体", "Yu Gothic", YuGothic, Meiryo, sans-serif;
}

#access-content .map-link a:link,
#access-content .map-link a:visited {
	text-decoration: underline;
}

#access-content .map-link a:hover,
#access-content .map-link a:active {
	text-decoration: none;
	opacity: 1;
}

#access-content .inner h3 {
	font-weight: normal;
}

#access-content .train-access-data {
	border: 1px solid #e6e6e6;
	position: relative;
}
	
#access-content .train-access-data h4 {
	font-weight: normal;
	text-align: left;
}
	
#access-content .train-access-data p {
	font-family: "Helvetica Neue", Helvetica, Arial, "Hiragino Kaku Gothic ProN", "游ゴシック体", "Yu Gothic", YuGothic, Meiryo, sans-serif;
}

#access-content .plane-access-data {
	border: 1px solid #e6e6e6;
	text-align: left;
	position: relative;
}

#access-content .plane-access-data h4 {
	font-weight: normal;
}

#access-content .plane-access-data p {
	font-family: "Helvetica Neue", Helvetica, Arial, "Hiragino Kaku Gothic ProN", "游ゴシック体", "Yu Gothic", YuGothic, Meiryo, sans-serif;
}

#access-content .attention {
	background: #f0f0f0;
	text-align: left;
}

#access-content .attention a:link,
#access-content .attention a:visited {
	text-decoration: underline;
}

#access-content .attention a:hover,
#access-content .attention a:active {
	text-decoration: none;
	opacity: 1;
}

#access-content .attention li {
	font-family: "Helvetica Neue", Helvetica, Arial, "Hiragino Kaku Gothic ProN", "游ゴシック体", "Yu Gothic", YuGothic, Meiryo, sans-serif;
	padding-left: 1em;
}

#access-content .attention li:before {
	content: "※";
	margin-left: -1em;
}

#access .map-wrapper {
	width: 100%;
	position: relative;
}

#access .map-wrapper .map {
	height: 100%;
	position: relative;
	z-index: 1;
}

#access .map-wrapper .map i {
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 1;
}

#access .map-wrapper .map i img {
	width: 100%;
}

#access .btn-map-link {
	font-family: "Helvetica Neue", Helvetica, Arial, "Hiragino Kaku Gothic ProN", "游ゴシック体", "Yu Gothic", YuGothic, Meiryo, sans-serif;
	text-align: center;
}

#access .map-wrapper .list .block h3 {
	font-weight: normal;
	position: relative;
}

#access .map-wrapper .list .block .btn-pdf a {
	border: 1px solid #d2d2d2;
	display: block;
	text-decoration: none;
}

#access .map-wrapper .list .block .btn-pdf a:hover,
#access .map-wrapper .list .block .btn-pdf a:active {
	/* background: #000;
	color: #FFF; */
}

#access .map-wrapper .list .block i {
	background: #000;
	font-style: normal;
	text-align: center;
	color: #FFF;
	border-radius: 50%;
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 0;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

#access .map-wrapper .list .block li {
	position: relative;
}

#access .map-wrapper .list .block .category span {
	background: #000;
	font-family: "Helvetica Neue", Helvetica, Arial, "Hiragino Kaku Gothic ProN", "游ゴシック体", "Yu Gothic", YuGothic, Meiryo, sans-serif;
	line-height: 1;
	color: #FFF;
	display: inline-block;
}


/* ===========================================
PC
=============================================*/

@media screen and (min-width:960px) {
	
	#access #access-tabs {
		
	}
	
	#access #access-tabs li {
		height: 64px;
		font-size: 1.4rem;
		line-height: 64px;
		margin: 0 30px;
		display: inline-block;
	}
	
	#access #access-tabs li.current.hover {
		border-bottom: none;
	}
	
	#access #access-tabs li.current {
		height: 60px;
		border-bottom: 4px solid #000;
	}
	
	#access #access-tabs li.current.hover a:hover,
	#access #access-tabs li a:hover {
		text-decoration: none;
	}
	
	#access-content .gmap {
		width: 100%;
		height: 400px;
	}
	
	#access-content .inner {
		width: 65.625%;
		max-width: 672px;
		text-align: center;
		margin: 0 auto;
		overflow: hidden;
	}
	
	#access-content .map-link {
		font-size: 1.4rem;
		margin-top: 30px;
	}
	
	#access-content .address {
		font-size: 2.0rem;
		line-height: 1.6;
		margin-top: 38px;
	}
		
	#access-content .address .name {
		font-size: 2.4rem;
		display: inline-block;
		margin-bottom: 8px;
	}
	
	#access-content .address .zip-code {
		font-size: 1.6rem;
	}
	
	#access-content .inner h3 {
		font-size: 3.2rem;
		margin-top: 120px;
	}
	
	#access-content .inner .lead {
		font-size: 1.8rem;
		line-height: 1.7777;
		margin-top: 30px;
	}
	
	#access-content .train-access-data {
		padding: 30px 230px 30px 30px;
		margin-top: 32px;
	}
	
	#access-content .train-access-data + .train-access-data {
		margin-top: 20px;
	}
	
	#access-content .train-access-data h4 {
		font-size: 2.0rem;
		line-height: 1.4;
	}
	
	#access-content .train-access-data p {
		font-size: 1.4rem;
		position: absolute;
		top: 50%;
		right: 30px;
		-webkit-transform: translateY( -50% );
		transform: translateY( -50% );
	}
	
	#access-content .plane-access-data {
		padding: 30px;
		margin-top: 32px;
	}
	
	#access-content .plane-access-data + .train-access-data {
		margin-top: 20px;
	}
	
	#access-content .plane-access-data h4 {
		font-size: 2.0rem;
		line-height: 1.4;
	}
	
	#access-content .plane-access-data p {
		font-size: 1.4rem;
		line-height: 1.7142;
		margin-top: 12px;
	}
	
	#access-content .attention {
		padding: 32px;
		margin-top: 32px;
	}
	
	#access-content .attention li {
		font-size: 1.4rem;
		line-height: 1.7142;
	}
	
	#access .map-wrapper {
		height: calc( 100vh - 130px );
		background: #f0f0f0;
		overflow: hidden;
	}
	
	#access .map-wrapper .map {
		width: calc( 100% - 352px );
	}
	
	#access .map-wrapper .map .btn {
		position: absolute;
		top: 20px;
		left: 20px;
		z-index: 2;
	}
	
	#access .map-wrapper .map .btn li {
		width: 32px;
		height: 32px;
		background: #000;
		margin-bottom: 2px;
		position: relative;
		cursor: pointer;
	}
	
	#access .map-wrapper .map .btn li:before {
		content: "";
		display: block;
		position: absolute;
		width: 12px;
		height: 2px;
		background: #FFF;
		top: 50%;
		left: 50%;
		-webkit-transform: translate( -50%, -50% );
	}
	
	#access .map-wrapper .map .btn li.plus:after {
		content: "";
		display: block;
		position: absolute;
		width: 2px;
		height: 12px;
		background: #FFF;
		top: 50%;
		left: 50%;
		-webkit-transform: translate( -50%, -50% );
	}
	
	#access .map-wrapper .map .btn li:hover:before,
	#access .map-wrapper .map .btn li:hover:after {
		background: #7a7a7a;
	}
	
	#access .map-wrapper .map i {
		-webkit-transform: scale(0.5);
		transform: scale(0.5);
	}
	
	#access #guide-content .map-wrapper .map i {
		width: 1000px;
		height: 1000px;
		margin: -500px 0 0 -500px;
	}
	
	#access #city-content .map-wrapper .map i {
		width: 1338px;
		height: 1080px;
		margin: -540px 0 0 -669px;
	}
	
	#access .btn-map-link {
		display: none;
	}
	
	#access .map-wrapper .list {
		width: 336px;
		height: calc( 100% - 16px );
		background: #FFF;
		position: absolute;
		top: 0;
		right: 0;
		margin: 8px;
		overflow: hidden;
		z-index: 2;
	}
	
	#access .map-wrapper .list .block {
		padding: 20px 20px 32px 20px;
	}
	
	#access .map-wrapper .list .block.no-btn {
		padding: 20px;
	}
	
	#access .map-wrapper .list .block + .block {
		border-top: 1px solid #e6e6e6;
	}
	
	#access .map-wrapper .list .block h3 {
		font-size: 2.0rem;
		line-height: 1.4;
		margin: 6px 0 15px 0;
		float: left;
	}
	
	#access .map-wrapper .list .block h3.icon {
		padding-left: 44px;
	}
	
	#access .map-wrapper .list .block.no-btn h3 {
		margin-bottom: 0;
	}
	
	#access .map-wrapper .list .block .btn-pdf {
		float: right;
	}
	
	#access .map-wrapper .list .block .btn-pdf a {
		font-size: 1.2rem;
		padding: 12px;
	}
	
	#access .map-wrapper .list .block i {
		width: 32px;
		height: 32px;
		font-size: 1.6rem;
		line-height: 33px;
	}
	
	#access #guide-content .map-wrapper .list .block ul {
		clear: both;
		overflow: hidden;
	}
	
	#access #guide-content .map-wrapper .list .block li {
		font-size: 1.6rem;
		padding-left: 44px;
		margin-top: 26px;
	}
	
	#access #city-content .map-wrapper .list .block li {
		font-size: 1.6rem;
		padding-left: 44px;
		margin-top: 34px;
	}
	
	#access #city-content .map-wrapper .list .block li:first-child {
		margin-top: 10px;
	}
	
	#access .map-wrapper .list .block li .category span,
	#access .map-wrapper .list .block h3 .category span {
		font-size: 1.0rem;
		padding: 6px 8px;
		margin: 6px 6px 0 0;
	}
	
	#access .map-wrapper .list .block h3 .category {
		/* display: none; */
	}
	
}


/* ===========================================
SP
=============================================*/

@media screen and (max-width:959px) {
	
	#access #access-tabs {
		text-align: left;
		padding: 18px 0;
	}
	
	#access #access-tabs ul {
		width: 84%;
		margin: 0 auto;
	}
	
	#access #access-tabs li {
		width: 50%;
		height: 52px;
		font-size: 1.5rem;
		display: inline-block;
		box-sizing: border-box;
	}
	
	#access #access-tabs li span {
		padding: 5px 0;
		display: inline-block;
		margin-top: 16px;
	}
	
	#access #access-tabs li.current.hover span {
		border-bottom: none;
	}
	
	#access #access-tabs li.current span {
		border-bottom: 3px solid #000;
	}
	
	#access #access-tabs li.current.hover a:hover,
	#access #access-tabs li a:hover {
		text-decoration: none;
	}
	
	#access #access-tabs li span a {
		display: block;
	}
	
	#access-content {
		padding-bottom: 60px;
	}
	
	#access-content .gmap {
		width: 100%;
		height: 211px;
	}
	
	#access-content .inner {
		width: 84%;
		text-align: center;
		margin: 0 auto;
		overflow: hidden;
	}
	
	#access-content .map-link {
		font-size: 1.2rem;
		margin-top: 20px;
	}
	
	#access-content .address {
		font-size: 1.4rem;
		line-height: 1.714;
		margin-top: 30px;
	}
	
	#access-content .address .name {
		font-size: 1.8rem;
	}
	
	#access-content .inner h3 {
		font-size: 2.4rem;
		margin-top: 80px;
	}
	
	#access-content .inner .lead {
		font-size: 1.4rem;
		line-height: 1.7142;
		margin-top: 24px;
	}
	
	#access-content .train-access-data {
		padding: 30px;
		margin-top: 26px;
	}
	
	#access-content .train-access-data + .train-access-data {
		margin-top: 15px;
	}
	
	#access-content .train-access-data h4 {
		font-size: 1.6rem;
		line-height: 1.5;
	}
	
	#access-content .train-access-data p {
		font-size: 1.2rem;
		text-align: right;
		margin-top: 10px;
	}
	
	#access-content .plane-access-data {
		padding: 30px;
		margin-top: 26px;
	}
	
	#access-content .plane-access-data + .train-access-data {
		margin-top: 15px;
	}
	
	#access-content .plane-access-data h4 {
		font-size: 1.8rem;
		line-height: 1.5;
	}
	
	#access-content .plane-access-data p {
		font-size: 1.2rem;
		line-height: 1.6666;
		margin-top: 16px;
	}
	
	#access-content .attention {
		padding: 16px;
		margin-top: 26px;
	}
	
	#access-content .attention li {
		font-size: 1.2rem;
		line-height: 1.666;
	}
	
	#access .map-wrapper {
		
	}
	
	#access #guide-content .map-wrapper .map {
		width: 100%;
		height: 420px;
		background: #f0f0f0;
		overflow: hidden;
	}
	
	#access #city-content .map-wrapper .map {
		width: 100%;
		height: 314px;
		background: #f0f0f0;
		overflow: hidden;
	}
	
	#access .map-wrapper .map .btn {
		display: none;
	}
	
	#access .map-wrapper .map i {
		-webkit-transform: translate(0,0) scale(1)!important;
		transform: translate(0,0) scale(1)!important;
		pointer-events: none;
	}
	
	#access #guide-content .map-wrapper .map i {
		width: 420px;
		height: 420px;
		margin: -210px 0 0 -210px;
	}
	
	#access #city-content .map-wrapper .map i {
		width: 389px;
		height: 314px;
		margin: -157px 0 0 -210px;
	}
	
	#access .btn-map-link {
		font-size: 1.2rem;
		margin-top: 20px;
	}
	
	#access .btn-map-link a {
		text-decoration: underline;
	}
	
	#access .map-wrapper .list {
		
	}
	
	#access #guide-content .map-wrapper .list .block {
		padding: 40px 8% 90px 8%;
		position: relative;
	}
	
	#access #guide-content .map-wrapper .list .block.no-btn {
		padding: 40px 8%;
	}
	
	#access #city-content .map-wrapper .list .block {
		padding: 40px 8%;
		position: relative;
	}
	
	#access .map-wrapper .list .block + .block {
		border-top: 1px solid #e6e6e6;
	}
	
	#access .map-wrapper .list .block h3 {
		font-size: 1.8rem;
		line-height: 1.555;
		margin: 6px 0 15px 0;
	}
	
	#access .map-wrapper .list .block h3.icon {
		padding-left: 32px;
	}
	
	#access .map-wrapper .list .block.no-btn h3 {
		margin-bottom: 0;
	}
	
	#access .map-wrapper .list .block .btn-pdf {
		width: 84%;
		text-align: center;
		position: absolute;
		bottom: 40px;
		left: 8%;
	}
	
	#access .map-wrapper .list .block .btn-pdf a {
		font-size: 1.2rem;
		padding: 12px;
	}
	
	#access .map-wrapper .list .block i {
		width: 24px;
		height: 24px;
		font-size: 1.2rem;
		line-height: 24px;
	}
	
	#access .map-wrapper .list .block li {
		font-size: 1.4rem;
		border-top: 1px solid #e6e6e6;
		padding: 16px 0 16px 32px;
	}
	
	#access .map-wrapper .list .block li:first-child {
		border-top: none;
	}
	
	#access .map-wrapper .list .block .category {
		position: absolute;
		top: 50%;
		right: 0;
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
	}
	
	#access .map-wrapper .list .block .category span {
		font-size: 1.0rem;
		padding: 6px 8px;
		margin: 6px 6px 0 0;
	}
	
}
