@charset "utf-8";
/* Theme Name: res */
@import url('https://fonts.googleapis.com/css?family=Noto%20Sans%20JP:400,500,700&display=swap');
@import url('https://fonts.googleapis.com/css?family=Noto%20Serif%20JP:400,700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wdth,wght@0,75..100,300..800;1,75..100,300..800&display=swap');
html, body {
	font-size: 16px;
	line-height: 1.75;
	color: #042921;
	letter-spacing: .1em;
	font-family: "Noto Sans JP", sans-serif;
}
.clearfix:after {
	content: "";
	display: block;
	clear: both;
}
img {
	max-width: 100%;
	height: auto;
}
li {
	list-style: none;
}
a {
	color: inherit;
}
.txt_link {
	color: #9e9eb7;
}
a:hover {
	opacity: .85;
	transition: .3s;
}
.inner {
	max-width: calc(1200px + 10%);
	width: 100%;
	margin: 0 auto;
	padding: 0 5%;
}
table{
	table-layout: fixed;
}
td input{
	max-width: 100%;
}
#map{
	position: relative;
	width: 100%;
	padding: 650px 0 0 0;
}
#map iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
}
a[href^="tel:"] {
	/* cursor: default; */
}
a[href^="tel:"]:hover {
	opacity: 1;
}
.slick-slide {
	outline: none;
}
.tb_only {
	display: none;
}
.sp_only {
	display: none;
}
.tb_pc {
	display: inherit;
}
.sp_tb {
	display: none;
}
.min {
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
	font-style: normal;
}
.futura {
	font-family: "Open Sans", sans-serif;
	font-weight: 500;
	font-style: normal;
}
.flex {
	display:-webkit-box;
	display:-ms-flexbox;
	display: -webkit-flex;
	display:flex;
	-webkit-box-pack:justify;
	-ms-flex-pack:justify;
	-webkit-justify-content:space-between;
	justify-content:space-between;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-align-items: flex-start;
	align-items: flex-start;
}
.flex.start     { -webkit-justify-content: flex-start; justify-content: flex-start; }
.flex.end       { -webkit-justify-content: flex-end; justify-content: flex-end; }
.flex.center    { -webkit-justify-content: center; justify-content: center; }
.flex.around    { -webkit-justify-content: space-around; justify-content: space-around; }
.flex.between   { -webkit-justify-content: space-between; justify-content: space-between; }
.flex.stretch   { -webkit-align-items: stretch; align-items: stretch; }
.flex.ai_center { -webkit-align-items: center; align-items: center; }
.flex.ai_start  { -webkit-align-items: flex-start; align-items: flex-start; }
.flex.ai_end    { -webkit-align-items: flex-end; align-items: flex-end; }
.flex.nowrap    { -webkit-flex-wrap: nowrap; flex-wrap: nowrap; }
.flex.column    { -ms-flex-direction:column; -webkit-flex-direction:column; flex-direction:column; }
.flex.row       { -ms-flex-direction:row; -webkit-flex-direction:row; flex-direction:row; }
.flex.c_reverse { -ms-flex-direction:column-reverse; -webkit-flex-direction:column-reverse; flex-direction:column-reverse; }
.flex.r_reverse { -ms-flex-direction:row-reverse; -webkit-flex-direction:row-reverse; flex-direction:row-reverse; }
.noshrink       { flex: 0 0 auto; }
.grow           { flex: 1 1 auto; }

.txt_center { text-align: center; }
.no_mgn { margin-bottom: 0!important;}
.mb5    { margin-bottom:  5px; }
.mb10   { margin-bottom: 10px; }
.mb15   { margin-bottom: 15px; }
.mb20   { margin-bottom: 20px; }
.mb25   { margin-bottom: 25px; }
.mb30   { margin-bottom: 30px; }
.mb35   { margin-bottom: 35px; }
.mb40   { margin-bottom: 40px; }
.mb45   { margin-bottom: 45px; }
.mb50   { margin-bottom: 50px; }
.mb55   { margin-bottom: 55px; }
.mb60   { margin-bottom: 60px; }
.mb65   { margin-bottom: 65px; }
.mb70   { margin-bottom: 70px; }
.mb75   { margin-bottom: 75px; }
.mb80   { margin-bottom: 80px; }
.mb85   { margin-bottom: 85px; }
.mb90   { margin-bottom: 90px; }
.mb95   { margin-bottom: 95px; }
.mb100  { margin-bottom:100px; }
.mb105  { margin-bottom:105px; }
.mb110  { margin-bottom:110px; }
.mb115  { margin-bottom:115px; }
.mb120  { margin-bottom:120px; }
.mb125  { margin-bottom:125px; }
.mb130  { margin-bottom:130px; }
.mb135  { margin-bottom:135px; }
.mb140  { margin-bottom:140px; }
.mb145  { margin-bottom:145px; }
.mb150  { margin-bottom:150px; }
.mb05em { margin-bottom:0.5em; }
.mb10em { margin-bottom:1.0em; }
.mb15em { margin-bottom:1.5em; }
.mb20em { margin-bottom:2.0em; }
.mb25em { margin-bottom:2.5em; }
.mb30em { margin-bottom:3.0em; }
@media(min-width: 768px) {
	a[href^="tel:"] {
		pointer-events: none;
	}
}
@media(min-width: 768px) and (max-width:960px) {
	.pc_only {
		display: none;
	}
	.tb_only {
		display: inherit;
	}
	.sp_only {
		display: none;
	}
	.tb_pc {
		display: inherit;
	}
	.sp_tb {
		display: inherit;
	}
}
@media(max-width: 767px) {
	html, body {
		font-size: 4.27vw;
		line-height: 1.5625;
		letter-spacing: 0;
	}
	.inner {
		padding: 0 3.2vw;
	}
	.pc_only {
		display: none;
	}
	.tb_only {
		display: none;
	}
	.sp_only {
		display: inherit;
	}
	.tb_pc {
		display: none;
	}
	.sp_tb {
		display: inherit;
	}
	#map {
		padding-top: calc(1200 / 750 * 100vw);
	}
	.mb5   { margin-bottom: calc( 5  / 750 * 100vw); }
	.mb10  { margin-bottom: calc( 10 / 750 * 100vw); }
	.mb15  { margin-bottom: calc( 15 / 750 * 100vw); }
	.mb20  { margin-bottom: calc( 20 / 750 * 100vw); }
	.mb25  { margin-bottom: calc( 25 / 750 * 100vw); }
	.mb30  { margin-bottom: calc( 30 / 750 * 100vw); }
	.mb35  { margin-bottom: calc( 35 / 750 * 100vw); }
	.mb40  { margin-bottom: calc( 40 / 750 * 100vw); }
	.mb45  { margin-bottom: calc( 45 / 750 * 100vw); }
	.mb50  { margin-bottom: calc( 50 / 750 * 100vw); }
	.mb55  { margin-bottom: calc( 55 / 750 * 100vw); }
	.mb60  { margin-bottom: calc( 60 / 750 * 100vw); }
	.mb65  { margin-bottom: calc( 65 / 750 * 100vw); }
	.mb70  { margin-bottom: calc( 70 / 750 * 100vw); }
	.mb75  { margin-bottom: calc( 75 / 750 * 100vw); }
	.mb80  { margin-bottom: calc( 80 / 750 * 100vw); }
	.mb85  { margin-bottom: calc( 85 / 750 * 100vw); }
	.mb90  { margin-bottom: calc( 90 / 750 * 100vw); }
	.mb95  { margin-bottom: calc( 95 / 750 * 100vw); }
	.mb100 { margin-bottom:calc(100 / 750 * 100vw); }
	.mb105 { margin-bottom:calc(105 / 750 * 100vw); }
	.mb110 { margin-bottom:calc(110 / 750 * 100vw); }
	.mb115 { margin-bottom:calc(115 / 750 * 100vw); }
	.mb120 { margin-bottom:calc(120 / 750 * 100vw); }
	.mb125 { margin-bottom:calc(125 / 750 * 100vw); }
	.mb130 { margin-bottom:calc(130 / 750 * 100vw); }
	.mb135 { margin-bottom:calc(135 / 750 * 100vw); }
	.mb140 { margin-bottom:calc(140 / 750 * 100vw); }
	.mb145 { margin-bottom:calc(145 / 750 * 100vw); }
	.mb150 { margin-bottom:calc(150 / 750 * 100vw); }
	.ps-container{touch-action: auto !important;}
}

/* ヘッダー header
------------------------------------------------------------------*/
header {
	/* position: absolute; */
	top: 0;
	right: 0;
	left: 0;
	margin: auto;
	width: 100%;
	z-index: 10;
}
.header_index {
	position: absolute;
}
.head_low {
	position: relative;
	top: auto;
	right: auto;
	left: auto;
}
h1 {
	width: 50%;
	padding-left: 2.5%;
}
.box_head {
	width: auto;
	background: #049B78;
	color: #fff;
	padding: 1em;
}
.tel_head {
	font-size: 187.5%;
	letter-spacing: 0;
	line-height: 1;
	border-bottom: 1px solid #fff;
	padding-bottom: 10px;
	margin-bottom: 10px;
}
.tel_head span {
	margin-right: 15px;
}
@media(min-width: 768px) and (max-width:960px) {
	
}
@media(max-width: 767px) {
	header {
		position: relative;
		top: auto;
		left: auto;
		right: auto;
		padding: 6vw;
	}
	h1 {
		max-width: calc(376 / 750 * 100vw);
		width: 100%;
		padding-left: 0;
	}
	.box_head {
		display: none;
	}
	.address_head {
		color: #049B78;
		padding: 2.5vw 3vw 3vw;
		letter-spacing: .1em;
	}
	.tel_head {
		position: absolute;
		width: calc(90 / 750 * 100vw);
		height: calc(90 / 750 * 100vw);
		right: 18vw;
		top: 3.2vw;
		z-index: 9999;
	}
	.tel_head a {
		display: block;
	}
}

/* メインイメージ main_img
------------------------------------------------------------------*/
.main_img {
	position: relative;
	z-index: 0;
}
.txt_main {
	position: absolute;
	z-index: 10;
	color: #fff;
	font-size: 375%;
	letter-spacing: .1em;
	text-shadow: 0px 0px 10px rgba(0,0,0,0.6), 0px 0px 15px rgba(0,0,0,0.6), 0px 0px 15px rgba(0,0,0,0.8), 0px 0px 30px rgba(0,0,0,0.6);
	width: 100%;
	height: auto;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	margin: auto;
}
.main_img ul {
	opacity: 0;
}
.main_img ul li {
	min-height: 600px;
}
.main01 { background: url(../img/fv_pc.png)no-repeat center / cover; }
.main_img .slick-slide .sp_only {
	display: none !important;
}
@media(min-width: 768px) and (max-width:1599px) {
	.txt_main {
		font-size: 36px;
	}
}
@media(min-width: 768px) and (max-width:1299px) {
	.txt_main {
		font-size: 30px;
	}
}
@media(min-width: 768px) and (max-width:960px) {
	.txt_main {
		font-size: 24px;
	}
}
@media only screen and (max-width: 767px) {
	.txt_main {
		font-size: 20px;
	}
	.main_img ul li {
		min-height: auto;
	}
	.main_img .slick-slide .sp_only {
		display: inherit!important;
	}
	.main_img .slick-slide .tb_pc {
		display: none !important;
	}
}

/* グローバルナビゲーション gnav ※以下のデフォルトはspのハンバーガーメニューです
------------------------------------------------------------------*/
.gnav {
	padding: 10px 3% 12px;
	transition: .3s;
	border-bottom: 5px solid #049B78;
	background-color: #fff;
}
.gnav.is_fixed {
	position: fixed;
	left: 0;
	width: 100%;
	z-index: 10;
	transition: .3s;
	background: rgba(255,255,255,.8);
}
.gnav > ul {
	max-width: 1205px;
	margin: 0 auto;
}
.gnav > ul > li {
	position: relative;
}
.gnav > ul > li > a {
	display: block;
	padding: 24px 0;
	transition: .3s;
	position: relative;
}
.gnav > ul > li > a:after {
	content: "";
	position: absolute;
	width: 100%;
	height: 5px;
	background: #049B78;
	right: 0;
	left: 0;
	bottom: 0;
	margin: auto;
	transition: .3s;
	opacity: 0;
}
.gnav > ul > li > a.active:after, .gnav > ul > li > a:hover:after {
	opacity: 1;
	transition: .3s;
}
.gnav > ul > li > a .ja {
	display: block;
	line-height: 1.4;
	font-size: 125%;
	letter-spacing: .1em;
	margin-bottom: 5px;
}
.gnav > ul > li > a .en {
	display: block;
	color: #049B78;
	line-height: 1.1;
}
.gnav .nav_sub {
	display: none;
	position: absolute;
	background: rgba(255,255,255,.9);
	width: 290px;
	top: calc(100% + 22px);
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	z-index: 1;
	padding: 35px 30px 42px;
}
.gnav .nav_sub li:not(:last-child) {
	margin-bottom: 12px;
}
/*
.gnav .nav_sub li:nth-last-child(2) {
	margin-bottom: 20px;
}*/
.gnav .nav_sub li a {
	display: block;
	font-size: 125%;
	letter-spacing: .1em;
	position: relative;
	text-align: left;
	line-height: 1.4;
	padding-left: 25px;
}
.gnav .nav_sub li a:before {
	content: "";
	position: absolute;
	border-left: 10px solid #049B78;
	border-top: 6px solid transparent;
	border-bottom: 6px solid transparent;
	left: 0;
	top: 0;
	bottom: 0;
	width: 0;
	height: 0;
	margin: auto;
}
/*.gnav .nav_sub li:last-child a {
	background: #049B78;
	color: #fff;
	padding: 11px 25px;
	text-align: right;
}
.gnav .nav_sub li:last-child a:before {
	border-left-color: #fff;
	left: 25px;
}*/
.is-fixed {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 11;
	width: 100%;
}
@media(min-width: 961px) and (max-width:1099px) {
	.gnav > ul > li > a .ja {
		font-size: 112.5%;
	}
	.gnav > ul > li > a .en {
		font-size: 87.5%;
	}
}
@media(min-width: 768px) and (max-width:960px) {
	.gnav {
		padding: 10px 2% 12px;
	}
	.gnav > ul > li > a .ja {
		font-size: 100%;
		letter-spacing: .05em;
	}
	.gnav > ul > li > a .en {
		font-size: 75%;
	}
	.gnav .nav_sub {
		width: 240px;
		padding: 25px 20px 30px;
	}
	.gnav .nav_sub li a {
		font-size: 100%;
	}
}
@media only screen and (max-width: 767px) {
	.btn_gnav_sp {
		position: fixed;
		top: 3.2vw;
		right: 3.2vw;
		height: calc(90 / 750 * 100vw);
		width: calc(90 / 750 * 100vw);
		background: #049B78;
		border: none;
		border-radius: 100%;
		z-index: 10000;
		outline: none;
	}
	.btn_gnav_sp .txt_gnav {
		width: calc(45 / 750 * 100vw);
		position: absolute;
		right: 0;
		left: 0;
		bottom: .5vw;
		margin: auto;
	}
	.btn_gnav_sp .icn_gnav {
		width: calc(30 / 750 * 100vw);
		height: 2px;
		position: absolute;
		top: -3.5vw;
		bottom: 0;
		left: 0;
		right: 0;
		margin: auto;
		background: #fff;
		border-radius: 10px;
		transition: transform .3s ease-in-out;
	}
	.btn_gnav_sp .icn_gnav:before, .btn_gnav_sp .icn_gnav:after {
		content: "";
		width: 100%;
		height: 2px;
		position: absolute;
		left: 0;
		background: #fff;
		border-radius: 10px;
		transition: transform .3s ease-in-out;
	}
	.btn_gnav_sp .icn_gnav:before {
		top: -1.5vw;
	}
	.btn_gnav_sp .icn_gnav:after {
		bottom: -1.5vw;
	}
	.open .btn_gnav_sp .icn_gnav {
		background: none;
	}
	.open .btn_gnav_sp .icn_gnav:before, .open .btn_gnav_sp .icn_gnav:after {
		background: #fff;
		transition: transform .3s ease-in-out;
	}
	.open .btn_gnav_sp .icn_gnav:before {
		transform: rotate(45deg);
		top: 0px;
	}
	.open .btn_gnav_sp .icn_gnav:after {
		transform: rotate(-45deg);
		bottom: 0px;
	}
	.gnav_sp {
		padding: 18.5vw 0 0;
		overflow-y: auto;
		overflow-x: hidden;
		background: rgba(255,255,255,.9);
		color: #333;
		position: fixed;
		top: 0;
		right: 0;
		z-index: 9999;
		height: 100%;
		visibility: hidden;
		opacity: 0;
		width: 86.67%;
		transition: opacity .6s ease, visibility .6s ease;
		line-height: 1.45;
		letter-spacing: .1em;
	}
	.gnav_sp .nav_main {
		padding: 0 0 20vw;
	}
	.gnav_sp .nav_main > ul > li {
		opacity: 0;
		transform: translateX(50%);
		transition: transform .6s ease, opacity .2s ease;
	}
	.gnav_sp .nav_main > ul > li.nav_medical {
		padding-bottom: 3vw;
		border-bottom: 1px solid #e9ebe9;
	}
	.gnav_sp .nav_main > ul > li > a {
		padding: 3vw 4.5vw 3.9vw 0;
		border-top: 1px solid #C2F0E5;
		display:flex;
		flex-direction: column;
		justify-content:center;
		flex-wrap: wrap;
		align-items: center;
		gap: 4px;
		position: relative;
	}
	.gnav_sp .nav_main > ul > li.nav_medical > a {
		/* padding-bottom: 2.5vw; */
	}
	.gnav_sp .nav_main > ul > li > a:after {
		/* content: "";
		position: absolute;
		right: 0;
		top: -1.4vw;
		bottom: 0;
		width: 0;
		height: 0;
		border-left: calc(18 / 750 * 100vw) solid #049B78;
		border-top: calc(9 / 750 * 100vw) solid transparent;
		border-bottom: calc(9 / 750 * 100vw) solid transparent;
		margin: auto; */
	}
	.gnav_sp .nav_main > ul > li.nav_medical > a:after {
		display: none;
	}
	.gnav_sp .nav_main > ul > li > a .en {
		font-size: 62.5%;
		letter-spacing: .1em;
		color: #049B78;
	}
	.gnav_sp .nav_sub {
		width: 100%;
		background: #4456ab;
		padding: 2.5vw 6vw 5vw;
		/*display: none;*/ /* クリックで開閉させる場合はコメント解除 */
	}
	.gnav_sp .nav_sub li {
		opacity: 0;
		transform: translateX(50%);
		transition: transform .6s ease, opacity .2s ease;
	}
	.gnav_sp .nav_sub li:not(:last-child) {
		margin-bottom: .4vw;
	}
	/*
	.gnav_sp .nav_sub li:nth-last-child(2) {
		margin-bottom: 2.5vw;
	}*/
	.gnav_sp .nav_sub a {
		padding: 2vw 0 2vw 4.5vw;
		display: block;
		position: relative;
		color: #fff;
	}
	/*
	.gnav_sp .nav_sub li:last-child a {
		background: #fff;
		color: #049B78;
		padding: 3vw;
	}*/
	.gnav_sp .nav_sub a:after {
		content: "";
		position: absolute;
		left: 0;
		top: 0;
		bottom: 0;
		width: 0;
		height: 0;
		border-left: calc(18 / 750 * 100vw) solid #fff;
		border-top: calc(9 / 750 * 100vw) solid transparent;
		border-bottom: calc(9 / 750 * 100vw) solid transparent;
		margin: auto;
	}
	/*
	.gnav_sp .nav_sub li:last-child a:after {
		display: none;
	}*/
	.open .gnav_sp {
		visibility: visible;
		opacity: 1;
	}
	.open .gnav_sp .nav_main > ul > li, .open .gnav_sp .nav_sub li {
		opacity: 1;
		transform: translateX(0);
		transition: transform 1s ease, opacity .9s ease;
	}
}

/* 新着情報 index_news
------------------------------------------------------------------*/
.index_news {
	background: #049B78;
	mix-blend-mode: multiply;
	color: #fff;
	padding: 60px 0 70px;
}
.index_news h2 {
	line-height: 1.55;
	margin-bottom: 7px;
}
.index_news h2 .en {
	font-size: 187.5%;
	letter-spacing: .1em;
	margin-right: 15px;
}
.index_news h2 .ja {
	font-weight: normal;
}
.box_index_news01 {
	border-top: 1px solid #fff;
	border-bottom: 1px solid #fff;
	padding: 20px 0 30px;
}
/* ※パーフェクトスクロールバー用基本css ここからデザインに合わせて適宜変更してください */
.index_news ul {
	overflow: hidden;
	position: relative;
	padding-right: 20px;
	max-height: 170px;
	height: auto;
}
.index_news li:not(:last-of-type) {
	margin-bottom: 25px;
}
.index_news li dt {
	color: #fff;
	width: 120px;
	position: relative;
	font-size: 1.4em;
	font-weight: bold;
	letter-spacing: .15em;
}
.index_news li dd {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	width: calc(100% - 120px);
	padding-left: 60px;
}
.index_news li dd span:nth-of-type(1) {
	font-size: 1.4em;
}
.index_news li dd a {
/* 	color: #9e9eb7; */
	color: #fc8b05;
	text-decoration: underline solid #fff;
}
/* パーフェクトスクロールバー */
.ps-container > .ps-scrollbar-y-rail > .ps-scrollbar-y {
	background: #fff !important;
	right: 0px !important;
	width: 4px !important;
}
.ps-container > .ps-scrollbar-y-rail {
	background: #049B78 !important;
	right: 0px !important;
	width: 4px !important;
	opacity: 1;
}
.ps-container:hover>.ps-scrollbar-y-rail {
	opacity: 1;
}
@media(min-width: 768px) and (max-width:960px) {
	
}
@media(max-width: 767px) {
	.index_news {
		padding: 7vw 0 10.5vw;
		background: #049B78;
	}
	.index_news h2 {
		margin-bottom: 4vw;
	}
	.box_index_news01 {
		padding: 5vw 0 5.5vw;
	}
	.index_news ul {
		max-height: calc(700 / 750 * 100vw);
	}
	.index_news li:not(:last-of-type) {
		margin-bottom: 4vw;
	}
	.index_news li dl {
		display: block;
	}
	.index_news li dt {
		font-size: 1em;
		font-weight: 500;
		width: calc(204 / 750 * 100vw);
		letter-spacing: .1em;
		margin-bottom: 12px;
	}
	.index_news li dd {
		gap: 12px;
		width: 100%;
		padding-left: 0;
	}
	.index_news li dd span:nth-of-type(1) {
		font-size: 1em;
	}
}

/* ご挨拶 index_greeting
------------------------------------------------------------------*/
.index_greeting {
	background-image: url(../img/bg_1_pc.png), url(../img/bg_2_pc.png);
	background-repeat: no-repeat;
	background-position: left top, center bottom;
	background-size: 100%;
	padding: 120px 0 70px;
	position: relative;
	overflow: hidden;
	z-index: 0;
}
.index_greeting:before {
	content: "";
	position: absolute;
	width: 0;
	height: 0;
	/* border-top: 75px solid #049B78;
	border-right: 75px solid transparent;
	border-left: 75px solid transparent; */
	border: 96px solid #049B78;
    border-radius: 100%;
	top: 0;
	right: 0;
	left: 0;
	transform: translate(0, -62.5%);
	margin: auto;
	z-index: -1;
}
.index_greeting .inner {
	/* margin-bottom: 280px; */
}
.index_greeting h2 {
	margin-bottom: 45px;
	/* text-shadow: 0px 0px 5px rgba(255,255,255,.8), 0px 0px 5px rgba(255,255,255,.8), 0px 0px 10px rgba(255,255,255,.8), 0px 0px 10px rgba(255,255,255,.8), 0px 0px 15px rgba(255,255,255,.8), 0px 0px 15px rgba(255,255,255,.8); */
}
.index_greeting h2 .en {
	font-size: 437.5%;
	letter-spacing: .1em;
	color: #049B78;
	display: block;
	line-height: 1.2;
}
.index_greeting h2 .ja {
	font-size: 150%;
	letter-spacing: .1em;
	color: #049B78;
	display: block;
	line-height: 1.25;
}
.txt_index_greeting01 {
	max-width: 50%;
	margin-left: auto;
	margin-right: auto;
	font-family: "Noto Serif JP", serif;
	font-size: 30px;
	font-weight: 500;
	line-height: 2.25;
	color: #049B78;
	margin-bottom: 50px;
}
.txt_index_greeting02 {
	max-width: 50%;
	margin-left: auto;
	margin-right: auto;
	line-height: 2.25;
	margin-bottom: 50px;
	/* text-shadow: 0px 0px 5px rgba(255,255,255,.8), 0px 0px 5px rgba(255,255,255,.8), 0px 0px 10px rgba(255,255,255,.8), 0px 0px 10px rgba(255,255,255,.8), 0px 0px 15px rgba(255,255,255,.8), 0px 0px 15px rgba(255,255,255,.8); */
}
.index_greeting .name_dr {
	margin-bottom: 50px;
}
.name_dr .box {
	background: #049B78;
	color: #fff;
	width: 50px;
	height: 40px;
	line-height: 40px;
}
.name_dr .ja {
	color: #049B78;
	font-size: 187.5%;
	font-weight: 500;
	letter-spacing: .1em;
	text-shadow: 0px 0px 5px rgba(255,255,255,.8), 0px 0px 5px rgba(255,255,255,.8), 0px 0px 10px rgba(255,255,255,.8), 0px 0px 10px rgba(255,255,255,.8), 0px 0px 15px rgba(255,255,255,.8), 0px 0px 15px rgba(255,255,255,.8);
	margin: 0 15px 0 25px;
}
.name_dr .en {
	color: #9e9eb7;
	font-size: 112.5%;
	letter-spacing: .1em;
	text-shadow: 0px 0px 5px rgba(255,255,255,.8), 0px 0px 5px rgba(255,255,255,.8), 0px 0px 10px rgba(255,255,255,.8), 0px 0px 10px rgba(255,255,255,.8), 0px 0px 15px rgba(255,255,255,.8), 0px 0px 15px rgba(255,255,255,.8);
}
.slide_index_greeting01 .slick-initialized .slick-slide {
	margin: 0 10px!important;
}
@media(min-width: 961px) and (max-width:1299px) {
	.index_greeting .inner {
		/* margin-bottom: 220px; */
	}
}
@media(min-width: 768px) and (max-width:960px) {
	.index_greeting {
		/* background-size: calc(752 / 1920 * 100vw) calc(575 / 1920 * 100vw), calc(818 / 1920 * 100vw) calc(611 / 1920 * 100vw), 180% auto; */
	}
	.index_greeting .inner {
		/* margin-bottom: 200px; */
	}
	.txt_index_greeting01 {
		max-width: 80%;
	}
	.txt_index_greeting02 {
		max-width: 80%;
	}
}
@media(max-width: 767px) {
	.index_greeting {
		padding: 18vw 0 11vw;
		background-image: url(../img/bg_1_sp.png), url(../img/bg_2_sp.png);
		background-position: left top, center bottom;
	}
	.index_greeting:before {
		border: 48px solid #049B78;
	}
	.index_greeting .inner {
		/* margin-bottom: 37.5vw; */
	}
	.index_greeting h2 {
		margin-bottom: 5.5vw;
	}
	.index_greeting h2 .en {
		font-size: 281.25%;
	}
	.index_greeting h2 .ja {
		font-size: 100%;
		line-height: 1.5;
	}
	.txt_index_greeting01 {
		max-width: none;
		font-size: 20px;
	}
	.txt_index_greeting02 {
		max-width: none;
		line-height: 1.6;
		text-align: left;
		margin-bottom: 8vw;
	}
	.index_greeting .name_dr {
		margin-bottom: 10.5vw;
	}
	.name_dr .box {
		font-size: 75%;
		width: calc(76 / 750 * 100vw);
		height: calc(60 / 750 * 100vw);
		line-height: calc(60 / 750 * 100vw);
		margin-top: 1vw;
	}
	.name_dr .ja {
		font-size: 143.75%;
		margin: 0 3vw 0 4.5vw;
	}
	.name_dr .en {
		font-size: 87.5%;
	}
	.slide_index_greeting01 .slick-initialized .slick-slide {
		margin: 0 calc(10 / 750 * 100vw)!important;
	}
}


/* 診療案内 index_medical
------------------------------------------------------------------*/
.index_medical {
	background-image: url(../img/top_medical_bg_pc.png);
    background-repeat: no-repeat;
    background-position: 50% 120%;
    background-size: 100%;
	position: relative;
	overflow: hidden;
	z-index: 0;
	padding: 120px 0 100px;
}
.index_medical:before {
	content: "";
	position: absolute;
	width: 0;
	height: 0;
	/* border-top: 75px solid #049B78;
	border-right: 75px solid transparent;
	border-left: 75px solid transparent; */
    border: 96px solid #049B78;
    border-radius: 100%;
    top: 0;
    right: 0;
    left: 0;
    transform: translate(0, -62.5%);
	margin: auto;
	z-index: -1;
}
.index_medical h2 {
	margin-bottom: 55px;
	text-shadow: 0px 0px 5px rgba(255,255,255,.8), 0px 0px 5px rgba(255,255,255,.8), 0px 0px 10px rgba(255,255,255,.8), 0px 0px 10px rgba(255,255,255,.8), 0px 0px 15px rgba(255,255,255,.8), 0px 0px 15px rgba(255,255,255,.8);
}
.index_medical h2 .en {
	font-size: 437.5%;
	letter-spacing: .1em;
	color: #049B78;
	display: block;
	line-height: 1.2;
}
.index_medical h2 .ja {
	font-size: 150%;
	letter-spacing: .1em;
	color: #049B78;
	display: block;
	line-height: 1.25;
}
.medical00 {
	padding-top: 15%;
}
.wrap_index_medical01 {
	margin-bottom: 240px;
	position: relative;
	z-index: 0;
	padding: 100px 0;
}
.wrap_index_medical01:before {
	content: "";
	position: absolute;
	background: #C2F0E5;
	width: 100%;
	height: 100%;
	border-left: 100px solid #049B78;
	left: 0;
	top: 0;
	z-index: -1;
}
.wrap_index_medical01:after {
	/* content: "";
	position: absolute;
	background: url(../img/top_medical_1.png)no-repeat center / cover;
	width: 60%;
	max-width: 1149px;
	height: 600px;
	right: 0;
	bottom: 0;
	z-index: -1; */
}
.wrap_index_medical01 .col_txt {
	width: 25%;
	margin-left: 15%;
	margin-right: auto;
}
.wrap_index_medical01 .col_txt h3 {
	font-size: 312.5%;
	letter-spacing: .1em;
	font-weight: 500;
	color: #049B78;
	line-height: 1.6;
	margin-bottom: 15px;
}
.wrap_index_medical01 .col_txt .copy {
	line-height: 1.4;
	font-size: 225%;
	letter-spacing: .1em;
	margin-bottom: 20px;
}
.wrap_index_medical01 .col_txt .txt {
	line-height: 2.25;
	margin-bottom: 35px;
}
.wrap_index_medical01 .col_img {
	position: absolute;
	top: 5%;
	right: 5%;
	width: 45%;
}
.btn_index_medical01 {
	margin-left: 0!important;
}
.row_index_medical01 {
	flex-wrap: nowrap;
	align-items: stretch;
	gap: 24px;
	width: 60%;
	margin-left: auto;
	margin-right: auto;
}
.row_index_medical01 .col {
	flex-direction: column;
	justify-content: flex-start;
	align-items: stretch;
	gap: 0;
	width: calc(100% - (24px * 2) / 3);
	height: auto;
	/* max-width: 380px; */
	background: #fff;
}
.row_index_medical01 .col > * {
	/* flex: 5; */
}
.row_index_medical01 .col .img {
	display: block;
}
.row_index_medical01 .col .box {
	position: relative;
	z-index: 0;
	padding: 10% 5%;
	margin: 0 auto;
	overflow: hidden;
}
.row_index_medical01 .col .box:before {
	content: "";
	position: absolute;
	width: 0;
	height: 0;
	border: 36px solid #049B78;
	/* border-right: 14px solid transparent;
	border-left: 14px solid transparent; */
	border-radius: 100%;
	top: -48px;
	right: 0;
	left: 0;
	margin: auto;
	z-index: -1;
}
.row_index_medical01 .col .box h3 {
	color: #049B78;
	font-weight: 500;
	letter-spacing: .1em;
	font-size: 187.5%;
	line-height: 1.4;
	margin-bottom: 5%;
}
/* .slide_index_medical01 .slick-dotted.slick-slider {
	margin-bottom: 0;
}
.slide_index_medical01 .slick-slide {
	position: relative;
}
.slide_index_medical01 .slick-slide img {
	width: 100%;
	margin: 0 auto;
	position: relative;
	z-index: 0;
}
.slide_index_medical01 .slick-slide .name {
	position: absolute;
	font-size: 125%;
	letter-spacing: .1em;
	color: #049B78;
	text-shadow: 0px 0px 5px rgba(255,255,255,.8), 0px 0px 5px rgba(255,255,255,.8), 0px 0px 10px rgba(255,255,255,.8), 0px 0px 10px rgba(255,255,255,.8), 0px 0px 15px rgba(255,255,255,.8), 0px 0px 15px rgba(255,255,255,.8);
	z-index: 1;
	top: 12px;
	right: 17px;
}
.slide_index_medical01 .slick-prev, .slide_index_medical01 .slick-next {
	width: 27px;
	height: 27px;
	border-left: 2px solid #fff;
	border-bottom: 2px solid #fff;
	transform: rotate(45deg);
	top: -4px;
	bottom: 0;
	margin: auto;
	left: 31%;
	z-index: 1;
}
.slide_index_medical01 .slick-next {
	left: auto;
	right: 31%;
	transform: rotate(-45deg) scaleX(-1);
}
.slide_index_medical01 .slick-prev:before, .slide_index_medical01 .slick-next:before {
	display: none;
}
.slide_index_medical01 .slick-dots {
	bottom: 21px;
}
.slide_index_medical01 .slick-dots li {
	margin: 0 5px;
	width: 13px;
	height: 13px;
}
.slide_index_medical01 .slick-dots li button {
	width: 13px;
	height: 13px;
	border-radius: 50%;
	background: #fff;
	padding: 0;
	margin: auto;
}
.slick-dots li.slick-active button {
	background: #049B78;
}
.slide_index_medical01 .slick-dots li button:before {
	display: none;
} */
.bg_index_medical01{
    height: calc(858 / 1920*100vw);
	margin-bottom: calc(170 / 1920*100vw);
}
.row_index_medical02{
	max-width: calc(1500 / 1920*100vw);
	margin-left: auto;
	padding-right: 2.4%;
	height: calc(858 / 1920*100vw);
}
.row_index_medical02 .col{
	position: relative;
}
.row_index_medical02 .col_r .ccl{
	position: absolute;
    top: -108%;
    left: -5%;
    max-width: 364px;
    width: 62%;
}
.row_index_medical02 .col_r .deco{
	position: absolute;
    top: -6%;
    left: -19%;
    max-width:72px;
    width:13%;
}
.row_index_medical02 .col_l{
	max-width: calc(283 / 1920*100vw);
    width: 20%;
    margin-bottom: -11%;
}
.row_index_medical02 .col_l .ccl{
	width: calc(214 / 1920* 100vw);
    height: calc(214 / 1920* 100vw);
    color: #fff;
    background: #049B78;
    font-size: calc(27.5 / 1920* 100vw);
    letter-spacing: .1em;
    line-height: 1.4;
    position: absolute;
    top: -227%;
    left: -1%;
    border-radius: 50%;
}
.row_index_medical02 .col_c{
	max-width: calc(365 / 1920*100vw);
    width: 26%;
    margin-right: 4%;
    margin-bottom: -2%;
}
.row_index_medical02 .col_r{
	max-width:calc(582 / 1920*100vw);
    width:41%;
    margin-bottom: -9%;
}
.row_index_medical03{
	margin-top: calc(-150 / 1920*100vw);
}
.row_index_medical03 .col{
	max-width:400px;
	margin: 0;
}
.row_index_medical03 .col a span{
	font-size: 112.5%;
}
.row_index_medical03 .col a{
	padding: 15px 10px 10px;
	background-color: #fff;
}
.row_index_medical03 .col:first-child{
	margin-right: 2%;;
}
.row_index_medical03 .col a:after {
    border-right-width: 15px;
    border-top-width: 15px;
    border-bottom-width: 15px;
}
@media(min-width: 961px){
	.row_index_medical01 .col a:hover {
		transform: translateY(-10px);
		transition: .3s;
		opacity: 1;
	}
}
@media(min-width: 768px) and (max-width:1599px) {
	.bg_index_medical01{
		height: calc(750 / 1599*100vw);
		margin-bottom: calc(170 / 1599*100vw);
	}
	.wrap_index_medical01 {
		margin-bottom: calc(180 / 1599*100vw);
	}
	.wrap_index_medical01 .col_txt {
		width: 30%;
	}
	.wrap_index_medical01 .col_img {
		top: 15%;
		width: 45%;
	}
	.row_index_medical02{
		max-width: calc(1240 / 1599*100vw);
		height: calc(750 / 1599*100vw);
	}
	.row_index_medical02 .col_l{
		max-width: calc(283 / 1599*100vw);
	}
	.row_index_medical02 .col_l .ccl{
		width: calc(200 / 1599* 100vw);
		height: calc(200 / 1599* 100vw);
		font-size: calc(25 / 1599* 100vw);
		top: -252%;
	}
	.row_index_medical02 .col_c{
		max-width: calc(365 / 1599*100vw);
	}
	.row_index_medical02 .col_r{
		max-width:calc(582 / 1599*100vw);
	}
	.row_index_medical03{
		margin-top: calc(-150 / 1599*100vw);
	}
	.row_index_medical03 .col a{
		padding: calc(15 / 1599*100vw) calc(10 / 1599*100vw) calc(10 / 1599*100vw);
	}
	.row_index_medical03 .col a:after {
		border-right-width: calc(15 / 1599*100vw);
		border-top-width: calc(15 / 1599*100vw);
		border-bottom-width: calc(15 / 1599*100vw);
	}
	.row_index_medical03 .col{
		max-width: 360px;
	}
	.index_medical{}
}
@media(min-width: 768px) and (max-width:1299px) {
	.medical00 {
		padding-top: 20%;
	}
	.row_index_medical01 .col .box:before {
		top: -42px;
		border: 30px solid #049B78;
	}
}
@media(min-width: 961px) and (max-width:1299px) {
	.wrap_index_medical01 {
		margin-bottom: calc(90 / 1299*100vw);
	}
	.wrap_index_medical01:before {
		border-left: 36px solid #049B78;
	}
	.wrap_index_medical01 .col_txt {
		margin-left: 10%;
		width: 35%;
	}
	.bg_index_medical01{
		height:auto;
		margin-bottom: calc(60 / 1299*100vw);
		padding-top: 50px;
		background: none;
		position: relative;
	}
	.bg_index_medical01:after {
		content: "";
		position: absolute;
		top: -30%;
		left: 0;
		width: 100%;
		height: 100%;
		z-index: -1;
	}
	.bg_index_medical01:after{
		top: -20%;
	}
	.row_index_medical01 {
		width: 70%;
	}
	.row_index_medical01 .col .box h3 {
		font-size: 150%;
	}
	.row_index_medical02{
		height: auto;
		margin-left: 0;
		padding: 0;
		max-width: 100%;
		display: block;
	}
	.row_index_medical02 .col_l{
		max-width: calc(283 / 1299*100vw);
		margin: 0 auto 55px 25%;
	}
	.row_index_medical02 .col_l .ccl{
		width: calc(180 / 1299* 100vw);
		height: calc(180 / 1299* 100vw);
		font-size: calc(23 / 1299* 100vw);
		top: -50%;
		/* left: 120%; */
		left: 128%;
	}
	.row_index_medical02 .col_c{
		margin:0 10% 40px auto;
		max-width: calc(320/ 1299* 100vw);
	}
	.row_index_medical02 .col_r img.tb_pc{
		display: inline-block;
	}
	.row_index_medical02 .col_r{
		margin: 0 auto 50px;
		max-width: 80%;
		width: 45%;
		text-align: center;
	}
	.row_index_medical02 .col_r .ccl{
		max-width: calc(320/ 1299* 100vw);
		top: -117%;
	}
	.row_index_medical02 .col_r .deco {
		top: -81%;
		left: 61%;
	}
	.row_index_medical03{
		margin-top: 0;
	}
	.row_index_medical03 .col a{
		padding: calc(15 / 1299*100vw) calc(10 / 1299*100vw) calc(10 / 1299*100vw);
	}
	.row_index_medical03 .col a:after {
		border-right-width: calc(15 / 1299*100vw);
		border-top-width: calc(15 / 1299*100vw);
		border-bottom-width: calc(15 / 1299*100vw);
	}
	.row_index_medical03 .col{
		max-width: 340px;
	}
}
@media(min-width: 768px) and (max-width:960px) {
	.index_medical {}
	.wrap_index_medical01 {
		margin-bottom: 50px;
		padding: 30px 0;
	}
	.wrap_index_medical01:before {
		border-left: 24px solid #049B78;
	}
	.wrap_index_medical01 .col_txt {
		width: 40%;
		margin-left: 7.5%;
		margin-bottom: 100px;
	}
	.wrap_index_medical01 .col_txt .copy {
		font-size: 140%;
	}
	.row_index_medical01 .col .box h3 {
		font-size: 135%;
	}
	.row_index_medical01 {
		width: 80%;
	}
	.row_index_medical02{
		display: block;
		height: auto;
	}
	.bg_index_medical01{
		height: auto;
		background-position: top 8% center;
		background: none;
		position: relative;
	}
	.bg_index_medical01:after{
		content: "";
		position: absolute;
		top: -30%;
		left: 0;
		width: 100%;
		height: 100%;
		z-index: -1;
	}
	.row_index_medical02 .col_l{
		margin: 0 auto 25px 10%;
		width: 100%;
	}
	.row_index_medical02 .col_l .ccl {
		top: -40%;
		right: -90%;
		left: auto;
	}
	.row_index_medical02 .col_c{
		width: 100%;
		margin:0 4% 43px auto;
	max-width: calc(340 / 1299* 100vw);
	}
	.row_index_medical02 .col_r{
		width: 100%;
		margin-bottom: 39px;
		max-width:80%;
	}
	.row_index_medical02 .col_r .ccl{
		max-width: calc(340 / 1299* 100vw);
		top: -98%;
		left: 10%;
	}
	.row_index_medical03{
		margin-top: 0;
	}
	.row_index_medical02 .col_r .deco {
		top: -68%;
		left: 58.5%;
	}
}
@media(max-width: 767px) {
	.index_medical {
		padding: 18vw 0 10.5vw;
		background-image: url(../img/top_medical_bg_sp.png);
		background-size: 110%;
	}
	.index_medical:before {
		border: 48px solid #049B78;
	}
	.index_medical h2 {
		margin-bottom: 6.5vw;
	}
	.index_medical h2 .en {
		font-size: 281.25%;
	}
	.index_medical h2 .ja {
		font-size: 100%;
		line-height: 1.5;
	}
	.wrap_index_medical01 {
		padding: 0;
		margin-bottom: 74px;
		overflow: hidden;
	}
	.wrap_index_medical01:before {
		display: none;
	}
	.wrap_index_medical01:after {
		display: none;
	}
	.wrap_index_medical01 .col_img {
		position: relative;
		top: auto;
		right: auto;
		width: 100%;
	}
	.wrap_index_medical01 .col_txt {
		position: relative;
		max-width: none;
		width: 100%;
		margin: 0;
		padding: 4.2vw 0 8.3vw;
	}
	.wrap_index_medical01 .col_txt:before {
		content: "";
		position: absolute;
		background: #C2F0E5;
		width: 120%;
		height: 120%;
		border-left: calc(24 / 750 * 100vw) solid #049B78;
		left: 0;
		top: 0;
		z-index: -1;
	}
	.wrap_index_medical01 .col_txt h3 {
		font-size: 218.75%;
		text-align: center;
		letter-spacing: 0;
		margin-bottom: 4vw;
	}
	.wrap_index_medical01 .col_txt .copy {
		font-size: 150%;
		text-align: center;
		letter-spacing: 0;
	}
	.wrap_index_medical01 .col_txt .txt {
		line-height: 1.6;
		max-width: calc(640 / 750 * 100vw);
		margin: 0 auto 7vw;
	}
	.btn_index_medical01 {
		margin-left: auto!important;
	}
	.row_index_medical01 {
		display: block;
	}
	.row_index_medical01 .col {
		width: 100%;
		max-width: 100%;
	}
	.row_index_medical01 .col_c {
		margin: 5.5vw auto;
	}
	.row_index_medical01 .col a {
		display:-webkit-box;/*--- Androidブラウザ用 ---*/
		display:-ms-flexbox;/*--- IE10 ---*/
		display: -webkit-flex;/*--- safari（PC）用 ---*/
		display:flex;
		-webkit-box-pack:justify;/*--- Androidブラウザ用 ---*/
		-ms-flex-pack:justify;/*--- IE10 ---*/
		-webkit-justify-content:space-between;/*--- safari（PC）用 ---*/
		justify-content:space-between;
		-webkit-flex-wrap: wrap; /* Safari */
		flex-wrap: wrap;
	}
	.row_index_medical01 .col a .img, .row_index_medical01 .col a .box {
		width: 50%;
	}
	.row_index_medical01 .col .box {
		padding: 7vw 4vw 3vw;
	}
	.row_index_medical01 .col .box:before {}
	.row_index_medical01 .col .box h3 {
		font-size: 125%;
		letter-spacing: 0;
		margin-bottom: 1.5vw;
	}
	.row_index_medical01 .col .txt {
		font-size: 81.25%;
		line-height: 1.4;
	}



	.slide_index_medical01 {
		overflow: hidden;
	}
	.slide_index_medical01 .col {
		height: auto !important;
	}
	.slide_index_medical01 .col .inner {
		display: flex;
		flex-direction: column;
		justify-content: flex-start;
		align-items: stretch;
		gap: 0;
		height: 100%;
		margin: 0;
		padding: 0;
		background: #fff;
		box-shadow: 6px 6px 10px 0px rgba(0, 0, 0, 0.5);
	}
	.slide_index_medical01 .col .inner .img {
		display: block;
	}
	.slide_index_medical01 .col .inner .box {
		position: relative;
		height: 100%;
		margin: 0 auto;
		padding: 10% 5%;
		overflow: hidden;
		z-index: 0;
	}
	.slide_index_medical01 .col .inner .box::before {
		content: "";
		position: absolute;
		width: 0;
		height: 0;
		border: 36px solid #049B78;
		border-radius: 100%;
		top: -48px;
		right: 0;
		left: 0;
		margin: auto;
		z-index: -1;
	}
	.slide_index_medical01 .col .inner .box h3 {
		color: #049B78;
		font-weight: 500;
		letter-spacing: .1em;
		font-size: 150%;
		line-height: 1.4;
		margin-bottom: 5%;
	}
	.slide_index_medical01 .slick-dotted.slick-slider {
		margin-bottom: 0;
	}
	.slide_index_medical01 .slick-track {
		display: flex;
		align-items: stretch;
	}
	.slide_index_medical01 .slick-slide {
		position: relative;
		width: 240px;
		height: auto !important;
		padding: 0 12px;
		padding-top: 24px;
	}
	.slide_index_medical01 .slick-slide.slick-active {
		padding-top: 0px;
		padding-bottom: 24px;
	}
	.slide_index_medical01 .slick-slide img {
		width: 100%;
		margin: 0 auto;
		position: relative;
		z-index: 0;
	}
	.slide_index_medical01 .slick-slide .name {
		position: absolute;
		font-size: 125%;
		letter-spacing: .1em;
		color: #049B78;
		text-shadow: 0px 0px 5px rgba(255,255,255,.8), 0px 0px 5px rgba(255,255,255,.8), 0px 0px 10px rgba(255,255,255,.8), 0px 0px 10px rgba(255,255,255,.8), 0px 0px 15px rgba(255,255,255,.8), 0px 0px 15px rgba(255,255,255,.8);
		z-index: 1;
		top: 12px;
		right: 17px;
	}
	.slide_index_medical01 .slick-prev,
	.slide_index_medical01 .slick-next {
		width: calc(40 / 750 * 100vw);
		height: calc(40 / 750 * 100vw);
		border-left: 2px solid #fff;
		border-bottom: 2px solid #fff;
		transform: rotate(45deg);
		top: -4px;
		bottom: 0;
		margin: auto;
		left: 31%;
		z-index: 1;
	}
	.slide_index_medical01 .slick-prev {
		left: 3%;
	}
	.slide_index_medical01 .slick-next {
		left: auto;
		right: 3%;
		transform: rotate(-45deg) scaleX(-1);
	}
	.slide_index_medical01 .slick-prev:before,
	.slide_index_medical01 .slick-next:before {
		display: none;
	}
	.slide_index_medical01 .slick-dots {
		bottom: 21px;
	}
	.slide_index_medical01 .slick-dots li {
		margin: 0 5px;
		width: 13px;
		height: 13px;
	}
	.slide_index_medical01 .slick-dots li button {
		width: 13px;
		height: 13px;
		border-radius: 50%;
		background: #fff;
		padding: 0;
		margin: auto;
	}
	.slick-dots li.slick-active button {
		background: #049B78;
	}
	.slide_index_medical01 .slick-dots li button:before {
		display: none;
	}





	.bg_index_medical01{
		height: auto;
		margin-bottom:13vw;
		position: relative;
		background: none;
	}
	.bg_index_medical01:after{
		content: "";
		position: absolute;
		top:-24%;
		right: 0;
		left: 0;
		margin: auto;
		width:100%;
		height:calc(948 / 750*100vw);
		z-index: -1;
	}
	.row_index_medical02{
		max-width: 100%;
		height: auto;
		display: block;
	    padding-right: 0;

	}
	.row_index_medical02 .col_l{
		max-width: calc(283 / 750*100vw);
		width: 100%;
	    margin:0 6vw 72vw auto;
	}
	.row_index_medical02 .col_l .ccl{
		width: calc(300 / 750* 100vw);
		height: calc(300 / 750* 100vw);
		font-size: 126.56%;
	    top: -310%;
	}
	.row_index_medical02 .col_c{
		max-width: calc(365 / 750*100vw);
		width: 100%;
	    margin-right: auto;
	    margin-left: 3vw;
		z-index: 1;
	}
	.row_index_medical02 .col_r{
		max-width: calc(703 / 750* 100vw);
		width: 100%;
		margin: -14vw auto 8vw;
	}
	.row_index_medical02 .col_r .ccl{
		max-width: calc(365 / 750* 100vw);
		width: 53%;
		right: 0;
		left: auto;
		top: -176%;
	}
	.row_index_medical02 .col_r .deco{
		max-width: calc(73 / 750* 100vw);
		width: 11%;
		right: 42vw;
		top: -84%;
		left: auto;
	}
	.row_index_medical03{
		margin-top: 0;
	}
	.row_index_medical03 .col a {
		padding: 3vw 0 2.5vw;
		font-size: 93.75%;
	}
	.row_index_medical03 .col a span{
		font-size: 100%;
	    letter-spacing: .12em;
	}
	.row_index_medical03 .col a:after {
		border-right-width: calc(25 / 750*100vw);
		border-top-width: calc(25 / 750*100vw);
		border-bottom-width: calc(25 / 750*100vw);
	}
	.row_index_medical03 .col{
		max-width:calc(646/ 750 * 100vw);
	}
	.row_index_medical03 .col:first-child {
		margin:0 0 4vw;
	}
}


/* 採用情報 index_recruit
------------------------------------------------------------------*/
.index_recruit {
	background: #C2F0E5;
	padding: 70px 0;
}
.btn_index_recruit01 {
	max-width: 1000px;
	width: fit-content;
	margin: 0 auto;
}
.btn_index_recruit01 a {
	display: block;
	width: fit-content;
	/* background: #049B78;
	color: #fff;
	padding: 50px 3% 60px;
	position: relative; */
}
.btn_index_recruit01 a .en {
	font-size: 312.5%;
	letter-spacing: .1em;
	display: block;
	line-height: 1.2;
	margin-bottom: 5px;
}
.btn_index_recruit01 a .ja {
	font-size: 125%;
	letter-spacing: .1em;
	display: block;
	line-height: 1.2;
	font-weight: 500;
}
@media(min-width: 768px) and (max-width:960px) {}
@media(max-width: 767px) {
	.index_recruit {
		padding: 8vw 0;
	}
	.btn_index_recruit01 a {
		width: 90%;
		margin-left: auto;
		margin-right: auto;
	}
}

/* フッター footer
------------------------------------------------------------------*/
footer {
	/* border-top: 1px solid #049B78; */
}
.main_foot {
	/* padding: 70px 0 95px; */
	padding: 70px 0 0;
}
.row_foot01 {
	justify-content: space-between;
	gap: 24px;
	width: 90%;
	margin: 0 auto;
	margin-bottom: 45px;
}
.row_foot01 > .col_l,
.row_foot01 > .col_r {}
.row_foot01 > .col_l {
	/* width: 45%; */
	width: calc((100% - 24px) - 55%);
}
.row_foot01 > .col_r {
	/* width: 55%; */
	width: calc((100% - 24px) - 45%);
}
.row_foot02 {
	justify-content: space-between;
	align-items: center;
	gap: 120px;
	width: 90%;
	margin: 0 auto 100px;
}
.row_foot02 > .col_l,
.row_foot02 > .col_r {}
.row_foot02 > .col_l {
	width: 100%;
}
.row_foot02 > .col_r {}
.address_foot {
	background: #C2F0E5;
	color: #049B78;
	width: 60%;
	padding: 15px 5px;
	font-size: 24px;
}
.tel_foot {
	width: 40%;
	padding: 15px 5px;
	background: #049B78;
	font-size: 24px;
}
.tel_foot a {
	color: #fff;
	display: block;
	height: 100%;
	letter-spacing: 0;
}
.txt_foot01 {
	font-size: 32px;
	font-weight: bold;
	letter-spacing: .1em;
	color: #049B78;
	margin-bottom: 15px;
}
.tbl_time table {
	width: 100%;
	border: 1px solid #049B78;
}
.tbl_time thead th {
	background: #049B78;
	color: #fff;
	font-weight: normal;
	padding: 8px 0 13px;
}
.tbl_time tbody th {
	font-weight: normal;
	letter-spacing: .12em;
}
.tbl_time tbody th span:first-child {
	font-weight: bold;
	width: 38px;
	text-align: center;
	display: inline-block;
	margin-right: 5px;
}
.tbl_time tbody th span:last-child {
	width: 122px;
	text-align: center;
	display: inline-block;
}
.tbl_time tbody th, .tbl_time tbody td {
	color: #049B78;
	padding: 10px 0;
}
.tbl_time tbody td {
	font-size: 87.5%;
}
.tbl_time tbody th, .tbl_time tbody td:nth-child(2n+1) {
	background: #C2F0E5;
}
.tbl_time tbody tr:first-child th, .tbl_time tbody tr:first-child td {
	border-bottom: 1px solid #049B78;
	padding: 10px 0 11px;
}
.tbl_time thead th:first-child, .tbl_time tbody th {
	width: 36.5%;
}
.tbl_time thead th:not(:first-child), .tbl_time tbody td {
	width: calc(62.5% / 7);
	text-align: center;
}
.tbl_time .tbl_caption {
	color: #049B78;
	width: calc((100% - 120px) / 2);
	margin-top: 13px;
}
.tbl_foot01 .flex {
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: stretch;
	gap: 120px;
	width: 100%;
}
.tbl_foot01 .flex > * {
	width: calc((100% - 120px) / 2);
}
.copyright {
	background: #049B78;
	color: #fff;
	font-size: 87.5%;
	padding: 22px 0 24px;
	letter-spacing: .1em;
}
.pagetop {
	position: fixed;
	right: 30px;
	bottom: 30px;
	z-index: 1000;
}
.pagetop a {
	border: 1px solid #fff;
	display: block;
}
@media(min-width: 768px) and (max-width:1599px) {
	.address_foot,
	.tel_foot {
		font-size: 20px;
	}
}
@media(min-width: 961px) and (max-width:1299px) {
	.row_foot03 .col a .wrap {
		text-align: left;
	}
	.address_foot,
	.tel_foot {
		font-size: 18px;
	}
	.address_foot {
		width: 65%;
	}
	.tel_foot {
		width: 35%;
	}
}
@media(min-width: 961px) and (max-width:1049px) {
	.address_foot,
	.tel_foot {
		font-size: 14px;
	}
	.address_foot {
		width: 67.5%;
	}
	.tel_foot {
		width: 32.5%;
	}
	.tbl_time tbody th span:first-child, .tbl_time tbody th span:last-child {
		width: auto;
	}
	.tbl_time tbody th span:first-child {
		margin-right: 2px;
	}
	.tbl_time tbody th {
		letter-spacing: .1em;
	}
}
@media(min-width: 961px) and (max-width:999px) {
	.tel_foot a span {
		margin-right: 10px;
	}
}
@media(min-width: 768px) and (max-width:960px) {
	.row_foot01 {
		display: block;
	}
	.row_foot01 > .col_l {
		width: 50%;
		margin: 0 auto 20px;
	}
	.row_foot01 > .col_r {
		width: 100%;
		margin: 0 auto;
	}
	.row_foot02 {
		display: block;
	}
	.row_foot02 .col {
		width: 100%;
		margin: 0 auto;
	}
	.row_foot02 .col_l {
		margin-bottom: 30px;
	}
	.tbl_foot01 .flex {
		gap: 36px;
	}
	.tbl_foot01 .flex > * {
		width: calc((100% - 36px) / 2);
	}
}
@media(max-width: 767px) {
	.main_foot {
		padding: 11vw 0 10vw;
	}
	.row_foot01 {
		display: block;
		margin-bottom: 6.5vw;
	}
	.row_foot01 > .col_l {
		width: 100%;
		max-width: calc(564 / 750 * 100vw);
		margin: 0 auto 5.5vw;
	}
	.row_foot01 > .col_r {
		width: 100%;
		margin: 0 auto;
	}
	.main_foot .col_r .flex {
		display: block;
	}
	.address_foot {
		width: fit-content;
		margin: 0 auto;
		font-size: 75%;
		padding: 4vw;
		font-size: 14px;
		letter-spacing: .1em;
	}
	.tel_foot {
		width: fit-content;
		margin: 0 auto;
		padding: 4vw;
	}
	.tel_foot a {
		font-size: 16px;
	}
	.tel_foot a span {}
	.row_foot02 {
		display: block;
	}
	.row_foot02 .col {
		width: 100%;
		margin: 0 auto;
	}
	.row_foot02 .col_l {
		margin-bottom: 3.5vw;
	}
	.txt_foot01 {
		text-align: center;
		font-size: 100%;
		letter-spacing: 0;
		margin-bottom: 3vw;
	}
	.tbl_foot01 .flex {
		width: 100%;
	}
	.tbl_foot01 .flex > * {
		width: 100%;
	}
	.tbl_foot01 .tbl_caption {
		width: 100%;
	}
	.tbl_time thead th:first-child, .tbl_time tbody th {
		width: 34.5%;
	}
	.tbl_time thead th:not(:first-child), .tbl_time tbody td {
		width: calc(64.5% / 8);
	}
	.tbl_time thead th:last-child, .tbl_time tbody td {
		width: calc((64.5% / 8) * 2);
	}
	.tbl_time thead th, .tbl_time tbody th {
		font-size: 75%;
	}
	.tbl_time tbody td {
		font-size: 62.5%;
	}
	.tbl_time thead th {
		padding: 1.5vw 0 2.3vw;
	}
	.tbl_time tbody th {
		letter-spacing: .03em;
	}
	.tbl_time tbody th, .tbl_time tbody td {
		padding: 1.5vw 0 2vw;
	}
	.tbl_time tbody tr:first-child th, .tbl_time tbody tr:first-child td {
		padding: 2vw 0 2.2vw;
	}
	.tbl_time tbody th span:first-child {
		width: calc(54 / 750 * 100vw);
	}
	.tbl_time tbody th span:last-child {
		width: calc(150 / 750 * 100vw);
	}
	.tbl_time .tbl_caption {
		font-size: 68.75%;
		margin-top: 3vw;
	}
	.copyright {
		font-size: 62.5%;
		letter-spacing: 0;
		padding: 4vw 0;
	}
	.pagetop {
		width: 15%;
	}
	.fix {
		position: fixed;
		width: 100%;
		left: 0;
		bottom: 0;
		z-index: 9;
	}
	.fix_tel {
		width: 84%;
	}
	.fix_tel a {
		display: block;
		background: #049B78;
		color: #fff;
		font-size: 187.5%;
		height: calc(120 / 750 * 100vw);
		padding: 2vw;
	}
	.fix_tel a span {
		position: relative;
		padding-left: 8.5vw;
	}
	.fix_tel a span:before {
		content: "";
		position: absolute;
		width: calc(44 / 750 * 100vw);
		height: calc(44 / 750 * 100vw);
		left: 0;
		top: 0;
		bottom: 0;
		margin: auto;
	}
	.pagetop_sp {
		width: 16%;
	}
	.pagetop_sp a {
		display: block;
		background: #ececf1;
		text-align: center;
	}
}

/* コピペ用 copy&paste
------------------------------------------------------------------*/
@media(min-width: 768px) and (max-width:960px) {
	
}
@media(max-width: 767px) {
	
}
.inv-recaptcha-holder{
display: none;
}
