@charset "utf-8";
/*
最終更新日 : 2015.09.08

▼ CSS記述ルール

1. 単語と単語（別単語）は-（ハイフン）で繋ぐ
例）.about-item {}

2. 長い単語（1単語）はキャメルケースで繋ぐ
例）.breadCrumb
例）.backTop

3. 変更する可能性のあるタグに対して直接スタイルを指定しない
×）#nav ol {}　← olがulに変更になる可能性がある
○）#nav .list {}　olにclass="list"を付与し、そのclassに対してスタイルを指定する
*/

/*==================================================================================================================================
reset
==================================================================================================================================*/

/* html5doctor.com Reset v1.6.1 - http://cssreset.com */

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {margin: 0; padding: 0; border: 0; outline: 0; font-size: 100%; vertical-align: baseline; background: transparent; }
body { line-height: 1; }
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }
nav ul { list-style: none; }
blockquote, q { quotes: none; }
blockquote:before, blockquote:after, q:before, q:after { content: none; }
a { margin: 0; padding: 0; font-size: 100%; vertical-align: baseline; background: transparent; }
ins { background-color: #ff9; color: #000; text-decoration: none; }
mark { background-color: #ff9; color: #000; font-style: italic; font-weight: bold; }
del { text-decoration: line-through; }
abbr[title], dfn[title] { border-bottom: 1px dotted; cursor: help; }
table { border-collapse: collapse; border-spacing: 0; }
hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; }
input, select { vertical-align: middle; }

/*----------------------------------------*----------------------------------------
original
----------------------------------------*----------------------------------------*/

*, *:before, *:after { -webkit-box-sizing: border-box; box-sizing: border-box; }
html { -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; -webkit-tap-highlight-color: transparent; }
body { word-wrap: break-word; }
audio, canvas, progress, video { display: inline-block; }
audio:not([controls]) { display: none; height: 0; }
[hidden], template { display: none; }
a:active, a:hover { outline: 0; }
b, strong { font-weight: bold; }
dfn { font-style: italic; }
svg:not(:root) { overflow: hidden; }
button, input, optgroup, select, textarea { color: inherit; font: inherit; margin: 0; }
button { overflow: visible; }
button, select { text-transform: none; }
button, html input[type="button"], input[type="reset"], input[type="submit"] { -webkit-appearance: button; cursor: pointer; }
button[disabled], html input[disabled] { cursor: default; }
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
input { line-height: normal; }
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; padding: 0; }
input[type="number"]::-webkit-inner-spin-button, input[type="number"]::-webkit-outer-spin-button { height: auto; }
input[type="search"] { -webkit-appearance: textfield; box-sizing: content-box; }
input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }
fieldset { border: 1px solid #c0c0c0; }
textarea { overflow: auto; }
optgroup { font-weight: bold; }
img {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}
table { max-width: 100%; }

/*----------------------------------------
clearfix
.container .row .eboxは単独でフロート解除
その他でフロート解除したい時は.clearfixを指定
----------------------------------------*/

.clearfix:before, .container:before, .row:before, .row-narrow:before, .row-broad:before, .row-stripe:before, .ebox:before { content: ""; display: table; }
.clearfix:after, .container:after, .row:after, .ebox:after { clear: both; content: ""; display: table; }

/*==================================================================================================================================

= STYLE
-- Basic Style
-- Btn
-- Card
-- Color
-- DL
-- Ebox
-- Grid
-- Headline
-- Image
-- ImageReplacement
-- Margin
-- Padding
-- Pager
-- Pagination
-- Slick
-- Social
-- Table
-- Tab-nav
-- Thumbnail
-- UL/OL
-- Visible & Hidden

==================================================================================================================================*/

/*----------------------------------------*----------------------------------------
Basic Style
----------------------------------------*----------------------------------------*/

address {
	margin-bottom: 20px;
	font-style: normal;
	line-height: inherit;
}
blockquote {
	background-color: #f2f2f2;
	padding: 20px 20px 20px 50px;
	position: relative;
	margin: 0 0 20px;
}
blockquote:before {
	color: #ccc;
	content: "“";
	font-family: Georgia, "Times New Roman", Times, serif;
	font-size: 100px;
	line-height: 1;
	position: absolute;
	top: 5px;
	left: 5px;
}
code {
	background: #e6ee9c;
	border-radius: 3px;
	color: #bd4147;
	padding: .2rem .4rem;
	font-size: 90%;
	font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
}
figure { margin: 0 0 20px; }
mark, .mark {
	padding: .2em;
	background-color: #fcf8e3;
}
p {
	margin-top: 0;
	margin-bottom: 20px;
}
pre {
	display: block;
	margin-top: 0;
	margin-bottom: 20px;
	font-size: 90%;
	color: #373a3c;
	font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
	overflow: auto;
}
pre code {
	padding: 0;
	font-size: inherit;
	color: inherit;
	background-color: transparent;
	border-radius: 0;
}
small, .small {
	font-size: 80%;
	font-weight: normal;
}
sub {
	vertical-align: baseline;
	font-size: 1.1rem;
	line-height: 0;
	position: relative;
	bottom: -0.25em;
}
sup {
	vertical-align: baseline;
	font-size: 1.1rem;
	line-height: 0;
	position: relative;
	top: -0.5em;
}

/*----------------------------------------
text
----------------------------------------*/

.text-left { text-align: left; }
.text-right { text-align: right; }
.text-center { text-align: center; }
.text-nowrap { white-space: nowrap; }
.text-lowercase { text-transform: lowercase; }
.text-uppercase { text-transform: uppercase; }
.text-capitalize { text-transform: capitalize; }
.text-truncate {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

	.text-pc-left { text-align: left; }
	.text-pc-right { text-align: right; }
	.text-pc-center { text-align: center; }

/*----------------------------------------
size
----------------------------------------*/

.font-xs { font-size: 1rem; }
.font-s { font-size: 1.2rem; }
.font-m { font-size: 1.8rem; }
.font-l { font-size: 2.4rem; }
.font-xl { font-size: 3rem; }
.font-normal { font-size: 1.5rem; }

/*----------------------------------------
a
----------------------------------------*/

a { transition: color .1s linear; }
a:hover, a:focus {}
a.a-unstyled {
	color: #333;
	text-decoration: none;
}
a.a-unstyled:hover, a.a-unstyled:focus { text-decoration: underline; }

/*----------------------------------------
hr
----------------------------------------*/

hr {
	height: 0;
	box-sizing: content-box;
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
	border: 0;
	border-top: 1px solid rgba(0, 0, 0, .1);
	margin-top: 0;
	margin-bottom: 20px;
}

/* diamond */

.hr-diamond {
	position: relative;
	height: 1px;
	background: #000;
	width: 60%;
	margin: 15px auto;
}
.hr-diamond span {
	width: 0;
	height: 0;
	border: 6px solid transparent;
	border-bottom-color: #000;
	position: absolute;
	top: -11px;
	left: 50%;
	margin-left: -6px;
}
.hr-diamond span:after {
	content: '';
	position: absolute;
	left: 50%;
	top: 5px;
	width: 0;
	height: 0;
	margin-left: -6px;
	border: 6px solid transparent;
	border-top-color: #000;
}

/*----------------------------------------*----------------------------------------
Btn
----------------------------------------*----------------------------------------*/

/*----------------------------------------
common
----------------------------------------*/

.btn {
	border: none;
	cursor: pointer;
	display: inline-block;
	text-decoration: none;
	vertical-align: baseline;
	position: relative;
	transition: all .2s linear;
}
.btn:hover, .btn:active, .btn:focus { text-decoration: none; }
.btn:before {
	position: absolute;
	top: 50%;
	right: 15px;
	margin-top: -.5em;
	font-family: "FontAwesome";
	content: "\f105";
	line-height: 1;
}

/*----------------------------------------
color&style
全てのボタンに対してradiusやroundを使いたい場合は.btnに直接指定しよう
----------------------------------------*/

/* btn */

.btn {
	background: #0268cc;
	color: #fff;
}
.btn:hover, .btn:active { background: #4a93d8; }
.btn:before { color: #fff; }

/* border */

.btn-border {
	background: none;
	color: #333;
	border: 1px solid #d9d9d9;
}
.btn-border:hover, .btn-border:active { background: #f2f2f2; }
.btn-border:before { color: #333; }
.btn-border:hover:before, .btn-border:active:before {}

/* radius */

.btn.radius {
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
}

/* round */

.btn.round {
	-moz-border-radius: 100px;
	-webkit-border-radius: 100px;
	border-radius: 100px;
}

/* shadow */

.btn.shadow {
	box-shadow: 0 3px 0 #014282;
}

/* center */
/* アイコンなし */

.btn.noIcon { text-align: center; }
.btn.noIcon:before { content: "" !important; }

/*----------------------------------------
size
----------------------------------------*/

.btn { padding: 10px 60px 10px 20px; }
.btn-noIcon { padding: 10px 40px; }

/* half */
/* 上下paddingを半分に */

.btn-half {}
.btn-half,
.btn-group-half .btn {
	padding-top: 5px;
	padding-bottom: 5px;
}

/* x2 */
/* 上下paddingを倍に */

.btn-x2 {}
.btn-x2,
.btn-group-x2 .btn {
	padding-top: 20px;
	padding-bottom: 20px;
}

/* slim */
/* 左右paddingを最低限に */

.btn-slim {}
.btn-slim,
.btn-group-slim .btn { padding-right: 30px; }
.btn-noIcon.btn-slim {
	padding-right: 10px;
	padding-left: 10px;
}

/*----------------------------------------
block
----------------------------------------*/

.btn-block {
	display: block;
	width: 100%;
}

	.btn-pc-block {
		display: block;
		width: 100%;
	}

/*----------------------------------------
button-group
----------------------------------------*/

.btn-group {
  position: relative;
  vertical-align: middle;
	letter-spacing: -.4em;
	margin-bottom: 20px;
}
.btn-group > .btn {
  position: relative;
	display: inline-block;
	letter-spacing: normal;
}
.btn-group .btn + .btn { margin-left: -1px; }

/* justified */

.btn-group.justified {
  display: table;
  width: 100%;
  table-layout: fixed;
  border-collapse: separate;
}
.btn-group.justified > .btn {
  display: table-cell;
  float: none;
  width: 1%;
}
.btn-group.justified > .btn:not(:first-child) { border-left: none; }

/* style */

.btn-group.radius > .btn:first-child {
	-moz-border-radius: 3px 0 0 3px;
	-webkit-border-radius: 3px 0 0 3px;
	border-radius: 3px 0 0 3px;
}
.btn-group.radius > .btn:last-child {
	-moz-border-radius: 0 3px 3px 0;
	-webkit-border-radius: 0 3px 3px 0;
	border-radius: 0 3px 3px 0;
}

.btn-group.round > .btn:first-child {
	-moz-border-radius: 100px 0 0 100px;
	-webkit-border-radius: 100px 0 0 100px;
	border-radius: 100px 0 0 100px;
}
.btn-group.round > .btn:last-child {
	-moz-border-radius: 0 100px 100px 0;
	-webkit-border-radius: 0 100px 100px 0;
	border-radius: 0 100px 100px 0;
}

/*----------------------------------------*----------------------------------------
Card
----------------------------------------*----------------------------------------*/

.card {
	position: relative;
	margin-bottom: 20px;
	border: 1px solid #d9d9d9;
	border-radius: 3px;
}
.card-block { padding: 20px; }
.card-block > *:last-child { margin-bottom: 0; }
.card-header {
	padding: 5px 15px;
	background-color: #f2f2f2;
	border-bottom: 1px solid #d9d9d9;
}
.card-header:first-child { border-radius: .2rem .2rem 0 0; }
.card-footer {
	padding: 5px 15px;
	background-color: #f2f2f2;
	border-top: 1px solid #d9d9d9;
}
.card-footer:last-child { border-radius: 0 0 .2rem .2rem; }

/*----------------------------------------
img
----------------------------------------*/

.card-img-top { border-radius: 3px 3px 0 0; }
.card-img-bottom { border-radius: 0 0 3px 3px; }

/*----------------------------------------
deck
----------------------------------------*/

.card-deck {
	display: table;
	table-layout: fixed;
	border-spacing: 2rem 0;
}
.card-deck .card {
	display: table-cell;
	width: 1%;
	vertical-align: top;
}
.card-deck-wrapper {
	margin-right: -2rem;
	margin-left: -2rem;
}

/*----------------------------------------
group
----------------------------------------*/

.card-group {
	display: table;
	width: 100%;
	table-layout: fixed;
}
.card-group .card {
	display: table-cell;
	vertical-align: top;
}
.card-group .card + .card {
	margin-left: 0;
	border-left: 0;
}
.card-group .card:first-child .card-img-top { border-top-right-radius: 0; }
.card-group .card:first-child .card-img-bottom { border-bottom-right-radius: 0; }
.card-group .card:last-child .card-img-top { border-top-left-radius: 0; }
.card-group .card:last-child .card-img-bottom { border-bottom-left-radius: 0; }
.card-group .card:not(:first-child):not(:last-child) { border-radius: 0; }
.card-group .card:not(:first-child):not(:last-child) .card-img-top, .card-group .card:not(:first-child):not(:last-child) .card-img-bottom { border-radius: 0; }

/*----------------------------------------
	background
----------------------------------------*/

.card-bg {
	background: #80cbc4;
	border: none;
}
.card-bg .panel-ht {
	border-bottom: none;
	background: none;
}
.card-bg .panel-block { background: rgba(255,255,255,.5); }

/*----------------------------------------
	dogear
----------------------------------------*/

.dogear {}
.card.dogear { position : relative; }
.card.dogear .card-block:after {
	content : "";
	display : block;
	position : absolute;
	bottom : -1px;
	right  : -1px;
	width  : 0;
	height : 0;
	border-width : 10px;
	border-style : solid;
	border-color : #000 #fff #fff #000;
}
.card-bg.dogear .card-block:after {
	bottom : 0;
	right  : 0;
}

/*----------------------------------------*----------------------------------------
Color
----------------------------------------*----------------------------------------*/

/* red */

.text-red { color: #e66845; }
a.text-red:hover, a.text-red:focus { color: #ed957c; }

.bg-red { background-color: #e66845; }
a.bg-red:hover, a.bg-red:focus { background-color: #ed957c; }

.border-red { border-color: #e66845 !important; }

/* yellow */

.text-yellow { color: #f7b101; }
a.text-yellow:hover, a.text-yellow:focus { color: #f9c84d; }

.bg-yellow { background-color: #f7b101; }
a.bg-yellow:hover, a.bg-yellow:focus { background-color: #f9c84d; }

.border-yellow { border-color: #f7b101 !important; }

/* green */

.text-green { color: #80b825; }
a.text-green:hover, a.text-green:focus { color: #a6cd66; }

.bg-green { background-color: #80b825; }
a.bg-green:hover, a.bg-green:focus { background-color: #a6cd66; }

.border-green { border-color: #80b825 !important; }

/* blue */

.text-blue { color: #0268cc; }
a.text-blue:hover, a.text-blue:focus { color: #4992da; }

.bg-blue { background-color: #0268cc; }
a.bg-blue:hover, a.bg-blue:focus { background-color: #4992da; }

.border-blue { border-color: #0268cc !important; }

/* skyBlue */

.text-skyBlue { color: #3c94ec; }
a.text-skyBlue:hover, a.text-skyBlue:focus { color: #76b4f2; }

.bg-skyBlue { background-color: #3c94ec; }
a.bg-skyBlue:hover, a.bg-skyBlue:focus { background-color: #76b4f2; }

.border-skyBlue { border-color: #3c94ec !important; }

/* black */

.text-black { color: #424242; }
a.text-black:hover, a.text-black:focus { color: #353535; }

.bg-black { background-color: #424242; }
a.bg-black:hover, a.bg-black:focus { background-color: #353535; }

.border-black { border-color: #424242 !important; }

/*----------------------------------------*----------------------------------------
Dl
----------------------------------------*----------------------------------------*/

dt { font-weight: bold; }
dd {
	margin-bottom: .5rem;
	margin-left: 0;
}

/*----------------------------------------
dl-basic
----------------------------------------*/

.dl-basic dt { font-weight: bold; }
.dl-basic dd { margin-bottom: 5px; }
.dl-basic dd:last-child { margin-bottom: 0; }

/*----------------------------------------
horizontal
----------------------------------------*/

.dl-horizontal dt {
	font-weight: bold;
	float: left;
	width: 160px;
	overflow: hidden;
	clear: left;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.dl-horizontal dd { margin-left: 180px; }

/*----------------------------------------*----------------------------------------
Ebox
----------------------------------------*----------------------------------------*/

.ebox {
	position: relative;
	padding-top: 20px;
	margin-bottom: 40px;
}
.ebox-bg {
	padding-top: 40px;
	padding-bottom: 20px;
}
.ebox-border {
	padding: 20px;
	border:3px #ccc solid;
	border-radius: 7px;
}

/*----------------------------------------*----------------------------------------
Grid
----------------------------------------*----------------------------------------*/

/*----------------------------------------
container
----------------------------------------*/

.container {
	padding-right: 10px;
	padding-left: 10px;
	margin-right: auto;
	margin-left: auto;
	text-align: left;
	width: 960px;
}

/*----------------------------------------
row
----------------------------------------*/

.row,
.row-narrow,
.row-broad,
.row-stripe {
  margin-right: -10px;
  margin-left: -10px;
}
.row-grid {}

/*----------------------------------------
col
----------------------------------------*/

/*左右余白がデフォルトの場合（20px） class="row"*/

[class^="col-"], [class*=" col-"] {
	position: relative;
	min-height: 1px;
	padding-right: 10px;
	padding-left: 10px;
}

/*左右余白を小さくしたい場合（10px） class="row-narrow"*/

.row-narrow > [class^="col-"],
.row-narrow > [class*=" col-"] {
  padding-right: .5rem;
  padding-left: .5rem;
}

/*左右余白を大きくしたい場合（30px） class="row-broad"*/

.row-broad > [class^="col-"],
.row-broad > [class*=" col-"] {
  padding-right: 1.5rem;
  padding-left: 1.5rem;
}

/*左右余白が必要ない場合は class="row-sprite"*/

.row-stripe > [class^="col-"],
.row-stripe > [class*=" col-"] {
  padding-right: 0;
  padding-left: 0;
}

/*上下左右余白が必要ない場合は　 class="row-grid"*/

.row-grid > [class^="col-"],
.row-grid > [class*=" col-"] {
  padding-right: 0;
  padding-left: 0;
}

	[class^="col-pc-"], [class*=" col-pc-"] { float: left; }
	.col-pc-1 { width: 8.33333333%; }
	.col-pc-2 { width: 16.66666667%; }
	.col-pc-3 { width: 25%; }
	.col-pc-4 { width: 33.33333333%; }
	.col-pc-5 { width: 41.66666667%; }
	.col-pc-6 { width: 50%; }
	.col-pc-7 { width: 58.33333333%; }
	.col-pc-8 { width: 66.66666667%; }
	.col-pc-9 { width: 75%; }
	.col-pc-10 { width: 83.33333333%; }
	.col-pc-11 { width: 91.66666667%; }
	.col-pc-12 { width: 100%; }
	.col-pc-x5 { width: 20%; }
	.col-pc-x8 { width: 12.5%; }
	.col-pc-pull-0 { right: auto; }
	.col-pc-pull-1 { right: 8.33333333%; }
	.col-pc-pull-2 { right: 16.66666667%; }
	.col-pc-pull-3 { right: 25%; }
	.col-pc-pull-4 { right: 33.33333333%; }
	.col-pc-pull-5 { right: 41.66666667%; }
	.col-pc-pull-6 { right: 50%; }
	.col-pc-pull-7 { right: 58.33333333%; }
	.col-pc-pull-8 { right: 66.66666667%; }
	.col-pc-pull-9 { right: 75%; }
	.col-pc-pull-10 { right: 83.33333333%; }
	.col-pc-pull-11 { right: 91.66666667%; }
	.col-pc-pull-12 { right: 100%; }
	.col-pc-push-0 { left: auto; }
	.col-pc-push-1 { left: 8.33333333%; }
	.col-pc-push-2 { left: 16.66666667%; }
	.col-pc-push-3 { left: 25%; }
	.col-pc-push-4 { left: 33.33333333%; }
	.col-pc-push-5 { left: 41.66666667%; }
	.col-pc-push-6 { left: 50%; }
	.col-pc-push-7 { left: 58.33333333%; }
	.col-pc-push-8 { left: 66.66666667%; }
	.col-pc-push-9 { left: 75%; }
	.col-pc-push-10 { left: 83.33333333%; }
	.col-pc-push-11 { left: 91.66666667%; }
	.col-pc-push-12 { left: 100%; }
	.col-pc-offset-0 { margin-left: 0; }
	.col-pc-offset-1 { margin-left: 8.33333333%; }
	.col-pc-offset-2 { margin-left: 16.66666667%; }
	.col-pc-offset-3 { margin-left: 25%; }
	.col-pc-offset-4 { margin-left: 33.33333333%; }
	.col-pc-offset-5 { margin-left: 41.66666667%; }
	.col-pc-offset-6 { margin-left: 50%; }
	.col-pc-offset-7 { margin-left: 58.33333333%; }
	.col-pc-offset-8 { margin-left: 66.66666667%; }
	.col-pc-offset-9 { margin-left: 75%; }
	.col-pc-offset-10 { margin-left: 83.33333333%; }
	.col-pc-offset-11 { margin-left: 91.66666667%; }
	.col-pc-offset-12 { margin-left: 100%; }

/*----------------------------------------*----------------------------------------
Headline
----------------------------------------*----------------------------------------*/

/*----------------------------------------
Noto Sans Japaneseについて
GoogleWebFontです。
font-weightは、normal, bold, 100, 200, 300, 400, 500, 600, 700, 800, 900を指定できます。
normal = 400, bold = 900
----------------------------------------*/

.ebox h1, .ebox h2, .ebox h3, .ebox h4, .ebox h5, .ebox h6, .h1, .h2, .h3, .h4, .h5, .h6 {
	margin-top: 0;
	margin-bottom: .5rem;
	font-weight: normal;
	line-height: 1.1;
}
.ebox h1, .h1 {
	font-size: 3rem;
	margin-bottom: 2rem;
}
.ebox h2, .h2 { font-size: 2.0rem; }
.ebox h3, .h3 {
	font-size: 1.8rem;
	color: #3c94ec;
	border-left: 5px #3c94ec solid;
	padding-left: 10px;
	font-weight:bold;
	margin-bottom: 2rem;
}
.ebox h4, .h4 { font-size: 1.7rem; }
.ebox h5, .h5 { font-size: 1.6rem; }
.ebox h6, .h6 { font-size: 1.5rem; }

/*----------------------------------------
ht/section_ht
----------------------------------------*/

h1.ht {
	margin-bottom: 40px;
	font-size: 3rem;
	color: #3c94ec !important;
}
h1.ht span {
	color: #0268cc;
}

/*----------------------------------------
ht/section_read
----------------------------------------*/

h1.read,
h2.read {
	margin-bottom: 20px;
	font-size: 2.8rem;
}
h3.read {
	margin-bottom: 20px;
}
h4.read {
	margin-bottom: 20px;
}

/*----------------------------------------
ht/ht-box
----------------------------------------*/

.ht-box {
    	position:relative;
    	padding:9px;
    	padding-left:15px;
    	font-weight: bold;
    	background-color: #fff;
			border: 1px #ccc0bf solid;
    	border-radius:3px;
    	-webkit-border-radius:3px;
    	-moz-border-radius:3px;
    }
     
.ht-box:before{
    	content:''; 
    	height:25px; 
    	width:2px; 
    	display:block; 
    	position:absolute; 
    	top:5px; 
    	left:4px; 
    	background-color:#3c94ec;
    	border-left: 4px solid #ff8a7f;
    	border-radius:3px;
    	-webkit-border-radius:3px;
    	-moz-border-radius:3px;
    }
	
/*----------------------------------------
ht/ht-bg
----------------------------------------*/
.ht-bg {
	padding: 5px;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	background: #3c94ec;
	color:#fff !important;
}


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

.ebox-header { margin-bottom: 20px; }
.ebox-header .ht { margin-bottom: 0; }

/*----------------------------------------
	ht/line_double
----------------------------------------*/

.ht-line_double { 
	position: relative; 
	border-left: 1px double #FF8A7F;
	border-width: 5px;
	color: #FF8A7F;
}
.ht-line_double:before {
	border-top: solid 1px #FFEAE9;
	content: "";
	display: block;
	height: 1px;
	width: 100%;
	position: absolute;
	top: 50%;
	z-index: 1;
}
.ht-line_double span {
	position: relative;
	z-index: 2;
	display: inline-block;
	padding: 0 20px 0 10px;
	line-height: 1;
	vertical-align: middle;
	background: #fff;
}

/*----------------------------------------*----------------------------------------
Image
----------------------------------------*----------------------------------------*/

img {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}

/*----------------------------------------
img-radius
----------------------------------------*/

.img-radius { border-radius: 3px; }

/*----------------------------------------
img-circle
----------------------------------------*/

.img-circle { border-radius: 50%; }

/*----------------------------------------
img-thumbnail
----------------------------------------*/

.img-thumbnail {
  display: inline-block;
  padding: .4rem;
  background-color: #fff;
  border: 1px solid #d9d9d9;
}

/*----------------------------------------
media
----------------------------------------*/

.media { margin-bottom: 20px; }
.media:last-child { margin-bottom: 0; }
.media, .media-body {
	overflow: hidden;
	zoom: 1;
}
.media-body { width: 10000px; }
.media-left, .media-right, .media-body {
	display: table-cell;
	vertical-align: top;
}
.media-middle { vertical-align: middle; }
.media-bottom { vertical-align: bottom; }
.media-right { padding-left: 20px; }
.media-left { padding-right: 20px; }

/*----------------------------------------*----------------------------------------
ImageReplacement
ir = image replacement
----------------------------------------*----------------------------------------*/

.ir {
	overflow: hidden;
	text-indent: -9999px;
	white-space: nowrap;
}
.ir > a, a.ir { display: block; }

	.ir-pc {
		overflow: hidden;
		text-indent: -9999px;
		white-space: nowrap;
	}
	.ir-pc > a, a.ir-pc { display: block; }

/*--------------------------------------------------------------------------------
Margin
----------------------------------------*----------------------------------------*/

.mgn-a0 { margin: 0 !important; }
.mgn-t0 { margin-top: 0 !important; }
.mgn-r0 { margin-right: 0 !important; }
.mgn-b0 { margin-bottom: 0 !important; }
.mgn-l0 { margin-left: 0 !important; }
.mgn-x0 { margin-right: 0 !important; margin-left: 0 !important; }
.mgn-y0 { margin-top: 0 !important; margin-bottom: 0 !important; }

.mgn-a1 { margin: 10px !important; }
.mgn-t1 { margin-top: 10px !important; }
.mgn-r1 { margin-right: 10px !important; }
.mgn-b1 { margin-bottom: 10px !important; }
.mgn-l1 { margin-left: 10px !important; }
.mgn-x1 { margin-right: 10px !important; margin-left: 10px !important; }
.mgn-y1 { margin-top: 10px !important; margin-bottom: 10px !important; }

.mgn-a2 { margin: 2rem !important; }
.mgn-t2 { margin-top: 2rem !important; }
.mgn-r2 { margin-right: 2rem !important; }
.mgn-b2 { margin-bottom: 2rem !important; }
.mgn-l2 { margin-left: 2rem !important; }
.mgn-x2 { margin-right: 2rem !important; margin-left: 2rem !important; }
.mgn-y2 { margin-top: 2rem !important; margin-bottom: 2rem !important; }

.mgn-x-auto { margin-right: auto !important; margin-left: auto !important; }

/*--------------------------------------------------------------------------------
Padding
----------------------------------------*----------------------------------------*/

.pdg-a0 { padding: 0 !important; }
.pdg-t0 { padding-top: 0 !important; }
.pdg-r0 { padding-right: 0 !important; }
.pdg-b0 { padding-bottom: 0 !important; }
.pdg-l0 { padding-left: 0 !important; }
.pdg-x0 { padding-right: 0 !important; padding-left: 0 !important; }
.pdg-y0 { padding-top: 0 !important; padding-bottom: 0 !important; }

.pdg-a1 { padding: 10px !important; }
.pdg-t1 { padding-top: 10px !important; }
.pdg-r1 { padding-right: 10px !important; }
.pdg-b1 { padding-bottom: 10px !important; }
.pdg-l1 { padding-left: 10px !important; }
.pdg-x1 { padding-right: 10px !important; padding-left: 10px !important; }
.pdg-y1 { padding-top: 10px !important; padding-bottom: 10px !important; }

.pdg-a2 { padding: 2rem !important; }
.pdg-t2 { padding-top: 2rem !important; }
.pdg-r2 { padding-right: 2rem !important; }
.pdg-b2 { padding-bottom: 2rem !important; }
.pdg-l2 { padding-left: 2rem !important; }
.pdg-x2 { padding-right: 2rem !important; padding-left: 2rem !important; }
.pdg-y2 { padding-top: 2rem !important; padding-bottom: 2rem !important; }

/*----------------------------------------*----------------------------------------
pager
----------------------------------------*----------------------------------------*/

.pager {
	padding-left: 0;
	margin-top: 20px;
	margin-bottom: 20px;
	text-align: center;
	list-style: none;
}
.pager:before,
.pager:after {
	display: table;
	content: " ";
}
.pager:after { clear: both; }
.pager li { display: inline; }
.pager li > a,
.pager li > span {
	display: inline-block;
	padding: 5px 14px;
	background-color: #fff;
	border: 1px solid #ddd;
	border-radius: 15px;
}
.pager li > a:focus,
.pager li > a:hover {
	text-decoration: none;
	background-color: #eceeef;
}
.pager .disabled > a,
.pager .disabled > a:focus,
.pager .disabled > a:hover {
	color: #818a91;
	cursor: not-allowed;
	background-color: #fff;
}
.pager .disabled > span {
	color: #818a91;
	cursor: not-allowed;
	background-color: #fff;
}
.pager-next > a,
.pager-next > span { float: right; }
.pager-prev > a,
.pager-prev > span { float: left; }

/*----------------------------------------*----------------------------------------
Pagination
----------------------------------------*----------------------------------------*/

.pagination {
	margin-top: 20px;
	margin-bottom: 20px;
	border-radius: 3px;
	text-align: center;
}
.pagination > li { display: inline; }
.pagination > li > a,
.pagination > li > span {
	position: relative;
	float: left;
	padding: .5rem .75rem;
	margin-left: -1px;
	color: #808080;
	text-decoration: none;
	background-color: #fff;
	border: 1px solid #d9d9d9;
}
.pagination > li:first-child > a,
.pagination > li:first-child > span {
	margin-left: 0;
	border-top-left-radius: 3px;
	border-bottom-left-radius: 3px;
}
.pagination > li:last-child > a,
.pagination > li:last-child > span {
	border-top-right-radius: 3px;
	border-bottom-right-radius: 3px;
}
.pagination > li > a:focus,
.pagination > li > a:hover,
.pagination > li > span:focus,
.pagination > li > span:hover {
	color: #014c8c;
	background-color: #eceeef;
	border-color: #ddd;
}
.pagination > .active > a, .pagination > .active > a:focus, .pagination > .active > a:hover, .pagination > .active > span, .pagination > .active > span:focus, .pagination > .active > span:hover {
	z-index: 2;
	color: #fff;
	cursor: default;
	background-color: #0275d8;
	border-color: #0275d8;
}
.pagination > .disabled > span, .pagination > .disabled > span:focus, .pagination > .disabled > span:hover, .pagination > .disabled > a, .pagination > .disabled > a:focus, .pagination > .disabled > a:hover {
	color: #818a91;
	cursor: not-allowed;
	background-color: #fff;
	border-color: #ddd;
}
.pagination-lg > li > a, .pagination-lg > li > span {
	padding: .75rem 1.5rem;
	font-size: 1.25rem;
	line-height: 1.333333;
}
.pagination-lg > li:first-child > a, .pagination-lg > li:first-child > span {
	border-top-left-radius: 3px;
	border-bottom-left-radius: 3px;
}
.pagination-lg > li:last-child > a, .pagination-lg > li:last-child > span {
	border-top-right-radius: 3px;
	border-bottom-right-radius: 3px;
}
.pagination-sm > li > a, .pagination-sm > li > span {
	padding: .275rem .75rem;
	font-size: .85rem;
	line-height: 1.5;
}
.pagination-sm > li:first-child > a, .pagination-sm > li:first-child > span {
	border-top-left-radius: .2rem;
	border-bottom-left-radius: .2rem;
}
.pagination-sm > li:last-child > a, .pagination-sm > li:last-child > span {
	border-top-right-radius: .2rem;
	border-bottom-right-radius: .2rem;
}

/*----------------------------------------*----------------------------------------
Slick
----------------------------------------*----------------------------------------*/

.slick-slider {
	position: relative;
	display: none;
}

/*----------------------------------------
thumbnails
----------------------------------------*/

.slick-thumbnails {}
.slick-thumbnails .slick-slide {
	text-align: center;
	opacity: .25;
}
.slick-thumbnails .slick-slide.slick-active { opacity: 1; }
.slick-thumbnails .slick-slide img {
	display: inline;
	vertical-align: bottom;
}

/*----------------------------------------
arrow
デフォルトはinside
----------------------------------------*/

.slick-prev, .slick-next {
	font-size: 0;
	line-height: 0;
	position: absolute;
	top: 50%;
	display: block;
	padding: 0;
	cursor: pointer;
	border: none;
	outline: none;
	margin-top: -30px;
	background: none;
}
.slick-prev { left: 20px; }
.slick-next { right: 20px; }
.slick-prev:hover, .slick-prev:focus,
.slick-next:hover, .slick-next:focus { outline: none; }
.slick-prev:before, .slick-next:before {
	font-family: 'FontAwesome';
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-size: 60px;
	line-height: 1;
	color: #fff;
	opacity: .5;
}
.slick-prev:before { content: '\f104'; }
.slick-next:before { content: '\f105'; }

/* outside */

.slick-arrows-outside {}
.slick-arrows-outside .slick-prev:before,
.slick-arrows-outside .slick-next:before {
	color: #000;
	opacity: .15;
}
.slick-arrows-outside .slick-prev { left: -40px; }
.slick-arrows-outside .slick-next { right: -40px; }

/*----------------------------------------
nav
デフォルトはinside
----------------------------------------*/

.slick-dots {
	text-align: center;
	letter-spacing: -.4em;
	line-height: 0;
	position: absolute;
	bottom: 15px;
	left: 0;
	width: 100%;
	margin-bottom: 0;
}
.ebox .slick-dots { margin-bottom: 0; }
.slick-dots li {
	display: inline-block;
	letter-spacing: normal;
	margin: 0 5px;
}
.slick-dots button {
	font-size: 0;
	display: block;
	cursor: pointer;
	color: transparent;
	border: 0;
	outline: none;
	padding: 0;
	/* 丸いドットの場合 */
	width: 10px;
	height: 10px;
	background: rgba(0, 0, 0, .25);
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
}

/* 長方形ドットの場合 */

.slick-dots-bar {}
.slick-dots-bar .slick-dots button {
	width: 40px;
	height: 5px;
	background: rgba(0, 0, 0, .25);
	-moz-border-radius: 0;
	-webkit-border-radius: 0;
	border-radius: 0;
}
.slick-dots button:hover, .slick-dots button:active, .slick-dots button:focus { outline: none; }
.slick-dots button:hover, .slick-dots button:active, .slick-dots .slick-active button { background: rgba(0, 0, 0, .5); }


/* outside */

.slick-dots-outside .slick-dots {
	position: static;
	width: auto;
	margin-top: 10px;
}

/*----------------------------------------*----------------------------------------
Social
----------------------------------------*----------------------------------------*/

.social {
	letter-spacing: -.4em;
	white-space: nowrap;
}
.social a {
	letter-spacing: normal;
	display: inline-block;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	color: #fff;
	width: 30px;
	height: 30px;
	line-height: 30px;
	margin: 0 5px;
	text-align: center;
}
.social .btn-twitter { background: #55ACEE; }
.social .btn-facebook { background: #3A5795; }
.social .btn-googlePlus { background: #dd4b39; }
.social .btn-hatena { background: #109CDB; }

/* hatena */

.fa-hatena:before {
	content: "B!";
	font-family: Verdana;
	font-weight: bold;
}

/*----------------------------------------*----------------------------------------
Table
----------------------------------------*----------------------------------------*/

table {
	background-color: transparent;
	max-width: 100%;
	margin-top: 0;
	margin-bottom: 20px;
	width: 100%;
}
th { font-weight: normal; }
tbody th {
	text-align: left;
	white-space: nowrap;
}
caption {
	padding-top: .75rem;
	padding-bottom: .75rem;
	color: #818a91;
	text-align: left;
	caption-side: bottom;
}

/*----------------------------------------
	common_style
----------------------------------------*/

table.width-auto { width: auto; }
.td-number {
	text-align: right;
	white-space: nowrap;
}
.td-price {
	color: #d94c58; /*red*/
	text-align: right;
	white-space: nowrap;
}

/*----------------------------------------
	simple
----------------------------------------*/

.table-simple th,
.table-simple td { padding: 2px 5px; }
.table-simple th { font-weight: normal; }

/*----------------------------------------
basic_style
----------------------------------------*/

.table-basic th,
.table-basic td {
	border: 1px solid #ddd;
	padding: 5px 10px;
}

/* thead */

.table-basic thead th {
	border-bottom: 3px double #ddd;
	background: #f2f2f2;
}

/* tbody */

.table-basic tbody th { background: #f2f2f2; }

/* tfoot */

.table-basic tfoot td {
	border-top: 3px double #ddd;
	background: #f2f2f2;
}

/*----------------------------------------
table-border
----------------------------------------*/

.table-border th,
.table-border td {
	border-bottom: 1px dotted #000;
	padding: 10px 0;
	vertical-align: middle;
}

/* thead */

.table-border thead th {
	border-bottom: 3px double #000;
	padding: 5px 0;
}

/* tbody */

.table-border tbody th {
	position: relative;
	padding-right: 20px;
}
.table-border:not(.table-responsive) tbody tr:last-child th,
.table-border:not(.table-responsive) tbody tr:last-child td { border-bottom: none; }

/* tfoot */

.table-border tfoot td {
	border-top: 3px double #000;
	border-bottom: none;
	padding: 5px 0;
}

/* with-border */

.with-border-top, .with-border-bottom {}
.table-border.with-border-top { border-top: 1px solid #000; }
.table-border.with-border-bottom { border-bottom: 1px solid #000; }

/*----------------------------------------
	table-responsive
----------------------------------------*/

.table-responsive {}

/*----------------------------------------*----------------------------------------
Tab-nav
----------------------------------------*----------------------------------------*/
.tab-nav {
	margin-bottom: 20px;
	border-bottom: 1px solid #d9d9d9;
	background:url(../img/tab_bg.jpg) repeat-x bottom;
}
.tab-nav:before,
.tab-nav:after {
	display: table;
	content: " ";
}
.tab-nav:after { clear: both; }

/* li */

.tab-nav li {
	float: left;
	margin-bottom: -1px;
}
.tab-nav li + li { margin-left: 10px; }

/* a */

.tab-nav a {
	display: block;
	padding: 5px 30px;
	border: 1px solid transparent;
	border-radius: 3px 3px 0 0;
	border-color: #d9d9d9 #d9d9d9 #d9d9d9;
	background:#fff;
	text-decoration:none;
	color:#333;
}
.tab-nav a:focus,
.tab-nav a:hover { background:#ffada6; color:#fff; }
.tab-nav a.is-active,
.tab-nav a.is-active:focus,
.tab-nav a.is-active:hover,
.tab-nav li.is-active a,
.tab-nav li.is-active a:focus,
.tab-nav li.is-active a:hover {
	background-color: #fff;
	color:#333;
	border-color: #d9d9d9 #d9d9d9 transparent;
	background:url(../img/tab_bg.jpg) repeat-x top;
}

/* content */

.tab-content { display: none; }
.tab-content.is-active { display: block; }

/*----------------------------------------*----------------------------------------
Thumbnail
----------------------------------------*----------------------------------------*/

.thumbnail { margin-bottom: 20px; }
.thumbnail > img,
.thumbnail a > img { display: block; }
.thumbnail {
  display: block;
  padding: 4px;
  background-color: #fff;
  border: 1px solid #ccc;
  text-decoration:none;
}
.thumbnail > img,
.thumbnail a > img {
  margin-right: auto;
  margin-left: auto;
}
a.thumbnail:hover,
a.thumbnail:focus,
a.thumbnail.active {
  border-color: #999;
}
.thumbnail .caption {
  padding: 5px 10px 5px 10px;
  color: #333;
}

/*----------------------------------------*----------------------------------------
UL/OL
----------------------------------------*----------------------------------------*/

ol, ul, dl {
	margin-top: 0;
	margin-bottom: 20px;
}
li {
	list-style: none;
}
ol ol,
ul ul,
ol ul,
ul ol { margin-bottom: 0; }

/*----------------------------------------
basic
----------------------------------------*/

.list-basic li {
	list-style: disc;
	margin-left: 20px;
}
.list-basic > li { margin-bottom: 5px; }
.list-basic > li:last-child { margin-bottom: 0; }
.list-basic ul,
.list-basic ol { margin-top: 5px; }

/*----------------------------------------
number
----------------------------------------*/

.list-number li {
	list-style: decimal;
	margin-left: 20px;
}
.list-number > li { margin-bottom: 5px; }
.list-number > li:last-child { margin-bottom: 0; }
.list-number ul,
.list-number ol { margin-top: 5px; }

/*----------------------------------------
inline
----------------------------------------*/

.list-inline,
.list-inline ul,
.list-inline ol { letter-spacing: -.4em; }
.list-inline li,
.list-inline li li {
	letter-spacing: normal;
	display: inline;
	margin-right: 10px;
}
.list-inline ul,
.list-inline ol {
	position: relative;
	display: inline;
}
.list-inline ul:before,
.list-inline ol:before {
	content: "[";
	margin-right: 10px;
	margin-left: 5px;
}
.list-inline ul:after,
.list-inline ol:after { content: "]"; }

/*----------------------------------------*----------------------------------------
Visible & Hidden
----------------------------------------*----------------------------------------*/

.visible-sp, .visible-pc,
.visible-sp-block, .visible-sp-inline, .visible-sp-inline-block,
.visible-pc-block, .visible-pc-inline, .visible-pc-inline-block { display: none !important; }

	.visible-pc { display: block !important; }
	table.visible-pc { display: table; }
	tr.visible-pc { display: table-row !important; }
	th.visible-pc, td.visible-pc { display: table-cell !important; }
	.visible-pc-block { display: block !important; }
	.visible-pc-inline { display: inline !important; }
	.visible-pc-inline-block { display: inline-block !important; }

/*----------------------------------------
	hidden
----------------------------------------*/

	.hidden-pc { display: none !important; }
