/*
Theme Name: ksli_wptheme2018
Theme URI: http://ksli.co.jp
Author: design Xanthus
Author URI: https://d-xanthus.com/
Description: design Xanthus作成、キラーサービス研究所様WPテーマファイル
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: dx-basic-officlal
Tags: one-column, two-columns, right-sidebar, left-sidebar
*/

/*========================================================
　基本リセット(タグマージン)/ normalize.css読み込み前提
========================================================*/

h1, h2, h3, h4, h5, h6 { padding: 0; }

p { margin: 0 0 0.5em; }

figure {
	margin: 0;
	padding: 0;
}


/*========================================================
　基本タグ、クラス
========================================================*/

html {
	font: 16px/1.8 "YakuHanJPs",Arial,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	/* Arial,"Yu Gothic","YuGothic","游ゴシック体","游ゴシック", */
	margin-bottom: 1px;/*Opera用*/
	overflow: scroll;/*Opera用*/
}

/* ボックスサイジング */
*,
*:before,
*:after {
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-o-box-sizing:border-box;
	-ms-box-sizing:border-box;
	box-sizing:border-box;
}

/*---------------------------------------
　テキストカラー関連
---------------------------------------*/

body,
nav a,
.body-head a,
.body-foot a,
.sidebar a { color: #212121; }

a,
a:hover,
a:active,
.sidebar a:hover { color: #32afbf; }

/*---------------------------------------
　リンク関連
---------------------------------------*/

a { text-decoration: none; }

a:hover { text-decoration: underline; }

a:active { }

a:hover img,
a:active img {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
}

/* ホバー時 半透明無し */

a.opa-none:hover img,
a.opa-none:active img {
	opacity: 1;
	filter: alpha(opacity=100);
	-ms-filter: "alpha( opacity=100 )";
}

/*---------------------------------------
　テキストタグ基本サイズ
---------------------------------------*/

h1,h2,h3,h4,h5,h6 { line-height: 1.4; }

h2,h3,h4,h5,h6 { margin: 2em 0 0.5em;}

h2:first-child,
h3:first-child,
h4:first-child,
h5:first-child,
h6:first-child,
h2 + h3,
h3 + h4,
h4 + h5,
h5 + h6 { margin-top: 0; }

/* 見出しタグ サイズ*/

h1 { font-size: 1.8em; }

h2 { font-size: 1.5em; }

h3 { font-size: 1.375em; }

h4 { font-size: 1.2em; }

h5 { font-size: 1.125em; }

h6 { font-size: 1em; }

@media screen and ( min-width: 641px )  {

	h2,h3,h4,h5,h6 { margin: 3em 0 0.8em;}

	h1 { font-size: 2.375em; }

	h2 { font-size: 1.65em; }

	h3 { font-size: 1.5em; }

	h4 { font-size: 1.25em; }
}

/* その他基本設定 */

p:last-child { margin-bottom: 0; }

ul, ol {
	padding-left: 1.5em;
	margin: 0.5em 0 0.5em;
}

@media screen and ( min-width: 641px )  {

	ul, ol { margin-left: 1em; }

}


/*---------------------------------------
　メディア フルードサイズ
---------------------------------------*/

figure { text-align: center; }

img, object, video,
input[type="image"] {
	max-width: 100%;
	height: auto;
	line-height: 0;
	vertical-align: bottom;
}


/*---------------------------------------
　テーブルタグ 基本
---------------------------------------*/

table {
	line-height: 1.5;
	border-style: solid;
	border-width: 2px 0;
	border-spacing: 0;
	width: 100%;
	margin: 0.5em 0;
}

table thead,
table th { background: #e5edf1;}

table th,
table th { padding: 0.3em 0; }

table th { font-weight: normal; }

table td { border-bottom: 1px solid; }

table tr:last-child th,
table tr:last-child td { border-bottom: none; }

table thead tr:last-child th:last-child,
.widget_calendar thead tr:last-child th { border-bottom: 1px solid; }

table td p { margin-bottom: 0.3em; }


@media screen and ( min-width: 641px )  {

	table thead tr:last-child th { border-bottom: 1px solid; }

	table th,
	table td { border-bottom: 1px solid; }
}

.contents table th,
.contents table td { display: block; }

.contents table th { padding: 0.3em; }

.contents table td { padding: 0.5em 0.3em 1em; }

.widget_calendar caption {
	font-size: 1.125em;
	font-weight: 700;
	margin-bottom: 0.3em;
}

.widget_calendar tbody td,
.widget_calendar .pad { text-align: center; }

.widget_calendar tbody tr:not(:last-child) td { border-bottom: 1px dotted; }

.widget_calendar tfoot td { border-top: 1px solid }

.widget_calendar tfoot td:last-child { text-align: right; }

@media screen and ( min-width: 641px )  {

	.contents table th { min-width: 5.6em; }

	.contents table th,
	.contents table td {
		display: table-cell;
		padding: 1em 0.8em;
	}

	.contents > table td { padding-left: 2em; }
}


/*---------------------------------------
 フォーム関連タグ基本
---------------------------------------*/

/* フォームタグ基本 */

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="url"],
input[type="search"],
input[type="date"],
input[type="number"],
textarea,
select {
	font-size: 0.9375rem;
	width: 100%;
	padding: 5px 8px;
	border: 1px solid #d4d4d7;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	background: #fcfcfc;
	-moz-box-shadow: 1px 1px 2px #eee inset;
	-o-box-shadow: 1px 1px 2px #eee inset;
	-webkit-box-shadow: 1px 1px 2px #eee inset;
	box-shadow: 1px 1px 2px #eee inset;
}

textarea {
	height: auto;
	line-height: 1.5;
}

input[type="submit"],
input[type="reset"],
input[type="button"] {
	color: #fff;
	font-size: 1rem;
	line-height: 1.5;
	padding: 0.3em 1em;
	background: rgb(79,77,77);
	background: -moz-linear-gradient(top,  rgba(79,77,77,1) 0%, rgba(46,44,44,1) 100%);
	background: -webkit-linear-gradient(top,  rgba(79,77,77,1) 0%,rgba(46,44,44,1) 100%);
	background: linear-gradient(to bottom,  rgba(79,77,77,1) 0%,rgba(46,44,44,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#4f4d4d', endColorstr='#2e2c2c',GradientType=0 );
	border: 0;
	border-radius: 3px;
	-webkit-appearance: none;/*iPhoneへのボタン対策*/
	position: relative;
	box-shadow: 0 1px 1px rgba(0,0,0,0.5);
	display: inline-block;
	margin-top: 0.6em;
}

input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="button"]:hover {
	background: #0c0c0c;
	text-decoration: none;
}

input[type="submit"]:active,
input[type="reset"]:active,
input[type="button"]:active {
	top: 1px;
	box-shadow: 0 0 1px rgba(0,0,0,0.5);
}

input[disabled][type="submit"],
input[disabled][type="submit"]:hover,
input[disabled][type="submit"]:active {
	background: rgba(0,0,0,0.5);
	box-shadow: none;
	cursor: default;
}


/*---------------------------------------
 その他 タグ基本
---------------------------------------*/

abbr,
acronym { cursor: help; }

address { font-style: normal; }

big { font-size: 1.25em; }

blockquote {
	font-style: italic;
	background: #f5f5f5;
	margin: 1em;
	padding: 1.5em 2.5em;
	quotes: "" "";
	position: relative;
	border-radius: 0.5em;
}

blockquote:before,
blockquote:after {
	color: #999;
	font-size: 3em;
	line-height: 1;
	position: absolute;
}

blockquote:before {
	content: "“";
	top: 0.1em;
	left: 0.1em;
}

blockquote:after {
	content: "”";
	right: 0.35em;
	bottom: -0.4em;
}


blockquote cite {
	display: block;
	font-style: normal;
	font-weight: 600;
	margin-top: 0.5em;
}

em {
	font-weight: bold;
	font-style: normal;
}

mark,
ins {
	background: #eee;
	text-decoration: none;
}

pre {
	font-size: 0.9375rem;
	line-height: 1.6;
	overflow: auto;
	white-space: pre-wrap;
	word-wrap: break-word;
}

q { quotes: "“" "”" "‘" "’"; }

sup { vertical-align: -0.25em; }

/*========================================================
　 基本レイアウトブロック
========================================================*/

/*---------------------------------------
　基本ブロックエレメント
---------------------------------------*/

article,
section,
aside { margin-bottom: 40px; }

article:last-child,
section:last-child,
aside:last-child { margin-bottom: 0; }

main { padding-bottom: 40px; }

.center-box,
.center-box-l,
.center-box-s { margin: 0 3%; }

.center-box { max-width: 1080px; }

.center-box-s { max-width: 680px; }

.center-box-l { max-width: 1600px; }

@media screen and ( min-width: 680px )  {

	.center-box-s { margin: 0 auto; }
}

@media screen and ( min-width: 980px) {

	.layout-right,
	.layout-left {
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
	}

	.layout-left {
		-webkit-flex-direction: row-reverse;
		-ms-flex-direction:  row-reverse;
		flex-direction: row-reverse;
	}

	.layout-right main,
	.layout-left main{
		-webkit-flex: 1;
		-ms-flex: 1;
		flex: 1;
	}

	.layout-right #sidebar,
	.layout-left #sidebar { width: 300px;}

	.layout-right #sidebar { margin-left: 4.815%; }

	.layout-left #sidebar { margin-right: 4.815%; }

	.layout-full,
	.seminar-lp { width: 100%; }

	main { padding-bottom: 80px; }
}

@media screen and (min-width: 1144px) {

	.center-box { margin: 0 auto}
}

@media screen and ( min-width: 1696px )  {

	.center-box-l { margin: 0 auto; }
}


/* footer 下部固定用
---------------------------------*/

html,
body {
	height: 100%;
	margin: 0;
	padding: 0;
}

#body-wrap {
	position: relative;
	min-height: 100%;
}

#body-footer {
	position: absolute;
	bottom: 0;
	width: 100%;
}

@media print {/*印刷用、フッター重なり防止*/

	#wrapper { padding-bottom: 0 !important; }

	#body-footer {
		position: relative;
		bottom: 0;
		width: auto;
	}
}


/*========================================================
　基本・汎用クラス
========================================================*/

/*---------------------------------------
　クリアフィックス
---------------------------------------*/

.clearfix:before,
.clearfix:after {
	content: " ";
	display: table;
	clear: both;
}

.clearfix { *zoom: 1; }


/*---------------------------------------
　WordPress クラス関連
---------------------------------------*/

/* メディア関連 */

.alignright,
.aligncenter,
.alignleft {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

figure,
.alignnone,
.alignright,
.aligncenter,
.alignleft,
.wp-video { margin-bottom: 1em; }

figure img { margin-bottom: 0; }


/* 画像キャプション*/

.wp-caption { width: auto !important; }

.wp-caption-text,
.gallery-caption {
	display: block;
	font-size: 0.8em;
	line-height: 1.4;
	margin-top: 0.5em;
	padding-left: 1em;
	text-indent: -1em;
}

/* WPメディアプレイヤー フルード対応 */

.mejs-mediaelement {
	position: static !important;
	top: auto !important;
	bottom: 480px;
}

.mejs-overlay { position: static !important; }

@media screen and ( min-width: 641px ) {

	.alignright {
		float: right;
		margin-left: 1.5em;
	}

	.aligncenter {
		display: block;
		margin: 0 auto 1.5em;
	}

	.alignleft {
		float: left;
		margin-right: 1.5em;
	}
}

/* 画像ギャラリー
-------------------------------*/

.gallery {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.gallery-columns-2 > figure {
	width: 49%;
	margin-right: 2%;
}

.gallery-columns-3 > figure {
	width: 32%;
	margin-right: 2%;
}

.gallery-columns-4 > figure {
	width: 24.25%;
	margin-right: 1%;
}

.gallery-columns-5 > figure {
	width: 19.2%;
	margin-right: 1%;
}

.gallery-columns-6 > figure {
	width: 15.83%;
	margin-right: 1%;
}

.gallery-columns-7 > figure {
	width: 13.42%;
	margin-right: 1%;
}

.gallery-columns-8 > figure {
	width: 12.0625%;
	margin-right: 0.5%;
}

.gallery-columns-9 > figure {
	width: 10.66%;
	margin-right: 0.5%;
}

.gallery-columns-2 > figure:nth-child(2n),
.gallery-columns-3 > figure:nth-child(3n),
.gallery-columns-4 > figure:nth-child(4n),
.gallery-columns-5 > figure:nth-child(5n),
.gallery-columns-6 > figure:nth-child(6n),
.gallery-columns-7 > figure:nth-child(7n),
.gallery-columns-8 > figure:nth-child(8n),
.gallery-columns-9 > figure:nth-child(9n) { margin-right: 0; }

.gallery > figure:last-child,
.gallery-columns-2 > figure:nth-last-child(2),
.gallery-columns-3 > figure:nth-last-child(2),
.gallery-columns-3 > figure:nth-last-child(3),
.gallery-columns-4 > figure:nth-last-child(2),
.gallery-columns-4 > figure:nth-last-child(3),
.gallery-columns-4 > figure:nth-last-child(4),
.gallery-columns-5 > figure:nth-last-child(2),
.gallery-columns-5 > figure:nth-last-child(3),
.gallery-columns-5 > figure:nth-last-child(4),
.gallery-columns-5 > figure:nth-last-child(5),
.gallery-columns-6 > figure:nth-last-child(2),
.gallery-columns-6 > figure:nth-last-child(3),
.gallery-columns-6 > figure:nth-last-child(4),
.gallery-columns-6 > figure:nth-last-child(5),
.gallery-columns-6 > figure:nth-last-child(6),
.gallery-columns-7 > figure:nth-last-child(2),
.gallery-columns-7 > figure:nth-last-child(3),
.gallery-columns-7 > figure:nth-last-child(4),
.gallery-columns-7 > figure:nth-last-child(5),
.gallery-columns-7 > figure:nth-last-child(6),
.gallery-columns-7 > figure:nth-last-child(7),
.gallery-columns-8 > figure:nth-last-child(2),
.gallery-columns-8 > figure:nth-last-child(3),
.gallery-columns-8 > figure:nth-last-child(4),
.gallery-columns-8 > figure:nth-last-child(5),
.gallery-columns-8 > figure:nth-last-child(6),
.gallery-columns-8 > figure:nth-last-child(7),
.gallery-columns-8 > figure:nth-last-child(8),
.gallery-columns-9 > figure:nth-last-child(2),
.gallery-columns-9 > figure:nth-last-child(3),
.gallery-columns-9 > figure:nth-last-child(4),
.gallery-columns-9 > figure:nth-last-child(5),
.gallery-columns-9 > figure:nth-last-child(6),
.gallery-columns-9 > figure:nth-last-child(7),
.gallery-columns-9 > figure:nth-last-child(8),
.gallery-columns-9 > figure:nth-last-child(9)   { margin-bottom: 0; }


/*---------------------------------------
　WP基本その他関連
---------------------------------------*/

/* 先頭固定記事クラス */

.sticky {
	position: relative;
}

/* コメント関連 */

.bypostauthor { /* 管理人コメントクラス */
	border: 1px solid #333;
	padding: 2px;
}

/* スクリーンリーダー用テキストクラス*/
.screen-reader-text {
	position: absolute;
	clip: rect(1px, 1px, 1px, 1px);
	width: 1px;
	height: 1px;
}

/*---------------------------------------
　テキスト関連
---------------------------------------*/

/* フォントスタイル
-------------------------------*/

.text-center { text-align: center; }

.text-right { text-align: right; }

.text-bold { font-weight: 700; }

.text-normal { font-weight: 400; }

.text-mincho { font-family: 'Gilda Display', "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }

.text-gothic { font-family: "YakuHanJP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif; }

.wbf-OS { font-family: 'Open Sans', sans-serif; }

/* webフォント
-------------------------------*/

.wbf-OS {
	font-family: 'Open Sans', sans-serif;
	/*font-weight: 300;*/
}

.wbf-Cinzel { font-family: 'Cinzel', serif; }

.wbf-Gilda {
	font-family: 'Gilda Display', serif;
	font-weight: 400;
}

i.fa {
	vertical-align: 1px;
	text-indent: 0;
}

.fa.fa-phone { margin: 0 0.2em 0 -0.8em; }

/* テキストカラー
-------------------------------*/

.text-red { color: #f00 !important; }

.text-corp { color: #004c6f !important; }

.text-orange { color: #f8b500; }

.text-bgcorp {
	color: #fff !important;
	background: #004c6f;
	padding: 0.2em 0;
}

/* テキスト送り設定
-------------------------------*/

.lh-14 { line-height: 1.4 !important; }

.lh-16 { line-height: 1.6 !important; }


/* サイズ相対指定
-------------------------------*/

.text05 { font-size: 0.5em !important; }

.text06 { font-size: 0.6em !important; }

.text07 { font-size: 0.7em !important; }

.text08 { font-size: 0.8em !important; }

.text09 { font-size: 0.9em !important; }

.text110 { font-size: 1.1em !important; }

.text120 { font-size: 1.2em !important; }

.text130 { font-size: 1.3em !important; }

.text140 { font-size: 1.4em !important; }

.text150 { font-size: 1.5em !important; }

.text160 { font-size: 1.6em !important; }

.text170 { font-size: 1.7em !important; }

.text180 { font-size: 1.8em !important; }

/* インデント
-------------------------------*/

.contents p {
	text-indent: 1em;
	line-height:2em;
	margin-bottom: 1.5em;
}

.home .contents p,
.archive .contents p { margin-bottom: 0.5em; }

.contents form p,
.contents .indent0 p,
.contents p.indent0,
.contents td p { text-indent: 0; }

.contents .indent_-05 { text-indent: -0.5em; }

.contents .indent_-1,
.contents .p-indent_-1 p {
	padding-left: 1em;
	text-indent: -1em;
}


/* letterスペース
-------------------------------*/

.ls-005 { letter-spacing: -0.05em;}

.ls-01 { letter-spacing: -0.1em;}

.ls-02 { letter-spacing: -0.2em;}

.ls-03 { letter-spacing: -0.3em;}

.ls-04 { letter-spacing: -0.4em;}

.ls-05 { letter-spacing: -0.5em;}

/* th1文字目文字空け*/

.fls-1:first-letter { letter-spacing: 1em; }

.fls-2:first-letter { letter-spacing: 2em; }


/* <br>改行
-------------------------------*/

br.mb-br { display: inline; }

br.pc-br,
.pc-br br { display: none; }

/* 改行無し*/
.br-none br,
.br-none1st br:first-child,
.br-nonelast br:last-child { display: none;}

@media screen and ( min-width: 641px ) {

	br.mb-br { display: none; }

	br.pc-br,
	.pc-br br { display: inline; }
}

/* テキストhidden
-------------------------------*/

.text-hidden { overflow: hidden; }


/* アイテム非表示
-------------------------------*/

.dis-none { display: none; }

/* spanブロック
-------------------------------*/

.sp-block,
.mb-sp-block  { display: block; }

@media screen and ( min-width: 641px )  {

	.mb-sp-block { display: inline; }

	.pc-sp-block { display: block; }
}

/* 注釈テキスト
-------------------------------*/

.contents p.note,
.contents .note p {
	text-indent: -1em;
	padding-left: 1em;
	line-height: 1.4;
	margin-bottom: 0.3em;
}

/* 検索結果のハイライト
---------------------------------*/

.search-excerpt { background: #ff0; }

/* 記事編集リンク
-------------------------------*/

.edit-link {
	text-indent: 0;
	text-align: center;
}

/* テキストアンダーライン
-------------------------------*/

.uline-s { border-bottom: 1px solid; }

.uline-d { border-bottom: 1px dotted; }

/* マーカー */

.uline-marker {
	background: -moz-linear-gradient( transparent 80% , rgba(255,230,5,0.8) 0%) !important;
	background: -webkit-linear-gradient( transparent 80% ,rgba(255,230,5,0.8) 0%) !important;
	background: linear-gradient( transparent 80% ,rgba(255,230,5,0.8) 0%) !important;
}


/* ボタン設定
-------------------------------*/

p.btn-tx { text-indent: 0; }

.loop-article .btn-tx { text-align: right; }

.btn-tx > a:before {
	font-size: 1.4em;
	vertical-align: -0.08em;
}

.btn-tx a,
a.btn-tx{
	font-size: 13px;
	font-size: 0.8125em;
	line-height: 1;
	display: inline-block;
	padding: 0.2em 0.6em;
	border: 1px solid;
}

.btn-tx a:hover,
a:hover.btn-tx  {
	color: #fff !important;
	text-decoration: none;
	background: #32afbf;
	border-color: #32afbf;
}

/*---------------------------------------
　リスト関連
---------------------------------------*/

/* リストスタイルクリア
-------------------------------*/
nav ul,
ul.bread_crumb,
.widget-container ul,
.ul-none,
.ul-none ul,
.ol-none {
	list-style: none;
	padding: 0;
	margin: 0;
}

.style-none { list-style: none; }


/* スタイル再設定
-------------------------------*/

ul.ul-disc,
ol.ol-decimal { padding-left: 2.5em; }

ul.ul-disc,
.ul-disc ul { list-style: disc; }

ol.ol-decimal,
.ol-decimal ol { list-style: decimal; }


/* リストマージン
-------------------------------*/

.li-mg05 > li:not(:last-child) { margin-bottom: 0.5em; }

.li-mg1 > li:not(:last-child) { margin-bottom: 1em; }

.li-mg15 > li:not(:last-child) { margin-bottom: 1.5em; }

.li-mg2 > li:not(:last-child) { margin-bottom: 2em; }

.li-mg40 > li:not(:last-child) { margin-bottom: 40px; }

.li-mg80 > li:not(:last-child) { margin-bottom: 80px; }


/* リスト装飾
-------------------------------*/

/* リンクリスト */

.link-list > li,
.link-list > ul > li {
	padding-left: 0.65em;
	line-height: 1.4;
}

.link-list li:not(:last-child) { margin-bottom: 0.3em; }

.link-list > li:before,
.link-list > ul > li:before { margin-left: -0.65em; }

.link-list > li:before,
.link-list > ul > li:before,
.btn-tx > a:before {
	content: "\f105";
	font-family: FontAwesome;
	padding-right: 0.2em;
}

/* チェックリスト */

.check-list { list-style: none; }

.check-list > li:before {
	content: "\f046";
	font-family: FontAwesome;
	font-weight: normal;
	padding-right: 0.2em;
}


/* 下向き矢印
-------------------------------*/

.flow > li:after,
.flow-s > li:after {
   content: '';
	display: block;
	margin: 0.8em auto -12px;
	width: 0;
	height: 0;
	border-style: solid;
	border-color: #004c6f transparent transparent;
}

.flow > li:after { border-width: 24px 36px; }

.flow-s > li:after { border-width: 16px 20px; }

.flow > li:last-child:after,
.flow-s > li:last-child:after { content: none;}


/*---------------------------------------
　dl関連
---------------------------------------*/

/* dlフロート
-------------------------------*/

.dl-float { line-height: 1.4; }

.dl-float > dt { font-weight: bold; }

.dl-float > dd:not(:last-child) { margin-bottom: 0.5em; }

@media screen and ( min-width: 641px )  {

	.dl-float > dt {
		float: left;
		margin-right: 0.5em;
	}

	.dl-float > dd {
		display: block;
		overflow: hidden;
	}
}

/* Q & A
-------------------------------*/

.contents .QandA p { text-indent: 0; }

.QandA dt,
.QandA dd:first-letter,
.QandA dd p:first-child:first-letter {
	font-size: 1.2em;
	font-weight: bold;
}

.QandA dt {
	padding-left: 1.5em;
	text-indent: -1.5em;
	line-height: 1.4;
}

.QandA dd + dt {
	border-top: 1px dotted #999;
	padding-top: 1em;
	margin-top: 1em;
}

.QandA dd {
	margin: 0 0 0 0;
	padding-left: 1.5em;
}

.QandA dd,
.QandA dd p:first-child {
	text-indent: -1.5em;

}

.QandA dd:first-letter,
.QandA dd p:first-child:first-letter {}

.QandA dd li { text-indent: 0; }

/*---------------------------------------
　レイアウト・背景関連
---------------------------------------*/

/* ボックス、フレーム設定
-------------------------------*/

.box,
.wh-box,
.fr-box,
.fr-box-r { padding: 16px; }

.wh-box { background: #fff; }

/* フレーム */

.fr-box,
.fr-box-r,
.frame {
	border-style: solid;
	border-width: 1px;
}

.fr-box-r { border-radius: 8px; }

.frame img { margin: 0; }

.fr-lgray { border-color: #ccc; }

@media screen and ( min-width: 641px )  {

	.contents .wh-box,
	.contents .box,
	.contents .fr-box { padding: 24px; }
}

/* ボックスシャドウ */

.wh-box,
.box-shodow { box-shadow: 0 0 1px rgba( 0,0,0,0.3 ); }


/* 背景・フレームカラー設定
-------------------------------*/

/* 背景 */

.bg-white { background: #fff; }

.bg-lgray { background: #f5f5f5; }

.bg-lbeige { background: #f3eee5; }

.bg-lyellow { background: #f5f4e6; }

/* フレーム */

.fr-l-gray { border-color: #ccc; }


/* フロート関連
-------------------------------*/

.float-L { float: left }

.float-R { float: right }

.float-C { clear: both }


/* ポジション関連
-------------------------------*/
.relative { position: relative; }


/* ブロック横並び
-------------------------------*/

.sideby-side02,
.sideby-side03,
.sideby-side04 {
	list-style: none;
	margin: 0;
	padding: 0;
}

.sideby-side02:after,
.sideby-side03:after,
.sideby-side04:after {
	content: "";
	display: block;
	clear: both;
}

@media screen and ( min-width: 641px )  {

	.sideby-side02,
	.sideby-side03,
	.sideby-side04 {
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-justify-content: space-between;
		-ms-flex-pack: justify;
		justify-content: space-between;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	.sideby-side02 > li,
	.sideby-side02 > p { width: 48.235% !important; }

	.sideby-side03 > li,
	.sideby-side03 > p { width: 30.98% !important; }

	.sideby-side04 > li,
	.sideby-side04 > p { width: 22.36% !important; }
}


/*---------------------------------------
　マージン・パディング関連
---------------------------------------*/

/* マージン
-------------------------------*/

.mg-t0 { margin-top: 0 !important; }

.mg-t8 { margin-top: 8 !important; }

.mg-t16 { margin-top: 16px !important; }

.mg-t32 { margin-top: 32px !important; }

.mg-t40 { margin-top: 40px !important; }

.mg-b0 { margin-bottom: 0 !important; }

.mg-b8 { margin-bottom: 8px !important; }

.mg-b16 { margin-bottom: 16px !important; }

.mg-b32 { margin-bottom: 32px !important; }

.mg-b40 { margin-bottom: 40px !important; }

.mg-b56 { margin-bottom: 56px !important; }

.mg-b80 { margin-bottom: 80px !important; }

.mg-tb0 { margin: 0 !important; }

.mg-tb16 { margin: 16px 0 !important; }

.mg-tb32 { margin: 32px 0 !important; }

.mg-tb40 { margin: 40px 0 !important; }

.mg-l0 { margin-left: 0 !important; }

.mg-l1 { margin-left: 1em !important; }


/* パディング
-------------------------------*/

.pd-t0 { padding-top: 0;}

.pd-tb40 { padding: 40px 0; }

.pd-tb56 { padding: 56px 0; }


/*========================================================
　オリジナルデザイン 基本設定
========================================================*/

/*---------------------------------------
 ヘッダー&フッター&サイドバー 基本設定
 ---------------------------------------*/

.body-head,
.body-foot {
}

.body-head ul,
.body-foot ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.body-head,
.body-foot,
.sidebar {
	font-size: 15px;
	font-size: 0.9375rem;
	line-height: 1.5;
}

/* サイトタイトル */

.site-title,
.foot-title {
	/*font-size: 1.8rem;*/
	font-size: 1.1rem;
	font-weight: 700;
	margin: 0 0 0.3em;
}

.site-title img,
.foot-title img {
	width: auto;
	max-height: 60px;
}

/* ロゴテキスト組合せ */

.site-title.logo-left img,
.foot-title.logo-left img {
   max-height: 2.2em;
   margin-right: 0.3em;
   vertical-align: middle;
}



@media screen and ( min-width: 641px )  {

	.site-title,
	.foot-title {
		font-size: 1.6rem;
		margin: 0;
	}

	.site-title.logo-left img,
	.foot-title.logo-left img {
		vertical-align: -0.3em;
	}
}

/*---------------------------------------
　ヘッダー設定
---------------------------------------*/

.body-head {
	padding-top: 48px;
	background: rgb(229,237,241);
	background: -moz-linear-gradient(top, rgba(229,237,241,1) 0%, rgba(255,255,255,1) 60%);
	background: -webkit-linear-gradient(top, rgba(229,237,241,1) 0%,rgba(255,255,255,1) 60%);
	background: linear-gradient(to bottom, rgba(229,237,241,1) 0%,rgba(255,255,255,1) 60%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e5edf1', endColorstr='#ffffff',GradientType=0 );
}

.head-contents {
	text-align: center;
	padding: 16px 0;
}

/* ヘッダー電話・住所 */

.head-add li:not(:last-child) { margin-bottom: 0.5em; }

.mb-guide { display: block; }

.tel-number {
	font-size: 24px;
	font-size: 1.5rem;
	line-height: 1;
}

.head-address br:first-child { display: none; }

@media screen and ( min-width: 641px )  {

	.body-head { padding-top: 0; }

	.head-contents {
		text-align: left;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-justify-content: space-between;
		-ms-flex-pack: justify;
		justify-content: space-between;
		-webkit-align-items: center;
		-ms-flex-align: center;
		align-items: center;
	}

	.title-wrap {
		position: relative;
	}

	.site-description {
		position: absolute;
		left: 15.5%;
		margin: 0;
	}

	ul.head-add { text-align: right; }

	.head-add li:not(:last-child) { margin-bottom: 0em; }

	.head-address br:first-child { display: none; }
}

@media screen and ( min-width: 980px )  {

	.head-address br { display: none; }
}

/*---------------------------------------
　ナビゲーション設定
---------------------------------------*/

/* スマートフォン設定
-------------------------------*/

@media screen and (max-width : 640px) {

	.main-menu li a { color: #fff; }

	.main-menu > li:hover > a,
	.main-menu > li:hover li:hover,
	.main-menu li:hover ul li ul li:hover { background: #004c6f; }

	/*==== MeanMenu 設定====（クラス名はjsファイルにて）*/

	.mean-container .mean-bar {
		width: 100%;
		position: fixed; /*position固定*/;
		top: 0;
		left: 0;/*position固定のため位置の設定が必要*/
		background: rgba( 0,0,0,0.85 );
		min-height: 48px;
		z-index: 9999;
	}

	.mean-container a.meanmenu-reveal {
		color: #fff;
		text-decoration: none;
		font-size: 16px; /*htmlスクリプト[meanMenuCloseSize:]と設定を合わせる*/
		display: block;
		padding: 8px 4px;
		position: absolute;
		top: 0;
		right: 0;
	}

	.mean-container a.meanmenu-reveal:before {
		content: "";
		display: inline-block;
		width: 18px;
		height: 18px;
		margin-right: 5px;
	}

	.mean-container a.meanmenu-reveal:before { background: url(images/ico_menu01.png) no-repeat center 3px; }

	.mean-container a.meanmenu-reveal.meanclose:before { background: url(images/ico_menu02.png) no-repeat center 3px; }

	.mean-container .mean-nav {
		float: left;
		width: 100%;
		margin-top: 48px;
	}

	.mean-container .mean-nav ul {
		padding: 0;
		margin: 0;
		width: 100%;
		list-style-type: none;
	}

	.mean-container .mean-nav ul li {
		position: relative;
		float: left;
		width: 100%;
	}

	.mean-container .mean-nav ul li a {
		display: block;
		float: left;
		width: 90%;
		padding: 10px 5% 10px 42px; /*リスト高さ*/
		margin: 0;
		text-align: left;
		border-top: 1px solid #383838;
		border-top: 1px solid rgba(255,255,255,0.5);
		text-decoration: none;
		text-transform: uppercase;

	}

	.mean-container .mean-nav ul li li a {
		width: 80%;
		padding: 10px 10% 10px 42px;
		border-top: 1px solid #f1f1f1;
		border-top: 1px solid rgba(255,255,255,0.25);
		visibility: visible;
	}

	.mean-container .mean-nav ul li.mean-last a {
		border-bottom: none;
		margin-bottom: 0;
	}

	.mean-container .mean-nav ul li li li a {
		width: 70%;
		padding: 10px 15%;
	}

	.mean-container .mean-nav ul li li li li a {
		width: 60%;
		padding: 10px 20%;
	}

	.mean-container .mean-nav ul li li li li li a {
		width: 50%;
		padding: 10px 25%;
	}

	.mean-container .mean-nav ul li a.mean-expand {
		margin-top: 1px;
		width: 10px;/*26px*/
		/*height: 34px;*/
		padding: 10px !important;
		text-align: center;
		position: absolute;
		left: 0;/*right: 0;*/
		top: 0;
		z-index: 2;
		font-weight: 700;
		background: rgba(255,255,255,0.1);
		border: none !important;
		border-right: 1px solid rgba(255,255,255,0.4) !important;
		border-bottom: 1px solid rgba(255,255,255,0.2) !important;
	}

	.mean-container .mean-nav ul li a.mean-expand:hover { background: rgba(0,0,0,0.2); }

	.mean-container .mean-push {
		float: left;
		width: 100%;
		padding: 0;
		margin: 0;
		clear: both;
	}

	.mean-nav .wrapper {
		width: 100%;
		padding: 0;
		margin: 0;
	}

	/* Fix for box sizing on Foundation Framework etc. */
	.mean-container .mean-bar,
	.mean-container .mean-bar * {
		-webkit-box-sizing: content-box;
		-moz-box-sizing: content-box;
		box-sizing: content-box;
	}

	.mean-remove { display: none !important; }
}


/* タブレット・PC用 設定
-------------------------------*/

@media screen and (min-width : 641px) {

	.main-nav { border-top: 1px solid #fff; }

	.main-nav {
		background: #fff;
		border-top: 1px solid #004c6f;
	}

	/* 第1階層 */

	.main-menu {
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-justify-content: center;
		-ms-flex-pack: center;
		justify-content: center;
	}

	.main-menu li {
		line-height: 1.4;
		text-align: center;
		position: relative;
		margin: 0;
		padding: 0;
		height: 3em;
	}

	.main-menu li a {
		display: block;
		text-decoration: none;
		position: relative;
		top: 50%;
		-webkit-transform: translate(0,-50%);
		-ms-transform: translate(0,-50%);
		transform: translate(0,-50%);
	}

	.main-menu > li > a {
		/*border-left: 1px solid #f9f5f1;*/
		padding: 0 0.3em;
	}

	@media screen and ( min-width: 910px )  {
		.main-menu > li > a { padding: 0 1em; }
	}

	@media screen and ( min-width: 1160px )  {
		.main-menu > li > a { padding: 0 1.8em; }
	}

	/*.main-menu > li:last-child > a { border-right: 1px solid #f9f5f1; }*/

	.main-menu > li.menu-item-has-children > a { position: relative; }

	.main-menu > li.menu-item-has-children > a:after {
		content: '';
		width: 0;
		height: 0;
		border: 4px solid transparent;
		border-top-color: #f9f5f1;
		position: absolute;
		top: 50%;
		margin-left: 0.2em;
	}

	/* 第2階層 */

	.main-menu > li ul {
		position: absolute;
		z-index: 100;
		top: 100%;
		left: 0;
		width: 120%;
	}

	.main-menu > li:last-child ul {
		left: auto;
		right: 0;
	}

	.menu-items-num-3 .main-menu li ul li,
	.menu-items-num-4 .main-menu li ul li,
	.menu-items-num-5 .main-menu li ul li,
	.menu-items-num-6 .main-menu li ul li,
	.menu-items-num-7 .main-menu li ul li,
	.menu-items-num-8 .main-menu li ul li {
		overflow: hidden;
		width: 100%;
		height: 0;
		-moz-transition: 0.2s;
		-o-transition: 0.2s;
		-webkit-transition: 0.2s;
		-ms-transition: 0.2s;
		transition: 0.2s;
	}

	.main-menu li ul li {
		background: rgb(198,159,112);
		background: -moz-linear-gradient(top,  rgba(198,159,112,1) 0%, rgba(145,116,82,1) 100%);
		background: -webkit-linear-gradient(top,  rgba(198,159,112,1) 0%,rgba(145,116,82,1) 100%);
		background: linear-gradient(to bottom,  rgba(198,159,112,1) 0%,rgba(145,116,82,1) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#c69f70', endColorstr='#917452',GradientType=0 );
	}

	.main-menu > li:hover > ul > li {
		overflow: visible;
		height: 3em;
		border-top: 1px solid #fff;
		line-height: 1.2;
		padding: 0 0.5em;
	}

	.main-menu > li:hover > ul { border-bottom: 1px solid #f9f5f1; }

	/* 第３階層*/

	.main-menu li ul li ul {
		top: 0;
		left: 100%;
	}

	.main-menu li:last-child ul li ul {
		left: -100%;
		width: 100%;
	}

	.main-menu li ul li ul:before,
	.main-menu li:last-child ul li ul:before {
		position: absolute;
		content: "";
		top: 1.5em;
		-webkit-transform: translate(0,-50%);
		-ms-transform: translate(0,-50%);
		transform: translate(0,-50%);
		width: 0;
		height: 0;
		border: 5px solid transparent;
	}

	.main-menu li ul li ul:before {
		left: -10px;
		border-left-color: #f9f5f1;
	}

	.main-menu li ul li:hover > ul {
		top: -1px;
		border-top: 1px solid #f9f5f1;
	}

	.main-menu li ul li:hover ul:before { border-left-color: #f9f5f1; }

	.main-menu li ul li:hover > ul > li {
		overflow: visible;
		height: 3em;
		border: 1px solid;
		border-color: transparent transparent #f9f5f1 transparent;
	}

	.main-menu li:last-child ul li ul:before {
		left: 100%;
		border-right-color: #f9f5f1;
	}

	.main-menu li:last-child ul li:hover ul:before {
		border-right-color: #f9f5f1;
		border-left-color: transparent;
	}

	.main-menu li:last-child ul li:hover > ul > li {
		border-color: transparent;
		border-right-color: #f9f5f1;
	}
}


/*---------------------------------------
　フッター設定
---------------------------------------*/

.body-foot {
	border-top: 1px solid #004c6f;
	background: #fff;
}

.foot-contents { padding: 16px 0; }

.foot-nav {
	padding-left: 1em;
	margin-bottom: 2em;
}

.foot-titlewrap li:not(:last-child) { margin-bottom: 0.3em; }

.foot-titlewrap .site-description { text-align: center; }

.foot-address br:first-child { display: none; }

.copyright {
	color: #fff;
	font-size: 13px;
	font-size: 0.8125rem;
	text-align: center;
	margin: 0;
	padding: 0 0 0.3em;
	background: #004c6f;
}

@media screen and ( min-width: 500px )  {

	.foot-contents { padding: 40px 0; }

	.foot-nav {
		padding-left: 0;
		margin-bottom: 2em;
	}

	.foot-menu {
		padding: 0;
		width: 100%;
		-moz-column-count: 3;
		-webkit-column-count: 3;
		-o-column-count: 3;
		-ms-column-count: 3;
		column-count: 3;
	}
}

@media screen and ( min-width: 980px )  {

	.foot-contents {
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-justify-content: space-between;
		-ms-flex-pack: justify;
		justify-content: space-between;
		-webkit-flex-direction: row-reverse;
		-ms-flex-direction:  row-reverse;
		flex-direction: row-reverse;
		-webkit-align-items: flex-end;
		-ms-flex-align: flex-end;
		align-items: flex-end;
	}

	.foot-nav {
		margin: 0 0 0 1em;
		max-width: 60%;
	}
}

@media screen and ( min-width: 1144px )  {

	.foot-address br { display: none; }
}

/* トップへ戻るボタン
-------------------------------*/

#page-top {
	width: 50px;
	height: 50px;
	position: fixed;
	bottom: 120px;
	right: 24px;
	z-index: 9999;
}

#page-top a {
	color: #fff;
	text-align: center;
	display: block;
	position: relative;
	width: 100%;
	height: 100%;
	background: #f8b500;
	border-radius: 50%;
	-webkit-transition: 1s;
	transition: 1s;
	filter: alpha(opacity=50);
	opacity: 0.5;
}

.page-top a::before {
	content: '';
	display: block;
	width: 40%;
	height: 40%;
	border-style: solid;
	border-width: 3px 3px 0 0;
	border-color: #fff #fff transparent transparent;
	border-radius: 1px;
	position: absolute;
	top: 38%;
	left: 50%;
	-ms-transform: translate(-50%) rotate(-45deg);
	transform: translate(-50%) rotate(-45deg);
}

#page-top a:hover {
	text-decoration: none;
	filter: alpha(opacity=100);
	opacity: 1.0;
}

#page-top a:hover {
	text-decoration: none;
	filter: alpha(opacity=100);
	-moz-opacity: 1.0;
	opacity: 1.0;
}


/*========================================================
　ウィジェット、サイドバー 設定
========================================================*/

.sidebar .widget-container {
	width: 300px;
	margin: 0 auto 40px;
	background: #fff;
	box-shadow: 0 0 1px rgba( 0,0,0,0.3 );
}

.widget-title,
.home-widget-title {
	border-bottom: 2px solid #004c6f;
}

.widget-title {
	font-size: 1.2em;
	padding: 0.5em 16px 0.3em;
}

.widget-title + div,
.widget-title + ul  { padding: 0 16px 16px; }

.calendar_wrap { margin: 8px; }

.widget_media_gallery .gallery {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.widget_media_gallery .gallery figure { margin: 0; }

@media screen and ( min-width: 641px )  {

	.widget-title { font-size: 1.25em; }

	.full-sidebox {
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		-webkit-justify-content: center;
		-ms-flex-pack: center;
		justify-content: center;
	}

	.full-sidebox .widget-container { margin: 0 2% 40px; }
}


/* searchウィジェット設定*/

.widget_search form div {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

.widget_search input[type="submit"] {
	font-size: 1em;
	line-height: 1;
	padding: 0.1em 1em;
	margin: 0 0 0 0.5em;
}

/* メルマガ登録フォーム */

.mail-widget.widget-container {
	position: relative;
	background: url(images/mailmagz_bg.png) no-repeat center 1.75em,rgb(17,137,223);
	background: url(images/mailmagz_bg.png) no-repeat center 1.75em,-moz-linear-gradient(top,  rgba(17,137,223,1) 0%, rgba(16,66,155,1) 100%);
	background: url(images/mailmagz_bg.png) no-repeat center 1.75em,-webkit-linear-gradient(top,  rgba(17,137,223,1) 0%,rgba(16,66,155,1) 100%);
	background: url(images/mailmagz_bg.png) no-repeat center 1.75em,linear-gradient(to bottom,  rgba(17,137,223,1) 0%,rgba(16,66,155,1) 100%);
	filter:  url(images/mailmagz_bg.png) no-repeat center 1.75em,progid:DXImageTransform.Microsoft.gradient( startColorstr='#1189df', endColorstr='#10429b',GradientType=0 );
	background-size: contain;
}

.mail-widget .widget-title {
	color: #fff;
	text-align: center;
	border-bottom-color: #f8b500;
	background: rgb(0,39,56);
	background: -moz-linear-gradient(top, rgba(0,39,56,1) 0%, rgba(0,76,111,1) 100%);
	background: -webkit-linear-gradient(top, rgba(0,39,56,1) 0%,rgba(0,76,111,1) 100%);
	background: linear-gradient(to bottom, rgba(0,39,56,1) 0%,rgba(0,76,111,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#002738', endColorstr='#004c6f',GradientType=0 );
}

.mail-widget,
.mail-widget a { color: #fff; }

.mailmagz-title,
.mailmagz-title + p { text-shadow: 0 0 2px rgba(0,0,0,0.8) }

.mailmagz-title {
	font-size: 1.5em;
	font-weight: 400;
	text-align: center;
	line-height: 1.2;
	margin-bottom: 0.5em;
}

.mailmagz-title + p {
	font-size: 14px;
	padding: 0 0.5em;
}

.mailmagz-form { margin-top: 1em; }

.mailmagz-form label { display: none; }

.mailmagz-form input[type="text"],
.mailmagz-form input[type="email"] { margin-bottom: 1em; }

.mail-widget input[type="submit"] {
	font-size: 0.875rem;
	margin-top: 0;
}

.mail-widget input[type="submit"] {
	font-size: 0.9375rem;
	text-shadow: 0 0 2px rgba(0,0,0,0.3);
	margin-top: 0;
	background: rgb(248,181,0);
	background: -moz-linear-gradient(top, rgba(248,181,0,1) 0%, rgba(196,140,0,1) 100%);
	background: -webkit-linear-gradient(top, rgba(248,181,0,1) 0%,rgba(196,140,0,1) 100%);
	background: linear-gradient(to bottom, rgba(248,181,0,1) 0%,rgba(196,140,0,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f8b500', endColorstr='#c48c00',GradientType=0 );
}

.mail-widget input[type="submit"]:hover { background: #f8b500; }

.acmail-logo {
	font-size: 10px;
	margin: 0;
	text-align: right;
}

.sidebar .acmail-logo a { color: #ccc; }

/* サイド バナーメニュー */

.banner-box.widget-container {
	background: none;
	box-shadow: none;
}

.widget_simpleimage {
	background: #fff;
	position: relative;
	box-shadow: 0 0 1px rgba( 0,0,0,0.3 );
}

.widget_simpleimage,
.sidebar .widget_simpleimage a { color: #fff; }

.widget_simpleimage a:hover { text-decoration: none; }

.widget_simpleimage:not(:last-child) { margin-bottom: 20px; }

.simple-image > a {
	text-align: right;
	display: block;
	position: relative;
}

.simple-image > a > img {
	width: auto;
	height: 80px;
}

.simple-image a:after {
	content: '';
	display: block;
	height: 100%;
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background: -moz-linear-gradient(left,  rgba(0,76,111,1) 0%, rgba(0,76,111,1) 60%, rgba(0,76,111,0) 70%, rgba(0,76,111,0) 100%);
	background: -webkit-linear-gradient(left,  rgba(0,76,111,1) 0%,rgba(0,76,111,1) 60%,rgba(0,76,111,0) 70%,rgba(0,76,111,0) 100%);
	background: linear-gradient(to right,  rgba(0,76,111,1) 0%,rgba(0,76,111,1) 60%,rgba(0,76,111,0) 70%,rgba(0,76,111,0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#004c6f', endColorstr='#00004c6f',GradientType=1 );
}

.simple-image a:hover img {
	opacity: 1;
	filter: alpha(opacity=100);
	-ms-filter: "alpha( opacity=100 )";
}

.widget_simpleimage:hover {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
}

.simple-image + p,
.sidebar .widget_simpleimage .more a {
	color: #fff;
	position: absolute;
	width: 80%;
	padding-left: 12px;
}

.simple-image + p {
	font-size: 13px;
	font-family: 'PT Serif',"ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	letter-spacing: 1px;
	top: 5%;
}

.widget_simpleimage .more a {
	font-size: 19px;
	font-size: 1.1875rem;
	line-height: 1.2;
	top: 58%;
	-webkit-transform: translate(0,-50%);
	-ms-transform: translate(0,-50%);
	transform: translate(0,-50%);
	text-shadow: 0 0 1px rgba(52,61,85,1),0 0 2px rgba(52,61,85,1);
}

.widget_simpleimage .more a:first-letter { color: #f8b500; }


/* コンテンツフットウィジェット
-------------------------------*/

.contfoot-widget:not(:last-child) { margin-bottom: 16px; }

.contents .contfoot-title {
	color: #a90000;
	font-size: 1.125em;
	margin-bottom: 0.3em;
}

.contfoot-title:before {
	content: '';
	display: inline-block;
	width: 4px;
	height: 1em;
	background: #a90000;
	vertical-align: -0.1em;
	margin-right: 6px;
}

/*.contfoot-widget { border-color: #004c6f; }

.contents .contfoot-title {
	color: #a90000;
	font-size: 1.125em;
	margin-bottom: 0.3em;
}

.contfoot-title:before {
	content: '';
	display: inline-block;
	width: 4px;
	height: 1em;
	background: #a90000;
	vertical-align: -0.1em;
	margin-right: 6px;
}*/

/*========================================================
　Wrapper部共通
========================================================*/

.wrap-head { margin: 20px auto 20px; }

@media screen and ( min-width: 641px )  {

	.wrap-head { margin: 20px auto 40px; }
}

/* パンくずリスト
-------------------------------*/

.bread_crumb {
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 1.2;
}

.bread_crumb li {
	display: inline-block;
	vertical-align: text-top;
}

.bread_crumb li:after {
	content: ">";
	display: inline;
	margin: 0 0 0 0.3em;
}

.bread_crumb li:last-child {
	max-width: 20em;
	height: 1.2em;
	overflow: hidden;
	white-space: nowrap;
	-o-text-overflow: ellipsis;/* Opera 9-10 */
	text-overflow: ellipsis;
}

.bread_crumb li:last-child:after { content: none; }


/*========================================================
　contents部分基本
========================================================*/

.contents > section:last-child { margin-bottom: 0; }

.contents > .wh-box > h2,
.contents > .wh-box > h3 { color: #004c6f; }

.contents > .wh-box > h2 {
	padding-bottom: 0.2em;
	border-bottom: 1px solid;
}

.contents a { color: #a90000; }


/*========================================================
　アーカイブ&シングル&固定共通（サイズ以外）
========================================================*/

/* ページタイトル
-------------------------------*/

.contents-head,
.single-con-head {
	margin-bottom: 28px;
	background: -moz-linear-gradient(top,  rgba(255,255,255,1) 0%, rgba(255,255,255,1) 80%, rgba(255,255,255,0) 100%);
	background: -webkit-linear-gradient(top,  rgba(255,255,255,1) 0%,rgba(255,255,255,1) 80%,rgba(255,255,255,0) 100%);
	background: linear-gradient(to bottom,  rgba(255,255,255,1) 0%,rgba(255,255,255,1) 80%,rgba(255,255,255,0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#00ffffff',GradientType=0 );
}

.contents-title {
	font-weight: 400;
	text-align: center;
	margin: 0;
	padding: 0.5em 0;
	position: relative;
}

.contents-title.img-title { padding-top: 0; }

.tit-txt,
.tit-sub,
.tit-img { display: block; }

.tit-txt {
	color: #004c6f;
	padding-bottom: 0.1em;
	border-bottom: 2px solid #004c6f;
	margin: 0 8px;
}

.tit-sub,
.single-meta {
	font-size: 1rem;
	font-weight: normal;
	margin-top: 0.3em;
}

.tit-img {
	height: 140px;
	overflow: hidden;
	position: relative;
	margin: 0 0 0.3em;
}

.tit-img img {
	width: 100%;
	position: relative;
	top: 50%;
	-webkit-transform: translate(0,-50%);
	-ms-transform: translate(0,-50%);
	transform: translate(0,-50%);
}

@media screen and ( min-width: 641px )  {

	.contents-head,
	.single-con-head {
		margin-bottom: 40px;
	}

	.contents-title {
		font-size: 30px;
		font-size: 1.875rem;
	}

	.contents-title.img-title {
		width: 100%;
		padding: 0;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-align-items: center;
		-ms-flex-align: center;
		align-items: center;
		background: #fff;
		box-shadow: 0 0 1px rgba( 0,0,0,0.3 );
		border: 1px solid #ccc;
	}

	.tit-img {
		width: 40%;
		height: 160px;
		overflow: hidden;
		margin: 0;
		position: relative;
	}

	.tit-txt-wrap {
		width: 60%;
		padding: 0 16px;
	}

	.tit-txt { margin: 0 24px; }

	.tit-txt-wrap .tit-txt {
		margin: 0;
		line-height: 1.2;
		border-bottom: none;
	}
}

@media screen and ( min-width: 980px )  {

	.contents-head + .wh-box,
	.new-cat-section.wh-box,
	.column-backnumber.wh-box,
	.semi-end-section.wh-box,
	.single-con-head + .wh-box {
		padding-left: 48px;
		padding-right: 48px;
	}

	.page-template .contents-head + .wh-box {
		padding: 72px 16%;
	}

	.contents > .new-cat-section.wh-box > .loop-section-tit,
	.contents > .column-backnumber.wh-box > .loop-section-tit,
	.contents > .semi-end-section.wh-box > .loop-section-tit { margin: -24px -48px 1em; }
}


/*========================================================
　 アーカイブページ
========================================================*/

.page-desc { margin-bottom: 40px; }

.contents > .wh-box > .new-cat-section { margin-bottom: 80px; }
.contents > .wh-box > .loop-section-tit {
	color: #fff;
	font-weight: normal;
	text-align: center;
	padding: 0.2em 0;
	margin-bottom: 1em;
	border-bottom-color: #f8b500;
	border-bottom-width: 2px;
	background: rgb(0,39,56);
	background: -moz-linear-gradient(top, rgba(0,39,56,1) 0%, rgba(0,76,111,1) 100%);
	background: -webkit-linear-gradient(top, rgba(0,39,56,1) 0%,rgba(0,76,111,1) 100%);
	background: linear-gradient(to bottom, rgba(0,39,56,1) 0%,rgba(0,76,111,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#002738', endColorstr='#004c6f',GradientType=0 );
}

.wh-box > .loop-section-tit { margin: -16px -16px 1em }

@media screen and ( min-width: 641px )  {

	.wh-box > .loop-section-tit { margin: -24px -24px 1em }
}

/*---------------------------------------
　ループ内 設定
---------------------------------------*/

.loop-article { position: relative; }

.loop-article:not(:last-child) {
	padding-bottom: 16px;
	border-bottom: 1px dotted #212121;
	margin-bottom: 16px;
}

.loop-article:last-child { margin-bottom: 0; }

.loop-head { margin-bottom: 0.5em; }

.loop-title {
	font-size: 1.375em;
	margin-bottom: 0;
}

.loop-title a {
	color: #004c6f;
}

.loop-meta {
	text-align: center;
	font-size: 0.875rem;
	border-top: 1px solid #ccc;
}

@media screen and ( min-width: 641px )  {

	.loop-head,
	.loop-head + p { overflow: hidden; }
}


/* サムネイル設定 */

.thum-box {
	text-align: center;
	width: 100%;
	padding-top: 66%;
	overflow: hidden;
	margin: 0 auto 1em;
	position: relative;
	/*background: #f5f5f5;*/
}

.thum-box img {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	/*width: auto;
	max-width: 120%;
	max-height: 120%;*/
}

.thum-box img.img-height {
	-webkit-transform: translate(-50%, -36%);
	-ms-transform: translate(-50%, -36%);
	transform: translate(-50%, -36%);
}

.thum-box img.ratio {
	height: 100%;
	max-width: none;
	width: auto;
}

.column-loop .thum-box { padding-top: 90% }

.column-loop .thum-box img {
	width: auto;
	height: 100%;
}

@media screen and ( min-width: 641px )  {

	.thum-box {
		width: 30%;
		padding-top: 19.8%;
		max-height: none;
		float: left;
		margin: 0 1em 0 0;
	}

	.new-cat-section .thum-box {
		width: 100%;
		padding-top: 66%;
		margin: 0 0 1em;
		float: none;
	}

	.new-cat-section .column-loop .thum-box { padding-top: 66% }

	.column-loop .thum-box { padding-top: 26% }
}

/* Page Navi プラグイン設定
-------------------------------*/

.archive-foot { margin-top: 40px; }

.wp-pagenavi {
	clear: both;
	text-align: center;
}

.wp-pagenavi a,
.wp-pagenavi span {
	color: #2b1e19;
	text-decoration: none;
	padding: 0.1em 0.5em;
	margin: 0 3px;
	background: #fff;
	-moz-box-shadow: 0 0 2px #ccc;
	-o-box-shadow: 0 0 2px #ccc;
	-webkit-box-shadow: 0 0 2px #ccc;
	box-shadow: 0 0 2px #ccc;
}

.wp-pagenavi a:hover,
.wp-pagenavi span.current { color: #fff; }

.wp-pagenavi a:hover { background: #004c6f; }

.wp-pagenavi span.current { background: #2b1e19; }

.wp-pagenavi .first,
.wp-pagenavi .last { display: none; }

@media screen and ( min-width: 480px )  {

	.wp-pagenavi a,
	.wp-pagenavi span {
		padding: 0.1em 0.5em;
		margin: 0 3px;
	}
}

@media screen and ( min-width: 641px )  {

	.wp-pagenavi a,
	.wp-pagenavi span {
		padding: 0.1em 0.5em;
		margin: 0 3px;
	}

	.wp-pagenavi .first,
	.wp-pagenavi .last { display: inline; }

	.wp-pagenavi .first { margin-left: 0; }

	.wp-pagenavi .last { margin-right: 0; }
}

/*---------------------------------------
　各アーカイブ個別
---------------------------------------*/


/* コラムアーカイブ
-------------------------------*/

/* コラムランキング */

.contents .column-lanking h2 {
	color: #fff;
	font-size: 1.3em;
	font-weight: normal;
	line-height: 1.2;
	padding: 0.5em 0;
	background: #004c6f;
	border-bottom-color: #f8b500;
}

/* PopularPosts設定 */

.wpp-list {
	margin: 0;
	list-style: none;
}

.column-lanking .wpp-list {
	padding: 8px;
	background: rgba(255,255,255,0.8);
}

.wpp-list li {
    line-height: 1.3;
    margin-bottom: 0.3em;
    padding: 8px 0px 8px 1.8em;
    border-bottom: 1px dotted #333;
}

.wpp-list li a { color: #212121; }

.wpp-list li:last-child { margin-bottom: 0; }

.wpp-list >  li {
    counter-increment: wpp-list;
    position: relative;
    overflow: visible !important;
}

.wpp-list li:after {
    content: '';
    display: table;
    clear: both;
}

.wpp-list li img {
    margin-right: 8px;
    box-shadow: 0 0 1px rgba(0,0,0,0.3);
}

.wpp-list > li:before {
    font-size: 90%;
    padding: 0;
    content: counter(wpp-list);
    color: #fff;
    background: #004c6f;
    display: inline-block;
    text-align: center;
    vertical-align: 0;
    width: 1.5em;
    height: 1.5em;
    line-height: 1.5;
    border-radius: 50%;
    position: absolute;
    top: 6px;
    left: 8px;
    z-index: 500;
    margin: 0;
}

.wpp-post-title {
    display: block;
    margin-left: 8px;
}

@media screen and ( min-width: 641px )  {

	.column-lanking .wpp-list { padding: 16px; }
}

/* セミナーアーカイブ
-------------------------------*/

.semi-head {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-direction: column-reverse; /* Safari */
	flex-direction: column-reverse;
	position: relative;
}

.semi-aredate {
	color: #080808;
	font-size: 0.7em;
	display: block;
}

.semi-area {
	color: #fff;
	font-size: 0.9em;
	font-weight: 400;
	background: #080808;
	padding: 0 0.3em;
	display: inline-block;
	vertical-align: 0.1em;
}

.contents .semi-place {
	/*font-size: 14px;
	font-size: 0.875rem;*/
	text-indent: 0;
}

.semi-new-section .semi-place {
	text-align: center;
	border-top: 1px solid #ccc;
}

@media screen and ( min-width: 641px )  {

	.semi-new-section .loop-article:not(:last-child) {
		padding-bottom: 40px;
		margin-bottom: 40px;
	}

	.semi-new-section.new-cat-section .thum-box {
		width: 100%;
		padding-top: 66%;
	}

	.semi-new-section .loop-title {
		font-size: 32px;
		font-size: 2rem;
		text-align: center;
	}

	.place-ph { max-width: 240px; }
}

/* 予約状況リボン */
.reserv-tag {
	color: #fff;
	font-size: 0.875rem;
	font-weight: bold;
	text-align: center;
	background: #f00;
	letter-spacing: 1px;
	width: 1.8em;
	line-height: 1.1em;
	padding: 0.5em 0;
	position: absolute;
	top: -9px;
	left: -8px;
	z-index: 600;
}

.reserv-tag.stop { background: #262626; }

.reserv-tag:before {
	content: '';
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px;
	border-color: #b21a00 transparent transparent transparent;
	position: absolute;
	top: 3px;
	right: -6px;
	-moz-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

.reserv-tag.stop:before { border-color: #333 transparent transparent transparent; }

.semi-article .loop-head {
	padding-left: 1.2em;
	overflow: visible;
}

.semi-article .semi-figwap + .loop-head {
	padding-left: 0;
	margin-bottom: 8px;
}

.archive .semi-article .semi-figwap + .loop-head { position: relative; }

.archive .semi-article .semi-figwap + .loop-head .reserv-tag {
	top: 100%;
	width: 1.6em;
	z-index: 100;
}

@media screen and ( min-width: 641px )  {

	.semi-article .loop-head { padding-left: 2.4em; }

	.reserv-tag { left: 8px; }

	/*.seminar .reserv-tag { font-size: 1.1rem; }*/
}

/* 過去開催セミナー */

.semi-end-section li { line-height: 1.4; }

.semi-end-section li:not(:last-child) {
	border-bottom: 1px dotted;
	margin-bottom: 16px;
	padding-bottom: 16px;
}

.semi-end-section .thum-box {
	text-align: center;
	width: 40%;
	padding-top: 30%;
	float: left;
	margin: 0 0.5em 0 0;
}

.semi-end-section .thum-box img { margin: 0; }

.end-semitit {
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: bold;
	display: block;
	margin: 0.3em 0;
}

@media screen and ( min-width: 641px )  {

	.semi-end-section .thum-box {
		width: 20%;
		padding-top: 15%;
		float: left;
		margin: 0 1em 0 0;
	}
}


/*========================================================
　シングルページ 固定ページ
========================================================*/

/* シングルページタイトル
-------------------------------*/

.single-con-head .contents-title {
	font-size: 1.8em;
	margin: 0;
}

.single-con-head.bg-img { background: none; }

.single-con-head[style] { background: none; }

.single-con-head[style] .single-img-wrap { padding: 8px; }

.single-con-head .text-orange {
	display: block;
	line-height: 1.4;
	margin-bottom: 0.5em;
}

.contents-title.tit-wh,
.contents-title.tit-wh .tit-txt { color: #fff; }

.single .column .contents-title.tit-wh .tit-txt { border-bottom-color: #f8b500; }

@media screen and ( min-width: 641px )  {

	.single-con-head[style] .single-img-wrap { padding: 0; }

	.single-con-head .contents-title {
		font-size: 28px;
		font-size: 1.75rem;
	}

	.single-img-wrap {
		background-repeat: no-repeat;
		background-size: contain;
		background-position: 0 0;
		min-height: 200px;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-align-items: center;
		-ms-flex-align: center;
		align-items: center;
		-webkit-flex-direction: row-reverse;
		-ms-flex-direction:  row-reverse;
		flex-direction: row-reverse;
	}

	.single-img-wrap .contents-title {
		width: 82%;
		padding: 0 1em;
		margin: 0;
	}

	.single-img-wrap .tit-txt { margin: 0; }

	.seminar .single-img-wrap .tit-txt { text-shadow: 0 0 2px rgba(255,255,255,0.9) ,0 0 2px rgba(255,255,255,0.9),0 0 5px rgba(255,255,255,0.9),0 0 5px rgba(255,255,255,0.9); }

	.ritght-bg .single-img-wrap {
		background-position: right 0;
		-webkit-flex-direction: row;
		-ms-flex-direction:  row;
		flex-direction: row;
	}
}


/* シングルページナビ
-------------------------------*/

.single-nav {
	font-size: 14px;
	font-size: 0.875rem;
	list-style: none outside none;
	padding: 16px 0 0;
	margin: 32px 0 0;
	border-top: solid 1px #ccc;
	width: 100%;
}

.single-nav li {
	line-height: 1.4;
	margin-bottom: 0.5em;
	position: relative;
}

.single-nav a { color: #2b1e19; }

.single-nav a:hover { color: #004c6f; }

.single-prev {
	float: left;
	margin-left: 11px;
}

.single-next {
	float: right;
	margin-right: 11px;
}

.single-prev a:before,
.single-next a:after {
	content: '';
	display: inline-block;
	width: 11px;
	height: 11px;
	border-style: solid;
	border-width: 2px;
	-moz-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 0.35em;
}

.single-prev a:before {
	border-top-color: transparent;
	border-right-color: transparent;
	border-top-width: 0;
	border-right-width: 0;
	margin-left: -11px;
	left: 0;
}

.single-next a:after {
	border-bottom-color: transparent;
	border-left-color: transparent;
	border-bottom-width: 0;
	border-left-width: 0;
	margin-right: -11px;
	right: 0;
}

@media screen and ( min-width: 641px )  {

	.single-nav li { max-width: 36%; }
}


.contents .post-content-widget p:last-child { margin-bottom: 0; }

/*---------------------------------------
　各固定ページ個別
---------------------------------------*/

/* コラムsingleページ
-------------------------------*/

.single-post .column .i-catch img {
	width: auto;
	max-height: 360px;
}

/* CF7フォーム
-------------------------------*/

.form-box {
	padding: 16px 8px;
	background: #f7f5f0;
}

table.form-table,
.form-transmit p {
	font-size: 15px;
	font-size: 0.9375rem;
}

table.form-table {
	border-top: none;
	border-bottom: 1px dotted #999;
	margin-bottom: 16px;
}

table.form-table th,
table.form-table td {
	border-bottom: none;
}

table.form-table th {
	font-weight: normal;
	background: none;
	text-align: left;
}

table.form-table td {
	padding: 0 0 0.8em;
}


.form-table input[type="text"],
.form-table input[type="email"],
.form-table input[type="tel"],
.form-m select { max-width: 24em; }

.form-m input[type="text"],
.form-m input[type="date"],
.form-m input[type="number"] { max-width: 16em; }

.form-table input[type="number"],
.your-zip input[type="text"],
.form-s input[type="text"],
.form-s input[type="date"] { max-width: 8em; }


.form-ss input[type="text"],
.form-ss input[type="date"],
.form-ss input[type="number"],
.form-ss select { max-width: 4em; }

.your-zip input[type="text"] { max-width: 8em; }

.form-table input[type="checkbox"],
.form-transmit input[type="checkbox"] {
	width: 16px;
	height: 16px;
}

.btn-line { text-align: center; }

.btn-line input[type="submit"] { margin-top: 0; }

/*.wpcf7-radio > span { display: block; }*/

span.wpcf7-list-item { margin: 0 0.5em 0 0; }

/* 表示切替え */

.wpcf7-form .conf-in { display: none; }
.wpcf7-form.failed .conf-in { display: block; }

.wpcf7-form.failed .conf-none { display: none; }

/* 確認画面 */

.wpcf7c-conf,
input[type="text"].wpcf7c-conf,
input[type="email"].wpcf7c-conf,
input[type="tel"].wpcf7c-conf,
input[type="number"].wpcf7c-conf  {
	background-color: transparent;
	color: #3e3a39;
	border: none;
	box-shadow: none;
}

input[type="button"].btn-back {
	color: #3e3a39;
	background: rgb(246,248,249);
	background: -moz-linear-gradient(top,  rgba(246,248,249,1) 0%, rgba(215,222,227,1) 100%);
	background: -webkit-linear-gradient(top,  rgba(246,248,249,1) 0%,rgba(215,222,227,1) 100%);
	background: linear-gradient(to bottom,  rgba(246,248,249,1) 0%,rgba(215,222,227,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f6f8f9', endColorstr='#d7dee3',GradientType=0 );
	margin-right: 2em;
}

input[type="button"].btn-back:hover { background: #d7dee3; }

@media screen and ( min-width: 641px )  {

	.form-box { padding: 16px 24px }

	table.form-table th,
	table.form-table td {
		padding: 0.5em 0;
		vertical-align: top;
	}

	table.form-table th { width: 9em; }

	.form-transmit .acceptCheck { float: left; }

	.btn-line { float: right; }

	input[type="button"].btn-back { margin-right: 1em; }
}


/* Googleマップ
-------------------------------*/

.acf-map {
	width: 100%;
	height: 210px;
	border: #ccc solid 1px;
	margin: 20px 0;
}

@media screen and ( min-width: 641px )  {

	.place-box {
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
	}

	.acf-map { margin: 0 0 0 1em; }

	.acf-map.place-imgnone {
		width: 70%;
		height: 240px;
		padding-left: 0
	}

}

/* セミナーsingleページ
-------------------------------*/

/* FAX申込み */

.semi-faxwrap {
	background: #f2efed;
	padding: 8px;
}

.semi-faxbox:not(:last-child) { margin-bottom: 32px; }

.fax-iconwrap a {
	color: #004c6f;
	display: table;
	margin-bottom: 1em;
}

.fax-iconwrap i.fa-file-text { font-size: 54px; }

.fax-iconwrap a .faxTxt {
	display: table-cell;
	vertical-align: middle;
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.4;
	padding-left: 2.5em;
	text-indent: -0.8em;
}

.fax-numbox {
	/*font-size: 0.8rem;*/
	text-align: center;
	text-indent: 0;
	line-height: 1.3;
	margin: 0;
	background: #fff;
	padding: 8px 8px;
}

.fax-number {
	font-size:1.5rem;
	font-weight: bold;
	line-height: 1.2;
	display: block;
}

.fax-number .sp-block {
	font-size: 0.875rem;
	font-weight: normal;
}

@media screen and ( min-width: 641px )  {

	.semi-faxbox { padding: 16px; }

	.semi-faxwrap {
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-justify-content: space-between;
		-ms-flex-pack: justify;
		justify-content: space-between;
		-webkit-align-items: center;
		-ms-flex-align: center;
		align-items: center;
	}

	.fax-iconwrap a { margin-bottom: 0; }
}

@media screen and ( min-width: 980px )  {

	.fax-iconwrap { padding: 0 1em; }

	.fax-numbox {
		padding: 8px 16px;
		width: 50%;
	}

	.fax-number { font-size: 1.8rem; }
}


/* コンサルティングページ
-------------------------------*/

.consul-step h4,
.consul-step h5 { margin-bottom: 0.2em; }

.consul-step h4 { color: #004c6f; }

.consul-step p { text-indent: 0; }

.consul-step > li p:last-child {
	padding: 0 0  0.5em 0.8em;
	border-bottom: 1px dotted;
}

/* 新着情報-ホーム＆一覧ページ
------------------------------------------*/

/* 共通設定 */

ul.news-all-list {
	list-style: none;
	padding: 0;
	margin: 0;
}

.news-all-list li {
	padding: 0.3em 0;
	border-bottom: 1px dotted #171719;
	position: relative;
	-moz-transition: 0.3s;
	-o-transition: 0.3s;
	-webkit-transition: 0.3s;
	-ms-transition: 0.3s;
	transition: 0.3s;
}

#sidebar .news-all-list li { padding-bottom: 0.6em; }

.news-all-list li a { color: #171719; }

.news-all-list li:hover a {
	color: #3d70da;
	text-decoration: underline;
}

.news-all-list li:hover { background: #e5eef5; }

.news-all-list li:first-child { border-top: dotted 1px #171719; }

/*.news-all-list .news-meta {
	display: block;
	margin-bottom: 0.3em;
}*/

.news-all-list .news-date,
.news-all-list .cat-links {
	display: inline-block;
	vertical-align: middle;
}

.news-all-list .cat-links {
	font-size: 0.8em;
	margin-right: 0.1em;
}

.news-all-list .news-date { font-size: 0.9em; }

.news-all-list .cat-links a {
	color: #fff !important;
	width: 6.5em;
	text-align: center;
	padding: 0.2em 0;
	display: block;
	line-height: 1.1;
	background: #ccc;
	border-radius: 2px;
}

.news-all-list .cat-links a:hover,
.news-all-list li:hover .cat-links a {
	color: #fff;
	text-decoration: none;
}

.news-all-list .cat-links.column a { background: #8dbe3d; }
.news-all-list .cat-links.seminar a { background: #ffc407; }
.news-all-list .cat-links.topics a { background: #32afbf; }

.news-all-list .cat-links.column a:hover { background: #b1c689; }
.news-all-list .cat-links.seminar a:hover { background: #d8b956; }
.news-all-list .cat-links.topics a:hover { background: #9ec6ca; }

.news-all-list .news-title {
	display: block;
	margin-right: 1.6em;
}

.contents .news-all-list li:after {
	content: "\f105";
	font-family: FontAwesome;
	font-size: 2em;
	position: absolute;
	top: 50%;
	right: 0;
	-moz-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}

@media screen and ( min-width: 800px )  {

	.contents .news-all-list li {
		padding: 0.8em 0;
		display: table;
		width: 100%;
	}

	.contents .news-all-list .news-meta,
	.contents .news-all-list .title-link { display: table-cell; }

	.contents .news-all-list .news-meta { width: 11em; }

	.contents .news-all-list .news-date {
		width: 5em;
		margin-right: 0.3em;
	}

	.contents .news-all-list li:after { right: 0.2em; }
}

/*---------------------------------------
　書籍ページ関連 191224
---------------------------------------*/

.pagetit-booksub {
	line-height: 1.5;
	display: block;
	padding: 0 8px;
	margin-top: 0.5em;
}

.books-container {
	padding: 16px 8px;
	border: 1px solid #ccc;
}

.books-ph img {
	width: auto;
	max-height: 300px;
}

.books-type {
	font-size: 1rem;
	font-weight: 400;
	padding: 0 0.5em;
	border: 1px solid;
	margin-bottom: 0.5em;
	display: block;
	float: left;
}

.contents .books-title {
	color: #212121;
	font-size: 1.25em;
}

.book-tittxt,
.books-subtit { display: block; }

.book-tittxt { clear: both; }

.books-subtit {
	font-size: 0.8em;
	line-height: 1.4;
	margin-top: 0.5em;
}

.books-dl dt { float: left; }

.books-dl dd {
	padding: 0 0 0.3em 5em;
	border-bottom: 1px dotted;
	margin: 0;
}

.books-dl dd:not(:last-child) { margin-bottom: 0.3em; }

.books-storelist {
	font-size: 0.875em;
	text-align: right;
}

.contents .books-container + h2,
.contents .books-container + h3 { margin-top: 1em; }

.book-outline .book-count {
	color: #004c6f;
	display: inline-block;
	margin-right: 0.3em;
}

.book-outline h4 {
	padding-bottom: 0.3em;
	border-bottom: 1px solid;
}

.book-outline h5 {
	margin: 1em 0 0.5em 1em;
}

.book-outline p { margin: 0; }

.archive .contents .books-loopbtn {
	font-size: 1.2em;
	text-align: center;
	padding-top: 0.3em;
	border-top: 1px solid #eee;
	margin: 1em 0 0;
}

@media screen and ( min-width: 641px )  {

	.books-container { padding: 16px; }

	.books-container-innner {
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
	}

	.books-ph {
		width: 34%;
		-webkit-flex: 0 0 auto;
		-ms-flex: 0 0 auto;
		flex: 0 0 auto;
		margin: 0 2em 0 0;
	}

	.books-short .books-ph {
		width: 20%;
	}
}

@media screen and ( min-width: 980px )  {

	.pc-wide {
		margin-right: -24px;
		margin-left: -24px;
	}
}


/*========================================================
　ホーム(トップ)ページ
========================================================*/

/* ホームビジュアル
------------------------------------------*/

.home-visualwrap {
	background: #fff;
	margin-bottom: 40px;
}

.top-visual { position: relative; }

.top-visual img {
	max-width: none;
	width: 100%;
}

/* スライダー
------------------------------------*/

.slide-txt {
	font-size: 16px;
	font-size: 1rem;
	font-weight: bold;
	line-height: 1.4;
	display: block;
	text-align: center;
}

img + .slide-txt {
	color: #fff;
	text-shadow: 0 0 2px rgba(0,76,111,1),0 0 3px rgba(0,76,111,1),0 0 3px rgba(0,76,111,1);
	position: absolute;
	width: 100%;
	top: 50%;
	-webkit-transform: translate(0,-50%);
	transform: translate(0,-50%);
}

.slide-txt.sltx-right,
.slide-txt.sltx-left { width: 78%; }

.slide-txt.sltx-right {
	float: right;
	margin-right: 3%;
}

.slide-txt.sltx-left {
	float: left;
	margin-left: 3%;
}

img + .slide-txt.sltx-right,
img + .slide-txt.sltx-left { float: none; }

img + .slide-txt.sltx-right { right: 3%; }

img + .slide-txt.sltx-left { left: 3%; }

@media screen and ( min-width: 980px )  {

	.slide-txt {
		font-size: 32px;
		font-size: 2rem;
	}
}

/* ------------------------------------
 スリックスライダー
------------------------------------*/

.slick-slider button {
	background: none;
	border: none;
	padding: 0;
}

/* 共通 */

.slick-arrow,
.slick-dots {
	position: absolute;
	z-index: 999;
	opacity: 0;
	filter: alpha(opacity=00);
	-ms-filter: "alpha( opacity=00 )";
	-moz-transition: 0.5s;
	-o-transition: 0.5s;
	-webkit-transition: 0.5s;
	-ms-transition: 0.5s;
	transition: 0.5s;
}

.slick-slider:hover .slick-arrow,
.slick-slider:hover .slick-dots {
	opacity: 1;
	filter: alpha(opacity=100);
	-ms-filter: "alpha( opacity=100 )";
}

.slick-arrow,
.slick-dots li button {
	outline: 0;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
}

.slick-arrow:hover,
.slick-dots li button:hover { cursor: pointer; }

/* arrows */

button.slick-arrow {
	width: 24px;
	height: 24px;
	top: 50%;
	-webkit-transform: translate(0,-50%);
	-ms-transform: translate(0,-50%);
	transform: translate(0,-50%);
}

button.slick-arrow:after {
	content: '';
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%,-50%) rotate(45deg);
	-ms-transform: translate(-50%,-50%) rotate(45deg);
	transform: translate(-50%,-50%) rotate(45deg);
	width: 16px;
	height: 16px;
	border-style: solid;
	border-color: #999;
	border-radius: 1px;
}

button.slick-arrow:hover:after { border-color: #f8b500 }

.slick-prev { left: 10px; }

.slick-prev:after { border-width: 0 0 3px 3px; }

.slick-next { right: 10px; }

.slick-next:after { border-width: 3px 3px 0 0; }

/* ページャー */

.slick-dots {
	text-align: center;
	line-height: 1;
	width: 100%;
	bottom: 8px;
}

.slick-dots li {
	display: inline-block;
	margin: 0 5px;
}

.slick-dots li button {
	background: #999;
	width: 10px;
	height: 10px;
	border-radius: 50%;
}

.slick-dots .slick-active button,
.slick-dots li button:hover {
	background: #f8b500;
}

/* ホームコンテンツ
------------------------------------------*/

.home-contents,
.home-contents a { color: #fff; }

.contents .home-contents h2 {
	color: #f8b500;
	font-weight: 400;
}

.home-contents {
	background-repeat: no-repeat;
	background-position: left bottom;
	background-size: contain;
	background-color: #004c6f;
	padding: 8px;
}

.home-contents br { display: none; }

.contents .home-contents p {
	text-shadow: 0 0 2px rgba(0,0,0,1);
	text-indent: 0;
}

@media screen and ( min-width: 641px )  {

	.home-contents { margin-bottom: 80px; }

	.homebg-img .homebg-txt { padding: 0 0 0 30%; }

	.home-contents.ritght-homebg { background-position: right bottom; }

	.home-contents.ritght-homebg.homebg-img .homebg-txt { padding: 0 34% 0 0; }

	.home-contents h2 { font-size: 1.875em; }

	.home-contents br { display: inline; }
}


/* 191224追加分 */

.unit-homeset.wh-box { padding: 0; }

.irregular-list {
	color: #ffb200;
	text-align: center;
	list-style: none;
	padding: 0;
	margin: 1em 0 0;
}

.irregular-list > li {
	line-height: 1.6;
	padding: 0 1em;
	border: 2px solid;
	border-radius: 1em;
	display: inline-block;
	margin: 0 0 0.5em;
}

 @media screen and ( min-width: 641px )  {

 	.irregular-list > li { margin-bottom: 1em; }
 }


/* ホームウィジェット
------------------------------------------*/

.home-widget .loop-article:last-of-type { margin-bottom: 0; }

.contents .home-widget-title,
.widg-subtitle { text-align: center; }

.contents > .wh-box > .home-widget-title {
	color: #212121;
	font-weight: 400;
	border-bottom: none;
	margin-bottom: 0.8em;
}

.homewidg-tit {
	display: block;
	border-bottom: 2px solid #004c6f;
	margin-bottom: 0.2em;
	padding-bottom: 0.2em;
}

.widg-subtitle {
	font-size: 1rem;
	display: block;
}

.widg-descri { margin-bottom: 1em; }

.widg-list-link {
	text-align: center;
	margin-top: 0.5em;
	border-top: 1px dotted #ccc;
	padding-top: 0.5em;
}

.contents .widg-list-link { text-indent: 0; }

.widg-list-link a {
	font-size: 14px;
	font-size: 0.875rem;
}

.widg-list-link a:before {
	content: "\f03a";
	font-family: FontAwesome;
	padding-right: 0.2em;
}

@media screen and ( min-width: 641px )  {

	.contents > .wh-box > .home-widget-title { font-size: 2.25em; }

	.home-widloop-wrap > .loop-article:first-of-type .thum-box {
		width: 40%;
		padding-top: 26.4%;
	}
}

/* コラムウィジェット */

.home-column-left { margin-bottom: 16px; }

.contents .home-lank-tit {
	color: #fff;
	font-weight: 400;
	font-size: 1.25em;
	background: #004c6f;
	padding: 0.2em 0;
	margin-bottom: 0;
}

.home-widloop-wrap .column-lanking .wpp-list {
	font-size: 14.5px;
	font-size: 0.90625rem;
	background: none;
}

@media screen and ( min-width: 641px )  {

	.home-columnflex {
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-justify-content: space-between;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}

	.home-widloop-wrap > .column-loop.loop-article:first-of-type .thum-box {
		padding-top: 36%;
	}

	.home-column-left { width: 59%; }

	.home-column-left .thum-box {
		width: 33%;
		padding-top: 31%;
		margin-right: 1em;
	}

	.home-column-left .column-loop .loop-head + p { overflow: visible; }



	/* ランキング */

	.home-widloop-wrap .column-lanking { width: 39%; }

	.home-widloop-wrap .column-lanking .wpp-list { padding: 8px; }

	.home-widloop-wrap .column-lanking .wpp-list li {
		margin-bottom: 0.2em;
		padding: 4px 0px 4px 1.6em;
	}

	.home-widloop-wrap .column-lanking .wpp-list > li:before { left: 0; }

	.home-widloop-wrap .column-lanking .wpp-post-title { margin-left: 0; }

}





