/*
Theme Name: urerugift_2017
Theme URI: http://urerugift.com
Author: design Xanthus
Author URI: https://d-xanthus.com/
Description: 売れるギフト通販研究所（ソーノカスタマーマーケティング（株））用テーマファイル
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 YakuHanJP,Arial,-apple-system,BlinkMacSystemFont,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	/* Arial,"Yu Gothic","YuGothic","游ゴシック体","游ゴシック", */
	-webkit-font-smoothing: subpixel-antialiased;
	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,
.a-def a { color: #2b1e19; }

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

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

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.75em; }

	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: #f5f5f5;}

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:last-child { margin-bottom: 0; }


@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; }

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メディアプレイヤー フルード対応 */
.wp-video,
.mejs-container,
.mejs-overlay {
   /* width: 100% !important;
	max-width: 640px !important;
	height: auto !important;
	margin: 0 auto 1em;*/
}

.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-bk { color: #2b1e19 !important; }

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

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

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

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

.lh-16 { line-height: 1.6 !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; }

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

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

.contents p { text-indent: 1em; }

.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 .note {
	text-indent: -1em;
	padding-left: 1em;
	line-height: 1.4;
}

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

.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: #fbc800;
}

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

/* リストスタイルクリア
-------------------------------*/
nav ul,
ul.bread_crumb,
.widget-container ul,
.ul-none,
.ul-none ul,
.ol-none,
.ol-none ol{
	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;
	clear: both;
	margin: 0 auto 0;
	width: 0;
	height: 0;
	border-style: solid;
	border-color: #c69f70 transparent transparent;
}

.flow > li:before,
.flow-s > li:before {
	content: '';
	display: table;
	clear: both;
}

.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; }

/*.QandA > li {
	margin-bottom: 0.5em;
	position: relative;
	padding-left: 1.7em;
	text-indent: -1.7em;
}

.QandA > li:nth-child(odd),
.QandA > li:first-letter { font-weight: bold; }

.QandA > li:nth-child(odd),
.QandA > li:nth-child(even):first-letter { font-size: 1.2em; }

.QandA > li:nth-child(even) {
	margin-bottom: 1.5em;
	padding-bottom: 1em;
	border-bottom: dotted 1px #ccc;
}

.QandA li ul li,
.QandA li ol 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,
.fr-lgray { 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-top: 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 {
	background: rgb(145,20,24);
	background: -moz-linear-gradient(top,  rgba(145,20,24,1) 0%, rgba(173,24,30,1) 100%);
	background: -webkit-linear-gradient(top,  rgba(145,20,24,1) 0%,rgba(173,24,30,1) 100%);
	background: linear-gradient(to bottom,  rgba(145,20,24,1) 0%,rgba(173,24,30,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#911418', endColorstr='#ad181e',GradientType=0 );
}

.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 img,
.foot-title img {
	width: auto;
	max-height: 60px;
}

/*.body-head,
.body-head a,*/
.body-foot,
.body-foot a { color: #fff; }

/*.body-head a:hover,*/
.body-foot a:hover { color: #fbc800; }

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

.body-head {
	padding-top: 48px;
	background: #fff;
}

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

/* サイトタイトル */

.site-title {
	font-size: 1.8rem;
	font-weight: 700;
	margin: 0 0 0.3em;
}


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

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

.site-title.logo-top img { margin-bottom: 0.2em; }

.site-title.logo-top span { display: block; }

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

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

/*.tel-info { color: #fbc800; }*/

.tel-info { color: #911418; }

.tel-info,
.mb-guide {
	display: block;
	margin-bottom: 0.5em;
}

.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: flex-end;
		-ms-flex-align: flex-end;
		align-items: flex-end;
	}

	.site-title { margin: 0; }

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

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

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

	.tel-info {
		display: inline-block;
		vertical-align: top;
		margin: 0 0.5em 0 0;
	}
}

@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: #ad181e; }

	/*==== 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,
	.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 );*/

		background: rgb(145,20,24);
		background: -moz-linear-gradient(top,  rgba(145,20,24,1) 0%, rgba(173,24,30,1) 100%);
		background: -webkit-linear-gradient(top,  rgba(145,20,24,1) 0%,rgba(173,24,30,1) 100%);
		background: linear-gradient(to bottom,  rgba(145,20,24,1) 0%,rgba(173,24,30,1) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#911418', endColorstr='#ad181e',GradientType=0 );
	}

	/* 第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:not(:hover) { color: #fff; }

	.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 #f9f5f1;
		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;
	}
}


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

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

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

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

/* サイトタイトル */

.foot-title {
	font-size: 1.8rem;
	font-weight: 700;
	margin: 0 0 1em;
}

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

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

.foot-title.logo-top img { margin-bottom: 0.2em; }

.foot-title.logo-top span { display: block; }

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

@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;
		-webkit-column-width: 12em;
		-ms-column-width: 12em;
		column-width: 12em;
	}

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

@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: 6px;
	right: 24px;
	z-index: 9999;
}

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

#page-top .fa {
	font-size: 24px;
	position: relative;
	top: 40%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

#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 {
	color: #fff;
	font-weight: 400;
	border-bottom: 2px solid #fbc800;
	background: rgb(142,19,24);
	background: -moz-linear-gradient(top,  rgba(142,19,24,1) 0%, rgba(173,24,30,1) 100%);
	background: -webkit-linear-gradient(top,  rgba(142,19,24,1) 0%,rgba(173,24,30,1) 100%);
	background: linear-gradient(to bottom,  rgba(142,19,24,1) 0%,rgba(173,24,30,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#8e1318', endColorstr='#ad181e',GradientType=0 );
}

.widget-title {
	font-size: 1.2em;
	text-align: center;
	padding: 0.5em 0.5em 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.1875em; }

	.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/bg_mailmagz-bg.png) no-repeat center 2em,#382a22;
	background-size: contain;
}

.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.75em;
	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);
	background: rgb(255,103,15);
	background: -moz-linear-gradient(top,  rgba(255,103,15,1) 0%, rgba(178,72,10,1) 100%);
	background: -webkit-linear-gradient(top,  rgba(255,103,15,1) 0%,rgba(178,72,10,1) 100%);
	background: linear-gradient(to bottom,  rgba(255,103,15,1) 0%,rgba(178,72,10,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff670f', endColorstr='#b2480a',GradientType=0 );
	margin-top: 0;
}

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

.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(56,42,34,1) 0%, rgba(56,42,34,1) 60%, rgba(56,42,34,0) 70%, rgba(56,42,34,0) 100%);
	background: -webkit-linear-gradient(left,  rgba(56,42,34,1) 0%,rgba(56,42,34,1) 60%,rgba(56,42,34,0) 70%,rgba(56,42,34,0) 100%);
	background: linear-gradient(to right,  rgba(56,42,34,1) 0%,rgba(56,42,34,1) 60%,rgba(56,42,34,0) 70%,rgba(56,42,34,0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#382a22', endColorstr='#00382a22',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: 58%;
	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.3;
	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);
}

.sidebar .widget_simpleimage .more a { padding-left: calc( 15px + 0.2em ); }

.widget_simpleimage .more a:before {
	content: '';
	display: inline-block;
	width: 3px;
	height: 1.2em;
	vertical-align: bottom;
	margin: 0 0.2em 0 calc( -3px + -0.2em);
	background: #fbc800;
}


.bnr-facebook { background: #1975f2; }

/*.bnr-facebook .simple-image a:after { content: none; }*/

/*========================================================
　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 h2,
.contents h3 { color: #ad181e; }

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

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



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

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

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


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

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

.tit-txt {
	color: #ad181e;
	padding-bottom: 0.1em;
	border-bottom: 2px solid;
}

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

.tit-img {
	height: 80px;
	overflow: hidden;
	position: relative;
	margin: -0.5em -0.3em 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;
		-webkit-flex-direction: row-reverse;
		-ms-flex-direction:  row-reverse;
		flex-direction: row-reverse;
		background: rgb(255,255,255);
		/*background: -moz-linear-gradient(top,  rgba(255,255,255,1) 40%, rgba(196,167,133,1) 100%);
		background: -webkit-linear-gradient(top,  rgba(255,255,255,1) 40%,rgba(196,167,133,1) 100%);
		background: linear-gradient(to bottom,  rgba(255,255,255,1) 40%,rgba(196,167,133,1) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#c4a785',GradientType=0 );*/
		box-shadow: 0 0 1px rgba( 0,0,0,0.3 );
		border: 2px solid #ad181e;
	}

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

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

	.tit-txt-wrap .tit-txt { line-height: 1.2; }
}


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

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

.new-cat-section { margin-bottom: 80px; }
.contents .loop-section-tit {
	color: #fff;
	font-weight: normal;
	text-align: center;
	padding: 0.2em 0;
	margin-bottom: 1em;
	border-bottom: 2px solid #fbc800;
	background: rgb(142,19,24);
	background: -moz-linear-gradient(top,  rgba(142,19,24,1) 0%, rgba(173,24,30,1) 100%);
	background: -webkit-linear-gradient(top,  rgba(142,19,24,1) 0%,rgba(173,24,30,1) 100%);
	background: linear-gradient(to bottom,  rgba(142,19,24,1) 0%,rgba(173,24,30,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#8e1318', endColorstr='#ad181e',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: #ad181e;
}

.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;
}

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

	.thum-box {
		width: 30%;
		padding-top: 22.5%;
		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;
	}
}

/* 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: #ad181e; }

.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-new-section .loop-section-tit {
	background: rgb(214,51,36);
	background: -moz-linear-gradient(top,  rgba(214,51,36,1) 0%, rgba(241,57,39,1) 100%);
	background: -webkit-linear-gradient(top,  rgba(214,51,36,1) 0%,rgba(241,57,39,1) 100%);
	background: linear-gradient(to bottom,  rgba(214,51,36,1) 0%,rgba(241,57,39,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d63324', endColorstr='#f13927',GradientType=0 );
}

/* コラムアクセスランキング */

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

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

.wpp-list > li:before {
	color: #fff;
	font-size: 0.85rem;
	content: counter(wpp-list);
	background: #333;
	display: inline-block;
	padding: 0;
	text-align: center;
	vertical-align: 0;
	width: 1.5em;
	height: 1.5em;
	line-height: 1.4;
	border-radius: 50%;
	position: absolute;
	top: 7px;
	left: -3px;
}

.wpp-post-title {
	/*font-weight: 700;*/
	display: block;
	padding-left: 1.5em;
}

.wpp-list > li:first-child {
	font-size: 1.0675em;
	font-weight: 700;
}

.wpp-list > li:first-child:before {
	background: #ad181e;
	font-size: 1rem;
	width: 1.6em;
	height: 1.6em;
	left: -2px;
	line-height: 1.5;
}

.wpp-list > li img {
	float: left;
	margin: 0 8px 0.3em 0;
}

.wpp-meta {
	font-size: 0.75rem;
	display: block;
	clear: both;
	margin-top: 0.3em;
}

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

.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: text-top;
}

.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;
	}

	.archive .semi-figwap + .loop-head .loop-title { text-align: center; }
}

/* 予約状況リボン */
.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: 4px; }

	.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;
	}
}

/* 推薦者アーカイブ
-------------------------------*/

.recom-title {
	padding-bottom: 0.3em;
	border-bottom: 1px solid;
}

.recom-thum-box {
	text-align: center;
	margin-bottom: 16px;
	padding-bottom: 16px;
	border-bottom: 1px dotted #ccc;
}

.recom-thumb {
	width: 148px;
	height: 174px;
	margin: 0 auto 0.5em;
	position: relative;
	overflow: hidden;
}

.recom-thumb img.img-width {
	width: auto;
	max-width: none;
	height: 100%;
	position: relative;
	left: 50%;
	-webkit-transform: translate(-50%,0);
	transform: translate(-50%,0);
}

.recom-thumb img.img-height {
	width: 100%;
	max-width: none;
	height: auto;
}

.recom-logo {
	display: block;
	max-height: 100px;
	margin-bottom: 0.5em;
}

.recom-logo img {
	width: auto;
	max-height: 100px;
}


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

	.recom-thum-box {
		display: table;
		width: 100%;
		padding-left: 1em;
	}

	.recom-thumb,
	.recom-name {
		display: table-cell;
		vertical-align: middle;
	}

	.recom-thumb {
		width: 200px;
		max-height: 200px;
	}

	.recom-name {
		text-align: left;
		padding-left: 24px;
	}
}

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

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

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

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

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

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

@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: 240px;
		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: #ad181e; }

.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%; }
}


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


/* SSLシール設定
-------------------------------*/

.sslbox {
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.4;
}

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

.sslbox figure { margin-bottom: 0.5; }

@media screen and ( min-width: 641px )  {
	.sslbox {
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-align-items: center;
		-ms-flex-align: center;
		align-items: center;
	}

	.sslbox figure { margin: 0 1em 0 0; }
}

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

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

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"],
.form-ms select { max-width: 16em; }

.form-table input[type="number"],
.your-zip input[type="text"],
.form-s input[type="text"],
.form-s input[type="date"],
.form-s select { 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
	}
}


/*========================================================
　 セミナーLPページ
========================================================*/

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

.lptop-line { background: #ad181e; }

.lptop-txt { color: #fff; }

.lptop-txt {
	font-size: 15.5px;
	font-weight: bold;
	line-height: 1.4;
	text-align: center;
	padding: 4px 0;
}

.lphead-tel {
	font-size: 1.6em;
	line-height: 1.2;
}

.lphead-tel,
.lphead-tel a { color: #fff; }

.lphtel-txt {
	font-size: 0.75rem;
	font-weight: normal;
	display: block;
}

.lphtel-txt br { display: none; }


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

	.lptop-txt p { margin: 0; }

	.lphead-copy {
		font-size: 20px;
		font-size: 1.25rem;
	}

	.lphtel-txt { display: inline-block; }

}

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

	.lptop-txt {
		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;
	}

	.lphead-tel { font-size: 2em; }

	.lphtel-txt br { display: inline; }
}


.lp-head{
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}

.lp-title {
	text-align: center;
	padding: 0.5em 0;
	overflow: hidden;
	margin: 0 auto;
}

.lp-title br { display: none; }

.lp-title.img-lptit {
	padding: 0;
	margin: 0 -3%;
}

.lp-semidate,
.lp-semidate li {
	background: rgba(250,200,0,1);
	border-bottom: 1px solid #fff;
}

.lp-semidate {
	font-size: 0.875rem;
	margin: 0 -3%;
	position: relative;
	z-index: 500;
	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;
}

.lp-semidate li {
	color: #212121;
	font-weight: bold;
	text-align: center;
	line-height: 1.3;
	padding: 0.2em 0;
	width: 50%;
	margin-bottom: -1px;
	border-top: 1px solid #fff;
}

.lp-semidate li:first-child { width: 100%; }

.lp-semidate li:nth-child(odd):not(:first-child) { border-left: 1px solid #fff; }

.img-lptit + .lp-semidate { margin-top: -14%; }

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

	.lphead-contents {
		position: relative;
		height: 100%;
	}

	.lp-title.img-lptit { margin: 0; }

	.lp-semidate,
	.lp-semidate li,
	.lp-semidate li:nth-child(odd):not(:first-child) { border: none; }

	.lp-semidate {
		font-size: 1rem;
		background: none;
	}

	.img-lptit + .lp-semidate {
		width: 82.6%;
		margin: -15.3% auto 0 0;
		position: relative;
	}

	.img-lptit + .lp-semidate.date-right { margin: -15.3% 0 0 auto; }

	.lp-semidate li {
		margin: 0 0 0 0;
		width: auto;
		padding: 0.2em 0.3em 0.2em 0.4em;
		margin: 0 0.5em 10px;
		background: rgba(250,200,0,0.9);
		border-radius: 4px;
	}

	.lp-semidate li:first-child { width: auto; }
}

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

	.lp-semidate { font-size: 1.25rem; }
}

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

	.lp-semidate li { margin-bottom: 20px; }
}

/* 申込ボタンライン*/

.lp-head + .semi-btnline {
	position: relative;
	z-index: 1;
}

.semi-btnline {
	color: #fff;
	padding: 12px 0;
	margin-bottom: 40px;
	border-bottom: 4px solid #ad181e;
	background: #382a22;
}

.lp-header .semi-btnline { margin: 0; }

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

.semibtn-box p:first-child {
	line-height: 1.3;
	margin-bottom: 0.5em;
}

.semibtn-box strong {
	font-size: 22px;
	font-size: 1.375rem;
	font-weight: normal;
	display: block;
}

.semibtn-box .text-bold-y {
	font-weight: bold;
	color: #fbc800;
	/*display: block;*/
}

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

.btn-semi a {
	color: #fff;
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: bold;
	display: inline-block;
	padding: 0.2em 1em;
	background: rgb(255,156,107);
	background: -moz-linear-gradient(top,  rgba(255,156,107,1) 0%, rgba(255,105,30,1) 50%, rgba(255,84,0,1) 51%, rgba(255,126,71,1) 100%);
	background: -webkit-linear-gradient(top,  rgba(255,156,107,1) 0%,rgba(255,105,30,1) 50%,rgba(255,84,0,1) 51%,rgba(255,126,71,1) 100%);
	background: linear-gradient(to bottom,  rgba(255,156,107,1) 0%,rgba(255,105,30,1) 50%,rgba(255,84,0,1) 51%,rgba(255,126,71,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff9c6b', endColorstr='#ff7e47',GradientType=0 );
	border-radius: 4px;
	box-shadow: 1px 1px 2px rgba(0,0,0,0.5);
	position: relative;
}

.btn-semi a:hover {
	text-decoration: none;
	background: #ff801e;
}

.btn-semi a:active {
	top: 1px;
	box-shadow: 0 0 2px  rgba(0,0,0,0.5);
}

.btn-semi .fa {
	-moz-transform: rotate(90deg);
	-o-transform: rotate(90deg);
	-webkit-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	transform: rotate(90deg);
}

.contents .btn-semi a:after { content: none; }


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

	.semi-btnline:not(:last-child) { margin-bottom: 80px; }

	.semibtn-box {
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-justify-content: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-align-items: center;
		-ms-flex-align: center;
		align-items: center;
	}

	.semibtn-box p,
	.semibtn-box p:first-child  { margin: 0 0.5em; }

	.semibtn-box p:first-child { text-align: left; }

	.semibtn-box strong {
		font-size: 30px;
		font-size: 1.875rem;
	}

	.btn-semi a { font-size: 22px; }
}

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

	.semibtn-box { padding: 0 24px; }

	.semibtn-box strong {
		font-size: 32px;
		font-size: 2rem;
	}

	.btn-semi a { font-size: 26px; }
}

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

	.semibtn-box { padding: 0 48px; }
}

/* コンテンツ 設定
---------------------------------------*/

.seminar-lp {
	background: #fff;
	padding-top: 40px;
}

.lp-line {
	padding: 40px 0;
	margin-bottom: 40px;
}

.lp-contents section {
	margin: 0 3% 40px;
	max-width: 680px;
}

.semi-btnline + .lp-line,
.lp-line + .semi-btnline { margin-top: -40px; }

.lp-contents .lp-line > section { margin-bottom: 0; }

.contents .lp-contents h2 {
	color: #fff;
	padding: 0.2em 0.5em;
	border-bottom: 2px solid #fbc800;
	background: rgb(142,19,24);
	background: -moz-linear-gradient(top,  rgba(142,19,24,1) 0%, rgba(173,24,30,1) 100%);
	background: -webkit-linear-gradient(top,  rgba(142,19,24,1) 0%,rgba(173,24,30,1) 100%);
	background: linear-gradient(to bottom,  rgba(142,19,24,1) 0%,rgba(173,24,30,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#8e1318', endColorstr='#ad181e',GradientType=0 );
}

.contents .lp-contents .lead-lptitle {
	color: #f00;
	font-weight: bold;
	text-shadow: 2px 2px 2px rgba( 0,0,0,0.2 );
	padding: 0;
	background: none;
}

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

	.seminar-lp { padding-top: 80px; }

	.lp-line {
		padding: 80px 0;
		margin-bottom: 80px;
	}

	.semi-btnline + .lp-line,
	.lp-line + .semi-btnline { margin-top: -80px; }

	.contents .lp-contents h2 { margin-bottom: 1em; }

	.contents .lp-contents .lead-lptitle {
		line-height: 1.8;
	}

	.lp-contents h3:not(:first-child) { margin-top: 2em; }

	.lp-contents section > p,
	.lp-contents section > ul > li,
	.lp-contents section > ol > li,
	.lp-contents section > dl { font-size: 1.125em; }
}

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

	.lp-contents section { margin: 0 auto 80px; }
}

/* セミナープログラム */

.semilp-program-ol > li {
	padding: 8px;
	background: #fff;
	position: relative;
	border-radius: 8px;
}

.semilp-program-ol > li:not(:last-child) { margin-bottom: 72px; }

.flow.semilp-program-ol > li::after {
	position: absolute;
	top: calc( 100% + 24px );
	left: 50%;
	-webkit-transform: translate(-50%,0);
	-ms-transform: translate(-50%,0);
	transform: translate(-50%,0);
}

.semilp-program-ol > li > h3 > span {
	color: #fff;
	font-size: 0.9em;
	letter-spacing: 2px;
	background: #d60012;
	padding: 0 0.5em;
	margin-right: 0.5em;
	border-radius: 4px;
}

.semilp-program-ol > li > h3 > span:after {
	content: '\A' ;
	white-space: pre ;
}

.semilp-program-ol > li > h3 br { display: none; }

.semilp-program-ol > li > h3 + ul {
	font-weight: bold;
	line-height: 1.6;
}

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

	.semilp-program-ol {
		font-size: 1.05em;
	}

	.semilp-program-ol > li { padding: 16px; }

	.semilp-program-ol > li > h3 {
		padding-left: 4em;
	}

	.semilp-program-ol > li > h3 > span {
		display: inline-block;
		margin-left: -4.4em;
	}

	.semilp-program-ol > li > h3 > span:after { content: none; }

	.semilp-program-ol > li > h3 br { display: inline; }
}

/* セミナー 概要*/

.semi-outlinesec:last-child { margin-bottom: 0; }

.semi-outlinebox > h3 { color: #2b1e19; }

.semi-outlinetb { background: #fff; }

.semi-outlinetb th { background: #f7e3e3; }


/* Googleマップ */

.semiplace-ph,
.acf-map { margin-bottom: 1em; }

.acf-map {
	width: 100%;
	max-width: 300px;
	height: 210px;
	border: #ccc solid 1px;
}

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

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

	.semiplace-ph,
	.acf-map { width: 49%; }

	.semiplace-ph {
		padding-top: 210px;
		position: relative;
		overflow: hidden;
	}

	.semiplace-ph img {
		position: absolute;
		top: 50%;
		left: 50%;
		-webkit-transform: translate(-50%,-50%);
		-ms-transform: translate(-50%,-50%);
		transform: translate(-50%,-50%);
	}

	.semiplace-ph img.img-width {
		width: auto;
		max-width: none;
		height: 100%;
	}

	.semiplace-ph img.img-height {
		width: 100%;
		height: auto;
		-webkit-transform: translate(-50%,-25%);
		-ms-transform: translate(-50%,-25%);
		transform: translate(-50%,-25%);
	}
}

/* FAX申込み */

.semi-faxbox {
	background: #f3eee5;
	padding: 8px;
}

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

.fax-iconwrap a {
	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;
}

.contents .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; }

	.consulting .fax-iconwrap { padding: 0; }

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

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


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

/* 共通設定 */

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.news a { background: #4e8bee; }
.news-all-list .cat-links.info a { background: #d3393c; }

.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 .cat-links.news a:hover { background: #a7c7f2; }
.news-all-list .cat-links.info a:hover { background: #d37173; }

.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; }
}

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

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

.home-visualwrap {
	background: #fff;
	/*padding: 16px 0;*/
	margin-bottom: 40px;
}

.top-visual { position: relative; }

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

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

	.home-visualwrap { padding: 40px 0 }
}*/


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

.slide-ul {
	line-height: none;
	margin: 0;
	padding: 0;
}

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

.slide-copy {
	display: inline-block;
	padding: 0.2em 0.5em;
	background: rgba(173,24,30,0.8);
}

.slide-txt p { margin-bottom: 0; }

.slide-txt p br { display: none; }

img + .slide-txt {
	color: #fff;
	text-shadow: 0 0 2px rgba(173,24,30,1),0 0 3px rgba(173,24,30,1),0 0 3px rgba(173,24,30,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: 641px )  {

	.slide-txt p br { display: inline; }
}

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

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

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

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

/* 共通 */

.slick-dots {
	padding: 0;
	margin: 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: #ad181e }

.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: #ad181e;
}

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

.home-contents {
	background-repeat: no-repeat;
	background-position: left bottom;
	background-size: auto 78%;
}

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

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

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


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

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

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

.contents .home-widget-title {
	color: #fff;
	margin-bottom: 0.2em;
}

.widg-subtitle {
	color: #ad181e;
	font-weight: 700;
	margin-bottom: 1em;
}

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

.home-widget .loop-title a { color: #2b1e19; }

.widg-list-link {
	text-align: center;
	margin-top: 0.3em;
}

.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 )  {

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

}




