@charset "utf-8";

/* access */

/* header
----------------------------------------- */
.page-visual {
	background: url(../images/page-visual_sp.jpg) center center no-repeat;
	background-size: cover;
}


/* contents
----------------------------------------- */
#contents {
	margin-top: 55px;
}

/* access-map-area */
.access-map-area {
	margin-bottom: 80px;
}
.access-map-area-ttl {
	font-family: 'Cormorant Garamond', serif;
	font-weight: 700;
	position: relative;
	margin-bottom: 45px;
	padding-bottom: 90px;
	text-align: center;
	font-size: 3.4rem;
	letter-spacing: 0.01em;
	line-height: 1.0;
}
.access-map-area-ttl::after {
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 1px;
	height: 55px;
	background-color: #111;
}
.access-map {
	margin-bottom: 35px;
}
.gmap {
	padding: 0;
}
.gmap iframe {
	width: 100%;
	height: 340px;
	vertical-align: bottom
}
.access-map-address {
	margin-bottom: 40px;
	padding: 0 40px;
	font-size: 1.3rem;
}
.access-map-address .br {
}
.how-to-access-area {
	padding: 0 40px;
}
.how-to-access-area .train-side {
	margin-bottom: 30px;
}
.how-to-access-area .car-side {
}
.how-to-access-ttl {
	margin-bottom: 12px;
	font-size: 1.6rem;
}
.how-to-access-lead {
	font-size: 1.3rem;
	line-height: 2.2;
}

/* directions-area */
.directions-area {
	margin-bottom: 120px;
	padding: 0 40px;
}
.directions-area-ttl {
	position: relative;
	margin-bottom: 40px;
	text-align: center;
	font-size: 1.4rem;
	line-height: 1.0;
}
.directions-area-ttl span {
	display: inline-block;
	position: relative;
}
.directions-area-ttl span::before {
	content: "";
	display: block;
	position: absolute;
	top: 7px;
	left: -40px;
	width: 20px;
	height: 1px;
	background-color: #111;
}
.directions-area-ttl span::after {
	content: "";
	display: block;
	position: absolute;
	top: 7px;
	right: -40px;
	width: 20px;
	height: 1px;
	background-color: #111;
}
.directions-area-list {
}
.directions-area-list li {
	position: relative;
	margin-bottom: 35px;
	padding-bottom: 46px;
}
.directions-area-list li:last-child {
	margin-bottom: 0;
	padding-bottom: 0;
}
.directions-area-list li::after {
	content: "";
	display: block;
	position: absolute;
	width: 0;
	height: 0;
}

.directions-area-list li.direction01::after {
	bottom: 0;
	left: 50%;
	border-style: solid;
	border-width: 16px 6px 0 6px;
	border-color: #e31d24 transparent transparent transparent;
}
.directions-area-list li.direction02::after {
	bottom: 0;
	left: 50%;
	border-style: solid;
	border-width: 16px 6px 0 6px;
	border-color: #e31d24 transparent transparent transparent;
}
.directions-area-list li.direction03::after {
	bottom: 0;
	left: 50%;
	border-style: solid;
	border-width: 16px 6px 0 6px;
	border-color: #e31d24 transparent transparent transparent;
}
.directions-area-list li.direction04::after {
	bottom: 0;
	left: 50%;
	border-style: solid;
	border-width: 16px 6px 0 6px;
	border-color: #e31d24 transparent transparent transparent;
}
.directions-area-list li.direction05::after {
	bottom: 0;
	left: 50%;
	border-style: solid;
	border-width: 16px 6px 0 6px;
	border-color: #e31d24 transparent transparent transparent;
}
.directions-area-list li.direction06::after {
	bottom: 0;
	left: 50%;
	border-style: solid;
	border-width: 16px 6px 0 6px;
	border-color: #e31d24 transparent transparent transparent;
}
.directions-area-list li.direction07::after {
	bottom: 0;
	left: 50%;
	border-style: solid;
	border-width: 16px 6px 0 6px;
	border-color: #e31d24 transparent transparent transparent;
}
.directions-area-list li:last-child {
	margin-bottom: 0;
}
.directions-area-img {
	margin-bottom: 15px;
}
.directions-area-text {
	position: relative;
	padding-left: 40px;
	font-size: 1.3rem;
}
.directions-area-text span {
	font-family: 'Lato', sans-serif;
	font-weight: 700;
	position: absolute;
	top: 0;
	left: 0;
	font-size: 1.5rem;
}

















































/* tablet 560px - 959px */
@media only screen and (min-width: 560px) {

/* header
----------------------------------------- */
.page-visual {
	background: url(../images/page-visual_pc.jpg) center center no-repeat;
	background-size: cover;
}


/* contents
----------------------------------------- */
#contents {
	margin-top: 70px;
}

/* access-map-area */
.access-map-area {
	margin-bottom: 100px;
}
.access-map-area-ttl {
	font-family: 'Cormorant Garamond', serif;
	font-weight: 700;
	position: relative;
	margin-bottom: 55px;
	padding-bottom: 100px;
	text-align: center;
	font-size: 3.6rem;
	letter-spacing: 0.01em;
	line-height: 1.0;
}
.access-map-area-ttl::after {
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 1px;
	height: 60px;
	background-color: #111;
}
.access-map {
	margin-bottom: 35px;
}
.gmap {
	padding: 0;
}
.gmap iframe {
	width: 100%;
	height: 450px;
	vertical-align: bottom
}
.access-map-address {
	margin-bottom: 30px;
	padding: 0 40px;
	font-size: 1.3rem;
}
.access-map-address .br {
	display: none;
}
.how-to-access-area {
	padding: 0 40px;
}
.how-to-access-area .train-side {
	margin-bottom: 30px;
}
.how-to-access-area .car-side {
}
.how-to-access-ttl {
	margin-bottom: 12px;
	font-size: 1.6rem;
}
.how-to-access-lead {
	font-size: 1.3rem;
	line-height: 2.2;
}

/* directions-area */
.directions-area {
	margin-bottom: 180px;
	padding: 0 80px;
}
.directions-area-ttl {
	position: relative;
	margin-bottom: 70px;
	text-align: center;
	font-size: 1.6rem;
	line-height: 1.0;
}
.directions-area-ttl span {
	display: inline-block;
	position: relative;
}
.directions-area-ttl span::before {
	content: "";
	display: block;
	position: absolute;
	top: 8px;
	left: -50px;
	width: 20px;
	height: 1px;
	background-color: #111;
}
.directions-area-ttl span::after {
	content: "";
	display: block;
	position: absolute;
	top: 8px;
	right: -50px;
	width: 20px;
	height: 1px;
	background-color: #111;
}
.directions-area-list {
}
.directions-area-list li {
	position: relative;
	margin-bottom: 55px;
	padding-bottom: 66px;
}
.directions-area-list li:last-child {
	margin-bottom: 0;
	padding-bottom: 0;
}
.directions-area-list li::after {
	content: "";
	display: block;
	position: absolute;
	width: 0;
	height: 0;
}

.directions-area-list li.direction01::after {
	bottom: 0;
	left: 50%;
	border-style: solid;
	border-width: 16px 6px 0 6px;
	border-color: #e31d24 transparent transparent transparent;
}
.directions-area-list li.direction02::after {
	bottom: 0;
	left: 50%;
	border-style: solid;
	border-width: 16px 6px 0 6px;
	border-color: #e31d24 transparent transparent transparent;
}
.directions-area-list li.direction03::after {
	bottom: 0;
	left: 50%;
	border-style: solid;
	border-width: 16px 6px 0 6px;
	border-color: #e31d24 transparent transparent transparent;
}
.directions-area-list li.direction04::after {
	bottom: 0;
	left: 50%;
	border-style: solid;
	border-width: 16px 6px 0 6px;
	border-color: #e31d24 transparent transparent transparent;
}
.directions-area-list li.direction05::after {
	bottom: 0;
	left: 50%;
	border-width: 16px 6px 0 6px;
	border-color: #e31d24 transparent transparent transparent;
}
.directions-area-list li.direction06::after {
	bottom: 0;
	left: 50%;
	border-style: solid;
	border-width: 16px 6px 0 6px;
	border-color: #e31d24 transparent transparent transparent;
}
.directions-area-list li.direction07::after {
	bottom: 0;
	left: 50%;
	border-style: solid;
	border-width: 16px 6px 0 6px;
	border-color: #e31d24 transparent transparent transparent;
}
.directions-area-list li:last-child {
	margin-bottom: 0;
}
.directions-area-img {
	margin-bottom: 22px;
}
.directions-area-text {
	position: relative;
	padding-left: 40px;
	font-size: 1.3rem;
}
.directions-area-text span {
	font-family: 'Lato', sans-serif;
	font-weight: 700;
	position: absolute;
	top: 0;
	left: 0;
	font-size: 1.5rem;
}


} /* tablet end */






















































/* PC 960px - */
@media only screen and (min-width: 960px) {

/* header
----------------------------------------- */
.page-visual {
	background: url(../images/page-visual_pc.jpg) center center no-repeat;
	background-size: cover;
}


/* contents
----------------------------------------- */
#contents {
	margin-top: 120px;
}

/* access-map-area */
.access-map-area {
	max-width: 1040px;
	margin: 0 auto 200px;
	padding: 0 20px;
}
.access-map-area-ttl {
	font-family: 'Cormorant Garamond', serif;
	font-weight: 700;
	position: relative;
	margin-bottom: 70px;
	padding-bottom: 110px;
	text-align: center;
	font-size: 3.8rem;
	letter-spacing: 0.01em;
	line-height: 1.0;
}
.access-map-area-ttl::after {
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 1px;
	height: 60px;
	background-color: #111;
}
.access-map {
	margin-bottom: 30px;
}
.gmap {
	padding: 0;
}
.gmap iframe {
	max-width: 1000px;
	height: 540px;
	vertical-align: bottom
}
.access-map-address {
	margin-bottom: 30px;
	padding: 0;
	font-size: 1.3rem;
}
.access-map-address .br {
	display: none;
}
.how-to-access-area {
	display: flex;
	padding: 0;
}
.how-to-access-area .train-side {
	width: 45%;
	margin: 0 10% 0 0;
}
.how-to-access-area .car-side {
	width: 45%;
}
.how-to-access-ttl {
	margin-bottom: 12px;
	font-size: 1.6rem;
}
.how-to-access-lead {
	font-size: 1.3rem;
	line-height: 2.2;
}

/* directions-area */
.directions-area {
	margin-bottom: 180px;
	padding: 0;
}
.directions-area-ttl {
	position: relative;
	margin-bottom: 70px;
	text-align: center;
	font-size: 1.6rem;
	line-height: 1.0;
}
.directions-area-ttl span {
	display: inline-block;
	position: relative;
}
.directions-area-ttl span::before {
	content: "";
	display: block;
	position: absolute;
	top: 8px;
	left: -50px;
	width: 20px;
	height: 1px;
	background-color: #111;
}
.directions-area-ttl span::after {
	content: "";
	display: block;
	position: absolute;
	top: 8px;
	right: -50px;
	width: 20px;
	height: 1px;
	background-color: #111;
}
.directions-area-list {
	display: flex;
	flex-wrap: wrap;
	width: 75%;
	margin: 0 auto;
}
.directions-area-list li {
	position: relative;
	width: 44%;
	margin: 0 0 115px 0;
	padding: 0;
}
.directions-area-list li:last-child {
	margin-bottom: 0;
	padding-bottom: 0;
}
.directions-area-list li::after {
	content: "";
	display: block;
	position: absolute;
	width: 0;
	height: 0;
}

.directions-area-list li.direction01 {
	order: 1;
	margin-right: 12%;
}
.directions-area-list li.direction02 {
	order: 2;
}
.directions-area-list li.direction03 {
	order: 4;
	
}
.directions-area-list li.direction04 {
	order: 3;
	margin-right: 12%;
}
.directions-area-list li.direction05 {
	order: 5;
	margin-right: 12%;
}
.directions-area-list li.direction06 {
	order: 6;
}
.directions-area-list li.direction07 {
	order: 8;
	
}
.directions-area-list li.direction08 {
	order: 7;
	margin-right: 12%;
}

.directions-area-list li.direction01::after {
	top: 43%;
	bottom: auto;
	left: auto;
	right: -16%;
	border-style: solid;
	border-width: 6px 0 6px 16px;
	border-color: transparent transparent transparent #e31d24;
}
.directions-area-list li.direction02::after {
	bottom: -18%;
	left: 50%;
	border-style: solid;
	border-width: 16px 6px 0 6px;
	border-color: #e31d24 transparent transparent transparent;
}
.directions-area-list li.direction03::after {
	top: 43%;
	bottom: auto;
	left: -16%;
	right: auto;
	border-style: solid;
	border-width: 6px 16px 6px 0;
	border-color: transparent #e31d24 transparent transparent;
}
.directions-area-list li.direction04::after {
	bottom: -18%;
	left: 50%;
	border-style: solid;
	border-width: 16px 6px 0 6px;
	border-color: #e31d24 transparent transparent transparent;
}
.directions-area-list li.direction05::after {
	top: 43%;
	bottom: auto;
	left: auto;
	right: -16%;
	border-style: solid;
	border-width: 6px 0 6px 16px;
	border-color: transparent transparent transparent #e31d24;
}
.directions-area-list li.direction06::after {
	bottom: -18%;
	left: 50%;
	border-style: solid;
	border-width: 16px 6px 0 6px;
	border-color: #e31d24 transparent transparent transparent;
}
.directions-area-list li.direction07::after {
	top: 43%;
	bottom: auto;
	left: -16%;
	right: auto;
	border-style: solid;
	border-width: 6px 16px 6px 0;
	border-color: transparent #e31d24 transparent transparent;
}
.directions-area-list li:last-child {
	margin-bottom: 0;
}
.directions-area-img {
	margin-bottom: 22px;
}
.directions-area-text {
	position: relative;
	padding-left: 40px;
	font-size: 1.3rem;
}
.directions-area-text span {
	font-family: 'Lato', sans-serif;
	font-weight: 700;
	position: absolute;
	top: 0;
	left: 0;
	font-size: 1.8rem;
	line-height: 1.4;
}

} /* PC end */






















































