@charset "UTF-8";
/*
 * BASE STYLESHEET.
 *
################################################################################
 */
@import url(https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css);
@import url(https://fonts.googleapis.com/css?family=Noto+Sans);
/* ========================================================================== *
 * normalize or reset.
 * ========================================================================== */
/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */
/* normalize: document.
 * -------------------------------------------------------------------------- */
html {
	font-family:sans-serif;
	line-height:1.15;
	    -ms-text-size-adjust:100%;
	-webkit-text-size-adjust:100%;
}

/* normalize: sections.
 * -------------------------------------------------------------------------- */
body {
	margin:0;
}

article,
aside,
footer,
header,
nav,
section {
	display:block;
}

h1 {
	font-size:2em;
	margin:.67em 0;
}

/* normalize: grouping content.
 * -------------------------------------------------------------------------- */
figcaption,
figure,
main {
	display:block;
}

figure {
	margin:1em 40px;
}

hr {
	box-sizing:content-box;
	height:0;
	overflow:visible;
}

pre {
	font-family:monospace, monospace;
	font-size:1em;
}

/* normalize: text-level semantics.
 * -------------------------------------------------------------------------- */
a {
	background-color:transparent;
	-webkit-text-decoration-skip:objects;
}

a:active,
a:hover {
	outline-width:0;
}

abbr[title] {
	border-bottom:none;
	text-decoration:underline;
	text-decoration:underline dotted;
}

b,
strong {
	font-weight:inherit;
}

b,
strong {
	font-weight:bolder;
}

code,
kbd,
samp {
	font-family:monospace, monospace;
	font-size:1em;
}

dfn {
	font-style:italic;
}

mark {
	background-color:#ff0;
	color:#000;
}

small {
	font-size:80%;
}

sub,
sup {
	font-size:75%;
	line-height:0;
	position:relative;
	vertical-align:baseline;
}

sub {
	bottom:-.25em;
}

sup {
	top:-.5em;
}

/* normalize: embedded content.
 * -------------------------------------------------------------------------- */
audio,
video {
	display:inline-block;
}

audio:not([controls]) {
	display:none;
	height:0;
}

img {
	border-style:none;
}

svg:not(:root) {
	overflow:hidden;
}

/* normalize: forms.
 * -------------------------------------------------------------------------- */
button,
input,
optgroup,
select,
textarea {
	font-family:sans-serif;
	font-size:100%;
	line-height:1.15;
	margin:0;
}

button,
input {
	overflow:visible;
}

button,
select {
	text-transform:none;
}

button,
html [type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance:button;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	border-style:none;
	padding:0;
}

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
	outline:1px dotted ButtonText;
}

fieldset {
	border:1px solid #c0c0c0;
	margin:0 2px;
	padding:.35em .625em .75em;
}

legend {
	box-sizing:border-box;
	color:inherit;
	display:table;
	max-width:100%;
	padding:0;
	white-space:normal;
}

progress {
	display:inline-block;
	vertical-align:baseline;
}

textarea {
	overflow:auto;
}

[type="checkbox"],
[type="radio"] {
	box-sizing:border-box;
	padding:0;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height:auto;
}

[type="search"] {
	-webkit-appearance:textfield;
	outline-offset:-2px;
}

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
	-webkit-appearance:none;
}

::-webkit-file-upload-button {
	-webkit-appearance:button;
	font:inherit;
}

/* normalize: interactive.
 * -------------------------------------------------------------------------- */
details,
menu {
	display:block;
}

summary {
	display:list-item;
}

/* normalize: scripting.
 * -------------------------------------------------------------------------- */
canvas {
	display:inline-block;
}

template {
	display:none;
}

/* normalize: hidden.
 * -------------------------------------------------------------------------- */
[hidden] {
	display:none;
}

/* ========================================================================== *
 * base.
 * ========================================================================== */
html {
	font-family:"游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", sans-serif;
	line-height:1.5;
	font-size:62.5%;
}

body {
	color:#4d4d4d;
	background:#fff;
}

a {
	color:#4285f4;
}

a:hover {
	color:#1a0dab;
}

button,
input,
optgroup,
select,
textarea {
	font-family:"游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", sans-serif;
}

:focus {
	outline:none;
}

::-moz-selection {
	color:#c-txt;
	background:rgba(0, 122, 255, .25);
	text-shadow:none;
}

::selection {
	color:#c-txt;
	background:rgba(0, 122, 255, .25);
	text-shadow:none;
}

hr {
	margin:1em 0;
	padding:0;
	border:0;
	border-top:1px solid rgba(0, 0, 0, .25);
	display:block;
	height:1px;
	background:rgba(255, 255, 255, .25);
}

audio,
canvas,
iframe,
img,
svg,
video {
	vertical-align:middle;
}

fieldset {
	margin:0;
	padding:0;
	border:0;
}

textarea {
	resize:vertical;
}

/* ========================================================================== *
 * layout.
.* ========================================================================== */
/* layout: 基本レイアウト.
 * -------------------------------------------------------------------------- */
#wrapper {
	margin:0 auto;
	min-width:320px;
	overflow-x:hidden;
}

#fb-root {
	position:absolute;
	left:0;
	top:0;
	width:1px;
	height:1px;
	opacity:0;
}

/* layout: レイアウトコンテナ.
 * -------------------------------------------------------------------------- */
.container {
	position:relative;
	max-width:1280px;
}

.container:after {
	display:block;
	clear:both;
	content:"";
}

@media (max-width: 769px) {
	.container {
		padding-right:3.125%;
		padding-left:3.125%;
	}
}

@media (min-width: 770px) {
	.container {
		margin-right:auto;
		margin-left:auto;
		padding-right:10px;
		padding-left:10px;
	}
}

.container-spfull {
	position:relative;
	max-width:1280px;
}

.container-spfull:after {
	display:block;
	clear:both;
	content:"";
}

@media (min-width: 770px) {
	.container-spfull {
		margin-right:auto;
		margin-left:auto;
		padding-right:10px;
		padding-left:10px;
	}
}

.container-inner {
	margin-right:auto;
	margin-left:auto;
	width:100%;
	max-width:940px;
	overflow-x:auto;
	overflow-y:hidden;
	-webkit-overflow-scrolling:touch;
}

.container-inner:after {
	display:block;
	clear:both;
	content:"";
}

/* layout: メインコンテンツ.
 * -------------------------------------------------------------------------- */
@media (max-width: 769px) {
	#site-contents {
		padding-bottom:32px;
		font-size:14px;
		font-size:1.4rem;
	}
}

@media (min-width: 770px) {
	#site-contents {
		padding-bottom:72px;
		font-size:12px;
		font-size:1.2rem;
	}
}

@media (max-width: 769px) {
	.section {
		margin-top:32px;
		margin-bottom:32px;
	}
	.section:first-child {
		margin-top:0;
	}
	.section:last-child {
		margin-bottom:0;
	}
}

@media (min-width: 770px) {
	.section {
		margin-top:48px;
		margin-bottom:48px;
	}
	.section:first-child {
		margin-top:0;
	}
	.section:last-child {
		margin-bottom:0;
	}
}

@media (max-width: 769px) {
	.subsection {
		margin-top:24px;
		margin-bottom:24px;
	}
	.subsection:first-child {
		margin-top:0;
	}
	.subsection:last-child {
		margin-bottom:0;
	}
}

@media (min-width: 770px) {
	.subsection {
		margin-top:32px;
		margin-bottom:32px;
	}
	.subsection:first-child {
		margin-top:0;
	}
	.subsection:last-child {
		margin-bottom:0;
	}
}

/* layout: 共通ヘッダ.
 * -------------------------------------------------------------------------- */
#site-header {
	border-top:4px solid #000;
}

#site-header .h-contents:after {
	display:block;
	clear:both;
	content:"";
}

@media (max-width: 769px) {
	#site-header .h-contents {
		padding-top:20px;
		padding-bottom:20px;
	}
}

@media (min-width: 770px) {
	#site-header .h-contents {
		padding-top:30px;
		padding-bottom:30px;
	}
}

#site-header .h-contents::before {
	position:absolute;
	top:-4px;
	right:10px;
	width:30%;
	height:4px;
	display:block;
	content:"";
	background:#ff8500;
}

#site-header .h-title {
	margin:0;
	float:left;
}

@media (max-width: 769px) {
	#site-header .h-title {
		display:block;
		width:38%;
		max-width:140px;
	}
}

#site-header .h-logo {
	width:114px;
}

@media (max-width: 769px) {
	#site-header .h-logo {
		margin-left:-5px;
		position:relative;
		display:block;
	}
}

@media (min-width: 770px) {
	#site-header .h-logo {
		margin-right:12px;
		display:inline-block;
		vertical-align:middle;
	}
}

#site-header .h-logo a {
	display:block;
	height:45px;
	line-height:45px;
}

#site-header .h-logo img {
	width:100%;
	height:auto;
}

#site-header .h-description {
	display:block;
	font-size:10px;
	font-weight:400;
}

@media (max-width: 769px) {
	#site-header .h-description {
		display:none;
	}
}

@media (min-width: 770px) {
	#site-header .h-description {
		margin-left:4px;
		display:inline-block;
		vertical-align:middle;
	}
}

#site-header .h-nav {
	margin-right:-10px;
	position:relative;
	float:right;
	z-index:100;
}

/* layout: プライマリナビ.
 * -------------------------------------------------------------------------- */
#pnav ul {
	padding-left:0;
	list-style-type:none;
}

@media (max-width: 769px) {
	#pnav ul {
		margin-top:0;
		margin-bottom:0;
	}
}

@media (min-width: 770px) {
	#pnav ul {
		margin-top:5px;
		margin-bottom:5px;
	}
}

#pnav ul:after {
	display:block;
	clear:both;
	content:"";
}

#pnav ul > li {
	float:right;
	border-right:1px dotted #333;
	font-family:"Noto Sans", sans-serif;
	-webkit-text-stroke:.05px;
	   -moz-text-stroke:.05px;
	    -ms-text-stroke:.05px;
	        text-stroke:.05px;
}

#pnav ul > li:first-child {
	margin-right:0 !important;
}

#pnav ul > li:last-child {
	margin-left:0 !important;
}

@media (max-width: 769px) {
	#pnav ul > li {
		font-size:10px;
	}
}

@media (min-width: 770px) {
	#pnav ul > li {
		font-size:11px;
	}
}

#pnav ul > li:first-child {
	border-right:0;
}

#pnav a {
	display:block;
	text-decoration:none;
	-webkit-transition:color .2s linear 0s;
	        transition:color .2s linear 0s;
	color:#333;
}

@media (max-width: 769px) {
	#pnav a {
		padding-right:8px;
		padding-left:8px;
		text-align:center;
	}
}

@media (min-width: 770px) {
	#pnav a {
		padding-right:10px;
		padding-left:10px;
	}
}

#pnav a:hover {
	color:#ff8500;
}

#pnav a:focus {
	color:#333;
}

#pnav a.is-active {
	color:#ff8500;
}

#pnav .fa {
	height:30px;
	line-height:30px;
	font-size:26px;
	vertical-align:middle;
	text-align:center;
}

@media (max-width: 769px) {
	#pnav .fa {
		display:block;
	}
}

@media (min-width: 770px) {
	#pnav .fa {
		margin-right:2px;
		position:relative;
		top:-1px;
		width:30px;
	}
}

#pnav .fa.fa-mobile {
	-webkit-transform:scale(1.2);
	        transform:scale(1.2);
}

/* layout: ドロップダウン型グローバルナビ.
 * -------------------------------------------------------------------------- */
#gnav {
	position:relative;
	z-index:100;
}

@media (max-width: 769px) {
	#gnav {
		top:-8px;
	}
}

@media (min-width: 770px) {
	#gnav {
		top:-16px;
	}
}

#gnav .gnav-inner {
	position:relative;
}

/* MENU/SEARCH共通. */
#gnav .gnav {
	position:absolute;
	top:0;
	left:0;
	display:none;
	width:100%;
	color:#000;
	background:#ebebeb;
	background:-webkit-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%);
	background:        linear-gradient(to bottom, #ebebeb 0%, #f5f5f5 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ebebeb', endColorstr='#f5f5f5',GradientType=0 );
	box-shadow:inset 0 0 0 1px #d5d5d5, inset 0 0 0 2px #f5f5f5, 0 3px 12px 0 rgba(0, 0, 0, .25);
}

#gnav .gnav:before,
#gnav .gnav:after {
	display:block;
	position:absolute;
	content:"";
	z-index:-1;
	bottom:8px;
	width:47%;
	max-width:300px;
	height:10px;
	box-shadow:0 11px 12px rgba(0, 0, 0, .5);
}

#gnav .gnav:before {
	left:8px;
	-webkit-transform-origin:left bottom;
	        transform-origin:left bottom;
	-webkit-transform:rotate(-4deg);
	        transform:rotate(-4deg);
}

#gnav .gnav:after {
	right:8px;
	-webkit-transform-origin:right bottom;
	        transform-origin:right bottom;
	-webkit-transform:rotate(4deg);
	        transform:rotate(4deg);
}

#gnav .gnav.is-active {
	display:block;
}

/* MENU. */
#gnav .gnav_menu .gnav_menu-inner {
	position:relative;
}

#gnav .gnav_menu .gnav_menu-inner::after {
	position:absolute;
	top:-.75em;
	content:"▲";
	width:1em;
	height:1em;
	line-height:1;
	color:#ebebeb;
	text-align:center;
}

@media (max-width: 769px) {
	#gnav .gnav_menu .gnav_menu-inner::after {
		right:5px;
		font-size:16px;
	}
}

@media (min-width: 770px) {
	#gnav .gnav_menu .gnav_menu-inner::after {
		right:22px;
		font-size:24px;
	}
}

#gnav .gnav_menu ul {
	margin:0 auto;
	list-style-type:none;
	max-width:900px;
}

@media (max-width: 769px) {
	#gnav .gnav_menu ul {
		padding:10px 15px;
	}
}

@media (min-width: 770px) {
	#gnav .gnav_menu ul {
		padding:15px 20px;
	}
	#gnav .gnav_menu ul:after {
		display:block;
		clear:both;
		content:"";
	}
}

#gnav .gnav_menu ul > li {
	border-bottom:1px solid #cecece;
	border-top:1px solid #fff;
}

@media (max-width: 769px) {
	#gnav .gnav_menu ul > li {
		font-size:14px;
	}
	#gnav .gnav_menu ul > li:first-child {
		border-top:0;
	}
	#gnav .gnav_menu ul > li:last-child {
		border-bottom:0;
	}
}

@media (min-width: 770px) {
	#gnav .gnav_menu ul > li {
		margin-left:4%;
		float:left;
		width:48%;
		font-size:16px;
	}
	#gnav .gnav_menu ul > li:nth-child(odd) {
		margin-left:0;
	}
	#gnav .gnav_menu ul > li:nth-child(1),
	#gnav .gnav_menu ul > li:nth-child(2) {
		border-top-color:transparent;
	}
	#gnav .gnav_menu ul > li:nth-child(8),
	#gnav .gnav_menu ul > li:nth-child(9) {
		border-bottom-color:transparent;
	}
}

#gnav .gnav_menu a {
	display:block;
	position:relative;
	text-decoration:none;
	color:#000;
	-webkit-transition:color .2s linear 0s;
	        transition:color .2s linear 0s;
}

#gnav .gnav_menu a:hover {
	color:#ff8500;
}

@media (max-width: 769px) {
	#gnav .gnav_menu a {
		padding:.75em .5em;
	}
}

@media (min-width: 770px) {
	#gnav .gnav_menu a {
		padding:1em .5em;
	}
}

#gnav .gnav_menu a::after {
	margin-top:-.5em;
	position:absolute;
	top:50%;
	right:0;
	width:1em;
	height:1em;
	line-height:1;
	content:"\e649";
	font-family:"themify";
	font-style:normal;
	font-weight:400;
	font-variant:normal;
	text-transform:none;
	speak:none;
}

#gnav .gnav_menu .fa {
	margin-right:.5em;
	display:inline-block;
	width:1em;
	height:1em;
	line-height:1;
	vertical-align:middle;
	font-size:20px;
	text-align:center;
}

#gnav .gnav_menu .fa.fa-facebook-official {
	color:#3b5998;
}

/* SEARCH. */
#gnav .gnav_search .gnav_search-inner {
	position:relative;
}

#gnav .gnav_search .gnav_search-inner::after {
	right:0;
	position:absolute;
	top:-.75em;
	content:"▲";
	width:1em;
	height:1em;
	line-height:1;
	color:#ebebeb;
	text-align:center;
}

@media (max-width: 769px) {
	#gnav .gnav_search .gnav_search-inner::after {
		right:103px;
		font-size:16px;
	}
}

@media (min-width: 770px) {
	#gnav .gnav_search .gnav_search-inner::after {
		right:186px;
		font-size:24px;
	}
}

#gnav .gnav_search dl {
	margin:0 auto;
	max-width:770px;
}

@media (max-width: 769px) {
	#gnav .gnav_search dl {
		padding:10px 15px;
	}
}

@media (min-width: 770px) {
	#gnav .gnav_search dl {
		padding:15px 20px;
	}
	#gnav .gnav_search dl:after {
		display:block;
		clear:both;
		content:"";
	}
}

#gnav .gnav_search dt {
	font-size:20px;
	font-weight:400;
}

@media (max-width: 769px) {
	#gnav .gnav_search dt {
		text-align:center;
	}
}

#gnav .gnav_search dd {
	margin-left:0;
	padding-top:1em;
	padding-bottom:1em;
}

#gnav .gnav_search input[type="text"],
#gnav .gnav_search button {
	padding:.5em;
	vertical-align:middle;
	box-sizing:border-box;
	font-size:18px;
}

@media (max-width: 769px) {
	#gnav .gnav_search input[type="text"],
	#gnav .gnav_search button {
		display:block;
		width:100%;
	}
}

#gnav .gnav_search input[type="text"] {
	border:1px solid #ccc;
}

@media (max-width: 769px) {
	#gnav .gnav_search input[type="text"] {
		margin-bottom:.5em;
	}
}

@media (min-width: 770px) {
	#gnav .gnav_search input[type="text"] {
		margin-right:1%;
		width:79%;
		line-height:1.4;
	}
}

#gnav .gnav_search input[type="text"]::-moz-focus-inner {
	border:0;
	padding:0;
}

#gnav .gnav_search button {
	margin:0;
	border:none;
	display:inline-block;
	position:relative;
	line-height:1.5;
	color:#fff;
	background:#ff8500;
	cursor:pointer;
	text-align:center;
	text-decoration:none;
	box-sizing:border-box;
	-webkit-transition:background-color .2s linear 0s;
	        transition:background-color .2s linear 0s;
}

#gnav .gnav_search button:hover {
	color:#fff;
	background:#ff9d33;
}

@media (min-width: 770px) {
	#gnav .gnav_search button {
		width:20%;
	}
}

/* layout: 共通フッタ.
 * -------------------------------------------------------------------------- */
#site-footer {
	color:#000;
}

@media (min-width: 770px) {
	#site-footer {
		background:#ebebeb;
	}
}

@media (min-width: 770px) {
	#site-footer .fcontent {
		padding-top:40px;
		padding-bottom:40px;
	}
}

@media (max-width: 769px) {
	#site-footer .f-sns {
		margin-right:auto;
		margin-left:auto;
		padding-bottom:52px;
		width:300px;
	}
}

@media (min-width: 770px) {
	#site-footer .f-sns {
		float:right;
		width:39.0625%;
	}
}

@media (max-width: 769px) {
	#site-footer .f-nav {
		padding:20px 3.125%;
		position:relative;
		background:#ebebeb;
	}
}

@media (min-width: 770px) {
	#site-footer .f-nav {
		float:left;
		width:59.375%;
	}
}

#site-footer .f-nav a {
	margin-right:1.25em;
	margin-left:1.25em;
	padding-top:.5em;
	padding-bottom:.5em;
	display:inline-block;
	color:#000;
	text-decoration:none;
	-webkit-transition:color .2s linear;
	        transition:color .2s linear;
}

#site-footer .f-nav a:hover {
	color:#ff8500;
}

@media (max-width: 769px) {
	#site-footer .f-nav a {
		font-size:14px;
	}
}

@media (min-width: 770px) {
	#site-footer .f-nav a {
		font-size:12px;
	}
}

#site-footer .f-nav a::before {
	margin-left:-1em;
	display:inline-block;
	position:relative;
	content:"・";
	width:1em;
	font-style:normal;
	font-weight:700;
	font-variant:normal;
	text-transform:none;
	speak:none;
}

#site-footer .f-nav #pagetopanchor {
	position:absolute;
}

@media (max-width: 769px) {
	#site-footer .f-nav #pagetopanchor {
		top:-40px;
		right:3.125%;
	}
}

@media (min-width: 770px) {
	#site-footer .f-nav #pagetopanchor {
		top:-102px;
		right:10px;
	}
}

#site-footer .f-nav #pagetopanchor a {
	margin:0;
	padding:0;
	display:block;
	color:#fff;
	background:#ff8500;
	text-align:center;
	-webkit-transition:opacity .2s linear 0s;
	        transition:opacity .2s linear 0s;
}

@media (max-width: 769px) {
	#site-footer .f-nav #pagetopanchor a {
		width:32px;
		height:32px;
		line-height:32px;
		font-size:24px;
	}
}

@media (min-width: 770px) {
	#site-footer .f-nav #pagetopanchor a {
		width:52px;
		height:52px;
		line-height:52px;
		font-size:32px;
	}
}

#site-footer .f-nav #pagetopanchor a::before {
	display:none;
}

#site-footer .f-sitedata {
	margin-top:1em;
	padding-top:1em;
	border-top:1px dotted #666;
}

#site-footer .f-siteinfo ul {
	margin:0;
	padding:0;
	list-style-type:none;
}

@media (min-width: 770px) {
	#site-footer .f-siteinfo ul {
		clear:both;
	}
}

#site-footer .f-siteinfo dl {
	margin:0;
}

#site-footer .f-siteinfo dt,
#site-footer .f-siteinfo dd {
	display:inline-block;
}

@media (max-width: 769px) {
	#site-footer .f-siteinfo dt {
		font-size:12px;
	}
}

@media (min-width: 770px) {
	#site-footer .f-siteinfo dt {
		font-size:18px;
	}
}

#site-footer .f-siteinfo dd {
	margin-left:0;
	font-weight:700;
}

@media (max-width: 769px) {
	#site-footer .f-siteinfo dd {
		font-size:16px;
	}
}

@media (min-width: 770px) {
	#site-footer .f-siteinfo dd {
		font-size:26px;
	}
}

#site-footer .f-logo {
	width:114px;
}

@media (min-width: 770px) {
	#site-footer .f-logo {
		margin-right:16px;
		float:left;
	}
}

#site-footer .f-logo img {
	width:100%;
	height:auto;
}

#site-footer .f-address {
	font-size:12px;
}

@media (min-width: 770px) {
	#site-footer .f-address {
		float:left;
	}
}

#site-footer .f-tel {
	margin-right:1.5em;
	display:inline-block;
}

#site-footer .f-tel dd {
	font-family:"Noto Sans", serif;
	-webkit-text-stroke:.05px;
	   -moz-text-stroke:.05px;
	    -ms-text-stroke:.05px;
	        text-stroke:.05px;
}

#site-footer .f-fax {
	display:inline-block;
}

#site-footer .f-fax dd {
	font-family:"Noto Sans", serif;
	-webkit-text-stroke:.05px;
	   -moz-text-stroke:.05px;
	    -ms-text-stroke:.05px;
	        text-stroke:.05px;
}

#site-footer .f-time .time {
	font-family:"Noto Sans", serif;
	-webkit-text-stroke:.05px;
	   -moz-text-stroke:.05px;
	    -ms-text-stroke:.05px;
	        text-stroke:.05px;
}

#site-footer .f-time .opt {
	margin-left:-.25em;
	position:relative;
	font-size:12px;
	font-weight:400;
	vertical-align:middle;
}

#site-footer .copyright {
	color:#fff;
	background:#000;
	text-align:center;
}

#site-footer .copyright p {
	margin:0;
}

#site-footer .copyright small {
	line-height:32px;
	font-size:12px;
}

/* layout: フッタ部製品情報ナビ.
 * -------------------------------------------------------------------------- */
#productnav .productnav-head {
	margin-top:0;
	font-size:20px;
	font-weight:400;
}

@media (max-width: 769px) {
	#productnav .productnav-head {
		text-align:center;
	}
}

#productnav dl {
	margin:0 0 1em;
	padding-bottom:1em;
	border-bottom:1px dotted #ccc;
}

@media (min-width: 770px) {
	#productnav dl:after {
		display:block;
		clear:both;
		content:"";
	}
}

#productnav dt {
	border:1px solid #ccc;
	background:#fff;
	line-height:3;
	text-align:center;
	font-size:12px;
}

@media (max-width: 769px) {
	#productnav dt {
		font-size:14px;
	}
}

@media (min-width: 770px) {
	#productnav dt {
		font-size:12px;
	}
}

#productnav dd {
	margin-left:0;
}

#productnav ul {
	margin:0;
	padding-left:0;
}

#productnav li {
	display:inline-block;
}

/* layout: フッターナビ.
 * -------------------------------------------------------------------------- */
#fnav ul {
	margin:0;
	padding-left:0;
	letter-spacing:-.40em;
}

#fnav ul > li {
	display:inline-block;
	letter-spacing:normal;
}

#fnav ul > li:first-child {
	margin-left:0 !important;
}

#fnav ul > li:last-child {
	margin-right:0 !important;
}

#fnav ul > li:last-child {
	width:100%;
}

/* c-flex
--------------------------------------------------------- */
[class*="c-flex"] {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
}

.c-flex--nowrap {
  -webkit-flex-wrap: nowrap;
  -moz-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  -o-flex-wrap: nowrap;
  flex-wrap: nowrap;
}
.c-flex--between {
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  -o-justify-content: space-between;
  justify-content: space-between;
}

.c-flex--around {
  -webkit-justify-content: space-around;
  -moz-justify-content: space-around;
  -ms-justify-content: space-around;
  -o-justify-content: space-around;
  justify-content: space-around;
}

.c-flex--alignCenter {
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -o-align-items: center;
  align-items: center;
}
.c-flex--alignEnd {
  -webkit-align-items: flex-end;
  -moz-align-items: flex-end;
  -ms-align-items: flex-end;
  -o-align-items: flex-end;
  align-items: flex-end;
}
.c-flex--reverse {
  -webkit-flex-direction: row-reverse;
  -moz-align-items: row-reverse;
  -ms-align-items: row-reverse;
  -o-align-items: row-reverse;
  flex-direction: row-reverse;
}
.c-flex--col {
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;
}
.c-jus-center {
	-webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  -o-justify-content: center;
  justify-content: center;
}
.c-jus-end {
	-webkit-justify-content: flex-end;
  -moz-justify-content: flex-end;
  -ms-justify-content: flex-end;
  -o-justify-content: flex-end;
  justify-content: flex-end;
}
.c-item--alignCenter {
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    -o-align-items: center;
    align-items: center;
}
.c-item--stretch {
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    -webkit-align-items: stretch;
    align-items: stretch;
}