@charset "utf-8";

/*
Theme Name: genova_tpl
Theme URI: http://genova.co.jp/
*/


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

body {
	font-family: 'Noto Serif JP', "游明朝体 Pr6N M", "游明朝", YuMincho, "ヒラギノ明朝 Pr6 W6", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	color: #383838;
	font-size: 1.6rem;
	font-weight: 400;
	letter-spacing: 0.15em;
	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: #383838;
}

strong {
	font-weight: 700
}

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

.tac_txt {
	display: block;
	text-align: center;
}

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

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

.blog_con_in .post-content h4 {
	font-size: 1.8rem;
	border-bottom: 5px solid #0070b2;
	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: #3c7aa7 !important;
	line-height: 2.1em;
}

.elementor-element .elementor-icon-list-icon,
.elementor-element .elementor-icon-list-icon i,
.elementor-element .elementor-icon-list-icon i:before {
	/* line-height: 2.2em; */
	font-size: 1.4rem;
}

.list_mini.elementor-widget .elementor-icon-list-icon,
.list_mini.elementor-widget .elementor-icon-list-icon i,
.list_mini.elementor-widget .elementor-icon-list-icon i:before {
	line-height: 3.2em;
	font-size: 1rem;
}

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

@media screen and (max-width: 767px) {
	.elementor-element .elementor-icon-list-icon,
	.elementor-element .elementor-icon-list-icon i,
	.elementor-element .elementor-icon-list-icon i:before {
		font-size: 1.45rem;
		width: 5vw !important;
	}
}


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


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

#header {
	background: #ffffff;
}

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

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

@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: 70px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	text-align: center;
	justify-content: space-between;
}

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


/* 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: 320px;
	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: 1rem;
	text-decoration: none;
	padding: 22px 50px 0px 50px;
	transition: 0.5s ease;
	cursor: pointer;
	line-height: 1.5;
	letter-spacing: 0.1em;
	position: relative;
	color: #383838;
}

.gnav .menu > li > a > span {
	line-height: 1.4;
	font-size: 1.8rem;
	padding-bottom: 4px;
	/* position: absolute; */
	/* bottom: 10px; */
	/* left: 0; */
	width: 100%;
	letter-spacing: 0.05em;
}

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

.htel {
	position: absolute;
	width: 181px;
	top: 50%;
	right: 70px;
	-webkit-transform: translate(0%, -50%);
	transform: translate(0%, -50%);
	font-size: 0;
	line-height: 1;
}

.htel 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 {
		line-height: 1.4;
		font-size: 1.8rem;
		/* position: absolute; */
		/* bottom: 10px; */
		/* left: 0; */
		width: 100%;
		letter-spacing: 0.05em;
	}
	.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 {
		color: #3C7AA7 !important;
		transition: 0.5s ease;
	}
	#menu-g_nav .sub-menu {
		position: absolute;
		left: 50%;
		-webkit-transform: translate(-50%, 0%);
		transform: translate(-50%, 0%);
		z-index: 1;
		width: 250px;
		background: #8EB6D3;
		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: #ffffff;
		font-size: 10px;
	}
	#menu-g_nav .sub-menu li a:hover {
		background: #3c7aa7;
		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 #8eb6d3 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"; */
	}
	.htel {
		display: none;
	}
}

.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: #3C7AA7;
	border-radius: 4px;
}

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

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

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

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

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

@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: #EAEAEA;
	}
	#header .toggleMenu:before {
		/* position: absolute; */
		/* content: "MENU"; */
		/* color: #A09992; */
		/* font-size: 12px; */
		/* bottom: 11px; */
		/* left: 0; */
		/* width: 100%; */
		/* text-align: center; */
	}
	#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 #22201e;
		border-bottom: 2px solid #22201e;
		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 #eaeaea;
	}
	#menu-g_nav > li .sub-menu {
		position: relative;
		left: inherit;
		width: 100%;
		top: 0;
		opacity: 1;
		transition: none;
		background: #8EB6D3;
	}
	#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 #eaeaea !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: 1370px) and (min-width: 768px) {
	#header .right .right_left,
	#header .right .right_right {
		margin-right: 10px;
		flex-direction: column;
		width: 120px;
	}
	.htel {
		right: 20px;
		width: 130px;
	}
	.gnav {
		right: 170px;
	}
	.gnav .menu > li > a {
		/* font-size: 1rem; */
		padding-left: 20px;
		padding-right: 20px;
		/* letter-spacing: 0.1em; */
	}
	.gnav .menu > li > a span {
		/* font-size: 1.5rem; */
	}
	#header .logo {
		margin-left: 20px;
		width: 31%;
	}
	#menu-g_nav .sub-menu {
		width: 180px;
	}
	#menu-g_nav .sub-menu li a {}
}


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

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

#mainimage:before {
	position: absolute;
	content: "";
	background: url(./img/mv_txt_pc.png) center center no-repeat;
	width: 90%;
	height: 98px;
	z-index: 100;
	background-size: contain;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -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: 88vw;
		background-image: url(./img/mv_txt_sp.png);
		height: 100%;
	}
	#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: 25px;
	/* 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 #52DB74;
}

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

.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: 12px;
	background: url(./img/li_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 #3c7aa7;
	padding: 40px 55px 40px 55px;
	/* border-radius: 10px; */
}

.border_box.no_waku {
	border: none;
}

.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: #383838 !important;
	border: none !important;
	margin-top: 0;
	font-family: 'Noto Serif JP', serif;
	background: none;
	border-bottom: 1px solid #3C7AA7 !important;
	padding-bottom: 20px !important;
	line-height: 1.4 !important;
}

.post-content.upage .border_box.tl_color .elementor-widget-heading:not(.ori_tl) h2,
.post-content.upage .border_box.tl_color .elementor-widget-heading:not(.ori_tl) h3,
.post-content.upage .border_box.tl_color .elementor-widget-heading:not(.ori_tl) h4,
.post-content.upage .border_box.tl_color .elementor-widget-heading:not(.ori_tl) h5,
.post-content.upage .border_box.tl_color .elementor-widget-heading:not(.ori_tl) h6,
.post-content.upage .beta_box.tl_color .elementor-widget-heading:not(.ori_tl) h2,
.post-content.upage .beta_box.tl_color .elementor-widget-heading:not(.ori_tl) h3,
.post-content.upage .beta_box.tl_color .elementor-widget-heading:not(.ori_tl) h4,
.post-content.upage .beta_box.tl_color .elementor-widget-heading:not(.ori_tl) h5,
.post-content.upage .beta_box.tl_color .elementor-widget-heading:not(.ori_tl) h6 {
	color: #3C7AA7 !important;
}

.post-content.upage .border_box.border_box_color,
.post-content.upage .beta_box.border_box_color {
	color: #3C7AA7 !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: #3c7aa7 !important;
	width: 15px !important;
	height: 15px !important;
	border-radius: 0;
	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: #EEF6FC;
	/* color: #fff; */
	border-radius: 0;
}

.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 #ffa1c3;
	width: 100%;
}

.qa_list > dd {
	border-color: #FE984B;
	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: #FFA1C3;
	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: #FE984B;
	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: 'Zen Maru Gothic';
	color: #FFA1C3;
	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: #EEF6FC;
}

.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: #391500;
	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: #3c7aa7 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: #3C7AA7;
	color: #fff;
	display: inline-block;
	width: 33px;
	height: 33px;
	text-align: center;
	line-height: 31px;
	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: 7vw;
		/* position: relative; */
		/* left: inherit; */
		/* top: inherit; */
		/* display: block; */
		width: 7vw;
		margin-right: 3vw;
		margin-top: 0;
	}
	.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: #EEF6FC;
	font-size: 2rem;
	position: relative;
	padding: 16px 10px 22px 70px;
	line-height: 1.6;
}

.flowList_tlver li .flow_title span {
	letter-spacing: 0;
	width: 33px;
	height: 33px;
	background: #3C7AA7;
	color: #fff;
	line-height: 31px;
	display: block;
	text-align: center;
	border-radius: 50%;
	position: absolute;
	top: 18px;
	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: #3c7aa7 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;
	background: #EEF6FC;
}

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

.upage .timetable tbody {}

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

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

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

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

@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: 9%;
	}
}

@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: #3c7aa7;
	/* color: #fff; */
}

.post .category a,
.posts_list .category a {
	height: 30px;
}

.pagination a:hover,
.pagination ul li span.current {
	background: #3C7AA7;
	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: #3c7aa7 !important;
}

.blogside .searchBox .icon-search:before {
	color: #3c7aa7 !important;
}


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

.upage {
	padding-bottom: 150px;
}


/*　blogList　*/

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

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


/*　blogDetail　*/


/* 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 .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 {
	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 #3c7aa7;
	border-bottom: 1px solid #3c7aa7;
}

@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: center;
	padding-top: 90px !important;
	margin-bottom: 70px !important;
}

.top_tl .elementor-heading-title {
	font-size: 3.6rem;
	letter-spacing: 0.05em;
	text-align: center;
	/* padding-top: 70px !important; */
	/* margin-bottom: 40px !important; */
	font-family: "秀英明朝 M", serif;
	line-height: 1.6 !important;
	/* border-bottom: 3px solid #8ABBAA; */
	/* display: inline; */
	position: relative;
	/* background: linear-gradient(transparent 97%, #8ABBAA 0%); */
	/* display: inline; */
	padding: 0;
	color: #3C7AA7;
}

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

.top_tl .elementor-heading-title em {
	display: block;
	color: #94C726;
}

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

.post-header h1 {
	color: #ffffff;
	font-size: 3.6rem;
	letter-spacing: 0.2em;
	background: #3C7AA7;
	display: inline;
	max-width: 1080px;
	line-height: 1.3;
	padding: 0.1em 0.7em 0.2em 0.7em;
}

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

.post-content.upage h2 {
	background: #3C7AA7;
	color: #fff;
	font-size: 3.2rem;
	letter-spacing: 0.2em;
	padding: 22px 40px 28px 40px !important;
	line-height: 1.4 !important;
	margin-bottom: 50px !important;
	text-align: left;
	position: relative;
	margin-top: 70px;
}

.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: 7px 0 20px 40px!important;
	margin-bottom: 40px!important;
	text-align: left;
	position: relative;
	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: #FBF8F5;
}

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

.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;
	position: relative;
	margin-top: 50px;
}

.post-content.upage h4:before {
	background: #3C7AA7;
	position: absolute;
	left: 0px;
	top: 7px;
	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;
	margin-top: 40px;
	color: #3C7AA7;
}

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

.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: #3C7AA7;
	background: none;
	margin-bottom: 0 !important;
}

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

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

.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;
	color: #3C7AA7;
	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: 10vw !important;
		padding-top: 15vw !important;
	}
	.top_tl .elementor-heading-title {
		font-size: 3.3rem;
		line-height: 1.6 !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;
		width: 100%;
	}
	.post-header h1 {
		font-size: 1.9rem;
		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: 4vw !important;
		height: 4vw;
		top: 1.6vw;
	}
	.post-content.upage h5 {
		margin-bottom: 5vw!important;
		font-size: 2rem;
		margin-top: 6vw;
	}
	.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: 14px 30px 17px 20px !important;
	display: inline-block !important;
	line-height: 1.3 !important;
	text-align: left !important;
	letter-spacing: 0.1em !important;
	/* margin-top: 30px !important; */
	background: #3c7aa7 !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: 300px;
}

.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: 5vw 7vw 6vw 6vw !important;
		width: 100% !important;
		display: block !important;
		margin: auto;
		margin-right: auto;
		font-size: 1.8rem !important;
		/* border-radius: 10px !important; */
	}
	.upage .elementor-button {
		width: 90% !important;
	}
	.elementor-button:after {}
}


/*--------------------------------------
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: #EEF6FC;
	/* color: #fff; */
}

.table_color thead th {
	background: #eef6fc;
}

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

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


/* =====================================
■ top_about
===================================== */

.top_about {}

.top_about .top_access_tl > div {
	position: absolute;
	top: 0;
	right: -200px;
	font-size: 3rem;
	letter-spacing: 0.1em;
}

.top_access_tl {
	margin-bottom: 0 !important;
}

.top_about .top_access_tl h2.elementor-heading-title.elementor-size-default {
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	display: inline;
	letter-spacing: 0.2em;
	border-left: 3px solid #fe824b;
	line-height: 1.2;
	font-family: "秀英丸ゴシック B", "Shuei MaruGo B";
	padding-left: 15px;
}

.top_about_column {
	position: relative;
	padding-right: 210px;
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: space-between;
}

.top_about .elementor-widget-google_maps {
	overflow: hidden;
}

.about_half_wrap {
	padding-bottom: 30px;
}

.about_half_wrap .elementor-col-50 {
	background: #fff;
	width: 37% !important;
}

.about_half_wrap .elementor-col-50 + .elementor-col-50 {
	width: 47.5% !important;
}

.about_half_wrap > div > div {
	justify-content: space-between !important;
}

.about_half_wrap .col_inner {}

.about_half .col_inner + .col_inner {
	padding-top: 40px;
}

.top_timetable {
	width: 100%;
	table-layout: fixed;
	border-collapse: collapse;
	margin-bottom: 18px;
}

.top_timetable th,
.top_timetable td {
	border-right: 1px solid #D6D6D6;
	text-align: center;
	vertical-align: middle;
	line-height: 1;
	letter-spacing: 0;
	padding: 9px 0 8px;
	font-size: 1.6rem;
}

.top_timetable td {}

.top_timetable thead th {
	font-weight: normal;
	border-bottom: 1px solid #D6D6D6;
	padding: 12px 0px 12px;
	vertical-align: top;
}

.top_timetable thead th:first-child {
	text-align: left;
	color: #3C7AA7;
	font-size: 1.6rem;
	letter-spacing: 0.15em;
}

.top_timetable thead th:not(:first-child) {
	width: 9%;
}

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

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

.top_timetable tbody tr:last-child th,
.top_timetable tbody tr:last-child td {
	/* padding-bottom: 20px; */
}

.about_half .lead {
	font-family: "秀英丸ゴシック B", "Shuei MaruGo B";
	line-height: 1.7;
	letter-spacing: 0.1em;
}

.about_half .txt01 {
	line-height: 1.4;
}

.about_half .txt02 {
	margin-top: 0 !important;
	font-size: 1.2rem;
	color: #361B00;
}

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

.about_half .top_about_txt th {
	width: 6em;
	/* font-weight: 700; */
	vertical-align: top;
	/* font-size: 1.4rem; */
	color: #3C7AA7;
}

.about_half .top_about_txt th,
.about_half .top_about_txt td {
	padding: 10px 0;
	/* line-height: 1.5; */
}

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

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

.news_link_top .top_news_tl .elementor-heading-title {
	padding-top: 12px !important;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	width: auto;
	text-align: left;
	color: #3C7AA7;
	letter-spacing: 3px;
	padding-bottom: 13px;
}

.news_link_top .neww_list_link {
	right: 0;
	top: 0px;
	position: absolute;
	margin-bottom: 0 !important;
	text-align: right;
}

.news_link_top .neww_list_link a {
	font-size: 1.4rem;
}

.news_link_top .col_inner {
	padding-top: 0 !important;
	/* 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 {}

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

.news_link_top .news_dl_wrap dt {
	font-size: 1.4rem;
	width: 160px;
	text-align: left;
	position: relative;
	margin-bottom: 3px;
	letter-spacing: 0.15em;
}

.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 {
	background: #3C7AA7;
	color: #ffffff;
	line-height: 1;
	padding: 2px 0 0px 1px;
	font-size: 1.1rem;
	margin-left: 10px;
	border-radius: 0;
	top: 6px;
	right: 0;
	position: absolute;
	text-align: center;
	width: 36px;
	letter-spacing: 0;
	height: 16px;
}

.news_link_top .news_shortcode .news_dl_wrap:first-child a dl {}

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

@media screen and (max-width: 767px) {
	.top_about {
		/* margin-top: 10vw; */
	}
	.top_about_column {
		padding: 0;
	}
	.top_about .top_access_tl > div {
		position: relative;
		text-align: center;
		top: inherit;
		right: inherit;
	}
	.top_about > div > div > div > div > div:before {
		height: 90%;
		height: -webkit-calc(100% - 70vw);
		height: calc(100% - 70vw);
		right: -6vw;
		width: 100vw;
	}
	.about_half_wrap .elementor-col-50 {
		width: 100% !important;
		/* padding: 3vw 0; */
	}
	.about_half_wrap .elementor-col-50 + .elementor-col-50 {
		margin-top: 10vw;
		width: 100% !important;
	}
	.about_half_wrap .col_inner {
		padding: 0;
	}
	.news_link_top .col_inner {}
	.about_half .col_inner + .col_inner {
		padding-top: 5vw;
	}
	.about_half_wrap {
		padding-bottom: 10vw;
	}
	.about_half .lead {
		font-size: 1.5rem;
		text-align: center;
	}
	.about_half .txt01 {
		font-size: 1.6rem;
	}
	.top_timetable th,
	.top_timetable td {
		font-size: 1.5rem;
		padding: 3vw 0;
	}
	.top_timetable {
		margin-bottom: 5vw;
	}
	.top_timetable tbody tr:first-child th,
	.top_timetable tbody tr:first-child td {
		padding-top: 1.5vw;
		padding-bottom: 1.5vw;
	}
	.top_timetable thead th:not(:first-child) {
		width: 8.6%;
	}
	.top_timetable thead th {
		padding: 1.5vw 0px 1.5vw;
	}
	.top_timetable thead th:first-child {}
	.top_about_txt tr,
	.top_about_txt th,
	.top_about_txt td {
		/* display: block; */
	}
	.about_half .top_about_txt th {
		/* padding-bottom: 0 !important; */
		/* font-size: 1.7rem !important; */
		/* width: 100%; */
		/* display: block; */
	}
	.about_half .top_about_txt th,
	.about_half .top_about_txt td {
		/* padding: 0; */
	}
	.about_half .top_about_txt td {
		/* padding-bottom: 0; */
		/* display: block; */
		/* width: 100%; */
	}
	.about_half .top_about_txt tr + tr {
		/* margin-top: 3vw; */
		/* display: block; */
	}
	.news_link_top .top_news_tl .elementor-heading-title {
		font-size: 1.6rem !important;
		padding: 0!important;
		line-height: 1.5;
	}
	.news_link_top .news_dl_wrap dt {
		width: 40vw;
		margin-bottom: 1vw;
	}
	.news_link_top .news_dl_wrap .entry-icon-new {
		top: 0.8vw;
		font-size: 1rem;
		width: 12vw;
		height: 4.5vw;
		padding: 1vw 0.3vw 0 0vw;
		line-height: 1;
	}
	.news_link_top .neww_list_link {
		top: -1vw;
	}
	.news_link_top .top_news_tl {
		padding: 0vw 0vw 0;
		margin-bottom: 5vw !important;
	}
}

@media screen and (max-width: 1120px) and (min-width: 768px) {
	.top_about_column {
		padding-right: 90px;
	}
	.top_timetable thead th:not(:first-child) {
		width: 8%;
	}
	.about_half_wrap .elementor-col-50 {
		width: 48% !important;
	}
	.about_half .top_about_txt th,
	.about_half .top_about_txt td {
		font-size: 1.4rem;
	}
}

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


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

#footer .fixed_box {
	position: fixed;
	right: 20px;
	width: 383px;
	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;
	bottom: 0;
}

#footer .fixed_box ul li {}

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

#page_top {
	width: 34px;
	padding-bottom: 25px;
}

.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: flex-end;
		justify-content: space-between;
		pointer-events: none;
	}
	#footer .fixed_box .pagetop {
		width: 13vw;
		height: 41vw;
		display: flex;
		flex-wrap: wrap;
		align-items: stretch;
		justify-content: center;
		pointer-events: initial;
		padding-bottom: 0;
	}
	#footer .fixed_box .pagetop a {
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: center;
	}
	#footer .fixed_box .pagetop img {
		width: 9vw;
	}
	#footer .fixed_box ul:after {
		display: none;
	}
	#footer .fixed_box ul {
		width: 86.6vw;
		background: #3C7AA7;
		border-radius: 0;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		overflow: hidden;
		justify-content: space-between;
		pointer-events: initial;
	}
	#footer .fixed_box li {
		width: 100% !important;
		position: relative;
	}
	#footer .fixed_box li + li:before {
		background: #fff;
		position: absolute;
		content: "";
		height: 150%;
		width: 2px;
		top: 50%;
		left: 0%;
		-webkit-transform: translate(0%, -50%);
		transform: translate(0%, -50%);
	}
	#footer .fixed_box li img {
		width: 65%;
	}
	#footer .fixed_box li a {
		height: 12.8vw;
		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 {
		padding-right: 2vw;
	}
	#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: 219px;
	}
}


/*--------------------------------------
loopslider
--------------------------------------*/

#loopslider ul li {
	width: 1350px
}

.loop_area,
#loopslider ul li,
#loopslider,
#loopslider_block {
	height: 142px;
}

#loopslider_block {
	overflow: hidden;
}

#loopslider {
	margin: 0 auto;
	width: 100%;
	text-align: left;
	position: relative;
	overflow: hidden;
	line-height: 1;
	z-index: 10;
}

#loopslider_block {
	line-height: 1;
	/* position: absolute; */
	/* left: 0; */
	/* top: 0; */
	width: 100vw;
	/* left: 0; */
	/* top: 0%; */
	/* left: 50%; */
	/* -webkit-transform: translate(-50%, 0%); */
	/* transform: translate(-50%, 0%); */
}

#loopslider ul {
	float: left;
	overflow: hidden;
	display: inline-block;
	overflow: hidden;
}

#loopslider ul li {
	float: left;
	display: inline;
	overflow: hidden;
	line-height: 1;
}

#loopslider ul li img {
	/* display: block; */
	max-width: 100%;
}

#loopslider ul li:after {
	content: ".";
	height: 0;
	clear: both;
	display: block;
	visibility: hidden;
}

@media screen and (max-width: 767px) {
	.loop_area,
	#loopslider_block,
	#loopslider,
	#loopslider ul li {
		height: 142px;
	}
	#loopslider ul li {
		width: 1350px;
	}
	#loopslider {
		width: 100vw;
	}
}


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

.f_bnr img {
	display: block;
}

.info-footer {
	padding: 140px 0 0px 0;
	background: #EBE9E7;
	z-index: 9;
	position: relative;
	margin-top: -71px;
}

.info-footer > div {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 30px;
}

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

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

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

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

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

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

.info-footer .sitemap_box p a {
	text-decoration: none !important;
	letter-spacing: 0.05em;
}

.info-footer .footer_right {
	width: 47%;
	max-width: 233px;
	text-align: right;
}

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

.info-footer .text-footer {
	font-size: 1.2rem;
	margin-top: 11px;
	letter-spacing: 0.05em;
}

.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: #ffffff;
	font-size: 1.2rem;
	display: block;
	background: #383838;
	letter-spacing: 0.05em;
	text-align: center;
	font-weight: 400;
	padding: 7px 7px 140px 7px;
}

@media screen and (max-width: 767px) {
	.info-footer {
		padding: 71px 0 0 0;
	}
	.info-footer .footer_left {
		width: 100%;
		padding-top: 10vw;
	}
	.info-footer .fooger_logo {
		width: 80%;
		max-width: inherit;
		margin: 0 auto 3vw;
	}
	.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 {
		padding: 3vw 3vw 15vw;
	}
	.info-footer .text-footer {
		font-size: 1.3rem;
		text-align: center;
	}
	.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 .sitemap_box {
		text-align: center;
	}
}


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

.contact_area {
	background: #3C7AA7;
	background-size: cover;
	color: #fff;
	text-align: center;
	margin-top: 0;
	padding: 6vw 0 8vw;
}

.contact_area h2 {
	font-size: 2.3rem;
	letter-spacing: 0.1em;
	line-height: 1.6;
	margin-top: 0vw;
	margin-bottom: 4vw;
}

.contact_area .contact_btn {}

.contact_area .contact_btn li {
	background: #fff;
	width: 100%;
	max-width: inherit;
	line-height: 1;
	font-size: 0;
}

.contact_area .contact_btn li img {
	width: 100%;
}

.contact_area .contact_btn li + li {
	margin-top: 3vw;
}

.contact_area .txt {
	font-size: 1.8rem;
	margin-top: 10vw;
	text-align: left;
}

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

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

@media screen and (min-width: 768px) {
	.contact_area .contact_btn {
		max-width: 315px;
		margin-left: auto;
		margin-right: auto;
	}
}


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

.top_concept_area {
	background: #f8f8f8 url(./img/top_concept_bg.jpg) no-repeat center center / cover;
	padding: 100px 0 130px !important;
	text-align: center;
}

.top_concept .tl span {
	color: #3C7AA7;
	display: block;
	font-size: 1.4rem;
	letter-spacing: 0.1em;
}

.top_concept .tl {
    margin-bottom: 25px;
    font-size: 3.6rem;
    letter-spacing: 0.05em;
    line-height: 1.6 !important;
    color: #3C7AA7;
}

.top_concept .lead {
	font-size: 1.8rem;
	color: #3C7AA7;
	margin-bottom: 15px;
}

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

.top_menu_li li {
	width: 17.8%;
	max-width: 192px;
}

.top_menu_li li a {
	display: block;
	-webkit-box-shadow: 0 0px 6px rgb(188 188 188 / 40%);
	-moz-box-shadow: 0 0px 6px rgba(188, 188, 188, 0.4);
	box-shadow: 0 0px 6px rgb(188 188 188 / 40%);
}

.top_menu_area {
	padding-bottom: 90px !important;
}

.top_greeting_area {
	background: url(./img/top_greeting_bg_pc.jpg) no-repeat center top / cover;
	-webkit-box-shadow: 0 0px 6px rgb(0 0 0 / 40%);
	-moz-box-shadow: 0 0px 6px rgba(0, 0, 0, 0.4);
	box-shadow: 0 0px 6px rgb(0 0 0 / 40%);
	color: #fff;
}

.top_greeting {
	max-width: 711px;
	padding: 280px 0 260px;
	margin: 0 auto;
}

.top_greeting .btn_block a {
	display: block;
	margin-top: 40px;
	color: #fff;
	text-decoration: none !important;
	font-size: 1.2rem;
	letter-spacing: 0.05em;
	width: 100px;
	text-align: center;
	padding: 0 20px 0 0;
	border-bottom: 1px solid #fff;
	padding-bottom: 5px;
	position: relative;
}

.top_greeting .btn_block a:before {
	position: absolute;
	content: "";
	width: 20px;
	background: #fff;
	height: 1px;
	transform: rotate(31deg);
	-webkit-transform: rotate(30deg);
	bottom: 0;
	right: 0;
	transform-origin: right bottom 0;
}

.top_greeting_con {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: space-between;
	flex-direction: row-reverse;
}

.top_greeting_con .txt_block {
	width: 52%;
}

.top_greeting_con .name_con {
	width: 38.4%;
	border-right: 1px solid #fff;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
	flex-direction: column;
}

.top_greeting_con .name_con .tl {
	font-size: 3.6rem;
	letter-spacing: 0.05em;
	line-height: 1.6;
	margin-bottom: 1em;
}

.top_greeting_con .name_con .tl span {
	font-size: 1.4rem;
	letter-spacing: 0.1em;
	display: block;
}

.top_greeting_con .name_con .name_box {
	font-size: 1.5rem;
	letter-spacing: 0.15em;
	line-height: 1.8;
}

.top_greeting_con .name_con .name {
	font-size: 2.2rem;
}

.top_greeting_con .name_con .name span {
	font-size: 1.4rem;
	padding-right: 1em;
}

.top_greeting_con .lead {
	font-size: 2.2rem;
	line-height: 1.5;
	margin-bottom: 0.7em;
}

.top_greeting_con .txt {
	letter-spacing: 0.1em;
}

.umenu_con a {
	border: 1px solid #3C7AA7;
	padding: 40px 70px 40px 45px;
	display: block;
	text-decoration: none !important;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	flex-direction: row-reverse;
}

.umenu_con figure {
	width: 20.8%;
	max-width: 200px;
}

.umenu_con .txt_box {
	width: 70.8%;
}

.post-content.upage .umenu_con h2 {
	color: #3C7AA7 !important;
	background: none;
	font-size: 2rem;
	letter-spacing: 0.06em;
	padding: 0 !important;
	line-height: 1.4 !important;
	margin-bottom: 20px !important;
	margin-top: 0;
}

.post-content.upage .umenu_con h2:before {
	display: none;
}

.general_price01 tbody th {
	width: 13% !important;
}

.general_price01 tbody td {
	width: 27% !important;
}

@media screen and (max-width: 767px) {
	.top_concept_area {
		padding: 15vw 0 !important;
	}
	.top_concept .tl {
		font-size: 3.3rem;
		line-height: 1.6 !important;
		letter-spacing: 0.05em;
		color: #3C7AA7;
		margin-bottom: 10vw;
	}
	.top_concept .lead {
		font-size: 2.3rem;
		margin-bottom: 0.7em;
		line-height: 1.8;
	}
	.top_menu_li {
		justify-content: center;
	}
	.top_menu_li li:not(:first-child):not(:nth-child(3n+1)) {
		margin-left: 3.5%;
	}
	.top_menu_li li {
		width: 31%;
		margin-bottom: 3.5%;
		max-width: i;
	}
	.top_menu_area {
		padding-bottom: 15vw !important;
	}
	.top_greeting_area {
		background-image: url(./img/top_greeting_bg_sp.jpg);
	}
	.top_greeting {
		padding: 0 0 15vw;
	}
	.top_greeting .top_tl .elementor-heading-title {
		color: #fff;
	}
	.top_greeting_con {
		margin-top: 20vw;
		flex-direction: column;
	}

	.top_greeting .btn_block a {
		margin: 9vw auto 0;
	}
	.top_greeting_con .txt_block {
		width: 100%;
	}
	.top_greeting_con .lead {
		font-size: 2.7rem;
	}
	.top_greeting_con .name_con .tl {
		display: none;
	}
	.top_greeting_con .name_con {
		width: 100%;
		border: none;
		margin-top: 10vw;
		align-items: center;
	}
	.top_map iframe {
		height: 100vw !important;
	}
	.umenu_con a {
		padding: 6vw;
		flex-direction: column;
	}
	.umenu_con figure {
		max-width: inherit;
		width: 40%;
		margin-bottom: 5vw !important;
	}
	.umenu_con .txt_box {
		width: 100%;
	}
	.post-content.upage .umenu_con h2 {
		text-align: center;
		margin-bottom: 3vw !important;
	}
}

@media screen and (min-width: 768px) and (max-width: 1120px) {
	.general_price01 tbody th {padding: 0;letter-spacing: 0;font-size: 90%;}
}