@charset "utf-8";
/*----------------------------------------*----------------------------------------
composition
----------------------------------------*----------------------------------------*/

html {
	font-size: 10px;
}
body {
	color: #333;
	font-family: "游ゴシック", YuGothic, "Open Sans", Verdana, Roboto, "Droid Sans", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	font-size: 1.5rem;
	line-height: 1.5;
}

/*----------------------------------------*----------------------------------------
header
----------------------------------------*----------------------------------------*/

@media all and (max-width: 767px) {
#header .container {
	padding-bottom: 10px;
	padding-top: 10px;
}
}

@media screen and (min-width: 768px) {
#header {
	position: relative;
}
#header .container {
	height: 294px;
	padding-bottom: 20px;
	padding-top: 20px;
}
}

/*----------------------------------------
logo
----------------------------------------*/

#header .logo {
	background: url(../img/logo.png) no-repeat left center;
	background-size: contain;
}

@media all and (max-width: 767px) {
#header .logo {
	height: 169px;
	width: 300px;
}
#header .logo a {
	height: 169px;
}
}

@media screen and (min-width: 768px) {
#header .logo {
	height: 254px;
	width: 450px;
	position: absolute;
	left: 0;
	right: 0;
	top: 20px;
	margin: auto;
}
#header .logo a {
	height: 254px;
}
}

/*----------------------------------------
description
----------------------------------------*/

@media all and (max-width: 767px) {
#header .description {
	display: none;
}
}

@media screen and (min-width: 768px) {
#header .description {
	font-size: 1.1rem;
	color: #fff;
}
#header .description--full {
	background: #7ea1b8;
	padding: 1px 0;
}
#header .description--inline {
	margin-top: 5px;
}
}

/*----------------------------------------
nav
----------------------------------------*/

@media all and (max-width: 767px) {
#header .nav {
	display: none;
}
}

@media screen and (min-width: 768px) {
#header .nav {
	float: right;
	font-size: 1.3rem;
	position: absolute;
	top: 20px;
}
.grid-960 #header .nav {
	right: 10px;
}
.grid-972 #header .nav {
	right: 15px;
}
#header .nav .menu,
#header .nav .btn {
	float: left;
}
#header .nav .btn {
	padding: 5px 30px 5px 15px;
}

/* nav--inline */

#header .nav--inline .menu + .menu {
	border-left: 1px solid #ccc;
	margin-left: 15px;
	padding-left: 15px;
}
#header .menu--active {
	text-decoration: underline;
}

/* nav--btn */

#header .nav--btn .btn + .btn {
	margin-left: 10px;
}
}


/*----------------------------------------*----------------------------------------
side
----------------------------------------*----------------------------------------*/

#side {
}

/* side_nav_common */

.side_nav {
	margin-bottom: 20px;
}
.side_nav dt {
}
.side_nav dd {
}
.side_nav li {
}
.side_nav ul ul {
	margin-left: 20px;
}
.side_nav li li {
}
.side_nav a {
}
.side_nav a:hover {
}
.side_nav .on {
}
.side_nav strong {
}

/* side_nav */

#side_nav {
}
#side_nav dt {
}
#side_nav dd {
}
#side_nav li {
}
#side_nav li:first-child {
}
#side_nav a {
}
#side_nav a:hover {
}
#side_nav .on {
}
#side_nav strong {
}

/* side_bnr */

#side_bnr {
}
#side_bnr li {
	margin-bottom: 20px;
}
#side_bnr li:first-child {
}

/* cms */

#side .current-cat > a {
	color: #f00;
}

/*----------------------------------------*----------------------------------------
footer
----------------------------------------*----------------------------------------*/

#footer {
	background: #006953;
	color: #fff;
}
#footer a {
	color: #fff;
}

@media all and (max-width: 767px) {
#footer {
	padding: 20px 0;
}
}

@media screen and (min-width: 768px) {
#footer {
	padding: 40px 0;
}
}

/*----------------------------------------*
footer_info
----------------------------------------*/

#footer address {
}

/* logo */

#footer .logo {
	font-size: 2rem;
}
#footer .logo a {
}


/* contact */

@media all and (max-width: 767px) {
	#footer .footer_contact {
		margin-top: 20px;
}
}

@media screen and (min-width: 768px) {
	#footer .footer_contact {
	text-align: right;
	}
	#footer .contact_tel {
	font-size: 2rem;
}
}

/*----------------------------------------*
nav
----------------------------------------*/

#footer .nav {
}
#footer .nav li {
	float: left;
}
#footer .nav ul li {
	float: none;
}
#footer .nav li:first-child {
}
#footer .nav li:last-child {
}
#footer .nav a {
}
#footer .nav a:hover {
}
#footer .nav .on {
}

/*----------------------------------------*----------------------------------------
copyright
----------------------------------------*----------------------------------------*/

#copyright {
	padding: 10px 0 5px;
	font-size: 12px;
	font-size: 1.2rem;
}

/*----------------------------------------*----------------------------------------
back_to_top
----------------------------------------*----------------------------------------*/

#back_to_top {
	bottom: 20px;
	position: fixed;
	right: 20px;
}
#back_to_top a {
	background: url(../img/back_to_top.png) no-repeat left top;
	height: 50px;
	width: 50px;
}

/*----------------------------------------*----------------------------------------
pageHeader
----------------------------------------*----------------------------------------*/


@media screen and (max-width: 767px) {
#pageHeader {
}
#pageHeader h1 {
}
}

@media print, screen and (min-width: 768px) {
#pageHeader {
	border-top: #eee 3px solid;
	border-bottom: #eee 1px solid;
	padding: 40px 0;
	margin-bottom: 20px;
}
#pageHeader h1 {
	font-size: 3rem;
	line-height: 1;
	font-weight: normal;
	font-family: "Noto Sans Japanese";
}
}

/*----------------------------------------*----------------------------------------
shortcut
----------------------------------------*----------------------------------------*/

#shortcut {
	font-size: 1.3rem;
}
#shortcut a {
	color: #333;
	text-decoration: none;
	transition: all .2s linear;
	position: relative;
}
#shortcut a:before {
	font-family: "FontAwesome";
	content: "\f107";
}

@media all and (max-width: 767px) {
#shortcut {
	text-align: left;
	margin-bottom: 20px;
}
#shortcut li + li {
	border-top: 1px solid #ccc;
}
#shortcut a {
	display: block;
	padding: 10px 15px;
	background: #f2f2f2;
}
#shortcut a:before {
	position: absolute;
	top: 50%;
	right: 10px;
	margin-top: -.5em;
	line-height: 1;
}
}

@media screen and (min-width: 768px) {
#shortcut {
	margin-bottom: 20px;
}
#shortcut ul {
	letter-spacing: -.4em;
}
#shortcut li {
	display: inline;
	position: relative;
	letter-spacing: normal;
}
#shortcut li + li {
	margin-left: 20px;
}
#shortcut a:before {
	margin-right: 10px;
}
#shortcut a:hover {
	color: #f00;
}
}

/*----------------------------------------*----------------------------------------
breadcrumb
----------------------------------------*----------------------------------------*/

@media all and (max-width: 767px) {
#breadcrumb {
	display: none;
}
}

@media screen and (min-width: 768px) {
#breadcrumb {
	letter-spacing: -.4em;
	font-size: 1.3rem;
	padding-top: 20px;
	padding-bottom: 20px;
}
#breadcrumb li {
	letter-spacing: normal;
	display: inline;
}
#breadcrumb li:before {
	font-family: "FontAwesome";
	content: "\f105";
	margin: 0 10px;
}
#breadcrumb li:first-child:before {
	content: "";
	margin: 0;
}
#breadcrumb a {
	color: #333;
	text-decoration: none;
}
#breadcrumb a:hover,
 #breadcrumb a:active {
	text-decoration: underline;
}
}
