@charset "UTF-8";
/*
このCSSはSASS+Compassでコンパイルされています。
Sass 3.4.9
Compass 1.0.1
元ファイル　../sass/style.scss
*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	font-size: 100%;
	vertical-align: baseline;
}
html {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
caption, th, td {
	text-align: left;
	font-weight: normal;
	vertical-align: middle;
}
q, blockquote {
	quotes: none;
}
q:before, q:after, blockquote:before, blockquote:after {
	content: "";
	content: none;
}
a img {
	border: none;
}
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
	display: block;
}
/*クリアフィックス*/
#site-header .header .navi {
 *zoom: 1;
}
#site-header .header .navi:after {
	content: "";
	display: table;
	clear: both;
}

/*フォントファミリー*/
@media (max-width: 680px) {
body,  html {
	overflow-x: hidden;
	-webkit-overflow-scrolling: touch;
}
}
@media (min-width: 681px) {
body,  html {
	line-height: 1.75;
}
}
 @media (max-width: 1100px) {
#site-header h1 {
	height: 45px;
	left: auto;
	margin-left: 8px;
	width: 110px;
	position: relative;
	top: auto;
}
#site-header h1 a {
	display: block;
}
#site-header h1 img {
	height: auto;
	width: 100%;
}
}
@media (max-width: 680px) {
#site-header {
	display: none;
}
}
@media (max-width: 1100px) {
#site-header .header {
	height: auto;
	width: 100%;
}
}
@media (max-width: 1100px) {
#site-header .header .navi {
	height: auto;
	margin: 10px auto auto auto;
	position: relative;
	right: auto;
	top: auto;
	width: 100%;
}
}
.fixed {
	position: relative;
}
/*-----------------------------------------------------
BODY
-------------------------------------------------------*/
body {
	font-family: 'qMmpS Pro W3', 'Hiragino Kaku Gothic Pro', 'CI', Meiryo, 'lr oSVbN', Osaka, sans-serif;
	font-size: 16px;
	line-height: 1.5;
	text-align: justify;
	text-justify: inter-ideograph;
	word-break: break-all;
	color: #333;
	-webkit-text-size-adjust: none;
}
/*-----------------------------------------------------
MARGIN
-------------------------------------------------------*/
.mt5 {
	margin-top: 5px;
}
.mt10 {
	margin-top: 10px;
}
.mt15 {
	margin-top: 15px;
}
.mt20 {
	margin-top: 20px;
}
.mt30 {
	margin-top: 30px;
}
.mt40 {
	margin-top: 40px;
}
.mt45 {
	margin-top: 45px;
}
.mt50 {
	margin-top: 50px;
}
.mt60 {
	margin-top: 60px;
}
.mt70 {
	margin-top: 70px;
}
.mt80 {
	margin-top: 80px;
}
.mt90 {
	margin-top: 90px;
}
.mt100 {
	margin-top: 100px;
}
@media (max-width: 680px) {
.mt100 {
	margin-top: 0;
}
}
.mb5 {
	margin-bottom: 5px;
}
.mb10, .mb15 {
	margin-bottom: 10px;
}
.mb20 {
	margin-bottom: 20px;
}
.mb30 {
	margin-bottom: 30px;
}
.mb40 {
	margin-bottom: 40px;
}
.mb50 {
	margin-bottom: 50px;
}
.mb80 {
	margin-bottom: 80px;
}
.mb100 {
	margin-bottom: 100px;
}
.ml5 {
	margin-left: 5px;
}
.ml10, .ml15 {
	margin-left: 10px;
}
.ml20 {
	margin-left: 20px;
}
.ml30 {
	margin-left: 30px;
}
.ml40 {
	margin-left: 40px;
}
.ml50 {
	margin-left: 50px;
}
.mr5 {
	margin-right: 5px;
}
.mr10, .mr15 {
	margin-right: 10px;
}
.mr20 {
	margin-right: 20px;
}
.mr30 {
	margin-right: 30px;
}
.mr40 {
	margin-right: 40px;
}
.mr50 {
	margin-right: 50px;
}
/*-----------------------------------------------------
color
-------------------------------------------------------*/
.color01 {
	color: #FF0000;
}
/*-----------------------------------------------------
FLOAT, ALIGN
-------------------------------------------------------*/
.floatL {
	float: left;
}
@media (max-width: 680px) {
.floatL {
	float: none;
}
}
.floatR {
	float: right;
}
@media (max-width: 680px) {
.floatR {
	float: none;
}
}
.alignL {
	text-align: left;
}
.alignC {
	text-align: center;
}
.alignR {
	text-align: right;
}
.alignC img {
	margin: 0 auto;
}
.clear {
	clear: both;
	margin: 0px;
	padding: 0px;
	font-size: 0px;
	font-style: normal;
	line-height: 0px;
	font-weight: normal;
	font-variant: normal;
}
div.clear hr {
	display: none;
}
/*-----------------------------------------------------
IMAGE
-------------------------------------------------------*/
body img {
	vertical-align: bottom;
	border: none;
}
.imgCenter {
	margin: 0 auto;
	text-align: center;
}
.imgLeft {
	float: left;
	margin: 0 20px 20px 0;
}
.imgRight {
	float: right;
	margin: 0 0 20px 20px;
}
/*-----------------------------------------------------
LINK
-------------------------------------------------------*/
a {
	overflow: hidden;
	outline: none;
}
a:link, a:visited {
	color: #4e4e80;
	text-decoration: underline;
}
a:hover {
	color: #333333;
	text-decoration: none;
}
/*-----------------------------------------------------
TABLE
-------------------------------------------------------*/
table {
	margin: 0 0 0.5em;
	border-collapse: collapse;
	border-spacing: 0;
	font-size: inherit;
}
* html table {
	font-size: 100%;
}
th, td {
	vertical-align: top;
	padding: 0.5em;
	border: 1px solid #999;
	text-align: left;
}
caption {
	margin: 0 0 0.5em;
}
/*-----------------------------------------------------
sp header & drawer menu
-------------------------------------------------------*/
#sp-header {
	display: none;
}
@media (max-width: 680px) {
#sp-header {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	background: #fff;
	display: block;
	padding: 10px;
	width: 100%;
}
#sp-header h1 {
	display: block;
	width: 120px;
}
#sp-header h1 img {
	height: auto;
	width: 100%;
}
}
.drawer-hamburger {
	color: #ff8100;
	z-index: 1010 !important;
}
.drawer-hamburger .drawer-hamburger-icon {
	background: #ff8100;
}
.drawer-hamburger .drawer-hamburger-icon:before, .drawer-hamburger .drawer-hamburger-icon:after {
	background: #ff8100;
}
.drawer-nav {
	background: #fff !important;
	z-index: 1010 !important;
}
.drawer-nav .drawer-menu li a {
	color: #fff;
	display: block;
	text-decoration: none;
}
.drawer-nav .drawer-menu li a:hover {
	opacity: .75;
}
.drawer-nav .drawer-menu li a.drawer-brand {
	padding-bottom: 10px;
}
.drawer-nav .drawer-menu li a.drawer-menu-item {
	background: rgba(255, 129, 0, 0.9);
	border-bottom: solid 1px #fff;
	color: #111;
}
.drawer-nav .drawer-menu li a.drawer-menu-item:before {
	color: rgba(255, 255, 255, 0.75);
	content: "●";
	font-size: 14px;
	margin-right: .3em;
}