@charset "utf-8";

html, * {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

html {
	font-size: 62.5%;
	background: #fff;
}

body, a, p, li, dd, td {
	color: #222222;
	font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, Verdana, Meiryo, sans-serif;
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 1.7;
	-webkit-font-smoothing: antialiased;
	animation: fadeIn .5s ease 0s 1 normal;
	-webkit-animation: fadeIn .5s ease 0s 1 normal;
	transition: .2s;
}

input, button, textarea, select {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

em, strong, span, figcaption {
	font-size: inherit;
}

img {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}

table {
	table-layout: fixed;
	width: 100%;
}

@keyframes fadeIn {
	0% {
		opacity: 0
	}

	100% {
		opacity: 1
	}
}

@-webkit-keyframes fadeIn {
	0% {
		opacity: 0
	}

	100% {
		opacity: 1
	}
}

a:hover {
	opacity: 0.5;
}

/* component */
.txt-color-red {
	color: #E35252;
}

.base-btn {
	padding: 14px;
	line-height: 1;
	background: #1E638E;
	box-shadow: 1px 1px 2px gray;
	text-align: center;
	font-weight: bold;
	color: #fff;
	display: block;
	border-radius: 30px;
	font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, Verdana, Meiryo, sans-serif;
}



.footer-tel .tel-btn {
	background: none;
	color: #000;
}

@media (max-width: 767px) {
	.base-btn {
		width: 80%;
		margin: auto;
	}

	.footer-tel .base-btn {
		font-size: 1.6rem;
	}
}

.tel-btn img {
	position: relative;
	top: -12px;
}

.tel-txt {
	color: #FFF624;
	display: block;
	font-size: 1.2rem;
	font-weight: bold;
	position: relative;
	letter-spacing: 0.5px;
	font-family: 'Avenir', Arial, sans-serif;
	cursor: pointer;
	text-align: center;
}

.tel-wrap .tel-btn {
	background: none;
}

.tel-wrap .tel-txt:before,
.tel-wrap .tel-txt:after {
	position: absolute;
	content: '';
	top: 50%;
	transform: translateY(-50%);
	height: 1px;
	width: 75px;
	background: #fff;
}

.tel-wrap .tel-txt:before {
	right: -40px;
}

.tel-wrap .tel-txt:after {
	left: -40px;
}

.alldays-txt {
	/*background: linear-gradient(200deg, #000 0%, #000 50%, #E52F48 50%, #E52F48 100%);*/
	/* background: #c30d23; */
	background: #bf1329;
	color: #fff;
	font-weight: bold;
	text-align: center;
	font-size: 1.4rem;
	display: block;
	padding: 0px;
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	line-height: 1.8;
	letter-spacing: 1.5px;
	box-shadow: 1px 2px 3px #696969;
}

.detail-btn {
	padding: 14px 60px 14px 25px !important
}

.detail-btn:after {
	right: 25px !important;
}

.en-f {
	font-family: 'Futura', 'Arial', sans-serif;
}

.min-f {
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}

@media (max-width: 767px) {
	.detail-btn {
		padding: 12px 45px 12px 20px !important;
	}

	.detail-btn:after {
		right: 20px !important;
		width: 16px !important;
		height: 16px !important;
	}
}

.txt-link {
	text-decoration: underline;
	color: #005faa;
}

.ttl-label {
	color: #fff;
	background: #DE617C;
	border-radius: 30px;
	font-weight: bold;
	line-height: 1;
	padding: 6px 18px;
	white-space: nowrap;
}

.white-ttl-label {
	display: inline-block;
	color: #063E6E;
	background: #fff;
	border-radius: 30px;
	border: 1px solid #063E6E;
	font-weight: bold;
	line-height: 1;
	padding: 6px 18px;
	white-space: nowrap;
	width: 90px;
	text-align: center;
	margin-bottom: 10px;
}

h3.ttl-label {
	display: inline-block;
	margin-bottom: 10px;
	text-align: center;
}

.pink-txt {
	color: #DE617C;
}

/* layout */
main {
	display: block;
	/*margin-top: 202px;*/
	width: 100%;
}

.wrapper {
	width: 100%;
	height: 100%;
	min-height: 100vh;
	position: relative;
	max-width: 1920px;
	margin: 0 auto;
}

.inner {
	width: 100%;
	max-width: 1110px;
	margin: 0 auto;
}

.contents-outer {
	max-width: 1200px;
	margin: auto;
	padding: 0 5px;
}

.sec-wrap {
	padding: 60px 0;
}

@media (max-width: 767px) {
	.sec-wrap {
		padding: 40px 0;
	}
}

.sec-head {
	font-size: 2.1rem;
	line-height: 1;
	border-bottom: 3px solid #C6C6C6;
	margin-bottom: 15px;
	white-space: nowrap;
}

span.head-border {
	position: relative;
	padding-right: 8px;
	padding-bottom: 4px;
	display: inline-block;
}

span.head-border:after {
	position: absolute;
	content: '';
	left: 0;
	bottom: -3px;
	width: 100%;
	height: 3px;
	background: #063E6E;
}

span.head-border img {
	margin-right: 6px;
	width: 15px;
}

@media (max-width: 767px) {
	.sec-head {
		font-size: 1.8rem;
	}

	span.head-border img {
		width: 14px;
	}
}

.subhead {
	margin-top: 50px;
	margin-bottom: 24px;
	padding-bottom: 20px;
	color: #1E638E;
	border-bottom: 1px solid #CBCBCB;
	line-height: 1;
	font-size: 2.2rem;
	letter-spacing: .5px;
}

@media(max-width: 599px) {
	.subhead {
		margin-top: 30px;
		padding-bottom: 12px;
		margin-bottom: 12px;
		font-size: 2rem;
	}
}

.fixed_width {
	width: auto;
	max-width: 1000px;
	margin: auto;
	padding: 20px;
}

.ly-flex {
	display: -webkit-flex;
	display: flex;
	position: relative;
	width: 100%;
}

.clearfix::after {
	content: "";
	display: block;
	clear: both;
}

.ly-square-img {
	position: relative;
}

.ly-square-img:before {
	content: "";
	display: block;
	padding-top: 100%;
}

.ly-square-img img {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	object-fit: cover;
}

.ly-detail-arrow-left,
.ly-detail-arrow-right {
	display: inline-block;
	position: relative;
}

.ly-detail-arrow-right {
	padding-right: 40px;
}

.ly-detail-arrow-left {
	padding-left: 40px;
}

.ly-detail-arrow-left:after,
.ly-detail-arrow-right:after {
	position: absolute;
	content: '';
	top: 50%;
	transform: translateY(-50%);
	background-image: url('/assets/img/svg/arrow_right.svg');
	background-size: contain;
	background-repeat: no-repeat;
	width: 22px;
	height: 22px;
}

.ly-detail-arrow-right:after {
	right: 0;
}

.ly-detail-arrow-left:after {
	left: 0;
}

@media (max-width: 767px) {
	.ly-detail-arrow-right {
		padding-right: 25px;
	}

	.ly-detail-arrow-left {
		padding-left: 25px;
	}

	.ly-detail-arrow-left:after,
	.ly-detail-arrow-right:after {
		width: 15px;
		height: 15px;
	}
}

.ly-border {
	display: block;
	border-radius: 20px;
	padding: 25px 30px;
}

.ly-shadow {
	box-shadow: 0px 3px 6px rgba(0, 0, 0, .2);
}

@media (max-width: 767px) {
	.ly-border {
		padding: 30px 25px;
	}
}

.listyle {
	padding-left: 0;
	list-style: none;
}

.kerning {
	display: inline-block;
}

#breadcrumb {
	background: #f3f3f3;
	border-radius: 40px;
	padding: 10px 30px;
	margin: 90px 0 40px;
}

@media(max-width: 640px) {
	#breadcrumb {
		margin-top: 60px;
	}
}

#breadcrumb ul {
	margin: 0;
	padding-left: 0;
}

#breadcrumb ul li {
	display: inline-block;
	padding-right: 8px;
}

#breadcrumb span, #breadcrumb a {
	font-size: 1.4rem;
}

#breadcrumb li a span {
	padding: 0 2.5px;
}

#breadcrumb li>span {
	font-weight: 700;
	color: #1E638E;
}

@media (max-width: 767px) {
	#breadcrumb {
		left: 30px;
	}
}

@media (max-width: 460px) {
	#breadcrumb {
		bottom: 0px;
		left: 15px;
	}

	#breadcrumb span, #breadcrumb a {
		font-size: 1.2rem;
	}

}

/* header */
.m-header-wrap {
	position: relative;
	margin-bottom: 20px;
}

/* main */

.m-col2 {
	justify-content: center;
}

/* aside */
aside {
	max-width: 300px;
	margin-left: 5vw;
	margin-right: auto;
}

.fb-iframe {
	margin-bottom: 40px;
}

.side-banners {
	max-width: 280px;
	margin: auto;
	margin-top: 24px;
}

.side-banners a {
	margin-bottom: 10px;
	display: block;
	text-align: center;
}

@media(max-width: 940px) {
	.m-col2 {
		display: block !important;
	}

	.inner {
		width: 96%;
		min-width: 340px;
	}

	aside {
		width: 100%;
		margin: auto;
	}

	.fb-iframe {
		margin-bottom: 30px;
	}

	.side-banners a {
		margin: 15px auto;
	}
}

.side-links {
	margin-bottom: 24px;
}

/* footer */
footer {
	position: absolute;
	right: 0;
	left: 0;
	width: 100%;
	padding: 10px 5px 0px;
	font-weight: 600;
}

.footer-wrap {
	max-width: 800px;
	width: 95%;
	margin: 0 auto;
}

.footer-info {
	margin: auto;
	text-align: center;
	justify-content: space-between;
}

.footer-hours {
	margin-bottom: 8px;
	margin-top: 1rem;
}

@media(min-width: 768px) {
	.footer-info {
		display: flex;
		position: relative;
		align-items: flex-end;
	}

	.footer-info-logo {
		width: 30%;
	}

	.footer-hours {
		width: 50%;
		margin: 0 auto;
	}

	.footer-contact {
		max-width: 340px;
		width: 48%;
	}

	.footer-tel .tel-btn {
		font-size: 3.5rem;
		letter-spacing: 1.8px;
	}

	.footer-tel .tel-btn img {
		width: 40px;
	}

}

.footer-address {
	margin: 15px 0 8px;
}

.footer-tel.tel-btn {
	font-size: 3.2rem;
	transition: all ease-out;
	animation: zoom 1s linear 1;
	animation-timing-function: ease;
}

@keyframes zoom {

	0%,
	100% {
		opacity: 1;
		transform: scale(1);
	}

	50% {
		opacity: 1;
		transform: scale(1.8);
	}
}


.footer-tel .tel-btn:before {
	left: 44px;
	bottom: 12px;
	width: 24px;
	height: 24px;
}

.footer-gmap {
	width: 50%;
	max-width: 445px;
}

.timetable-wrap {
	width: 100%;
	margin-bottom: 6px;
}

.footer-sns {
	display: flex;
	justify-content: center;
	margin: 40px auto 10px;
}

.footer-sns a {
	margin: 0 10px;
}

.footer-sns a img {
	height: 25px;
	width: auto;
}

.copyright {
	font-size: 1rem;
	text-align: center;
	color: #ccc;
	padding: 15px 0 5px;
}

@media (max-width: 767px) {
	footer {
		padding-top: 45px;
	}

	.footer-wrap {
		display: block;
		width: 90%;
	}

	.footer-wrap div {
		width: 100%;
	}

	.footer-tel .tel-btn:before {
		left: 15px;
		bottom: 11px;
		width: 22px;
		height: 22px;
	}

	.footer-address {
		margin-top: 0;
	}

	.post-code {
		display: block;
	}
}

.sp-footer-bar {
	display: none;
}

@media(max-width: 460px) {
	.sp-footer-bar {
		position: fixed;
		bottom: 0;
		left: 0;
		right: 0;
		width: 98%;
		margin: auto auto 5px;
		z-index: 999;
		justify-content: space-between;
		border: 2px solid #fff;
		display: block;
	}

	.sp-footer-bar a {
		display: block;
		width: 100%;
		font-size: 3.0rem;
		text-align: center;
		padding-top: 8px;
	}

	.sp-footer-bar {
		background: #1e2582 !important;
		/* background: #1d2088 !important; */
	}

	.sp-footer-bar.tel-wrap .tel-txt:before {
		right: 0;
	}

	.sp-footer-bar.tel-wrap .tel-txt:after {
		left: 0;
	}

	.sp-footer-bar.tel-wrap .alldays-txt {
		font-size: 1.2rem;
		line-height: 1.8;
	}

	.sp-footer-bar.tel-wrap img {
		width: 26px;
	}
}

@media (max-width: 767px) {
	body, a, p, li, dd, td {
		font-size: 1.4rem;
		line-height: 1.6;
	}

	header {
		height: 55px;
		position: fixed;
		display: block;
		z-index: 999;
	}

	.logo-wrap a {
		width: 150px;
	}
}


h1.page-ttl {
	font-weight: bold;
	letter-spacing: 2px;
	font-size: 4rem;
	margin-bottom: 24px;
	background: #222;
	color: #fff;
	position: relative;
	text-shadow: 0px 3px 6px rgba(0, 0, 0, .2);
}

h1.page-ttl span {
	position: absolute;
	top: 45%;
	left: 0;
	padding-left: 25px;
	transform: translateY(-50%);
	z-index: 1;
	width: 100%;
	text-shadow: 3px 3px 3px #2f2f2f;
}

@media (max-width: 460px) {
	h1.page-ttl span {
		padding-left: 10px;
	}
}

.page-ttl-thumbnail img {
	width: 100%;
	height: 100%;
	min-height: 235px;
	object-fit: cover;
	object-position: right;
	position: relative;
}

@media(max-width: 1023px) {
	.page-ttl-thumbnail img {
		min-height: 150px;
	}
}

.post-wrap {
	background: #fff;
	padding: 60px 60px 45px;
}

.post-span {
	display: block;
}

.post-detail-btn {
	width: 135px;
	font-size: 1.2rem;
	padding: 12px 25px !important;
	white-space: nowrap;
	margin-top: 15px;
	margin-right: 0;
	margin-left: auto;
}

.post-detail-btn.ly-detail-arrow-right:after {
	width: 17px;
	height: 17px;
	right: 25px !important;
}

.post-ul li {
	padding: 24px 30px;
	border-top: 1px solid #BABABA;
	border-bottom: 1px solid #BABABA;
	background: #F2F5F4;
	margin-bottom: 30px;
}

.post-ul li a {
	display: block;
}

.post-ul li:last-child {
	margin-bottom: 0;
}

.post-date {
	color: #A2A2A2;
	padding: 6px 0px;
	display: inline-block;
	line-height: 1;
	font-family: 'Arial', sans-serif;
}

.top-post-ttl {
	display: block;
}

.post-ttl {
	font-size: 1.8rem;
	font-weight: 700;
	padding-top: 5px;
	padding-bottom: 10px;
	line-height: 1.2;
}

.post-ttl-wrap {
	padding: 24px 10px 10px;
	margin-bottom: 18px;
	border-bottom: 1px dotted #222;
}

@media (max-width: 767px) {
	.post-wrap {
		padding: 30px 25px 10px;
	}

	.post-ul li {
		padding: 15px;
	}

	.post-ttl {
		font-size: 1.6rem;
		padding-bottom: 12px;
	}

	.post-detail-btn {
		font-size: 1rem;
		width: 105px;
		padding: 8px 15px !important;
		margin-top: 5px;
	}

	.post-detail-btn.ly-detail-arrow-right:after {
		width: 10px;
		height: 10px;
		right: 15px !important;
	}
}

.sec-top-wrap {
	padding-top: 10px;
}

@media (max-width: 640px) {
	aside.sec-wrap {
		padding-bottom: 0;
	}

	.inner>.sec-wrap {
		padding-top: 20px;
	}
}

@media (max-width: 460px) {
	.post-wrap {
		padding: 25px 15px 10px;
	}
}


/* common page components */
.sec-wrap p.has-background {
	padding: 10px;
	margin-bottom: 15px;
}

.sec-wrap .wp-block-button__link {
	background: #1E638E;
	font-weight: bold;
	font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, Verdana, Meiryo, sans-serif;
	width: 100%;
	max-width: 310px;
	font-size: 1.8rem;
	padding: 10px;
	cursor: pointer;
	transition: all .3s ease 0s;
}


@media(max-width: 640px) {
	.sec-wrap .wp-block-button__link {
		font-size: 1.5rem;
		width: 80%;
	}
}

.su-animate.flash.animated {
	display: block;
	color: #000;
	font-size: 3rem;
	font-family: 'Avenir', Arial, sans-serif;
	font-weight: bold;
	text-align: center;
	letter-spacing: 1.5px;
	position: relative;
	padding-left: 50px;
	width: 290px;
	margin: 10px auto;
}

.su-animate.flash.animated:before {
	position: absolute;
	content: '';
	bottom: -2px;
	left: 0;
	width: 44px;
	height: 44px;
	background-image: url('/assets/img/tel_icon_block.svg');
	background-repeat: no-repeat;
	background-size: contain;

}

@media(max-width: 640px) {
	.sec-wrap .cm-tel-txt {
		font-size: 2.9rem;
		padding-left: 35px;
		margin-bottom: 6px;
	}

	.sec-wrap .cm-tel-txt:before {
		width: 35px;
		height: 35px;
		left: 15px;
		bottom: 1px;
	}
}

.sec-wrap iframe {
	width: 100%;
}

.page-wrap h1,
.frontpage-wrap h2 {
	background: #1E638E;
	color: #fff;
	font-size: 2.6rem;
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	padding: 10px 20px;
	position: relative;
	line-height: 1.5;
}

.page-wrap h1:after,
.frontpage-wrap h2:after {
	position: absolute;
	content: '';
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	width: 150px;
	height: 3px;
	border-radius: 5px 0 0 5px;
	background: #54B3C9;
}

@media(max-width: 640px) {

	.page-wrap h1,
	.frontpage-wrap h2 {
		padding-left: 10px;
		font-size: 2.1rem;
	}

	.page-wrap h1:after,
	.frontpage-wrap h2:after {
		height: 2px;
		width: 100px;
	}
}

.cm-grid-bk {
	background-image: linear-gradient(0deg, transparent calc(100% - 1px), rgba(243, 243, 243, .7) calc(100% - 1px)),
		linear-gradient(90deg, transparent calc(100% - 1px), rgba(243, 243, 243, .7) calc(100% - 1px));
	background-size: 16px 16px;
	background-repeat: repeat;
	background-position: center center;
	padding: 20px;
}

@media(max-width: 460px) {
	.frontpage-wrap .cm-grid-bk {
		padding: 15px 10px;
	}
}

/* top */
.top-topic {
	background: #FAFAFA;
	padding: 6%;
}

@media(max-width: 940px) {
	.frontpage-wrap {
		padding-top: 0 !important;
		margin-top: -20px;
	}

	.top-topic {
		margin-left: -2.5%;
		margin-right: -2.5%;
		padding-top: 35px;
		padding-bottom: 40px;
	}
}

.top-topic p {
	font-size: 120%;
}

@media(max-width: 940px) {
	.top-topic p {
		font-size: 104%;
	}

	.top-topic p.top-topic-txt {
		font-size: 1.6rem;
	}
}

.top-topic .wp-block-group__inner-container {
	background: #fff;
	padding: 6%;
	box-shadow: 3px 3px 3px #cdcdcd;
	border-left: 5px solid #1E638E;
}

@media(max-width: 940px) {
	.top-topic .wp-block-group__inner-container {
		padding: 5%;
	}
}

.top-access-content {
	background: #FAFAFA;
	padding: 1% 4% 3%;
}

.top-access-content ul {
	padding: 0 15px 5px 0;
}

@media(max-width: 460px) {
	.top-access-content ul {
		padding: 0 5px;
	}
}

.top-access-content ul li {
	list-style: none;
	padding-bottom: 5px;
	position: relative;
	padding-left: 16px;
}

.top-access-content ul li:before {
	position: absolute;
	top: 11px;
	left: 0;
	content: "";
	width: 8px;
	height: 8px;
	background: #54B3C9;
	border-radius: 50%;
}

.top-access-content ul li strong {
	font-size: 110%;
}

@media(max-width: 640px) {
	.top-access-content ul li {
		padding-left: 12px;
	}

	.top-access-content ul li:before {
		top: 9px;
		left: 0;
		width: 6px;
		height: 6px;
	}

	.top-access-content ul li strong,
	.top-access-content ul li {
		font-size: 1.4rem;
	}
}

.top-access-content p {
	padding: 2%;
	background: #fff;
}

@media(max-width: 640px) {
	.top-access-content p {
		font-size: 1.2rem;
	}
}

.cm-grid-bk .wp-block-latest-posts__list {
	padding-right: 0px;
	margin-top: 0;
}

.cm-grid-bk .wp-block-latest-posts__list li {
	display: flex;
	align-items: center;
	padding: 10px;
}

.cm-grid-bk .wp-block-latest-posts__list li:not(:last-child) {
	border-bottom: 1px dotted #000;

}

.cm-grid-bk .wp-block-latest-posts__list li time {
	order: 1;
	padding-right: 30px;
	color: #A2A2A2;
	font-size: inherit;
	font-family: 'Arial', sans-serif;
}

.cm-grid-bk .wp-block-latest-posts__list li a {
	order: 2;
}

.top-access-content p.attention-txt {
	padding-left: 28px;
	position: relative;
}

@media(max-width: 640px) {
	.top-access-content p.attention-txt {
		padding-left: 25px;
	}

}

.top-access-content p.attention-txt span.attention {
	position: absolute;
	left: 10px;
}

/* staff */
h3.staff-name {
	font-size: 2.4rem;
	letter-spacing: 1px;
	margin-bottom: 10px;
}

h3.staff-name span {
	font-size: 2.0rem;
	font-style: italic;
	font-weight: normal;
	color: #6E6868;
	padding-left: 24px;
	font-family: 'Times New Roman', "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}

ul.staff-career-list li {
	display: flex;
}

ul.staff-career-list li span:first-child {
	width: 30%;
	min-width: 120px;
}

.staff-profile-wrap {
	background: #F7F7F7;
	box-shadow: 2px 1px 6px silver;
	padding: 30px;
}

.staff-profile-wrap .wp-block-column {
	padding-top: 5px;
}

.staff-profile-wrap .wp-block-column:first-child {
	max-width: 80px;
	border-right: 1px solid #1E638E;
}

.staff-profile-wrap h4 {
	font-weight: normal;
}

@media(max-width: 599px) {
	.staff-profile-wrap {
		padding: 10px;
	}

	.staff-profile-wrap .wp-block-column:first-child {
		flex-basis: 33.33% !important;
		max-width: 56px;
	}

	.staff-profile-wrap .wp-block-column:last-child {
		flex-basis: 66.66% !important;
		margin-left: 14px;
	}

	h3.staff-name {
		font-size: 2.1rem;
	}

	h3.staff-name span {
		font-size: 1.7rem;
	}
}

h2.staff-member-subhead {
	max-width: 300px;
	margin: 0 auto;
}

h2.staff-member-subhead span {
	float: right;
}

h2.staff-member-subhead span b {
	font-size: 140%;
	margin-top: -20px;
	display: inline-block;
	padding: 5px;
}

.staff-bk {
	position: relative;
	z-index: 0;
	padding-top: 9.5em;
}

.staff-bk:before {
	position: absolute;
	content: '';
	background-image: url('/assets/img/staff_bk.jpg');
	background-size: contain;
	background-repeat: no-repeat;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	z-index: -1;
}

.staff-inner {
	background: rgba(255, 255, 255, 0.8);
	padding: 3em 2.5em 2.5em;
	width: 95%;
	max-width: 600px;
	margin: auto;
	box-shadow: 1px 1px 4px #e1e1e1;


}

.staff-inner .wp-block-columns {
	margin-bottom: 0;
	justify-content: space-between;
}

@media(min-width: 600px) {
	.staff-bk {
		padding-bottom: 9.5em;
	}

	.staff-inner .wp-block-column {
		max-width: 215px;
	}
}

/* access */
.access-info-wrap {
	background: #FAFAFA;
}

.access-info-wrap figure.wp-block-table {
	padding: 10px 24px;
}

@media(max-width: 599px) {
	.access-info-wrap figure.wp-block-table {
		padding: 8px 10px;
	}
}

.access-info-wrap table {
	background: #fff;
	border-left: 5px solid #1E638E;
	box-shadow: 3px 3px 6px #cbcbcb;
	table-layout: fixed;
	width: 100%;
}

.access-info-wrap table tr td {
	padding: 10px 20px;
}

@media(max-width: 599px) {
	.access-info-wrap table tr td {
		padding: 10px 10px;
	}
}

.access-info-wrap table tr:first-child td {
	padding-top: 25px;
}

.access-info-wrap table tr:last-child td {
	padding-bottom: 25px;
}

.access-info-wrap table tr td:first-child {
	width: 85px;
	font-weight: bold;
	text-align: right;
	padding-right: 12px;
}

@media(max-width: 599px) {
	.access-info-wrap table tr td:first-child {
		width: 60px;
	}
}

.access-info-wrap table tr td a {
	text-decoration: underline;
	font-weight: bold;
	color: #1E638E;
}

.access-traffic-wrap {
	background: #FAFAFA;
}

.access-traffic-wrap .wp-block-image {
	margin-top: 15px;
	padding-left: 24px;
}

.access-traffic-wrap .top-access-content {
	padding: 0% 2% 3%;
	width: 78%;
	max-width: 660px;
	margin-right: 0;
	margin-left: auto;
}

@media(max-width: 599px) {
	.access-traffic-wrap .wp-block-image {
		padding-left: 12px;
	}

	.access-traffic-wrap .wp-block-image img {
		width: 80px;
		height: 80px;
	}

	.access-traffic-wrap .top-access-content {
		width: 100%;
	}

	.access-traffic-wrap .top-access-content ul li:first-child {
		width: 70%;
		max-width: 333px;
		margin-right: 0;
		margin-left: auto;
		margin-top: 40px;
		margin-bottom: 25px;
	}

	.access-traffic-wrap .top-access-content ul {
		padding-right: 8px;
	}

	.access-traffic-wrap .top-access-content ul li strong {
		font-size: 1.6rem;
	}
}

.access-parking-wrap {
	background: #FAFAFA;
}

.access-parking-wrap .wp-block-column:first-child {
	padding: 30px 0px 30px 15px;
}

.access-parking-wrap .wp-block-column:first-child p {
	padding-bottom: 10px;
}

.access-parking-wrap .wp-block-column:last-child {
	margin-left: 15px !important;
}

.access-parking-wrap .wp-block-column:last-child figure.parking-img-wrap,
.access-parking-wrap .wp-block-column:last-child figure.parking-img-wrap img {
	height: 100%;
}

.access-parking-wrap .wp-block-column:last-child figure.parking-img-wrap img {
	object-fit: cover;
}

@media(max-width: 599px) {
	.access-parking-wrap .wp-block-column:first-child {
		padding-bottom: 10px;
	}

	.access-parking-wrap .wp-block-column:last-child {
		margin-left: 0px !important;
	}
}

/* recruit */
h2.recruit-msg-ttl {
	margin-bottom: 0;
}

.recruit-msg-wrap {
	padding: 20px;
	background: #FAFAFA;
}

.recruit-msg-wrap .wp-block-group__inner-container {
	background: #fff;
	padding: 10px 25px;
	border-left: 4px solid #1E638E;
	box-shadow: 3px 3px 6px #cbcbcb;
}

.recruit-msg-wrap .wp-block-group__inner-container p {
	padding: 15px 0;
}

@media(max-width: 599px) {
	.recruit-msg-wrap {
		padding: 20px 10px;
	}

	.recruit-msg-wrap .wp-block-group__inner-container {
		padding: 10px 16px;
	}

	.recruit-msg-wrap .wp-block-group__inner-container p {
		padding: 10px 0;
	}
}

.recruit-item {
	padding-left: 5px;
	padding-bottom: 20px;
}

.recruit-item:not(:first-child) {
	border-top: 1px dotted #222;
	padding: 20px 5px;
}

.recruit-item h3 {
	font-size: 1.6rem;
	padding-bottom: 4px;
}

@media (max-width: 767px) {
	.recruit-item h3 {
		font-size: 1.4rem;
	}
}

.recruit-btn-wrap {
	background-image: url('/assets/img/recruit_bk.jpg');
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	padding: 5em 0;
}

.recruit-btn a.wp-block-button__link {
	font-size: 120%;
	font-family: inherit;
	letter-spacing: 1px;
	border: 2px solid #1e638e;
}

@media(max-width: 599px) {
	.recruit-btn-wrap {
		padding: 4em 0;
	}

	.recruit-btn a.wp-block-button__link {
		max-width: 220px;
	}
}

/* infomation */
ol.cnslt-flow-wrap {
	counter-reset: num;
	list-style-type: none !important;
	padding: 0;
	margin: 0;
}

ol.cnslt-flow-wrap li {
	position: relative;
	padding: 20px 20px 20px 110px;
	background: #fafafa;
	margin-bottom: 30px;
}

ol.cnslt-flow-wrap li:before {
	position: absolute;
	counter-increment: num;
	content: counter(num);
	display: inline-block;
	background: #fff;
	color: #54B3C9;
	font-weight: bold;
	font-size: 2.8rem;
	border: 2px solid #54B3C9;
	top: 25px;
	left: 25px;
	width: 50px;
	height: 50px;
	line-height: 50px;
	text-align: center;
}

ol.cnslt-flow-wrap li strong {
	font-size: 1.8rem;
}

ol.cnslt-flow-wrap li span.cm-tel-txt,
ol.cnslt-flow-wrap li a.base-btn {
	display: inline-block;
}

ol.cnslt-flow-wrap li a.base-btn {
	font-size: 1.6rem;
	width: 90%;
}

@media(min-width: 641px) {
	ol.cnslt-flow-wrap li span.cm-tel-txt:before {
		width: 40px;
	}

	ol.cnslt-flow-wrap li span.cm-tel-txt {
		margin-right: 8%;
		padding-left: 48px;
		font-size: 3.5rem;
		width: 300px;
	}

	ol.cnslt-flow-wrap li a.base-btn {
		max-width: 240px;
		vertical-align: super;
		font-size: 1.8rem;
	}

}

@media(max-width: 460px) {
	ol.cnslt-flow-wrap li {
		padding: 20px 10px 20px 70px;
	}

	ol.cnslt-flow-wrap li:before {
		width: 38px;
		height: 38px;
		line-height: 38px;
		font-size: 1.9rem;
		top: 20px;
		left: 10px;
	}

	ol.cnslt-flow-wrap li strong {
		font-size: 1.6rem;
	}

	ol.cnslt-flow-wrap li span.cm-tel-txt {
		padding-left: 8px;
	}

	ol.cnslt-flow-wrap li span.cm-tel-txt:before {
		left: 0;
	}

}

ul.cnslt-required-wrap {
	margin-top: -20px;
}

ul.cnslt-required-wrap li {
	list-style: none;
	padding-bottom: 5px;
	position: relative;
	padding-left: 16px;
	font-size: 105%;
}

ul.cnslt-required-wrap li:before {
	position: absolute;
	top: 10px;
	left: 0;
	content: "";
	width: 8px;
	height: 8px;
	background: #54B3C9;
	border-radius: 50%;
}

@media(max-width: 640px) {
	ul.cnslt-required-wrap {
		padding: 20px 10px;
	}

	ul.cnslt-required-wrap li:before {
		top: 9px;
		width: 6px;
		height: 6px;
	}
}

table.cnslt-price-table {
	table-layout: fixed;
	width: 100%;
	border-collapse: separate;
	border-spacing: 2.5px;
	margin: 15px auto 30px;
}

@media(min-width: 941px) {
	table.cnslt-price-table {
		min-width: 680px;
	}
}

table.cnslt-price-table ul {
	list-style: none;
	padding-left: 0;
	margin: 0;
}

table.cnslt-price-table ul li {
	border-bottom: 1px solid #D1D1D1;
	padding: 15px 0;
	position: relative;

}

table.cnslt-price-table ul li:last-child {
	border-bottom: none;
}

table.cnslt-price-table ul li span.price-num {
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}

table.cnslt-price-table tr th,
table.cnslt-price-table tr td {
	padding: 20px 30px;
}

table.cnslt-price-table tr th {
	background: #54B3C9;
	color: #fff;
	vertical-align: middle;
}

table.cnslt-price-table tr th {
	width: 20%;
	font-size: 110%;
}

table.cnslt-price-table tr td.price-treatment-wrap {
	display: flex;
	justify-content: space-between;
	padding: 30px 30px 20px;
}

table.price-treatment-table {
	width: 45%;
}

table.price-treatment-table tr th {
	border: 3px solid #54B3C9;
	background: #FFF;
	color: #54B3C9;
	width: 100%;
	font-size: 110%;
	padding: 5px;
	margin-bottom: 10px;
	margin-top: 10px;
}

table.price-treatment-table tr th,
table.price-treatment-table tr td {
	display: block;
}

table.price-treatment-table tr td {
	padding: 0;
}

table.price-treatment-table tr td ul li.twoline {
	padding: 4px 0;

}

table.price-treatment-table tr td small {
	display: block;
}

table.cnslt-price-table tr>td {
	background: #FAFAFA;
}

@media(max-width: 640px) {

	table.cnslt-price-table tr th,
	table.cnslt-price-table tr td {
		display: block;
		width: 100%;
		padding: 15px 20px;
	}

	table.cnslt-price-table tr td.sp-center {
		text-align: center;
	}

	table.cnslt-price-table tr th {
		padding: 8px;
	}

	table.cnslt-price-table tr td.price-treatment-wrap {
		display: block;
		padding: 10px 15px 0px;
	}

	table.price-treatment-table {
		width: 100%;
	}

	table.price-treatment-table tr th {
		padding: 5px;
		margin-bottom: 0;
	}

	table.price-treatment-table tr td {
		padding-left: 0;
		padding-right: 0;
	}
}

.cnslt-payment-wrap {
	border: 3px solid #1E638E;
}

.cnslt-payment-wrap .wp-block-column:first-child {
	max-width: 20%;
}

.cnslt-payment-wrap .wp-block-column:last-child {
	background: #FAFAFA;
	padding: 20px;
	margin-left: 0 !important;
	min-width: 80%;
}

@media (max-width: 599px) {
	.cnslt-payment-wrap .wp-block-column:first-child {
		max-width: 100%;
		padding: 15px;
	}

	.cnslt-payment-wrap .wp-block-column:last-child {
		max-width: 100%;
		padding: 15px;
		text-align: center;
	}
}

.cnslt-cards {
	margin-top: .5em;
}

/* hospital */
.hospital-greeting-wrap .wp-block-group__inner-container p {
	padding-bottom: 30px;
}

.hospital-red-txt {
	color: #DE1313;
	font-size: 95%;
}

.hospital-equip-wrap dl {
	border-top: 1px dotted #707070;
	padding: 15px 0;
}

.hospital-equip-wrap dl:first-child {
	border-top: none;
}

@media(max-width: 460px) {
	.hospital-equip-wrap dl {
		padding: 10px 0;
	}

}

.hospital-equip-wrap dl:last-child {
	border-bottom: 1px solid #D1D1D1;
}

.hospital-equip-wrap dl dt {
	font-weight: bold;
	font-size: 115%;
	cursor: pointer;
	position: relative;
	padding-left: 15px;
}

.hospital-equip-wrap dl dt:before {
	position: absolute;
	content: '';
	top: 50%;
	transform: translateY(-50%);
	left: 0;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #54B3C9;
}

.hospital-equip-wrap dl dt:hover {
	opacity: .8;
}

.hospital-equip-wrap dl dt i {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 0px;
	transition: .2s;
	background: #1E638E;
	color: #fff;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	text-align: center;
	line-height: 28px;
	padding-left: 3px;
	font-size: 85%;
}

.hospital-equip-wrap dl dt.dt-show i {
	transform: rotate(90deg) translateY(-50%);
	right: 15px;
	top: 0;
}

@media(max-width: 460px) {
	.hospital-equip-wrap dl dt i {
		width: 25px;
		height: 25px;
		line-height: 25px;
	}

	.hospital-equip-wrap dl dt i:before {
		font-size: 1.2rem;
	}
}

.hospital-equip-wrap dl dd div {
	display: none;
	margin-top: 10px;
}

.hospital-equip-wrap dl dd div p {
	padding-bottom: 15px;
}

.hospital-equip-wrap dl dd div img {
	max-width: 320px;
	box-shadow: 3px 3px 6px #ddd;
}

.hospital-facility-wrap figure {
	margin: .5rem;
	padding: 2%;
	position: relative;
}

.hospital-facility-wrap .slick-list {
	box-shadow: 1px 1px 6px #b8b8b8;
}

.hospital-facility-wrap .slider-single .slick-slide {
	background: #FAFAFA;
	padding: 15px;
}

.hospital-facility-wrap .slick-slide figure figcaption {
	margin-top: 20px;
}

.hospital-facility-wrap .slider-single figure {
	margin: 0;
}

.hospital-facility-wrap .slider-single figure img {
	width: 100%;
	max-height: 440px;
	object-fit: cover;
}

.hospital-facility-wrap .slider-single h3 {
	position: relative;
	padding-left: 15px;
	font-size: 1.8rem;
}

@media(max-width: 460px) {
	.hospital-facility-wrap .slider-single h3 {
		font-size: 1.6rem;
	}
}

.hospital-facility-wrap .slider-single h3:before {
	position: absolute;
	content: '';
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #54B3C9;
}

.hospital-facility-wrap .slider-nav {
	margin-top: 10px;
}

.hospital-facility-wrap .slider-nav .slick-slide img {
	width: 100%;
	height: 90px;
	object-fit: cover;
}

.hospital-facility-wrap .slider-nav .slick-slide {
	cursor: pointer;
}

.hospital-facility-wrap .slider-nav .slick-slide figure {
	position: relative;
	margin: 1px;
	padding: 0;
}

.hospital-facility-wrap .slider-nav .slick-slide figure:after {
	position: absolute;
	content: '';
	top: 0;
	left: 0;
	bottom: 0;
	width: 100%;
	background: rgba(0, 0, 0, .4);
	transition: .2s;

}

.hospital-facility-wrap .slider-nav .slick-slide:hover figure:after,
.hospital-facility-wrap .slick-slide.is-active figure:after {
	opacity: 0;
}

.hospital-facility-wrap .slider-single button:before {
	color: #18D3BD;
}

.hospital-facility-wrap .slider-single .slick-next {
	right: 20px;
	z-index: 1;
}

.hospital-facility-wrap .slider-single .slick-next:before {
	content: "⟩";
	font-size: 80px;
	font-weight: bold;
	z-index: 1;
}

.hospital-facility-wrap .slider-single .slick-prev {
	left: 20px;
	z-index: 1;
}

.hospital-facility-wrap .slider-single .slick-prev:before {
	content: "⟨";
	font-size: 80px;
	font-weight: bold;
}

.hospital-facility-wrap .slider-single .slick-next,
.hospital-facility-wrap .slider-single .slick-prev {
	top: 40%;
	width: 25px;
	height: 80px;
}

.hospital-facility-wrap .slider-nav .slick-next,
.hospital-facility-wrap .slider-nav .slick-prev {
	display: none !important;
}

@media (max-width: 460px) {
	.hospital-facility-wrap .slider-single .slick-next {
		right: 6px;
	}

	.hospital-facility-wrap .slider-single .slick-prev {
		left: 6px;
	}

	.hospital-facility-wrap .slider-single .slick-next,
	.hospital-facility-wrap .slider-single .slick-prev {
		top: 35%;
		height: 80px;
		width: 30px;
	}
}

.access_map {
	border: 1px solid #d3d3d3;
	margin-top: 1em;
	text-align: center;
}

/* index design */
.toc-001 {
	margin-bottom: 30px;
	padding: 1em 1em 1em 2em;
	border: 1px solid #999;
	background-color: #f7f7f7;
	color: #333333;
}

.toc-001 p {
	display: flex;
	align-items: center;
	margin: 0;
	padding: 5px 0;
}

.toc-001 p::before {
	display: inline-block;
	width: 1em;
	height: 1em;
	margin-right: 5px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8 4H21V6H8V4ZM3 3.5H6V6.5H3V3.5ZM3 10.5H6V13.5H3V10.5ZM3 17.5H6V20.5H3V17.5ZM8 11H21V13H8V11ZM8 18H21V20H8V18Z' fill='%23333'%3E%3C/path%3E%3C/svg%3E");
	content: '';
}

.toc-001 ol {
	list-style-type: decimal;
	margin: 0;
	padding: 0 1.2em;
	overflow: hidden;
}

.toc-001 ol ol {
	margin-top: 5px;
}

.toc-001 li {
	padding: 2px 0;
}

.toc-001 li::marker {
	font-size: .95em;
}

.toc-001 a {
	color: #166c9d;
	font-size: .95em;
}

/* donor */
.flow-step-h3 {
	padding: 10px 15px;
	background: #1e2582;
	color: #fff;
	letter-spacing: .5px;
}

.flow-step-txt {
	padding: 5px 15px 20px;
	background: #f1f1f1;
}

.appform-btn a {
	max-width: 100% !important;
}

.appform-btn a strong {
	font-size: 1.2em !important;
}

.disp-none {
	display: none;
}

.footer-center-nav ul {
	height: 100%;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	-webkit-align-content: center;
	align-content: center;
	margin-bottom: 3rem;
}

.footer-center-nav ul li {
	position: relative;
	flex: 1 1 auto;
	-webkit-flex: 1 1 auto;
	text-align: center;
	cursor: pointer;
	transition: .2s;
	border-right: 1px solid #ccc;
}

#menu-item-233 {
	font-size: 2rem;
}

#menu-item-230, #menu-item-928 {
	border-left: 1px solid #ccc;

	@media(max-width: 798px) {
		border: 0;
	}
}


.footer-center-nav {
	width: 100%;
	/* add by k.toma 20240408 */
	max-width: 1000px;
	max-width: 1190px;
	/* add by k.toma 20240408 */
	margin-left: auto;
	margin-right: auto;

}

.footer-center-nav ul {
	height: 100%;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	-webkit-align-content: center;
	align-content: center;

	@media(max-width: 798px) {
		flex-direction: column;
		padding-left: 0;
	}
}

.footer-center-nav ul li {
	position: relative;
	flex: 1 1 auto;
	-webkit-flex: 1 1 auto;
	text-align: center;
	cursor: pointer;
	transition: .2s;
	border-right: 1px solid #ccc;

	@media(max-width: 798px) {
		border: 0;
	}
}

.footer-center-nav ul li a {
	font-size: 1.65rem;
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	font-weight: 900;
	position: relative;
	width: 100%;
	color: #4d5155;
}

.side-archive {
	width: 100%;
	max-width: 280px;
	padding: 1rem;
	border: solid 1px #fff;
	justify-content: center;
}

.side-archive-wrapper {
	background-color: #f1f1f1;
	padding: 1rem;
	display: flex;
}

.home_title {
	width: 100%;
	background-color: #54B3C9;
	font-weight: bold;
	padding: 0 1rem;
	color: #fff;
	text-align: center;
}

.news_post_meta ul {
	text-decoration: none;
	margin-block-start: 0em;
	margin-block-end: 0em;
	padding-inline-start: 0px;
	color: #fff;
	font-size: 0.8rem;
	list-style: none;
}

.news_post_meta ul li {
	margin-top: 1rem;
}

.icon-veccs {
	width: 10%;
	width: 20px;
	height: 20px;
	margin-right: 5px;
	margin-bottom: 5px;
}

.news_post_small_title {
	border-bottom: solid 1px #005faa;
}

.tel-btn {
	display: block;
	color: #fff;
	font-size: 2.6rem;
	font-family: 'Avenir', Arial, sans-serif;
	font-weight: bold;
	text-align: center;
	letter-spacing: 1.5px;
	position: relative;
	cursor: pointer;
	animation: zoom .5s;
}

@keyframes zoom {
	50% {
		transform: scale(1.2);
	}
}

@media (max-width: 640px) {
	.wp-block-button.aligncenter {
		width: 50%;
	}
}
.fixed_banner {
	position: fixed; /* 追従させる為にfixedの値を記述します */
	z-index: 99999; /* 他の要素の下に隠れないように全面配置させます */
	width: 20%;
	top: 65%;
	right: 3%; /* 右から40pxのところにバナーを配置します */
	}
	.floating-banner:hover {
	opacity: .8; /* マウスが重なった時に少し透過させます */
	}
	
	.fixed_banner_sp {
	display: none; /* PCではスマホ用のバナーは非表示にします */
	}
	
	
	@media screen and (max-width: 480px) { /* メディアクエリを使ってスマホ用のブレイクポイントを指定 */
	
	.fixed_banner_sp {
	display: inline-block; /* 消していたスマホ用のバナーを表示させます */
	width: 100vw; /* スマホの画面幅いっぱいにバナーを表示させます */
	}
	
	}