html, body {
	font-family: "YuGothic","Hiragino Kaku Gothic ProN","游ゴシック","WinYuGothic","ヒラギノ角ゴ ProN W3","Meiryo","メイリオ","sans-serif";
	font-size: 16px;
	background: #fff;
	color: #333;
	line-height: 1.5;
	word-wrap: break-word;
	scroll-behavior: smooth;
}
.pre-header .navbar-brand img {
	height: 90px;
	width: 100%;
	object-fit: contain;
}
.clear {
	clear: both;
}
.site-content {
	max-width: 1140px;
}
.pre-header .call-us {
	max-width: 440px;
	float: right;
	display: flex;
	justify-content: space-between;
	padding: 2px 10px;
	background: -webkit-gradient(linear, left top, right top, from(#007bd2), to(#19c778));
	background: linear-gradient(90deg, #007bd2 0%, #19c778 100%);
	color: #fff;
	font-size: 26px;
	border-radius: 0px 0px 8px 8px;
}
.pre-header .tel {
	padding: 5px 10px;
}
.pre-header .tel span.small{
	font-size: 12px;
}
.pre-header p.small {
	padding: 10px 5px 0px;
	color: #ffffff;
}
.pre-header .call-us .tel a {
	color: #ffffff;
	font-style: italic;
}
.pre-header .ofc-hour {
	font-size: 14px;
	padding: 0 10px;
	text-align: right;
}
button.navbar-toggler {
	width: 47px;
	height: 34px;
	background-color: #bd6969;
	border: none;
}
button.navbar-toggler span.line {
	width: 100%;
	float: left;
	height: 2px;
	background-color: #fff;
	margin-bottom: 5px;
}
.navbar {
	padding: 0;
}
.navbar.c-bg {
	background: -webkit-gradient(linear, left top, right top, from(#007bd2), to(#19c778));
	background: linear-gradient(90deg, #007bd2 0%, #19c778 100%);
}
.pre-header .navbar-brand {
	padding: 0;
}
.navbar .navbar-nav .nav-item {
	margin: 4px 0px;
	border-right: 1px solid #fdfdfd61;
	text-align: center;
}
.navbar .navbar-nav .nav-item:last-child {
	border-right: none;
}
.navbar .navbar-nav .nav-item.current-menu-item .nav-link, .navbar .navbar-nav .nav-item .nav-link:hover, .navbar .navbar-nav .nav-item ul.dropdown-menu.show .nav-item a.dropdown-item:hover{
	color:#61ffa8
}
.navbar .navbar-nav .nav-item .nav-link {
	color: #fff;
	padding: 10px 20px;
	font-size: 14px;
}
.navbar .navbar-nav .nav-item  ul.dropdown-menu.show {
	border: 0;
	border-radius: 4px;
	padding: 10px 0;
	margin: 15px 0 0;
	min-width: 250px;
	background: -webkit-gradient(linear, left top, right top, from(#007bd2), to(#19c778));
	background: linear-gradient(90deg, #007bd2 0%, #19c778 100%);
}
.navbar .navbar-nav .nav-item  ul.dropdown-menu.show :before {
	position: absolute;
	left: 20%;
	top: -14px;
	width: 0;
	height: 0;
	margin-left: -3.5px;
	border: 7px solid transparent;
	border-bottom: 7px solid #0AA89E;
	content: "";
}
.navbar .navbar-nav ul.dropdown-menu.show .nav-item {
	margin: 0 0 1px;
	padding: 0;
	border: none;
	border-radius: 0;
	width: auto;
}
.navbar .navbar-nav .nav-item  ul.dropdown-menu.show  .nav-item a.dropdown-item {
	font-size: 14px;
	padding: 8px 10px;
	color: #ffffff;
	border-radius: 0;
	border-bottom: 1px solid #fffdfd8f;
	text-align: left;
}
.navbar .navbar-nav .nav-item ul.dropdown-menu.show .nav-item a.dropdown-item:hover {
	background: none;
}
.navbar .navbar-nav .nav-item ul.dropdown-menu.show .nav-item:last-child a.dropdown-item {
	border-bottom: none;
}
.navbar .navbar-nav .nav-item  ul.dropdown-menu.show {
	animation-duration: 0.3s;
	-webkit-animation-duration: 0.3s;
	animation-fill-mode: both;
	-webkit-animation-fill-mode: both;
}

@keyframes slideIn {
	0% {
		transform: translateY(1rem);
		opacity: 0;
	}

	100% {
		transform: translateY(0rem);
		opacity: 1;
	}

	0% {
		transform: translateY(1rem);
		opacity: 0;
	}
}

@-webkit-keyframes slideIn {
	0% {
		-webkit-transform: transform;
		-webkit-opacity: 0;
	}

	100% {
		-webkit-transform: translateY(0);
		-webkit-opacity: 1;
	}

	0% {
		-webkit-transform: translateY(1rem);
		-webkit-opacity: 0;
	}
}

.navbar .navbar-nav .nav-item  ul.dropdown-menu {
	-webkit-animation-name: slideIn;
	animation-name: slideIn;
}

#UenoHPSlider {
	height: 600px;
	overflow: hidden;
}
#UenoHPSlider .overlay {
	position: absolute;
	width: 100%;
	height: 100%;
	z-index: 2;
	/*background: -webkit-gradient(linear, left top, right top, from(rgb(0 123 210)), to(rgb(25 199 120)));*/
	/*background: linear-gradient(90deg, rgb(3 93 156 / 39%) 0%, rgb(5 113 64 / 40%) 100%);*/
}
#UenoHPSlider .carousel-item {
	height: 600px;
	min-height: 350px;
	background: no-repeat center center scroll;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	position: relative;
}

#UenoHPSlider .carousel-item, #UenoHPSlider .carousel-item img {
	object-fit: cover;
	object-position: center;
}
#UenoHPSlider .carousel-caption {
	bottom: 15%;
}
#UenoHPSlider .carousel-caption h5 {
	font-size: 2.4rem;
	background: #0006;
	padding: 10px;
	max-width: 800px;
	margin: 0 auto;
}
.services {
	margin-top: -60px;
}
.services .service-item {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	z-index: 1;
	position: relative;
	padding: 20px;
	background: rgb(0,51,102);
	color: #fff;
	min-height: 230px;
}
.services .service-item.box1{
	background: #027bd1;
	background: -moz-linear-gradient(180deg, #027bd1 50%, #0588c4 100%);
	background: -webkit-linear-gradient(180deg, #027bd1 50%, #0588c4 100%);
	background: linear-gradient(180deg, #027bd1 50%, #0588c4 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#027bd1",endColorstr="#0588c4",GradientType=1);
}
.services .service-item.box2{
	background: #079eab;
	background: -moz-linear-gradient(180deg, #079eab 50%, #0daf96 100%);
	background: -webkit-linear-gradient(180deg, #079eab 50%, #0daf96 100%);
	background: linear-gradient(180deg, #079eab 50%, #0daf96 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#079eab",endColorstr="#0daf96",GradientType=1);
}
.services .service-item.box3{
	background: #079eab;
	background: -moz-linear-gradient(180deg, #11b98b 50%, #19c778 100%);
	background: -webkit-linear-gradient(180deg, #11b98b 50%, #19c778 100%);
	background: linear-gradient(180deg, #11b98b 50%, #19c778 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#11b98b",endColorstr="#19c778",GradientType=1);
}
.services .service-item h4 {
	font-size: 1.3rem;
	padding-bottom: 15px;
	font-weight: 600;
	text-align: center;
}
.services .service-item p {
	text-align: center;
	font-size: 16px;
}
.services .service-item a.btn {
	min-width: 150px;
	display: flex;
	justify-content: space-around;
	align-items: center;
}

.sec-title{
	display: flex;
	flex-direction: column;
	background: rgb(0 124 209);
	background: -webkit-gradient(linear, left top, right top, from(rgb(0 124 209 / 20%)), to(rgb(25 199 121 / 20%)));
	background: linear-gradient(90deg, rgb(0 124 209 / 20%) 0%, rgb(25 199 121 / 20%) 100%);
	padding: 15px 20px;
	font-weight: bold;
	text-align: left;
	color: #1d1d1d;
	font-size: 30px;
	border-bottom: 2px solid #2cbac1;
}
.sec-title span {
	font-size: 16px;
	padding-left: 5px;
	padding-top: 10px;
}
.news-section {
	padding-bottom: 15px;
}
.news-section ul {
	list-style: none;
	padding: 5px 20px;
	margin: 0;
}
.news-section ul li{
	display: flex;
	align-items: center;
	border-bottom: 1px dashed #000000;
	margin-bottom: 20px;
	padding-bottom: 8px;
	width: 100%;
}
.news-section ul li span.news-date, .news-section ul li span.news-tag {
	padding: 5px 10px;
	font-size: 14px;
	background: #007bd2;
	color: #fff;
	border-radius: 2px;
	margin-right: 15px;
	min-width: 130px;
	text-align: center;
}
.news-section ul li span.news-tag{
	font-size: 12px;
	background: #19c778;
	min-width: 150px;
	display: inline-block;
	text-align: center;
}
.news-section ul li a {
	text-decoration: none;
	color: #2b2b2b;
}
.news-section ul li a:hover {
	color: #737272;
}
.cont-title {
	color: #ffffff;
	font-size: 28px;
	background: rgb(0,51,102);
	background: -moz-linear-gradient(180deg, rgba(0,51,102,1) 50%, rgba(0,62,124,1) 100%);
	background: -webkit-linear-gradient(180deg, rgba(0,51,102,1) 50%, rgba(0,62,124,1) 100%);
	background: linear-gradient(180deg, rgba(0,51,102,1) 50%, rgba(0,62,124,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#003366",endColorstr="#003e7c",GradientType=1);
}
.office-info table {
	border: 1px solid #dee2e6;
}
.office-info table tr td {
	padding: 0px;
	border: none;
	vertical-align: middle;
}
.office-info table tr td table {
	margin-bottom: 0;
	min-height: 150px;
	border: none;
}
.office-info table tr td table tr td {
	border-bottom: 1px solid #dee2e6;
	padding: 10px;
	font-weight: bold;
	vertical-align: middle;
}
.office-info table tr td table tr th {
	font-size: 16px;
	border-top: none;
	border-bottom: 1px solid #dee2e6;
}
.office-info table tr td table tr th:first-child {
	width: 130px;
	height: 73px;
	vertical-align: middle;
	text-align: center;
	background: #ececf1;
}
.office-info table tr td table tr:last-child td, .office-info table tr td table tr:last-child th {
	border-bottom: none;
}
.c-page-header {
	height: 400px;
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
	position: relative;
	margin-bottom: 20px;
}
.c-page-header .overlay {
	position: absolute;
	width: 100%;
	height: 100%;
	z-index: 2;
	/*background: -webkit-gradient(linear, left top, right top, from(rgb(0 123 210)), to(rgb(25 199 120)));*/
	/*background: linear-gradient(90deg, rgb(3 93 156 / 39%) 0%, rgb(5 113 64 / 40%) 100%);*/
}
.c-page-header img {
	height: 100%;
	left: 0;
	-o-object-fit: cover;
	object-fit: cover;
	top: 0;
	-webkit-transform: none;
	transform: none;
	width: 100%;
	margin-top: 0rem;
}
.c-page-header .post-title {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	font-size: 2rem;
	color: #fff;
	z-index: 2;
	margin: auto;
	width: 50%;
	padding: 20px;
	text-align: center;
	background: #0000004d;
}
.entry-header h1.entry-title {
	font-size: 22px;
	line-height: 1.5;
	font-weight: 600;
}
.content-area .site-main {
	border-radius: 4px;
	box-shadow: rgb(99 99 99 / 20%) 0px 2px 8px 0px;
	padding: 20px 15px;
}
.content-area .site-main h1.page-title {
	position: relative;
	margin-bottom: 35px;
	padding-bottom: 20px;
	border-bottom: 3px solid #eaeff1;
	font-size: 22px;
	font-weight: 500;
	line-height: 1.4em;
	color: #179af8;
}
.content-area .site-main h1.page-title:after {
	display: block;
	position: absolute;
	left: 0;
	bottom: -3px;
	z-index: 1000;
	width: 100px;
	height: 3px;
	margin-top: 20px;
	background: #179af8;
	content: "";
}
h1.has-background, h2.has-background, h3.has-background, h4.has-background, h5.has-background, h6.has-background {
	padding: 10px;
	border-radius: 4px;
}
.is-style-sme-post-it-narrow {
	width: 100%;
}



aside#secondary {
	display: unset;
}
.widget-area #nav_menu-2 {
	position: sticky;
	top: 90px;
	border: none;
	/*background: #f3f3f3;
	box-shadow: rgb(99 99 99 / 20%) 0px 2px 8px 0px;*/
}
.widget-area ul#menu-main-menu-1 {
	list-style: none;
	padding: 0;
}
.widget-area ul#menu-main-menu-1 li {
	margin-bottom: 1px;
}
.widget-area ul#menu-main-menu-1 li a {
	display: block;
	padding: 18px 30px 18px 15px;
	border-top: 1px solid #e7e7e7;
	font-size: 93%;
	color: #0c0c0c;
	line-height: 1.5em;
	font-weight: 300;
	text-decoration: none;
	position: relative;
}
.widget-area ul#menu-main-menu-1 li.current_page_item a, .widget-area ul#menu-main-menu-1 li a:hover, .widget-area ul#menu-main-menu-1 li.current_page_item ul li a:hover {
	background: -webkit-gradient(linear, left top, right top, from(#007bd2), to(#19c778));
	background: linear-gradient(90deg, #007bd2 0%, #19c778 100%);
	border-radius: 4px;
	color: #fff;
}
.widget-area ul#menu-main-menu-1 li:first-child a{
	padding-left: 30px;
}
.widget-area ul#menu-main-menu-1 li:first-child a::before {
	color:#000;
	content: '\f102'; /* You should use \ and not /*/
	font-family: "dashicons"; /* This is the correct font-family*/
	font-style: normal;
	font-weight: normal;
	font-size:20px;
	position: absolute;
	left: 5px;
	top: 16px;
}
.widget-area ul#menu-main-menu-1 li:first-child:hover a::before, .widget-area ul#menu-main-menu-1 li ul li:hover a::before, .widget-area ul#menu-main-menu-1 li.current-menu-ancestor ul li.current-menu-item a::before{
	color:#fff;
}
.widget-area ul#menu-main-menu-1 li a::after, .widget-area ul#menu-main-menu-1 li.current_page_item a::after, .widget-area ul#menu-main-menu-1 li.current_page_item ul li a::after, .widget-area ul#menu-main-menu-1 li:hover ul li a::after{
	position: absolute; /* Prevent underline of arrow */
	padding-left: 10px;
	content: "";
	right: 10px;
	background: url("../img/menu_icon_defult.png") no-repeat;
	background-position: 95% 50%;
	background-size: 6px auto;
	height: 20px;
	width: 20px;
}
.widget-area ul#menu-main-menu-1 li:hover a::after, .widget-area ul#menu-main-menu-1 li.current_page_item a::after, .widget-area ul#menu-main-menu-1 li.current-menu-ancestor ul li:hover a::after, .widget-area ul#menu-main-menu-1 li ul li:hover a::after{
	background: url("../img/menu_icon_current.png") no-repeat;
	background-position: 95% 50%;
	background-size: 6px auto;
}
.widget-area ul#menu-main-menu-1 li ul li a::before, .widget-area ul#menu-main-menu-1 li ul li:first-child a:before {
	color:#000;
	content: '\f474'; /* You should use \ and not /*/
	font-family: "dashicons"; /* This is the correct font-family*/
	font-style: normal;
	font-weight: normal;
	font-size:20px;
	position: absolute;
	left: 5px;
	top: 8px;
	-moz-transform: scale(-1, 1);
	-webkit-transform: scale(-1, 1);
	-o-transform: scale(-1, 1);
	-ms-transform: scale(-1, 1);
	transform: scale(-1, 1);
}
.widget-area ul#menu-main-menu-1 li.current_page_item ul li a {
	background: none;
	color: #0c0c0c;
}
.widget-area ul#menu-main-menu-1 .dropdown-toggle::after {
	display: block;
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%);
	width: 0;
	height: 0;
	margin-left: .255em;
	vertical-align: .255em;
	content: "";
	border-top: .3em solid;
	border-right: .3em solid transparent;
	border-bottom: 0;
	border-left: .3em solid transparent;
}
.widget-area ul#menu-main-menu-1 .collapse:not(.show) {
	display: none;
}
.widget-area ul#menu-main-menu-1 li ul.sub-menu {
	list-style: none;
	padding: 0;
}
.widget-area ul#menu-main-menu-1 li ul.sub-menu li {
	margin-left: 10px;
}
.widget-area ul#menu-main-menu-1 li ul a {
	padding: 10px;
	display: block;
	padding-left: 30px;
}
.box-steps .smb-step__item__number::before {
	display: none;
}
.box-steps .smb-step__item__number {
	border-radius: 0;
	width: 1.5rem;
	height: 1.5rem;
	margin-left: -4rem;
}
.circle-list li::before {
	font-family: "Font Awesome 5 Free";
	content: "" !important;
}






/***追従するトップへ戻るボタン***/
#page-top {
	position: fixed;
	display: none;
	right: 100px;
	bottom: 40px;
	height: 50px;
	text-decoration: none;
	font-weight: bold;
	transform: rotate(90deg);
	font-size: 90%;
	line-height: 1.5rem;
	color: #027dd0;
	padding: 0 0 0 35px;
	border-top: solid 1px;
}
#page-top::before {
	content: "";
	display: block;
	position: absolute;
	top: -1px;
	left: 0px;
	width: 15px;
	border-top: solid 1px;
	transform: rotate(35deg);
	transform-origin: left top;
}

.bookly-mobile-step-2, .bookly-mobile-float-none .bookly-available-date, .bookly-mobile-float-none .bookly-week-days, .bookly-mobile-step-2 .bookly-time-range{
	display: block !important;
}


/***トップへ戻るボタンここまで***/
/*************** Responsive CSS **************/
@media only screen and (max-width: 1060px) {
	.navbar-expand-lg>.container, .navbar-expand-lg>.container-fluid {
		margin: 0;
		padding: 0;
	}
	.navbar .navbar-nav .nav-item .nav-link {
		padding: 10px 15px;
		font-size: 14px;
	}
}
@media only screen and (max-width: 993px) {
	.sp-nav-toggle {
		display: block !important;
	}
	button.navbar-toggler {
		margin: 20px;
	}
	.navbar {
		width: 50%;
		position: absolute;
		z-index: 10;
		right: 0;
	}
	.navbar .navbar-nav .nav-item {
		border-right: none;
		border-bottom: 1px solid #fdfdfd61;
		width: auto;
		text-align: left;
	}
	.navbar .navbar-nav ul.dropdown-menu.show .nav-item {
		position: relative;
	}
	.navbar .navbar-nav .nav-item ul.dropdown-menu.show :before {
		left: 15px;
		top: 13px;
		border: 5px solid #0000;
		border-bottom: 5px solid #fff;
		transform: rotate(90deg);
	}
	.navbar .navbar-nav .nav-item ul.dropdown-menu.show .nav-item a.dropdown-item {
		padding: 8px 30px;
	}
	.navbar .navbar-nav .nav-item:last-child, .navbar .navbar-nav .nav-item ul.dropdown-menu.show {
		border: none;
		padding: 0;
		margin: 0;
	}
}
@media only screen and (max-width: 844px) {
	#UenoHPSlider .carousel-item img {
		height: 100%;
	}
	.carousel-caption {
		right: 5%;
		left: 5%;
	}
	#UenoHPSlider .carousel-caption h5 {
		font-size: 2rem;
	}
}

@media only screen and (max-width: 768px) {
	html, body {
		font-size: 14px;
	}
	#page-top {
		right: 10px;
	}
	button.navbar-toggler {
		margin-top: 30px;
	}
	.navbar-expand-lg>.container, .navbar-expand-lg>.container-fluid {
		max-width: 100%;
	}
	.navbar-brand img {
		height: 60px;
	}
	#UenoHPSlider, #UenoHPSlider .carousel-item, #UenoHPSlider .carousel-item img {
		height: 340px;
	}
	#UenoHPSlider .carousel-caption h5 {
		font-size: 1.2rem;
	}
	.news-section ul {
		margin: 0;
		padding: 0;
	}
	.news-section ul li {
		display: inline-block;
	}
	.news-section ul li a {
		display: block;
		font-size: 1.1rem;
	}
	.news-section ul li span.news-date, .news-section ul li span.news-tag {
		margin-top: 4px;
	}
	.services .service-item {
		min-height: auto;
	}
	.cont-title {
		font-size: 1.5rem;
	}
	.sec-title {
		padding: 10px 15px;
		font-size: 20px;
	}
	.office-info table tr td table, .office-info table tr td table tr th:first-child {
		min-height: auto;
		height: auto;
	}
	.office-info table {
		border-bottom: none;
	}
	.office-info table tr td table tr td {
		display: block;
	}
	.sec-title span, .office-info table tr td {
		font-size: 14px;
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		border-bottom: 1px solid #dee2e6;
	}
	.office-info table tr td:first-child {
		text-align: left;
	}
	.c-page-header .post-title {
		font-size: 20px;
		font-weight: bold;
	}
	.entry-header h1.entry-title {
		font-size: 16px;
		line-height: 1.5;
		font-weight: 600;
	}
}

@media only screen and (max-width: 414px) {
	.carousel-caption {
		right: 5%;
		left: 5%;
	}
}
