@charset "utf-8";

/* =====================================
■Elementor
===================================== */
/* -------------------------------------
general
------------------------------------- */
.elementor-section.elementor-section-boxed > .elementor-container {
	max-width: 100%;
	padding: 0;
}
.elementor-column-gap-default > .elementor-row > .elementor-column > .elementor-element-populated,
.elementor-column-gap-default > .elementor-row > .elementor-column > .elementor-element-populated > .elementor-widget-wrap {
	padding: 0;
}
/* -------------------------------------
見出し
------------------------------------- */
.elementor-heading-title {
	padding: inherit;
	margin: inherit;
	line-height: inherit;
}


/* =====================================
■mainView
===================================== */
/* .elementor-editor-active #wrapper {
margin-top: 165px;
}
.mainView {
height: 100vh;
position: relative;
}
.visual img {
display: block !important;
width: 100%;
} */
.mainBox {
	position: absolute;
	top: 8%;
	left: 10%;
	z-index: 99;
	max-width: 196px;
	width: 12%;
}
.maintxt {
	position: absolute;
	top: 9%;
	left: 5.5%;
	writing-mode: vertical-rl;
}
.mainSec {
	position: relative;
}
.mainSec .bxslider li {
	margin: 0 auto;
	padding: 0 72px;
}
@media screen and (max-width: 1024px) and (min-width: 768px) {
	.mainSec .bxslider li {
		padding: 0 42px;
	}
}
@media screen and (max-width: 767px) {
	.mainBox {
		top: auto;
		width: 32%;
		bottom: 16%;
		max-width: 146px;
	}
	.mainSec .bxslider li {
		padding: 0;
	}
	.mainSec .txt {
		position: absolute;
		content: "";
		top: 70px;
		left: 20px;
		z-index: 99;
		line-height: 1.7;
		font-size: 12px;
		letter-spacing: 0.04em;
		color: #5B5350;
	}
	.mainSec .txt sub {
		background: #fff;
		padding: 2px 5px;
		border: 1px solid #5B5350;
		margin-left: 6px;
	}
}
/* -------------------------------------
地図
------------------------------------- */
.map {
	position: relative;
	width: 100%;
	padding-top: 540px;
}
.map iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
	border: none;
}
/* -------------------------------------
table
------------------------------------- */
.table_A tbody th {
	width: 18.4%;
	vertical-align: top;
	padding: 4px 0;
}
.table_A tbody td {
	line-height: 1.6;
	color: #2B2A29;
	font-weight: 400;
	padding: 4px 0;
}
/* -------------------------------------
timetableA
------------------------------------- */
.timetableA thead {
	background: #E5AA43;
}
.timetableA thead th {
	color: #fff;
	padding: 1px 7px;
}
.timetableA thead th:first-child {
	width: 38%;
}
.timetableA tbody th,
.timetableA tbody td {
	background: #fff;
	text-align: center;
	color: #2B2A29;
}
.timetableA tbody th:first-child {
	text-align: left;
	padding-left: 5px;
}
/* =====================================
■information
===================================== */
.informationBox {
	max-width: 1246px;
	margin: 0 auto;
	padding: 0 20px;
	box-sizing: border-box;
	margin-top: 80px;
	margin-bottom: 30px;
	z-index: 2;
	position: relative;
}
.informationnner {
	background: #F9F8F4;
}
.informationnner ul {
	display: flex;
	justify-content: space-between;
}
.informationnner ul li {
	width: calc(100% / 2);
}
.informationnner ul li:first-child {
	padding: 106px 50px 20px 60px;
	width: 47%;
}
.informationnner ul li:last-child {
	position: relative;
}
/* .informationnner ul li:last-child:after {
position: absolute;
content: "";
background: url(/wp-content/uploads/map_bg.png);
left: 0;
top: 0;
width: 102px;
height: 540px;
background-size: 100% 100%;
} */
.informationnner ul li:first-child p {
	line-height: 1.4;
	color: #2B2A29;
}
.informationnner ul li:first-child .timetableA {
	margin-bottom: 10px;
}
.titWraph2 h2 {
	text-align: center;
	margin: 0 auto;
	line-height: 1.6;
}
.informationBox .titWraph2 h2 {
	max-width: 479px;
}
.titWraph2 h2 img {
	max-width: 100%;
	display: block;
}
.titWraph2 h2 sub {
	font-size: 24px;
	color: #2B2A29;
}
.titWraph2 {
	padding-bottom: 49px;
}
@media screen and (max-width: 1072px) and (min-width: 768px) {
	.informationnner ul li:first-child {
		padding: 50px 20px 20px 20px;
		width: 54%;
	}
	.informationnner ul li:last-child {
		width: 45%;
	}
	.table_A tbody th {
		width: 22%;
		padding: 4px 10px 4px 0;
	}
}
@media screen and (max-width: 767px) {
	.informationBox .titWraph2 h2 {
		width: 283px;
	}
	.titWraph2 h2 sub {
		font-size: 16px;
	}
	.informationnner ul {
		display: block;
	}
	.informationnner ul li:first-child {
		width: 100%;
		padding: 20px;
	}
	.informationnner ul li:last-child {
		width: 100%;
	}
	.table_A tbody th,
	.table_A tbody td {
		display: block;
		width: 100%;
		padding: 0;
	}
	.table_A tr {
		margin-bottom: 10px;
		display: block;
	}
	.timetableA thead th,
	.timetableA tbody th,
	.timetableA tbody td {
		font-size: 12px;
	}
	.timetableA thead th {
		padding: 1px 2px;
	}
	.informationnner ul li:last-child:after {
		display: none;
	}
	.informationnner .map {
		margin-bottom: 20px;
		position: relative;
	}
	.informationnner .map:before {
		position: absolute;
		content: "";
		background: url(/wp-content/uploads/map_bgsp.png) no-repeat;
		background-size: 100% 100%;
		width: 100%;
		height: 50px;
		bottom: 0;
		left: 0;
		z-index: 1;
	}
}
/* =====================================
■CONCEPT
===================================== */
.conceptBox {
	position: relative;
	padding-bottom: 109px;
	z-index: 1;
}
.conceptBox:after,
.conceptBox:before {
	position: absolute;
	content: "";
	width: 480px;
	height: 200px;
	background-size: cover;
	z-index: -1;
}
.conceptBox:before {
	background: url(/wp-content/uploads/concept_bg1.png) no-repeat;
	top: -100px;
	left: 0;
	background-size: cover;
}
.conceptBox:after {
	background: url(/wp-content/uploads/concept_bg.png) no-repeat;
	bottom: 0;
	right: 0;
	background-size: cover;
}
.conceptBox ul {
	display: flex;
	column-gap: 60px;
}
.conceptBox ul li:first-child,
.conceptBox ul li:last-child {
	width: 29%;
}
.conceptBox ul li:first-child {
	padding-top: 90px;
}
.conceptBox ul li:nth-child(2) {
	width: 42%;
	padding-top: 130px;
}
.conceptBox .titWraph2 h2 {
	max-width: 318px;
}
.conceptBox ul li:nth-child(2) p {
	font-size: 23px;
	text-align: center;
	line-height: 2;
	margin-bottom: 2em;
}
@media screen and (max-width: 1500px) and (min-width: 1301px) {
	.conceptBox ul li:nth-child(2) {
		padding-top: 40px;
	}
	.conceptBox ul li:nth-child(2) p {
		font-size: 22px;
		letter-spacing: 0;
	}
}
@media screen and (max-width: 1300px) and (min-width: 1101px) {
	.conceptBox ul li:nth-child(2) {
		padding-top: 40px;
	}
	.conceptBox ul li:nth-child(2) p {
		font-size: 16px;
		letter-spacing: 0;
	}
}
@media screen and (max-width: 1100px) and (min-width: 768px) {
	.conceptBox ul li:nth-child(2) p {
		font-size: 12px;
		line-height: 1.2;
	}
	.conceptBox ul li:nth-child(2) {
		padding-top: 0;
	}
	.conceptBox .titWraph2 {
		padding-bottom: 11px;
	}
	.conceptBox ul {
		column-gap: 30px;
	}
	.conceptBox ul li:nth-child(2) {
		padding-top: 10px;
	}
	.conceptBox ul li:first-child {
		padding-top: 30px;
	}
}
@media screen and (max-width: 767px) {
	.conceptBox ul {
		display: block;
	}
	.conceptBox ul li:first-child,
	.conceptBox ul li:last-child {
		width: 100%;
	}
	.conceptBox ul li:nth-child(2) {
		width: 100%;
	}
	.conceptBox .titWraph2 h2 {
		max-width: 199px;
	}
	.conceptBox ul li:nth-child(2) p {
		text-align: left;
		width: 90%;
		margin: 0 auto;
		margin-bottom: 20px;
		font-size: 15px;
	}
	.conceptBox:after,
	.conceptBox:before {
		width: 300px;
		height: 130px;
	}
	.conceptBox:before {
		top: 0;
	}
}
/* =====================================
■features
===================================== */
.featuresBox {
	background: url(/wp-content/uploads/features_bg-scaled.jpg) no-repeat;
	background-size: cover;
	padding-top: 80px;
	padding-bottom: 88px;
}
.featuresBox .featuresnner {
	max-width: 1120px;
	padding: 0 20px;
	margin: 0 auto;
	box-sizing: border-box;
}
.featuresBox .titWraph2 h2 {
	max-width: 344px;
}
.titWraph3 h3 {
	font-size: 32px;
	color: #2B2A29;
	border-bottom: 2px solid #E5AA43;
	padding-bottom: 14px;
	margin-bottom: 12px;
	line-height: 1.4;
	padding-top: 10px;
}
.featuresBox .featuresnner .img {
	margin-bottom: 32px;
}
.featuresBox .featuresnner .txt {
	color: #2B2A29;
}
.featuresBox ul {
	display: flex;
	position: relative;
}
.featuresBox ul li:first-child {
	width: 60%;
}
.featuresBox ul li:last-child {
	display: flex;
	width: 36%;
	position: absolute;
	right: 54px;
	top: -138px; 
}
.featuresBox ul li:last-child .imga {
	width: calc(100% / 2);
}
.featuresBox ul li:last-child img {
	width: 100%;
}
.featuresBox ul li:last-child img:first-child {
	padding-right: 10px;
}
/* @media screen and (max-width: 1024px) and (min-width: 768px) {
.featuresBox ul li:first-child {
width: 60%;
}
.featuresBox ul li:last-child {
top: -85px;
right: 0;
}
.featuresBox ul li:last-child img {
width: 52%;
max-width: 173px;
}
} */
@media screen and (max-width: 767px) {
	.featuresBox ul li:first-child {
		width: 100%;
	}
	.titWraph3 h3 {
		font-size: 24px;
		line-height: 1.3;
	}
	.featuresBox ul {
		display: flex !important;
		column-gap: 10px;
	}
	.featuresBox ul li {
		width: 50% !important;
	}
	.featuresBox ul li:last-child {
		position: relative;
		right: auto;
		top: 0;
	}
	.featuresBox ul.ul02 {
		display: block !important;
		margin-top: 20px;
	}
	.featuresBox ul.ul02 li:first-child {
		width: 100% !important;
	}
	.featuresBox .titWraph2 h2 {
		max-width: 224px;
	}
	.featuresBox .featuresnner .img {
		position: relative;
	}
	.featuresBox .featuresnner .img .a {
		position: absolute;
		top: 25px;
		left: 25px;
		max-width: 92px;
	}
	.featuresBox ul li img {
		width: 100%;
	}
}
/* =====================================
■features02
===================================== */
.featuresBox02 {
	padding-top: 80px;
	position: relative;
	padding-bottom: 80px;
}
.featuresBox02:after {
	position: absolute;
	content: "";
	background: url(/wp-content/uploads/features_bg-1-scaled.jpg) no-repeat;
	height: 240px;
	width: 100%;
	background-size: cover;
	bottom: 0;
	z-index: -1;
	left: 0;
}
.featuresBox02 .featuresnner02 {
	max-width: 1120px;
	margin: 0 auto;
	box-sizing: border-box;
	padding: 0 20px;
}
.featuresBox02 .featuresnner02 ul {
	display: flex;
	column-gap: 40px;
}
.featuresBox02 .featuresnner02 ul li:first-child {
	width: 52%;
}
.featuresBox02 .featuresnner02 .content_txt {
	margin-top: 54px;
}
.featuresBox02 .featuresnner02 ul li:last-child {
	width: 48%;
}
@media screen and (max-width: 1024px) and (min-width: 768px) {
	.featuresBox02 .featuresnner02 .content_txt {
		margin-top: 18px;
	}
	.featuresBox02 .featuresnner02 .content_txt .txt {
		line-height: 1.6;
	}
	.featuresBox02:after {
		height: 80px;
	}
}
@media screen and (max-width: 767px) {
	.featuresBox02 .featuresnner02 ul li:first-child {
		width: 54%;
	}
	.featuresBox02 .featuresnner02 ul li:last-child {
		width: 35%;
	}
	.featuresBox02 .featuresnner02 ul li:last-child .point02 {
		max-width: 92px;
		text-align: center;
		margin: 0 auto;
		padding-bottom: 30px;
	}
	.featuresBox02:after {
		height: 80px;
	}
	.featuresBox02 .featuresnner02 .content_txt {
		margin-top: 14px;
	}
}
/* =====================================
■features03
===================================== */
.featuresBox03 {
	padding-top: 80px;
	margin-bottom: 79px;
}
.featuresBox03 .featuresnner03 {
	max-width: 1120px;
	margin: 0 auto;
	box-sizing: border-box;
	padding: 0 20px;
}
.featuresBox03 ul {
	display: flex;
}
.featuresBox03 ul {
	display: flex;
	column-gap: 10px;
}
.featuresBox03 ul li:first-child {
	width: 49.5%;
}
.featuresBox03 ul li:last-child {
	width: 50.5%;
}
.featuresBox03 ul li:first-child div img {
	margin-bottom: 47px;
}
.featuresBox03 ul li:first-child img {
	max-width: 102px;
}
@media screen and (max-width: 767px) {
	.featuresBox03 ul {
		display: block;
	}
	.featuresBox03 ul li:first-child div img {
		margin-bottom: 10px;
	}
	.featuresBox03 ul li:first-child {
		width: 100%;
	}
	.featuresBox03 ul li:last-child {
		width: 100%;
	}
	.featuresBox03 ul li:first-child img {
		max-width: 100%;
	}
	.featuresBox03 ul li:first-child .point {
		position: relative;
	}
	.featuresBox03 ul li:first-child .point .a {
		position: absolute;
		content: "";
		max-width: 92px;
		top: 25px;
		left: 25px;
	}
}
/* =====================================
■menu
===================================== */
.menuBox {
	padding-bottom: 133px;
	position: relative;
	margin-bottom: 81px;
}
.menuBox:before {
	position: absolute;
	content: "";
	background: url(/wp-content/uploads/menu_bg.png) no-repeat right;
	right: 0;
	bottom: 0;
	width: 770px;
	height: 770px;
	z-index: -1;
	background-size: cover;
}
.menuBox .menunner {
	max-width: 1246px;
	margin: 0 auto;
	padding: 0 20px;
	box-sizing: border-box;
}
.menuBox .menunner2 {
	position: relative;
}
.menuBox .menunner2:before {
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	background: #F9F8F4;
	z-index: -1;
	top: 48px;
	left: 0;
}
.menuBox .menuContent {
	max-width: 1080px;
	margin: 0 auto;
}
.menuBox .titWraph2 h2 {
	max-width: 201px;
}
.menuBox .menuContent ul {
	display: flex;
	column-gap: 29px;
}
.menuBox .menuContent ul div {
	background: #5B5350;
	color: #fff;
	padding: 20px 22px 20px 22px;
}
.menuBox .menuContent ul div p {
	margin-bottom: 0;
}
.menuBox .menuContent ul div p.title {
	font-size: 20px;
	text-align: center;
	line-height: 1.3;
	margin-bottom: 10px;
}
.menuBox .menuContent ul div p.txt {
	line-height: 1.4;
	text-align: center;
}
.menuBox .menuContent ul li {
	width: calc(100% / 3);
}
.menuBox .menuContent ul:last-child {
	max-width: 710px;
	margin: 0 auto;
	margin-top: 30px;
	width: 66%;
}
.menuBox .menuContent ul:last-child li {
	width: calc(100% / 2);
}
@media screen and (max-width: 1100px) and (min-width: 768px) {
	.menuBox .menuContent ul div p.title {
		font-size: 14px;
		line-height: 1.3;
		letter-spacing: 0;
	}
	.menuBox .menuContent ul div p.txt {
		font-size: 12px;
	}
	.menuBox .menuContent ul div {
		background: #5B5350;
		color: #fff;
		padding: 10px;
		height: 100px;
	}
}
@media screen and (max-width: 767px) {
	.menuBox {
		padding-bottom: 28px;
	}
	.menuBox .menuContent ul {
		display: block;
	}
	.menuBox .menuContent ul li {
		width: 100%;
		margin-bottom: 20px;
	}
	.menuBox .menuContent ul:last-child {
		max-width: 100%;
		width: 100%;
	}
	.menuBox .menuContent ul:last-child li {
		width: 100%;
	}
	.menuBox .menunner2:before {
		display: none;
	}

	.menuBox .titWraph2 h2 {
		max-width: 126px;
	}
	.menuBox > .elementor-container {
		position: relative;
	}
	.menuBox > .elementor-container:before {
		position: absolute;
		content: "";
		background: #F9F8F4;
		width: 100%;
		height: 100%;
		top: 45px;
	}
	.menuBox:before {
		background: url(/wp-content/uploads/menu_spbg01.png) no-repeat right;
		width: 64px;
		height: 64px;
		background-size: cover;
		left: 0;
		bottom: 0;
		z-index: 1;
	}
	.menuBox:after {
		position: absolute;
		content: "";
		background: url(/wp-content/uploads/menu_spbg02.png) no-repeat right;
		width: 64px;
		height: 64px;
		background-size: cover;
		right: 0;
		bottom: 0;
		z-index: 1;
	}
}
/* =====================================
■GREETING
===================================== */
.greetingBox {
	position: relative;
}
.greetingBox .greetingnner {
	max-width: 1120px;
	margin: 0 auto;
	padding: 0 20px;
	box-sizing: border-box;
}
.greetingBox .greetingnner ul {
	display: flex;
}
.greetingBox .greetingnner ul li:first-child {
	width: 50%;
}
.greetingBox .greetingnner ul li:last-child {
	width: 50%;
	padding-left: 40px;
}
.greetingBox .titWraph2 h2 {
	max-width: 336px;
}
.doctorName {
	width: 170px;
	margin-left: auto;
	margin-top: 50px;
	position: relative;
}
.doctorName p {
	margin-bottom: 0;
	text-align: center;
}
.doctorName .hospital {
	letter-spacing: 0.138em;
	border-bottom: 1px solid #707070;
}
.doctorName p.name {
	font-size: 24px;
	color: #2B2A29;
	position: relative;
}
.doctorName p.name sub {
	color: #E5AA43;
	font-size: 16px;
	padding-right: 10px;
}
/* .greetingBox:after {
position: absolute;
content: "";
background: #F9F8F4;
width: 25%;
height: 150px;
right: 0;
bottom: 0;
z-index: -1;
} */
.doctorName:after {
	position: absolute;
	content: "";
	width: 333px;
	height: 128px;
	right: -143px;
	bottom: -22px;
	background: #F9F8F4;
	z-index: -1;
}
@media screen and (max-width: 1365px) and (min-width: 768px) {
	.doctorName:after {
		width: 193px;
		right: -20px;
	}
}
@media screen and (max-width: 767px) {
	.greetingBox .greetingnner ul {
		display: block;
	}
	.greetingBox .greetingnner ul li:first-child {
		width: 100%;
	}
	.greetingBox .greetingnner ul li:last-child {
		width: 100%;
		padding: 0;
	}
	.doctorName:after {
		display: none;
	}
	.greetingBox .titWraph2 h2 {
		max-width: 212px;
	}
}
/* =====================================
■first_adopts
===================================== */
.first_adopts {
	max-width: 1244px;
	padding: 0 20px;
	margin: 0 auto;
	box-sizing: border-box;
}
.first_adopts ul {
	display: flex;
	column-gap: 40px;
}
@media screen and (max-width: 767px) {
	.first_adopts ul {
		display: block;
	}
	.first_adopts ul li:first-child {
		margin-bottom: 20px;
	}
}
.map .gm-style .place-card-large {
	padding: 9px 4px 9px 11px;
	display: none;
	opacity: 0;
}
/* =====================================
■mainsec
===================================== */
