@charset "utf-8";
/*
Theme Name:SKIN
Theme URI:
Description:WordPressテーマ「SKIN」
Author:Design Plus
Author URI:http://design-plus1.com/tcd-w/
Version:1.0.9
Text Domain:tcd-w
*/

/* --------------------------------------------------------------------------------
 web fonts　ウェブフォントファイルを変更した場合はv=1.0の数字を変更（キャッシュ対策）
-------------------------------------------------------------------------------- */
@font-face {
	font-family: 'design_plus';
	src: url('fonts/design_plus.eot?v=1.2');
	src: url('fonts/design_plus.eot?v=1.2#iefix') format('embedded-opentype'),
	url('fonts/design_plus.woff?v=1.2') format('woff'),
	url('fonts/design_plus.ttf?v=1.2') format('truetype'),
	url('fonts/design_plus.svg?v=1.2#design_plus') format('svg');
	font-weight: normal;
	font-style: normal;
}

/* ----------------------------------------------------------------------
 reset css
---------------------------------------------------------------------- */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}

audio, canvas, video {
	display: inline-block;
	max-width: 100%;
}

html {
	overflow-y: scroll;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}

ul, ol {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
}

a:focus {
	outline: none;
}

ins {
	text-decoration: none;
}

mark {
	font-style: italic;
	font-weight: bold;
}

del {
	text-decoration: line-through;
}

abbr[title], dfn[title] {
	border-bottom: 1px dotted;
	cursor: help;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
	width: 100%;
}

hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #ccc;
	margin: 1em 0;
	padding: 0;
}

button, input, select, textarea {
	outline: 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	font-size: 100%;
}

input, textarea {
	background-image: -webkit-linear-gradient(hsla(0, 0%, 100%, 0), hsla(0, 0%, 100%, 0));
	-webkit-appearance: none;
	border-radius: 0; /* Removing the inner shadow, rounded corners on iOS inputs */
}

input[type="checkbox"] {
	-webkit-appearance: checkbox;
}

input[type="radio"] {
	-webkit-appearance: radio;
}

button::-moz-focus-inner, input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

img {
	-ms-interpolation-mode: bicubic;
}

/* clearfix */
.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	font-size: 0.1em;
	line-height: 0;
	visibility: hidden;
	overflow: hidden;
}

.clearfix {
	display: inline-block;
}

/* exlude MacIE5 \*/
* html .clearfix {
	height: 1%
}

.clearfix {
	display: block;
}

/* end MacIE5 */

/* ----------------------------------------------------------------------
 基本設定
---------------------------------------------------------------------- */
body {
	font-family: Arial, sans-serif;
	color: #666;
	line-height: 1;
	width: 100%;
	min-width: 1280px;
	background: #F8F5F2;
	font-weight: bold;

}

a {
	color: #666;
	text-decoration: none;
}

a, a:before, a:after, input {
	-webkit-transition-property: background-color, color, border-color;
	-webkit-transition-duration: 0.2s;
	-webkit-transition-timing-function: ease;
	-moz-transition-property: background-color, color, border-color;
	-moz-transition-duration: 0.2s;
	-moz-transition-timing-function: ease;
	-ms-transition-property: background-color, color, border-color;
	-ms-transition-duration: 0.2s;
	-ms-transition-timing-function: ease;
	-o-transition-property: background-color, color, border-color;
	-o-transition-duration: 0.2s;
	-o-transition-timing-function: ease;
	transition-property: background-color, color, border-color;
	transition-duration: 0.2s;
	transition-timing-function: ease;
}

a:hover {
	color: #c2aa99;
	text-decoration: underline;
}

.clear {
	clear: both;
}

.hide {
	display: none;
}

/* レイアウト */
#main_contents {
	width: 100%;
	position: relative;
}

#main_col {
	width: 1150px;
	margin: 10px auto 100px;
	padding: 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
}

#left_col {
	width: 800px;
	float: left;
}

#side_col {
	width: 300px;
	float: right;
	margin-bottom: 50px;
}

/* キャプションホバースライド */
.caption_hover_slide {
	-webkit-transition: margin 0.35s ease;
	-moz-transition: margin 0.35s ease;
	-ms-transition: margin 0.35s ease;
	-o-transition: margin 0.35s ease;
	transition: margin 0.35s ease;
}

.image:hover .caption_hover_slide {
	margin-left: 1em;
	margin-right: -1em;
}

/* 共通ヘッドライン（背景あり） */
.headline_bg_l {
	margin: 0;
	padding: 15px 22px;
	font-size: 26px;
	font-weight: 400;
	color: #fff;
	background: #e3d0c3;
}

.headline_bg_l span {
	display: inline-block;
	margin-left: 15px;
	font-size: 15px;
	font-weight: 300;
	position: relative;
	top: -3px;
}

.headline_bg_l a {
	float: right;
	font-size: 14px;
	color: #fff;
	margin: 6px -8px 0 0;
	padding: 0 24px 0 0;
	position: relative;
	text-transform: none;
	text-decoration: none;
}

.headline_bg_l a:after {
	content: '\e910';
	font-family: 'design_plus';
	font-size: 16px;
	text-align: right;
	margin: -0.5em 0 0 0;
	position: absolute;
	top: 50%;
	right: 0;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-transition: none;
	transition: none;
}

.headline_bg {
	margin: 0;
	padding: 20px 22px;
	font-size: 16px;
	font-weight: 400;
	color: #fff;
	background: #e3d0c3;
}

.headline_bg a {
	float: right;
	font-size: 14px;
	color: #fff;
	margin: 1px -8px 0 0;
	padding: 0 24px 0 0;
	position: relative;
	text-decoration: none;
}

.headline_bg a:after {
	content: '\e910';
	font-family: 'design_plus';
	font-size: 16px;
	text-align: right;
	margin: -0.5em 0 0 0;
	position: absolute;
	top: 50%;
	right: 0;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* ----------------------------------------------------------------------
 ヘッダー
---------------------------------------------------------------------- */
#header {
	width: 100%;
	border-top: 7px solid rgba(226, 190, 166, .8);
}

.header_inner {
	width: 100%;
	max-width: 1150px;
	height: 120px;
	margin: 0 auto 60px auto;
	position: relative;
}

/* ロゴ */
#header_logo {
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	transform: translateY(-50%);
}

#header_logo .logo {
	display: inline-block;
	font-size: 24px;
	margin: 0 auto;
	font-weight: 700;
}

#header_logo .logo a {
	color: #666;
	text-decoration: none;
}

#header_logo img {
	display: block;
	max-height: 80px;
}

/** ヘッダー お問合せリンク */
.contact-block {
	position: absolute;
	top: 20%;
	right: 0;
	display: flex;
	justify-content: space-between;
	width: 450px;
}

.contact-block a {
	width: 220px;
	height: 40px;
	padding: 10px 0;
	border-radius: 5px;
	position: relative;
}

.contact-block a:hover {
	text-decoration: none;
}

.contact-block img {
	position: absolute;
	width: 13%;
	top: 0;
	bottom: 0;
	left: 7%;
	margin: auto;
}

.contact-block .text-block {
	display: block;
	width: 80%;
	font-size: 14px;
	font-weight: normal;
	text-align: center;
	color: white;
	margin-left: 20%;
}

.contact-block .text-block strong {
	display: block;
	font-size: 20px;
	font-weight: normal;
	line-height: 1.3;
	letter-spacing: 1px;
}

.contact-block .tel-link {
	background-color: #c5b79c;
}

.contact-block .contact-link {
	background-color: #fe8a15;
}

.contact-block .contact-link .text-block {
	line-height: 40px;
}

/* グローバルメニュー */
a.menu_button {
	display: none;
}
a.contact_button {
	display: none;
}

/** お問い合わせ */
.contact-container .tel-block {
	padding-bottom: 30px;
}
.contact-container .tel-block a {
	display: flex;
	background-color: #c5b79c;
	text-align: center;
	border-radius: 5px;
	align-items: center;
	justify-content: center;
	padding: 10px 0;
}
.contact-container .tel-block a:hover {
	text-decoration: none;
}
.contact-container .tel-block img {
	display: inline-block;
	width: 5%;
	padding-right: 15px;
}
.contact-container .tel-block a span {
	font-size: 24px;
	font-weight: normal;
	color: white;
}

#global_menu {
	z-index: 20;
	color: #666;
	margin: 0 -28px 0 0;
	position: absolute;
	bottom: -60px;
	right: 0;
}

#global_menu a {
	color: #666;
}

#global_menu > ul {
	font-size: 0;
	position: relative;
	text-align: right;
	margin: 0 auto;
}

#global_menu > ul > li {
	font-size: 1%;
	position: relative;
	display: inline-block;
}

#global_menu > ul > li > a {
	font-size: 16px;
	text-decoration: none;
	height: 90px;
	line-height: 90px;
	display: block;
	padding: 0 28px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
}

#global_menu > ul > li > a:hover {
	color: #c2aa99;
}

#global_menu ul ul {
	display: none;
}

@media only screen and (max-width: 1200px) {
	#global_menu > ul > li > a {
		font-size: 12px;
	}
}

@media only screen and (min-width: 992px) {
	body {
		overflow-x: hidden;
	}

	#global_menu .child_menu_button {
		display: none;
	}

	#global_menu ul ul {
		display: block;
		visibility: hidden;
		width: 220px;
		position: absolute;
		top: 90px;
		left: 30px;
		margin: 0;
		padding: 0;
		opacity: 0;
		z-index: 2;
		-webkit-transition-property: opacity, left;
		-webkit-transition-duration: .3s;
		-webkit-transition-timing-function: ease;
		-moz-transition-property: opacity, left;
		-moz-transition-duration: .3s;
		-moz-transition-timing-function: ease;
		-ms-transition-property: opacity, left;
		-ms-transition-duration: .3s;
		-ms-transition-timing-function: ease;
		-o-transition-property: opacity, left;
		-o-transition-duration: .3s;
		-o-transition-timing-function: ease;
		transition-property: opacity, left;
		transition-duration: .3s;
		transition-timing-function: ease;
	}

	#global_menu ul ul ul {
		left: 250px;
		top: 0;
		bottom: auto;
		margin: 0;
		border: none;
	}

	#global_menu ul ul li {
		line-height: 1.5;
		padding: 0;
		margin: 0;
		text-align: left;
		position: relative;
		display: block;
	}

	#global_menu ul ul a {
		display: block;
		font-size: 14px;
		color: #fff;
		background: #e3d0c3;
		border: none;
		position: relative;
		padding: 12px 28px 11px 28px;
		height: auto;
		line-height: 1.6;
		margin: 0;
		text-align: left;
	}

	#global_menu ul ul a:hover {
		background: #c2aa99;
		text-decoration: none;
		border: none;
	}

	#global_menu ul ul li.menu-item-has-children > a:before {
		margin: 0;
		display: block;
		right: 10px;
		position: absolute;
		content: "\e910";
		font-family: "design_plus";
	}

	#global_menu > ul > li:hover > ul {
		visibility: visible;
		left: 0;
		opacity: 1;
		z-index: 3; /* box-shadow:0px 1px 2px 0px rgba(255,255,255,.5); */
	}

	#global_menu > ul > li li:hover > ul {
		visibility: visible;
		opacity: 1;
		top: 0;
		left: 100%;
		z-index: 3;
	}
}

/* ヘッダー固定 */
#logo_image_fixed, #logo_text_fixed {
	display: none;
}

@media only screen and (min-width: 992px) {
	.fix_top.header_fix #header {
		position: fixed;
		width: 100%;
		min-width: 1280px;
		top: 0px;
		left: 0px;
		z-index: 200;
		background: rgba(226, 190, 166, .8);
		border-top: none;
		-webkit-transform: translateY(0%);
		-moz-transform: translateY(0%);
		-ms-transform: translateY(0%);
		-o-transform: translateY(0%);
		transform: translateY(0%);
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
		animation: slideDown 0.5s ease;
		-ms-animation: slideDown 0.5s ease;
		-webkit-animation: slideDown 0.5s ease;
		-moz-animation: slideDown 0.5s ease;
	}

	.fix_top.header_fix .header_inner {
		min-height: 70px;
	}

	/* ロゴ */
	.fix_top.header_fix #header_logo #logo_image_fixed, .fix_top.header_fix #header_logo #logo_text_fixed {
		display: block;
	}

	.fix_top.header_fix #header_logo #logo_image, .fix_top.header_fix #header_logo #logo_text {
		display: none;
	}

	.fix_top.header_fix #header_logo .logo a {
		color: #fff;
		text-decoration: none;
	}

	.fix_top.header_fix #header_logo img {
		max-height: 60px;
	}

	/* グローバルメニュー */
	.fix_top.header_fix #global_menu a {
		color: #fff;
	}

	.fix_top.header_fix #global_menu > ul > li > a {
		height: 70px;
		line-height: 70px;
	}

	.fix_top.header_fix #global_menu > ul > li:hover > ul {
		top: 70px;
	}
}

@-webkit-keyframes slideDown {
	0% {
		-webkit-transform: translateY(-100%);
		-moz-transform: translateY(-100%);
		-ms-transform: translateY(-100%);
		-o-transform: translateY(-100%);
		transform: translateY(-100%);
	}
	100% {
		-webkit-transform: translateY(0%);
		-moz-transform: translateY(0%);
		-ms-transform: translateY(0%);
		-o-transform: translateY(0%);
		transform: translateY(0%);
	}
}

@keyframes slideDown {
	0% {
		-webkit-transform: translateY(-100%);
		-moz-transform: translateY(-100%);
		-ms-transform: translateY(-100%);
		-o-transform: translateY(-100%);
		transform: translateY(-100%);
	}
	100% {
		-webkit-transform: translateY(0%);
		-moz-transform: translateY(0%);
		-ms-transform: translateY(0%);
		-o-transform: translateY(0%);
		transform: translateY(0%);
	}
}

.header_fix {
	padding-top: 130px;
}

.header_fix #header {
	-webkit-transition: opacity 0.2s ease;
	-moz-transition: opacity 0.2s ease;
	-ms-transition: opacity 0.2s ease;
	-o-transition: opacity 0.2s ease;
	transition: opacity 0.2s ease;
}

.header_fix #header:hover {
	opacity: 1;
}

/* アドミンバー */
.admin-bar {
	padding-top: 32px;
}

@media only screen and (min-width: 992px) {
	.fix_top.header_fix.admin-bar {
		padding-top: 152px;
	}

	.fix_top.header_fix.admin-bar #header {
		top: 32px;
	}
}

@media only screen and (max-width: 991px) {
	.mobile_fix_top.header_fix.admin-bar {
		padding-top: 92px;
	}

	.mobile_fix_top.header_fix.admin-bar #header {
		top: 32px;
	}
}

@media only screen and (max-width: 782px) {
	.admin-bar {
		padding-top: 46px;
	}

	.mobile_fix_top.header_fix.admin-bar {
		padding-top: 106px;
	}

	.mobile_fix_top.header_fix.admin-bar #header {
		top: 46px;
	}
}

@media only screen and (max-width: 600px) {
	.mobile_fix_top.header_fix.admin-bar {
		margin-top: 46px;
		padding-top: 60px;
	}

	.mobile_fix_top.header_fix.admin-bar #header {
		top: 0;
	}
}

/* パンくずリンク */
#bread_crumb {
	margin: 0 0 10px;
	height: 60px;
	line-height: 60px;
	overflow: hidden;
}

#bread_crumb ul {
	width: 100%;
	max-width: 1150px;
	margin: 0 auto;
}

#bread_crumb li a {
	color: #c2aa99;
}

#bread_crumb li {
	font-size: 14px;
	display: inline;
	vertical-align: middle;
	padding: 0;
	margin: 0;
	position: relative;
}

#bread_crumb li:after {
	font-family: 'design_plus';
	content: '\e910';
	color: #666;
	font-size: 10px;
	display: inline;
	padding: 0 0.5em 0 1em;
	position: relative;
	bottom: 1px;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

#bread_crumb li:last-child:after {
	content: '';
	margin: 0;
}

#bread_crumb li.home a span {
	display: none;
}

#bread_crumb li.home a:before {
	content: '\e90c';
	font-family: 'design_plus';
	color: #999;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

#bread_crumb li.home a:hover {
	text-decoration: none;
}

#bread_crumb li.home a:hover:before {
	color: #c2aa99;
}

/* ----------------------------------------------------------------------
 トップページ
---------------------------------------------------------------------- */
.home #main_col {
	margin-top: 0;
	margin-bottom: 70px;
}

/* スライダー */
#header_slider {
	width: 100%;
	max-width: 1150px;
	position: relative;
	margin: 0 auto;
}

#header_slider .item {
	width: 100%;
}

#header_slider .item:nth-of-type(n+2) {
	display: none;
}

#header_slider.slick-initialized .item:nth-of-type(n+1) {
	display: block;
}

#header_slider .item img {
	width: 100%;
	height: auto;
	display: block;
}

#header_slider .item .overlay span:before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	z-index: 2;
	position: absolute;
	left: 0px;
	top: 0px;
}

#header_slider .slick-arrow {
	border: none;
	height: 50px;
	width: 50px;
	overflow: hidden;
	text-align: center;
	font-family: 'design_plus';
	color: #666;
	font-size: 16px;
	line-height: 50px;
	margin-top: -25px;
	position: absolute;
	top: 50%;
	z-index: 2;
	cursor: pointer;
	background: rgba(255, 255, 255, 0.9);
	opacity: 0.4;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

#header_slider .slick-prev {
	left: 0;
}

#header_slider .slick-next {
	right: 0;
	text-align: right;
	padding-right: 15px;
}

#header_slider .slick-arrow:hover {
	opacity: 1;
}

#header_slider .slick-dots {
	text-align: center;
	position: absolute;
	bottom: 16px;
	left: 0;
	right: 0;
}

#header_slider .slick-dots li {
	display: inline-block;
	margin: 0 3px;
}

#header_slider .slick-dots li button {
	display: inline-block;
	padding: 0;
	width: 12px;
	height: 12px;
	overflow: hidden;
	text-indent: -400px;
	background: #fff;
	border: none;
	border-radius: 100%;
	opacity: 0.6;
}

#header_slider .slick-dots li button:hover {
	background: #c2aa99;
	opacity: 0.7;
}

#header_slider .slick-dots li.slick-active button {
	background: #c2aa99;
	opacity: 1;
}

.show_index_topics #header_slider .slick-dots {
	bottom: 76px;
}

/* スライダーキャプション */
#header_slider .catchphrase {
	margin-bottom: 8px;
}

#header_slider .caption {
	position: absolute;
	text-align: center;
	width: 100%;
	margin: auto;
	top: 50%;
	left: 0;
	right: 0;
	z-index: 3;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	transform: translateY(-50%);
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

#header_slider .caption p {
	line-height: 1.5;
}

#header_slider .caption .button {
	display: inline-block;
	margin: 15px 0 0 0;
	padding: 0 25px;
	min-width: 170px;
	height: 45px;
	line-height: 45px;
	font-size: 14px;
	text-decoration: none;
	border: 1px solid transparent;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition-property: background-color, color, border-color;
	-webkit-transition-duration: 0.2s;
	-webkit-transition-timing-function: ease;
	-moz-transition-property: background-color, color, border-color;
	-moz-transition-duration: 0.2s;
	-moz-transition-timing-function: ease;
	-ms-transition-property: background-color, color, border-color;
	-ms-transition-duration: 0.2s;
	-ms-transition-timing-function: ease;
	-o-transition-property: background-color, color, border-color;
	-o-transition-duration: 0.2s;
	-o-transition-timing-function: ease;
	transition-property: background-color, color, border-color;
	transition-duration: 0.2s;
	transition-timing-function: ease;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* スライダーキャプションのアニメーション */
#header_slider .caption > :nth-child(-n+3) {
	opacity: 0;
}

#header_slider .item.slick-active .caption > :nth-child(1) {
	-webkit-animation: opacityAnimation 1.0s ease forwards 1.0s;
	animation: opacityAnimation 1.0s ease forwards 1.0s;
}

#header_slider .item.slick-active .caption > :nth-child(2) {
	-webkit-animation: opacityAnimation 1.0s ease forwards 2.0s;
	animation: opacityAnimation 1.0s ease forwards 2.0s;
}

#header_slider .item.slick-active .caption > :nth-child(3) {
	-webkit-animation: opacityAnimation 1.0s ease forwards 3.0s;
	animation: opacityAnimation 1.0s ease forwards 3.0s;
}

#header_slider .first_active .caption > :nth-child(1) {
	-webkit-animation: opacityAnimation 1.0s ease forwards 2.0s !important;
	animation: opacityAnimation 1.0s ease forwards 2.0s !important;
}

#header_slider .first_active .caption > :nth-child(2) {
	-webkit-animation: opacityAnimation 1.0s ease forwards 3.0s !important;
	animation: opacityAnimation 1.0s ease forwards 3.0s !important;
}

#header_slider .first_active .caption > :nth-child(3) {
	-webkit-animation: opacityAnimation 1.0s ease forwards 4.0s !important;
	animation: opacityAnimation 1.0s ease forwards 4.0s !important;
}

@-webkit-keyframes opacityAnimation {
	0% {
		opacity: 0;
		-webkit-transform: translateY(30px);
		transform: translateY(30px);
	}
	100% {
		opacity: 1;
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}

@keyframes opacityAnimation {
	0% {
		opacity: 0;
		-webkit-transform: translateY(30px);
		transform: translateY(30px);
	}
	100% {
		opacity: 1;
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}

/* video, youtube */
.slider_video_wrapper {
	width: 100%;
	position: relative;
}

.slider_video_wrapper:before {
	content: '';
	display: block;
	padding-top: 56.25%; /* aspect 16:9 */
}

.slider_video_wrapper .slider_video_container {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

/* Topics */
#index_topics {
	margin: -60px 0 20px 0;
	height: 60px;
	overflow: hidden;
	background: rgba(226, 190, 166, .8);
	position: relative;
	z-index: 3;
}

#index_topics .headline {
	float: left;
	margin: 0;
	padding: 0 22px;
	height: 60px;
	line-height: 60px;
	font-size: 26px;
	font-weight: 400;
	color: #fff;
	position: relative;
}

#index_topics .headline:after {
	content: "";
	display: block;
	margin-top: -10px;
	width: 0;
	height: 20px;
	border-right: 1px solid #fff;
	position: absolute;
	top: 50%;
	right: 0;
}

#index_topics .newsticker {
	margin: 0;
	height: 60px;
	overflow: hidden;
	position: relative;
}

#index_topics ol {
	margin: 0;
	padding: 0;
	width: 100%;
	position: absolute;
	top: 0;
}

#index_topics ol li {
	margin: 0 22px;
	height: 60px;
	line-height: 60px;
	font-size: 14px;
	color: #fff;
	overflow: hidden;
}

#index_topics ol li a {
	display: block;
	color: #fff;
	text-decoration: none !important;
}

#index_topics ol .entry-date {
	display: inline-block;
	margin-right: 18px;
	text-decoration: none !important;
}

/* コンテンツ1 */
#index_content1 {
	margin: 20px 0 60px 0;
}

#index_content1.columns-2, #index_content1.columns-3 {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

#index_content1.columns-2 .box {
	width: 49.13%;
}

#index_content1.columns-3 .box {
	width: 32.17%;
}

#index_content1 .box {
	overflow: hidden;
	position: relative;
}

#index_content1 a {
	display: block;
	text-decoration: none;
}

#index_content1 .image img {
	display: block;
	width: 100%;
	height: auto;
}

#index_content1 .caption {
	font-size: 14px;
	line-height: 2.2;
	color: #666;
	overflow: hidden;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
}

/*#index_content1 .image .caption { width:63%; height:72%; padding:12px 10px 12px 20px; overflow:hidden; background:rgba(255,255,255,0.8); position:absolute; top:14%; left:8%; }*/
#index_content1 .image .caption {
	width: 100%;
	padding: 13.5px 20px;
	font-size: 22px;
	font-weight: 400;
	line-height: 1.5;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 2;
	background: rgba(255, 255, 255, 0.8);
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
}

#index_content1 .noimage .caption {
	width: 100%;
	height: 72%;
	padding: 15px 20px;
	overflow: hidden;
	position: absolute;
	top: 14%;
	left: 0;
}

/*#index_content1 .caption .headline { margin:0 0 8px 0; font-size:26px; font-weight:400; line-height:1.2; color:#c2aa99; } edit matu*/
#index_content1 .caption .headline {
	margin: 0 0 0 0;
	font-size: 26px;
	font-weight: 400;
	line-height: 1.2;
	color: #c2aa99;
}

#index_content1 .caption p {
	margin: 0 0 2.2em 0;
}

#index_content1 .caption p:last-child {
	margin-bottom: 0;
}

/* コンテンツ2 */
#index_content2 {
	margin: 50px 0 55px 0;
	text-align: center;
}

#index_content2 .headline {
	margin: 0 0 16px 0;
	font-size: 38px;
	font-weight: 400;
	line-height: 1.4;
	color: #c2aa99;
}

#index_content2 .desc {
	line-height: 2.2;
}

#index_content2 .desc p {
	margin: 0 0 2.2em 0;
}

/* コース */
#index_course {
	margin: 50px 0;
}

#index_course ol {
	margin: 0;
	padding: 0;
	font-size: 0;
}

/*edit matu padding 0 60px*/
#index_course li {
	margin: 0 0 5px 5px;
	padding: 0 0 60px 0;
	width: calc(33.333% - 5px);
	display: inline-block;
	vertical-align: top;
	position: relative;
}

#index_course li:nth-child(3n+1) {
	margin-left: 0;
}

#index_course li .image {
	display: block;
	width: 100%;
	color: #c2aa99;
	text-decoration: none;
}

#index_course li img {
	display: block;
	width: 100%;
	height: auto;
}

#index_course li .caption {
	width: 100%;
	padding: 13.5px 20px;
	font-size: 22px;
	font-weight: 400;
	line-height: 1.5;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 2;
	background: rgba(255, 255, 255, 0.8);
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
}

#index_course li .caption span {
	display: block;
	width: 100%;
}

/* リスト先頭のボーダーを非表示 */
table.pb_pricemenu tr:first-child td {
	border-top: 0;
}

/* お知らせ/キャンペーン */
#index_news {
	margin: 50px 0;
}

#index_news.columns-2 {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

#index_news.columns-2 .index_news {
	width: 47.82%;
}

#index_news ol {
	margin: 0 0 30px 0;
}

#index_news li {
	line-height: 2;
	border: 1px solid #ddd;
	border-top: none;
	position: relative;
}

#index_news .title {
	display: inline;
	margin: 0;
	font-weight: 300;
}

#index_news .title a {
	display: block;
	padding: 15px 26px 15px 146px;
	text-decoration: none;
	position: relative;
}

#index_news .no_date .title a {
	padding-left: 26px;
}

#index_news .date {
	display: inline;
	color: #c2aa99;
	font-weight: 500;
	position: absolute;
	top: 50%;
	left: 26px;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	transform: translateY(-50%);
}

/* お客様の声 */
#index_voice {
	margin: 50px 0;
}

#index_voice ol {
	margin: 0;
	padding: 0;
	font-size: 0;
	border-left: 1px solid #ddd;
}

#index_voice li {
	display: inline-block;
	margin: 0;
	padding: 0;
	width: 50%;
	font-size: 14px;
	line-height: 2;
}

#index_voice li a {
	display: block;
	padding: 30px 26px;
	text-decoration: none;
	border-bottom: 1px solid #ddd;
	border-right: 1px solid #ddd;
}

#index_voice li .image {
	width: 100px;
	height: 100px;
	overflow: hidden;
	float: left;
}

#index_voice li .image img {
	display: block;
	width: 100%;
	height: auto;
}

#index_voice li .info {
	height: 100px;
	overflow: hidden;
}

#index_voice li.has_post_thumbnail .info {
	margin-left: 128px;
}

#index_voice li .info .voice_name {
	margin: -4px 0 0 0;
	color: #c2aa99;
	font-weight: 300;
}

/* ブログ */
#index_blog {
	margin: 80px 0;
	padding-top: 60px;
	background: rgba(227, 208, 196, .15);
}

#index_blog .headline {
	margin: 0 3.652%;
	font-size: 30px;
	font-weight: 400;
	line-height: 1.4;
	color: #c2aa99;
}

a.index_blog_button {
	float: right;
	padding: 15px 22px;
	min-width: 120px;
	line-height: 1;
	font-size: 14px;
	text-align: center;
	text-decoration: none;
	color: #fff;
}

a.index_blog_button span {
	position: relative;
}

a.index_blog_button span:after {
	content: '\e910';
	font-family: 'design_plus';
	color: #fff;
	font-size: 16px;
	margin: -0.45em 0 0 0;
	position: absolute;
	top: 50%;
	right: -24px;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

a.index_blog_button:hover {
	color: #fff;
	background: #c2aa99;
}

#index_blog_list {
	margin: 0;
	padding: 17px 0 43px 0;
	position: relative;
	font-size: 0;
}

#index_blog_list > li {
	width: 28.696%;
	margin: 17px 0 17px 3.3%;
	display: inline-block;
	vertical-align: top;
}

#index_blog_list > li:nth-child(3n+1) {
	margin-left: 3.652%;
}

#index_blog_list li a {
	display: block;
	text-decoration: none;
}

#index_blog_list li .image {
	display: block;
	width: 100%;
	height: 0;
	overflow: hidden;
	padding-top: 63.63%;
	position: relative;
}

#index_blog_list li .image img {
	width: 100%;
	height: auto;
	min-height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

#index_blog_list li .info {
	display: block;
	padding: 20px 24px;
	background: #fff;
	border: 1px solid #eee;
}

#index_blog_list li .title {
	font-size: 14px;
	line-height: 1.7;
	font-weight: 400;
	height: 3.4em;
	overflow: hidden;
}

#index_blog_list li .meta {
	margin-top: 8px;
}

#index_blog_list li .meta li {
	display: inline-block;
	margin: 0 14px 0 0;
	padding: 0;
	font-size: 12px;
	line-height: 28px;
}

#index_blog_list li .meta .category span {
	display: inline-block;
	min-width: 75px;
	min-height: 28px;
	padding: 0 10px;
	text-align: center;
	text-decoration: none;
}

#index_blog_list li .meta .date {
	font-size: 14px;
}

/* 営業日 */
#index_business_day {
	margin: 80px 0;
}

/* ----------------------------------------------------------------------
 固定ページ
---------------------------------------------------------------------- */
/* ヘッダー画像 */
#header_image {
	width: 100%;
	max-width: 1150px;
	margin: 0 auto 10px;
	position: relative;
	overflow: hidden;
}

#header_image img {
	width: 100%;
	height: auto;
	display: block;
}

#header_image .caption {
	margin: 0;
	width: 100%;
	padding: 0 30px;
	line-height: 1.5;
	text-align: center;
	color: #fff;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-mox-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	-o-transform: translate(-50%, -50%);
	transform: translateY(-50%, -50%);
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

#header_image .caption p + p {
	margin-top: 0.5em;
}

/* コンテントヘッダー */
.content_header {
	margin: 0 0 40px 0;
}

.content_header img {
	display: block;
	width: 100%;
	height: auto;
}

/* ----------------------------------------------------------------------
 アーカイブページ
---------------------------------------------------------------------- */
.no_post {
	margin: 50px 0;
}

#archive_headline {
	margin: 0;
}

#archive_wrapper {
	margin-bottom: 150px;
	padding-bottom: 29px;
	background: rgba(227, 208, 196, .15);
}

#post_list {
	margin: 0;
	padding: 29px 0 26px;
	position: relative;
	font-size: 0;
}

#post_list > li {
	width: 41.25%;
	margin: 19px 0 19px 5.833%;
	display: inline-block;
	vertical-align: top;
}

#post_list li a {
	display: block;
	text-decoration: none;
}

#post_list li .image {
	display: block;
	width: 100%;
	height: 0;
	overflow: hidden;
	padding-top: 63.63%;
	position: relative;
}

#post_list li .image img {
	width: 100%;
	height: auto;
	min-height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

#post_list li .info {
	display: block;
	padding: 18px 24px;
	background: #fff;
	border: 1px solid #eee;
}

#post_list li .title {
	font-size: 14px;
	line-height: 1.7;
	font-weight: 400;
	height: 3.4em;
	overflow: hidden;
}

#post_list li .meta {
	margin-top: 8px;
}

#post_list li .meta li {
	display: inline-block;
	margin: 0 14px 0 0;
	padding: 0;
	font-size: 12px;
	line-height: 28px;
}

#post_list li .meta .category span {
	display: inline-block;
	min-width: 75px;
	min-height: 28px;
	padding: 0 15px;
	text-align: center;
	text-decoration: none;
}

#post_list li .meta .date {
	font-size: 14px;
}

/* 共通カテゴリー・日付 */
ul.meta .category a, ul.meta .category span {
	color: #fff;
	background: #e3d0c3;
}

ul.meta .date {
	color: #c2aa99;
}

/* ページング */
.page_navi {
	margin: 0 0 50px 0;
}

#archive_wrapper .page_navi {
	margin: 0 5.833%;
	padding-bottom: 16px;
}

.page_navi ul {
	margin: 0;
	font-size: 0;
	border-left: 1px solid #eee;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

.page_navi li {
	display: inline-block;
	font-size: 12px;
	margin: 0;
	padding: 0;
	width: 38px;
	height: 38px;
}

.page_navi a, .page_navi span {
	display: block;
	margin: 0;
	min-width: 24px;
	font-size: 12px;
	line-height: 1;
	text-align: center;
	color: #666;
	background: #fff;
	border: 1px solid #eee;
	border-left: none;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.page_navi a::before {
	transition: none;
}

.page_navi a:hover {
	background: #e3d0c3;
	border-color: #e3d0c3;
	color: #fff;
	text-decoration: none;
}

.page_navi span.dots {
}

.page_navi span.current {
	background: #e3d0c3;
	border-color: #e3d0c3;
	color: #fff;
}

.page_navi p.back {
	margin: 0;
}

.page_navi p.back a {
	background: #aaa;
	color: #fff;
	text-decoration: none;
	display: inline-block;
	width: 200px;
	height: 50px;
	line-height: 50px;
	text-align: center;
	font-size: 14px;
	position: relative;
	padding: 0;
	border: none;
}

.page_navi p.back a:hover {
	background: #e3d0c3;
	color: #fff;
}

.page_navi .prev::before {
	font-family: "design_plus";
	content: "\e90f";
	font-size: 11px;
	display: block;
}

.page_navi .next::before {
	font-family: "design_plus";
	content: "\e910";
	font-size: 11px;
	display: block;
}

/* ----------------------------------------------------------------------
 記事
---------------------------------------------------------------------- */
#article {
	margin: 0 0 56px 0;
	position: relative;
}

/* アイキャッチ画像 */
#post_image {
	padding: 0;
	margin: 0 0 40px 0;
}

#post_image img {
	width: 100%;
	height: auto;
	display: block;
	margin: 0;
}

/* 日付・カテゴリー */
#post_meta_top {
	margin: 0 0 17px 0;
	padding: 0;
	width: 100%;
}

#post_meta_top li {
	display: inline-block;
	margin: 0 10px 0 0;;
	padding: 0;
	font-size: 12px;
	line-height: 28px;
}

#post_meta_top li.category a {
	display: inline-block;
	min-width: 75px;
	min-height: 28px;
	padding: 0 15px;
	text-align: center;
	text-decoration: none;
}

#post_meta_top li.date {
	font-size: 14px;
}

/* 記事タイトル */
#post_title {
	padding: 0;
	margin: 0 0 41px;
	font-size: 36px;
	line-height: 1.4;
	color: #c2aa99;
}

/* 記事本文  edit matu font-size14*/
.post_content {
	font-size: 16px;
}

.post_content a {
	color: #c2aa99;
}

/* SNSボタン */
#single_share_top {
	margin: 30px 0 0 0;
}

#single_share_bottom {
	margin: 30px 0 0 0;
}

/* ページ分割 */
#post_pagination {
	margin: 30px 0;
	clear: both;
}

#post_pagination h5 {
	margin: 0 0 10px 0;
	font-size: 12px;
}

#post_pagination a, #post_pagination p {
	float: left;
	display: inline-block;
	margin: 0;
	width: 35px;
	height: 35px;
	line-height: 35px;
	text-align: center;
	text-decoration: none;
	color: #666;
	font-size: 12px;
	border: 1px solid #eee;
}

#post_pagination a + a {
	border-left: none;
}

#post_pagination p {
	background: #e3d0c3;
	border-color: #e3d0c3;
	color: #fff;
}

#post_pagination a:hover {
	background: #e3d0c3;
	color: #fff;
	text-decoration: none;
}

/* メタ情報 */
#post_meta_bottom {
	margin: 0 0 50px;
	padding: 25px;
	background: #f9f9f9;
}

#post_meta_bottom li {
	display: inline;
	margin: 0 10px 0 0;
	padding: 0 15px 0 20px;
	border-right: 1px solid #ddd;
	font-size: 12px;
	line-height: 1.8;
	position: relative;
}

#post_meta_bottom li:last-child {
	border: none;
	margin: 0;
}

#post_meta_bottom li:before {
	font-family: 'design_plus';
	color: #aaa;
	font-size: 13px;
	display: block;
	position: absolute;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

#post_meta_bottom li.post_category:before {
	content: '\e92f';
	top: -4px;
	left: 0px;
}

#post_meta_bottom li.post_tag:before {
	content: '\e935';
	top: -3px;
	left: 0px;
}

#post_meta_bottom li.post_author:before {
	content: '\e90d';
	top: -3px;
	left: 0px;
}

#post_meta_bottom li.post_comment:before {
	content: '\e916';
	font-size: 16px;
	top: -6px;
	left: 0px;
}

/* 次の記事、前の記事 */
#previous_next_post {
	margin: 0 0 50px 0;
}

#previous_next_post .prev_post {
	float: left;
	width: 49.625%;
}

#previous_next_post .next_post {
	float: right;
	width: 49.625%;
}

#previous_next_post a {
	display: block;
	padding: 35px;
	background: #f6f6f6;
	line-height: 1.3;
	height: 110px;
	color: #666;
	text-decoration: none;
	position: relative;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
}

#previous_next_post .title {
	display: block;
	font-size: 14px;
	line-height: 1.8;
	width: calc(100% - 102px);
	max-height: 75px;
	overflow: hidden;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	transform: translateY(-50%);
}

#previous_next_post a:before {
	font-family: 'design_plus';
	color: #999;
	font-size: 18px;
	display: block;
	margin: -0.6em 0 0 0;
	width: 20px;
	position: absolute;
	top: 50%;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

#previous_next_post .prev_post a {
	padding-left: 65px;
}

#previous_next_post .next_post a {
	padding-right: 65px;
}

#previous_next_post .prev_post a:before {
	content: '\e90f';
	left: 20px;
	text-align: left;
}

#previous_next_post .next_post a:before {
	content: '\e910';
	right: 20px;
	text-align: right;
}

#previous_next_post a:hover, #previous_next_post a:hover:before, #previous_next_post a:hover:after {
	color: #c2aa99;
}

#previous_next_post2 {
	margin: 50px 0 0 0;
	text-align: center;
}

#previous_next_post2 a {
	display: inline-block;
	margin: 0 6px 6px 6px;
	padding: 0 36px;
	min-width: 170px;
	line-height: 45px;
	text-align: center;
	color: #fff;
	background: #ddd;
	position: relative;
	text-decoration: none;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
}

#previous_next_post2 a:before {
	font-family: 'design_plus';
	color: #fff;
	display: block;
	margin-top: -0.4em;
	line-height: 1;
	position: absolute;
	top: 50%;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

#previous_next_post2 a.prev_post:before, #previous_next_post2 a.back:before {
	content: '\e90f';
	left: 10px;
	text-align: left;
}

#previous_next_post2 a.next_post:before {
	content: '\e910';
	right: 10px;
	text-align: right;
}

#previous_next_post2 a:hover {
	background: #e3d0c3;
}

/* 広告 */
#single_banner_area {
	margin: 0 0 50px;
	text-align: center;
}

#single_banner_area .single_banner_left {
	display: inline-block;
	margin: 0 10px 0 0;
}

#single_banner_area .single_banner_right {
	display: inline-block;
	margin: 0 0 0 10px;
}

#single_banner_area img {
	max-width: 100%;
	height: auto;
	display: block;
}

#single_banner_area.one_banner .single_banner_left {
	float: none;
	margin: 0 auto;
}

#single_banner_area.one_banner img {
	margin: 0 auto;
}

/* 広告（ページ下部） */
#single_banner_area_bottom {
	margin: 0 0 50px;
	text-align: center;
}

#single_banner_area_bottom .single_banner_left {
	display: inline-block;
	margin: 0 10px 0 0;
}

#single_banner_area_bottom .single_banner_right {
	display: inline-block;
	margin: 0 0 0 10px;
}

#single_banner_area_bottom img {
	max-width: 100%;
	height: auto;
	display: block;
}

#single_banner_area_bottom.one_banner .single_banner_left {
	float: none;
	margin: 0 auto;
}

#single_banner_area_bottom.one_banner img {
	margin: 0 auto;
}

/* 広告（ショートコードver） */
#single_banner_area2 {
	margin: 0 0 30px 0;
	text-align: center;
}

#single_banner_area2 .single_banner_left {
	display: inline-block;
	margin: 0 10px 0 0;
}

#single_banner_area2 .single_banner_right {
	display: inline-block;
	margin: 0 0 0 10px;
}

#single_banner_area2 img {
	max-width: 100%;
	height: auto;
	display: block;
}

#single_banner_area2.one_banner .single_banner_left {
	float: none;
	margin: 0 auto;
}

#single_banner_area2.one_banner img {
	margin: 0 auto;
}

/* 関連記事 */
#related_post {
	margin: 0 0 50px 0;
}

#related_post ol {
	margin: 0;
	padding: 30px 7px 8px 7px;
	position: relative;
	font-size: 0;
	background: rgba(227, 208, 196, .15);
}

#related_post li {
	width: 28.625%;
	margin: 0 0 25px 3.56%;
	display: inline-block;
	vertical-align: top;
}

#related_post li a {
	display: block;
	text-decoration: none;
}

#related_post li .image {
	margin: 0 0 10px 0;
	display: block;
	width: 100%;
	height: 0;
	overflow: hidden;
	padding-top: 64.44%;
	position: relative;
}

#related_post li .image img {
	width: 100%;
	height: auto;
	min-height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

#related_post li .title {
	font-size: 14px;
	line-height: 1.7;
	font-weight: 400;
	max-height: 3.4em;
	overflow: hidden;
}

/* ----------------------------------------------------------------------
 お知らせ
---------------------------------------------------------------------- */
/* お知らせ一覧 */
#recent_news {
	margin: 0 0 30px 0;
}

#recent_news ol {
	border-left: 1px solid #ddd;
	border-right: 1px solid #ddd;
}

#recent_news li {
	border-bottom: 1px solid #ddd;
}

#recent_news li a {
	display: -webkit-flex;
	display: flex;
	align-items: center;
	min-height: 138px;
	text-decoration: none;
}

#recent_news .image {
	width: 225px;
	margin: 15px;
	overflow: hidden;
}

#recent_news .image img {
	display: block;
	width: 100%;
	height: auto;
}

#recent_news .info {
	padding: 30px 50px;
	line-height: 2;
}

#recent_news .has_post_thumbnail .info {
	padding-left: 25px;
	width: calc(100% - 305px);
}

#recent_news .info .date {
	color: #c2aa99;
}

#recent_news .info .title {
	font-weight: 300;
}

/* お知らせ詳細 */
.single-news #post_meta_top .date, .single-campaign #post_meta_top .date {
	display: inline-block;
	min-width: 75px;
	min-height: 28px;
	padding: 0 15px;
	text-align: center;
	color: #fff;
	background: #e3d0c3;
}

/* ----------------------------------------------------------------------
 コース
---------------------------------------------------------------------- */
/* コース一覧 */
.course_categories {
	margin: 0 0 60px 0;
	font-size: 0;
	border-left: 1px solid #ddd;
}

.course_categories li {
	display: inline-block;
	width: 33.33%;
}

.course_categories li a {
	display: block;
	padding: 19px 10px;
	font-size: 14px;
	font-weight: 400;
	text-align: center;
	border-bottom: 1px solid #ddd;
	border-right: 1px solid #ddd;
	color: #666;
	text-decoration: none;
}

.course_categories li a.active, .course_categories li a:hover {
	background: rgba(227, 208, 196, .1);
}

.course_category {
	margin: 50px 0;
}

.course_category .course_category_headline {
	margin: 0 0 20px 0;
	font-size: 26px;
	font-weight: 400;
	color: #c2aa99;
}

.course_category .course_category_headline span {
	display: inline-block;
	margin-left: 15px;
	font-size: 15px;
	font-weight: 300;
	position: relative;
	top: -3px;
}

.course_category li {
	margin: 0 0 30px 0;
	border: 1px solid #ddd;
}

.course_category li a {
	display: -webkit-flex;
	display: flex;
	align-items: center;
	text-decoration: none;
}

.course_category .image {
	width: 37.59%;
	margin: 26px 0 26px 3.759%;
	overflow: hidden;
}

.course_category .image img {
	display: block;
	width: 100%;
	height: auto;
}

.course_category .info {
	width: 51.133%;
	margin: 26px 3.759%;
}

.course_category .info .headline {
	margin: 0 0 6px 0;
	font-size: 26px;
	font-weight: 400;
	line-height: 1.2;
	color: #c2aa99;
}

.course_category .info .headline span {
	display: inline-block;
	margin-left: 15px;
	font-size: 15px;
	font-weight: 300;
	position: relative;
	top: -3px;
}

.course_category .info .desc {
	font-size: 14px;
	line-height: 2.2;
}

/* コース詳細 */
.single-course .content_header {
	margin-bottom: 28px;
}

/* ----------------------------------------------------------------------
 お客様の声
---------------------------------------------------------------------- */
/* お客様の声一覧 */
ol#voice_list {
	margin: 0 0 30px 0;
	padding: 0;
	list-style: none;
	border-left: 1px solid #ddd;
	border-right: 1px solid #ddd;
}

ol#voice_list li {
	min-height: 180px;
	border-bottom: 1px solid #ddd;
}

ol#voice_list .voice_image {
	width: 100px;
	margin: 38px 0 38px 28px;
	overflow: hidden;
	float: left;
}

ol#voice_list .voice_image img {
	display: block;
	width: 100%;
	height: auto;
}

ol#voice_list .info {
	padding: 38px 28px;
	line-height: 2;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
}

ol#voice_list .info p {
	margin: 0 0 1em 0;
}

ol#voice_list .info > :last-child {
	margin-bottom: 0;
}

ol#voice_list .has_post_thumbnail .info {
	width: calc(100% - 128px);
	float: right;
}

ol#voice_list .info .voice_name {
	margin: 0 0 0.5em 0;
	color: #c2aa99;
	font-weight: 300;
}

ol#voice_list .info .voice_button a {
	display: inline-block;
	padding: 13px 30px;
	min-width: 170px;
	line-height: 1.6;
	text-align: center;
	text-decoration: none;
	color: #fff;
	background: #ddd;
	position: relative;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
}

ol#voice_list .info .voice_button a:before {
	content: '\e910';
	font-family: 'design_plus';
	color: #fff;
	display: block;
	margin-top: -0.45em;
	font-size: 1.2em;
	line-height: 1;
	position: absolute;
	top: 50%;
	right: 10px;
	text-align: right;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

ol#voice_list .info .voice_button a:hover {
	background: #e3d0c3;
}

/* お客様の声詳細 */
.single-voice #article > .headline {
	margin-bottom: 50px;
}

.voice_info {
	margin: 50px 0;
}

.voice_info.has_image .voice_image {
	width: 25%;
	float: left;
}

.voice_info.has_image .voice_user {
	width: 71.25%;
	float: right;
}

.voice_info .voice_image img {
	display: block;
	width: 100%;
	height: auto;
}

.voice_user .voice_name {
	margin: 0;
	padding: 16px 22px;
	font-size: 16px;
	background: #e3d0c3;
}

.voice_info .voice_user table {
	margin: 0;
}

.voice_info .voice_user table th, .voice_info .voice_user table td {
	padding: 10px 12px;
	line-height: 2;
	background: transparent;
	border: 1px solid #ddd;
}

.voice_info .voice_user table th {
	text-align: center;
	font-weight: normal;
}

.voice_info .voice_user table td {
	text-align: left;
	font-weight: normal;
}

dl.interview {
	margin: 0;
	padding: 0;
	line-height: 2;
}

dl.interview dt {
	margin: 50px 0 0.5em 0;
	padding: 0;
	font-size: 16px;
	font-weight: 300;
	color: #c2aa99;
}

dl.interview dd {
	margin: 0 0 2em 0;
	padding: 0;
}

.voice_course {
	margin: 50px 0 0 0;
	padding: 26px 40px 40px 40px;
	line-height: 2;
	background: #f8f8f8;
	border: 1px solid #ddd;
}

.voice_course p:last-child {
	margin-bottom: 0 !important;
}

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

.voice_course .course_button a {
	display: inline-block;
	padding: 14px 36px;
	min-width: 170px;
	line-height: 1.6;
	text-align: center;
	text-decoration: none;
	color: #fff;
	background: #e3d0c3;
	position: relative;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
}

.voice_course .course_button a:before {
	content: '\e910';
	font-family: 'design_plus';
	display: block;
	margin-top: -0.45em;
	font-size: 1.2em;
	line-height: 1;
	position: absolute;
	top: 50%;
	right: 10px;
	text-align: right;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* ----------------------------------------------------------------------
 スタッフ
---------------------------------------------------------------------- */
/* スタッフ一覧 */
ol#staff_list {
	margin: 0 0 30px 0;
	padding: 0;
	list-style: none;
	border-left: 1px solid #ddd;
	border-right: 1px solid #ddd;
}

ol#staff_list li {
	border-bottom: 1px solid #ddd;
}

ol#staff_list li a {
	min-height: 216px;
	text-decoration: none;
}

ol#staff_list .image {
	width: 150px;
	margin: 28px 0 28px 28px;
	overflow: hidden;
	float: left;
}

ol#staff_list .image img {
	display: block;
	width: 100%;
	height: auto;
}

ol#staff_list .info {
	padding: 18px 28px 28px 28px;
	line-height: 2;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
}

ol#staff_list .has_post_thumbnail .info {
	width: calc(100% - 178px);
	float: right;
}

ol#staff_list .info .staff_name {
	display: inline-block;
	margin: 0 14px 0 0;
	color: #c2aa99;
	font-size: 22px;
	font-weight: 300;
}

ol#staff_list .info .staff_position {
	display: inline-block;
	color: #666;
	font-size: 12px;
}

ol#staff_list .info p {
	margin: 30px 0 0 0;
	color: #666;
}

/* スタッフ詳細 */
.single-staff #article > .headline {
	margin-bottom: 50px;
}

.staff_info {
	margin: 0 0 42px 0;
}

.staff_info.has_image .staff_image {
	width: 25%;
	float: left;
}

.staff_info.has_image .staff_detail {
	width: 71.25%;
	float: right;
}

.staff_info .staff_image img {
	display: block;
	width: 100%;
	height: auto;
}

.staff_info .staff_detail .staff_name {
	display: inline-block;
	margin: 0 12px 12px 0;
	padding: 0;
	font-size: 21px;
	line-height: 1.6;
	color: #c2aa99;
}

.staff_info .staff_detail .staff_social_link {
	display: inline-block;
	margin: 0 0 12px 0;
	padding: 0;
}

.staff_info .staff_detail .staff_social_link li {
	display: inline-block;
	margin: 0;
	padding: 0;
	position: relative;
}

.staff_info .staff_detail .staff_social_link li a {
	display: block;
	padding: 0 3px;
	overflow: hidden;
	width: 16px;
	height: 17px;
	position: relative;
}

.staff_info .staff_detail .staff_social_link li a span {
	display: none;
}

.staff_info .staff_detail .staff_social_link li a:before {
	font-family: 'design_plus';
	color: #aaa;
	font-size: 16px;
	line-height: 1;
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.staff_info .staff_detail .staff_social_link li a:hover:before {
	color: #c2aa99;
}

.staff_info .staff_detail .staff_social_link li.twitter a:before {
	content: '\e904';
}

.staff_info .staff_detail .staff_social_link li.facebook a:before {
	content: '\e902';
}

.staff_info .staff_detail .staff_social_link li.insta a:before {
	content: '\ea92';
	margin-top: 1px;
}

.staff_info .staff_detail table {
	margin: 0;
}

.staff_info .staff_detail table th, .staff_info .staff_detail table td {
	padding: 10px 20px;
	line-height: 2;
	background: transparent;
	border: 1px solid #ddd;
}

.staff_info .staff_detail table th {
	text-align: center;
	font-weight: normal;
}

.staff_info .staff_detail table td {
	text-align: left;
	font-weight: normal;
}

.single-staff #related_post {
	margin-top: 50px;
}

/* ----------------------------------------------------------------------
 サイドコンテンツ
---------------------------------------------------------------------- */
/* 基本設定 */
.side_widget {
	margin: 0 0 50px 0;
	font-size: 14px;
	position: relative;
}

.side_widget:last-child, .side_widget:only-child {
	margin: 0;
}

.side_headline {
	font-size: 14px;
	font-weight: 400;
	margin: 0 0 18px 0;
	padding: 18px 22px;
	color: #fff;
	background: #e3d0c3;
}

.side_widget ul {
	margin: 0;
}

.side_widget li {
	line-height: 2;
	padding: 0;
	margin: 0 0 10px 0;
}

.side_widget li ul {
	margin: 10px 0 0 10px;
}

.side_widget a {
}

.side_widget a:hover {
}

.side_widget img {
	height: auto;
	max-width: 100%;
}

.styled_post_list1_widget {
	margin-bottom: 50px;
}

/* 広告 */
.ml_ad_widget {
	margin: 0 0 47px 0;
	border: none;
	padding: 0;
	background: none;
}

.ml_ad_widget img {
	height: auto;
	max-width: 100%;
	margin: 0 auto;
	display: block;
}

/* カレンダー */
.widget_calendar {
	border: 1px solid #ddd;
	padding: 15px;
}

.widget_calendar .side_headline {
	margin: -16px -16px 20px;
	position: relative;
}

#wp-calendar {
	margin: 0 auto;
	width: 100%;
	font-size: 11px;
	border-collapse: separate;
	table-layout: fixed;
}

#wp-calendar th, #wp-calendar td {
	color: #333;
	padding: 2px;
	line-height: 3.4;
	text-align: center;
}

#wp-calendar td a {
	display: block;
	margin: 0;
	padding: 0;
	text-decoration: none;
	color: #333;
	background-color: #eee;
}

#wp-calendar td a:hover {
	text-decoration: none;
	color: #fff;
	background: #ccc;
}

#wp-calendar caption {
	padding: 7px 0;
}

#wp-calendar thead th, #wp-calendar tfoot td {
	border: none;
	padding: 0;
	line-height: 2;
}

#wp-calendar #prev, #wp-calendar #next {
	line-height: 3;
}

#wp-calendar #prev a, #wp-calendar #next a {
	text-decoration: none;
	background: none;
	color: #333;
}

#wp-calendar #prev a:hover, #wp-calendar #next a:hover {
	color: #fff;
	background: #ccc;
}

#wp-calendar td#today {
	font-weight: bold;
}

/* デザインされた記事一覧１ */
.styled_post_list1 .side_headline {
	margin-bottom: 0;
}

.styled_post_list1 {
	margin: 0;
	padding: 0;
	display: none;
	background: #fff;
	border: 1px solid #ddd;
	border-bottom: none;
}

.styled_post_list1 li {
	margin: 0;
	padding: 10px;
	border-bottom: 1px solid #ddd;
	line-height: 1.7;
}

.styled_post_list1 li a {
	display: block;
	text-decoration: none;
	position: relative;
}

.styled_post_list1 .image {
	float: left;
	width: 100px;
	height: 100px;
	overflow: hidden;
}

.styled_post_list1 .image img {
	display: block;
	width: 100%;
	min-width: 100%;
}

.styled_post_list1 .info {
	margin: 0 0 0 120px;
	padding: 5px 0 0 0;
	height: 95px;
	overflow: hidden;
}

.styled_post_list1 .title {
	font-size: 1em;
	margin: 0;
	padding: 0;
	display: block;
	font-weight: 400;
	text-decoration: none;
}

.styled_post_list1 .date {
	margin: 0 0 2px 0;
	font-size: 0.86em;
	color: #c2aa99;
	display: block;
}

.styled_post_list1_tabs {
	margin: 0 0 -1px 0;
	padding: 0;
	display: -webkit-flex;
	display: flex;
	border-left: 1px solid #ddd;
	position: relative;
}

.styled_post_list1_tabs li {
	margin: 0;
	padding: 0;
	width: 50%;
	line-height: 1.4;
	background: rgba(227, 208, 196, .1);
	border-top: 1px solid #ddd;
	border-right: 1px solid #ddd;
}

.styled_post_list1_tabs li label {
	display: block;
	margin: 0;
	padding: 18px 9px;
	text-align: center;
	cursor: pointer;
	border-bottom: 1px solid #ddd;
}

.styled_post_list1_widget .tab-radio {
	display: none;
}

.styled_post_list1_widget .tab-radio-recent_post:checked ~ .styled_post_list1_tabs .tab-label-recent_post,
.styled_post_list1_widget .tab-radio-recommend_post:checked ~ .styled_post_list1_tabs .tab-label-recommend_post,
.styled_post_list1_widget .tab-radio-recommend_post2:checked ~ .styled_post_list1_tabs .tab-label-recommend_post2 {
	background: #fff;
}

.styled_post_list1_widget .tab-radio-recent_post:checked ~ .styled_post_list1_tabs .tab-label-recent_post label,
.styled_post_list1_widget .tab-radio-recommend_post:checked ~ .styled_post_list1_tabs .tab-label-recommend_post label,
.styled_post_list1_widget .tab-radio-recommend_post2:checked ~ .styled_post_list1_tabs .tab-label-recommend_post2 label {
	border-bottom-color: #fff;
}

.styled_post_list1_widget .tab-radio-recent_post:checked ~ .tab-content-recent_post,
.styled_post_list1_widget .tab-radio-recommend_post:checked ~ .tab-content-recommend_post,
.styled_post_list1_widget .tab-radio-recommend_post2:checked ~ .tab-content-recommend_post2 {
	display: block;
}

/* 開閉式カテゴリー一覧 */
.tcdw_category_list_widget .side_headline {
	margin-bottom: 0;
}

.collapse_category_list {
	margin: 0;
	padding: 0;
}

.collapse_category_list ul {
	margin: 0;
	padding: 0;
}

.collapse_category_list li ul {
	margin: 0;
	padding: 0;
}

.collapse_category_list li {
	margin: 0;
	padding: 0;
	border-bottom: 1px solid #ddd;
}

.collapse_category_list li li {
	margin: 0;
	padding: 0;
	border-top: 1px solid #ddd;
	border-bottom: none;
}

.collapse_category_list li a {
	display: block;
	padding: 12px 8px;
	margin: 0;
	text-decoration: none;
	position: relative;
	overflow: hidden;
}

.collapse_category_list li a:hover {
	color: #c2aa99;
}

.collapse_category_list li a .count {
	float: right;
	top: 0px;
	position: relative;
	padding: 0 10px;
	min-width: 15px;
	text-align: center;
	font-size: 11px;
	border: 1px solid #ddd;
	border-radius: 2px;
}

.collapse_category_list li li a .count {
}

.collapse_category_list li li li a .count {
}

.collapse_category_list .parent_category a.active {
	margin: 0;
}

.collapse_category_list .children {
	display: none;
}

.collapse_category_list .children a {
	padding-left: 20px;
}

.collapse_category_list .children .children a {
	padding-left: 32px;
}

/* 検索 */
.widget_search label {
	display: none;
}

.widget_search #search-box, .widget_search #s, .widget.google_search #s {
	width: 85%;
	height: 40px;
	margin: 0;
	border: 1px solid #ccc;
	background: #eee;
	padding: 0 10px;
}

.widget_search #search-btn input, .widget_search #searchsubmit {
	border: none;
	width: 15%;
	height: 40px;
	background: #222 url(img/common/icon_search.png) no-repeat center;
	cursor: pointer;
	display: block;
	float: right;
	text-indent: -300%;
	overflow: hidden;
}

.widget.google_search #searchsubmit {
	font-family: 'design_plus';
	color: #aaa;
	font-size: 14px;
	border: none;
	width: 15%;
	height: 40px;
	background: #222;
	cursor: pointer;
	display: block;
	float: right;
	overflow: hidden;
}

.widget_search #search-btn input:hover, .widget_search #searchsubmit:hover, .widget.google_search #searchsubmit:hover {
	background-color: #c2aa99;
}

/* アーカイブ、カテゴリードロップダウンメニュー */
.widget_archive select, .widget_categories select, .tcdw_archive_list_widget select {
	border: 1px solid #ddd;
	padding: 12px 10px;
	width: 100%;
	margin: 0;
	font-size: 14px;
}

.widget_archive select {
	padding: 12px;
}

.widget_archive label, .widget_categories label {
	display: none;
}

.widget_archive select option, .widget_categories select option, .tcdw_archive_list_widget option {
	background: #fff;
	color: #333;
}

/* コースバナーリスト */
.side_widget.tcdw_course_list_widget .side_headline {
	margin-bottom: 6px;
}

.tcdw_course_list_widget .course_list {
	margin: 0;
	padding: 0;
}

.tcdw_course_list_widget .course_list li {
	margin: 0 0 6px 0;
	padding: 0;
	width: 100%;
	position: relative;
}

.tcdw_course_list_widget .course_list li:last-child {
	margin-bottom: 0;
}

.tcdw_course_list_widget .course_list li .image {
	display: block;
	width: 100%;
	color: #c2aa99;
	text-decoration: none;
}

.tcdw_course_list_widget .course_list li img {
	display: block;
	width: 100%;
	height: auto;
}

.tcdw_course_list_widget .course_list li .caption {
	width: 100%;
	padding: 7px 20px;
	font-size: 22px;
	font-weight: 400;
	line-height: 1.5;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 2;
	background: rgba(255, 255, 255, 0.8);
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
}

.tcdw_course_list_widget .course_list li .caption span {
	display: block;
	width: 100%;
}

/* バナーリスト */
.side_widget.tcdw_banner_list_widget .side_headline {
	margin-bottom: 10px;
	padding: 0;
	font-size: 22px;
	font-weight: 400;
	line-height: 1.5;
	color: #c2aa99;
	background: none;
}

.tcdw_banner_list_widget .desc {
	line-height: 2;
}

.tcdw_banner_list_widget .desc p {
	margin: 0 0 1em 0;
}

ul.banner_list {
	margin: 0;
	padding: 0;
}

.side_widget.tcdw_banner_list_widget ul.banner_list {
	margin-top: 18px;
}

ul.banner_list li {
	margin: 0 0 6px 0;
	padding: 0;
	width: 100%;
	position: relative;
}

ul.banner_list li:last-child {
	margin-bottom: 0;
}

ul.banner_list li .image {
	display: block;
	width: 100%;
	color: #c2aa99;
	text-decoration: none;
}

ul.banner_list li img {
	display: block;
	width: 100%;
	height: auto;
}

ul.banner_list li .caption {
	width: 100%;
	padding: 0 22px;
	font-size: 22px;
	font-weight: 400;
	line-height: 1.5;
	position: absolute;
	top: 50%;
	left: 0;
	z-index: 2;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	transform: translateY(-50%);
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
}

/* ----------------------------------------------------------------------
 フッター
---------------------------------------------------------------------- */
#footer_top {
	background: #e3d0c3;
	color: #fff;
}

#footer_top .footer_inner {
	width: 100%;
	max-width: 1150px;
	margin: 0 auto;
	padding: 30px 0 10px;
	text-align: center;
	position: relative;
}

#footer_top a {
	color: #fff;
}

/* logo */
#footer_logo {
	margin: 0 0 15px;
}

#footer_logo .logo {
	display: inline-block;
	font-size: 24px;
	margin: 0;
}

/* 住所 */
#footer_address {
	margin: 20px 0;
	text-align: center;
	font-size: 14px;
	line-height: 1.8;
}

#footer_address span {
	display: inline-block;
}

/* SNSボタン */
#footer_social_link {
	position: absolute;
	left: 0; /*bottom:-43px;*/
	bottom: -38px;
}

#footer_social_link li {
	display: inline-block;
	margin: 0 1.5px;
	position: relative;
	z-index: 1;
}

#footer_social_link li a {
	display: block;
	text-indent: -200px;
	overflow: hidden;
	width: 24px;
	height: 24px;
	position: relative;
	-webkit-transition-property: none;
	-moz-transition-property: none;
	-o-transition-property: none;
	transition-property: none;
}

#footer_social_link li:before {
	font-family: 'design_plus';
	color: #fff;
	font-size: 17px;
	display: block;
	position: absolute;
	top: 5px;
	left: 4px;
	width: 17px;
	height: 17px;
	line-height: 17px;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

#footer_social_link li:hover:before {
	color: #fff;
}

#footer_social_link li.twitter:before {
	content: '\e904';
}

#footer_social_link li.facebook:before {
	content: '\e902';
}

#footer_social_link li.insta:before {
	content: '\ea92';
	margin-top: 1px;
}

#footer_social_link li.rss:before {
	content: '\e90b';
}

/* コピーライトエリア */
#footer_bottom {
	background: #c2aa99;
	width: 100%;
}

#footer_bottom .footer_inner {
	width: 100%;
	max-width: 1150px;
	margin: 0 auto;
	position: relative;
}

/* コピーライト */
#copyright {
	padding: 16px 10px;
	font-size: 12px;
	line-height: 1.5;
	color: #fff;
	text-align: center;
}

#copyright a {
	color: #fff;
}

/* ページ上部へ戻るボタン */
#return_top {
	display: none;
	position: fixed;
	bottom: 0;
	right: 0;
	z-index: 990;
}

#return_top a {
	display: block;
	width: 50px;
	height: 50px;
	text-decoration: none;
	background: rgba(0, 0, 0, .3);
}

#return_top a:before {
	font-family: 'design_plus';
	color: #fff;
	font-size: 16px;
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	margin: -0.4em 0 0 -0.5em;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

#return_top a:before {
	content: '\e911';
}

#return_top a span {
	display: none;
}

/* フッターウィジェット */
#footer_widget {
	width: 100%;
	background: rgba(227, 208, 196, .1);
}

#footer_widget .footer_inner {
	width: 100%;
	max-width: 1050px;
	margin: 0 auto;
	padding: 60px 0 8px;
	font-size: 0;
	text-align: center;
}

.footer_widget {
	display: inline-block;
	vertical-align: top;
	font-size: 12px;
	line-height: 1.6;
	text-align: left;
	width: 300px;
	overflow: hidden;
	margin: 0 30px 38.4px 0;
	padding: 0;
	position: relative;
}

.footer_widget.widget_nav_menu {
	width: 150px;
	margin-right: 10px;
}

.footer_headline {
	margin: 0 0 18px 0;
	font-size: 14px;
	color: #c2aa99;
	line-height: 1;
}

.footer_widget ul {
	margin: 0;
}

.footer_widget li ul {
	margin: 10px 0 10px 10px;
}

.footer_widget li {
	line-height: 1.6;
	padding: 0;
	margin: 0 0 10px 0;
}

.footer_widget a {
	text-decoration: none;
}

.footer_widget a:hover {
	color: #c2aa99;
	text-decoration: none;
}

.footer_widget img {
	height: auto;
	max-width: 100%;
}

.footer_widget .collapse_category_list ul, .footer_widget .collapse_category_list li {
	margin: 0;
	padding: 0;
}

.footer_widget .collapse_category_list {
	border-top: 1px solid #ddd;
}

.footer_widget .styled_post_list1 li {
	margin: 0;
	padding: 10px;
}

.footer_widget .styled_post_list1_tabs li {
	margin: 0;
	padding: 0;
}

/* ----------------------------------------------------------------------
 コメント
---------------------------------------------------------------------- */
/* 基本設定 */
#comments {
	font-size: 12px;
	margin: 0;
	margin-bottom: 50px;
}

#comment_headline {
	margin: 0 0 20px 0;
}

#comment_area, #trackback_area {
	margin: 15px 0 20px;
	padding: 0 0 5px 0;
}

#trackback_area {
	display: none;
}

/* コメント・トラックバックのタブ */
#comment_header {
	position: relative;
	margin: 0 0 25px;
}

#comment_header ul {
	margin: 0;
}

#comment_header ul li {
	float: left;
	text-align: center;
	margin: 0;
	width: 50%;
}

#comment_header ul li a, #comment_header ul li p {
	font-size: 11px;
	padding: 10px 15px;
	line-height: 1.8;
	display: block;
	color: #666;
	text-decoration: none;
	border: 1px solid #ccc;
}

#comment_header ul li a:hover {
	color: #fff !important;
	background: #e3d0c3;
}

#comment_header ul li.comment_switch_active a, #comment_header #comment_closed p {
	color: #fff;
	position: relative;
	background: #e3d0c3;
	border-color: #e3d0c3;
}

#comment_header ul li.comment_switch_active a:after, #comment_header #comment_closed p:after {
	position: absolute;
	bottom: -17px;
	left: 50%;
	margin-left: -5px;
	content: "";
	width: 0;
	height: 0;
	border-width: 10px;
	border-style: solid;
	border-color: #e3d0c3 transparent transparent transparent;
}

/* コメントの基本部分 */
.commentlist {
	list-style-type: none;
	margin: 0;
	padding: 0;
}

.comment {
	border: 1px solid #ccc;
	color: #777;
	margin: 0 0 15px;
	padding: 15px 20px 0;
	background: #fff;
}

#comments .post_content {
	margin: 20px 0 0;
	padding: 0;
	background: none;
}

.admin-comment {
}

/* コメントの情報部分 */
.comment-meta {
	position: relative;
	margin: 0 0 10px 0;
}

.comment-meta-left {
	float: left;
	width: 100%;
}

#comments .avatar {
	float: left;
	margin: 0 10px 0 0;
	background: #fff;
	width: 40px;
	height: 40px;
}

.comment-name-date {
	padding: 3px 0 0 0;
	height: 37px;
}

a.admin-url {
	text-decoration: underline;
}

a.guest-url {
	text-decoration: underline;
}

.comment-name-date {
	margin: 0;
}

.comment-date {
	font-size: 11px;
	color: #757676;
	margin: 10px 0 0 0;
}

.comment-act {
	background: url(img/common/arrow3.gif) no-repeat left;
	font-size: 11px;
	position: absolute;
	right: 0px;
	padding: 0 0 0 10px;
	margin: 5px 0 0 0;
}

.comment-act li {
	display: inline;
	margin: 0;
}

.comment-reply a, .comment-reply a:visited {
	border-right: 1px solid #aaa;
	padding: 0 10px 0 0;
	margin: 0 6px 0 0;
}

.comment-edit a, .comment-edit a:visited {
	border-left: 1px solid #aaa;
	padding: 0 0 0 10px;
	margin: 0 0 0 6px;
}

/* コメント本文 */
#comments .post_content p {
	margin: 0 0 15px 0;
}

#comments .post_content blockquote span {
	margin: 0 0 -1em 0;
	display: block;
}

/* メッセージ、警告文 */
.comment-note {
	display: block;
	font-size: 11px;
	margin: 0 0 1em 0;
	color: #33a8e5;
	border: 1px solid #94ddd4;
	padding: 10px 15px;
	background: #d6f4f0;
}

.comment_closed {
	border: 1px solid #ccc;
	text-align: center;
	margin: 0 35px 15px 0;
	padding: 15px;
	background: #fefefe;
}

.no_comment {
	padding-bottom: 15px;
}

/* トラックバック */
.trackback_time {
	font-size: 11px;
	color: #757676;
	margin: 0 0 7px 0px;
}

.trackback_title {
	margin: 2px 0 8px 0;
	margin: 0 0 10px 0px;
	line-height: 1.6;
}

#trackback_url_area {
	margin: 0;
}

#trackback_url_area label {
	display: block;
	margin: 0 0 10px 0;
	font-size: 11px;
}

#trackback_url_area input {
	border: 1px solid #ccc;
	background: #fafafa;
	padding: 10px;
	width: 100%;
	font-size: 11px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

/* ページナビ */
#comment_pager {
	margin: 0 0 10px;
	height: 24px;
}

#comment_pager a, #comment_pager span {
	display: inline;
	float: left;
	margin: 0 10px 0 0;
}

#comment_pager .current {
	text-decoration: underline;
}

/* コメントフォーム */
.comment_form_wrapper {
	border: 1px solid #ccc;
	margin: 0 0 0px;
	padding: 15px;
	background: #fff;
}

.comment .comment_form_wrapper {
	margin: 0 0 20px;
}

#cancel_comment_reply {
	background: url(img/common/arrow3.gif) no-repeat left center;
	margin: 0 0 1em 0;
	padding: 0 0 0 10px;
}

#comment_user_login p {
	padding: 0 0 0 1px;
	margin: 0;
	line-height: 1;
}

#comment_user_login span {
	margin: 0 0 0 40px;
}

#comment_login {
	margin: 0;
	padding: 3px 30px 10px 30px;
}

#comment_login p {
	margin: 0;
	padding: 12px 0 11px 36px;
	line-height: 1;
}

#comment_login a {
	margin: 0 0 0 20px;
	padding: 0 0 0 20px;
	background: url(img/common/arrow3.gif) no-repeat 10px 3px;
}

#guest_info {
	padding: 0;
	width: 100%;
}

#guest_info div {
	margin: 0 0 12px 0;
	text-align: left;
}

#guest_info input {
	margin: 0;
	padding: 5px 0;
	border: 1px solid #ccc;
	width: 100%;
	background: #fff;
	color: #777;
}

#guest_info input:focus {
	border: 1px solid #e3d0c3;
}

#guest_info label {
	display: block;
	margin: 0 0 5px 0;
	padding: 0 0 0 0;
	font-size: 11px;
	color: #888;
}

#guest_info span {
	color: #666;
	margin: 0 10px 0 0;
}

#comment_textarea textarea {
	margin: 15px 0 0;
	width: 100%;
	height: 150px;
	border: 1px solid #ccc;
	background: #fff;
	color: #777;
	font-size: 11px;
	overflow: auto;
}

#comment_textarea textarea:focus {
	border: 1px solid #e3d0c3;
}

#submit_comment_wrapper {
	text-align: center;
}

#submit_comment {
	background: #e3d0c3;
	border: none;
	cursor: pointer;
	color: #fff;
	font-size: 14px;
	width: 200px;
	height: 50px;
	margin: 15px auto 0;
	display: block;
	-webkit-transition: background-color 200ms ease-in-out;
	-moz-transition: background-color 200ms ease-in-out;
	-o-transition: background-color 200ms ease-in-out;
	-ms-transition: background-color 200ms ease-in-out;
	transition: background-color 200ms ease-in-out;
}

#submit_comment:hover {
	background: #c2aa99;
}

#input_hidden_field {
	display: none;
}

/* ----- パスワード保護 ----- */
.password_protected {
	text-align: center;
	margin: 0 38px 30px;
	padding: 10px 20px;
	color: #fff;
	background: #3db4b2;
	border-radius: 5px;
}

.password_protected p {
	font-size: 12px;
	margin: 0;
	line-height: 1.6;
}

/* ----------------------------------------------------------------------
 WordPress プリセットスタイル
---------------------------------------------------------------------- */
/* alignment */
.post_content .alignright {
	float: right;
}

.post_content .alignleft {
	float: left;
}

.post_content .aligncenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 7px;
}

.post_content blockquote.alignleft, .post_content img.alignleft {
	margin: 7px 24px 7px 0;
}

.post_content .wp-caption.alignleft {
	margin: 7px 14px 7px 0;
}

.post_content blockquote.alignright, .post_content img.alignright {
	margin: 7px 0 7px 24px;
}

.post_content .wp-caption.alignright {
	margin: 7px 0 7px 14px;
}

.post_content blockquote.aligncenter, .post_content img.aligncenter, .post_content .wp-caption.aligncenter {
	margin-top: 7px;
	margin-bottom: 7px;
}

/* text and headline */
.post_content p {
	line-height: 2.4;
	margin: 0 0 2em 0;
}

.post_content h1, .post_content h2, .post_content h3, .post_content h4, .post_content h5, .post_content h6 {
	clear: both;
	line-height: 1.2;
	font-weight: 400;
	margin: 0 0 10px 0;
	padding: 10px 0 0 0;
}

.post_content h1 {
	font-size: 150%;
}

.post_content h2 {
	font-size: 140%;
}

.post_content h3 {
	font-size: 130%;
	padding-top: 20px;
}

.post_content h4 {
	font-size: 120%;
}

.post_content h5 {
	font-size: 110%;
}

.post_content h6 {
	font-size: 100%;
}

/* image */
.post_content img[class*="align"], .post_content img[class*="wp-image-"], .post_content img[class*="attachment-"], .post_content img.size-full, .post_content img.size-large, .post_content .wp-post-image, .post_content img {
	height: auto;
	max-width: 100%;
}

/* list */
.post_content li, .post_content dt, .post_content dd {
	line-height: 2.2;
}

.post_content ul, .post_content ol, .post_content dl {
	margin-bottom: 24px;
}

.post_content ol {
	list-style: decimal outside none;
	margin-left: 1.5em;
}

.post_content ul {
	list-style: circle outside none;
	margin-left: 1.3em;
}

.post_content li > ul, .post_content li > ol {
	margin-bottom: 0;
}

.post_content dt {
	font-weight: bold;
}

.post_content dd {
	margin-bottom: 1em;
}

/* table */
.post_content table {
	margin: 0 0 24px 0; /*width:100% !important;*/
}

.post_content td, .post_content th {
	border: 1px solid #bbb;
	padding: 10px 15px;
	line-height: 2.2;
}

.post_content th {
	background: #ddd;
	font-weight: normal;
}

/* table style */
.post_content table.table_no_border th, .post_content table.table_no_border td {
	border: none;
	padding-left: 0;
}

.post_content table.table_border_horizontal th, .post_content table.table_border_horizontal td {
	border-left: none;
	border-right: none;
	padding-left: 0;
}

/* block quote */
.post_content blockquote {
	margin: 0 0 25px 0;
	padding: 27px 30px 0;
	border: 1px solid #ccc;
	box-shadow: 0px 4px 0px 0px #f2f2f2;
	position: relative;
}

.post_content blockquote:before {
	content: '"';
	font-style: italic;
	font-size: 30px;
	font-weight: normal;
	line-height: 40px;
	width: 30px;
	height: 30px;
	position: absolute;
	top: 5px;
	left: 10px;
	color: #5cbcd7;
}

.post_content blockquote:after {
	content: '"';
	font-style: italic;
	font-size: 30px;
	font-weight: normal;
	text-align: left;
	line-height: 60px;
	width: 30px;
	height: 30px;
	position: absolute;
	bottom: 7px;
	right: -2px;
	color: #5cbcd7;
}

.post_content blockquote cite {
	border-top: 1px dotted #aaa;
	display: block;
	padding: 20px 0 0 0;
	font-style: italic;
	text-align: right;
	font-size: 90%;
}

/* captions */
.post_content .wp-caption {
	margin-bottom: 24px;
	background: #fff;
	border: 1px solid #ccc;
	padding: 5px;
	max-width: 100%;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.post_content .wp-caption-text {
	text-align: center;
	font-size: 12px;
	font-style: italic;
	line-height: 1.5;
	margin: 9px auto;
}

.post_content .wp-caption img[class*="wp-image-"] {
	display: block;
	margin: 0 auto;
}

/* gallery */
.gallery {
	margin-bottom: 20px;
}

.gallery a img {
	border: 0 !important;
}

.gallery-item {
	float: left;
	margin: 0 4px 4px 0;
	overflow: hidden;
	position: relative;
}

.gallery-columns-1 .gallery-item {
	max-width: 100%;
}

.gallery-columns-2 .gallery-item {
	max-width: 48%;
	max-width: -webkit-calc(50% - 4px);
	max-width: calc(50% - 4px);
}

.gallery-columns-3 .gallery-item {
	max-width: 32%;
	max-width: -webkit-calc(33.3% - 4px);
	max-width: calc(33.3% - 4px);
}

.gallery-columns-4 .gallery-item {
	max-width: 23%;
	max-width: -webkit-calc(25% - 4px);
	max-width: calc(25% - 4px);
}

.gallery-columns-5 .gallery-item {
	max-width: 19%;
	max-width: -webkit-calc(20% - 4px);
	max-width: calc(20% - 4px);
}

.gallery-columns-6 .gallery-item {
	max-width: 15%;
	max-width: -webkit-calc(16.7% - 4px);
	max-width: calc(16.7% - 4px);
}

.gallery-columns-7 .gallery-item {
	max-width: 13%;
	max-width: -webkit-calc(14.28% - 4px);
	max-width: calc(14.28% - 4px);
}

.gallery-columns-8 .gallery-item {
	max-width: 11%;
	max-width: -webkit-calc(12.5% - 4px);
	max-width: calc(12.5% - 4px);
}

.gallery-columns-9 .gallery-item {
	max-width: 9%;
	max-width: -webkit-calc(11.1% - 4px);
	max-width: calc(11.1% - 4px);
}

.gallery-columns-10 .gallery-item {
	max-width: 7%;
	max-width: -webkit-calc(9.4% - 0px);
	max-width: calc(9.4% - 0px);
}

.gallery-columns-1 .gallery-item:nth-of-type(1n), .gallery-columns-2 .gallery-item:nth-of-type(2n), .gallery-columns-3 .gallery-item:nth-of-type(3n), .gallery-columns-4 .gallery-item:nth-of-type(4n), .gallery-columns-5 .gallery-item:nth-of-type(5n), .gallery-columns-6 .gallery-item:nth-of-type(6n), .gallery-columns-7 .gallery-item:nth-of-type(7n), .gallery-columns-8 .gallery-item:nth-of-type(8n), .gallery-columns-9 .gallery-item:nth-of-type(9n), .gallery-columns-10 .gallery-item:nth-of-type(10n) {
	margin-right: 0;
}

.gallery-caption {
	background-color: rgba(0, 0, 0, 0.7);
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	color: #fff;
	font-size: 12px;
	line-height: 1.5;
	margin: 0;
	max-height: 50%;
	opacity: 0;
	padding: 6px 8px;
	position: absolute;
	bottom: 0;
	left: 0;
	text-align: left;
	width: 100%;
}

.gallery-caption:before {
	content: "";
	height: 100%;
	min-height: 49px;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
}

.gallery-item:hover .gallery-caption {
	opacity: 1;
}

.gallery-columns-7 .gallery-caption, .gallery-columns-8 .gallery-caption, .gallery-columns-9 .gallery-caption, .gallery-columns-10 .gallery-caption {
	display: none;
}

/* etc */
.post_content .wp-smiley {
	border: 0;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

.post_content address {
	margin: 0 0 24px 0;
	line-height: 2.2;
}

.post_content pre {
	border-left: 5px solid #7fc120;
	font-size: 12px;
	margin: 0 0 27px 0;
	line-height: 25px;
	background: url(img/common/pre.gif) repeat left top;
	padding: 0 17px;
	overflow: auto;
}

.post_content .sticky {
}

.post_content .mejs-container {
	margin: 12px 0 25px;
}

/* お問い合わせ */
.your-consent span.wpcf7-acceptance {
	padding: 5px 0;
}

.your-consent span.wpcf7-list-item {
	margin: 0;
}

.wpcf7 input[type='text'],
.wpcf7 input[type='tel'],
.wpcf7 input[type='email'],
.wpcf7 textarea {
	width: 100% !important;
}
/*20230316 トップページに2つのバナー設置*/
.top_2banner-sp a:hover img,
.top_2banner a:hover img {
	opacity: .7;
	-webkit-transition: opacity 0.2s ease;
	-moz-transition: opacity 0.2s ease;
	-ms-transition: opacity 0.2s ease;
	-o-transition: opacity 0.2s ease;
	transition: opacity 0.2s ease;
	}
@media only screen and (min-width: 768px) {
.top_2banner a img {
	width: 46%;
	}
.top_2banner a:nth-child(1) img{
	margin-right: 30px;
}
.top_2banner-sp {
	display: none;
	}
}
@media only screen and (max-width: 767px) {
.top_2banner {
	display: none;
	}
.top_2banner-sp a img {
	width: 100%;
	}
.top_2banner-sp a:nth-child(1) img{
	margin: 0 0 20px;
}
}