@charset "utf-8";

/*
Theme Name: genova_tpl
*/


/* =====================================
BASE
===================================== */

body {
	font-family: "ヒラギノ角ゴ W3 JIS2004", 'メイリオ', 'Meiryo', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Hiragino Sans, 'Osaka', 'MS PGothic', -apple-system, BlinkMacSystemFont, arial, helvetica, sans-serif;
	color: #000C36;
	font-size: 1.5rem;
	font-weight: 400;
	letter-spacing: 0.1em;
	line-height: 1.9;
	overflow-wrap: break-word;
	word-wrap: break-word;
	word-break: normal;
}

body#body_frontpage .elementor-widget:not(:last-child) {
	margin-bottom: 0;
}

a {
	text-decoration: underline;
	color: #000C36;
}

strong {
	font-weight: normal;
	font-family: "ヒラギノ角ゴ W7 JIS2004";
}

.wpcf7 form.sent .wpcf7-response-output {
	display: none !important;
}

.elementor-column-gap-default > .elementor-row > .elementor-column > .elementor-element-populated > .elementor-widget-wrap {
	padding: 0px !important;
}

@media screen and (max-width: 767px) {
	html {
		font-size: 2.4vw;
	}
}

.blog_con_in .post-content h3 {
	background: #F7F9FA;
	font-size: 2rem;
	padding: 30px;
	border-top: 5px solid #4359A6;
	margin-bottom: 30px;
	margin-top: 30px;
	line-height: 1.5;
}

.blog_con_in .post-content h4 {
	font-size: 1.8rem;
	border-bottom: 5px solid #4359A6;
	padding-bottom: 20px;
	line-height: 1.4;
	margin-bottom: 30px;
	margin-top: 30px;
}

@media screen and (max-width: 767px) {
	.blog_con_in .post-content h3 {
		font-size: 1.8rem !important;
		margin-bottom: 5vw;
		margin-top: 5vw;
		padding: 3vw;
	}
	.blog_con_in .post-content h4 {
		font-size: 1.8rem !important;
		margin-bottom: 5vw;
		margin-top: 5vw;
		padding-bottom: 3vw;
	}
}

.elementor:not(.elementor-bc-flex-widget) .elementor-widget-wrap {
	display: block !important;
}

.elementor-widget-wrap {
	flex-wrap: inherit !important;
	-ms-flex-line-pack: inherit !important;
	align-content: inherit !important;
}

.elementor-widget .elementor-icon-list-item,
.elementor-widget .elementor-icon-list-item a {
	align-items: flex-start !important;
}

.elementor-element .elementor-icon-list-icon i:before {
	color: #6DC8EB !important;
	line-height: 1.5em;
}

.kome {
	padding-left: 1em;
	text-indent: -1em
}

.hosoku {
	font-size: 1.3rem !important;
}

::-webkit-input-placeholder {
	/* WebKit, Blink, Edge */
	color: #ccc;
}

:-ms-input-placeholder {
	/* Internet Explorer 10-11 */
	color: #ccc;
}

::placeholder {
	/* Others */
	color: #ccc
}


/* =====================================
Layout
===================================== */


/*--------------------------------------
header
--------------------------------------*/

#header {
	background: #ffffff;
}

#header .wrap,
.gnav,
.gnav .menu > li {
	height: 80px;
}

.post-header {
	margin-top: 80px;
}

@media screen and (max-width: 960px) {
	.post-header,
	.mainimage_wrap {
		margin-top: 0;
	}
}


/* logo */

#header .logo {
	width: 30.7%;
	float: left;
	font-size: 1.2em;
	font-weight: bold;
	margin-left: 30px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	text-align: center;
	justify-content: space-between;
}

#header .logo img {
	width: 100%;
	max-width: 296px;
}


/* header right box */

#header .right .right_left,
#header .right .right_right {
	width: 180px;
}

#header .right .right_right p + p {
	margin-top: 1px;
}

#header .right img {
	width: 180px;
	max-width: 100%;
	display: block;
}

#header .right .right_left {
	float: left;
}


/* gnav */

.gnav {
	position: absolute;
	right: 20px;
	top: 0;
}

.gnav .menu {
	font-size: .8em;
	list-style: none;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}

.gnav .menu > li {
	position: relative;
	z-index: 2;
	float: left;
	text-align: center;
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: space-between;
	letter-spacing: 0.1em;
}

.gnav .menu > li > a {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
	flex-direction: column;
	font-size: 1.5rem;
	text-decoration: none;
	padding: 20px 20px 0;
	transition: 0.5s ease;
	cursor: pointer;
	line-height: 1.5;
	letter-spacing: 0.1em;
	position: relative;
	color: #000C36;
	opacity: 1;
	transition: 0.5s ease;
}

.gnav .menu > li > a > span {
	color: #6DC8EB;
	line-height: 1.4;
	font-size: 1.2rem;
	padding-top: 3px;
	/* position: absolute; */
	/* bottom: 10px; */
	/* left: 0; */
	width: 100%;
	letter-spacing: 0;
	font-family: 'Montserrat';
	opacity: 1;
	transition: 0.5s ease;
}

#menu-g_nav .sub-menu li {
	width: 100%;
	border-top: 1px solid #ffffff;
	text-align: left;
}

#menu-g_nav .sub-menu li a {
	padding: 12px 10px 14px 29px;
	text-decoration: none;
	/* color: #716153; */
	/* font-weight: 700; */
}

#menu-g_nav .sub-menu li:first-child {
	border: none;
	/* border-radius: 10px 10px 0 0; */
	overflow: hidden;
}

#menu-g_nav .sub-menu li:last-child {
	/* border-radius: 0 0 10px 10px; */
	overflow: hidden;
}

.gnav .in_logo {
	width: 100%;
	padding: 0 70px 0 3vw;
	background: #ffffff;
	height: 70px;
	box-sizing: border-box;
	position: relative;
}

.gnav .in_logo img {
	display: block;
	max-width: 210px;
}

.gnav_bottom {
	background: #66CC99;
	padding: 6vw 6vw 8vw 5vw;
	color: #fff;
	letter-spacing: 0.1em;
	text-align: center;
	font-size: 2rem;
	position: relative;
	box-sizing: border-box;
}

.gnav_bottom:before {
	background: url(./img/fix_bg.jpg) center top no-repeat;
	width: 100%;
	height: 22vw;
	background-size: cover;
	position: absolute;
	content: "";
	left: 0;
	top: 0;
}

.gnav_bottom * {
	position: relative;
}

.gnav_bottom .btn {
	margin-top: 11vw;
}

.gnav_bottom .btn img {
	width: 100%;
}

@media screen and (min-width: 961px) {
	.gnav_bottom .txt {
		font-family: "秀英明朝 L", Shuei Mincho L, serif;
	}
	.gnav_bottom .txt02 {
		font-size: 1.6rem;
	}
	.gnav_bottom ul {
		display: flex;
		flex-wrap: wrap;
		align-items: stretch;
		justify-content: space-between;
	}
	.gnav_bottom li {
		display: flex;
		flex-wrap: wrap;
		align-items: stretch;
		justify-content: space-between;
		width: 33%;
	}
	.gnav_bottom img {
		width: 100%;
	}
	.gnav .menu > li:first-child > a {
		/* color: #749168; */
		/* line-height: 1.4; */
		/* font-size: 1rem; */
		/* position: absolute; */
		/* bottom: 10px; */
		/* left: 0; */
		/* width: 100%; */
		/* letter-spacing: 1px; */
		/* padding-top: 25px; */
	}
	.gnav .menu > li:first-child > a:before {
		/* background: url(./img/h_home.svg) center center no-repeat; */
		/* position: absolute; */
		/* content: ""; */
		/* width: 18px; */
		/* height: 19px; */
		/* top: 27px; */
		/* left: 50%; */
		/* -webkit-transform: translate(-50%, 0%); */
		/* transform: translate(-50%, 0%); */
	}
	.gnav .menu > li > a:hover {
		opacity: 1;
		transition: 0.5s ease;
		background: #4359A6;
		color: #fff;
	}
	.gnav .menu > li > a:hover span {
		opacity: 1;
		transition: 0.5s ease;
		color: #fff;
	}
	#menu-g_nav .sub-menu {
		position: absolute;
		left: 50%;
		-webkit-transform: translate(-50%, 0%);
		transform: translate(-50%, 0%);
		z-index: 1;
		width: 250px;
		background: #e5f6df;
		list-style: none;
		padding: 0;
		-webkit-transition-duration: .7s;
		-ms-transition-duration: .7s;
		-o-transition-duration: .7s;
		transition-duration: .7s;
		opacity: 0;
		filter: alpha(opacity=0);
		-ms-filter: "alpha( opacity=0 )";
		/* border-radius: 10px; */
		-webkit-box-shadow: 0 3px 5px rgba(0, 0, 0, 0.1);
		-moz-box-shadow: 0 3px 5px rgba(0, 0, 0, 0.1);
		box-shadow: 0 3px 5px rgba(0, 0, 0, 0.1);
		top: 100%;
	}
	#menu-g_nav .sub-menu li a {
		position: relative;
		font-size: 1.4rem;
		line-height: 1.5;
		transition: 0.5s ease;
		letter-spacing: 0;
	}
	#menu-g_nav .sub-menu li a:before {
		position: absolute;
		top: 50%;
		left: 17px;
		-webkit-transform: translate(0%, -50%);
		transform: translate(0%, -50%);
		display: block;
		font-family: 'icomoon';
		speak: none;
		line-height: 1;
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
		content: "\e910";
		color: #6fbe53;
		font-size: 10px;
	}
	#menu-g_nav .sub-menu li a:hover {
		background: #a1e38a;
		transition: 0.5s ease;
	}
	#menu-g_nav .sub-menu:before {
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 0 10px 10px 10px;
		border-color: transparent transparent #e5f6df transparent;
		position: absolute;
		content: "";
		top: -10px;
		left: 50%;
		-webkit-transform: translate(-50%, 0%);
		transform: translate(-50%, 0%);
		z-index: 99;
	}
}

@media screen and (max-width: 960px) {
	#header .toggleMenu.active:before {
		content: "CLOSE";
	}
}

.toggleMenu {
	width: 34px;
	height: 26px;
	background: #ffffff;
	text-align: center;
	color: #fff;
	margin-right: 6vw;
}

.menu-trigger {
	position: relative;
	width: 33px;
	height: 25px;
	margin: 0 auto 0 auto;
}

.menu-trigger span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 3px;
	background-color: #4359A6;
	border-radius: 4px;
}

.menu-trigger span:nth-of-type(1) {
	top: -2px;
}

.menu-trigger span:nth-of-type(2) {
	top: 11px;
	display: none;
}

.menu-trigger span:nth-of-type(3) {
	bottom: 13px;
}

.toggleMenu.active .menu-trigger span:nth-of-type(1) {
	top: -6px;
}

.toggleMenu.active .menu-trigger span:nth-of-type(3) {
	bottom: 10px;
}

@media screen and (max-width: 767px) {
	#header {
		background: #ffffff;
		z-index: 9999;
		width: 100%;
		position: relative;
	}
	#header .logo {
		min-width: inherit;
		width: 100%;
		margin-left: 3vw;
		float: none;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: space-between;
	}
	#header .logo img {
		max-width: 210px;
	}
	#header .toggleMenu:before {
		margin-top: 17px;
	}
	.gnav .menu {
		margin: 9vw 6vw;
	}
	.gnav_bottom .txt {
		font-size: 2.6rem;
	}
	.gnav_bottom .txt02 {
		font-size: 1.6rem;
		margin-top: 2vw;
	}
	.h_contact_box {
		margin-top: 5vw;
	}
	.h_contact_box {}
}

@media screen and (max-width: 960px) {
	.gnav {
		background: #F4FCFF;
	}
	#header .toggleMenu:before {
		position: absolute;
		content: "MENU";
		color: #4359A6;
		font-size: 12px;
		bottom: 11px;
		left: 0;
		width: 100%;
		text-align: center;
		font-family: 'Montserrat';
	}
	#header .wrap {
		margin: 0 auto;
		height: 70px;
	}
	.gnav .menu > li:first-child > a {
		background: no-repeat;
		/* font-size: 2.1rem; */
		line-height: 1.4;
	}
	.gnav .menu {
		height: inherit;
		background: #ffffff;
		margin: auto;
		margin: 5vw 5vw 10vw;
		border-radius: 0;
		overflow: hidden;
		/* border-bottom: 1px solid #220201; */
	}
	.gnav .menu > li.menu-item-has-children > a:after {
		width: 2vw;
		height: 2vw;
		border-right: 2px solid #569B43;
		border-bottom: 2px solid #569B43;
		position: absolute;
		content: "";
		right: 4vw;
		top: 50%;
		-webkit-transform: translate(-50%, -50%) rotate(45deg);
		transform: translate(-50%, -50%) rotate(45deg);
		transition: 0.5s;
	}
	.gnav .menu > li > a {
		display: block;
		font-size: 4.3vw;
		padding: 5vw 10vw 5vw 4vw !important;
		width: 100%;
		text-align: left;
		line-height: 1.4;
		min-height: inherit;
		background: none !important;
	}
	.gnav .menu > li > a > span {
		display: none;
	}
	.gnav .menu > li:first-child > a em {
		display: block;
	}
	.gnav .menu > li:not(:last-child) {
		border-bottom: 2px solid #F4FCFF;
	}
	#menu-g_nav > li .sub-menu {
		position: relative;
		left: inherit;
		width: 100%;
		top: 0;
		opacity: 1;
		transition: none;
		background: #569B43;
	}
	#menu-g_nav .sub-menu {
		width: 100%;
		position: relative;
		top: inherit;
		left: inherit;
		font-size: 1.7rem;
	}
	#menu-g_nav .sub-menu li {
		text-align: left;
		border-top: 1px solid #fdfced !important;
	}
	#menu-g_nav .sub-menu li a {
		padding: 4vw 5vw 4vw 10vw;
		text-align: left;
		/* padding-left: 10vw; */
		font-size: 4.3vw;
		position: relative;
		color: #fff;
	}
	#menu-g_nav .sub-menu li a:before {
		width: 1.4vw;
		height: 1.4vw;
		border-right: 2px solid #076f4b;
		border-bottom: 2px solid #076f4b;
		position: absolute;
		content: "";
		left: 5vw;
		top: 50%;
		-webkit-transform: translate(-50%, -50%) rotate(-45deg);
		transform: translate(-50%, -50%) rotate(-45deg);
		display: none;
	}
	.h_contact_box img {
		display: block;
	}
	.h_contact_box {
		margin-top: 5vw;
	}
	.h_contact_box img {
		margin-left: auto;
		margin-right: auto;
	}
	.post-header {
		margin-top: 0 !important;
	}
}

@media screen and (max-width: 960px) and (min-width: 768px) {
	#header {
		/* background: #ffffff; */
		position: relative;
		left: 0;
		z-index: 9999;
		width: 100%;
		height: 80px;
	}
	#header .logo {
		min-width: inherit;
		width: 70%;
		width: -webkit-calc(100% - 90px);
		width: calc(100% - 90px);
		margin-left: 5vw;
		float: none;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: space-between;
	}
	#header .wrap {
		height: 80px;
	}
	.gnav .menu > li > a {
		padding: 14px 40px 14px 20px !important;
		font-size: 2rem !important;
	}
	.gnav .menu > li.menu-item-has-children > a:after {
		width: 10px;
		height: 10px;
		right: 15px;
		margin-top: -3px;
	}
	.gnav_bottom {
		padding: 40px 20px 10px 20px;
	}
	.gnav_bottom:before {
		height: 110px;
	}
	.gnav .in_logo {
		height: 80px;
		padding: 0;
		position: relative;
	}
	.gnav .in_logo a {
		top: 50%;
		left: 20px;
		-webkit-transform: translate(0%, -50%);
		transform: translate(0%, -50%);
		display: block;
		position: absolute;
	}
	.gnav_in {
		margin: 0;
	}
	.gnav .in_logo img,
	#header .logo img {
		width: 280px;
		max-width: inherit;
	}
	#menu-g_nav .sub-menu li a {
		font-size: 2rem !important;
		padding: 10px 40px;
	}
}

@media screen and (min-width: 768px) and (max-width: 1120px) {
	#menu-g_nav .sub-menu li a:before {
		left: 20px;
	}
}

@media screen and (max-width: 1270px) and (min-width: 768px) {
	#header .right .right_left,
	#header .right .right_right {
		margin-right: 10px;
		flex-direction: column;
		width: 120px;
	}
	.gnav {}
	.gnav .menu > li > a {
		font-size: 1.3rem;
		padding-left: 9px;
		padding-right: 9px;
		letter-spacing: 0.1em;
	}
	#header .logo {
		margin-left: 20px;
		width: 26%;
	}
	#menu-g_nav .sub-menu {
		width: 180px;
	}
	#menu-g_nav .sub-menu li a {}
}


/*--------------------------------------
Mainimage
--------------------------------------*/

#mainimage {
	margin-top: 80px;
	/* background: #4E1E05; */
	margin-bottom: -1px;
}

#mainimage:before {
	/* position: absolute; */
	/* content: ""; */
	/* background: url(./img/mv_txt_pc.png) center center no-repeat; */
	/* width: 606px; */
	/* height: 90%; */
	/* z-index: 100; */
	/* background-size: contain; */
	/* left: 45%; */
	/* left: -webkit-calc(50% - 66px); */
	/* left: calc(50% - 66px); */
	/* top: 50%; */
	/* -webkit-transform: translate(0%, -50%); */
	/* transform: translate(0%, -50%); */
}

#mainimage .bx-pager-item a {
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	display: inline-block;
	height: 8px;
	width: 8px;
	background: #fff;
	border-radius: 50%;
	line-height: 1;
}

#mainimage .bx-pager.bx-default-pager {
	z-index: 100;
	position: absolute;
	bottom: 30px;
	left: 50%;
	-webkit-transform: translate(-50%, 0%);
	transform: translate(-50%, 0%);
	width: 90%;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	line-height: 1;
}

#mainimage .bx-pager-item {
	padding: 0 4px;
}

#mainimage a.bx-pager-link.active {
	background: #000;
}

@media screen and (max-width: 767px) {
	#mainimage {
		margin-top: 0;
		padding-left: 0;
		margin-bottom: 0vw !important;
		padding-bottom: 0 !important;
	}
	#mainimage:before {
		width: 87vw;
	}
	#mainimage .bx-pager.bx-default-pager {
		bottom: 74vw;
	}
}

@media screen and (max-width: 960px) and (min-width: 768px) {
	#mainimage {
		margin-top: 0;
	}
}


/*--------------------------------------
Breadcrumb
--------------------------------------*/

#breadcrumb {
	padding: 15px 10px;
	/* background: #F2F2F2; */
}

#breadcrumb .breadcrumb_list .breadcrumb_item span,
#breadcrumb .breadcrumb_list .breadcrumb_item a {
	text-decoration: none;
}

#breadcrumb .breadcrumb_list .breadcrumb_item a,
#breadcrumb .breadcrumb_list .breadcrumb_item a span {}

#breadcrumb .breadcrumb_list .breadcrumb_item a {
	/* color: #000000; */
}


/*--------------------------------------
POSTS
--------------------------------------*/


/* navigation */

.navigation .prev a,
.navigation .next a {
	display: block;
	width: 100px;
	height: 40px;
	font-size: 16px;
	background: #BFBEBD;
	line-height: 40px;
	letter-spacing: 0;
	border-radius: 5px;
	position: relative;
	text-align: center;
	box-sizing: border-box;
	text-decoration: none !important;
	padding-left: 8px;
	font-weight: bold;
}

.navigation .prev a span:before {
	display: block;
	position: absolute;
	left: 8px;
	top: 50%;
	margin-top: -5px;
	font-size: 10px;
}

.navigation .next a {
	padding-left: inherit;
	padding-right: 8px;
}

.navigation .next a span:before {
	display: block;
	position: absolute;
	right: 8px;
	top: 50%;
	margin-top: -5px;
	font-size: 10px;
}


/*--------------------------------------
FOOTER
--------------------------------------*/

#footer {
	/* margin-top: 60px; */
	/* font-size: 1rem; */
}

#wpfront-scroll-top-container img {
	/* -webkit-box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.11); */
	/*-moz-box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.11);*/
	/* box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.11); */
	/* border-radius: 50%; */
}

@media screen and (max-width: 767px) {
	#wpfront-scroll-top-container {
		display: none !important;
	}
}


/* =====================================
ASSETS(Unders)
===================================== */


/*--------------------------------------
テーブル_2列
--------------------------------------*/

.column2_table {
	width: 100%;
}

.column2_table th,
.column2_table td {
	line-height: 1.6;
	vertical-align: top;
}

.column2_table tr:first-child th {
	/* border-top: 1px solid #070707; */
}

.column2_table tr:first-child td {
	/* border-top: 1px solid #B2ADAD; */
}

.column2_table th {
	width: 30%;
	padding: 13px 14px 10px 0;
	box-sizing: border-box;
	border-bottom: 1px solid #9AC95F;
}

.column2_table thead th {
	background: #ffedee;
	padding-left: 20px;
	padding-right: 20px;
}

.column2_table td {
	padding: 13px 0px 10px 20px;
	box-sizing: border-box;
	border-bottom: 1px solid #CBCAC9;
}

@media screen and (max-width: 767px) {
	.column2_table th,
	.column2_table td {
		font-size: 1.4rem;
	}
	.column2_table th {
		padding: 13px 0px 10px 0;
	}
}


/*--------------------------------------
リスト_ミニ
--------------------------------------*/

.list_mini.elementor-widget .elementor-icon-list-icon i:before {
	font-size: 1rem;
}

.list_mini.elementor-widget .elementor-icon-list-icon {
	margin-top: -2px !important;
}


/*--------------------------------------
リスト_余白
--------------------------------------*/

.elementor-widget.li_mt .elementor-icon-list-item + .elementor-icon-list-item,
.li_mt .elementor-icon-list-item + .elementor-icon-list-item {
	margin-top: 1em;
}


/*--------------------------------------
リスト_チェック
--------------------------------------*/

#main .check_list .elementor-icon-list-items li {
	position: relative;
	padding: 2px 0 2px 34px;
}

#main .check_list .elementor-icon-list-items li:before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 4px;
	background: url(./img/check.png) no-repeat center center / contain;
	width: 25px;
	height: 21px;
}

@media screen and (max-width: 767px) {
	#main .check_list .elementor-icon-list-items li {
		padding-left: 7.6vw;
	}
	#main .check_list .elementor-icon-list-items li:before {
		top: 2vw;
		width: 6vw;
		height: 6vw;
	}
}


/*--------------------------------------
リスト_番号
--------------------------------------*/

.num_list .elementor-icon-list-items li {
	margin-bottom: 15px;
	padding-left: 35px;
}

.num_list .elementor-icon-list-items li:before {
	background: #f9b02b;
	color: #fff;
	font-size: 1.6rem;
	width: 24px;
	height: 24px;
	line-height: 24px;
	top: 6px;
	letter-spacing: 0;
	border-radius: 6px;
}

@media screen and (max-width: 767px) {
	.num_list .elementor-icon-list-items li:before {
		top: 2.2vw;
		width: 5vw;
		height: 5vw;
		line-height: 5vw;
	}
	.num_list .elementor-icon-list-items li {
		padding-left: 8vw;
	}
}


/*--------------------------------------
リスト_アンカーリンク
--------------------------------------*/

.anchorlinks {
	background: #f6faf1;
	padding: 30px 70px;
	list-style: none;
	font-size: 1.8rem;
	/* border: 3px solid #84D8D0; */
	border-radius: 10px;
}

.anchorlinks .elementor-icon-list-items li {
	position: relative;
	width: auto;
	display: inline-block;
	padding-left: 16px;
	margin: 5px 30px 5px 0;
	line-height: 1.6;
}

.anchorlinks .elementor-icon-list-items li a:before {
	color: #9BCB69;
	font-size: 1.5rem;
}

.anchorlinks .elementor-icon-list-items li a:hover:before {
	margin-top: -6px;
}

.anchorlinks .elementor-icon-list-items li a:hover {
	color: #534541;
}

@media screen and (max-width: 767px) {
	.anchorlinks {
		padding: 3vw 5vw;
	}
	.anchorlinks .elementor-icon-list-items li a:before {
		font-size: 1rem;
		margin-top: 0.1vw;
	}
}


/*--------------------------------------
ビフォーアフター
--------------------------------------*/

.before_after:before {
	display: block;
	content: "";
	border-left: 14px solid #ee8fae;
	border-bottom: 20px solid transparent;
	border-top: 20px solid transparent;
	margin-top: -20px;
	margin-left: -7px;
}

.before_after .elementor-widget.elementor-widget-heading {
	margin-bottom: 10px !important;
}

.before_after > div > div > div {
	width: 48% !important;
}

.before_after > div > div {
	justify-content: space-between;
}

@media screen and (max-width: 767px) {
	.before_after > div > div > div {
		width: 100% !important;
	}
	.before_after > div > div > div + div {
		margin-top: 10vw;
	}
	.before_after:before {
		border-left: 20px solid transparent;
		border-top: 14px solid #ee8fae;
		border-right: 20px solid transparent;
		border-bottom: none;
		margin-top: -6vw;
		margin-left: -20px;
	}
	.before_after .elementor-icon-list-items li {
		margin-top: 50px;
	}
}


/*--------------------------------------
ボーター_枠囲
--------------------------------------*/

.border_box,
.beta_box {
	border: 2px solid #52DB74;
	padding: 40px 55px 40px 55px;
	/* border-radius: 10px; */
}

.post-content.upage .border_box .elementor-widget-heading:not(.ori_tl) h2,
.post-content.upage .border_box .elementor-widget-heading:not(.ori_tl) h3,
.post-content.upage .border_box .elementor-widget-heading:not(.ori_tl) h4,
.post-content.upage .border_box .elementor-widget-heading:not(.ori_tl) h5,
.post-content.upage .border_box .elementor-widget-heading:not(.ori_tl) h6,
.post-content.upage .beta_box .elementor-widget-heading:not(.ori_tl) h2,
.post-content.upage .beta_box .elementor-widget-heading:not(.ori_tl) h3,
.post-content.upage .beta_box .elementor-widget-heading:not(.ori_tl) h4,
.post-content.upage .beta_box .elementor-widget-heading:not(.ori_tl) h5,
.post-content.upage .beta_box .elementor-widget-heading:not(.ori_tl) h6 {
	text-align: left !important;
	padding: 0 !important;
	font-size: 2.1rem !important;
	letter-spacing: 0.1em !important;
	margin-bottom: 20px !important;
	padding-left: 31px !important;
	color: #ff0000 !important;
	border: none !important;
	margin-top: 0;
	font-family: 'Noto Serif JP', serif;
	background: none;
	border-bottom: 1px solid #ffffff !important;
	padding-bottom: 20px !important;
	line-height: 1.4 !important;
}

.post-content.upage .border_box .elementor-widget-heading:not(.ori_tl) h2:before,
.post-content.upage .border_box .elementor-widget-heading:not(.ori_tl) h3:before,
.post-content.upage .border_box .elementor-widget-heading:not(.ori_tl) h4:before,
.post-content.upage .border_box .elementor-widget-heading:not(.ori_tl) h5:before,
.post-content.upage .border_box .elementor-widget-heading:not(.ori_tl) h6:before,
.post-content.upage .beta_box .elementor-widget-heading:not(.ori_tl) h2:before,
.post-content.upage .beta_box .elementor-widget-heading:not(.ori_tl) h3:before,
.post-content.upage .beta_box .elementor-widget-heading:not(.ori_tl) h4:before,
.post-content.upage .beta_box .elementor-widget-heading:not(.ori_tl) h5:before,
.post-content.upage .beta_box .elementor-widget-heading:not(.ori_tl) h6:before {
	position: absolute;
	content: "";
	background-image: none !important;
	background: #ff0000 !important;
	width: 16px !important;
	height: 16px !important;
	border-radius: 50px;
	top: 7px !important;
	left: 0 !important;
	border: none;
	bottom: inherit !important;
	margin-top: 0;
	-webkit-transform: inherit;
	transform: inherit;
}

.post-content.upage .border_box.no_icon .elementor-widget-heading:not(.ori_tl) h2,
.post-content.upage .border_box.no_icon .elementor-widget-heading:not(.ori_tl) h3,
.post-content.upage .border_box.no_icon .elementor-widget-heading:not(.ori_tl) h4,
.post-content.upage .border_box.no_icon .elementor-widget-heading:not(.ori_tl) h5,
.post-content.upage .border_box.no_icon .elementor-widget-heading:not(.ori_tl) h6,
.post-content.upage .beta_box.no_icon .elementor-widget-heading:not(.ori_tl) h2,
.post-content.upage .beta_box.no_icon .elementor-widget-heading:not(.ori_tl) h3,
.post-content.upage .beta_box.no_icon .elementor-widget-heading:not(.ori_tl) h4,
.post-content.upage .beta_box.no_icon .elementor-widget-heading:not(.ori_tl) h5,
.post-content.upage .beta_box.no_icon .elementor-widget-heading:not(.ori_tl) h6 {
	padding-left: 0 !important;
}

.post-content.upage .border_box.no_icon .elementor-widget-heading:not(.ori_tl) h2:before,
.post-content.upage .border_box.no_icon .elementor-widget-heading:not(.ori_tl) h3:before,
.post-content.upage .border_box.no_icon .elementor-widget-heading:not(.ori_tl) h4:before,
.post-content.upage .border_box.no_icon .elementor-widget-heading:not(.ori_tl) h5:before,
.post-content.upage .border_box.no_icon .elementor-widget-heading:not(.ori_tl) h6:before,
.post-content.upage .beta_box.no_icon .elementor-widget-heading:not(.ori_tl) h2:before,
.post-content.upage .beta_box.no_icon .elementor-widget-heading:not(.ori_tl) h3:before,
.post-content.upage .beta_box.no_icon .elementor-widget-heading:not(.ori_tl) h4:before,
.post-content.upage .beta_box.no_icon .elementor-widget-heading:not(.ori_tl) h5:before,
.post-content.upage .beta_boxh6:before {
	display: none;
}

.beta_box {
	border: none;
	background: #333333;
	color: #fff;
	border-radius: 20px;
}

.post-content.upage .border_box.no_border .elementor-widget-heading:not(.ori_tl) h2,
.post-content.upage .border_box.no_border .elementor-widget-heading:not(.ori_tl) h3,
.post-content.upage .border_box.no_border .elementor-widget-heading:not(.ori_tl) h4,
.post-content.upage .border_box.no_border .elementor-widget-heading:not(.ori_tl) h5,
.post-content.upage .border_box.no_border .elementor-widget-heading:not(.ori_tl) h6,
.post-content.upage .beta_box.no_border .elementor-widget-heading:not(.ori_tl) h2,
.post-content.upage .beta_box.no_border .elementor-widget-heading:not(.ori_tl) h3,
.post-content.upage .beta_box.no_border .elementor-widget-heading:not(.ori_tl) h4,
.post-content.upage .beta_box.no_border .elementor-widget-heading:not(.ori_tl) h5,
.post-content.upage .beta_box.no_border .elementor-widget-heading:not(.ori_tl) h6 {
	padding-bottom: 0 !important;
	border: none !important;
}

@media screen and (max-width: 767px) {
	.post-content.upage .border_box .elementor-widget-heading:not(.ori_tl) h2,
	.post-content.upage .border_box .elementor-widget-heading:not(.ori_tl) h3,
	.post-content.upage .border_box .elementor-widget-heading:not(.ori_tl) h4,
	.post-content.upage .border_box .elementor-widget-heading:not(.ori_tl) h5,
	.post-content.upage .border_box .elementor-widget-heading:not(.ori_tl) h6,
	.post-content.upage .beta_box .elementor-widget-heading:not(.ori_tl) h2,
	.post-content.upage .beta_box .elementor-widget-heading:not(.ori_tl) h3,
	.post-content.upage .beta_box .elementor-widget-heading:not(.ori_tl) h4,
	.post-content.upage .beta_box .elementor-widget-heading:not(.ori_tl) h5,
	.post-content.upage .beta_box .elementor-widget-heading:not(.ori_tl) h6 {
		margin-bottom: 3vw !important;
		padding-left: 6vw !important;
		font-size: 2rem !important;
	}
	.post-content.upage .border_box .elementor-widget-heading:not(.ori_tl) h2:before,
	.post-content.upage .border_box .elementor-widget-heading:not(.ori_tl) h3:before,
	.post-content.upage .border_box .elementor-widget-heading:not(.ori_tl) h4:before,
	.post-content.upage .border_box .elementor-widget-heading:not(.ori_tl) h5:before,
	.post-content.upage .border_box .elementor-widget-heading:not(.ori_tl) h6:before,
	.post-content.upage .beta_box .elementor-widget-heading:not(.ori_tl) h2:before,
	.post-content.upage .beta_box .elementor-widget-heading:not(.ori_tl) h3:before,
	.post-content.upage .beta_box .elementor-widget-heading:not(.ori_tl) h4:before,
	.post-content.upage .beta_box .elementor-widget-heading:not(.ori_tl) h5:before,
	.post-content.upage .beta_box .elementor-widget-heading:not(.ori_tl) h6:before {
		width: 4vw !important;
		height: 4vw !important;
		top: 1.4vw !important;
	}
	.post-content.upage .border_box.no_border .elementor-widget-heading:not(.ori_tl) h2,
	.post-content.upage .border_box.no_border .elementor-widget-heading:not(.ori_tl) h3,
	.post-content.upage .border_box.no_border .elementor-widget-heading:not(.ori_tl) h4,
	.post-content.upage .border_box.no_border .elementor-widget-heading:not(.ori_tl) h5,
	.post-content.upage .border_box.no_border .elementor-widget-heading:not(.ori_tl) h6,
	.post-content.upage .beta_box.no_border .elementor-widget-heading:not(.ori_tl) h2,
	.post-content.upage .beta_box.no_border .elementor-widget-heading:not(.ori_tl) h3,
	.post-content.upage .beta_box.no_border .elementor-widget-heading:not(.ori_tl) h4,
	.post-content.upage .beta_box.no_border .elementor-widget-heading:not(.ori_tl) h5,
	.post-content.upage .beta_box.no_border .elementor-widget-heading:not(.ori_tl) h6 {
		margin-bottom: 0 !important;
	}
}


/*--------------------------------------
QA
--------------------------------------*/

.qa_list {
	border-bottom: 1px solid #D8D8D8;
	padding-bottom: 30px;
}

.qa_list dt,
.qa_list dd {
	/* margin-bottom: 30px; */
	display: table;
	border-left: 4px solid #4359A6;
	width: 100%;
}

.qa_list > dd {
	border-color: #72706E;
	font-weight: normal;
	margin-top: 30px;
}

.qa_list .num {
	display: table-cell;
	padding-right: 20px;
	vertical-align: top;
}

.qa_list dt .num span {
	display: block;
	width: 40px;
	height: 40px;
	line-height: 34px;
	border-radius: 50%;
	text-align: right;
	color: #4359A6;
	letter-spacing: 0;
	font-size: 3.1rem;
	font-weight: bold;
}

.qa_list dd .num span {
	display: block;
	width: 40px;
	height: 40px;
	line-height: 40px;
	border-radius: 50%;
	text-align: right;
	color: #72706E;
	letter-spacing: 0;
	font-size: 3.1rem;
	font-weight: bold;
}

.qa_list .txt {
	display: table-cell;
	width: 100%;
	vertical-align: top;
}

.qa_list dd .txt {
	padding-top: 5px;
}

.qa_list dt .txt {
	font-size: 18px;
	font-size: 2rem;
	line-height: 1.7;
	letter-spacing: 0.15em;
	font-family: "ヒラギノ角ゴ W5 JIS2004";
	color: #4359A6;
	font-weight: 7;
	padding-top: 2px;
}

.qa_with_img dd .txt {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
}

.qa_with_img .img_box {
	width: 38.6%;
	border: none;
	margin-left: 50px;
}


/*
QA .qa_list.qa_list02
*/

.qa_list.qa_list02 .num {
	width: 56px;
	height: 56px;
	position: absolute;
	top: 0px;
	left: 0;
}

.qa_list.qa_list02 dt,
.qa_list.qa_list02 dd {
	border: none;
	position: relative;
	padding-top: 8px;
}

.qa_list.qa_list02 dt .num span,
.qa_list.qa_list02 dd .num span {
	display: block;
	width: 56px;
	height: 56px;
	line-height: 56px;
	text-align: center;
	background: #7BC72E;
	border-radius: 50%;
	position: absolute;
	top: 0;
	left: 0;
	color: #fff;
	font-family: 'Lato', sans-serif;
	font-weight: 700;
}

.qa_list.qa_list02 dt .txt {
	padding-left: 70px;
	display: block;
}

.qa_list.qa_list02 .txt {
	padding-left: 70px;
}

.qa_list.qa_list02 dd .num span {
	background: #FFD15D;
	color: #ffffff;
}

@media screen and (max-width: 767px) {
	.qa_list {
		padding-bottom: 6vw;
	}
	.qa_list .num {
		padding-right: 1em !important;
	}
	.qa_list.qa_list02 .num {}
	.qa_list.qa_list02 dt .txt,
	.qa_list.qa_list02 dd .txt {
		padding-left: 18vw;
	}
	.qa_list dt .num span,
	.qa_list dd .num span {
		width: 8vw !important;
		height: 8vw !important;
		line-height: 8vw !important;
		font-size: 2.8rem;
	}
	.qa_list > dd .txt {
		padding-top: 0.6vw;
	}
	.qa_list dt .txt {
		font-size: 2rem;
		padding-top: 0;
	}
}


/*--------------------------------------
流れ
--------------------------------------*/

.flow_section {
	background: #FAFAFA;
	margin-top: 70px;
}

.post-content.upage h2 {
	margin-top: 0;
}

.flowList > li {
	position: relative;
	margin-bottom: 40px;
	padding: 40px;
	border-radius: 0;
	background: #F7F9FA;
}

.flowList > li:after {
	position: absolute;
	bottom: -25px;
	left: 50%;
	-webkit-transform: translate(-50%, 0%);
	transform: translate(-50%, 0%);
	display: block;
	font-family: 'icomoon';
	speak: none;
	line-height: 1;
	vertical-align: baseline;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	content: "\e904";
	text-align: center;
	color: #EFAB62;
	font-size: 10px;
}

.flowList.flowList_step_sankaku > li:after {
	position: absolute;
	bottom: -25px;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 25px 25px 0 25px;
	border-color: #9bcb69 transparent transparent transparent;
	left: 50%;
	-webkit-transform: translate(-50%, 0%);
	transform: translate(-50%, 0%);
	display: block;
	color: #391500;
	font-size: 10px;
}

.flowList .flow_title {
	line-height: 1.4;
	overflow: hidden;
	font-size: 2rem;
	letter-spacing: 0.02em;
	padding-top: 4px;
	padding-bottom: 4px;
	position: relative;
	/* font-weight: 700; */
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: flex-start;
}

.flowList .flow_title .stl {
	-webkit-flex: 1;
	flex: 1;
}

.flowList .flow_title + p {
	margin-top: 15px;
}

.flowList .flow_title.no_num {
	padding-left: 0;
}

.flowList .flow_title .num {
	vertical-align: top;
	background: #6DC8EB;
	color: #fff;
	display: inline-block;
	width: 33px;
	height: 33px;
	text-align: center;
	line-height: 36px;
	font-size: 2rem;
	margin-right: 15px;
	letter-spacing: 0;
	position: relative;
	border-radius: 50%;
	margin-top: -3px;
}

.flowList.flowList_step .flow_title span {
	width: 100px;
}

.flowList.flowList_step .flow_title {
	padding-left: 120px;
}

.flowList.no_num .flow_title {
	padding-left: 0;
}

.flowList .img_wrap figure {
	width: 32.2%;
	margin-left: 50px !important;
	/* border-radius: 10px; */
	overflow: hidden;
	float: right;
	margin-bottom: 10px !important;
}

.flowList.step_img_mini figure {
	width: 125px;
}

.flowList.flowList_no_tl .flow_title {
	position: absolute;
	top: 35px;
	left: 40px;
}

.flowList.flowList_no_tl .flow_title + p {
	margin-top: 0 !important;
}

.flowList.flowList_no_tl > li {
	padding: 40px 40px 40px 90px;
}

@media screen and (max-width: 767px) {
	.flowList.flowList_step_sankaku > li:after {
		bottom: -4vw;
		border-width: 4vw 4vw 0 4vw;
	}
	.flowList > li:after {
		font-size: 1.3rem;
		bottom: -6vw;
	}
	.flowList .flow_title .num {
		height: 7vw;
		line-height: 8vw;
		/* position: relative; */
		/* left: inherit; */
		/* top: inherit; */
		/* display: block; */
		width: 7vw;
		margin-right: 3vw;
		margin-top: 1.9vw;
	}
	.flowList .flow_title {
		/* text-align: center; */
		margin-bottom: 0;
		padding-bottom: 0;
		padding-top: 0;
		font-size: 2rem;
	}
	.flowList.flowList_step .flow_title span {
		position: absolute;
		top: 0;
		left: 0;
	}
	.flowList.flowList_step .flow_title {
		padding-left: 0;
		padding-top: 10vw;
		padding-bottom: 0;
	}
	.flowList.flowList_no_tl .flow_title {
		top: 6vw;
		left: 5vw;
	}
	.flowList.flowList_no_tl > li {
		padding-left: 16vw !important;
	}
	.flowList.flowList_no_tl .flow_title + p {
		margin-top: 0px !important;
		-webkit-flex: 1;
		flex: 1;
	}
}


/* -------------------------------------
flowList_tlver
------------------------------------- */

.flowList_tlver li .flow_title {
	background: #F7F9FA;
	font-family: "ヒラギノ角ゴ W5 JIS2004";
	font-size: 2rem;
	position: relative;
	padding: 18px 10px 22px 70px;
	line-height: 1.6;
}

.flowList_tlver li .flow_title span {
	width: 33px;
	height: 33px;
	background: #6DC8EB;
	color: #fff;
	line-height: 34px;
	display: block;
	text-align: center;
	border-radius: 50%;
	position: absolute;
	top: 16px;
	left: 20px;
}

.flowList_tlver li + li {
	margin-top: 80px;
}

.flowList_tlver li + li:before {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 25px 25px 0 25px;
	border-color: #EFAB62 transparent transparent transparent;
	top: -60px;
	left: 50%;
	-webkit-transform: translate(-50%, 0%);
	transform: translate(-50%, 0%);
}

.flowList_tlver li .img_wrap {
	margin-top: 30px;
}

.flowList_tlver li .img_wrap figure {
	width: 38%;
	margin-left: 50px !important;
	float: right;
}

@media screen and (max-width: 767px) {
	.flowList_tlver li .flow_title {
		padding: 3vw 5vw 3vw 14vw;
	}
	.flowList_tlver li + li:before {
		border-width: 4vw 4vw 0 4vw;
		top: -9vw;
	}
	.flowList_tlver li .flow_title span {
		top: 3.6vw;
		width: 6vw;
		height: 6vw;
		font-size: 2rem;
		line-height: 6vw;
	}
	.flowList_tlver li .img_wrap figure {
		width: 100%;
		margin-left: 0 !important;
		margin-bottom: 6vw !important;
	}
	.flowList_tlver li .img_wrap {
		margin-top: 6vw;
	}
	.flowList_tlver li + li {
		margin-top: 12vw
	}
}

@media screen and (max-width: 1120px) and (min-width: 768px) {
	.flowList_tlver li .flow_title {
		padding: 20px 10px 22px 70px;
	}
	.flowList_tlver li .flow_title span {
		line-height: 33px;
	}
}


/* -------------------------------------
診療時間表
------------------------------------- */

.upage .timetable {
	margin-bottom: 16px;
}

.upage .timetable th,
.upage .timetable td {
	text-align: center;
	vertical-align: middle;
	letter-spacing: 0;
	font-size: 1.4rem;
}

.upage .timetable th,
.upage .timetable td {}

.upage .timetable thead th {
	font-weight: normal;
	border-bottom: 1px solid #20976D;
	vertical-align: bottom;
	font-size: 1.4rem;
	padding: 10px 0;
}

.upage .timetable thead th:not(:first-child) {
	width: 16%;
}

.upage .timetable thead th:first-child {
	width: auto;
	text-align: left;
	/* font-size: 1.4rem; */
	letter-spacing: 3px;
}

.upage .timetable thead th:first-child {
	/* font-size: 1.8rem; */
}

.upage .timetable th:first-child {
	padding-left: 20px;
}

.upage .timetable tbody tr:last-child > * {
	border-bottom: none;
}

.upage .timetable tbody th {
	word-break: keep-all;
	white-space: nowrap;
	text-align: left;
	letter-spacing: 0.1em;
	width: 34%;
}

.upage .timetable thead {
	background: #4359A6;
	border: 1px solid #4359A6;
}

.upage .timetable tbody {
	border: 1px solid #707070;
}

.upage .timetable tbody tr th,
.upage .timetable tbody tr td {
	padding-top: 5px;
	padding-bottom: 5px;
}

.upage .timetable tbody tr:first-child th,
.upage .timetable tbody tr:first-child td {
	padding-top: 20px;
}

.upage .timetable tbody tr th,
.upage .timetable tbody tr td {
	/* background: #8ABBAA; */
}

.upage .timetable tbody tr:last-child th,
.upage .timetable tbody tr:last-child td {
	/* border-bottom: 1px solid #20976D; */
	padding-bottom: 20px;
}

.comments {
	font-size: 15px;
	line-height: 2;
	letter-spacing: 0.1em;
	margin-bottom: 26px;
	color: #333333;
}

.comments span {
	color: #F9CFDD;
}

@media screen and (max-width: 1120px) and (min-width: 768px) {
	.upage .timetable thead th:first-child {
		width: 38%;
	}
	.upage .timetable tbody th {
		letter-spacing: 0.1em;
		width: 38%;
	}
}

@media screen and (max-width: 480px) {
	.upage .timetable th,
	.upage .timetable td {
		font-size: 12px;
		letter-spacing: 0;
	}
	.upage .timetable thead th:first-child {
		font-size: 2rem;
	}
	.upage .timetable tbody th {
		letter-spacing: 0.05em;
	}
	.upage .comments {
		font-size: 12px;
		margin-bottom: 20px;
	}
}


/*timetable02*/

.upage .timetable.timetable02 {
	width: 100%;
	table-layout: fixed;
	border-collapse: collapse;
	margin-bottom: 15px;
}

.upage .timetable.timetable02 th,
.upage .timetable.timetable02 td {
	text-align: center;
	vertical-align: middle;
	line-height: 1.2;
	letter-spacing: 0;
	padding: 11px 0 12px;
	font-size: 1.5rem;
	color: #333333;
}

.upage .timetable.timetable02 thead th {
	background: #DAF1FF;
	font-weight: normal;
	/* border-bottom: 1px solid #F894A1; */
	padding: 10px 0 10px;
	vertical-align: middle;
}

.upage .timetable.timetable02 thead th:first-child {
	width: 34%;
	color: #154696;
	font-weight: bold !important;
	letter-spacing: 3px;
	text-align: center;
	font-size: 2rem !important;
}

.upage .timetable.timetable02 thead th:last-child,
.upage .timetable.timetable02 tbody td:last-child {
	width: 17%;
	padding-right: 2%;
	box-sizing: border-box;
}

.upage .timetable.timetable02 tbody th {
	word-break: keep-all;
	white-space: nowrap;
	text-align: center;
	letter-spacing: 0.1em;
	width: 34%;
}

.upage .timetable.timetable02 tbody tr:first-child th,
.upage .timetable.timetable02 tbody tr:first-child td {
	padding-top: 20px;
}

.upage .timetable.timetable02 tbody tr th,
.upage .timetable.timetable02 tbody tr td {
	border-bottom: 1px solid #BFBEBD;
	padding: 20px 10px 20px 10px !important;
}

.txt_color {
	color: #4359A6;
}

.txt_color02 {
	color: #FD9858;
}

.upage .txt_color {
	/* color: #52db74; */
}

.upage .timetable02 thead th,
.upage .timetable02 thead th:first-child {
	background: #353662;
	color: #fff !important;
	vertical-align: middle;
	padding: 20px;
}

.upage .timetable.timetable02 thead th:not(:first-child) {
	width: 17%;
	text-align: center;
}

.upage .timetable.timetable02 tbody tr > * {
	border-bottom: 1px solid #BFBEBD !important;
	vertical-align: middle;
	padding: 20px !important;
}

.upage .timetable.timetable02 tbody th {
	font-weight: bold;
}

.upage .timetable.timetable02 tbody td {
	text-align: center;
}

.upage .timetable.timetable02 tbody td span {
	color: #353662;
}

.upage .timetable thead th {
	border: none;
	color: #fff;
	vertical-align: middle;
}

.upage .timetable thead th:not(:first-child) {
	width: 11%;
}

.upage .timetable_8 thead th:not(:first-child),
.upage .timetable_8 thead th:last-child {
	width: 10%;
}

.upage .timetable thead th:last-child,
.upage .timetable tbody td:last-child {
	width: 12%;
	/* padding-right: 2%; */
	/* box-sizing: border-box; */
}

.upage .timetable.u_timetable02 thead th {
	border: none;
	vertical-align: middle;
}

.upage .timetable.u_timetable02 thead th:first-child,
.upage .timetable.u_timetable02 tbody th {
	padding-left: 20px !important;
}

.upage .timetable.u_timetable02 thead th {
	font-family: 'Noto Serif JP', serif;
}

.upage .timetable.u_timetable02 tbody td span {
	/* color: #926760; */
}

.upage .timetable.u_timetable02 tbody th,
.upage .timetable.u_timetable02 tbody td {
	border-bottom: 1px solid #bfbebd !important;
}

.upage .timetable.u_timetable02 tbody th,
.upage .timetable.u_timetable02 tbody td {
	padding: 18px 5px 18px 20px !important;
}

@media screen and (max-width: 1120px) and (min-width: 768px) {
	.upage .timetable thead th:first-child {
		width: 38%;
	}
	.upage .timetable tbody th {
		letter-spacing: 0.1em;
		width: 38%;
	}
	.upage .timetable thead th:last-child,
	.upage .timetable tbody td:last-child {
		width: 17%;
	}
}

@media screen and (max-width: 767px) {
	.upage .timetable02 tr > * {
		padding: 5px !important;
		font-size: 1.3rem !important;
	}
	.upage .timetable02 thead th:not(:first-child) {
		width: 9%;
	}
	.upage .timetable02 thead th:last-child {
		width: 15%;
	}
	.upage .timetable02 tbody tr > * {
		padding: 10px 0px !important;
	}
	.upage .timetable th,
	.upage .timetable td {
		font-size: 1.5rem !important;
		letter-spacing: 0;
		padding: 3px 3px 10px 3px !important;
	}
	.upage .timetable tbody tr:last-child th,
	.upage .timetable tbody tr:last-child td {
		padding-bottom: 5vw !important;
	}
	.upage .timetable thead th {
		padding: 3vw 0.5vw !important;
	}
	.upage .timetable tbody th {
		letter-spacing: 0.05em;
	}
	.upage .timetable tbody tr:first-child th,
	.upage .timetable tbody tr:first-child td {
		padding-top: 5vw !important;
	}
	.comments {
		font-size: 12px;
		margin-bottom: 20px;
	}
	.upage .timetable th,
	.upage .timetable td {
		font-size: 1.3rem !important;
	}
	.upage .timetable tbody tr:first-child th,
	.upage .timetable tbody tr:first-child td {
		padding-top: 5vw !important;
	}
	.upage .timetable tbody tr:last-child th,
	.upage .timetable tbody tr:last-child td {
		padding-bottom: 5vw !important;
	}
	.upage .timetable_8 thead th:not(:first-child) {
		width: 8%;
	}
	.upage .timetable_8 thead th:not(:first-child),
	.upage .timetable_8 thead th:last-child {
		width: 8.4%;
	}
	.upage .timetable thead th {
		padding-top: 3vw !important;
	}
	.upage .timetable tbody th,
	.upage .timetable thead th:first-child {
		padding-left: 10px !important;
		padding-right: 10px !important;
	}
	.upage .timetable.u_timetable02 tbody th {
		padding-left: 0 !important;
	}
	.upage .timetable.u_timetable02 tbody th,
	.upage .timetable.u_timetable02 tbody td {
		padding: 5vw 0 !important;
	}
	.upage .timetable.u_timetable02 thead th:first-child {
		letter-spacing: 0;
		padding-left: 2px !important;
		padding-right: 2px !important;
		text-align: center;
	}
	.upage .timetable thead th:not(:first-child) {
		width: 8%;
	}
	.upage .timetable thead th:last-child,
	.upage .timetable tbody td:last-child {
		width: 17%;
	}
}

@media screen and (max-width: 960px) and (min-width: 768px) {
	.timetable + p {
		font-size: 1.4rem;
	}
}


/* =====================================
■ブログ
===================================== */

.post .category a,
.posts_list .category a,
.pagination a:hover,
.pagination ul li span.current {
	background: #6DC8EB;
	/* color: #fff; */
}

.pagination a:hover,
.pagination ul li span.current {
	background: #4359A6;
	color: #fff;
}

.post .date,
.posts_list .date,
.posts_list .date span a,
.post .date span:before,
.posts_list .date span:before,
.blogside .searchBox .icon-search:before,
.archiveBox ul li p.acv_open,
.archiveBox ul li p:hover,
.archiveBox ul li a:hover,
.archiveBox ul li a:active,
.date_tag .tag,
.date_tag .tag a {
	color: #4359A6 !important;
}

.blogside .searchBox .icon-search:before {
	color: #4359A6 !important;
}


/*--------------------------------------
POSTS
--------------------------------------*/

.upage {
	padding-bottom: 150px;
}


/*　blogList　*/

.posts_list .txt_block a {
	text-decoration: none !important;
	color: #686868;
}

.posts_list li {
	border-bottom: 1px solid #EBE9E7;
}

.posts_list h3 a {
	color: #686868;
}

.posts_list .excerpt {
	color: #72706E;
}


/*　blogDetail　*/

#blogDetail .post {
	color: #0F0E0E;
}


/* pagination */

.pagination {
	border-top: 1px solid #72706E;
}

@media screen and (max-width: 767px) {
	.upage {
		padding-bottom: 15vw;
	}
}


/*--------------------------------------
BLOGSIDE
--------------------------------------*/

.blogside h2 {
	border-bottom: 2px solid #686868;
}

.blogside h2 span {}

.blogside .searchBox #s {
	background: #EBE9E7;
	color: #000000 !important;
}

.blogside .searchBox #s::placeholder {
	color: #bbbbbb !important;
}

.blogside .categoryBox ul li {
	border-bottom: 1px solid #BFBEBD;
}

.blogside .categoryBox ul li a {}

.blogside .categoryBox ul li a span {}

.blogside .categoryBox ul li a:hover,
.blogside .categoryBox ul li a:hover span {
	color: #686868;
}

.blogside .recentBox li {
	border-bottom: 1px solid #BFBEBD;
}

.blogside .recentBox li h2 a {}

.blogside .recentBox li h2 a:hover {}

.blogside .recent_date {}

.blogside .recentBox li a {}

.blogside .tagBox a {
	color: #72706E;
	border: 1px solid #72706E;
}

.blogside .tagBox a:hover {
	color: #fff;
	background: #72706E;
}

.archiveBox ul li p:visited {}

.archiveBox ul li p:before {
	border-right: 1px solid #4359A6;
	border-bottom: 1px solid #4359A6;
}

@media screen and (max-width: 767px) {
	.blogside {
		border-top: 1px solid #000000;
	}
}


/* =====================================
■TOP新着情報
===================================== */

.top_news.container_in .elementor-container {
	max-width: 840px !important;
}

.top_news {
	padding-top: 50px;
	padding-bottom: 50px;
}

.top_news .top_news_tl {
	font-family: 'Noto Serif JP', serif;
	font-size: 1.6rem;
	letter-spacing: 0.1em;
	border-bottom: 1px solid #84D8D0;
	padding-bottom: 20px;
}

.top_news .top_news_tl span {
	font-size: 1.4rem;
	color: #84D8D0;
	padding-left: 0.5em;
}

.top_news .neww_list_link {
	position: absolute;
	top: -9px;
	right: 0;
}

.top_news .neww_list_link a {
	color: #84D8D0;
	font-size: 1.5rem;
}

.top_news .line_bnr a {
	background: #fff;
	-webkit-box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.11);
	-moz-box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.11);
	box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.11);
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	font-family: 'Noto Serif JP', serif;
	text-decoration: none !important;
	letter-spacing: 0.1em;
	padding: 25px 10px;
}

.top_news .line_bnr a img {
	width: 150px;
	margin-left: 15px;
}

.top_news .line_bnr .tl {
	position: relative;
	padding-right: 115px;
}

.top_news .line_bnr .tl span {
	color: #84D8D0;
	padding-left: 10px;
}

.top_news .line_bnr .tl:after {
	position: absolute;
	content: "";
	top: 50%;
	right: 0%;
	-webkit-transform: translate(0%, -50%);
	transform: translate(0%, -50%);
	width: 100px;
	height: 1px;
	background: #84D8D0;
}

.top_news .line_bnr .con {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	margin-left: 20px;
}

.top_news .top_news.container_in .elementor-container {
	max-width: 840px !important;
}


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

.container,
.elementor-top-section.elementor-section-boxed > .elementor-container,
.container_in .elementor-container,
.post-header > *,
#footer .f_bottom .elementor-section-boxed {
	max-width: 1120px !important;
}

.elementor-section .elementor-container .elementor-container {
	padding: 0;
}


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

.big_mark {
	font-size: 700;
	font-size: 160%;
}

.sent p + p,
.upage .elementor-text-editor p + p,
.upage .elementor-image-box-content p + p,
.upage .elementor-widget-container p + p {
	margin-top: 2rem;
}

.txtf {
	color: #578817;
	font-weight: bold;
}

.txtb {
	font-size: 110%;
}


/*--------------------------------------
画像
--------------------------------------*/

.float_r figure {
	width: 38.566% !important;
}

.elementor-image-box-wrapper {
	display: block !important;
}

.elementor-image-box-wrapper:after {
	content: "";
	display: table;
	clear: both;
}

.elementor-image-box-wrapper figure {
	float: right;
	margin-bottom: 10px !important;
}

.elementor-position-left.elementor-widget-image-box figure {
	float: left;
}

@media screen and (max-width: 767px) {
	.elementor-image-box-wrapper figure {
		float: none !important;
	}
}


/*--------------------------------------
タイトル
--------------------------------------*/

.top_tl {
	text-align: left;
	padding-top: 85px !important;
	margin-bottom: 20px !important;
}

.top_tl .elementor-heading-title {
	font-size: 3.5rem;
	letter-spacing: 0.1em;
	text-align: left;
	/* padding-top: 70px !important; */
	/* margin-bottom: 40px !important; */
	font-family: "丸フォーク R";
	line-height: 1.8 !important;
	/* border-bottom: 3px solid #8ABBAA; */
	/* display: inline; */
	position: relative;
	/* background: linear-gradient(transparent 97%, #8ABBAA 0%); */
	/* display: inline; */
	padding: 0;
	color: #4359A6;
}

.top_tl .elementor-heading-title span {
	font-size: 1.8rem;
	color: #CCD2E8;
	display: block;
	margin-bottom: auto;
	letter-spacing: 0;
	line-height: 1.4 !important;
	/* position: absolute; */
	/* top: 0%; */
	/* left: 50%; */
	/* -webkit-transform: translate(-50%, 0%); */
	/* transform: translate(-50%, 0%); */
	font-family: 'Montserrat';
}

.top_tl .elementor-heading-title em {
	font-size: 4.5rem;
}

.post-header {
	margin-bottom: 0;
	background: url(./img/umv.jpg) center center no-repeat #7f8fc2;
	background-size: cover;
	text-align: center;
	height: 200px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.post-header h1 {
	color: #ffffff;
	font-size: 3.4rem;
	letter-spacing: 0.2em;
	font-family: "秀英明朝 B", serif;
	width: 100%;
}

.post-header h1 span {
	display: block;
	font-size: 60%;
}

.post-content.upage h2 {
	background: #EFAB62;
	color: #fff;
	font-size: 3.2rem;
	letter-spacing: 0.2em;
	padding: 28px 40px 28px 40px !important;
	line-height: 1.4 !important;
	margin-bottom: 50px !important;
	text-align: left;
	position: relative;
	margin-top: 70px;
	font-family: "ヒラギノ角ゴ W5 JIS2004";
}

.post-content.upage h2:before {
	position: absolute;
	content: "";
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 90%;
	width: -webkit-calc(100% - 20px);
	width: calc(100% - 20px);
	height: 90%;
	height: -webkit-calc(100% - 20px);
	height: calc(100% - 20px);
	border: 1px solid #fff;
	pointer-events: none;
}

.post-content.upage h3 {
	font-size: 2.8rem;
	letter-spacing: .1em;
	line-height: 1.4!important;
	border-bottom: 2px solid #CBCAC9;
	padding: 4px 0 24px 40px!important;
	margin-bottom: 40px!important;
	text-align: left;
	position: relative;
	font-family: "ヒラギノ角ゴ W5 JIS2004";
	margin-top: 50px;
}

.post-content.upage h3:before {
	position: absolute;
	content: "";
	width: 10px;
	height: 98%;
	height: -webkit-calc(100% - 8px);
	height: calc(100% - 8px);
	left: 0;
	top: 0;
	background: #edf9fd;
}

.post-content.upage h3:after {
	position: absolute;
	content: "";
	width: 10px;
	height: 49%;
	height: -webkit-calc(50% - 4px);
	height: calc(50% - 4px);
	left: 0;
	bottom: 8px;
	background: #6DC8EB;
}

.post-content.upage h4 {
	letter-spacing: 0.1em;
	line-height: 1.4 !important;
	font-size: 2.4rem;
	padding-left: 40px;
	margin-bottom: 30px !important;
	text-align: left;
	font-family: "ヒラギノ角ゴ W5 JIS2004";
	position: relative;
	margin-top: 50px;
}

.post-content.upage h4:before {
	background: #9AC95F;
	position: absolute;
	left: 0px;
	top: 3px;
	width: 23px;
	height: 23px;
	content: "";
}

.post-content.upage h5 {
	letter-spacing: .1em;
	line-height: 1.4!important;
	font-size: 2rem;
	margin-bottom: 30px!important;
	text-align: left;
	font-family: "ヒラギノ角ゴ W5 JIS2004";
	margin-top: 40px;
	padding-left: 30px;
}

.post-content.upage h5:before {
	position: absolute;
	content: "";
	width: 16px;
	height: 16px;
	left: 0;
	top: 6px;
	background: #9ac95f;
	border-radius: 50%;
}

.post-content.upage h6 {
	letter-spacing: 0.2em;
	line-height: 1.4 !important;
	font-size: 2rem;
	margin-bottom: 30px !important;
	text-align: left;
	margin-top: 30px;
	font-family: "ヒラギノ角ゴ W5 JIS2004";
}

.post-content.upage .tl_li .elementor-heading-title {
	font-size: 2.4rem;
	padding: 0 0 0 0 !important;
	border: none;
	line-height: 1.8 !important;
	margin-top: 0 !important;
	color: #4359A6;
	background: none;
	margin-bottom: 0 !important;
	font-family: "ヒラギノ角ゴ W5 JIS2004";
	letter-spacing: 0.05em;
}

.post-content.upage .tl_li {
	margin-top: -10px
}

.post-content.upage .tl_li + * {
	margin-top: -30px;
}

.post-content.upage .tl_li .elementor-heading-title:before {
	display: none;
}

.post-content.upage .tl_li .elementor-heading-title:after {
	display: none;
}

p.elementor-heading-title,
p.elementor-image-box-title {
	font-size: 2.2rem;
	letter-spacing: 0.1em;
	padding: 1em 0 !important;
	line-height: 1.7 !important;
	padding-top: 0 !important;
	font-family: "ヒラギノ角ゴ W5 JIS2004";
	color: #4359A6;
	margin-bottom: 0 !important;
	padding-bottom: 0 !important;
}

.txt_pagecopy {
	letter-spacing: 0.2em;
	line-height: 1.8 !important;
	color: #84D8D0;
	font-size: 2.6rem;
	margin-bottom: 50px !important;
	text-align: left;
	font-family: "秀英角ゴシック金 M", "Shuei KakuGo Kin M";
	margin-top: 50px;
}

.txt_catchcopy {
	align-items: center !important;
	font-size: 2.6rem;
	color: #9bcb69;
	letter-spacing: 0.1em;
	line-height: 1.7;
}

.post-content.upage .tl_tac .elementor-heading-title {
	text-align: center !important;
}

@media screen and (max-width: 767px) {
	.top_tl {
		margin-bottom: 6vw !important;
		padding-top: 11vw !important;
	}
	.top_tl .elementor-heading-title {
		font-size: 2.8rem;
		line-height: 1.4 !important;
		letter-spacing: 0.05em;
	}
	.top_tl .elementor-heading-title span {
		/* letter-spacing: 0.2rem; */
	}
	.top_tl .elementor-heading-title:before,
	.top_tl .elementor-heading-title:after {
		width: 8.8vw;
		height: 8.8vw;
		left: -9vw;
	}
	.top_tl .elementor-heading-title:after {
		left: inherit;
		right: -9vw;
	}
	.txt_catchcopy {
		font-size: 2.3rem;
	}
	.post-header {
		height: 33vw;
	}
	.post-header h1 {
		font-size: 2.5rem;
		letter-spacing: 0.1em;
		padding: 2vw 2vw 2vw 3vw;
	}
	.post-content.upage h2 {
		padding: 6vw 6vw 6.5vw 6vw !important;
		margin-bottom: 6vw !important;
		margin-top: 10vw;
		font-size: 2rem;
	}
	.post-content.upage h2:before {
		width: 90%;
		width: -webkit-calc(100% - 4vw);
		width: calc(100% - 4vw);
		height: 90%;
		height: -webkit-calc(100% - 4vw);
		height: calc(100% - 4vw);
	}
	.post-content.upage h3 {
		font-size: 2rem;
		padding: 2vw 0 5vw 7vw!important;
		margin-top: 10vw;
		margin-bottom: 6vw !important;
	}
	.post-content.upage h3:before,
	.post-content.upage h3:after {
		width: 2vw
	}
	.post-content.upage h4 {
		padding: 0 0 0 7vw !important;
		margin-bottom: 5vw !important;
		font-size: 2rem;
		margin-top: 10vw;
	}
	.post-content.upage h4:before {
		width: 5vw !important;
		height: 5vw;
		top: 0.5vw;
		border-width: 5vw 5vw 0 0;
	}
	.post-content.upage h5 {
		margin-bottom: 5vw!important;
		font-size: 2rem;
		margin-top: 6vw;
		padding-left: 7vw;
	}
	.post-content.upage h5:before {
		width: 4vw!important;
		height: 4vw!important;
		top: 1.4vw;
	}
	.post-content.upage h6 {
		margin-bottom: 5vw !important;
		font-size: 2rem;
		margin-top: 6vw;
	}
	.post-content.upage .tl_li .elementor-heading-title:before {
		width: 4vw;
		height: 4vw;
		top: 1.9vw;
	}
	.post-content.upage .tl_li .elementor-heading-title {
		padding-left: 0 !important;
		margin-top: -3vw !important;
		font-size: 2rem
	}
	.post-content.upage .tl_li {
		margin-top: 7vw;
	}
	.post-content.upage .tl_li + * {
		margin-top: -4vw;
	}
	.txt_pagecopy {
		font-size: 2.2rem;
		margin-top: 5vw;
	}
	p.elementor-heading-title,
	p.elementor-image-box-title {
		font-size: 1.7rem !important;
	}
}

@media screen and (max-width: 960px) and (min-width: 768px) {
	.post-header {
		margin-top: 0px !important;
	}
}


/*--------------------------------------
ボタン
--------------------------------------*/

.elementor-button {
	border-radius: 0px !important;
	font-size: 2rem !important;
	padding: 18px 30px 18px 30px !important;
	display: inline-block !important;
	line-height: 1.3 !important;
	text-align: center !important;
	letter-spacing: 0.1em !important;
	/* margin-top: 30px !important; */
	background: #EFAB62 !important;
	background-size: 100% !important;
	color: #ffffff !important;
	border-radius: 0px !important;
}

.elementor-button em {
	display: block;
	font-size: 1.2rem;
	margin-top: 3px;
	letter-spacing: 0;
}

.elementor-button.elementor-size-sm {
	min-width: 260px;
}

.elementor-button:after {
	height: 1em !important;
	position: absolute !important;
	right: 14px !important;
	top: 50% !important;
	/* background: url(./img/arrow_white.svg) right center no-repeat; */
	/* width: 40px; */
	/* height: 5px; */
	/* background-size: contain; */
	/* top: 50%; */
	/* margin-top: -2px; */
	width: 1em;
	display: block;
	font-family: 'icomoon';
	letter-spacing: 0;
	speak: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	content: "\e910";
	color: #ffffff;
	font-size: 1rem;
	-webkit-transform: translate(0%, -50%);
	transform: translate(0%, -50%);
}

.elementor-button .elementor-button-text {
	display: inline-block;
	line-height: 1.2;
}

@media screen and (max-width: 767px) {
	.elementor-button {
		padding: 4vw 9vw 4vw 9vw !important;
		width: 90% !important;
		display: block !important;
		margin: auto;
		margin-right: auto;
		font-size: 2.2rem !important;
		top: 25px;
		/* border-radius: 10px !important; */
	}
	.upage .elementor-button {
		width: 90% !important;
	}
	.elementor-button:after {
		right: 5vw !important;
		margin-top: -0.5vw;
	}
}


/*--------------------------------------
table
--------------------------------------*/

.table_color tr > * {
	border: 1px solid #CBCAC9;
	padding: 10px 11px;
	line-height: 1.4;
}

.table_color tr > * p + p {
	margin-top: 5px;
}

.table_color th {
	background: #F7F9FA;
	/* color: #fff; */
}

.table_color thead th {
	background: #F0F5EF;
	color: #fff;
}

.table_color tbody th {
	width: 30%;
}

.table_price tr > *,
.table_price.table_color tbody th {
	width: 50%;
	text-align: center;
	padding: 10px 5px;
}

@media screen and (max-width: 767px) {
	.table_price th,
	.table_price td {
		font-size: 1.2rem;
	}
	.table_col03 th,
	.table_col03 td {
		padding: 5px;
	}
}


/*--------------------------------------
sitemappage_sitemap
--------------------------------------*/

.sitemappage_sitemap li a:before {
	background: #6DC8EB;
}

@media screen and (min-width: 1121px) {
	.sitemappage_sitemap li a:before {
		/* margin-top:-2px; */
	}
}


/* =====================================
■お問い合わせ
===================================== */

.step_list li {
	color: #BFBEBD;
}

.step_list li span {
	background: #BFBEBD;
	color: #fff;
}

.step_list li span:after {
	background: #BFBEBD;
}

.step_list li.current {
	color: #373431;
}

.step_list li.current span {
	background: #9BCB69;
}

.step_list li span.current:after {
	background: #9BCB69;
}

.inquiryFormTable {
	border-top: 1px solid #707070;
}

.inquiryFormTable dt {
	color: #2C2F30;
}

.inquiryFormTable input,
.inquiryFormTable textarea,
.inquiryFormTable select {
	border: 1px solid #BFBEBD;
}

.inquiryFormTable input.wpcf7-not-valid {
	border: 1px solid #D93636 !important;
	background: #FDD2D2 !important;
}

.inquiryFormTable .comment {
	color: #63696A;
}

.inquiryFormTable .required {
	background: #F48628;
	color: #fff;
}

.inquiryFormTable .optional {
	color: #fff;
	background: #63696A;
}

.inquiryFormTable .btBox input[type="submit"] {
	background-color: #F48628 !important;
}

.inquiryFormTable .btBox input[type="submit"].disabled {
	background-color: #72706E !important;
	color: #BFBEBD;
}

.inquiryFormTable .btBox input[type="submit"].abled {
	background: #F89D10;
}

.inquiryFormTable .wpcf7-back {
	color: #fff;
	background-color: #72706E !important;
	font-weight: bold;
}

.verified_table .wpcf7-validates-as-required:not(.wpcf7-not-valid) + .verify_icon:before {
	color: #F48628;
}

.inquiryFormTable .wpcf7-not-valid-tip {
	color: #DE5050;
}

.file_btn {
	background: #807B7B;
	color: #fff;
}


/*______________________________________________________________________________
ラジオボタン

*/

.radio_style span:before {
	border: 1px solid #dedede;
	background: #fff;
}

.radio_style input:checked + .radio_txt:after {
	background: #ce6f6f;
}


/*______________________________________________________________________________
チェックボックス
*/

.checkbox_style span:before {
	border: 1px solid #dedede;
	background: #fff;
}

.checkbox_style input:checked + .checkbox_txt:after {
	border-bottom: 3px solid #353662;
	border-right: 3px solid #353662;
}


/* =====================================
■step_narabi
===================================== */

.step_narabi > li:not(:first-child):before {
	border-left: 14px solid #353662;
}


/* =====================================
■管理画面調整
===================================== */

.frontpage > .news_dl_wrap,
.frontpage > .widget_recent_entries {
	display: none;
}

.elementor-editor-active .upage .col_block03 > div > div > div .elementor-background-overlay {
	display: none;
}


/*--------------------------------------
contact_area
--------------------------------------*/

.contact_area {
	background: #4f6aad url(/wp-content/uploads/6348fdddeaca3a0f505f4315c0969e7c.jpg) center center no-repeat;
	background-size: cover;
	color: #fff;
	text-align: center;
	padding: 65px 0 70px;
}

#body_frontpage main .contact_area {
	margin-top: 90px;
}

.contact_area .tl_sub {
	font-family: "太ミンA101", serif;
	font-size: 1.9rem;
}

.contact_area h2 {
	font-size: 3.5rem;
	letter-spacing: 0.1em;
	line-height: 1.6;
	margin-bottom: unset;
	font-family: "丸フォーク R";
	margin-bottom: 20px;
}

.contact_area .contact_btn {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	margin: 45px auto 0;
	max-width: 1000px;
}

.contact_area .contact_btn li {
	background: #fff;
	width: 33.1%;
	max-width: 331px;
	position: relative;
}

.contact_area .txt {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: center;
	line-height: 2;
}

.contact_area img {
	width: 100%;
}

.contact_area .txt dd {
	text-align: left;
}

.contact_area .txt dt {
	padding-right: 5px;
}

@media screen and (max-width: 767px) {
	.contact_area {
		margin-top: 0;
		padding: 20vw 0 5vw;
		background-image: url(/wp-content/uploads/6badde2b62820b3a54fe53ffbef1301d.jpg);
	}
	.contact_area h2 {
		margin-top: -10vw;
		margin-bottom: 7vw;
		font-size: 2.9rem;
	}
	.contact_area .contact_btn li {
		width: 100%;
		max-width: inherit;
	}
	.contact_area .contact_btn li + li {
		margin-top: 3vw;
	}
	.contact_area .txt {
		text-align: left;
		display: inherit;
		flex-wrap: inherit;
		align-items: inherit;
		justify-content: inherit;
	}
	.contact_area .contact_btn {
		margin-top: 5vw;
	}
	.contact_area .txt dt {
		display: inline;
	}
	.contact_area .txt dd {
		display: inline;
	}
	.contact_area .txt dd .sp {
		display: inline !important;
	}
}

@media screen and (max-width: 1200px) and (min-width: 768px) {
	.contact_area .txt {
		font-size: 1.3rem;
	}
}


/*--------------------------------------
js-hover-fade
--------------------------------------*/

.touch_mode .js-hover-fade img:first-of-type {
	display: none;
}

a.js-hover-fade {
	display: block;
}

a.js-hover-fade img {
	width: 100% !important;
	top: 0;
	left: 0;
	display: block;
	transition: 0.5s ease;
}

a.js-hover-fade:hover {
	opacity: 1 !important;
}

@media screen and (max-width: 1120px) {
	a.js-hover-fade img {
		z-index: 10;
		position: relative;
	}
	a.js-hover-fade img.sp {
		z-index: 11;
	}
}


/* =====================================
■ top_news_area
===================================== */

.top_news_area {
	margin-top: 140px;
	padding-bottom: 60px;
}

.news_link_top + .news_link_top .top_news_tl {
	margin-bottom: 0 !important;
}

.news_link_top .gcal iframe {
	height: 500px;
}

.news_link_top {
	width: 48% !important;
}

.news_link_top .top_news_tl {
	padding: 0;
	margin-bottom: 20px !important;
}

.news_link_top + .news_link_top .top_news_tl {
	margin-bottom: 0 !important;
}

.news_link_top .gcal iframe {
	height: 500px;
}

.news_link_top {
	width: 48% !important;
}

.top_news_area > div > div {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
}

.news_link_top .top_news_tl .elementor-heading-title {
	padding-top: 0 !important;
	margin-top: 0 !important;
	border-bottom: 1px solid #DEDEDE;
	margin-bottom: 0 !important;
	line-height: 1.2 !important;
	width: auto;
	text-align: left;
	/* color: #88B757; */
	padding-bottom: 13px;
	font-size: 1.6rem;
	font-family: "丸フォーク R";
	font-size: 3rem;
	color: #4359A6;
	line-height: 1.3;
}

.news_link_top .neww_list_link {}

.news_link_top .neww_list_link a {
	color: #6DC8EB;
}

.news_link_top .neww_list_link {
	text-align: right;
	margin-top: 14px;
}

.news_link_top .col_inner {
	padding-top: 0 !important;
	overflow-y: scroll;
	max-height: 480px;
	/* border-bottom: 1px solid #707070; */
	padding-bottom: 0;
}

.news_link_top .news_dl_wrap {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
	position: relative;
}

.news_link_top .news_dl_wrap + .news_dl_wrap {
	border-top: 1px solid #DEDEDE;
}

.news_link_top .news_dl_wrap dl {
	width: auto;
	position: relative;
	padding: 20px 0;
}

.news_link_top .news_dl_wrap dt {
	font-size: 1.3rem;
	width: 12em;
	letter-spacing: 2px;
	text-align: left;
	position: relative;
	margin-bottom: 8px;
	font-family: "ヒラギノ角ゴ W5 JIS2004";
}

.news_link_top .news_dl_wrap a {
	text-decoration: none !important;
	width: 100%;
}

.news_link_top .news_dl_wrap dd {
	text-align: left;
	font-size: 1.4rem;
	letter-spacing: 2px;
	display: table-cell;
	line-height: 1.6;
}

.news_link_top .news_dl_wrap .entry-icon-new {
	color: #F39939;
	line-height: 1;
	padding: 3px 0 2px 2px;
	top: 1px;
	right: 0;
	position: absolute;
	width: auto;
	font-family: "Montserrat";
	font-size: 1.4rem;
	letter-spacing: 0;
}

@media screen\0 {
	.news_link_top .news_dl_wrap .entry-icon-new {
		padding: 4px 0 0 2px;
		top: 3px
	}
}

.news_link_top .news_shortcode .news_dl_wrap:first-child a dl {
	padding-top: 10px !important;
}

@media screen and (max-width: 767px) {
	.news_link_top .top_news_tl .elementor-heading-title {
		padding-bottom: 5vw;
	}
	.news_link_top .news_dl_wrap dt {
		width: 14.3em;
		margin-bottom: 1vw;
	}
	.news_link_top .news_dl_wrap .entry-icon-new {
		top: 0.8vw;
		font-size: 1rem;
		width: 13vw;
	}
	.news_link_top .neww_list_link {
		top: 1vw;
		position: absolute;
		margin-top: 0;
	}
	.news_link_top .neww_list_link a {
		text-decoration: none !i;
	}
	.news_link_top .top_news_tl {
		padding: 0vw 0vw 0;
		margin-bottom: 5vw !i;
	}
	.top_news_area {
		margin-top: 0 !important;
		padding-bottom: 15vw !important;
	}
	.news_link_top {
		width: 100% !important;
	}
	.news_link_top .news_dl_wrap dl {
		padding: 5vw 0;
	}
	.news_link_top .col_inner {
		max-height: 70vw;
	}
	.news_link_top + .news_link_top {
		margin-top: 15vw;
	}
	.news_link_top .gcal iframe {
		height: 130vw;
	}
}

@media screen and (min-width: 768px) {
	.news_link_top .news_dl_wrap dl {
		padding-right: 10px;
	}
}


/*--------------------------------------
fixed_box
--------------------------------------*/

#footer .fixed_box {
	position: fixed;
	right: 0;
	width: 439px;
	z-index: 999;
	-moz-transition-duration: 0.7s;
	-o-transition-duration: 0.7s;
	-webkit-transition-duration: 0.7s;
	transition-duration: 0.7s;
	box-sizing: border-box;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}

#footer .fixed_box ul li {}

#footer .fixed_box li img {
	width: 100%;
	margin: auto;
}

#page_top {
	width: 58px;
}

.ie #header {
	top: 0 !important;
}

.ie #footer .fixed_box {
	bottom: 0 !important;
}

@media screen and (max-width: 767px) {
	#footer .fixed_box {
		right: 0;
		width: 100vw;
		box-sizing: border-box;
		position: fixed;
		z-index: 999;
		-moz-transition-duration: 0.7s;
		-o-transition-duration: 0.7s;
		-webkit-transition-duration: 0.7s;
		transition-duration: 0.7s;
		display: flex !important;
		flex-wrap: wrap;
		align-items: center;
		justify-content: space-between;
	}
	#footer .fixed_box .pagetop {
		width: 13vw;
		height: 13vw;
		background: #dedede;
		display: flex;
		flex-wrap: wrap;
		align-items: stretch;
		justify-content: center;
	}
	#footer .fixed_box .pagetop a {
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: center;
	}
	#footer .fixed_box .pagetop img {
		width: 100%;
	}
	#footer .fixed_box ul:after {
		display: none;
	}
	#footer .fixed_box ul {
		width: 87vw;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		overflow: hidden;
		justify-content: space-between;
	}
	#footer .fixed_box li {
		width: 50.2vw;
		position: relative;
		background: #4359a6;
	}
	#footer .fixed_box li:nth-child(2),
	#footer .fixed_box li:nth-child(3) {
		width: 18.4vw !important;
		background: #6dc8eb;
	}
	#footer .fixed_box li + li {
		width: 47% !important;
	}
	#footer .fixed_box li + li:before {
		background: #fff;
		position: absolute;
		content: "";
		height: 150%;
		width: 1px;
		top: 50%;
		left: 0%;
		-webkit-transform: translate(0%, -50%);
		transform: translate(0%, -50%);
	}
	#footer .fixed_box li img {
		width: 100%;
	}
	#footer .fixed_box li a {
		height: 13vw;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: center;
		margin-right: 1px;
		text-align: center;
	}
	#footer .fixed_box li:last-child a {}
	#footer .fixed_box li:nth-child(1) a {}
	#footer .fixed_box li:nth-child(2) a {}
	#footer .fixed_box li:nth-child(3) a {}
	.f_bottom {
		padding: 8vw 0 32vw;
	}
	#footer .fixed_box a:hover {
		opacity: 1
	}
}

@media screen and (min-width: 768px) {
	#footer .fixed_box ul li {
		line-height: 1;
		width: 216px;
	}
	#footer .fixed_box ul {
		width: 376px;
		background: #fff;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: space-between;
	}
	#footer .fixed_box ul li:nth-child(2) {
		width: 80px;
	}
	#footer .fixed_box ul li:nth-child(3) {
		width: 80px;
	}
	#footer .fixed_box ul li:nth-child(4) {
		width: 50px;
	}
	#footer .fixed_box ul li a,
	#footer .fixed_box ul li img:not(.sp) {
		display: block;
	}
}


/*--------------------------------------
info_footer
--------------------------------------*/

.f_bnr img {
	display: block;
}

.info-footer {
	padding: 40px 0 80px 0;
	background: #FAFAFA;
}

.info-footer > div {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: space-between;
}

.info-footer > div:after {
	display: none !important;
}

.info-footer .container + .container {
	margin-top: 30px;
}

.info-footer .footer_left {
	width: 42%;
}

.info-footer .fooger_logo {
	max-width: 311px;
}

.info-footer .f_ad_box {
	width: 36%;
	padding-left: 10px;
	font-size: 1rem;
	box-sizing: border-box;
}

.info-footer .f_ad_box a {
	text-decoration: none !important;
}

.info-footer .sitemap_box {
	text-align: right;
	margin-top: 40px;
}

.info-footer .sitemap_box p {
	font-size: 1rem;
}

.info-footer .sitemap_box p a {
	text-decoration: none !important;
	color: #4359A6;
}

.info-footer .footer_right {
	width: 56%;
	/* max-width: 350px; */
	text-align: right;
}

.info-footer .footer_right p img {
	display: block;
	margin-left: auto;
	margin-right: 0;
}

.info-footer .text-footer {
	font-size: 1.3rem;
	margin-top: 30px;
	color: #4359A6;
}

.info-footer .text-footer dl {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: flex-start;
}

.info-footer .text-footer dl + dl {
	margin-top: 10px;
}

.info-footer .text-footer dl > * {}

.info-footer .text-footer dt {
	width: 7em;
	font-family: "ヒラギノ角ゴ W5 JIS2004";
}

.info-footer .text-footer a {
	color: #4359A6;
}

.info-footer .f_bnr {
	width: 38.5%;
	max-width: 400px;
}

.info-footer .f_bnr a {
	-webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.1);
	-moz-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.1);
	box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.1);
	display: block;
}

#footer_widget small {
	color: #4359A6;
	font-size: 1rem;
	display: block;
	margin-top: 10px;
}

.fbnr {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}

.fbnr p {
	width: 49.7%;
	max-width: 300px;
}

@media screen and (max-width: 767px) {
	.info-footer {
		padding: 9vw 0 19vw 0;
	}
	.info-footer .footer_left {
		width: 100%;
	}
	.info-footer .fooger_logo {
		width: 100%;
		/* max-width: inherit; */
		margin: 0;
	}
	.info-footer .f_bnr {
		width: 100%;
		margin: 5vw auto 0;
	}
	small.sp {
		display: block;
		text-align: center;
		width: 100%;
		font-size: 1rem;
	}
	.info-footer .footer_right {
		width: 100%;
		max-width: inherit;
		margin-top: 5vw;
	}
	#footer_widget small {
		text-align: center;
	}
	.info-footer .text-footer {
		font-size: 1.3rem;
		margin-top: 7vw;
	}
	.info-footer .container + .container {
		display: flex;
		flex-wrap: wrap;
		align-items: flex-start;
		justify-content: space-between;
		margin-top: 5vw;
	}
	.info-footer .container + .container > div {
		width: 38%;
	}
	.info-footer .container + .container > div + div {
		width: 62%;
		margin-top: 0;
	}
	.info-footer .text-footer dl + dl {
		margin-top: 3vw;
	}
	.fbnr p {
		width: inherit;
	}
	.fbnr {
		flex-direction: column;
	}
	.fbnr p + p {
		margin-top: 3vw;
	}
	.info-footer .sitemap_box {
		margin-top: 10vw;
		text-align: center;
	}
}

@media screen and (max-width: 1120px) and (min-width: 768px) {
	.info-footer .text-footer dt,
	.info-footer .text-footer dd {
		font-size: 1.1rem;
	}
	.info-footer .text-footer dt {
		width: 6em;
	}
}


/*--------------------------------------
top_about_maplink
--------------------------------------*/

.top_access_block_con .elementor-col-50 {
	width: 48% !important;
}

.top_access_block_con .elementor-row {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: space-between;
	margin-bottom: 10px;
}

.access_table {
	width: 100%;
}

.access_table table {
	width: 100%;
}

.access_table tbody tr * {
	/* padding-top: 20px; */
}

.access_table tbody th {
	/* color: #9C2116; */
	vertical-align: text-bottom;
	width: 8em;
}


/*top_about_txt timetable*/

.top_about_txt .timetable {
	width: 100%;
	table-layout: fixed;
	border-collapse: collapse;
	margin-bottom: 10px;
	margin-top: 25px;
	background: #fff;
}

.top_about_txt .timetable thead {
	background: #6DC8EB;
}

.top_about_txt .timetable th,
.top_about_txt .timetable td {
	text-align: center;
	vertical-align: middle;
	line-height: 1;
	letter-spacing: 0;
	padding: 20px 0;
	font-size: 1.5rem;
}

.top_about_txt .timetable td {
	/* color: #F48628; */
}

.top_about_txt .timetable thead th {
	font-weight: normal;
	border-bottom: 1px solid #e2e2e2;
	padding: 21px 0;
	vertical-align: top;
	color: #fff;
}

.top_about_txt .timetable thead th:first-child {
	text-align: left;
	letter-spacing: 3px;
	/* padding-bottom: 24px; */
	/* font-weight: bold; */
}

.top_about_txt .timetable tr > th:first-child {
	padding-left: 25px;
}

.top_about_txt .timetable thead th:not(:first-child) {
	width: 8.5%;
}

.top_about_txt .timetable thead th:last-child,
.top_about_txt .timetable tbody td:last-child {
	width: 16%;
}

.top_about_txt .timetable tbody th {
	word-break: keep-all;
	white-space: nowrap;
	text-align: left;
	letter-spacing: 0.1em;
	width: 34%;
}

.top_about_txt .timetable tbody tr:first-child th,
.top_about_txt .timetable tbody tr:first-child td {}

.top_about_txt .timetable tbody tr:not(:first-child) th,
.top_about_txt .timetable tbody tr:not(:first-child) td {
	border-top: 1px solid #DEDEDE;
}

.top_about_txt .timetable + p {}

.top_about_txt .access_table td {
	/* font-size: 1.4rem; */
}

.top_about_txt .access_table th {
	width: 9em;
	/* font-weight: 700; */
	vertical-align: top;
	/* font-size: 1.4rem; */
}

.top_about_txt .access_table th,
.top_about_txt .access_table td {
	padding: 17px 0;
	font-size: 1.5rem;
	border-bottom: 1px solid #4359A6;
}

.top_about_txt .access_table tr:first-child > * {
	padding-top: 0;
}

.top_about_txt .access_table tbdy tr:first-child th,
.top_about_txt .access_table tbdy tr:first-child td {
	padding: 0px 0 10px 0;
}


/*map*/

.top_access_block_con {}

.elementor:not(.elementor-bc-flex-widget) .top_about_map > div > .elementor-widget-wrap,
.elementor:not(.elementor-bc-flex-widget) .top_about_map > div > .elementor-widget-wrap > div:first-child,
.elementor:not(.elementor-bc-flex-widget) .top_about_map > div > .elementor-widget-wrap > div:first-child:first-child > div,
.elementor:not(.elementor-bc-flex-widget) .top_about_map > div > .elementor-widget-wrap > div:first-child > div > div {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: stretch;
	justify-content: center;
	width: 100%;
}

.top_about_map iframe {
	height: 100% !important;
}

.top_about {
	background: #F7F9FA;
	padding-bottom: 70px !important;
}

.top_about_map {
	position: relative;
	padding-bottom: 68px;
}

.top_about_maplink {
	position: absolute !important;
	bottom: -40px;
	right: 0;
}

.top_about_maplink a {
	margin-left: auto;
	margin-right: 0;
	color: #4359A6;
}

@media screen and (max-width: 767px) {
	.top_access_block_con .elementor-col-50 {
		width: 100% !important;
		/* padding: 3vw 0; */
	}
	.top_access_block_con .elementor-col-50 + .elementor-col-50 {
		margin-top: 5vw;
		padding-bottom: 0 !i;
	}
	.top_about_map iframe {
		height: 100vw !important;
	}
	.top_about_txt .timetable th,
	.top_about_txt .timetable td {
		font-size: 1.5rem;
	}
	.top_about_txt .timetable thead th:not(:first-child) {
		width: 8%;
	}
	.top_about_txt .timetable thead th:last-child {
		letter-spacing: 0 !important;
	}
	.top_about_txt .timetable thead th:last-child,
	.top_about_txt .timetable tbody td:last-child {
		width: 16.4%;
	}
	.top_about_txt .access_table tr,
	.top_about_txt .access_table th,
	.top_about_txt .access_table td {
		/* display: block; */
		padding: 3.6vw 0;
	}
	.top_about_txt .access_table th {
		width: 8em;
	}
	.top_about_txt .access_table td {
		/* padding-bottom: 0; */
	}
	.top_about_txt .access_table tr + tr {
		margin-top: 2vw;
	}
	.top_about_txt .timetable thead th {
		padding: 6vw 0;
	}
	.top_about_txt .timetable tr > th:first-child {
		padding-left: 3vw;
	}
	.top_about_txt .timetable th,
	.top_about_txt .timetable td {
		padding: 5vw 0;
		letter-spacing: 0;
	}
	.top_about_txt .timetable tbody tr:first-child th,
	.top_about_txt .timetable tbody tr:first-child td {}
	.top_about_txt .timetable th {
		letter-spacing: 0 !important;
	}
	.top_about_txt .timetable tbody tr:last-child th,
	.top_about_txt .timetable tbody tr:last-child td {}
	.top_about_txt .timetable {
		margin-bottom: 3vw;
		margin-top: 10vw;
	}
	.top_about_maplink {
		position: relative !important;
		bottom: inherit;
		right: inherit;
		margin-top: 2vw;
	}
	.top_access_block_con .elementor-row {
		margin-bottom: 5vw;
	}
	.top_about {
		padding-bottom: 15vw !important;
	}
}

@media screen and (max-width: 1120px) and (min-width: 768px) {
	.top_about_txt .timetable thead th:not(:first-child) {
		width: 8%;
	}
	.top_about_txt .timetable th,
	.top_about_txt .timetable td {
		font-size: 1.3rem;
	}
	.top_about_txt .timetable thead th:last-child,
	.top_about_txt .timetable tbody td:last-child {
		width: 15%;
	}
	.top_about_txt .access_table th,
	.top_about_txt .access_table td {
		font-size: 1.3rem;
	}
	.top_about_txt .timetable th,
	.top_about_txt .timetable td {}
	.top_about_txt .timetable tr > th:first-child {
		padding-left: 10px;
	}
}


/* =====================================
■ 追加
===================================== */

.top_patient .lead {
	font-family: "丸フォーク R";
	color: #4359A6;
	font-size: 3rem;
	letter-spacing: 0;
	line-height: 1.8;
	border-bottom: 2px solid #F9D1CB;
	display: inline;
	padding-bottom: 0;
}

.top_patient .txt {
	margin-top: 30px;
	padding-bottom: 120px;
}

.top_patient_area > div > div > div {
	width: 48.2% !important;
}

.top_patient_area:before {
	position: absolute;
	content: "";
/* 	background: url(./img/top_patient_img_pc.jpg) no-repeat right top / contain; */
	background: url(/wp-content/uploads/top_patient_img.png) no-repeat right top / contain;
	width: 48%;
	top: 30px;
	max-width: 663px;
	right: 0;
	height: 95%;
	height: -webkit-calc(100% - 110px);
	height: calc(100% - 110px);
}

.top_patient_area {
	padding-bottom: 80px !important;
}

.top_commitments {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: space-between;
}

.top_commitments > li {
/* 	background: #ccc url(./img/top_commitments01_pc.jpg) no-repeat center center /cover; */
	background: #ccc url(/wp-content/uploads/top_commitments_01.jpg) no-repeat center center /cover;
	position: relative;
	width: 50%;
	height: 360px;
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: space-between;
}

.top_commitments > li:nth-child(3),
.top_commitments > li:nth-child(4),
.top_commitments > li:nth-child(5) {
	width: 33.333333%;
}

.top_commitments .off_txt {
	width: 100%;
	text-align: center;
	color: #fff;
	font-size: 2rem;
	font-family: "ヒラギノ角ゴ W5 JIS2004";
	line-height: 1.5;
	padding-top: 130px;
}

.top_commitments .off_txt span {
	font-size: 5rem;
	display: block;
	letter-spacing: 0;
	font-family: 'Montserrat';
}

.top_commitments > li:nth-child(3) .off_txt,
.top_commitments > li:nth-child(4) .off_txt,
.top_commitments > li:nth-child(5) .off_txt {
	padding-top: 90px;
}

.top_commitments .txt_block {
	opacity: 0;
	transition: 0.5s ease;
	display: block;
	background: rgb(255 255 255 / 90%);
	height: 90%;
	height: -webkit-calc(100% - 100px);
	height: calc(100% - 100px);
	width: 90%;
	width: -webkit-calc(100% - 100px);
	width: calc(100% - 100px);
	top: 50%;
	left: 50%;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	padding: 30px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	flex-direction: column;
}

.top_commitments > li:nth-child(2) {
/* 	background-image: url(./img/top_commitments02_pc.jpg); */
	background-image: url(/wp-content/uploads/top_commitments_02.jpg);
}

.top_commitments > li:nth-child(3) {
/* 	background-image: url(./img/top_commitments03_pc.jpg); */
	background-image: url(/wp-content/uploads/top_commitments_03.png);
}

.top_commitments > li:nth-child(4) {
/* 	background-image: url(./img/top_commitments04_pc.jpg); */
	background-image: url(/wp-content/uploads/top_commitments_04.png);
}

.top_commitments > li:nth-child(5) {
/* 	background-image: url(./img/top_commitments05_pc.jpg); */
	background-image: url(/wp-content/uploads/top_commitments_05.png);
}



.top_commitments .txt_block dt {
	color: #4359A6;
	font-family: "ヒラギノ角ゴ W5 JIS2004";
	font-size: 2rem;
	margin-bottom: 10px;
	text-align: center;
	line-height: 1.5;
	width: 100%;
}

.top_commitments .txt_block dd {
	width: 100%;
}

.top_commitments > li:nth-child(3) .txt_block,
.top_commitments > li:nth-child(4) .txt_block,
.top_commitments > li:nth-child(5) .txt_block {
	padding: 15px;
	height: 90%;
	height: -webkit-calc(100% - 50px);
	height: calc(100% - 50px);
	width: 90%;
	width: -webkit-calc(100% - 50px);
	width: calc(100% - 50px);
}

.top_commitments_area {
	padding-bottom: 110px !important;
}

.top_menu_area .parallax_bg {
	background: #f5fafe url(./img/top_menu_bg.jpg);
	background-size: cover;
	width: 100vw;
	height: 100vh;
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	display: block;
}

.top_menu_area {
	overflow: hidden;
	position: relative;
	padding-top: 30px !important;
	padding-bottom: 110px !important;
}

.top_menu_area > * {
	position: relative;
	z-index: 10;
}

.top_menu01 figure {
	width: 43.1%;
	max-width: 465px;
}

.top_menu01 li {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
}

.top_menu01 .txt_block {
	background: rgb(255 255 255 / 90%);
	margin: 90px 0 0 -165px;
	width: 56%;
	width: -webkit-calc(56.9% + 165px);
	width: calc(56.9% + 165px);
	padding: 45px 30px 40px 50px;
	position: relative;
}

.top_menu01 .stl {
	font-family: "ヒラギノ角ゴ W5 JIS2004";
	color: #4359A6;
	font-size: 2.8rem;
	line-height: 1.4;
	margin-bottom: 25px;
}

.top_menu01 .btn_block {
	text-align: center;
	margin-top: 25px;
}

.top_menu01 li + li {
	margin-top: 40px;
}

.top_menu01 li:nth-child(2n) {
	flex-direction: row-reverse;
}

.top_menu01 li:nth-child(2n) .txt_block {
	margin-right: -165px;
	margin-left: 0;
}

.top_menu02 {
	margin-top: 40px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
}

.top_menu02 li {
	position: relative;
	width: 22.3%;
	max-width: 240px;
}

.top_menu02:before {
	content: "";
	width: 10%;
	height: 10px;
	display: block;
}

.top_menu02 li:not(:first-child):not(:nth-child(4)) {
	margin-left: 3.6%;
}

.top_menu02 li:not(:first-child):not(:nth-child(2)):not(:nth-child(3)) {
	margin-top: 3.6%;
}

.top_menu02 li:nth-child(3) {
	margin-right: 10%;
}

.top_greeting_area:before {
	position: absolute;
	content: "";
/* 	background: url(./img/top_greeting_pc.png) no-repeat left center / cover; */
	background: url(/wp-content/uploads/top_greeting.png) no-repeat left center / cover;
/* 	width: 62%; */
	width:42%;
	height: 100%;
/* 	left: 38%; */
	left:48%;
	top: 0;
}

.top_greeting_area > div > div > div {
	width: 48% !important;
}

.top_greeting {
	margin-bottom: 50px;
}

.top_greeting .txt {
	line-height: 2;
	margin-bottom: 50px;
}

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

.top_greeting .cname {
	margin-bottom: 20px;
}

.top_greeting .name {
	font-family: "丸フォーク R";
	font-size: 2.4rem;
	color: #4359A6;
	letter-spacing: 0;
	line-height: 1.3;
}

.top_greeting .en {
	color: #4359A6;
	font-size: 1.3rem;
	letter-spacing: 0.04em;
	line-height: 1.3;
}

.top_greeting_area {
	padding-bottom: 75px !important;
	background: #F8F8F8;
}

@media screen and (max-width: 767px) {
	.top_patient_area > div > div > div {
		width: 100% !important;
	}
	.top_patient .lead {
		font-size: 2.5rem;
	}
	.top_patient .txt {
		margin-top: 6vw;
		padding-bottom: 90vw;
	}
	.top_patient_area:before {
/* 		background: url(./img/top_patient_img_sp.jpg) no-repeat right bottom / contain; */
		background: url(/wp-content/uploads/top_patient_img_sp.png) no-repeat right bottom / contain;
		width: 94vw;
		height: 85vw;
		top: inherit;
		bottom: 30vw;
	}
	.top_commitments > li {
		width: 100% !important;
/* 		background: #fff url(./img/top_commitments01_sp.jpg) no-repeat center top / 100%; */
		background: #fff url(/wp-content/uploads/top_commitments_sp01.png) no-repeat center top / 100%;
		flex-direction: column;
		justify-content: flex-start;
		align-items: flex-start;
		height: inherit;
	}
	.top_commitments .off_txt {
		padding-top: 10vw !important;
		height: 58vw;
	}
	.top_commitments .txt_block {
		opacity: inherit;
		background: none;
		padding: 0 !important;
		width: 100% !important;
		height: auto !important;
		position: relative;
		top: inherit;
		left: inherit;
		-webkit-transform: inherit;
		transform: inherit;
	}
	.top_commitments .txt_block dt {
		display: none;
	}
	.top_commitments > li + li {
		margin-top: 10vw;
	}
	.top_commitments > li:nth-child(2) {
/* 		background-image: url(./img/top_commitments02_sp.jpg); */
		background-image: url(/wp-content/uploads/top_commitments_sp02.png);
	}
	.top_commitments > li:nth-child(3) {
/* 		background-image: url(./img/top_commitments03_sp.jpg); */
		background-image: url(/wp-content/uploads/top_commitments_sp03.png);
	}
	.top_commitments > li:nth-child(4) {
/* 		background-image: url(./img/top_commitments04_sp.jpg); */
		background-image: url(/wp-content/uploads/top_commitments_sp04.png);
		
	}
	.top_commitments > li:nth-child(5) {
/* 		background-image: url(./img/top_commitments05_sp.jpg); */
		
		background-image: url(/wp-content/uploads/top_commitments_sp05.png);
	}
	.top_commitments_area {
		padding-bottom: 15vw !important;
	}
	.top_patient_area {
		padding-bottom: 15vw !important;
	}
	.top_menu_area {
		padding-top: 0 !important;
		padding-bottom: 12vw !important;
	}
	.top_menu01 figure {
		width: 100vw;
		max-width: inherit;
		margin: 0 -6vw !important;
	}
	.top_menu01 li {
		display: block;
		flex-wrap: inherit;
		align-items: inherit;
		justify-content: inherit;
	}
	.top_menu01 .txt_block {
		width: 88vw !important;
		margin: -10vw 0 0 0;
		padding: 6vw;
	}
	.top_menu01 .stl {
		font-size: 2.2rem;
		margin-bottom: 3vw;
	}
	.top_menu01 .btn_block {
		margin-top: 4vw;
	}
	.top_menu01 li + li {
		margin-top: 15vw;
	}
	.top_menu02 {
		margin-top: 15vw;
	}
	.top_menu02 li {
		max-width: inherit;
		width: 48%;
		margin-left: 0 !important;
		margin-right: 0 !important;
		margin-top: 0% !important;
		margin-bottom: 4% !important;
	}
	.top_menu02:before {
		display: none;
	}
	.top_menu02 li:nth-child(2n) {
		margin-left: 4% !important;
	}
	.top_greeting_area > div > div > div {
		width: 100% !important;
	}
	.top_greeting_area:before {
/* 		background: url(./img/top_greeting_sp.png) no-repeat center top / contain; */
		background: url(/wp-content/uploads/top_greeting_sp.png) no-repeat center top / contain;
		width: 100%;
		left: 0;
		top: 30vw;
	}
	.top_greeting {
		margin-top: 83vw;
		margin-bottom: 10vw;
	}
	.top_greeting .txt {
		margin-bottom: 5vw;
	}
	.top_greeting .cname {
		margin-bottom: 3vw;
		width: 100%;
	}
	.top_greeting .name_block {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: flex-end;
	}
	.top_greeting .en {
		margin-left: 4vw;
	}
	.top_greeting_area {
		padding-bottom: 15vw !important;
	}
}

@media screen and (max-width: 1120px) and (min-width: 768px) {
	.top_patient_area:before {
		width: 30%;
	}
	.top_patient_area > div > div > div {
		width: 70% !important;
	}
	.top_patient .txt {
		padding-bottom: 0;
	}
	.top_commitments .txt_block {
		padding: 15px;
		height: 90% !important;
		height: -webkit-calc(100% - 50px) !important;
		height: calc(100% - 50px) !important;
		width: 90% !important;
		width: -webkit-calc(100% - 50px) !important;
		width: calc(100% - 50px) !important;
	}
	.top_commitments .txt_block dt {
		font-size: 1.4rem;
	}
	.top_commitments .txt_block dd {
		font-size: 1.3rem;
	}
	.top_greeting .txt {
		font-size: 1.3rem;
		margin-bottom: 10px;
	}
	.top_greeting_area .top_tl {
		padding-top: 20px !important;
		margin-bottom: 0px !important;
	}
	.top_greeting_area:before {
		left: inherit;
		right: -14%;
		background-position: right center;
		width: 100%;
		background-size: auto 100%;
	}
	.top_greeting .cname {
		font-size: 1.3rem;
		margin-bottom: 5px;
	}
	.top_greeting {
		margin-bottom: 10px;
	}
}

@media screen and (max-width: 1120px) and (min-width: 950px) {
	.top_greeting_area:before {
		right: -10%;
	}
}

@media screen and (min-width: 768px) {
	.top_commitments > li:hover .off_txt {
		display: none;
		transition: 0.5s ease;
	}
	
	.top_commitments > li:hover .txt_block {
		transition: 0.5s ease;
		opacity: 1;
	}
}