#container.location {
	height: 100%;
	padding-top: 100px;
	width: 100%;
}

@media screen and (max-width: 736px) {
	#container.location {
		padding-top: 60px;
	}
}

#container.location .main-visual {
	background: url(../images/location/image-mainvisual.jpg) no-repeat center center;
	background-size: cover;
	height: 100%;
	position: relative;
	width: 100%;
}

@media screen and (max-width: 736px) {
	#container.location .main-visual {
		background: url(../images/location/image-mainvisual.jpg) no-repeat center center;
		background-size: cover;
		height: auto;
		padding-top: 58.4%;
	}
}

#container.location .main-visual .maincopy {
	position: absolute;
	top: 55%;
	left: 0;
	right: 0;
	margin: 0 auto;
	opacity: 0;
	transform: translateY(-50%);
	transition: all 0.5s ease;
	text-align: center;
}

#container.location .main-visual .maincopy.show {
	opacity: 1;
	top: 53%;
}

#container.location .main-visual .maincopy img {
	height: auto;
	margin: 0 auto;
	width: 40.3%;
}

@media screen and (max-width: 736px) {
	#container.location .main-visual .maincopy img {
		width: 65%;
	}
}

#container.location .headding {
	color: #fff;
	font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'ヒラギノ明朝 Pro', 'Hiragino Mincho Pro', 'HG明朝E', 'ＭＳ Ｐ明朝', 'MS PMincho', 'ＭＳ 明朝', 'MS Mincho', serif;
	margin-bottom: 90px;
	text-align: center;
}

#container.location .headding .en {
	display: block;
	font-size: 36px;
	letter-spacing: 0.3em;
	margin-bottom: 40px;
}

@media screen and (max-width: 736px) {
	#container.location .headding .en {
		font-size: 20px;
		letter-spacing: 0.2em;
		line-height: 1.5;
		margin-bottom: 15px;
	}
}

#container.location .headding .ja {
	display: block;
	font-size: 20px;
	letter-spacing: 0.1em;
}

@media screen and (max-width: 736px) {
	#container.location .headding .ja {
		font-size: 14px;
		letter-spacing: 0;
		line-height: 1.8;
	}
}

#container.location .text {
	color: #fff;
	font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'ヒラギノ明朝 Pro', 'Hiragino Mincho Pro', 'HG明朝E', 'ＭＳ Ｐ明朝', 'MS PMincho', 'ＭＳ 明朝', 'MS Mincho', serif;
	font-size: 16px;
	line-height: 2.5;
	letter-spacing: 0.2em;
	text-align: center;
	text-indent: 0.2em;
}

@media screen and (max-width: 736px) {
	#container.location .text {
		font-size: 14px;
		line-height: 2;
		letter-spacing: 0;
		text-align: justify;
	}
}

section .bg-wrap {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	clip-path: inset(0);
	z-index: -1;
}

section .bg-wrap .bg-image {
	background: url(../images/top/bg-entry.jpg) no-repeat center top;
	background-size: cover;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: -1;
}

@media screen and (max-width: 736px) {
	section .bg-wrap .bg-image {
		background: url(../images/top/bg-entry-sp.jpg) no-repeat center top;
		background-size: cover;
	}
}

/* ---------------------- */
/* message */
/* ---------------------- */

.location-message {
	padding: 55px 0 0;
	position: relative;
}

.location-message .head {
	color: #fff;
	font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'ヒラギノ明朝 Pro', 'Hiragino Mincho Pro', 'HG明朝E', 'ＭＳ Ｐ明朝', 'MS PMincho', 'ＭＳ 明朝', 'MS Mincho', serif;
	font-size: 20px;
	margin-bottom: 60px;
	letter-spacing: 0.4em;
	padding-bottom: 40px;
	position: relative;
	text-align: center;
	text-indent: 0.4em;
}

@media screen and (max-width: 736px) {
	.location-message .head {
		letter-spacing: 0.2em;
		margin-bottom: 50px;
		text-indent: 0.2em;
	}
}

.location-message .head::after {
	background-color: #fff;
	content: '';
	height: 1px;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
	width: 26px;
}

.location-message .copy {
	margin-bottom: 40px;
	text-align: center;
}

.location-message .copy img {
	height: 111px;
	margin: 0 auto;
	width: auto;
}

@media screen and (max-width: 736px) {
	.location-message .copy img {
		height: 86px;
	}
}

.location-message .map {
	background-color: rgba(0,0,0,0.5);
	margin-top: 75px;
	height: auto;
	width: 100%
}

@media screen and (max-width: 736px) {
	.location-message .map {
		margin-top: 55px;
	}
}

/* ---------------------- */
/* area */
/* ---------------------- */

.location-area {
	padding: 95px 0 125px;
	position: relative;
}

@media screen and (max-width: 736px) {
	.location-area {
		padding: 50px 0 70px;
	}
}

.location-area .head {
	color: #fff;
	font-family: 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'ヒラギノ明朝 Pro', 'Hiragino Mincho Pro', 'HG明朝E', 'ＭＳ Ｐ明朝', 'MS PMincho', 'ＭＳ 明朝', 'MS Mincho', serif;
	font-size: 20px;
	margin-bottom: 60px;
	letter-spacing: 0.4em;
	padding-bottom: 40px;
	position: relative;
	text-align: center;
	text-indent: 0.4em;
}

@media screen and (max-width: 736px) {
	.location-area .head {
		letter-spacing: 0.2em;
		margin-bottom: 55px;
		text-indent: 0.2em;
	}
}

.location-area .head::after {
	background-color: #fff;
	content: '';
	height: 1px;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
	width: 26px;
}

.location-area .information-wrap {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: justify;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-bottom: 50px
}

@media screen and (max-width: 736px) {
	.location-area .information-wrap {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		flex-direction: column;
		margin-bottom: 50px
	}
}

.location-area .information-wrap > .wrap {
	width: 48.5%
}

@media screen and (max-width: 1115px) {
	.location-area .information-wrap > .wrap {
		width: 49%
	}
}

@media screen and (max-width: 736px) {
	.location-area .information-wrap > .wrap {
		width: 100%
	}

	.location-area .information-wrap > .wrap:last-child {
		margin-bottom: 0;
	}
}

.location-area .information-wrap > .wrap .list {
	margin-bottom: 35px;
}

@media screen and (max-width: 736px) {
	.location-area .information-wrap > .wrap .list {
		margin-bottom: 25px;
	}
}

.location-area .information-wrap > .wrap .list:last-child {
	margin-bottom: 0;
}

.location-area .information-wrap > .wrap .list .title {
	color: #fff;
	font-family: YakuHanJPs, 'Hiragino Kaku Gothic Pro', MyYuGothicM, Meiryo, sans-serif;
	font-size: 13px;
	font-weight: bold;
	margin-bottom: 10px;
	letter-spacing: 0.03em;
}

.location-area .information-wrap > .wrap .list dl {
	-webkit-box-align: start;
	align-items: flex-start;
	display: -webkit-box;
	display: flex;
}

@media screen and (max-width: 736px) {
	.location-area .information-wrap > .wrap .list dl {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		flex-direction: column;
		margin-bottom: 15px;
	}

	.location-area .information-wrap > .wrap .list dl:last-child {
		margin-bottom: 0
	}
}

.location-area .information-wrap > .wrap .list dl:last-child {
	margin-bottom: 0;
}

.location-area .information-wrap > .wrap .list dl dt {
	color: #fff;
	font-family: YakuHanJPs, 'Hiragino Kaku Gothic Pro', MyYuGothicM, Meiryo, sans-serif;
	font-size: 13px;
	letter-spacing: 0.03em;
	line-height: 2;
	position: relative;
	width: calc(100% - 235px)
}

@media screen and (max-width: 1330px) {
	.location-area .information-wrap > .wrap .list dl dt {
		width: calc(100% - 210px)
	}
}

@media screen and (max-width: 1060px) {
	.location-area .information-wrap > .wrap .list dl dt {
		padding-right: 5px;
	}
}

@media screen and (max-width: 736px) {
	.location-area .information-wrap > .wrap .list dl dt {
		width: 100%;
	}
}

.location-area .information-wrap > .wrap .list dl dt span {
	display: inline-block;
}

.location-area .information-wrap > .wrap .list dl dt span.other {
	display: block;
	padding-left: 30px;
}

.location-area .information-wrap > .wrap .list dl dd {
	color: #fff;
	font-family: YakuHanJPs, 'Hiragino Kaku Gothic Pro', MyYuGothicM, Meiryo, sans-serif;
	font-size: 13px;
	line-height: 2;
	min-width: 235px;
}

@media screen and (max-width: 1330px) {
	.location-area .information-wrap > .wrap .list dl dd {
		min-width: 210px;
	}
}

.location-area .information-wrap > .wrap .list dl dd span {
	display: inline-block;
	font-size: 13px;
}

@media screen and (max-width: 1330px) {
	.location-area .information-wrap > .wrap .list dl dt,
	.location-area .information-wrap > .wrap .list dl dd,
	.location-area .information-wrap > .wrap .list dl dd span {
		font-size: 12px;
		letter-spacing: 0;
	}
}

@media screen and (max-width: 736px) {
	.location-area .information-wrap > .wrap .list dl dt,
	.location-area .information-wrap > .wrap .list dl dd,
	.location-area .information-wrap > .wrap .list dl dd span {
		font-size: 13px;
		letter-spacing: 0.05em;
		line-height: 1.4;
	}
}

.location-area .information-wrap > .wrap .list dl dd .distance {
	min-width: 40px;
	text-align: right;
}

@media screen and (max-width: 1330px) {
	.location-area .information-wrap > .wrap .list dl dd .distance {
		min-width: 35px;
	}
}

@media screen and (max-width: 736px) {
	.location-area .information-wrap > .wrap .list dl dd .distance {
		min-width: auto;
	}
}

.location-area .information-wrap > .wrap .list dl dd .min {
	min-width: 21px;
	text-align: right;
}

@media screen and (max-width: 1330px) {
	.location-area .information-wrap > .wrap .list dl dd .min {
		min-width: 18px;
	}
}

@media screen and (max-width: 736px) {
	.location-area .information-wrap > .wrap .list dl dd .min {
		min-width: auto;
	}
}

@media screen and (max-width: 736px) {
	.location-area .information-wrap > .wrap .list dl dd span.other {
		display: block;
		margin-top: 5px;
		padding-left: 20px;
		line-height: 2.2;
	}
}

.location-area .information-wrap .caution {
	color: #fff;
	font-family: YakuHanJPs, 'Hiragino Kaku Gothic Pro', MyYuGothicM, Meiryo, sans-serif;
	font-size: 12px;
	letter-spacing: 0.05em;
	margin-top: 30px;
	width: 100%;
}

@media screen and (max-width: 736px) {
	.location-area .information-wrap .caution {
		font-size: 12px;
		line-height: 1.5;
	}
}

.location-area .area-wrap {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
}

.location-area .area-wrap .list {
	margin-right: 2%;
	margin-bottom: 30px;
	width: 23.5%
}

@media screen and (max-width: 736px) {
	.location-area .area-wrap .list {
		margin-bottom: 25px;
		margin-right: 3.6%;
		width: 48.2%;
	}
}

.location-area .area-wrap .list:nth-child(4n) {
	margin-right: 0;
}

@media screen and (max-width: 736px) {
	.location-area .area-wrap .list:nth-child(4n) {
		margin-right: 3.6%;
	}
	.location-area .area-wrap .list:nth-child(2n) {
		margin-right: 0;
	}
	.location-area .area-wrap .list:last-child {
		margin-bottom: 0;
	}
}

.location-area .area-wrap .list .image {
	height: auto;
	margin-bottom: 10px;
	width: 100%;
}

@media screen and (max-width: 736px) {
	.location-area .area-wrap .list .image {
		margin-bottom: 5px;
	}
}

.location-area .area-wrap .list .name {
	color: #fff;
	font-family: YakuHanJPs, 'Hiragino Kaku Gothic Pro', MyYuGothicM, Meiryo, sans-serif;
	font-size: 12px;
	letter-spacing: 0.05em;
}

@media screen and (max-width: 736px) {
	.location-area .area-wrap .list .name {
		font-size: 11px;
		line-height: 1.5;
	}
}

.location-area .area-wrap .list .time {
	color: #fff;
	font-family: YakuHanJPs, 'Hiragino Kaku Gothic Pro', MyYuGothicM, Meiryo, sans-serif;
	font-size: 12px;
	letter-spacing: 0.05em;
	margin-top: 5px;
}

@media screen and (max-width: 736px) {
	.location-area .area-wrap .list .time {
		font-size: 11px;
		line-height: 1.6;
		margin-top: 0;
	}
}

.location-area .area-wrap .list .time span {
	display: inline-block;
	font-size: 16px;
	margin: 0 3px;
}

@media screen and (max-width: 736px) {
	.location-area .area-wrap .list .time span {
		font-size: 15px;
	}
}