@charset "utf-8";
/* =====================================
■UNDER
===================================== */
/* -------------------------------------
CONTENT
------------------------------------- */
#content {
	padding: 60px 0;
	min-height: 600px;
	position: relative;
}
.error404 #content {
	padding: 100px 0;
	text-align: center;
}
.archive #content,
.category #content,
.single #content {
	padding-top: 40px;
}

.elementor-section.elementor-section-boxed > .elementor-container {
	max-width: 1000px;
}
@media screen and (max-width: 767px) {
	#content {
		padding: 30px 0;
	}
}

/* -------------------------------------
textcolor
------------------------------------- */
.txtline {
	text-align: center;
}
.txtline p {
	text-align: center;
	font-family: "Noto Serif Japanese", "Times New Roman", "游明朝", YuMincho,"ヒラギノ明朝 Pr6 W6","Hiragino Mincho Pro", "HGS明朝E","メイリオ", "ＭＳ Ｐ明朝","MS PMincho",Meiryo, serif;
	font-size: 3.0rem;
	display: inline-block;
	border-bottom: 2px solid #87c972;
}
.txtColor {
	color: #22A7A6;
}
.txtLink {
	color: #F47F21 !important;
	font-weight: 500;
	text-decoration: underline !important;
	vertical-align: baseline;
}
.txtLink:hover {
	text-decoration: none !important;
}
.catchTit .elementor-heading-title {
	font-family: "Zen Old Mincho", serif;
	font-weight: 700;
	font-style: normal;
	font-size: 20px;
	line-height: 2;
	letter-spacing: 0.15em;
	color: #67594D;
	position: relative;
	word-break: break-all;
}
.columnTit .elementor-heading-title {
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-weight: 600;
	font-style: normal;
	font-size: 24px;
	letter-spacing: 0.16em;
	line-height: 1.4;
	color: #1C78B1;
}
.bgLine {
	background: linear-gradient(rgba(255, 243, 193, 0) 40%, #fff3c1 70%);
}
.img_line img {
	border: 1px solid #ccc;
	border-radius: 6px;
}
.underBox {
	box-shadow: 0px 0px 10px #a2a2a2;
}
@media screen and (max-width: 767px) {
	.columnTit {
		font-size: 20px;
	}
}

/* -------------------------------------
Elementor
------------------------------------- */
/* 画像ボックス
------------------------------------- */
.elementor img {
	border-radius: 6px;
}
.elementor-widget-image-box .elementor-image-box-wrapper {
	display: block !important;
}
.elementor-widget-image-box .elementor-image-box-content {
	text-align: left !important;
	word-break: break-all;
	white-space: pre-wrap;
}
div:not(.graphicBox) .elementor-image-box-title {
	font-family: "Noto Serif Japanese", "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 Pr6 W6", "Hiragino Mincho Pro", "HGS明朝E", "メイリオ", "ＭＳ Ｐ明朝", "MS PMincho", Meiryo, serif;
	font-size: 2.4rem;
	line-height: 1.4;
	letter-spacing: 0.15em;
	color: #453526;
	margin-bottom: 1.2rem;
	position: relative;
	overflow: hidden;
}
div:not(.graphicBox) .elementor-image-box-title .num {
	display: inline-block;
	vertical-align: top;
	width: 33px;
	height: 33px;
	background: #99bd49;
	border-radius: 50%;
	font-size: 20px;
	line-height: 33px;
	letter-spacing: 0;
	color: #fff;
	text-align: center;
	margin-right: 10px;
	margin-top: 2px;
}
div:not(.graphicBox) .elementor-image-box-img {
	display: block !important;
	width: 31% !important;
	float: right;
	margin: 0 0 15px 4% !important;
	text-align: right;
}
div:not(.graphicBox).img_l .elementor-image-box-img {
	float: left;
	margin: 0 4% 15px 0 !important;
}
div:not(.graphicBox).auto_width .elementor-image-box-img {
	width: auto !important;
}
div:not(.graphicBox) .elementor-widget-image .elementor-image a img {
	width: 100%;
}
div:not(.graphicBox) .elementor-widget-image .elementor-image > a:hover img,
div:not(.graphicBox) .elementor-widget-image .elementor-image figure > a:hover img {
	opacity: 0.8 !important;
}
figcaption.widget-image-caption.wp-caption-text {
	font-size: 14px;
	display: inline-block;
}

@media screen and (min-width: 768px) {
	div:not(.graphicBox).w21 .elementor-image-box-img {
		width: 21% !important;
	}
	div:not(.graphicBox).w26 .elementor-image-box-img {
		width: 26% !important;
	}
	div:not(.graphicBox).w45 .elementor-image-box-img {
		width: 45% !important;
	}
}

@media screen and (max-width: 767px) {
	div:not(.graphicBox) .elementor-image-box-img,
	div:not(.graphicBox).img_l .elementor-image-box-img {
		width: 70% !important;
		float: none;
		margin: 0 auto 15px !important;
		text-align: center;
	}
	div:not(.graphicBox) .elementor-image-box-title {
		font-size: 1.7rem;
		margin-bottom: 0.5rem;
	}
}

/* 画像ボックス--フリー
------------------------------------- */
.graphicBox .elementor-container,
.graphicBox .elementor-row,
.graphicBox .elementor-column,
.graphicBox .elementor-column-wrap,
.graphicBox .elementor-widget-wrap {
	display: block !important;
}
.graphicBox .photo {
	display: block !important;
	float: right;
	width: 31% !important;
	margin: 0 0 15px 4% !important;
	z-index: 1;
}
.img_l.graphicBox .photo {
	float: left;
	margin: 0 4% 15px 0 !important;
}
.auto_width.graphicBox .photo {
	width: auto !important;
}
.graphicBox .elementor-widget-image {
	text-align: right;
}
.graphicBox .elementor-clearfix:after {
	display: none !important;
}
.graphicBox .context {
	width: auto !important;
}
.graphicBox .context .elementor-column-wrap,
.graphicBox .context .elementor-widget-wrap {
	width: auto;
	align-content: normal;
}

@media screen and (max-width: 767px) {
	.graphicBox .photo,
	.img_l.graphicBox .photo {
		width: 70% !important;
		float: none;
		margin: 0 auto 15px !important;
	}
	.graphicBox .elementor-widget-image {
		text-align: center;
	}
}


/* アコーディオン
------------------------------------- */
.elementor-accordion .elementor-accordion-item {
	border: none;
}
.elementor-accordion .elementor-accordion-item:not(:last-child) {
	margin-bottom: 10px;
}
.elementor-accordion .elementor-tab-title {
	background: #E7E8E8;
	font-size: 25px;
	line-height: 1.56;
	letter-spacing: 0.1em;
	color: #717171;
	text-align: center;
	margin: 0;
	padding: 24px 70px 27px 20px;
	position: relative;
}
.elementor-accordion .elementor-tab-title:before {
	content: "";
	width: 3px;
	height: 21px;
	background: #429FC8;
	border-radius: 5px;
	position: absolute;
	right: 44px;
	top: 50%;
	margin-top: -10px;
}
.elementor-accordion .elementor-tab-title:after {
	content: "";
	width: 21px;
	height: 3px;
	background: #429FC8;
	border-radius: 5px;
	position: absolute;
	right: 35px;
	top: 50%;
	margin-top: -1px;
}
.elementor-accordion .elementor-tab-title.elementor-active:before {
	opacity: 0;
}
.elementor-accordion .elementor-tab-title a {
	color: #717171 !important;
}
.elementor-accordion .elementor-tab-content {
	padding: 28px 30px 26px;
	border: 5px solid #E7E8E8;
	border-top: none;
	background: #fff;
	text-align: center;
}

@media screen and (max-width: 767px) {
	.elementor-accordion .elementor-tab-title {
		font-size: 18px;
		padding: 15px 30px 18px 15px;
	}
	.elementor-accordion .elementor-tab-title:before {
		content: "";
		width: 2px;
		height: 12px;
		right: 15px;
		margin-top: -6px;
	}
	.elementor-accordion .elementor-tab-title:after {
		content: "";
		width: 12px;
		height: 2px;
		right: 10px;
	}
	.elementor-accordion .elementor-tab-content {
		padding: 20px;
	}
}

/* LightBox
--------------------------------------*/
.elementor-slideshow__header {
	box-sizing: border-box;
}
.elementor-lightbox .elementor-lightbox-image,
.elementor-lightbox .elementor-video-container {
	padding: 10px;
	background: #fff;
	box-sizing: border-box;
}

/* リスト
------------------------------------- */
.elementor-icon-list-items .elementor-icon-list-item a {
	display: inline;
	width: auto;
}

/* squareList */
.squareList .elementor-icon-list-items li,
ul.squareList > li {
	line-height: 1.5;
	text-align: left;
	padding: 0 0 0 28px;
	position: relative;
}
.squareList .elementor-icon-list-items li:not(:first-child),
ul.squareList > li:not(:first-child) {
	margin-top: 13px;
}
.squareList .elementor-icon-list-items li:before,
ul.squareList > li:before {
	content: "";
	width: 11px;
	height: 11px;
	background: #487FD5;
	position: absolute;
	top: 8px;
	left: 0;
}
.squareList.orange .elementor-icon-list-items li:before,
ul.squareList.orange > li:before {
	background: #EFC659;
}
.squareList.gray .elementor-icon-list-items li:before,
ul.squareList.gray > li:before {
	background: #E8E8E8;
}

/* circleList */
.circleList .elementor-icon-list-items li,
ul.circleList > li {
	text-align: left;
	padding: 0 0 0 15px;
	position: relative;
}
.circleList .elementor-icon-list-items li:not(:first-child),
ul.circleList > li:not(:first-child) {
	margin-top: 7px;
}
.circleList .elementor-icon-list-items li:before,
ul.circleList > li:before {
	content: "";
	width: 4px;
	height: 4px;
	background: #87c972;
	border-radius: 50%;
	position: absolute;
	top: 11px;
	left: 0;
}
.circleList .elementor-icon-list-items {
	display: flex;
	flex-wrap: wrap;
	column-gap: 20px;
	justify-content: space-between;
}
.circleList .elementor-icon-list-items li {
	width: calc((100% - 20px) / 2);
}
.circleList.circleList02 .elementor-icon-list-items {
	display: block;
}
.circleList.circleList02 .elementor-icon-list-items li {
	width: 100%;
}
.circleList.circleList03 .elementor-icon-list-items {
	justify-content: flex-start;
}
.circleList.circleList03 .elementor-icon-list-items li {
	width: auto;
}
@media screen and (max-width: 767px) {
	.circleList .elementor-icon-list-items li:not(:first-child),
	ul.circleList > li:not(:first-child) {
		margin-top: 5px;
	}
	.circleList .elementor-icon-list-items li:before,
	ul.circleList > li:before {
		top: 8px;
	}
	.circleList .elementor-icon-list-items {
		display: block;
	}
	.circleList .elementor-icon-list-items li {
		width: 100%;
	}
}

/* circleList2 */
.circleList2 ul {
	display: flex;
	column-gap: 20px;
	flex-wrap: wrap;
	justify-content: space-between;
}
.circleList2 ul li {
	position: relative;
	padding-left: 20px;
	width: calc((100% - 20px) / 2);
}
.circleList2 ul li:before {
	position: absolute;
	content: "";
	width: 5px;
	height: 5px;
	background: #084698;
	left: 0;
	top: 10px;
	border-radius: 50%;
}
.circleList2_B ul {
	display: block;
}
@media screen and (max-width: 767px) {
	.circleList2 ul {
		display: block;
	}
	.circleList2 ul li {
		width: 100%;
	}
}

/* circleListA */
.circleListA .elementor-icon-list-items li,
ul.circleListA > li {
	text-align: left;
	padding: 0 0 0 30px;
	position: relative;
}
.circleListA .elementor-icon-list-items li:not(:first-child),
ul.circleListA > li:not(:first-child) {
	margin-top: 5px;
}
.circleListA .elementor-icon-list-items li:before,
ul.circleListA > li:before {
	content: "";
	width: 17px;
	height: 17px;
	background: #fff;
	border: 4px solid #F47F21;
	border-radius: 50%;
	position: absolute;
	top: 7px;
	left: 0;
}

/* checkList */
.checkList .elementor-icon-list-items li,
ul.checkList > li {
	padding: 0 0 0 25px;
	position: relative;
}
/* .checkList .elementor-icon-list-items li:not(:first-child),
ul.checkList > li:not(:first-child) {
margin-top: 7px;
} */
.checkList .elementor-icon-list-items li:before,
ul.checkList > li:before {
	content: "";
	width: 15px;
	height: 15px;
	background: #fff;
	border: 1px solid #ccc;
	position: absolute;
	top: 7px;
	left: 0;
}
.checkList .elementor-icon-list-items li:after,
ul.checkList > li:after {
	content: '';
	width: 6px;
	height: 12px;
	border-right: #ad2c2c 2px solid;
	border-bottom: #ad2c2c 3px solid;
	position: absolute;
	top: 6px;
	left: 7px !important;
	transform: rotate(45deg);
	box-sizing: border-box;
}
.checkList.checkList02 .elementor-icon-list-items {
	display: flex;
	column-gap: 20px;
	justify-content: space-between;
	flex-wrap: wrap;
}
.checkList.checkList02 .elementor-icon-list-items li {
	width: calc((100% - 60px) / 4);
}
.checkList.checkList02.checkList02_A .elementor-icon-list-items li {
	width: calc((100% - 20px) / 2);
}
.checkList.checkList02.checkList_B .elementor-icon-list-items {
	justify-content: flex-start;
}
.checkList.checkList02.checkList_B .elementor-icon-list-items li {
	width: auto;
}
@media screen and (max-width: 767px) {
	.checkList .elementor-icon-list-items li:not(:first-child),
	ul.checkList > li:not(:first-child) {
		margin-top: 5px;
	}
	.checkList .elementor-icon-list-items li:before,
	ul.checkList > li:before {
		top: 3px;
	}
	.checkList .elementor-icon-list-items li:after,
	ul.checkList > li:after {
		top: 2px;
	}
	.checkList.checkList02 .elementor-icon-list-items {
		display: block;
	}
	.checkList.checkList02 .elementor-icon-list-items li {
		width: 100%;
	}
	.checkList.checkList02.checkList02_A .elementor-icon-list-items li {
		width: 100%;
	}
}

/* link_A */
.arrowListBox {
	background: #fff;
	padding: 10px;
	border: 1px solid #246bc9;
}
.arrowListBox2 {
	background: #e6eef7 !important;
	padding: 20px;
}
.arrowTit {
	font-size: 16px;
	font-weight: 600;
	color: #FF8838;
	margin-bottom: 15px;
}
.arrowList .elementor-icon-list-items {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}
.arrowList .elementor-icon-list-items li {
	font-style: normal;
	font-size: 16px;
	letter-spacing: 0.05em;
	line-height: 1.6;
	padding: 5px 0 5px 26px;
	margin: 0px 5px;
	text-align: left;
	color: #384045;
	position: relative;
}
/* .arrowList .elementor-icon-list-items li:before {
content: "";
width: 19px;
height: 19px;
background: #A09074;
border-radius: 50%;
position: absolute;
left: 0;
top: 8px;
transition: all 0.5s;
} */
.arrowList .elementor-icon-list-items li:after {
	content: "";
	width: 6px;
	height: 7px;
	background: #ffb200;
	clip-path: polygon(0% 0%, 100% 50%, 0% 100%);
	position: absolute;
	left: 7px !important;
	top: 14px;
	z-index: 2;
}
.arrowList2 .elementor-icon-list-items:after {
	position: absolute;
	content: "";
	border-top: 30px solid #246bc9;
	border-right: 30px solid transparent;
	border-left: 30px solid transparent;
	left: 50% !important;
	transform: translatex(-50%)
		top: 14px;
	z-index: 2;
}
.arrowList .elementor-icon-list-items li a {
	color: #000;
	position: relative;
	text-decoration: underline;
}
.arrowList .elementor-icon-list-items li a:hover {
	text-decoration: underline;
}
/* .arrowList .elementor-icon-list-items li a:hover:before {
-webkit-transform: rotate(90deg);
-moz-transform: rotate(90deg);
-ms-transform: rotate(90deg);
-o-transform: rotate(90deg);
transform: rotate(90deg);
} */

/* 番号リスト */
.numList .elementor-icon-list-items,
ul.numList {
	counter-reset: li;
}
.numList .elementor-icon-list-items li,
ul.numList > li {
	font-size: 16px;
	padding: 0 0 0 36px;
	position: relative;
}
.numList .elementor-icon-list-items li:not(:first-child),
ul.numList > li:not(:first-child) {
	margin-top: 5px;
}
.numList .elementor-icon-list-items li:before,
ul.numList > li:before {
	display: block;
	content: counter(li, decimal);
	counter-increment: li;
	width: 25px;
	height: 25px;
	background: #A09074;
	border-radius: 50%;
	font-family: "Zen Old Mincho", serif;
	font-weight: 700;
	font-size: 16px;
	line-height: 23px;
	letter-spacing: 0;
	color: #fff;
	text-align: center;
	position: absolute;
	left: 0;
	top: 4px;
}

@media screen and (min-width: 768px) {
	.column2List .elementor-icon-list-items li,
	ul.column2List > li {
		display: inline-block !important;
		width: 48.5%;
		box-sizing: border-box;
		padding-right: 10px !important;
		vertical-align: top;
	}
	.column3List .elementor-icon-list-items li,
	ul.column3List > li {
		display: inline-block !important;
		width: 31.5%;
		box-sizing: border-box;
		padding-right: 10px !important;
		vertical-align: top;
	}
	.column4List .elementor-icon-list-items li,
	ul.column4List > li {
		display: inline-block !important;
		width: 24.35%;
		box-sizing: border-box;
		padding-right: 2.5% !important;
		vertical-align: top;
	}
	.columnList .elementor-icon-list-items li,
	ul.columnList > li {
		display: inline-block !important;
		width: auto;
		box-sizing: border-box;
		vertical-align: top;
		margin: 3px 0 !important;
		padding-right: 20px;
	}
	.column2List .elementor-icon-list-items li:nth-child(-n+2),
	.column3List .elementor-icon-list-items li:nth-child(-n+3),
	.column4List .elementor-icon-list-items li:nth-child(-n+4),
	ul.column2List > li:nth-child(-n+2),
	ul.column3List > li:nth-child(-n+3),
	ul.column4List > li:nth-child(-n+4) {
		margin-top: 0 !important;
	}
	.column4List .elementor-icon-list-items li:nth-child(4n) {
		padding-right: 0 !important;
	}
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
	.arrowListBox {
		padding: 35px 30px;
	}
}

@media screen and (max-width: 767px) {
	.arrowListBox {
		padding: 20px 25px;
	}
	.arrowList .elementor-icon-list-items li {
		width: 100%;
		margin: 5px 0;
	}
}

/* flow
------------------------------------- */
.flowList {
	counter-reset: num;
}
.flowList .elementor-inner-section {
	counter-reset: li;
	padding-left: 10rem;
	position: relative;
}
.flowList .elementor-inner-section:not(:last-child) {
	padding-bottom: 40px;
	margin-bottom: 50px;
}
.flowList .elementor-inner-section:not(:last-child):after {
	content: "";
	border-left: 25px solid transparent;
	border-right: 25px solid transparent;
	border-top: 20px solid #86c7f1;
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
}
.flowList .elementor-inner-section:before {
	content: "";
	content: counter(num) "";
	counter-increment: num;
	width: 10rem;
	font-size: 10rem;
	line-height: 1;
	color: #62a2da;
	text-align: center;
	position: absolute;
	left: 0;
	top: 0;
}
.flowList .elementor-image-box-title {
	font-size: 20px;
	line-height: 1.5;
	letter-spacing: 0.05em;
	color: #22201E;
	margin-bottom: 25px;
	position: relative;
}
.flowList .flowTit {
	background: #BEDAFF;
	font-family: dnp-shuei-gothic-kin-std, sans-serif;
	font-size: 20px;
	font-weight: 600;
	line-height: 1.4;
	padding: 26px 34px 21px;
}
.flowList .txt {
	background: #fff;
	border: 1px solid #BEDAFF;
	padding: 18px 13px;
}
.flowList div:not(.graphicBox) .elementor-image-box-img {
	width: 21% !important;
	margin-left: 2% !important;
}

@media screen and (max-width: 767px) {
	.flowList .elementor-inner-section {
		padding-left: 5rem;
	}
	.flowList .elementor-inner-section:not(:last-child) {
		padding-bottom: 20px;
		margin-bottom: 20px;
	}
	.flowList .elementor-inner-section:not(:last-child):after {
		border-left: 30px solid transparent;
		border-right: 30px solid transparent;
		border-top: 15px solid #86c7f1;
	}
	.flowList .elementor-inner-section:before {
		font-size: 5rem;
		width: 5rem;
	}
	.flowList .flowTit {
		font-size: 18px;
		padding: 22px 15px 17px;
	}
	.flowList div:not(.graphicBox) .elementor-image-box-img {
		float: right;
		width: 40% !important;
		max-width: 250px;
		margin-left: 3% !important;
		padding-left: 2%;
	}
}

/* flow_A */
.flowListA .elementor-inner-section {
	background: #F5F4F0;
	font-size: 15px;
	padding: 35px 40px 35px 44px;
	position: relative;
}
.flowListA .elementor-inner-section:not(:last-child) {
	margin-bottom: 35px;
}
.flowListA .elementor-inner-section:not(:last-child):after {
	content: "";
	border-left: 25px solid transparent;
	border-right: 25px solid transparent;
	border-top: 25px solid #7B766E;
	position: absolute;
	left: 50%;
	bottom: -25px;
	transform: translateX(-50%);
}
.flowListA .elementor-inner-section.arrowNone {
	margin-bottom: 0;
}
.flowListA .elementor-inner-section.arrowNone:after {
	display: none;
}
.flowListA .elementor-widget-heading,
.flowListA .elementor-image-box-title {
	font-family: "Zen Old Mincho", serif;
	font-weight: 900;
	font-style: normal;
	font-size: 22px;
	letter-spacing: 0.05em;
	line-height: 1.6;
	color: #384045;
	position: relative;
}
.flowListA .elementor-image-box-img,
.flowListA .graphicBox .elementor-widget-image {
	margin-bottom: 0 !important;
}

@media screen and (max-width: 767px) {
	.flowListA .elementor-inner-section {
		padding: 25px;
	}
}
/* flow_B */
.flowList_B {
	width: 90%;
	margin-left: auto;
	position: relative;
}
.flowList_B:before {
	position: absolute;
	content: "";
	left: 0;
	content: counter(no) "";
	counter-increment: no;
	float: left;
	font-size: 100px;
	font-size: 10rem;
	line-height: 1;
	width: 100px;
	width: 10rem;
	margin-left: -100px;
	margin-left: -10rem;
	text-align: center;
	color: #87c972 !important;
	font-family: "Noto Serif Japanese", "Times New Roman", "游明朝", YuMincho,"ヒラギノ明朝 Pr6 W6","Hiragino Mincho Pro", "HGS明朝E","メイリオ", "ＭＳ Ｐ明朝","MS PMincho",Meiryo, serif;
}
.flowList_B ul {
	display: flex;
	column-gap: 20px;
	justify-content: space-between;
}
.flowList_B ul li:first-child {
	width: 77%;
}
.flowList_B ul li:last-child {
	width: 23%;
	padding-left: 20px;
}
.flowList_B:after {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 20px 25px 0 25px;
	left: 50%;
	margin-left: -25px;
	bottom: -23px;
	border-color: #afdda1 transparent transparent transparent;
}
.flowList_B.b:before {
	content: "2";
}
.flowList_B.c:before {
	content: "3";
}
.flowList_B.d:before {
	content: "4";
}
.flowList_B.d:after {
	display: none;
}
@media screen and (max-width: 767px) {
	.flowList_B ul {
		display: block;
	}
	.flowList_B ul li:first-child {
		width: 100%;
	}
	.flowList_B ul li:last-child {
		width: 100%;
		padding-left: 0;
		margin-top: 20px;
	}
	.flowList_B:before {
		font-size: 8rem;
		margin-left: -74px;
	}
}
/* QA
------------------------------------- */
/* qa_E */
.qaList .elementor-column.elementor-col-100 {
	border-bottom: 1px solid #ccc;
	padding-bottom: 45px;
}
.qaList .question {
	line-height: 2;
	position: relative;
	margin-bottom: 34px;
}
.qaList .answer {
	position: relative;
	font-weight: 400;
}
.qaList .question .num {
	width: 52px;
	font-family: "Zen Old Mincho", serif;
	font-weight: 900;
	font-style: normal;
	font-size: 31px;
	line-height: 44px;
	letter-spacing: 0;
	color: #fff;
	text-align: center;
	padding-bottom: 7px;
	background: #87c972;
	border-radius: 50%;
}
.qaList .answer .num {
	width: 52px;
	height: 52px;
	font-family: "Zen Old Mincho", serif;
	font-weight: 900;
	font-style: normal;
	font-size: 31px;
	line-height: 41px;
	letter-spacing: 0;
	color: #87c972 !important;
	text-align: center;
	background: #e6f4e1 !important;
	border-radius: 50%;
}
.qaList .txt {
	width: calc(100% - 52px);
	padding-left: 10px;
}
.qaList .question .txt .elementor-heading-title {
	font-style: normal;
	letter-spacing: 0.15em;
	line-height: 1.6;
	color: #87c972 !important;
}


/* qa_G */
.qaListG .inner {
	border: 1px solid #62a2da;
	padding: 20px;
}
.qaListG .question {
	position: relative;
	margin-bottom: 20px;
}
.qaListG .answer {
	position: relative;
}
.qaListG .num {
	width: 3rem;
}
.qaListG .num .elementor-widget-heading {
	font-size: 4rem;
	color: #62a2da;
	line-height: 1;
}
.qaListG .question .txt {
	width: calc(100% - 3rem);
	padding-left: 23px;
}
.qaListG .answer .txt {
	width: calc(100% - 3rem);
	padding-right: 23px;
}
.qaListG .question .txt .elementor-widget-heading {
	background: #e1edf9;
	border-radius: 6px;
	border: 1px solid #62a2da;
	padding: 15px 20px;
}
.qaListG .question .txt .elementor-widget-heading:before {
	content: "";
	border-width: 9px 22px 9px 0;
	border-style: solid;
	border-color: transparent #62a2da transparent transparent;
	position: absolute;
	left: -22px;
	top: 9px;
}
.qaListG .question .txt .elementor-widget-heading:after {
	content: "";
	border-width: 8px 20px 8px 0;
	border-style: solid;
	border-color: transparent #e1edf9 transparent transparent;
	position: absolute;
	left: -20px;
	top: 10px;
}
.qaListG .answer .txt .elementor-widget-text-editor {
	background: #fff;
	border: 1px solid #62a2da;
	padding: 15px 20px;
	border-radius: 6px;
}
.qaListG .answer .txt .elementor-widget-text-editor:before {
	content: "";
	border-width: 9px 0 9px 22px;
	border-style: solid;
	border-color: transparent transparent transparent #62a2da;
	position: absolute;
	right: -22px;
	top: 9px;
}
.qaListG .answer .txt .elementor-widget-text-editor:after {
	content: "";
	border-width: 8px 0 8px 20px;
	border-style: solid;
	border-color: transparent transparent transparent #fff;
	position: absolute;
	right: -20px;
	top: 10px;
}

@media screen and (max-width: 767px) {
	.qaListG .inner {
		padding: 10px;
	}
}


/* -------------------------------------
地図
------------------------------------- */
.map {
	position: relative;
	width: 100%;
	padding-top: 438px;
}
.map iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
	border: none;
}

.mapBlock .mapbox {
	height: 400px;
	min-height: 250px;
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.4);
	position: relative;
}
.mapBlock .mapbox iframe {
	width: 100% !important;
	height: 100% !important;
	border: none;
	position: absolute;
	left: 0;
	top: 0;
}
.mapBlock .mapbox > div {
	min-height: 250px;
}
.open-googlemap {
	text-align: center;
}
.open-googlemap a {
	font-size: 80%;
	color: #999;
	margin-top: 5px;
	padding-right: 15px;
	position: relative;
}
.open-googlemap a:after {
	content: "";
	width: 8px;
	height: 8px;
	border-width: 2px 2px 0 0;
	border-style: solid;
	border-color: #87c972;
	transform: rotate(45deg);
	position: absolute;
	top: 6px;
	right: 2px;
}

@media screen and (max-width: 767px) {
	.mapBlock .mapbox {
		height: 250px;
	}
}

/* -------------------------------------
Youtube
------------------------------------- */
.youtube {
	position: relative;
	padding-top: 56.25%;
}
.youtube iframe {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

/* -------------------------------------
Youtube
------------------------------------- */
.calendar {
	position: relative;
	padding-top: 75%;
}
.calendar iframe {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

@media screen and (max-width: 767px) {
	.calendar {
		padding-top: 100%;
	}
}

/* -------------------------------------
診療時間表
------------------------------------- */
.timetable th,
.timetable td {
	text-align: center;
	border: 1px solid #ccc;
	padding: 5px 5px 3px 5px;
	vertical-align: middle;
	opacity: 0.8;
}
.timetable thead th {
	width: 8%;
	background: #86c7f1;
	color: #fff;
}
.timetable thead th:first-child {
	width: 36%;
}
.timetable tbody th {
	background: #e1edf9;
}
.timetable tbody th small {
	font-size: 80%;
}

@media screen and (max-width: 767px) {
	.timetable th,
	.timetable td {
		font-size: 70%;
		padding: 5px 2px 3px 2px;
	}
	.timetable thead th {
		width: 10%;
	}
	.timetable thead th:first-child {
		width: 20%;
	}
}


/* 診療時間表A
------------------------------------- */
table.timetableA {
	width: 100%;
	table-layout: fixed;
	border-collapse: collapse;
	border: 1px solid #ccc;
}
.timetableA th,
.timetableA td {
	font-size: 16px;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0;
	color: #67594D;
	text-align: center;
	vertical-align: middle;
	padding: 14px 0;
}
.timetableA thead th {
	background: #afdda1;
	font-size: 16px;
	color: #000;
	padding: 10px 0 11px;
	vertical-align: bottom;
	border-left: 1px solid #C8C8C8;
}
.timetableA thead th:first-child {
	width: 26%;
	font-size: 18px;
	letter-spacing: 0.15em;
	text-align: center;
	padding-left: 26px;
	border-left: none;
}
.timetableA tbody th {
	letter-spacing: 0.05em;
	color: #384045;
	word-break: keep-all;
	white-space: nowrap;
	text-align: center;
	padding-left: 25px;
	background: #e6f4e1 !important;
}
table.timetableA tr:first-child {
	border-bottom: 1px solid #ccc;
}
.timetableA tbody td {
	border-left: 1px solid #C8C8C8;
}

@media screen and (max-width: 767px) {
	.timetableA th,
	.timetableA td {
		font-size: 13px;
		padding: 15px 0 16px;
	}
	.timetableA thead th {
		font-size: 12px;
		padding: 7px 0 8px;
	}
	.timetableA thead th:first-child {
		width: 31.25%;
		font-size: 12px;
		letter-spacing: 0.02em;
		padding-left: 8px;
	}
	.timetableA tbody th {
		font-size: 14px;
		letter-spacing: 0;
		padding-left: 8px;
	}
}

@media screen and (max-width: 374px) {
	.timetableA thead th:first-child {
		width: 35%;
	}
}

/* 診療時間表B
------------------------------------- */
table.timetableB {
	width: 100%;
	table-layout: fixed;
	border-collapse: collapse;
	margin-bottom: 5px;
}
.timetableB th,
.timetableB td {
	font-size: 16px;
	line-height: 1;
	letter-spacing: 0;
	text-align: center;
	vertical-align: middle;
	padding: 16px 0;
	border-bottom: 1px solid #CBCAC9;
}
.timetableB thead th {
	background: #229CDD;
	color: #fff;
	padding: 20px 0;
	vertical-align: bottom;
}
.timetableB thead th:first-child {
	width: 25%;
	font-size: 18px;
	letter-spacing: 0.15em;
	text-align: left;
	padding-left: 24px;
}
.timetableB tbody th {
	text-align: left;
	word-break: keep-all;
	white-space: nowrap;
	padding-left: 24px;
}
.timetableB tbody td {
	color: #50CECB;
}
.timetableB tbody td.holiday {
	color: #22201E;
}
.timetableB tbody tr:first-child th,
.timetableB tbody tr:first-child td {
	padding-top: 30px;
}
.timetableB tbody tr:last-child th,
.timetableB tbody tr:last-child td {
	padding-bottom: 30px;
}

@media screen and (max-width: 767px) {
	.timetableB th,
	.timetableB td {
		font-size: 14px;
		padding: 12px 0;
	}
	.timetableB thead th {
		padding: 15px 0;
	}
	.timetableB thead th:first-child {
		width: 32%;
		font-size: 16px;
		padding-left: 10px;
	}
	.timetableB tbody th {
		letter-spacing: 0.05em;
		padding-left: 10px;
	}
	.timetableB tbody tr:first-child th,
	.timetableB tbody tr:first-child td {
		padding-top: 25px;
	}
	.timetableB tbody tr:last-child th,
	.timetableB tbody tr:last-child td {
		padding-bottom: 25px;
	}
}

@media screen and (max-width: 374px) {
	.timetableB th,
	.timetableB td {
		font-size: 12px;
	}
	.timetableB thead th:first-child {
		font-size: 14px;
	}
	.timetableB tbody th {
		letter-spacing: 0;
	}
	.tips {
		font-size: 15px;
	}
}

/* 診療時間表C
------------------------------------- */
table.timetableC {
	width: 100%;
	table-layout: fixed;
	border-collapse: collapse;
}
.timetableC th,
.timetableC td {
	line-height: 1;
	letter-spacing: 0;
	color: #715636;
	text-align: center;
	vertical-align: middle;
	padding: 10px 5px 12px;
	border-bottom: 1px solid #E8E8E8;
	border-right: 1px solid #E8E8E8;
}
.timetableC thead th:first-child {
	width: 20%;
	letter-spacing: 0.1em;
	text-align: left;
}
.timetableC tbody th {
	word-break: keep-all;
	white-space: nowrap;
	text-align: left;
}
.timetableC thead th:first-child,
.timetableC tbody th {
	text-align: left;
	padding-left: 20px;
}
.timetableC tbody td {
	color: #487FD5;
}
.timetableC tbody td.holiday {
	color: #715636;
}

@media screen and (max-width: 767px) {
	.timetableC th,
	.timetableC td {
		font-size: 12px;
		padding: 7px 0px 9px;
	}
	.timetableC thead th:first-child {
		width: 32%;
	}
	.timetableC thead th:first-child,
	.timetableC tbody th {
		padding-left: 10px;
	}
}

/*--------------------------------------
table_A
--------------------------------------*/
.table_A th,
.table_A td {
	vertical-align: middle;
	word-break: break-all;
}
.table_A th {
	width: 25%;
	color: #afdda1;
	padding: 5px 5px 3px 5px;
	border-bottom: 1px solid #afdda1;
}
.table_A td {
	padding: 10px 5px 5px;
	border-bottom: 1px solid #ccc;
}


/*--------------------------------------
table_B
--------------------------------------*/
.table_B th,
.table_B td {
	font-size: 16px;
	line-height: 1.75;
	vertical-align: top;
	word-break: break-all;
	padding: 16px 0 15px 15px;
}
.table_B th {
	width: 25%;
	background-image: linear-gradient(to right, #487FD5 0%, #487FD5 100%);
	background-size: 1px 1px;
	background-repeat: repeat-x;
	background-position: left bottom;
}
.table_B td {
	background-image: linear-gradient(to right, #CBCAC9 0%, #CBCAC9 50%, #fff 0%);
	background-size: 5px 1px;
	background-repeat: repeat-x;
	background-position: left bottom;
}
.table_B tr:first-child th,
.table_B tr:first-child td {
	padding-top: 0;
}
.table_B td ul li {
	padding-left: 16px;
	text-indent: -16px;
}

@media screen and (max-width: 767px) {
	.table_B th,
	.table_B td {
		font-size: 14px;
		line-height: 1.5;
		padding: 11px 0 10px 5px;
	}
	.table_B th {
		width: 34%;
	}
	.table_B td ul li {
		padding-left: 14px;
		text-indent: -14px;
	}
}

/*--------------------------------------
* table_D
--------------------------------------*/
.table_D th,
.table_D td {
	line-height: 1.875;
	vertical-align: middle;
	border: 1px solid #CFCCC9;
	padding: 9px 17px;
	box-sizing: border-box;
}
.table_D thead th {
	background: #246bc9;
	color: #fff;
}
.table_D tbody th {
	width: 30%;
	background: #e6eef7 !important;
}
.table_D tbody th em {
	font-style: normal;
	font-size: 14px;
	color: #fff;
	background: #F39800;
	display: block;
	width: 71px;
	height: 22px;
	line-height: 22px;
	text-align: center;
	margin-top: 5px;
}
.table_D tbody td {
	background: #ffffff;
}
.table_D .vertical-align-top {
	vertical-align: top;
}
.scroll_area {
	width: 100%;
	overflow-x: auto;
}
.scroll_area table {
	width: 1080px;
}

@media screen and (max-width: 767px) {
	.table_D th,
	.table_D td {
		padding: 8px 10px;
	}
}

@media screen and (max-width: 374px) {
	.table_D th,
	.table_D td {
		font-size: 14px;
	}
	.table_D tbody th {
		width: 34%;
	}
}


/*--------------------------------------
ボックス
--------------------------------------*/
/*　frame タイトル
--------------------------------------*/
.frameTit {
	margin-bottom: 15px !important;
}
.frameTit .elementor-heading-title {
	background: #e3d1c5;
	padding: 5px 10px;
	position: relative;
	z-index: 2;
}
.frameK .frameTit .elementor-heading-title:before {
	background: #22A7A6;
}
.frameL .frameTit .elementor-heading-title:before {
	background: linear-gradient(180deg, #A79548 0%, #C7B564 100%);
}
.numTit {
	font-size: 25px;
	font-family: dnp-shuei-gothic-kin-std, sans-serif;
	line-height: 1.4;
	letter-spacing: 0.06em;
	color: #1C6043;
	padding: 0 0 10px;
	position: relative;
	border-bottom: 2px solid #1C6043;
}

@media screen and (max-width: 767px) {
	.frameTit {
		margin-bottom: 10px !important;
	}
	.numTit {
		font-size: 20px;
	}
}

/*　frame_J
--------------------------------------*/
.frameJ {
	/* 	border: 1px solid #9e8c79; */
	padding: 20px;
}
.frameJ > .elementor-container.elementor-column-gap-default {
	border: 1px solid #afdda1;
	padding: 19px;
}
.frameJ ul li {
	line-height: 2.3;
}
/*　frame_K
--------------------------------------*/
.frameK {
	padding: 38px 55px 40px;
	background: #F2F7F7;
	font-size: 15px;
}

/*　frame_L
--------------------------------------*/
.frameL {
	padding: 38px 55px 40px;
	background: #FFF !important;
	border: 1px solid #A09074;
	font-size: 15px;
}
.frameL.nobt {
	border-top: none;
}
.frameL.nobb {
	border-bottom: none;
}

/*　画像
--------------------------------------*/
.frameJ .graphicBox .elementor-widget-image,
.frameK .graphicBox .elementor-widget-image,
.graphicBox .frameJ .elementor-widget-image,
.graphicBox .frameK .elementor-widget-image {
	width: auto !important;
	max-width: 200px;
}


@media screen and (max-width: 1024px) and (min-width: 768px) {
	.frameK,
	.frameL {
		padding: 35px;
	}
}

@media screen and (max-width: 767px) {
	.frameK,
	.frameL {
		padding: 20px;
	}
}

/*--------------------------------------
style_box
--------------------------------------*/
.style_box {
	border: 20px solid #a08271;
}
.style_title {
	font-size: 28px;
	line-height: 1.4;
	letter-spacing: 0.1em;
	color: #a08271;
	border-bottom: 5px solid #a08271;
	padding: 25px 20px;
	text-align: center;
}
.style_box .inner {
	padding: 35px;
}
.style_box .inner .title {
	font-size: 24px;
	line-height: 1.3;
	letter-spacing: 0.1em;
	color: #75654c;
	padding: 0 0 15px;
	border-bottom: 2px solid #a08271;
	position: relative;
}

@media screen and (max-width: 767px) {
	.style_box {
		border: 10px solid #a08271;
	}
	.style_title {
		font-size: 25px;
	}
	.style_box .inner {
		padding: 20px;
	}
}

/*--------------------------------------
before after
--------------------------------------*/
.before_after {
	position: relative;
}
.before_after:before {
	display: block;
	content: "";
	border-left: 14px solid #6fba2c;
	border-bottom: 20px solid transparent;
	border-top: 20px solid transparent;
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -20px;
	margin-left: -7px;
}
.before_after li {
	float: left;
	width: 46%;
	position: relative;
	text-align: center;
	margin-left: 8%;
}
.before_after li:first-child {
	margin: 0;
}

@media screen and (max-width: 767px) {
	.before_after:before {
		border-left: 20px solid transparent;
		border-top: 14px solid #6fba2c;
		border-right: 20px solid transparent;
		border-bottom: none;
		margin-top: -6px;
		margin-left: -20px;
	}
	.before_after li {
		float: none;
		width: 100%;
		margin-top: 50px;
		margin-left: 0;
	}
}

/*--------------------------------------
* anchorlinks
--------------------------------------*/
.anchorLinks {
	background: #F8F6F1;
	padding: 30px 6%;
}
.anchorLinks ul li {
	display: inline-block !important;
	margin: 10px 0 !important;
	padding: 0 10px !important;
	vertical-align: top !important;
	box-sizing: border-box;
	/* 	width: 24.5%; */
}
.anchorLinks ul li a {
	display: inline-block !important;
	padding: 0 0 0 20px;
	font-size: 18px;
	line-height: 1.4;
	color: #22201E;
	position: relative;
	/* 	text-align: center; */
	-webkit-transition: background-color .5s ease;
	transition: background-color .5s ease;
	text-decoration: underline;
}
.anchorLinks ul li a:hover {
	text-decoration: none;
}
.anchorLinks ul li a:after {	
	content: "";
	width: 10px;
	height: 10px;
	border-top: 3px solid #A6958D;
	border-right: 3px solid #A6958D;
	transform: rotate(45deg);
	position: absolute;
	left: 0;
	top: 50%;
	margin-top: -5px;
	z-index: 1;
}

/* @media screen and (max-width: 1060px) and (min-width: 768px) {
.anchorLinks ul li {
width: 49.5% !important;
}
} */

@media screen and (max-width: 767px) {
	.anchorLinks {
		padding: 25px 15px;
	}
	.anchorLinks ul li a {
		font-size: 16px;
	}
	/* 	.anchorLinks li {
	width: 49% !important;
} */
}

@media screen and (max-width: 480px) {
	.anchorLinks li {
		width: 100% !important;
		display: block !important;
		margin: 5px 0;
	}
}

/* =====================================
■ブログ
===================================== */
/*--------------------------------------
POSTS
--------------------------------------*/
#posts {
	float: left;
	width: 65%;
}
#blogDetail,
#blogList {
	margin-top: 40px;
	margin-bottom: 103px;
	min-height: 850px;
}

/*　blogList　*/
.posts_list li {
	margin-bottom: 30px;
	position: relative;
	border-bottom: 1px solid #CDCDCE;
	padding-bottom: 30px;
}
.posts_list li .category {
	/* 	position: absolute;
	left: 0;
	top: 0; */
	margin: 0 0 22px;
	line-height: 1;
	z-index: 10;
}
.post .category a,
.posts_list .category a {
	display: inline-block;
	min-width: 107px;
	height: 25px;
	padding: 2px 8px;
	font-weight: 600;
	font-style: normal;
	font-size: 11px;
	letter-spacing: 0.08em;
	color: #fff;
	line-height: 21px;
	box-sizing: border-box;
	text-transform: uppercase;
	background: #A09074;
}
.post .category a:hover,
.posts_list .category a:hover {
	opacity: 0.8;
}
.post .category a:before,
.posts_list .category a:before {
	font-size: 10px;
	margin-right: 7px;
	vertical-align: baseline;
}
.posts_list li .post-image {
	display: none;
	position: relative;
	overflow: hidden;
	min-height: 26px;
	margin-bottom: 20px;
}
.posts_list li .post-image a {
	display: block;
	width: 100%;
	height: 100%;
	padding-top: 54%;
}
.posts_list li .post-image a span {
	display: block;
	width: 100%;
	height: 100%;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	position: absolute;
	top: 0;
	left: 0;
	transform: scale(1);
	transition: ease-in-out .2s;
}
.posts_list li .post-image a:hover span {
	transform: scale(1.1);
}
.posts_list li .post-image span.noimage {
	line-height: 0;
	text-indent: 100%;
	overflow: hidden;
}
.posts_list h3 {
	font-family: "Zen Old Mincho", serif;
	font-weight: 700;
	font-style: normal;
	font-size: 18px;
	line-height: 1.45;
	letter-spacing: 0.05em;
	margin-bottom: 20px;
}
.posts_list h3 a {
	color: #67594D;
}
.posts_list h3 a:hover {
	color: #22A7A6;
}
.posts_list .excerpt {
	font-size: 14px;
	line-height: 1.43;
	margin-bottom: 13px;
	color: #6F6F74;
}

/*　blogDetail　*/
#blogDetail .post {
	font-size: 14px;
	line-height: 1.7;
	padding-bottom: 35px;
}
#blogDetail .post-header {
	padding: 0px;
	margin-bottom: 25px;
}
#blogDetail .post-header h2 {
	font-family: "Zen Old Mincho", serif;
	font-weight: 600;
	font-style: normal;
	font-size: 28px;
	line-height: 1.8;
	letter-spacing: 0.05em;
	color: #67594D;
}
#blogDetail .post-header .post-meta {
	margin-bottom: 30px;
}
#blogDetail .post-header .post-meta li.date {
	margin-top: 20px;
}
.post .date,
.posts_list .date {
	color: #384045;
	font-size: 10px;
	letter-spacing: 0;
}
.post .date span,
.posts_list .date span {
	margin-left: 10px;
}
.post .date span:before,
.posts_list .date span:before {
	font-size: 9px;
	margin-right: 5px;
}
.post .date span a,
.posts_list .date span a {
	color: #707070;
	vertical-align: baseline;
}
.post .date span a:hover,
.posts_list .date span a:hover {
	text-decoration: underline;
}
.post-content {
	font-weight: 400;
}
div#blogDetail .post-content img {
	width: auto;
	height: auto;
	box-sizing: border-box;
}
/*
#blogDetail .post-content h3 {
font-size: 22px;
letter-spacing: 0;
background: #e8e8e8;
padding: 30px 10px 30px 28px;
line-height: 1.5;
border-top: 5px solid #f5c6b6;
margin: 40px 0 30px;
}
#blogDetail .post-content h4 {
font-size: 20px;
letter-spacing: 0;
border-bottom: 5px solid #f5c6b6;
padding: 10px 0 12px 0;
line-height: 1.5;
margin: 30px 0 25px 0;
}
*/
#posts .contributor {
	font-size: 12px;
	font-weight: 500;
	line-height: 1;
	color: #999999;
	text-align: right;
}

.bloginfo_box {
	display: table;
	width: 100%;
	background: #EBE9E7;
	margin-top: 60px;
	display: none !important;
}
.bloginfo_box .blog_name {
	display: table-cell;
	width: 60%;
	border-right: 1px solid #BFBEBD;
	box-sizing: border-box;
	padding: 29px 25px;
	vertical-align: middle;
}
.bloginfo_box .blog_name .icon-blog {
	display: block;
	position: relative;
	padding-left: 25px;
	font-size: 16px;
	color: #373431;
	line-height: 1.6;
}
.bloginfo_box .blog_name .icon-blog:before {
	display: block;
	font-size: 15px;
	color: #A6958D;
	position: absolute;
	left: 0;
	top: 50%;
	margin-top: -8px;
}
.bloginfo_box .share_btn {
	display: table-cell;
	width: 40%;
	padding: 30px 10px;
	box-sizing: border-box;
	text-align: center;
	vertical-align: middle;
}
.bloginfo_box .share_btn li {
	display: inline-block;
	margin: 0 5px;
	vertical-align: middle;
}
.bloginfo_box .share_btn li a {
	display: block;
	overflow: hidden;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	font-size: 0;
	line-height: 1;
}
.bloginfo_box .share_btn li a:before {
	color: #fff;
}
.bloginfo_box .share_btn .icon-facebook {
	background: #4967A3;
}
.bloginfo_box .share_btn .icon-facebook:hover {
	background: #587cc1;
}
.bloginfo_box .share_btn .icon-facebook:before {
	font-size: 26px;
	margin-top: 12px;
}
.bloginfo_box .share_btn .icon-line {
	background: #18BC01;
}
.bloginfo_box .share_btn .icon-line:hover {
	background: #1cde00;
}
.bloginfo_box .share_btn .icon-line:before {
	font-size: 29px;
	margin-top: 11px;
}
.bloginfo_box .share_btn .icon-twitter {
	background: #11BBEF;
}
.bloginfo_box .share_btn .icon-twitter:hover {
	background: #13C7FE;
}
.bloginfo_box .share_btn .icon-twitter:before {
	font-size: 24px;
	margin-top: 14px;
}
.bloginfo_box .share_btn .icon-google {
	background: #E05C4F;
}
.bloginfo_box .share_btn .icon-google:hover {
	background: #fb7468;
}
.bloginfo_box .share_btn .icon-google:before {
	font-size: 20px;
	margin-top: 15px;
}

/* navigation */
.navigation {
	overflow: hidden;
	margin-top: 52px;
}
.navigation:after {
	content: "";
	display: table;
	clear: both;
}
.navigation .prev {
	float: left;
	width: 100px;
}
.navigation .next {
	float: right;
	width: 100px;
}
.navigation a {
	display: block;
	width: 100%;
	height: 40px;
	font-weight: 500;
	font-style: normal;
	font-size: 14px;
	background: #EFEEEC;
	color: #384045;
	line-height: 40px;
	letter-spacing: 0.1em;
	border-radius: 0;
	position: relative;
	text-align: center;
	box-sizing: border-box;
	font-weight: bold;
}
.navigation a:hover {
	background: #DDD4C3;
}
.navigation .prev a span {
	padding-left: 8px;
}
.navigation .next a span {
	padding-right: 8px;
}
.navigation .prev a span:before {
	display: block;
	position: absolute;
	left: 8px;
	top: 50%;
	margin-top: -5px;
	font-size: 10px;
}
.navigation .next a span:before {
	display: block;
	position: absolute;
	right: 8px;
	top: 50%;
	margin-top: -5px;
	font-size: 10px;
}
.navigation ul {
	display: flex;
	max-width: 200px;
	margin: 0 auto;
}
.navigation li {
	display: flex;
	margin: 0 1px 0 2px;
	width: 30px;
}

/* pagination */
.pagination {
	overflow: hidden;
	position: relative;
	padding-top: 52px;
}
.pagination ul {
	text-align: center;
}
.pagination ul li {
	display: inline-block;
}
.pagination ul li a,
.pagination ul li span.dots {
	display: block;
	min-width: 30px;
	height: 40px;
	font-weight: 500;
	font-style: normal;
	font-size: 16px;
	background: #EFEEEC;
	color: #384045;
	line-height: 40px;
	letter-spacing: 0.1em;
	border-radius: 0;
	position: relative;
	text-align: center;
	box-sizing: border-box;
}
.pagination ul li span.dots {
	background: none;
}
.pagination ul li a:hover {
	padding: 0px 9px 6px 9px !important;
	border: solid 1px #DCDCDC !important;
	border-top-color: rgb(220, 220, 220);
	border-right-color: rgb(220, 220, 220);
	border-bottom-color: rgb(220, 220, 220);
	border-left-color: rgb(220, 220, 220);
	border-color: #3390CA !important;
	border-radius: 3px !important;
	-moz-border-radius: 3px !important;
	-webkit-border-radius: 3px !important;
	color: #fff !important;
	margin-right: 3px !important;
	border-color: #202020 !important;
	background: #525252 !important;
	background: -moz-linear-gradient(top,#9F9F9F 1px,#6C6C6C 1px,#525252) !important;
	background: -webkit-gradient(linear,0 0,0 100%,color-stop(0.02,#9F9F9F),color-stop(0.02,#6C6C6C),color-stop(1,#525252)) !important;
}
.pagination ul li span.current {
	display: block;
	min-width: 30px;
	height: 40px;
	font-weight: 500;
	font-style: normal;
	font-size: 16px;
	background: #DDD4C3;
	color: #384045;
	line-height: 1;
	letter-spacing: 0.1em;
	border-radius: 0;
	position: relative;
	text-align: center;
	box-sizing: border-box;
	padding: 11px 9px 6px 9px !important;
	border: solid 1px #DCDCDC !important;
	border-top-color: rgb(220, 220, 220);
	border-right-color: rgb(220, 220, 220);
	border-bottom-color: rgb(220, 220, 220);
	border-left-color: rgb(220, 220, 220);
	border-color: #3390CA !important;
	border-radius: 3px !important;
	-moz-border-radius: 3px !important;
	-webkit-border-radius: 3px !important;
	color: #fff !important;
	margin-right: 3px !important;
	border-color: #202020 !important;
	background: #525252 !important;
	background: -moz-linear-gradient(top,#9F9F9F 1px,#6C6C6C 1px,#525252) !important;
	background: -webkit-gradient(linear,0 0,0 100%,color-stop(0.02,#9F9F9F),color-stop(0.02,#6C6C6C),color-stop(1,#525252)) !important;
}
.pagination ul li .prev {
	display: block;
	width: 100px;
	font-size: 14px;
	position: absolute;
	left: 0;
	top: 52px;
	padding-left: 8px;
	box-sizing: border-box;
}
.pagination ul li .next {
	display: block;
	width: 100px;
	font-size: 14px;
	position: absolute;
	right: 0;
	top: 52px;
	padding-right: 8px;
	box-sizing: border-box;
	font-weight: bold;
}
.pagination ul li .prev span:before {
	display: block;
	position: absolute;
	left: 8px;
	top: 50%;
	margin-top: -5px;
	font-size: 10px;
}
.pagination ul li .next span:before {
	display: block;
	position: absolute;
	right: 8px;
	top: 50%;
	margin-top: -5px;
	font-size: 10px;
}

@media screen and (max-width: 1000px) and (min-width: 768px) {
	.bloginfo_box .share_btn li {
		margin: 0 3px;
	}
	.bloginfo_box .share_btn li a {
		width: 40px;
		height: 40px;
	}
	.bloginfo_box .share_btn .icon-facebook:before {
		font-size: 22px;
		margin-top: 9px;
	}
	.bloginfo_box .share_btn .icon-line:before {
		font-size: 25px;
		margin-top: 8px;
	}
	.bloginfo_box .share_btn .icon-twitter:before {
		font-size: 20px;
		margin-top: 11px;
	}
	.bloginfo_box .share_btn .icon-google:before {
		font-size: 16px;
		margin-top: 12px;
	}
}

@media screen and (max-width: 767px) {
	#posts {
		float: none;
		width: 100%;
	}
	.posts_list li {
		margin-bottom: 50px;
	}

	#blogDetail .post-header {
		margin-bottom: 20px;
	}
	#blogDetail .post-header h2 {
		font-size: 24px;
	}
	#blogDetail .post-header li.category,
	#blogDetail .post-header .post-meta li.date {
		float: none;
	}

	.bloginfo_box {
		display: block;
	}
	.bloginfo_box .blog_name {
		display: block;
		width: 100%;
		border-right: none;
		border-bottom: 1px solid #BFBEBD;
		box-sizing: border-box;
		padding: 20px;
		text-align: center;
	}
	.bloginfo_box .blog_name .icon-blog {
		display: inline-block;
		text-align: left;
	}
	.bloginfo_box .share_btn {
		display: block;
		width: 100%;
		padding: 20px 10px;
		box-sizing: border-box;
	}

	.navigation {
		margin-top: 35px;
	}
	.navigation ul {
		clear: both;
		padding-top: 20px;
	}
	.pagination {
		padding-top: 95px;
	}
	.pagination ul li .prev,
	.pagination ul li .next {
		top: 30px;
		width: 48%;
	}
}

@media screen and (max-width: 480px) {
	.posts_list li {
		float: none;
		width: 100%;
		margin-left: 0;
	}
	#blogDetail .post-header h2 {
		font-size: 22px;
		line-height: 1.4;
	}
	#blogDetail .post-content h3 {
		font-size: 20px;
		padding: 26px 5px 26px 20px;
		line-height: 1.4;
		margin: 35px 0 30px;
	}
	#blogDetail .post-content h4 {
		font-size: 19px;
	}
}


/*--------------------------------------
BLOGSIDE
--------------------------------------*/
.blogside {
	float: right;
	width: 28%;
}
.blogside h2.widgettitle {
	display: none;
}
.blogside h2 {
	font-weight: 600;
	font-style: normal;
	font-size: 18px;
	letter-spacing: 0.1em;
	line-height: 1;
	padding-bottom: 9px;
	margin-bottom: 24px;
	color: #384045;
	border-bottom: 2px solid #22201E;
}
.blogside h2 span {
	font-size: 14px;
	letter-spacing: 0;
	vertical-align: top;
	color: #707070;
	display: inline-block;
	margin-left: 10px;
	margin-top: 2px;
}
.blogside .searchBox {
	margin-bottom: 40px;
}
.blogside .searchBox label {
	display: none;
}
.blogside .searchBox #searchform {
	position: relative;
}
.blogside .searchBox #s {
	background: #F4F3F1;
	border: none;
	height: 55px;
	width: 100%;
	padding: 0 40px 0 14px;
	box-sizing: border-box;
	color: #72706E;
	font-weight: 400;
	font-style: normal;
	font-size: 13px;
}
.blogside .searchBox .icon-search:before {
	position: absolute;
	right: 16px;
	top: 50%;
	margin-top: -8px;
	color: #384045;
}
.blogside .searchBox #searchsubmit {
	background: none;
	border: none;
	position: absolute;
	right: 16px;
	width: 15px;
	height: 15px;
	top: 50%;
	margin-top: -8px;
	font-size: 0;
	cursor: pointer;
}
.blogside .categoryBox {
	margin-bottom: 50px;
}
.blogside .categoryBox ul li {
	border-bottom: 1px solid #CBCAC9;
	padding-bottom: 16px;
	margin-bottom: 18px;
}
.blogside .categoryBox ul li:last-child {
	margin-bottom: 0;
}
.blogside .categoryBox ul li a {
	font-weight: 600;
	font-style: normal;
	font-size: 18px;
	letter-spacing: 0.1em;
	line-height: 1;
	color: #384045;
	transition: all .3s ease;
	-webkit-transition: all .3s ease;
	text-transform: uppercase;
}
.blogside .categoryBox ul li a span {
	display: block;
	font-size: 14px;
	font-weight: 600;
	line-height: 1;
	transition: all .3s ease;
	-webkit-transition: all .3s ease;
}
.blogside .categoryBox ul li a:hover,
.blogside .categoryBox ul li a:hover span {
	color: #22A7A6;
}

.recentBox {
	margin-bottom: 50px;
}
.recentBox li {
	font-size: 13px;
	border-bottom: 1px solid #CBCAC9;
	padding-bottom: 13px;
	margin-bottom: 22px;
	line-height: 1.3;
}
.recentBox li:last-child {
	margin-bottom: 0;
}
.recentBox li .recent_thumbnail {
	float: right;
	width: 48px;
	height: 48px;
	margin-left: 12px;
	position: relative;
	overflow: hidden;
}
.recentBox li .recent_thumbnail a {
	display: block;
	width: 48px;
	height: 48px;
	line-height: 1;
}
.recentBox li .recent_thumbnail a span {
	display: block;
	width: 100%;
	height: 100%;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	transform: scale(1);
}
.recentBox li .recent_thumbnail a:hover {
	transform: scale(1.1);
}
.recentBox li h3 a {
	font-weight: 600;
	font-style: normal;
	color: #384045;
	transition: all .3s ease;
	-webkit-transition: all .3s ease;
}
.recentBox li h3 a:hover {
	color: #22A7A6;
}
.recent_date {
	font-size: 10px;
	margin-top: 5px;
	color: #384045;
}
.recentBox li .recent_date {
	margin-top: 5px;
}

.blogside .tagBox {
	margin-bottom: 40px;
}
.blogside .tagBox h2 {
	margin-bottom: 12px;
}
.blogside .tagBox .tagcloud li {
	display: inline-block;
	margin: 0 10px 10px 0;
	vertical-align: top;
}
.blogside .tagBox .tagcloud a {
	display: block;
	padding: 7px 10px;
	color: #72706E;
	font-size: 14px !important;
	line-height: 1;
	border: 1px solid #72706E;
	border-radius: 3px;
	transition: all .3s ease;
	-webkit-transition: all .3s ease;
	letter-spacing: 0;
}
.blogside .tagBox .tagcloud a:hover {
	color: #fff;
	background: #72706E;
	border: 1px solid #72706E;
}

.archiveBox {
	font-size: 14px;
	line-height: 1.4;
}
.archiveBox > ul > li {
	margin-top: 20px;
}
.archiveBox > ul > li:first-child {
	margin: 0;
}
.archiveBox ul li p {
	position: relative;
	margin: 0;
	padding-left: 20px;
	cursor: pointer;
	display: inline-block;
}
.archiveBox ul li p:visited {
	color: #384045;
}
.archiveBox ul li p:hover {
	text-decoration: underline;
}	
.archiveBox ul li p.acv_open {
	color: #384045;
	text-decoration: underline;
}
.archiveBox ul li p:before {
	display: block;
	content: '';
	position: absolute;
	top: 5px;
	left: 0;
	width: 8px;
	height: 8px;
	border-right: 2px solid #384045;
	border-bottom: 2px solid #384045;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	box-sizing: border-box;
}
.archiveBox ul li p.acv_open:before {
	top: 4px;
	left: 2px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.archiveBox ul li a {
	color: #384045;
}
.archiveBox ul li a:visited {
	color: #384045;
}
.archiveBox ul li a:hover {
	color: #384045;
	text-decoration: underline;
}
.archiveBox ul li a:active {
	color: #384045;
}
.archiveBox ul li ul {
	margin-left: 44px;
}
.archiveBox ul li li {
	margin-top: 10px;
}
.archiveBox ul li ul.hide {
	display: none;
}

@media screen and (max-width: 1000px) and (min-width: 768px) {
	.blogside {
		float: right;
		width: 30%;
	}
	.blogside h2 {
		font-size: 14px;
		letter-spacing: 0;
	}
	.blogside h2 span {
		font-size: 12px;
	}
}

@media screen and (max-width: 767px) {
	.blogside {
		float: none;
		width: 100%;
		border-top: 1px solid #5D5555;
		padding: 46px 0 0;
		box-sizing: border-box;
		margin-top: 35px;
	}
}


/* =====================================
■新着情報
===================================== */
.news-main .excerpt a {
	color: #87c972 !important;
	text-decoration: underline;
}
.news-main .excerpt a:hover {
	text-decoration: none;
}
.releaseDate {
	font-size: 1.2rem;
	text-align: right;
	color: #6d6d6d;
	margin-top: 5px;
}
.news-main .item + .item {
	margin-top: 60px;
}

/*--------------------------------------
詳細記事
--------------------------------------*/
.news-main .underTit_h4,
.news-main .underTit_h3 {
	margin-bottom: 10px !important;
}
.news-main .listBack {
	margin-bottom: 10px;
}
.news-main .listBack a {
	font-size: 1.4rem;
	color: #ffb200;
	text-decoration: underline;
	padding-left: 17px;
	position: relative;
}
.news-main .listBack a:hover{
	text-decoration: none;
}
.news-main .listBack a:before {
	content: "";
	width: 10px;
	height: 10px;
	border-style: solid;
	border-width: 1px 0px 0 1px;
	border-color: #ffb200;
	transform: rotate(-45deg);
	position: absolute;
	top: 6px;
	left: 2px;
	box-sizing: border-box;
}
.contributor {
	font-size: 80%;
	color: #999;
	text-align: right;
	margin-top: 50px;
}
.category .contributor {
	margin-top: 3px;
}


/* =====================================
■ブログ
===================================== */
.blog-main .contents {
	width: 78%;
}
.blog-main .excerpt a {
	color: #87c972 !important;
	text-decoration: underline;
}
.blog-main .excerpt a:hover {
	text-decoration: none;
}
.blog-main .item + .item {
	margin-top: 60px;
}
.blog-main .sidebar {
	width: 20%;
	background: #e6f4e1 !important;
	padding: 15px;
	box-sizing: border-box;
}
.blog-main .sidebar .widgetBox:not(:first-child) {
	margin-top: 20px;
}
.blog-main .sidebar .widget-title {
	font-size: 1.4rem;
	line-height: 1.3;
	color: #87c972 !important;
	border-left: 3px solid #87c972 !important;
	padding-left: 5px;
	margin-bottom: 10px;
}
.widgettitle {
	display: none !important;
}
.blog-main .sidebar form#searchform div {
	display: flex;
	width: 100%;
}
.blog-main .sidebar form#searchform label {
	display: none;
}
.blog-main .sidebar form#searchform input {
	width: calc(100% - 4.5rem);
	padding: 3px;
}
.blog-main .sidebar form#searchform input[type="submit"] {
	width: 4rem;
	margin-left: 0.5rem;
	border-radius: 6px;
	border: 1px solid #fff;
	background: #87c972;
	color: #fff;
}
.blog-main .sidebar form#searchform input[type="submit"] {
	cursor: pointer;
}
.blog-main .sidebar form#searchform input[type="submit"]:hover {
	opacity: 0.7;
}
.blog-main .sidebar ul li {
	line-height: 1;
	padding-left: 10px;
	position: relative;
}
.blog-main .sidebar ul li:not(:first-child) {
	margin-top: 5px;
}
.blog-main .sidebar ul li:before {
	content: "";
	width: 4px;
	height: 4px;
	background: #87c972;
	border-radius: 10px;
	position: absolute;
	top: 6px;
	left: 0;
}
.blog-main .sidebar ul li a {
	font-size: 85%;
	line-height: 1.4;
	text-decoration: none;
	color: #000;
}
.blog-main .sidebar ul li a:hover {
	text-decoration: underline;
}

@media screen and (min-width: 768px) {
	.blog-main {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
}

@media screen and (max-width: 1040px) and (min-width: 768px) {
	.blog-main .contents {
		width: 70%;
	}
	.blog-main .sidebar {
		width: 28%;
	}
}

@media screen and (max-width: 767px) {
	.blog-main .contents {
		width: 100%;
	}
	.blog-main .sidebar {
		width: 100%;
		margin-top: 30px;
	}
}

/*--------------------------------------
詳細記事
--------------------------------------*/
.blog-main .underTit_h4,
.blog-main .underTit_h3 {
	margin-bottom: 10px !important;
}
.blog-main .listBack {
	margin-bottom: 10px;
	width: 100%;
}
.blog-main .listBack a {
	font-size: 1.4rem;
	color: #ffb200;
	text-decoration: underline;
	padding-left: 17px;
	position: relative;
}
.blog-main .listBack a:before {
	content: "";
	width: 10px;
	height: 10px;
	border-style: solid;
	border-width: 1px 0px 0 1px;
	border-color: #ffb200;
	transform: rotate(-45deg);
	position: absolute;
	top: 6px;
	left: 2px;
	box-sizing: border-box;
}
.blog-main .listBack a:hover {
	text-decoration: none;
}


/* =====================================
■ページネーション
===================================== */
ul.page-numbers {
	display: flex;
	justify-content: center;
	column-gap: 10px;
	margin-top: 50px;
}
ul.page-numbers a {
	display: block;
	padding: 1px 10px 0px 10px;
	background: #eee;
	text-decoration: none;
	border-radius: 1px;
}
ul.page-numbers span.current {
	display: block;
	min-width: 30px;
	height: 28px;
	font-weight: 500;
	font-style: normal;
	font-size: 16px;
	background: #DDD4C3;
	color: #384045;
	line-height: 1;
	letter-spacing: 0.1em;
	border-radius: 0;
	position: relative;
	text-align: center;
	box-sizing: border-box;
	padding: 5px 9px 6px 9px !important;
	border: solid 1px #DCDCDC !important;
	border-top-color: rgb(220, 220, 220);
	border-right-color: rgb(220, 220, 220);
	border-bottom-color: rgb(220, 220, 220);
	border-left-color: rgb(220, 220, 220);
	border-top-color: rgb(220, 220, 220);
	border-right-color: rgb(220, 220, 220);
	border-bottom-color: rgb(220, 220, 220);
	border-left-color: rgb(220, 220, 220);
	border-color: #3390CA !important;
	border-radius: 3px !important;
	-moz-border-radius: 3px !important;
	-webkit-border-radius: 3px !important;
	color: #fff !important;
	margin-right: 3px !important;
	border-color: #202020 !important;
	background: #525252 !important;
	background: -moz-linear-gradient(top,#9F9F9F 1px,#6C6C6C 1px,#525252) !important;
	background: -webkit-gradient(linear,0 0,0 100%,color-stop(0.02,#9F9F9F),color-stop(0.02,#6C6C6C),color-stop(1,#525252)) !important;
}
ul.page-numbers a:hover {
	color: #fff !important;
	border-color: #202020 !important;
	background: #525252 !important;
	background: -moz-linear-gradient(top,#9F9F9F 1px,#6C6C6C 1px,#525252) !important;
	background: -webkit-gradient(linear,0 0,0 100%,color-stop(0.02,#9F9F9F),color-stop(0.02,#6C6C6C),color-stop(1,#525252)) !important;
}


/* =====================================
■サイトマップ
===================================== */
.menu-sitemap-container{
	max-width:1140px;
	margin:0 auto;
	padding: 0 20px;
}
ul.sitemap_ic {
	border-top: 1px dashed #707070;
}
ul.sitemap_ic > li {
	position: relative;
	border-bottom: 1px dashed #707070;
}
ul.sitemap_ic > li > a {
	display: block;
	padding: 10px 30px;
	position: relative;
	text-decoration: none;
}
ul.sitemap_ic > li > a:before {
	content: "";
	width: 10px;
	height: 10px;
	background: #afdda1;
	border-radius: 50%;
	position: absolute;
	left: 8px;
	top: 50%;
	margin-top: -5px;
}
ul.sitemap_ic > li > a:after {
	content: "";
	display: block;
	width: 8px;
	height: 8px;
	border-top: 2px solid #7A7A7A;
	border-right: 2px solid #7A7A7A;
	position: absolute;
	right: 10px;
	top: 50%;
	margin-top: -3px;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}
ul.sitemap_ic .sub-menu {
	margin: 0 0 0 2em;
}
ul.sitemap_ic .sub-menu li {
	border-top: 1px dashed #ccc;
}
ul.sitemap_ic .sub-menu li a {
	display: block;
	padding: 10px 0 10px 30px;
	position: relative;
}
ul.sitemap_ic .sub-menu li a:before {
	content: "";
	width: 10px;
	height: 2px;
	background: #22A7A6;
	position: absolute;
	left: 8px;
	top: 50%;
	margin-top: -2px;
}

/* =====================================
■お問い合わせ
===================================== */
.wrap_contact {
	max-width: 1140px;
	padding: 0 20px;
	box-sizing: border-box;
	margin: 0 auto;
}
.inquiryForm_message {
	text-align: center;
}
.step_list {
	width: 467px;
	margin: 0 auto 90px;
}
.step_list li {
	float: left;
	width: 100px;
	margin-left: 83px;
	text-align: center;
	font-size: 18px;
	line-height: 1;
	position: relative;
	color: #CBCAC9;
}
.step_list li:first-child {
	margin: 0;
}
.step_list li span {
	display: block;
	width: 54px;
	height: 54px;
	border-radius: 50%;
	text-align: center;
	line-height: 54px;
	margin: 0 auto 12px;
	background: #CBCAC9;
	color: #fff;
	font-size: 22px;
	font-weight: bold;
	letter-spacing: 0;
	position: relative;
}
.step_list li span:after {
	display: block;
	content: "";
	width: 130px;
	height: 1px;
	background: #CBCAC9;
	position: absolute;
	top: 50%;
	left: 54px;
}
.step_list li:last-child span:after {
	display: none;
}
.step_list li.current {
	color: #22201E;
}
.step_list li.current span {
	background: #2165C1;
}
.step_list li span.current:after {
	background: #2165C1;
}
.inquiryForm_message .step_catch {
	font-size: 16px;
	text-align: center;
	color: #373431;
	letter-spacing: 0.05em;
	margin-bottom: 44px;
}

.inquiryFormTable {
	border-top: 1px solid #707070;
	font-size: 16px;
	padding-top: 22px;
}
.inquiryFormTable dl {
	display: table;
	width: 100%;
	margin-bottom: 30px;
}
.inquiryFormTable dt,
.inquiryFormTable dd {
	display: table-cell;
	text-align: left;
	vertical-align: top;
}
.inquiryFormTable dt {
	border-right: none;
	position: relative;
	width: 29%;
	padding: 11px 80px 0 0;
	color: #2C2F30;
	font-weight: 600;
	letter-spacing: 0.1em;
	box-sizing: border-box;
}
.inquiryFormTable dd {
	box-sizing: border-box;
	position: relative;
	padding-right: 40px;
}
.wpcf7-form-control-wrap {
	display: block;
}
.inquiryFormTable input,
.inquiryFormTable textarea,
.inquiryFormTable select {
	display: block;
	width: 100%;
	box-sizing: border-box;
	padding: 13px 14px 14px;
	border: 1px solid #BFBEBD;
	background: #EBE9E7;
	color: #333;
	border-radius: 5px;
}
.inquiryFormTable select {
	position: relative;
	background: #ECECEC url(/wp-content/uploads/icon-select.png) no-repeat right center;
	background-size: contain;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
}
.inquiryFormTable select::-ms-expand {
	display: none;
}
.inquiryFormTable input[type="checkbox"] {
	display: none;
	/*display: inline-block;*/
	width: 32px;
	height: 32px;
	border: 0;
	position: relative;
	margin-right: 0;
	visibility: hidden; 
	z-index: 999;
	-webkit-appearance: none;
	background: none;
	box-sizing: border-box;
}
.inquiryFormTable .wpcf7-list-item {
	/* 	width: 100%;
	display: block; */
	margin: 10px 1.5em 10px 0;
	box-sizing: border-box;
}
.inquiryFormTable .wpcf7-list-item.last.has-free-text {
	display: block;
}
input.wpcf7-free-text {
	margin-top: 10px;
}
.wpcf7-list-item-label {
	position: relative;
}
span.wpcf7-list-item-label:before,
span.wpcf7-list-item-label:after {
	display: none;
}
.inquiryFormTable input[type="checkbox"] + span label.icon-check:before {
	content: "\e902";
	font-size: 25px;
	color: #BFBEBD;
	margin-right: 5px;
	vertical-align: middle;
}
.inquiryFormTable input[type="checkbox"]:checked+ span label.icon-check:before {
	content: "\e903";
	color: #2165C1;
}
.custom-wpcf7c-confirmed .verified_table.inquiryFormTable input.wpcf7-validates-as-required,
.invalid .verified_table.inquiryFormTable input.wpcf7-validates-as-required {
	border: 1px solid #C4000F;
	background: #fff;
	box-shadow: 0 0 5px rgba(196, 0, 15, 0.15);
}
.inquiryFormTable input.wpcf7-not-valid {
	border: 1px solid #D93636 !important;
	background: #FDD2D2 !important;
}
.inquiryFormTable .comment {
	display: block;
	color: #63696A;
	font-size: 13px;
	margin: 0.4em 0;
	letter-spacing: 0;
}
.inquiryFormTable .required {
	background: #D93636;
	color: #fff;
	font-size: 14px;
	font-weight: 700;
	padding-left: 0;
	width: 46px;
	height: 22px;
	border-radius: 10px;
	text-align: center;
	display: inline-block;
	line-height: 22px;
	position: absolute;
	top: 16px;
	right: 24px;
}
.inquiryFormTable .optional {
	color: #fff;
	font-size: 14px;
	font-weight: 700;
	padding-left: 0;
	width: 46px;
	height: 22px;
	background: #BFBEBD;
	border-radius: 10px;
	text-align: center;
	display: inline-block;
	line-height: 22px;
	position: absolute;
	top: 16px;
	right: 28px;
}

.inquiryFormTable .post_icon {
	position: absolute;
	z-index: 200;
	top: 10px;
	left: 16px;
}
.inquiryFormTable .post_item input {
	padding: 13px 14px 14px 40px;
}

.inquiryFormTable .btBox {
	text-align: center;
	margin: 60px 0 0;
}
.inquiryFormTable .btBox input[type="submit"] {
	background: #2F6BBC url(/wp-content/uploads/icon-arrow02.png) no-repeat 95% center !important;
	background-size: 6px 10px !important;
	border: none;
	width: 100%;
	color: #fff;
	display: block;
	line-height: 1.2;
	cursor: pointer;
	box-sizing: border-box;
	margin: 0 auto;
	border-radius: 0 !important;
	outline: 0px;
	-webkit-appearance: none;
	font-size: 26px;
	letter-spacing: 0.1em;
	padding: 29px 32px 28px 30px;
}
.inquiryFormTable .btBox input[type="submit"].disabled {
	background: #72706E url(/wp-content/uploads/icon-arrow01.png) no-repeat 96% center !important;
	background-size: 6px 10px !important;
	color: #BFBEBD;
	opacity: 1 !important;
	pointer-events: none;
	cursor: default;
	padding: 29px 40px 28px 40px;
}
.inquiryFormTable .btBox input[type="submit"].abled {
	background-position: 96% center !important;
	padding: 29px 40px 28px 40px;
}
.inquiryFormTable .wpcf7-back {
	width: 37.5% !important;
	color: #fff;
	background: #72706E url(/wp-content/uploads/icon-arrow02.png) no-repeat 92% center !important;
	background-size: 6px 10px !important;
	border: none;
	line-height: 1.2;
	cursor: pointer;
	box-sizing: border-box;
	margin: 0 auto;
	border-radius: 0 !important;
	outline: 0px;
	-webkit-appearance: none;
	font-size: 26px;
	letter-spacing: 0.1em;
	padding: 29px 30px 28px;
	float: left;
	text-align: left;
}
.inquiryFormTable .wpcf7-submit {
	width: 58.5% !important;
	float: right;
	text-align: left;
}
.inquiryFormTable .btBox input[type="submit"]:hover,
.inquiryFormTable .btBox input[type="button"]:hover {
	opacity: 0.8;
}

span.verify_icon {
	position: absolute;
	width: 25px;
	height: 25px;
	right: -42px;
	top: 13px;
	display: none;
}
.verified_table .wpcf7-validates-as-required:not(.wpcf7-not-valid)+.verify_icon {
	display: block;
}
.verified_table .wpcf7-validates-as-required:not(.wpcf7-not-valid)+.verify_icon:before {
	color: #2165C1;
	font-size: 25px;
	vertical-align: top;
}
.custom-wpcf7c-confirmed .confirm_table .wpcf7-validates-as-required:not(.wpcf7-not-valid)+.verify_icon {
	display: none;
}

.inquiryFormTable .wpcf7-not-valid-tip {
	color: #DE5050;
	font-weight: normal;
	display: block;
	font-size: 12px;
}

.file_btn {
	display: block;
	overflow: hidden;
	position: relative;
	background: #807B7B;
	color: #fff;
	width: 123px;
	height: 30px;
	font-size: 14px;
	line-height: 30px;
	text-align: center;
	cursor: pointer;
	margin-top: 13px;
}
.file_btn .wpcf7-form-control-wrap {
	opacity: 0;
	filter: progid:DXImageTransform.Microsoft.Alpha(opacity=0);
	position: absolute;
	right: 0;
	top: 0;
	margin: 0;
	width: 100%;
	height: 30px;
}
div.wpcf7 input[type="file"] {
	padding: 0;
	border: 0;
	position: absolute;
	right: 0;
	top: 0;
	width: 100%;
	height: 30px;
}
.result_txt {
	display: block;
	word-break: break-all;
	white-space: pre-wrap;
}

.custom-wpcf7c-confirmed .confirm_table input[type="text"],
.custom-wpcf7c-confirmed .confirm_table input[type="tel"],
.custom-wpcf7c-confirmed .confirm_table input[type="email"],
.custom-wpcf7c-confirmed .confirm_table textarea,
.custom-wpcf7c-confirmed .confirm_table select,
.custom-wpcf7c-confirmed .confirm_table input[type="checkbox"],
.custom-wpcf7c-confirmed .confirm_table input[type="date"] {
	display: none;
}
.custom-wpcf7c-confirmed .confirm_table .required,
.custom-wpcf7c-confirmed .confirm_table .optional,
.custom-wpcf7c-confirmed .confirm_table span.comment,
.custom-wpcf7c-confirmed .confirm_table .wpcf7-list-item-label,
.custom-wpcf7c-confirmed .confirm_table .wpcf7-form-control-wrap.your-email_confirm {
	display: none;
}
.custom-wpcf7c-confirmed .confirm_table .wpcf7-list-item {
	display: block;
	padding-left: 0;
	margin: 0;
}
.custom-wpcf7c-confirmed .confirm_table .wpcf7-list-item.last.has-free-text .result_txt {
	display: inline-block;
	margin-right: 15px;
}
.custom-wpcf7c-confirmed .confirm_table dl {
	margin-bottom: 10px;
}
.custom-wpcf7c-confirmed .confirm_table dt,
.custom-wpcf7c-confirmed .confirm_table dd {
	padding: 0;
}
.custom-wpcf7c-confirmed .confirm_table .post_icon {
	top: 0;
	left: 0;
}
.custom-wpcf7c-confirmed .confirm_table .post_item span.result_txt {
	padding-left: 20px;
}
.wpcf7-mail-sent-ok,
div.wpcf7 .ajax-loader,
div.wpcf7-validation-errors {
	display: none !important;
}

.inquiryFormTable .privacyWrap {
	height: 300px;
	overflow-y: scroll;
	overflow-x: hidden;
	width: 100%;
	border: 1px solid #bfbebd;
	padding: 20px;
	box-sizing: border-box;
	background: #ebe9e7;
	border-radius: 5px;
}
.custom-wpcf7c-confirmed .confirm_table .privacy {
	display: none;
}

@media screen and (max-width: 1060px) {
	.inquiryFormTable dt {
		width: 35%;
	}
}

@media screen and (max-width: 767px) {
	.step_list {
		width: 400px;
		margin: 0 auto 60px;
	}
	.step_list li {
		margin-left: 50px;
	}
	.inquiryFormTable dl {
		display: block;
		margin-bottom: 20px;
	}
	.inquiryFormTable dt,
	.inquiryFormTable dd {
		display: block;
		width: 100%;
		box-sizing: border-box;
	}
	.inquiryFormTable dt {
		padding: 0;
		margin-bottom: 8px;
	}
	.inquiryFormTable .wpcf7-list-item {
		margin: 5px 1.5em 5px 0;
	}
	.inquiryFormTable .required,
	.inquiryFormTable .optional {
		display: inline-block;
		position: static;
		top: initial;
		right: initial;
		margin: -2px 0 0 20px;
		vertical-align: middle;
	}
	.inquiryFormTable .btBox {
		margin: 50px 0 0;
	}
	.inquiryFormTable .btBox input[type="submit"],
	.inquiryFormTable .wpcf7-back {
		width: 100% !important;
		float: none;
		font-size: 20px;
		padding: 29px 20px 28px 20px;
		box-sizing: border-box;
		background-position: 96% center !important;
		text-align: center;
	}
	.inquiryFormTable .btBox input[type="submit"].disabled,
	.inquiryFormTable .btBox input[type="submit"].abled {
		padding: 29px 20px 28px 20px;
	}
	.inquiryFormTable .wpcf7-back {
		margin-bottom: 15px;
	}
	.file_btn {
		margin-top: 0;
	}
	.custom-wpcf7c-confirmed .confirm_table dt {
		margin-bottom: 0;
	}
}

@media screen and (max-width: 480px) {
	.step_list {
		width: 270px;
	}
	.step_list li {
		width: 70px;
		margin-left: 30px;
		font-size: 16px;
	}
	.step_list li span:after {
		width: 60px;
	}
	.inquiryForm_message .step_catch {
		font-size: 12px;
		letter-spacing: 0;
	}
	.inquiryFormTable .btBox input[type="submit"],
	.inquiryFormTable .wpcf7-back {
		font-size: 16px;
		letter-spacing: 0.1em;
	}
}


/* =====================================
■UNDER
===================================== */
/* -------------------------------------
Pagename
------------------------------------- */
#pagename {
	min-height: 400px;
	position: relative;
	z-index: 2;
}
#pagename {
  min-height: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 102px;
  background: rgba(135, 201, 114, 0.3);
  padding: 25px 0 30px;
  text-align: left;
  box-sizing: border-box;
  position: relative;
}
#pagename:before, #pagename:after {
  content: "";
  width: 100%;
  height: 1px;
  position: absolute;
  left: 0;
  z-index: 1;
}
#pagename:before {
  background: rgba(255, 255, 255, 0.3);
  bottom: 11px;
}
#pagename:after {
  background: rgba(255, 255, 255, 0.5);
  bottom: 8px;
}
#pagename .inner {
	position: absolute;
	width: 100%;
	bottom: 0;
}
#pagename .parallaxBox {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 128px;
	background: rgba(175, 221, 161, 0.8);
	padding: 30px 0;
	box-sizing: border-box;
	position: relative;
	z-index: 2;
}
#pagename .parallaxBox:before,
#pagename .parallaxBox:after {
	content: "";
	width: 100%;
	height: 1px;
	position: absolute;
	left: 0;
	z-index: 1;
}
#pagename .parallaxBox:before {
	background: rgba(255, 255, 255, 0.3);
	bottom: 11px;
}
#pagename .parallaxBox:after {
	background: rgba(255,255,255,0.5);
	bottom: 8px;
}
#pagename h2 {
	font-size: 3.5rem;
	letter-spacing: 2px;
	line-height: 1.2;
	text-shadow: 1px 1px 1px rgba(255, 255, 255, 0.6);
	color: #000;
	font-family: "Noto Serif JP", serif;
}
#pagename h2 sub {
	display: block;
	font-size: 1.5rem;
	padding-left: 5px;
	margin-top: 3px;
	font-family: Meiryo, "メイリオ", 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Osaka, 'MS PGothic', arial, helvetica, sans-serif;
}

/*nobg*/
#pagename.nobg {
	min-height: auto;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 102px;
	background: #afdda1;
	padding: 20px;
	text-align: center;
	box-sizing: border-box;
}
#pagename.nobg:before,
#pagename.nobg:after {
	content: "";
	width: 100%;
	height: 1px;
	position: absolute;
	left: 0;
	z-index: 1;
}
#pagename.nobg:before {
	background: rgba(255, 255, 255, 0.3);
	bottom: 11px;
}
#pagename.nobg:after {
	background: rgba(255,255,255,0.5);
	bottom: 8px;
}

@media screen and (max-width: 1040px)and (min-width: 768px) {
	#pagename {
		min-height: 250px;
	}
	#pagename .parallaxBox {
		min-height: 88px;
		padding: 10px 0 15px;
	}
}

@media screen and (max-width: 767px) {
	#pagename {
		min-height: 200px;
	}
	#pagename .parallaxBox {
		min-height: 71px;
		padding: 17px 0 13px;
	}
	#pagename .parallaxBox .container {
		padding: 0 10px;
	}
	#pagename h2 {
		font-size: 2rem;
		letter-spacing: 0;
	}
	#pagename h2 sub {
		font-size: 1rem;
	}

	/* nobg */
	#pagename.nobg {
		min-height: 70px;
		padding: 15px 10px 20px;
	}
}

/* -------------------------------------
Bread
------------------------------------- */
#bread {
	width: 100%;
	background: #87c972;
	font-size: 1.6rem;
	line-height: 1.25;
	padding: 0 10px;
	box-sizing: border-box;
}
#bread li {
	display: inline-block;
	font-size: 1.1rem;
	line-height: 1.2;
	color: #000;
	vertical-align: middle;
	/* 	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	max-width: 120px; */
}
#bread li + li:before {
	padding-right: .3em;
	content: ">";
}
#bread li a {
	color: #000;
	vertical-align: baseline;
	text-decoration: underline;
}
#bread li a:hover {
	text-decoration: none;
}

@media screen and (max-width: 767px) {
	#bread {
		padding: 3px 15px;
	}
	#bread ul {
		line-height: 1;
	}
}

/*--------------------------------------
TITLE
--------------------------------------*/
.underTit_h3 {
	margin-bottom: 30px !important;
}
.underTit_h3 h3 {
	background: #afdda1;
	border-top: 2px solid #afdda1;
	font-size: 2.8rem;
	line-height: 1.3;
	color: #000;
	text-align: center;
	padding: 15px 9px 13px;
	position: relative;
	font-family: "Noto Serif JP", serif;
}
.underTit_h3 h3:before {
	content: "";
	width: 100%;
	height: 2px;
	background: #fff;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 2;
}
.underTit_h4 {
	margin-bottom: 30px !important;
}
.underTit_h4 h4 {
	font-size: 2.6rem;
	line-height: 1.3;
	padding: 5px 10px 0.6em;
	position: relative;
	font-family: "Noto Serif JP", serif;
}
.underTit_h4 h4:before {
	content: "";
	width: 5%;
	height: 2px;
	background: #87c972;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 2;
}
.underTit_h4 h4:after {
	content: "";
	height: 2px;
	width: 100%;
	background: #afdda1;
	position: absolute;
	bottom: 0;
	right: 0;
}
.underTit_h4 h4 a {
	display: inline-block;
	text-decoration: none;
	color: #000;
	padding-left: 20px;
	position: relative;
}
.underTit_h4 h4 a:before {
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 4px 0 4px 10px;
	border-color: transparent transparent transparent #87c972;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate(0, -50%);
}
.underTit_h4 h4 a:after {
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 4px 0 4px 3px;
	border-color: transparent transparent transparent #ffffff;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate(0, -50%);
}
.underTit_h5 {
	margin-bottom: 25px !important;
}
.underTit_h5 h5 {
	font-size: 2.3rem;
	padding-left: 20px;
	line-height: 1.3;
	margin-bottom: 5px;
	position: relative;
}
.underTit_h5 h5:before {
	content: "";
	width: 6px;
	height: 100%;
	background: #87c972;
	-webkit-border-radius: 6px;
	position: absolute;
	left: 0;
	top: 0;
}
.underTit_h5 h5:after {
	content: "";
	width: 100%;
	height: 1px;
	background: #ddd;
	position: absolute;
	bottom: -5px;
	left: 0;
}
.number {
	display: inline-block;
	vertical-align: top;
	width: 33px;
	height: 33px;
	background: #A09074;
	border-radius: 50%;
	font-family: "Zen Old Mincho", serif;
	font-weight: 700;
	font-style: normal;
	font-size: 20px;
	line-height: 31px;
	letter-spacing: 0;
	color: #fff;
	text-align: center;
	margin: -3px 10px 0 0;
	text-indent: 0;
}
.number.bgGreen {
	background: #22A7A6;
}
div:not(.graphicBox) .elementor-image-box-title .number {
	margin-top: 4px;
}
.step_number {
	display: inline-block;
	vertical-align: top;
	width: 83px;
	height: 33px;
	background: #A09074;
	border-radius: 50px;
	font-family: "Zen Old Mincho", serif;
	font-weight: 700;
	font-style: normal;
	font-size: 20px;
	line-height: 31px;
	letter-spacing: 0.05em;
	color: #fff;
	text-align: center;
	margin: 3px 10px 0 0;
	text-indent: 0;
}

@media screen and (max-width: 1040px) {
	.underTit_h3.elementor-section.elementor-section-boxed > .elementor-container {
		padding: 0;
	}
}

@media screen and (max-width: 767px) {
	.underTit_h3 {
		margin-bottom: 15px !important;
	}
	.underTit_h3 h3 {
		font-size: 1.8rem;
		padding: 10px 5px 8px;
	}
	.underTit_h4 {
		margin-bottom: 15px !important;
	}
	.underTit_h4 h4 {
		font-size: 1.7rem;
		padding: 0 0px 0.3em;
	}
	.underTit_h5 {
		margin-bottom: 17px !important;
	}
	.underTit_h5 h5 {
		font-size: 2rem;
		padding-left: 14px;
	}
}


/*--------------------------------------
Photo
--------------------------------------*/
.gallery .elementor-inner-section:not(:last-child) {
	margin-bottom: 35px;
}
.gallery .pic {
	margin-bottom: 20px;
}
.gallery .heading {
	margin-bottom: 15px;
}
.gallery .elementor-heading-title {
	font-family: "Zen Old Mincho", serif;
	font-weight: 900;
	font-style: normal;
	font-size: 20px;
	letter-spacing: 0.15em;
	line-height: 1.6;
	text-align: center;
	color: #67594D;
}
.gallery .txt {
	font-size: 15px;
}

/* 3列
--------------------------------------*/
.gallery_3column .elementor-inner-section > .elementor-container > .elementor-row {
	row-gap: 35px;
	column-gap: 30px;
}

/* 4列
--------------------------------------*/
.gallery_4column .elementor-inner-section > .elementor-container > .elementor-row {
	row-gap: 35px;
	column-gap: 22px;
}

@media screen and (min-width: 768px) {
	.gallery .elementor-inner-section > .elementor-container > .elementor-row {
		flex-wrap: nowrap;
	}
}

@media screen and (max-width: 1024px) and (min-width: 768px) {
	.gallery .elementor-heading-title {
		font-size: 18px;
		letter-spacing: 0.1em;
	}

	/* 3列
	--------------------------------------*/
	.gallery_3column .elementor-inner-section > .elementor-container > .elementor-row {
		column-gap: 22px;
	}
}


/* -------------------------------------
■3列
------------------------------------- */
.underTit_h4.sizeM h4 {
	padding: 5px 0 5px 0;
}

@media screen and (min-width: 768px) {
	.underTit_h4.sizeM,
	.underTit_h4.mb20 {
		margin-bottom: 20px !important;
	}
	.underTit_h4.sizeM h4 {
		font-size: 2.1rem;
	}
	.underTit_h5.mb15 {
		margin-bottom: 15px !important;
	}
}
/* -------------------------------------
■地图 箭头
------------------------------------- */
.map_arrowR a {
	margin-top: 5px;
	font-size: 80%;
	position: relative;
	padding-right: 15px;
	color: #999;
}
.map_arrowR a:before {
	position: absolute;
	content: "";
	top: 6px;
	right: 2px;
	width: 8px;
	height: 8px;
	border-width: 2px 2px 0 0;
	border-style: solid;
	border-color: #084698;
	transform: rotate(-45deg);
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
}
/* -------------------------------------
■line_A
------------------------------------- */
.line_A {
	border-bottom: 1px solid #ccc;
}
/* -------------------------------------
■about
------------------------------------- */
.about_txt01 p {
	background: #e6f4e1 !important;
	text-align: center;
	padding: 20px 0;
}
.about_txt02 p {
	border: 1px solid #87c972;
	text-align: center;
	padding: 20px 0;
}