@charset "UTF-8";

* {
	box-sizing : border-box;
	margin : 0;
}

html {
	font-size : 16px;
}

body {
	color : #96252b;
	background-color : #ffffff;
}

#container {
	max-width : 1200px;
	margin : 0 auto;
}

header {
	display : flex;
	justify-content : space-between;
	width : 100%;
	height : 100px;
}

header #title {
	width : 20%;
	height : 100%;
}

header #locations {
	display : flex;
	flex-direction : column;
	justify-content : center;
	width : 20%;
	height : 100%;
}

header #locations h1 {
	font-size : 0.8rem;
	font-weight : 400;
}

header #locations p {
	font-size : 0.8rem;
}

#nav {
	clear : both;
	width : 100%;
	background : linear-gradient(#ffffff, #c6858b);
	box-shadow : 0 2px 6px rgba(0,0,0,0.4);
}

#nav ul {
	display : flex;
	align-items : center;
	list-style : none;
	padding : 0;
}

#nav ul li {
	flex : 1;
}

#nav ul li a {
	display : block;
	color : #303030;
	font-size : 0.9rem;
	text-align : center;
	text-decoration : none;
	transition : color 0.3s;
}

#nav ul li a:hover {
	color : #ff5050;
}

#breadcrumb {
	clear : both;
	width : 100%;
	color : #505050;
	font-weight : 700;
	margin : 0.3rem;
}

#breadcrumb a {
	color : #505050;
}

#breadcrumb span + span::before {
	content : " ＞ ";
	pointer-events:none;
}

#main {
	clear : both;
	width : 100%;
}

#main #main_img {
	clear : both;
	width : 100%;
}

#main #content {
	clear : both;
	float : left;
	width : 70%;
	margin-top : 0.8rem;
}

#main #content .h3 {
	clear : both;
	font-size : 1.2rem;
	font-weight : 400;
	padding : 0.2rem 0.5rem;
	margin-top : 2rem;
}

#main #content #notes {
	clear : both;
	float : left;
	width : 100%;
	padding : 0 0.5rem;
	margin-bottom : 2rem;
}

#main #content #notes p {
	color : #303030;
	font-size : 1.0rem;
	line-height : 1.5;
}

#main #content #notes p::before {
	content : "・";
}

#main #side-cta {
	float : right;
	width : 28%;
	margin : 0.8rem 0;
}

#main #side-cta h3 {
	font-size : 1.0rem;
	font-weight : 400;
	border-bottom : #303030 dotted 1px;
	padding : 0.5rem;
}

#main #side-cta p {
	color : #303030;
	font-size : 1.0rem;
	padding : 0.1rem 0.5rem;
}

#main #side-cta #side-cta-wrap {
	padding-top : 1rem;
}

#main #side-cta #side-cta-wrap img {
	transition : opacity 0.2s;
}

#main #side-cta #side-cta-wrap img:hover {
	opacity : 0.7;
}

footer {
	clear : both;
	width : 100%;
	height : 100px;
	display : flex;
	justify-content : space-between;
	border-top : #303030 solid 1px;
}

footer #footer_title {
	width : 20%;
	height : 100%;
}

footer #footer_locations {
	width : 20%;
	height : 100%;
	display : flex;
	flex-direction : column;
	justify-content : center;
}

footer #footer_locations p {
	font-size : 0.8rem;
}
