@charset "utf-8";
/*
Theme Name:mrp04-child
Template:mrp04
Version: 0.01
*/
/*-----------------BODY--------------------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200;300;400;500;600;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Overpass:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&display=swap');
html {
	font-size: 62.5%;
}
body {
	background: #f8f4e6;
	font-size: min(calc(1.7rem + (1vw - 19.2px) * 0.1942), 1.7rem);
	font-weight: 400;
}
body.mobile #mainImg, body.mobile #breadcrumb {
	margin-top: 0;
}
* {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.fa, .far, .fas {
	font-family: 'Font Awesome 5 Brands', 'Font Awesome 5 Free';
	font-weight: normal;
}
body.mobile {
	margin-top: 60px;
}
/*-----------------BODY--------------------------------------------*/
/*-----------------ヘッダー--------------------------------------------*/
/*------PC・SP共通
--------------------------------------------*/
.bg .inner {
	width: auto !important;
}
/*------PC・SP共通__キャッチフレーズ
--------------------------------------------*/
#header .bg, .bg {
	background: none;
	margin: 0 auto;
}
#header h1, #header .description, #header-upper h1, #header-upper .description {
	color: #333; /*文字色変更*/
	font-size: min(calc(1.2rem + (1vw - 19.2px) * 0.2232), 1.2rem); /* 1.2-1rem (1920-375) */
}
@media print, screen and (min-width: 1024px) {
	/*------ヘッダー上部
--------------------------------------------*/
	#header-upper {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		height: 50px; /* 高さ変更 */
		padding: 0 min(calc(20px + (1vw - 19.2px) * 1.1161), 20px); /* 20-10px (1920-1024) */
	}
	.header__socialicon ul, #header-upper .header__catchphrase, #header-upper .bg, #header-upper .bg .inner, #header-upper h1, #header-upper .description {
		height: 100%;
	}
	/*------ヘッダー上部__キャッチフレーズ
--------------------------------------------*/
	#header-upper h1, #header-upper .description {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}
	/*------ヘッダー上部__SNS
--------------------------------------------*/
	#header-upper .fa-2x, .fa-2x {
		font-size: inherit;
	}
	#header-upper .socialicon ul {
		padding: 0;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
	}
	#header-upper .socialicon ul li {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		padding: 0;
		margin: 0;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}
	#header-upper .socialicon ul li:not(:last-child) {
		margin-right: 10px;
	}
	#header-upper .socialicon ul li::before {
		content: none;
	}
	#header-upper .socialicon ul li a {
		padding: 0;
		overflow: initial;
		line-height: 1;
	}
	#header-upper .socialicon .fa-facebook-square:before, #header-upper .socialicon .fa-twitter-square:before, #header-upper .socialicon .fa-youtube-square:before, #header-upper .socialicon .fa-instagram:before {
		font-size: 2.5rem; /* ----SNSボタン（LINEを除く）の大きさ変更はこちら---- */
	}
	#header-upper .socialicon .SvgLine {
		width: 21px; /* ----LINEボタンの大きさ変更はこちら---- */
		height: 21px; /* ----LINEボタンの大きさ変更はこちら---- */
	}
	/*------ヘッダー下部
--------------------------------------------*/
	#header {
		overflow: visible;
		background: #f8f4e6; /* 背景色変更 */
		width: 100%;
		height: min(calc(120px + (1vw - 19.2px) * 3.3482), 120px); /* 高さ変更 */
		margin: auto;
		z-index: 9999;
	}
	#header .inner, #header-layout, #header .logo, #header .sticky-logo, #header .logo a, #header .header__nav-contact, nav#mainNav, #mainNav .inner, nav div.panel, nav#mainNav ul {
		height: 100%;
		float: none;
	}
	#header .inner {
		width: 100%;
		max-width: none;
	}
	#header-layout {
		width: 100%;
		max-width: 1575px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		padding: 0 min(calc(20px + (1vw - 19.2px) * 1.1161), 20px);
	}
	/*------ヘッダー下部__ロゴ
--------------------------------------------*/
	#header .logo {
		display: block;
		line-height: 0;
		padding: min(calc(10px + (1vw - 19.2px) * 0.5580), 10px) 0; /* 10-5px、0px (1920-1024) */
	}
	#header .logo a {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}
	#header .logo img {
		-o-object-fit: contain;
		object-fit: contain;
		width: auto;
		height: 100%;
		max-width: 300px;
		max-height: min(calc(80px + (1vw - 19.2px) * 2.2321), 80px);
	}
	/*------ヘッダー下部__グローバルナビ
--------------------------------------------*/
	#header .header__nav-contact {
		-ms-flex-negative: 0;
		flex-shrink: 0;
	}
	nav#mainNav {
		background: none; /* 背景色変更 */
		margin: 0;
	}
	nav#mainNav ul, #header .header__nav-contact {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}
	nav#mainNav ul li, nav#mainNav ul li a {
		position: relative;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
	}
	nav#mainNav ul li a {
		font-size: min(calc(1.6rem + (1vw - 19.2px) * 0.2232), 1.6rem); /* 1.6-1.4rem (1920-1024) */
		padding: 8px min(calc(30px + (1vw - 19.2px) * 1.1161), 30px); /* 8px、30-20px (1920-1024) */
	}
	nav#mainNav ul li a::after {
		content: '';
		position: absolute;
		width: 0;
		height: 2px;
		background: #BABABA;
		left: 50%;
		bottom: 0;
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		transform: translateX(-50%);
		-webkit-transition: .4s;
		-o-transition: .4s;
		transition: .4s;
	}
	nav#mainNav ul li.current-menu-item a::after, nav#mainNav ul li a:hover::after, nav#mainNav ul li a:active::after, nav#mainNav ul li.current-menu-parent a::after, nav#mainNav ul li.current-menu-ancestor a::after {
		width: min(calc(40px + (1vw - 19.2px) * 1.1161), 40px);
	}
	nav#mainNav ul.sub-menu li a::after {
		content: none !important;
	}
	nav#mainNav ul ul.sub-menu {
		width: 250px;
		height: auto;
	}
	nav#mainNav ul li:hover ul.sub-menu {
		top: 100%;
		left: 50%;
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		transform: translateX(-50%);
	}
	nav#mainNav ul li a b, nav#mainNav ul li a span {
		font-weight: 500;
	}
	nav#mainNav ul li a b {
		margin-top: 0;
	}
	nav#mainNav ul li a span {
		font-size: min(calc(1.1rem + (1vw - 19.2px) * 0.1116), 1.1rem);
		font-family: 'Overpass', sans-serif;
		text-transform: uppercase;
		margin-top: .3em;
	}
	/*------ヘッダー下部__コンタクトボタン
--------------------------------------------*/
	#header ul.header__contact {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		margin-left: 10px;
	}
	#header a.head_btn {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row; /* アイコンを横並びにする場合は「row」 */
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		color: #fff; /* 文字色変更 */
		background: #BC1622; /* 背景色変更 */
		font-size: calc(1.6rem + (1vw - 19.2px) * 0.2232); /* 1.6-1.4rem (1920-1024) */
		font-weight: 500;
		line-height: 1.4;
		padding: min(calc(10px + (1vw - 19.2px) * 0.2232), 10px) min(calc(20px + (1vw - 19.2px) * 0.5580), 20px); /* 10-8px、20-15px (1920-1024) */
		-webkit-transition: .3s;
		-o-transition: .3s;
		transition: .3s;
	}
	#header a.head_btn > span {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}
	#header a.head_btn b {
		display: block;
		font-size: min(calc(1.1rem + (1vw - 19.2px) * 0.1116), 1.1rem);
		font-family: 'Overpass', sans-serif;
		font-weight: 500;
	}
	#header a.head_btn:hover {
		background: #333; /* 背景色変更 */
	}
	/*------スティッキーヘッダー
--------------------------------------------*/
	.sticky-header .site-header {
		z-index: 9999;
	}
	.sticky-header #header > .inner {
		height: auto;
		background: #fff; /* 背景色変更 */
		-webkit-box-shadow: 0 0 6px rgba(0, 0, 0, .2);
		box-shadow: 0 0 6px rgba(0, 0, 0, .2); /* 不要なら削除 */
	}
	.sticky-header #header-layout {
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between; /* 配置変更 */
		height: 80px; /* 高さ変更 */
	}
	.sticky-header nav#mainNav {
		background: none;
	}
}
/*------レスポンシブ
--------------------------------------------*/
@media print, screen and (max-width: 1240px) {
	#header a.headBtn span {
		display: none;
	}
	#header a.headBtn::before {
		margin-right: 0;
	}
}
@media print, screen and (max-width: 1023px) {
	#header-upper .header__socialicon, #header .sticky-logo, #header ul.header__contact {
		display: none;
	}
	#header h1, #header .description, #header-upper h1, #header-upper .description {
		display: block;
		float: none;
		text-align: center;
		padding: 20px 0 10px;
	}
	#header .inner {
		width: 100%;
	}
	#header-layout {
		padding: 0;
	}
	#header .logo {
		display: block;
		text-align: center;
		margin: 20px auto;
		padding: 0;
	}
	body.mobile #header .logo img {
		width: 100%;
		height: 100%;
		max-width: 230px;
		max-height: 50px; /* サイズ変更 */
		-o-object-fit: contain;
		object-fit: contain;
	}
	/*------レスポンシブ__スティッキーヘッダー
--------------------------------------------*/
	.mobile #header {
		background: #fff; /* 背景色変更 */
		-webkit-box-shadow: 0 0 6px rgba(0, 0, 0, .2);
		box-shadow: 0 0 6px rgba(0, 0, 0, .2); /* 不要なら削除 */
		z-index: 9999;
	}
	body.mobile #header .logo {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
	.mobile #header .logo .mark, .mobile #header .logo .spmenu {
		display: block !important;
	}
}
/*--------------------------------------------------------------------*/
/*------基礎
--------------------------------------------*/
#header p {
	float: none;
	padding: 0;
}
@media print, screen and (max-width: 1023px) {
	body.mobile #header .logo {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
	.mobile #header .logo .spmenu {
		display: block !important;
	}
	.mobile #header .logo .mark {
		display: -webkit-box !important;
		display: -ms-flexbox !important;
		display: flex !important;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		padding: 5px 10px;
	}
}
/*------スマホメニュー
--------------------------------------------*/
.spmenu #menu {
	padding: 0px 1px 2px 0;
}
.spmenu #menu p {
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	left: 50%;
}
.spmenu #menu span, .spmenu #menu span:before, .spmenu #menu span:after {
	width: 35px;
}
/*-----------------ヘッダー--------------------------------------------*/
/*-----------------フッター--------------------------------------------*/
/*------共通
--------------------------------------------*/
#footer {
	background: #f8f4e6;
	font-size: min(calc(1.4rem + (1vw - 19.2px) * 0.1294), 1.4rem);
	padding: 0;
}
#footer a {
	-webkit-transition: .2s;
	-o-transition: .2s;
	transition: .2s;
}
#footer .inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	width: 95%;
	max-width: 1500px;
	padding: min(calc(80px + (1vw - 19.2px) * 1.9417), 80px) 0;
}
#footer ul {
	font-size: 100%;
	padding: 0;
}
#footer ul li {
	display: block;
	padding: 0;
	margin: 0;
}
#footer ul li::before {
	content: none;
	position: static;
	top: auto;
	left: auto;
	width: auto;
	height: auto;
	background: none;
}
#footer ul li a {
	padding: 0;
}
#footer img {
	width: auto;
	max-width: 100%;
}
/*------フッターナビ
--------------------------------------------*/
#footer .footnav {
	float: none;
	margin-bottom: min(calc(30px + (1vw - 19.2px) * 0.9709), 30px);
}
#footer .footnav ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}
#footer .footnav ul > li {
	position: relative;
	line-height: 1.4;
	padding: 0 min(calc(16px + (1vw - 19.2px) * 0.3236), 16px) 0 min(calc(15px + (1vw - 19.2px) * 0.3236), 15px);
	margin-bottom: 10px;
}
#footer .footnav ul > li::before, #footer .footnav ul > li::after {
	content: '';
	position: absolute;
	width: 1px;
	height: 100%;
	background: #ccc;
	top: 0;
}
#footer .footnav ul > li::before {
	left: 0;
}
#footer .footnav ul > li::after {
	right: -1px;
}
@media print, screen and (min-width: 769px) {
	#footer .footnav ul {
		-webkit-box-pack: end;
		-ms-flex-pack: end;
		justify-content: flex-end;
	}
}
/*------フッター（左）
--------------------------------------------*/
@media print, screen and (min-width: 769px) {
	#footer .footer__l {
		text-align: left;
	}
}
/*------フッターロゴ
--------------------------------------------*/
#footer .footer__logo img {
	max-width: 320px;
	max-height: min(calc(60px + (1vw - 19.2px) * 1.2945), 60px);
	-o-object-fit: contain;
	object-fit: contain;
}
/*------フッターキャプション
--------------------------------------------*/
#footer .footer__add {
	line-height: 2;
}
/*------SNSアイコン
--------------------------------------------*/
#footer .fa-2x, .fa-2x {
	font-size: inherit;
}
#footer .socialicon ul, .socialicon ul {
	padding: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}
#footer .socialicon ul li, .socialicon ul li {
	text-align: center;
	padding: 0 .5em;
	margin: 0;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
#footer .socialicon ul li::before, .socialicon ul li::before {
	content: none;
}
#footer .socialicon ul li a, .socialicon ul li a {
	padding: 0;
	overflow: initial;
	line-height: initial;
}
#footer .fa-facebook-square:before, #footer .fa-twitter-square:before, #footer .fa-youtube-square:before, #footer .fa-instagram:before, .socialicon .fa-facebook-square:before, .socialicon .fa-twitter-square:before, .socialicon .fa-youtube-square:before, .socialicon .fa-instagram:before {
	font-size: 2.5rem; /* ----SNSボタン（LINEを除く）の大きさ変更はこちら---- */
}
#footer .SvgLine, .socialicon .SvgLine {
	width: 23px; /* ----LINEボタンの大きさ変更はこちら---- */
	height: 23px; /* ----LINEボタンの大きさ変更はこちら---- */
}
@media print, screen and (min-width: 769px) {
	#footer .socialicon ul, .socialicon ul {
		-webkit-box-pack: end;
		-ms-flex-pack: end;
		justify-content: flex-end;
	}
}
/*------コピーライト
--------------------------------------------*/
#copyright {
	background: #f8f4e6;
	font-size: min(calc(1.2rem + (1vw - 19.2px) * 0.1294), 1.2rem);
	letter-spacing: .1rem;
	padding: 20px 15px;
}
/*------レスポンシブ
--------------------------------------------*/
@media print, screen and (max-width: 768px) {
	#footer .inner {
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	#footer .footer__l, #footer .footer__r {
		width: 100%;
	}
	#footer .footer__l {
		margin-bottom: 30px;
	}
	#copyright {
		padding-top: 0;
		padding-bottom: 50px;
	}
}
/*-----------------フッター--------------------------------------------*/
/*----------------SPフッタータブメニュー--------------------------------------------*/
ul#MESY_FTMFM_footer_bar .fa, ul#MESY_FTMFM_footer_bar .far, ul#MESY_FTMFM_footer_bar .fas {
	font-weight: 900;
}
#MESY_FTMFM_footer_bar-wrapper .fa-facebook-square:before, #MESY_FTMFM_footer_bar-wrapper .fa-facebook:before, #MESY_FTMFM_footer_bar-wrapper .fa-twitter-square:before, #MESY_FTMFM_footer_bar-wrapper .fa-twitter:before, #MESY_FTMFM_footer_bar-wrapper .fa-youtube-square:before, #MESY_FTMFM_footer_bar-wrapper .fa-youtube:before, #MESY_FTMFM_footer_bar-wrapper .fa-instagram:before, #MESY_FTMFM_footer_bar-wrapper .fa-line:before {
	color: inherit;
	font-size: inherit;
	font-weight: 400;
}
/*----------------SPフッタータブメニュー--------------------------------------------*/
/*----------------メインイメージ--------------------------------------------*/
#mainImg {
	position: relative;
}
#mainImg img {
	width: 100% !important;
}
@media print, screen and (min-width: 1921px) {
	#mainImg::after {
		content: '';
		position: absolute;
		width: 100%;
		height: 793px;
		background: #DBDBDB;
		left: 0;
		bottom: 0;
		z-index: -1;
	}
}
/*----------------メインイメージ--------------------------------------------*/
/*-----------------見出し--------------------------------------------*/
/*------共通
--------------------------------------------*/
h1.title, .post h1, .post h2, .post2b h2, .post4b h2, h2.title, .post h3, .post h4 {
	line-height: 1.6;
	background: none;
}
.post h1 span, .post h2 span, .post h3 span, .post h4 span {
	padding: 0;
}
/*------h1タイトル
--------------------------------------------*/
h1.title, .post h1, header#h1Header h1.title {
	font-size: min(calc(4rem + (1vw - 19.2px) * 0.9061), 4rem);
	font-weight: 500;
	letter-spacing: .2rem;
	text-shadow: none;
	text-align: center;
	padding: 0;
	z-index: 20;
}
h1.title, .post h1, header#h1Header h1.title {
	position: relative;
	margin: 0 auto min(calc(50px + (1vw - 19.2px) * 0.9709), 50px);
}
h1.title::after, .post h1::after {
	content: '';
	display: block;
	width: min(calc(75px + (1vw - 19.2px) * 1.2945), 75px);
	height: 2px;
	background: #BC1622;
	margin: .2em auto 0;
}
/*------h2タイトル
--------------------------------------------*/
.post h2 {
	position: relative;
	color: #333;
	font-size: min(calc(3rem + (1vw - 19.2px) * 0.5178), 3rem);
	font-weight: 500;
	letter-spacing: .2rem;
	text-align: left;
	padding: 0 .3em .3em;
	margin: min(calc(120px + (1vw - 19.2px) * 3.8835), 120px) auto min(calc(50px + (1vw - 19.2px) * 1.2945), 50px);
	border-bottom: 2px solid #CCC;
}
.post h2::after {
	content: '';
	visibility: visible;
	position: absolute;
	display: block;
	width: 5em;
	height: 2px;
	background: #BC1622;
	left: 0;
	bottom: -2px;
}
/*------h3タイトル
--------------------------------------------*/
.post h3 {
	font-size: min(calc(2.4rem + (1vw - 19.2px) * 0.4531), 2.4rem);
	font-weight: 500;
	letter-spacing: min(calc(.2rem + (1vw - 19.2px) * 0.0647), .2rem);
	padding: 0 0 0 0.8em;
	margin: min(calc(70px + (1vw - 19.2px) * 1.9417), 70px) auto min(calc(35px + (1vw - 19.2px) * 0.9709), 35px);
	border-left: 2px solid #BC1622;
}
/*------h4タイトル
--------------------------------------------*/
/*------サブタイトル
--------------------------------------------*/
#breadcrumb .jpTtl, #sitemap_list .jpTtl {
	color: inherit;
	font-size: inherit;
	font-weight: inherit;
	letter-spacing: inherit;
}
#breadcrumb b, ul#sitemap_list b {
	display: none;
}
/*------上部マージン消去
--------------------------------------------*/
h1.title:first-child, .post h1:first-child, #front-sectionPost h1:first-child, .post h2:first-child, .post h3:first-child, .post h3.col-in-h3:first-child, .post h4:first-child {
	margin-top: 0;
}
/*-----------------見出し--------------------------------------------*/
/*-----------------パンくずリスト--------------------------------------------*/
#breadcrumb {
	padding: 12px 0;
}
#breadcrumb ul {
	width: 98%;
	max-width: 1100px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	padding: 0;
}
#breadcrumb ul li {
	float: none;
}
#breadcrumb ul li:first-child {
	margin-left: 0;
}
@media print, screen and (max-width: 640px) {
	#breadcrumb ul {
		max-width: 100%;
	}
}
/*-----------------お問い合わせフォーム--------------------------------------------*/
.wpcf7-form {
	padding: 0;
}
span.wpcf7-list-item {
	margin: 0 10px 0 0;
}
.wpcf7-form .must, .wpcf7-form .option {
	font-size: 75%;
}
.select-default input[type="text"], .select-default input[type="tel"], .select-default input[type="email"], .select-default input[type="date"], .select-default input[type="url"], .select-default input[type="number"], .select-default select, .select-default textarea {
	width: auto !important;
}
@media print, screen and (min-width: 640px) {
	.select3col input[type="text"], .select3col input[type="tel"], .select3col input[type="email"], .select3col input[type="date"], .select3col input[type="url"], .select3col input[type="number"], .select3col select, .select3col textarea {
		width: 25% !important;
	}
}
@media print, screen and (max-width: 640px) {
	.select3col input[type="text"], .select3col input[type="tel"], .select3col input[type="email"], .select3col input[type="date"], .select3col input[type="url"], .select3col input[type="number"], .select3col select, .select3col textarea {
		width: 95% !important;
	}
}
/*-----------------お問い合わせフォーム--------------------------------------------*/
/*-----------------共通--------------------------------------------*/
/*------ラッパーコンテンツ
--------------------------------------------*/
#full-wrapper .post {
	margin: 0 auto;
}
.wrapper-content {
	position: relative;
	width: 90%;
	max-width: 1100px;
	margin: auto;
	z-index: 20;
}
/*------フレックスボックス
--------------------------------------------*/
.flexbox {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin: min(calc(80px + (1vw - 19.2px) * 2.5890), 80px) auto
}
h2 + .flexbox, h3 + .flexbox {
	margin-top: 0;
}
.ai-center {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}
.jc-center {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}
.jc-between {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
.rev {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
}
.it-center {
	-ms-flex-item-align: center;
	-ms-grid-row-align: center;
	align-self: center;
}
.w10 {
	width: 10%;
}
.w20 {
	width: 20%;
}
.w30 {
	width: 30%;
}
.w40 {
	width: 40%;
}
.w50 {
	width: 50%;
}
.w60 {
	width: 60%;
}
.w70 {
	width: 70%;
}
.w80 {
	width: 80%;
}
.w90 {
	width: 90%;
}
.w100 {
	width: 100%;
}
.gap {
	gap: min(calc(40px + (1vw - 19.2px) * 1.2945), 40px);
}
.gap3 {
	gap: min(calc(30px + (1vw - 19.2px) * 0.9709), 30px);
}
.flexbox:first-child {
	margin-top: 0;
}
.flexbox:last-child {
	margin-bottom: 0;
}
@media print, screen and (max-width: 1023px) {
	.flexbox {
		margin: calc(80px + (1vw - 10.23px) * 4.6296) auto;
	}
}
@media print, screen and (max-width: 768px) {
	.flexbox {
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	.w10, .w20, .w30, .w40, .w50, .w60, .w70, .w80, .w90, .w100 {
		width: 100%;
	}
	.w30:last-child, .w40:last-child, .w50:last-child, .w60:last-child, .w70:last-child, .w80:last-child, .w90:last-child, .w100:last-child {
		margin-bottom: 0;
	}
	.w30 img, .w40 img, .w50 img, .w60 img, .w70 img, .w80 img, .w90 img, .w100 img {
		width: auto;
		max-height: 320px;
	}
	.flexbox.rev {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: reverse;
		-ms-flex-direction: row-reverse;
		flex-direction: row-reverse;
	}
	.sp-nowrap {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
	.sp-nowrap {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
	.sp-nowrap .w10 {
		width: 10%;
	}
	.sp-nowrap .w20 {
		width: 20%;
	}
	.sp-nowrap .w30 {
		width: 30%;
	}
	.sp-nowrap .w40 {
		width: 40%;
	}
	.sp-nowrap .w50 {
		width: 50%;
	}
	.sp-nowrap .w60 {
		width: 60%;
	}
	.sp-nowrap .w70 {
		width: 70%;
	}
	.sp-nowrap .w80 {
		width: 80%;
	}
	.sp-nowrap .w90 {
		width: 90%;
	}
	.sp-ai-top {
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: flex-start;
	}
	.sp-no-mb {
		margin-bottom: 0 !important;
	}
	.sp-no-pb {
		padding-bottom: 0 !important;
	}
}
/*------pタグ
--------------------------------------------*/
.post p {
	padding-bottom: 0;
}
/*------リスト
--------------------------------------------*/
.post ul {
	margin: 0;
}
.post li {
	line-height: 2;
	margin-bottom: 0;
	border-bottom: 0;
}
.post ol {
	margin: 0 0 0 1.2em;
}
.post ul.list-disc {
	list-style: disc;
	margin: 0 0 0 1.2em;
}
ul.list-nmb {
	counter-reset: list-nmb;
}
ul.list-nmb > li {
	position: relative;
	padding-left: 2.5em;
}
ul.list-nmb > li::before {
	content: '（'counter(list-nmb) '）';
	counter-increment: list-nmb;
	position: absolute;
	left: 0;
}
.post ul.list-point > li, .post ul.list-check > li, .post ul.caution > li {
	position: relative;
	list-style: none;
	padding-left: 1.4em;
	margin-left: 0;
}
.post ul.list-point > li:before, .post ul.list-check li:before, .post ul.caution > li:before {
	position: absolute;
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	left: 0;
}
.post ul.list-point > li:before, .post ul li.list-point:before {
	content: "\f087";
	color: #BC1622;
}
.post ul.list-check > li:before, .post ul li.list-check:before {
	content: "\f00c";
	color: #BC1622;
}
.post ul.caution > li::before, .post ul li.caution::before {
	content: "※";
}
.post ul.list-bm > li {
	margin-bottom: 1.4em;
}
.post ol:first-child, .post ul.list-disc:first-child, .post ul.list-point:first-child, .post ul.list-check:first-child, .post ul.caution:first-child {
	margin-top: 0;
}
.post ol:last-child, .post li:last-child, .post ul.list-disc:last-child, .post ul.list-point:last-child, .post ul.list-check:last-child, .post ul.caution:last-child {
	margin-bottom: 0;
}
/*--liststyle reset-----*/
.post li.list-none, .post ol li.list-none, .post ul li.list-none {
	list-style: none !important;
	margin-left: 0 !important;
	padding-left: 0 !important;
}
.post li.list-none:before, .post ol li.list-none:before, .post ul li.list-none:before {
	content: none !important
}
/*------テーブル
--------------------------------------------*/
.post table, .post table th, .post table td {
	border-width: 0 0 1px;
	border-color: #B5B5B5;
}
.post table {
	margin: min(calc(30px + (1vw - 19.2px) * 0.6472), 30px) auto;
}
.post table th, .post table td {
	font-size: min(calc(1.5rem + (1vw - 19.2px) * 0.1294), 1.5rem);
	padding: min(calc(10px + (1vw - 19.2px) * 0.3236), 10px) min(calc(15px + (1vw - 19.2px) * 0.3236), 15px);
}
.post table th {
	width: 25%;
	font-weight: 600;
	border-color: #333 transparent;
	border-right-width: min(calc(20px + (1vw - 19.2px) * 0.6472), 20px);
}
.post table:first-child {
	margin-top: 0;
}
.post table:last-child {
	margin-bottom: 0;
}
@media print, screen and (max-width: 1023px) {
	.table_scroll {
		width: 100%;
		overflow-y: hidden;
		overflow-x: auto;
		-ms-overflow-style: -ms-autohiding-scrollbar;
		-webkit-overflow-scrolling: touch;
	}
	.table_scroll table {
		table-layout: auto;
		width: 800px;
	}
}
@media print, screen and (max-width: 640px) {
	.post table.responsive th, .post table.responsive td {
		text-align: left;
	}
	.post table.responsive th {
		border-right-width: 0;
	}
}
/*------画像
--------------------------------------------*/
.post img.aligncenter {
	margin: 0 auto;
}
.aspect_img {
	position: relative;
	overflow: hidden;
}
.aspect_img::before {
	content: '';
	display: block;
	padding-top: 66.7%;
}
.aspect_img img {
	position: absolute;
	width: 100.5%;
	max-width: none;
	height: auto;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}
/*------YOUTUBE動画埋め込み
--------------------------------------------*/
.youtubeArea {
	position: relative;
	overflow: hidden;
	margin: min(calc(50px + (1vw - 19.2px) * 1.2945), 50px) auto;
}
.youtubeArea::before {
	content: '';
	display: block;
	padding-top: 56.25%;
}
.youtubeArea > iframe {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}
.youtubeArea:first-child {
	margin-top: 0;
}
.youtubeArea:last-child {
	margin-bottom: 0;
}
/*------デフォルトリンクボタン
--------------------------------------------*/
.linkBtn {
	padding: 1.6rem 3.2rem 1.6rem 3.2rem;
	position: relative;
	border-radius: 5px;
	line-height: 1.8;
	-webkit-transition: all .3s;
	-o-transition: all .3s;
	transition: all .3s;
	text-align: center;
	margin-bottom: 20px;
	display: inline-block;
}
.linkBtn a {
	color: #fff;
}
.linkBtn input[type="submit"] {
	background: none;
	padding: inherit;
}
.linkBtn::after {
	display: block;
	content: '';
	position: absolute;
	top: 50%;
	right: 1em;
	width: 6px;
	height: 6px;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
	margin-top: -3px;
}
input.linkBtn::after {
	display: block;
	content: '';
	position: absolute;
	top: 50%;
	right: 1em;
	width: 6px;
	height: 6px;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
	margin-top: -3px;
}
.post .linkBtn {
	padding: 1.6rem 3.2rem 1.6rem 3.2rem;
	position: relative;
	color: #fff;
	border-radius: 5px;
	line-height: 1.8;
	-webkit-transition: all .3s;
	-o-transition: all .3s;
	transition: all .3s;
}
.post .linkBtn input[type="submit"] {
	background: none;
	padding: inherit;
}
.post .linkBtn::after {
	display: block;
	content: '';
	position: absolute;
	top: 50%;
	right: 1em;
	width: 6px;
	height: 6px;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
	margin-top: -3px;
}
.post input.linkBtn::after {
	display: block;
	content: '';
	position: absolute;
	top: 50%;
	right: 1em;
	width: 6px;
	height: 6px;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
	margin-top: -3px;
}
.linkBtn {
	display: inherit;
	max-width: 500px;
	margin: 3rem auto;
}
div.wpcf7 .ajax-loader {
	display: none;
}
.post .linkBtn input[type="submit"] {
	margin: 0 auto;
	text-align: center;
	display: block;
	width: 100%;
	padding: 1rem 0 0 0;
}
@media only screen and (max-width: 640px) {
	.linkBtn {
		display: block;
		text-align: center;
	}
	.post .linkBtn {
		display: block;
		text-align: center;
	}
}
/*------リンクボタン
--------------------------------------------*/
a.link_btn {
	position: relative;
	display: inline-block;
	color: #FFF;
	background: #BC1622;
	width: 100%;
	max-width: 400px;
	font-size: min(calc(1.6rem + (1vw - 19.2px) * 0.1294), 1.6rem);
	font-weight: 500;
	letter-spacing: .1rem;
	line-height: 1.6;
	text-align: center;
	padding: 14px min(calc(40px + (1vw - 19.2px) * 0.6472), 40px) 12px;
	-webkit-transition: .3s;
	-o-transition: .3s;
	transition: .3s;
}
a.link_btn::after {
	content: '\f105';
	position: absolute;
	font-size: .85em;
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	top: 50%;
	right: min(calc(16px + (1vw - 19.2px) * 0.3883), 16px);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}
a.link_btn:hover {
	background: #333;
	text-decoration: none;
}
.linkbtn_area {
	text-align: center;
	margin: min(calc(50px + (1vw - 19.2px) * 0.9709), 50px) auto;
}
a.external::after {
	content: '\f35d';
	display: inline-block;
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	margin-left: 10px;
}
a.link_btn.external::after {
	position: absolute;
	top: 50%;
	right: 15px;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}
/*arrow circle button*/
a.arw_c_btn, .arw_c_btn {
	position: relative;
	display: inline-block;
	color: #222;
	font-size: min(calc(1.6rem + (1vw - 19.2px) * 0.1294), 1.6rem);
	font-weight: 400;
	letter-spacing: .1rem;
	padding: min(calc(10px + (1vw - 19.2px) * 0.5178), 10px) min(calc(65px + (1vw - 19.2px) * 1.6181), 65px) min(calc(10px + (1vw - 19.2px) * 0.5178), 10px) 0;
	-webkit-transition: .4s;
	-o-transition: .4s;
	transition: .4s;
}
a.arw_c_btn.wh_btn, .arw_c_btn.wh_btn {
	color: #fff;
}
a.arw_c_btn .arw, .arw_c_btn .arw {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	position: absolute;
	width: min(calc(50px + (1vw - 19.2px) * 1.2945), 50px);
	height: min(calc(50px + (1vw - 19.2px) * 1.2945), 50px);
	border: 1px solid;
	border-radius: 50%;
	right: 0;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	-webkit-transition: .4s;
	-o-transition: .4s;
	transition: .4s;
}
a.arw_c_btn .arw::after, .arw_c_btn .arw::after {
	content: '';
	position: absolute;
	width: min(calc(8px + (1vw - 19.2px) * 0.2589), 8px);
	height: min(calc(8px + (1vw - 19.2px) * 0.2589), 8px);
	border-style: solid;
	border-width: 1px 1px 0 0;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-70%, -50%) rotate(45deg);
	-ms-transform: translate(-70%, -50%) rotate(45deg);
	transform: translate(-70%, -50%) rotate(45deg);
	-webkit-transition: .4s;
	-o-transition: .4s;
	transition: .4s;
}
a.arw_c_btn:hover .arw, .arw_c_btn:hover .arw {
	background: #222;
}
a.arw_c_btn:hover .arw::after, .arw_c_btn:hover .arw::after {
	border-color: #fff;
}
a.arw_c_btn.wh_btn:hover .arw, .arw_c_btn.wh_btn:hover .arw {
	background: #fff;
}
a.arw_c_btn.wh_btn:hover .arw::after, .arw_c_btn.wh_btn:hover .arw::after {
	border-color: #222;
}
ul.linkbtn_list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	max-width: 800px;
	margin: min(calc(70px + (1vw - 19.2px) * 1.2945), 70px) auto;
}
ul.linkbtn_list > li {
	width: 100%;
	margin-bottom: min(calc(20px + (1vw - 19.2px) * 0.5178), 20px);
}
ul.linkbtn_list > li a.link_btn {
	width: 100%;
}
.linkbtn_area:first-child, ul.linkbtn_list:first-child {
	margin-top: 0;
}
.linkbtn_area:last-child, ul.linkbtn_list:last-child {
	margin-bottom: 0;
}
ul.col2_list, ul.col3_list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
ul.col2_list > li, ul.col3_list > li {
	width: 100%;
}
ul.col2_list:not(.linkbtn_list) > li, ul.col3_list:not(.linkbtn_list) > li {
	margin-bottom: min(calc(30px + (1vw - 19.2px) * 0.6472), 30px);
}
@media print, screen and (min-width: 641px) {
	ul.col2_list > li {
		width: 48.5%;
	}
	ul.col2_list > li:nth-child(2n+1):nth-last-child(-n+2), ul.col2_list > li:nth-child(2n+1):nth-last-child(-n+2) ~ li {
		margin-bottom: 0;
	}
	ul.linkbtn_list > li {
		width: 48%;
	}
	ul.linkbtn_list > li:nth-child(2n+1):nth-last-child(-n+2), ul.linkbtn_list > li:nth-child(2n+1):nth-last-child(-n+2) ~ li {
		margin-bottom: 0;
	}
}
@media print, screen and (min-width: 1024px) {
	ul.linkbtn_list.col3_list {
		max-width: none;
	}
	ul.col3_list > li {
		width: 32%;
	}
	ul.col3_list > li:nth-child(3n+2):last-child {
		margin-right: calc(32% + (((100% - (32% * 3)) / 2) * 1));
	}
	ul.col3_list > li:nth-child(3n+1):nth-last-child(-n+3), ul.col3_list > li:nth-child(3n+1):nth-last-child(-n+3) ~ li {
		margin-bottom: 0;
	}
}
@media print, screen and (max-width: 1023px) and (min-width: 641px) {
	ul.col3_list:not(.linkbtn_list) > li {
		width: 48%;
	}
	ul.col3_list:not(.linkbtn_list) > li:nth-child(2n+1):nth-last-child(-n+2), ul.col3_list:not(.linkbtn_list) > li:nth-child(2n+1):nth-last-child(-n+2) ~ li {
		margin-bottom: 0;
	}
}
/*------アンカーリンク
--------------------------------------------*/
.anchor_link::before {
	content: '';
	display: block;
	padding-top: 110px;
	margin-top: -110px;
}
.anchor_link + h2 {
	margin-top: 0;
}
a.link_btn.anchor_btn {
	min-width: auto;
	padding: 10px 30px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	height: 100%;
}
a.link_btn.anchor_btn::after {
	content: '\f078';
}
ul.anchor_list {
	max-width: none;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}
ul.anchor_list > li {
	width: calc((100% - (10px * 3)) / 4);
	margin-right: 9px;
}
@media print, screen and (min-width: 1024px) {
	ul.anchor_list > li:nth-child(4n), ul.anchor_list > li:last-child {
		margin-right: 0;
	}
	ul.anchor_list > li:nth-child(4n+1):nth-last-child(-n+4), ul.anchor_list > li:nth-child(4n+1):nth-last-child(-n+4) ~ li {
		margin-bottom: 0;
	}
}
@media print, screen and (max-width: 1023px) and (min-width: 769px) {
	ul.anchor_list > li {
		width: calc((100% - (10px * 2)) / 3);
	}
	ul.anchor_list > li:nth-child(3n), ul.anchor_list > li:last-child {
		margin-right: 0;
	}
	ul.anchor_list > li:nth-child(3n+1):nth-last-child(-n+3), ul.anchor_list > li:nth-child(3n+1):nth-last-child(-n+3) ~ li {
		margin-bottom: 0;
	}
}
@media print, screen and (max-width: 768px) {
	ul.anchor_list > li {
		width: calc((100% - 9px) / 2);
	}
	ul.anchor_list > li:nth-child(2n), ul.anchor_list > li:last-child {
		margin-right: 0;
	}
	ul.anchor_list > li:nth-child(2n+1):nth-last-child(-n+2), ul.anchor_list > li:nth-child(2n+1):nth-last-child(-n+2) ~ li {
		margin-bottom: 0;
	}
}
/*------注釈・強調テキスト
--------------------------------------------*/
.note, .inlinenote {
	font-size: min(calc(1.2rem + (1vw - 19.2px) * 0.1294), 1.2rem);
}
.note {
	display: block;
}
.nowrap {
	display: inline-block;
}
.bl_txt, .post .bl_txt {
	color: #0000ff;
}
.red_txt, .post .red_txt {
	color: #ff0000;
}
.em_txt, .post .em_txt {
	font-size: 1.5em;
	font-weight: 500;
}
.mid_txt, .post .mid_txt {
	font-size: 1.2em;
}
.min_txt, .post .min_txt {
	font-size: .9em;
}
.read_txt {
	font-size: min(calc(1.7rem + (1vw - 19.2px) * 0.1294), 1.7rem);
	text-align: center;
	letter-spacing: .1rem;
	line-height: 2.2;
	margin: min(calc(60px + (1vw - 19.2px) * 1.2945), 60px) auto min(calc(70px + (1vw - 19.2px) * 1.2945), 70px);
}
.l_space p:not(:last-child) {
	margin-bottom: 1.4em;
}
.txt_l, .post .txt_l {
	text-align: left;
}
.txt_r, .post .txt_r {
	text-align: right;
}
.txt_c, .post .txt_c {
	text-align: center;
}
.color_box {
	background: #FAFAFA;
	padding: min(calc(80px + (1vw - 19.2px) * 2.5890), 80px) min(calc(60px + (1vw - 19.2px) * 1.9417), 60px);
	margin: min(calc(60px + (1vw - 19.2px) * 1.2945), 60px) auto;
}
.message {
	line-height: 2.4;
	letter-spacing: .1rem;
}
.wh_bg {
	background: #fff;
	padding: min(calc(30px + (1vw - 19.2px) * 0.6472), 30px);
}
.bdr_box {
	border: 1px solid #aaa;
	padding: min(calc(30px + (1vw - 19.2px) * 0.6472), 30px);
	margin: 0 auto;
}
.tbl_box{
	display: table;
	margin: 0 auto;
}
.read_txt:first-child, .color_box:first-child {
	margin-top: 0;
}
.read_txt:last-child, .color_box:last-child {
	margin-bottom: 0;
}
.read_txt:first-child {
	margin-top: 0;
}
.read_txt:last-child {
	margin-bottom: 0;
}
@media print, screen and (max-width: 1023px) {
	.em_txt, .post .em_txt {
		font-size: 1.3em;
	}
	.mid_txt, .post .mid_txt {
		font-size: 1.1em;
	}
}
/*------マーカー
--------------------------------------------*/
span.marker.blue {
	background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #6cf));
	background: -o-linear-gradient(transparent 60%, #6cf 60%);
	background: linear-gradient(transparent 60%, #6cf 60%);
}
span.marker.pink {
	background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #f6c));
	background: -o-linear-gradient(transparent 60%, #f6c 60%);
	background: linear-gradient(transparent 60%, #f6c 60%);
}
span.marker.yellow {
	background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #ff6));
	background: -o-linear-gradient(transparent 60%, #ff6 60%);
	background: linear-gradient(transparent 60%, #ff6 60%);
}
/*------ギャラリー
--------------------------------------------*/
.gallery_area {
	margin: min(calc(30px + (1vw - 19.2px) * 0.6472), 30px) auto;
}
.gallery_area:first-child {
	margin-top: 0;
}
.gallery_area:last-child {
	margin-bottom: 0;
}
.gallery {
	display: -webkit-box !important;
	display: -ms-flexbox !important;
	display: flex !important;
	-webkit-box-orient: horizontal !important;
	-webkit-box-direction: normal !important;
	-ms-flex-direction: row !important;
	flex-direction: row !important;
	-ms-flex-wrap: wrap !important;
	flex-wrap: wrap !important;
	-webkit-box-pack: justify !important;
	-ms-flex-pack: justify !important;
	justify-content: space-between !important;
	margin: min(calc(50px + (1vw - 19.2px) * 1.2945), 50px) auto !important;
}
.gallery > br {
	display: none !important;
}
.gallery > *:last-child {
	display: block;
}
.gallery:first-child, .gallery:nth-child(2) {
	margin-top: 0 !important;
}
.gallery:last-child {
	margin-bottom: 0 !important;
}
.gallery-item {
	float: none !important;
	margin-top: 0 !important;
	line-height: 0;
	margin-bottom: min(calc(20px + (1vw - 19.2px) * 0.7819), 20px);
}
.gallery-caption {
	line-height: 1.6;
	font-size: min(calc(1.4rem + (1vw - 19.2px) * 0.1294), 1.4rem);
	text-align: center;
	margin: .5em auto !important;
	padding: 0 !important;
}
.gallery-columns-2 .gallery-item {
	width: calc(100% / 2) !important;
}
.gallery-columns-3 .gallery-item {
	width: calc(100% / 3) !important;
}
.gallery-columns-4 .gallery-item {
	width: calc(100% / 4) !important;
}
.gallery-columns-5 .gallery-item {
	width: calc(100% / 5) !important;
}
.gallery-columns-6 .gallery-item {
	width: calc(100% / 6) !important;
}
.gallery-columns-1 .gallery-item img, .gallery-columns-2 .gallery-item img, .gallery-columns-3 .gallery-item img, .gallery-columns-4 .gallery-item img, .gallery-columns-5 .gallery-item img, .gallery-columns-6 .gallery-item img {
	max-width: 95%;
}
@media print, screen and (min-width: 641px) {
	.gallery-columns-3 .gallery-item:nth-of-type(3n+2):last-of-type {
		margin-right: calc((100% / 3) + (((100% - ((100% / 3) * 3)) / 2) * 1)) !important;
	}
	.gallery-columns-4 .gallery-item:nth-of-type(4n+2):last-of-type {
		margin-right: calc(((100% / 4) * 2) + (((100% - ((100% / 4) * 4)) / 3) * 2)) !important;
	}
	.gallery-columns-4 .gallery-item:nth-of-type(4n+3):last-of-type {
		margin-right: calc(((100% / 4) * 1) + (((100% - ((100% / 4) * 4)) / 3) * 1)) !important;
	}
	.gallery-columns-5 .gallery-item:nth-of-type(5n+2):last-of-type {
		margin-right: calc(((100% / 5) * 3) + (((100% - ((100% / 5) * 5)) / 4) * 3)) !important;
	}
	.gallery-columns-5 .gallery-item:nth-of-type(5n+3):last-of-type {
		margin-right: calc(((100% / 5) * 2) + (((100% - ((100% / 5) * 5)) / 4) * 2)) !important;
	}
	.gallery-columns-5 .gallery-item:nth-of-type(5n+4):last-of-type {
		margin-right: calc(((100% / 5) * 1) + (((100% - ((100% / 5) * 5)) / 4) * 1)) !important;
	}
	.gallery-columns-6 .gallery-item:nth-of-type(6n+2):last-of-type {
		margin-right: calc(((100% / 6) * 4) + (((100% - ((100% / 6) * 6)) / 5) * 4)) !important;
	}
	.gallery-columns-6 .gallery-item:nth-of-type(6n+3):last-of-type {
		margin-right: calc(((100% / 6) * 3) + (((100% - ((100% / 6) * 6)) / 5) * 3)) !important;
	}
	.gallery-columns-6 .gallery-item:nth-of-type(6n+4):last-of-type {
		margin-right: calc(((100% / 6) * 2) + (((100% - ((100% / 6) * 6)) / 5) * 2)) !important;
	}
	.gallery-columns-6 .gallery-item:nth-of-type(6n+5):last-of-type {
		margin-right: calc(((100% / 6) * 1) + (((100% - ((100% / 6) * 6)) / 4) * 1)) !important;
	}
}
@media print, screen and (max-width: 1023px) and (min-width: 641px) {
	.gallery-columns-5 .gallery-item, .gallery-columns-6 .gallery-item {
		width: calc(100% / 3) !important;
	}
	.gallery-columns-5 .gallery-item:nth-of-type(3n+2):last-of-type, .gallery-columns-6 .gallery-item:nth-of-type(3n+2):last-of-type {
		margin-right: calc((100% / 3) + (((100% - ((100% / 3) * 3)) / 2) * 1)) !important;
	}
}
@media print, screen and (max-width: 640px) {
	.gallery-columns-2 .gallery-item, .gallery-columns-3 .gallery-item, .gallery-columns-4 .gallery-item, .gallery-columns-5 .gallery-item, .gallery-columns-6 .gallery-item {
		width: calc(100% / 2) !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
	.gallery-columns-3 .gallery-item, .gallery-columns-4 .gallery-item {
		margin-bottom: 10px;
	}
	.gallery-columns-1 .gallery-item img, .gallery-columns-2 .gallery-item img, .gallery-columns-3 .gallery-item img, .gallery-columns-4 .gallery-item img, .gallery-columns-5 .gallery-item img, .gallery-columns-6 .gallery-item img {
		max-width: 97%;
	}
}
/*------レスポンシブ時、改行無し、左揃え
--------------------------------------------*/
@media print, screen and (min-width: 769px) {
	.pc-center {
		text-align: center;
	}
}
@media print, screen and (max-width: 768px) {
	.br-none br {
		display: none;
	}
}
/*------横100%
--------------------------------------------*/
#wrapper, #content, .post {
	overflow: visible;
}
.fullwidthBox {
	position: relative;
	margin-right: calc(((100vw - 100%) / 2) * -1);
	margin-left: calc(((100vw - 100%) / 2) * -1);
	padding: 30px calc((100vw - 100%) / 2);
}
/*------Googleマップ
--------------------------------------------*/
.googlemap {
	padding-bottom: 45%;
	margin: min(calc(50px + (1vw - 19.2px) * 1.6181), 50px) auto;
}
.googlemap:first-child {
	margin-top: 0;
}
.googlemap:last-child {
	margin-bottom: 0;
}
@media print, screen and (max-width: 768px) {
	.googlemap {
		padding-bottom: 80%;
	}
}
/*-----------------共通--------------------------------------------*/
/*-----------------トップ--------------------------------------------*/
/*------共通
--------------------------------------------*/
.home #content {
	padding: 0;
}
.home #full-wrapper {
	background: #f8f4e6 url(/struct/wp-content/uploads/bg_body.png) no-repeat center top 50px;
	background-attachment: fixed;
	background-size: cover;
}
.home.mobile #full-wrapper {
	background: #f8f4e6 url(/struct/wp-content/uploads/bg_body.png) no-repeat center bottom;
	background-attachment: scroll;
}
.front_contents {
	position: relative;
	padding: min(calc(150px + (1vw - 19.2px) * 5.8252), 150px) 0;
	z-index: 20;
}
.post h1.front_ttl {
	font-size: min(calc(4.2rem + (1vw - 19.2px) * 0.9061), 4.2rem);
	text-align: left;
	letter-spacing: .8rem;
	margin-bottom: min(calc(50px + (1vw - 19.2px) * 1.6181), 50px)
}
.post h1.front_ttl .en_ttl {
	display: block;
	font-size: min(calc(1.8rem + (1vw - 19.2px) * 0.1942), 1.8rem);
	font-weight: 600;
	font-family: 'Overpass', sans-serif;
	letter-spacing: .1rem;
}
.post h1.front_ttl::after {
	content: none;
}
/*------f_service
--------------------------------------------*/
#f_service {
	padding-bottom: min(calc(280px + (1vw - 19.2px) * 11.6505), 280px);
}
#f_service::before {
	content: '';
	position: absolute;
	width: 48%;
	height: 400px;
	background: #BC1622;
	top: 0;
	left: 0;
}
#f_service .wrapper-content {
	max-width: 1575px;
}
#f_service h1.front_ttl {
	color: #FFF;
}
@media print, screen and (max-width: 768px) {
	#f_service::before {
		width: 80%;
	}
}
/*------ホバー時　画像拡大ボタン
--------------------------------------------*/
ul.imgbtn_list {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	z-index: 10;
}
ul.imgbtn_list > li {
	width: 100%;
	margin-bottom: min(calc(2.5rem + (1vw - 19.2px) * 0.6472), 2.5rem);
}
ul.imgbtn_list > li > a {
	position: relative;
	overflow: hidden;
	display: block;
}
.imgbtn__bg {
	position: relative;
	overflow: hidden;
}
.imgbtn__bg::before {
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, .3);
	top: 0;
	left: 0;
	z-index: 1;
	-webkit-transition: .4s;
	-o-transition: .4s;
	transition: .4s;
}
.imgbtn__bg::after {
	content: '';
	display: block;
	padding-top: 255px;
}
.imgbtn__bg img {
	position: absolute;
	width: 100%;
	height: 100%;
	max-width: none;
	-o-object-fit: cover;
	object-fit: cover;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	-webkit-transition: .4s;
	-o-transition: .4s;
	transition: .4s;
}
.imgbtn__ttl {
	position: absolute;
	display: table;
	width: 85%;
	color: #fff;
	font-size: min(calc(2.3rem + (1vw - 19.2px) * 0.3236), 2.3rem);
	font-weight: 500;
	text-align: center;
	letter-spacing: .5rem;
	line-height: 1.4;
	padding: 30px 20px;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	z-index: 10;
}
.imgbtn__ttl .en_ttl {
	display: block;
	font-size: min(calc(1.5rem + (1vw - 19.2px) * 0.1942), 1.5rem);
	font-family: 'Overpass', sans-serif;
	font-weight: 400;
	letter-spacing: .1rem;
}
.imgbtn__ttl .en_ttl::after {
	content: '';
	display: block;
	width: min(calc(64px + (1vw - 19.2px) * 1.5534), 64px);
	height: 1px;
	background: #FFF;
	margin: .5em auto;
}
a:hover .imgbtn__bg img {
	opacity: 1;
	-webkit-transform: translate(-50%, -50%) scale(1.1);
	-ms-transform: translate(-50%, -50%) scale(1.1);
	transform: translate(-50%, -50%) scale(1.1);
}
a:hover .imgbtn__bg::before {
	background: rgba(0, 0, 0, .05);
}
ul.imgbtn_list > li > a .readmore_txt {
	position: absolute;
	z-index: 10;
	color: #FFF;
	font-size: min(calc(1.4rem + (1vw - 19.2px) * 0.1942), 1.4rem);
	font-weight: 400;
	padding: .8em 1.3em .8em 0;
	bottom: 0;
	right: 1em;
}
ul.imgbtn_list > li > a .readmore_txt::after {
	content: '\f105';
	position: absolute;
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	top: 50%;
	right: 0;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}
@media print, screen and (min-width: 1024px) {
	ul.imgbtn_list > li {
		width: 24%;
	}
	ul.imgbtn_list > li:nth-child(4n+1):nth-last-child(-n+4), ul.imgbtn_list > li:nth-child(4n+1):nth-last-child(-n+4) ~ li {
		margin-bottom: 0;
	}
	ul.imgbtn_list > li:nth-child(4n+2):last-child {
		margin-right: calc((24% * 2) + (((100% - (24% * 4)) / 3) * 2));
	}
	ul.imgbtn_list > li:nth-child(4n+3):last-child {
		margin-right: calc((24% * 1) + (((100% - (24% * 4)) / 3) * 1));
	}
}
@media print, screen and (max-width: 1023px) and (min-width: 769px) {
	ul.imgbtn_list > li {
		width: 32%;
	}
	ul.imgbtn_list > li:nth-child(3n+1):nth-last-child(-n+3), ul.imgbtn_list > li:nth-child(3n+1):nth-last-child(-n+3) ~ li {
		margin-bottom: 0;
	}
	ul.imgbtn_list > li:nth-child(3n+2):last-child {
		margin-right: calc(32% + (((100% - (32% * 3)) / 2) * 1));
	}
}
@media print, screen and (max-width: 768px) and (min-width: 426px) {
	ul.imgbtn_list > li {
		width: 49%;
	}
	ul.imgbtn_list > li:nth-child(2n+1):nth-last-child(-n+2), ul.imgbtn_list > li:nth-child(2n+1):nth-last-child(-n+2) ~ li {
		margin-bottom: 0;
	}
}
@media print, screen and (max-width: 425px) {
	ul.imgbtn_list {
		margin: 0 auto;
	}
	ul.imgbtn_list > li {
		width: 100%;
	}
	.imgbtn__bg::after {
		padding-top: 200px;
	}
}
/*------新着情報
--------------------------------------------*/
#front_top_content, #front_bottom_content {
	padding: min(calc(150px + (1vw - 19.2px) * 5.8252), 150px) 0;
}
#front-sectionPost {
	width: 90%;
	max-width: 1100px;
	margin: auto;
}
#front_top_content .linkbtn_area, #front_bottom_content .linkbtn_area {
	margin-top: 50px;
}
#front-sectionPost ul.post li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
#front-sectionPost ul.post li {
	border-bottom: none !important;
}
@media print, screen and (max-width: 640px) {
	.postlist .post_text {
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	.postlist .ttls {
		width: 100%;
		margin-top: 10px;
	}
	.postlist .ttls, .postlist .date {
		padding: 0 5px;
	}
	.postlist .time {
		margin: 0 5px 0 0;
	}
}
/*-----------------トップ--------------------------------------------*/
/*-----------------投稿記事--------------------------------------------*/
/*------共通
--------------------------------------------*/
/*-----表示関連-----*/
#cat-post ul.post li, .post2b, .post4b {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
#cat-post ul.post li, .post2b li, .post4b li {
	border-bottom: none !important;
}
.post2b, .post4b {
	padding: 0;
	margin: 0 auto;
}
.post2b li, .post4b li {
	position: relative;
	padding: 0 0 45px;
	margin: 0 0 20px;
}
.post_img img, .post2b img, .post4b img {
	width: 100%;
	height: 100%;
	max-width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}
.post_img img {
	max-height: 200px;
}
.post2b img {
	max-height: 280px;
}
.post4b img {
	max-height: 175px;
}
.post .time, .postlist .time, .post2b .time, .post4b .time {
	font-size: min(calc(1.2rem + (1vw - 19.2px) * 0.1294), 1.2rem);
	line-height: 1.2;
	padding: 5px 10px;
	border-radius: 0;
}
.post2b li .post2b_contents, .post4b li .post4b_contents {
	margin-bottom: 0;
	opacity: .5;
}
.post_link, .post2b_link, .post4b_link {
	position: absolute;
	float: none;
	font-size: min(calc(1.3rem + (1vw - 19.2px) * 0.1294), 1.3rem);
	margin: 0;
	bottom: 10px;
	right: 5px;
	border-bottom: 1px solid;
}
/*-----画像関連-----*/
.post .post_img, .post_text70, .post_img img {
	float: none;
}
.post .post_img, .post_text70, .post2b li, .post4b li {
	width: 100%;
}
.post_img img, .post2b .post2b_img {
	text-align: center;
}
/*-----タイトル関連-----*/
.post_text h2 a, .post2b h2 a, .post4b h2 a {
	font-size: inherit;
}
.post2b h2, .post4b h2, h2.title, .post_text h2 {
	letter-spacing: .1rem;
	padding: 0 !important;
	margin: 10px auto !important;
}
.post_text h2 {
	font-size: min(calc(1.8rem + (1vw - 19.2px) * 0.1942), 1.8rem);
}
.post2b h2, .post4b h2, h2.title {
	font-size: min(calc(1.6rem + (1vw - 19.2px) * 0.1294), 1.6rem);
}
.post_text h2::before, .post2b h2::before, .post4b h2::before, .post_text h2::after, .post2b h2::after, .post4b h2::after {
	content: none !important;
}
.clearfix:after {
	content: none;
}
/*------リスト表示
--------------------------------------------*/
.postlist {
	margin-bottom: 0;
}
.postlist li {
	border-bottom: 1px solid #AAA;
	margin: 0 auto;
}
.postlist li:first-child {
	border-top: 1px solid #AAA;
}
.postlist .post_text {
	width: 98%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	margin: 0 auto;
	padding: 12px 0;
}
.postlist .ttls, .postlist .date {
	display: block;
	padding: 0 10px;
	margin-bottom: 0;
}
.postlist .ttls {
	overflow: hidden;
	font-size: min(calc(1.7rem + (1vw - 19.2px) * 0.2589), 1.7rem);
	white-space: nowrap;
	-o-text-overflow: ellipsis;
	text-overflow: ellipsis;
}
.postlist .ttls a {
	color: #333;
}
.postlist .ttls a:hover {
	text-decoration: underline;
}
.postlist .time {
	display: block;
	white-space: nowrap;
	margin: 0 10px 0 0;
}
/*------4ブロック
--------------------------------------------*/
@media print, screen and (min-width: 800px) {
	.post4b li {
		width: 24%;
	}
	.post4b li:nth-child(4n+2):last-child {
		margin-right: calc((24% * 2) + (((100% - (24% * 4)) / 3) * 2));
	}
	.post4b li:nth-child(4n+3):last-child {
		margin-right: calc((24% * 1) + (((100% - (24% * 4)) / 3) * 1));
	}
	.post4b li:nth-child(4n+1):nth-last-child(-n+4), .post4b li:nth-child(4n+1):nth-last-child(-n+4) ~ li {
		margin-bottom: 0;
	}
}
/*------2ブロック
--------------------------------------------*/
@media print, screen and (min-width: 800px) {
	.post2b li {
		width: 48%;
	}
	.post2b li:nth-child(2n+1):nth-last-child(-n+2), .post2b li:nth-child(2n+1):nth-last-child(-n+2) ~ li {
		margin-bottom: 0;
	}
}
/*------1ブロック
--------------------------------------------*/
ul.post > li {
	margin-bottom: 30px;
}
ul.post > li .post_text70 {
	position: relative;
	padding-bottom: 30px;
}
@media print, screen and (min-width: 800px) {
	.post .post_img, .post_text70 {
		margin: 0;
	}
	.post .post_img {
		width: 30%;
	}
	.post_text70 {
		width: 65%;
	}
}
@media print, screen and (max-width: 799px) {
	.post .post_img {
		max-width: 300px;
		text-align: center;
		margin: 0 auto;
	}
}
/*-----------------投稿記事--------------------------------------------*/
/*-----------------記事詳細--------------------------------------------*/
/*-----表示関連-----*/
#cat-post li {
	margin-bottom: min(calc(30px + (1vw - 19.2px) * 0.6472), 30px);
}
#cat-post li .post_contents {
	margin-top: 1rem;
}
#cat-post .postlist li {
	margin-bottom: 0;
}
.dateLabel {
	padding-top: 10px;
	margin-bottom: 30px;
	border-top: 1px solid #ccc;
}
.pagenav {
	margin: 70px 0 0;
}
/*-----タイトル関連-----*/
#cat-post h2, #cat-post h2 a {
	font-size: min(calc(2rem + (1vw - 19.2px) * 0.2589), 2rem);
	letter-spacing: .1rem;
}
#cat-post h2 {
	font-style: normal;
	margin-bottom: 0;
	text-align: left;
	padding: 10px 0;
	border: none;
}
#cat-post .post2b h2, #cat-post .post4b h2, #cat-post .post2b h2 a, #cat-post .post4b h2 a {
	font-size: min(calc(1.8rem + (1vw - 19.2px) * 0.1294), 1.8rem);
}
#cat-post h2::before, #cat-post h2::after {
	content: none;
}
.single-post h1.title {
	font-size: min(calc(2.5rem + (1vw - 19.2px) * 0.4531), 2.5rem);
	font-style: normal;
	margin: 0 auto 20px;
}
/*-----------------記事詳細--------------------------------------------*/
/*------------------------------------------
Additional contents and parts
--------------------------------------------*/
/*--inner/outer--------------------------------------------*/
.content_inner {
	margin: 0 auto;
	width: 90%;
}
.content_wrapper {
	margin: 0 auto;
	width: 100%;
}
.max_w900 {
	max-width: 900px;
}
.max_w960 {
	max-width: 960px;
}
.max_w1000 {
	max-width: 1000px;
}
.max_w1024 {
	max-width: 1024px;
}
.max_w1100 {
	max-width: 1100px;
}
.max_w1200 {
	max-width: 1200px;
}
.max_w1300 {
	max-width: 1300px;
}
.max_w1400 {
	max-width: 1400px;
}
.max_w1500 {
	max-width: 1500px;
}
.max_w1600 {
	max-width: 1600px;
}
.max_w1700 {
	max-width: 1700px;
}
.max_w1800 {
	max-width: 1800px;
}
/*--space--------------------------------------------*/
.mt0 {
	margin-top: 0 !important;
}
.mt1 {
	margin-top: 1rem !important;
}
.mt2 {
	margin-top: 2rem !important;
}
.mt3 {
	margin-top: 3rem !important;
}
.mt4 {
	margin-top: 4rem !important;
}
.mt5 {
	margin-top: 5rem !important;
}
.mt6 {
	margin-top: 6rem !important;
}
.mt7 {
	margin-top: 7rem !important;
}
.mt8 {
	margin-top: 8rem !important;
}
.mt9 {
	margin-top: 9rem !important;
}
.mt10 {
	margin-top: 10rem !important;
}
.mt15 {
	margin-top: 15rem !important;
}
.mt16 {
	margin-top: 16rem !important;
}
.mb0 {
	margin-bottom: 0rem !important;
}
.mb1 {
	margin-bottom: 1rem !important;
}
.mb2 {
	margin-bottom: 2rem !important;
}
.mb3 {
	margin-bottom: 3rem !important;
}
.mb4 {
	margin-bottom: 4rem !important;
}
.mb5 {
	margin-bottom: 5rem !important;
}
.mb6 {
	margin-bottom: 6rem !important;
}
.mb7 {
	margin-bottom: 7rem !important;
}
.mb8 {
	margin-bottom: 8rem !important;
}
.mb9 {
	margin-bottom: 9rem !important;
}
.mb10 {
	margin-bottom: 10rem !important;
}
.mb15 {
	margin-bottom: 15rem !important;
}
.mb16 {
	margin-bottom: 16rem !important;
}
@media screen and (max-width: 768px) {
	.mt1 {
		margin-top: 0.5rem !important;
	}
	.mt2 {
		margin-top: 1rem !important;
	}
	.mt3 {
		margin-top: 1.5rem !important;
	}
	.mt4 {
		margin-top: 2rem !important;
	}
	.mt5 {
		margin-top: 2.5rem !important;
	}
	.mt6 {
		margin-top: 3rem !important;
	}
	.mt7 {
		margin-top: 3.5rem !important;
	}
	.mt8 {
		margin-top: 4rem !important;
	}
	.mt9 {
		margin-top: 4.5rem !important;
	}
	.mt10 {
		margin-top: 5rem !important;
	}
	.mt15 {
		margin-top: 7.5rem !important;
	}
	.mt16 {
		margin-top: 8rem !important;
	}
	.mb1 {
		margin-bottom: 0.5rem !important;
	}
	.mb2 {
		margin-bottom: 1rem !important;
	}
	.mb3 {
		margin-bottom: 1.5rem !important;
	}
	.mb4 {
		margin-bottom: 2rem !important;
	}
	.mb5 {
		margin-bottom: 2.5rem !important;
	}
	.mb6 {
		margin-bottom: 3rem !important;
	}
	.mb7 {
		margin-bottom: 3.5rem !important;
	}
	.mb8 {
		margin-bottom: 5rem !important;
	}
	.mb9 {
		margin-bottom: 4.5rem !important;
	}
	.mb10 {
		margin-bottom: 5rem !important;
	}
	.mb15 {
		margin-bottom: 7.5rem !important;
	}
	.mb16 {
		margin-bottom: 8rem !important;
	}
}
.pt0 {
	padding-top: 0rem !important;
}
.pt1 {
	padding-top: 1rem !important;
}
.pt2 {
	padding-top: 2rem !important;
}
.pt3 {
	padding-top: 3rem !important;
}
.pt4 {
	padding-top: 4rem !important;
}
.pt5 {
	padding-top: 5rem !important;
}
.pt6 {
	padding-top: 6rem !important;
}
.pt7 {
	padding-top: 7rem !important;
}
.pt8 {
	padding-top: 8rem !important;
}
.pt9 {
	padding-top: 9rem !important;
}
.pt10 {
	padding-top: 10rem !important;
}
.pb0 {
	padding-bottom: 0rem !important;
}
.pb1 {
	padding-bottom: 1rem !important;
}
.pb2 {
	padding-bottom: 2rem !important;
}
.pb3 {
	padding-bottom: 3rem !important;
}
.pb4 {
	padding-bottom: 4rem !important;
}
.pb5 {
	padding-bottom: 5rem !important;
}
.pb6 {
	padding-bottom: 6rem !important;
}
.pb7 {
	padding-bottom: 7rem !important;
}
.pb8 {
	padding-bottom: 8rem !important;
}
.pb9 {
	padding-bottom: 9rem !important;
}
.pb10 {
	padding-bottom: 10rem !important;
}
.pd2 {
	padding: 2rem !important;
}
.pd3 {
	padding: 3rem !important;
}
.pd4 {
	padding: 4rem !important;
}
.pd5 {
	padding: 5rem !important;
}
@media screen and (max-width: 768px) {
	.pt1 {
		padding-top: 0.5rem !important;
	}
	.pt2 {
		padding-top: 1rem !important;
	}
	.pt3 {
		padding-top: 1.5rem !important;
	}
	.pt4 {
		padding-top: 2rem !important;
	}
	.pt5 {
		padding-top: 2.5rem !important;
	}
	.pt6 {
		padding-top: 3rem !important;
	}
	.pt7 {
		padding-top: 3.5rem !important;
	}
	.pt8 {
		padding-top: 4rem !important;
	}
	.pt9 {
		padding-top: 4.5rem !important;
	}
	.pt10 {
		padding-top: 5rem !important;
	}
	.pb1 {
		padding-bottom: 0.5rem !important;
	}
	.pb2 {
		padding-bottom: 1rem !important;
	}
	.pb3 {
		padding-bottom: 1.5rem !important;
	}
	.pb4 {
		padding-bottom: 2rem !important;
	}
	.pb5 {
		padding-bottom: 2.5rem !important;
	}
	.pb6 {
		padding-bottom: 3rem !important;
	}
	.pb7 {
		padding-bottom: 3.5rem !important;
	}
	.pb8 {
		padding-bottom: 4rem !important;
	}
	.pb9 {
		padding-bottom: 4.5rem !important;
	}
	.pb10 {
		padding-bottom: 5rem !important;
	}
	.pd2 {
		padding: 1rem !important;
	}
	.pd3 {
		padding: 1.5rem !important;
	}
	.pd4 {
		padding: 2rem !important;
	}
	.pd5 {
		padding: 2.5rem !important;
	}
}
@media screen and (max-width: 414px) {
	.mt16 {
		margin-top: 5rem !important;
	}
	.mb16 {
		margin-bottom: 5rem !important;
	}
}
/*-----------------ページ下部お問い合わせエリア--------------------------------------------*/
#foot-contact {
	clear: both;
	position: relative;
	color: #fff;
	background: #f8f4e6;
	margin-left: calc(((100vw - 100%) / 2) * -1);
	margin-right: calc(((100vw - 100%) / 2) * -1);
	padding: 0 calc((100vw - 100%) / 2);
}
.mobile #foot-contact {
	background-attachment: scroll;
}
#foot-contact::before {
	content: '';
	display: block;
	width: 100%;
	height: min(calc(480px + (1vw - 19.2px) * 11.6505), 480px);
	background: url(/struct/wp-content/uploads/bg_contact.jpg) no-repeat center top;
	background-attachment: fixed;
	background-size: cover;
}
body.mobile #foot-contact::before {
	background-attachment: scroll;
}
#foot-contact .foot-contact_inner {
	background: #323232 url(/struct/wp-content/uploads/bg_foot_contact.png) no-repeat center;
	background-size: cover;
	width: 95%;
	max-width: 1800px;
	padding: min(calc(90px + (1vw - 19.2px) * 3.2362), 90px) 30px;
	margin: max(calc(-240px + (1vw - 19.2px) * -2.5890), -240px) 0 0 auto;
}
#foot-contact .wrapper-content {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-ms-flex-line-pack: center;
	align-content: center;
	max-width: 1400px;
}
#foot-contact .contactTtl {
	font-size: min(calc(4rem + (1vw - 19.2px) * 0.9709), 4rem);
	font-weight: 500;
	text-align: center;
	letter-spacing: .2rem;
	line-height: 1.6;
	margin: 0;
}
#foot-contact .contactTtl .sub_ttl {
	display: block;
	font-weight: 500;
}
#foot-contact .contactTtl .en_ttl {
	display: block;
	font-size: min(calc(1.8rem + (1vw - 19.2px) * 0.1942), 1.8rem);
	font-family: 'Overpass', sans-serif;
}
.f-contact-read {
	font-weight: 500;
	letter-spacing: .1rem;
}
#foot-contact ul.linkbtn_list {
	-ms-flex-item-align: center;
	-ms-grid-row-align: center;
	align-self: center;
	margin: 0;
}
ul.contactbtn_list > li {
	margin-bottom: 20px;
}
ul.contactbtn_list > li:last-child {
	margin-bottom: 0;
}
a.f-contactBtn {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	color: #fff;
	background: rgba(255, 255, 255, 0);
	height: 100%;
	font-size: min(calc(1.6rem + (1vw - 19.2px) * 0.1294), 1.6rem);
	font-weight: 500;
	font-family: 'Overpass', 'Zen Kaku Gothic New', 'Noto Sans JP', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'Meiryo UI', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	text-align: center;
	padding: min(calc(20px + (1vw - 19.2px) * 0.5178), 20px) min(calc(40px + (1vw - 19.2px) * 0.6472), 40px);
	border: 1px solid;
	-webkit-transition: .4s;
	-o-transition: .4s;
	transition: .4s;
}
a.f-contactBtn:hover {
	background: rgba(255, 255, 255, .2)
}
a.f-contactBtn::after {
	content: none;
}
a.f-contactBtn .ico::before {
	display: inline-block;
	font-size: min(calc(2.5rem + (1vw - 19.2px) * 0.3236), 2.5rem);
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	margin-right: .2em;
}
a.f-contactBtn .ico {
	font-size: min(calc(2.2rem + (1vw - 19.2px) * 0.3883), 2.2rem);
}
a.f-contactBtn.telBtn .ico {
	display: block;
}
a.f-contactBtn.telBtn .ico::before {
	content: '\f095';
}
a.f-contactBtn.mailBtn .ico::before {
	content: '\f0e0';
}
a.f-contactBtn .note {
	font-size: min(calc(1.2rem + (1vw - 19.2px) * 0.1294), 1.2rem);
	font-weight: 400;
}
@media print, screen and (min-width: 1024px) {
	.contact_ttl_wrap {
		width: min(calc(400px + (1vw - 19.2px) * 15.6250), 400px);
		padding: 40px 40px 40px 0;
		border-right: 1px solid #FFF;
	}
	#foot-contact .contactTtl {
		display: table;
	}
	#foot-contact ul.linkbtn_list {
		width: calc(95% - min(calc(400px + (1vw - 19.2px) * 15.6250), 400px));
	}
}
@media print, screen and (max-width: 1023px) {
	.contact_ttl_wrap, #foot-contact ul.linkbtn_list {
		width: 100%;
	}
	.contact_ttl_wrap {
		padding: 0 0 calc(40px + (1vw - 10.23px) * 2.3148) 0;
		border-bottom: 1px solid #FFF;
		margin-bottom: calc(40px + (1vw - 10.23px) * 1.5432);
	}
}
/*-----------------ページ下部お問い合わせエリア--------------------------------------------*/
/*-----------------下層ページ--------------------------------------------*/
/*------共通
--------------------------------------------*/
.post {
	margin: 0 auto;
	padding: 0;
}
#wrapper, .inner {
	width: 100%;
	max-width: 1100px;
}
body:not(.home) #wrapper {
	width: 90%;
}
#content, body:not(.home) #content.wide {
	line-height: 2;
	padding: min(calc(100px + (1vw - 19.2px) * 3.2362), 100px) 0 min(calc(180px + (1vw - 19.2px) * 3.8835), 180px);
	margin: 0 auto;
}
body:not(.home) #content.wide {
	width: 100%;
}
.page_contents_inner + .page_contents_inner {
	margin-top: min(calc(150px + (1vw - 19.2px) * 3.2362), 150px);
}
.fw_contents {
	margin-top: max(calc(-100px + (1vw - 19.2px) * -3.2362), -100px);
	margin-bottom: max(calc(-180px + (1vw - 19.2px) * -3.8835), -180px);
}
.fw_contents .page_contents_inner {
	margin-right: calc(((100vw - 100%) / 2) * -1);
	margin-left: calc(((100vw - 100%) / 2) * -1);
	padding: min(calc(120px + (1vw - 19.2px) * 2.5890), 120px) calc((100vw - 100%) / 2) min(calc(150px + (1vw - 19.2px) * 3.2362), 150px);
	margin-top: 0;
}
.fw_contents .page_contents_inner:not(:first-child) {
	border-top: 1px solid #D5D5D5;
}
@media print, screen and (max-width: 1023px) {
	#content, #content.wide {
		width: 90%;
	}
}
/*------アイキャッチ
--------------------------------------------*/
#thumbImg, header#h1Header {
	position: relative;
	overflow: hidden;
	height: 300px;
	z-index: -1;
}
#thumbImg::before, header#h1Header::before {
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	background: #000;
	top: 0;
	left: 0;
	z-index: 1;
	opacity: .3;
}
#thumbImg img, header#h1Header img {
	width: auto;
	height: 100%;
	position: absolute;
	top: 0;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}
@media print, screen and (min-width: 1921px) {
	#thumbImg img, header#h1Header img {
		width: 100%;
		height: auto;
	}
}
@media print, screen and (max-width: 1024px) {
	#h1Header #thumb img {
		height: 100%;
		margin: auto;
	}
	#thumbImg, header#h1Header {
		height: calc(300px + (1vw - 10.24px) * 9.2450);
	}
}
/*------制作事例
--------------------------------------------*/
ul.ba_img_list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin: min(calc(80px + (1vw - 19.2px) * 1.9417), 80px) auto min(calc(30px + (1vw - 19.2px) * 0.6472), 30px);
}
ul.ba_img_list > li {
	position: relative;
	width: calc((100% - min(calc(8rem + (1vw - 19.2px) * 3.3467), 80px)) / 2);
}
ul.ba_img_list > li.before::after {
	content: '';
	position: absolute;
	width: min(calc(40px + (1vw - 19.2px) * 1.3387), 40px);
	height: min(calc(60px + (1vw - 19.2px) * 1.3387), 60px);
	background: #CCC;
	-webkit-clip-path: polygon(100% 50%, 0 0, 0 100%);
	clip-path: polygon(100% 50%, 0 0, 0 100%);
	top: calc(50% + 1em);
	right: calc(max(calc(-40px + (1vw - 19.2px) * -2.1419), -40px) / 2);
	-webkit-transform: translate(100%, -50%);
	-ms-transform: translate(100%, -50%);
	transform: translate(100%, -50%);
}
.ba_img_ttl {
	color: #FFF;
	font-size: min(calc(2rem + (1vw - 19.2px) * 0.2589), 2rem);
	font-weight: 500;
	font-family: 'Overpass', sans-serif;
	line-height: 1.6;
	text-align: center;
	padding: .3em .5rem;
	margin-bottom: .5em;
}
.before .ba_img_ttl {
	background: #333;
}
.after .ba_img_ttl {
	background: #BC1622;
}
ul.ba_img_list:first-child, h2 + ul.ba_img_list {
	margin-top: 0;
}
ul.ba_img_list:last-child {
	margin-bottom: 0;
}
@media print, screen and (max-width: 425px) {
	ul.ba_img_list > li {
		width: 100%;
		margin-bottom: 50px;
	}
	ul.ba_img_list > li.before::after {
		width: 50px;
		height: 30px;
		-webkit-clip-path: polygon(100% 0, 0 0, 50% 100%);
		clip-path: polygon(100% 0, 0 0, 50% 100%);
		top: auto;
		left: 50%;
		bottom: -10px;
		right: auto;
		-webkit-transform: translate(-50%, 100%);
		-ms-transform: translate(-50%, 100%);
		transform: translate(-50%, 100%);
	}
}
/*------プライバシーポリシー
--------------------------------------------*/
#privacy h2 {
	display: block;
	color: #fff;
	background: #4d4d4d;
	font-size: min(calc(1.8rem + (1vw - 19.2px) * 0.1942), 1.8rem);
	font-weight: 500;
	letter-spacing: .2rem;
	text-align: left;
	padding: min(calc(8px + (1vw - 19.2px) * 0.1942), 8px) min(calc(12px + (1vw - 19.2px) * 0.1294), 12px);
	margin: min(calc(50px + (1vw - 19.2px) * 0.9709), 50px) auto 20px;
	border: none;
}
#privacy h3 {
	color: #333;
	background: none;
	font-size: min(calc(1.6rem + (1vw - 19.2px) * 0.1294), 1.6rem);
	font-weight: 600;
	text-align: left;
	padding: 0 0 10px;
	margin: min(calc(40px + (1vw - 19.2px) * 0.9709), 40px) auto min(calc(20px + (1vw - 19.2px) * 0.6472), 20px);
	border-width: 0 0 1px;
	border-style: dashed;
	border-color: #ddd;
}
#privacy h2::before, #privacy h2::after, #privacy h3::before, #privacy h3::after {
	content: none;
}
#privacy h2:first-child {
	margin-top: 0;
}
/*------
--------------------------------------------*/
/*-----------------下層ページ - --------------------------------------------*/