@charset "utf-8";
/* -------------------------------------
■BASE
------------------------------------- */
body {
	background: #EDEBE7;
	color: #666666;
}

/* -------------------------------------
■Elementor
------------------------------------- */
/* general
------------------------------------- */
.elementor-section.elementor-section-boxed > .elementor-container {
	max-width: 1160px;
}

/* -------------------------------------
■mainView
------------------------------------- */
.mainSec img {
	width: 100%;
}

/* -------------------------------------
■TITLE
------------------------------------- */
.primary-heading h2 {
	display: flex;
	align-items: center;
	writing-mode: vertical-rl;
	white-space: nowrap;
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	font-size: 40px;
	line-height: 1;
	letter-spacing: 0.4em;
	color: #7E7C78;
	position: relative;
	z-index: 2;
}
.primary-heading h2 sub {
	display: block;
	writing-mode: sideways-lr;
	font-family: "Aboreto", system-ui;
	font-weight: 400;
	font-style: normal;
	font-size: 15px;
	letter-spacing: 0;
	color: #4DA859;
	text-transform: uppercase;
	margin-top: 31px;
}

@media screen and (max-width: 767px) {
	.primary-heading h2 {
		font-size: 32px;
	}
	.primary-heading h2 sub {
		font-size: 12px;
		margin-top: 24px;
	}
}

/* -------------------------------------
■2026年夏 六町に開院いたしました
------------------------------------- */
.openSec {
	background: url(/wp-content/uploads/top-bg01.jpg) no-repeat center top;
	background-size: cover;
}
.openSec .inner {
	color: #fff;
	padding: 69px 0 60px;
	position: relative;
	z-index: 2;
}
.openSec .inner:after {
	content: "";
	width: 100vw;
	height: 100%;
	background: #908D88;
	position: absolute;
	right: 0;
	top: 0;
	z-index: -1;
	opacity: 0.88;
}
.openSec .heading {
	margin-bottom: 32px;
}
.openSec .heading h2 {
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	font-size: 35px;
	line-height: 1.2;
	letter-spacing: 0.08em;
}
.openSec .heading h2 span {
	display: block;
	font-size: 40px;
	letter-spacing: 0.16em;
	margin-bottom: 20px;
}

@media screen and (min-width: 768px) {
	.openSec .inner {
		width: 61.5%;
		max-width: 675px;
	}
	.openSec .inner > .elementor-column-wrap {
		max-width: 570px;
		padding-right: 30px;
	}
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
	.openSec .heading h2 {
		font-size: 32px;
	}
	.openSec .heading h2 span {
		font-size: 38px;
	}
}

@media screen and (max-width: 767px) {
	.openSec {
		background-image: url(/wp-content/uploads/top-bg01_sp.jpg);
		padding-bottom: 240px;
	}
	.openSec .inner {
		padding: 45px 10px 48px;
	}
	.openSec .inner:after {
		right: -16px;
	}
	.openSec .heading {
		margin-bottom: 34px;
	}
	.openSec .heading h2 {
		font-size: 28px;
	}
	.openSec .heading h2 span {
		font-size: 30px;
		margin-bottom: 24px;
	}
}

@media screen and (max-width: 389px) {
	.openSec .heading h2 {
		font-size: 26px;
	}
	.openSec .heading h2 span {
		font-size: 28px;
	}
}

@media screen and (max-width: 374px) {
	.openSec .heading h2 {
		font-size: 22px;
		letter-spacing: 0.04em;
	}
	.openSec .heading h2 span {
		font-size: 24px;
	}
}


/* -------------------------------------
■医院理念
------------------------------------- */
.philosophySec {
	padding: 100px 0 48px;
	position: relative;
	z-index: 2;
	overflow: hidden;
}
.philosophySec:before {
	content: "";
	width: 50%;
	height: 65.6%;
	background: #fff;
	position: absolute;
	left: 0;
	top: 0;
	z-index: -1;
}
.philosophySec > .elementor-container > .elementor-row {
	flex-wrap: nowrap;
	justify-content: space-between;
	column-gap: 25px;
}
.philosophySec .headingArea {
	width: 40px;
	margin-top: 10px;
}
.philosophySec .txtWrap {
	width: 87.2%;
	max-width: 959px;
}
.philosophySec .txtWrap .txt {
	max-width: 716px;
	background: #fff;
	line-height: 1.75;
	padding: 28px 58px 28px 60px;
	margin: -56px 94px 0 94px;
}

@media screen and (min-width: 768px) {
	.philosophySec .txtWrap:after {
		content: "";
		width: 37%;
		height: calc(100% + 100px);
		background: #4DA859;
		position: absolute;
		right: -8.85%;
		top: -52px;
		z-index: -1;
	}
}

@media screen and (max-width: 1109px) and (min-width: 1024px) {
	.philosophySec .txtWrap .txt {
		padding: 28px 48px 28px 50px;
		margin: -56px 64px 0 64px;
	}
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
	.philosophySec .txtWrap .txt {
		padding: 28px 28px 28px 30px;
		margin: -56px 44px 0 44px;
	}
}

@media screen and (max-width: 767px) {
	.philosophySec {
		padding: 64px 0 32px;
	}
	.philosophySec:before {
		width: 39.5%;
		height: 159px;
	}
	.philosophySec:after {
		content: "";
		width: 22.82%;
		height: 100%;
		background: #4DA859;
		position: absolute;
		right: 0;
		top: 0;
		z-index: -1;
	}
	.philosophySec .headingArea {
		width: 32px;
		margin-left: 8px;
	}
	.philosophySec .txtWrap .txt {
		max-width: 100%;
		font-size: 15px;
		line-height: 1.6;
		padding: 20px;
		margin: 16px 0 0;
	}
}

/* -------------------------------------
■当院の強み
------------------------------------- */
.featuresSec {
	background: #F9F9F9;
	padding: 101px 0 100px;
	position: relative;
	z-index: 2;
}
.featuresSec:after {
	content: "";
	width: 100%;
	height: 397px;
	background: #EDEBE7;
	position: absolute;
	left: 0;
	top: 0;
	z-index: -2;
}
.featuresSec .inner {
	padding-right: 50px;
	position: relative;
	z-index: 2;
}
.featuresSec .inner:before {
	content: "";
	width: 355px;
	height: 268px;
	background: #4DA859;
	position: absolute;
	left: -133px;
	top: 28px;
	z-index: -1;
}
.featuresSec .inner:after {
	content: "";
	width: calc(50% + 28px);
	height: 68.7%;
	background: #DDDBD7;
	right: -28px;
	top: 296px;
	position: absolute;
	z-index: -1;
}
.featuresSec .headingWrap {
	margin-bottom: 64px;
}
.featuresSec .heading-jp h2 {
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	font-size: 40px;
	line-height: 1.4;
	letter-spacing: 0.32em;
	color: #7E7C78;
	text-align: center;
}
.featuresSec .heading-en {
	width: auto;
	position: absolute;
	right: -78px;
	top: -1px;
	z-index: 2;
}
.featuresSec .heading-en sub {
	display: block;
	writing-mode: vertical-rl;
	font-family: "Aboreto", system-ui;
	font-weight: 400;
	font-style: normal;
	font-size: 24px;
	letter-spacing: 0.32em;
	line-height: 1;
	color: #666666;
	position: relative;
}
.featuresSec .heading-en sub:after {
	content: "";
	width: 1px;
	height: 48px;
	background: #666666;
	position: absolute;
	left: 50%;
	bottom: -80px;
	transform: translateX(-50%);
}
.featuresSec .item .heading {
	margin-bottom: 21px;
}
.featuresSec .item h3 {
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	font-size: 20px;
	line-height: 1.6;
	letter-spacing: 0.08em;
	color: #7E7C78;
}
.featuresSec .item .txt {
	font-size: 15px;
	line-height: 1.6;
}
.featuresSec .item .picWrap img {
	border-radius: 50%;
	border: 10px solid #66D841;
}

@media screen and (min-width: 768px) {
	.featuresSec .item.single {
		background: #fff;
		padding: 29px 48px;
		margin-bottom: 24px;
	}
	.featuresSec .item.single > .elementor-container > .elementor-row {
		align-items: center;
		column-gap: 48px;
	}
	.featuresSec .item.single .picWrap {
		width: 22.75%;
		max-width: 217px;
	}
	.featuresSec .item.single .txtWrap {
		width: auto;
		flex: 1;
	}
	.featuresSec .item.single h3 {
		font-size: 22px;
		line-height: 1.45;
	}
	.featuresSec .features-column > .elementor-container > .elementor-row {
		flex-wrap: nowrap;
		column-gap: 30px;
	}
	.featuresSec .features-column .item {
		background: #fff;
		padding: 32px 34px 32px 35px;
	}
	.featuresSec .features-column .item .picWrap {
		width: 86%;
		max-width: 200px;
		margin: 0 auto 32px;
	}
}

@media screen and (max-width: 1109px) and (min-width: 1024px) {
	.featuresSec .heading-en {
		right: -68px;
	}
	.featuresSec .features-column .item {
		padding: 32px 30px 32px 32px;
	}
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
	.featuresSec .inner {
		padding-right: 0;
	}
	.featuresSec .heading-en {
		right: 10px;
		top: 53px;
	}
	.featuresSec .item.single {
		padding: 29px 38px;
	}
	.featuresSec .item.single > .elementor-container > .elementor-row {
		column-gap: 38px;
	}
	.featuresSec .features-column > .elementor-container > .elementor-row {
		column-gap: 24px;
	}
	.featuresSec .features-column .item {
		padding: 32px 20px 32px 20px;
	}
	.featuresSec .item h3 {
		font-size: 17px;
		letter-spacing: 0.04em;
	}
	.featuresSec .item.single h3 {
		font-size: 19px;
	}
	.featuresSec .item .txt {
		font-size: 14px;
	}
}

@media screen and (max-width: 767px) {
	.featuresSec {
		padding: 48px 0;
	}
	.featuresSec:before {
		width: 64px;
		height: 203px;
		top: 141px;
	}
	.featuresSec:after {
		height: 336px;
	}
	.featuresSec .inner {
		padding: 0 14px;
	}
	.featuresSec .inner:before {
		width: 16.41%;
		height: 203px;
		left: -16px;
		top: 92px;
	}
	.featuresSec .inner:after {
		width: 16.41%;
		height: 86.5%;
		right: -16px;
		top: 288px;
	}
	.featuresSec .headingWrap {
		margin-bottom: 72px;
	}
	.featuresSec .heading-jp h2 {
		font-size: 30px;
		letter-spacing: 0.16em;
	}
	.featuresSec .heading-en {
		right: 8px;
		top: 92px;
	}
	.featuresSec .heading-en sub {
		font-size: 12px;
		letter-spacing: 0.08em;
	}
	.featuresSec .heading-en sub:after {
		bottom: -62px;
	}
	.featuresSec .item {
		background: #fff;
		padding: 0 20px 32px;
		margin-bottom: 48px;
	}
	.featuresSec .features-column .item:last-child {
		margin-bottom: 0;
	}
	.featuresSec .item .picWrap {
		max-width: 180px;
		margin: -24px auto 24px;
	}
}

/* -------------------------------------
■診療内容
------------------------------------- */
.medicalSec {
	padding: 100px 0;
	overflow: hidden;
}
.medicalSec > .elementor-container > .elementor-row {
	flex-wrap: nowrap;
	justify-content: space-between;
	column-gap: 25px;
}
.medicalSec .headingArea {
	width: 40px;
}
.medicalSec .medicalArea {
	width: 87.3%;
	max-width: 960px;
}
body:not(.elementor-editor-active) .medicalSec .item .link div {
	height: 100%;
}
body:not(.elementor-editor-active) .medicalSec .item .link a {
	display: block;
	width: 100%;
	height: 100%;
	font-size: 0;
	position: relative;
	background: rgba(255, 255, 255, 0);
}
body:not(.elementor-editor-active) .medicalSec .item .link a:hover {
	background: rgba(255, 255, 255, 0.3);
}
.medicalSec .medical-top {
	background: #F9F9F9;
	padding: 40px;
	margin-bottom: 48px;
}
.medicalSec .medical-top .item {
	background: #FFFFFF;
	padding: 30px 30px 39px;
}
body:not(.elementor-editor-active) .medicalSec .medical-top .item .link {
	width: calc(100% + 60px);
	height: calc(100% + 69px);
	margin: 0;
	position: absolute;
	left: -30px;
	top: -30px;
	z-index: 10;
}
.medicalSec .medical-top .heading {
	margin: 28px 0 20px;
}
.medicalSec .medical-other {
	position: relative;
	z-index: 2;
}
.medicalSec .medical-other > .elementor-container > .elementor-row {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-gap: 30px;
}
.medicalSec .medical-other .item {
	width: 100%;
	background: #FFFFFF;
	padding: 0 20px 35px;
}
body:not(.elementor-editor-active) .medicalSec .medical-other .item .link {
	width: calc(100% + 40px);
	height: calc(100% + 35px);
	margin: 0;
	position: absolute;
	left: -20px;
	top: 0px;
	z-index: 10;
}
.medicalSec .medical-other .pic {
	width: calc(100% + 40px);
	margin: 0 -20px 18px;
}
.medicalSec .medical-other .heading {
	margin-bottom: 15px;
}
.medicalSec .item:after {
	content: "";
	width: 9px;
	height: 9px;
	background: url(/wp-content/uploads/icon-link.png) no-repeat right top;
	background-size: contain;
	position: absolute;
	right: 8px;
	bottom: 8px;
}
.medicalSec .heading h3 {
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	font-size: 20px;
	letter-spacing: 0;
	line-height: 1.4;
	color: #7E7C78;
	text-align: center;
}
.medicalSec .txt {
	line-height: 1.5;
	text-align: center;
}

@media screen and (min-width: 768px) {
	.medicalSec:before {
		content: "";
		width: 48px;
		height: 28.79%;
		background: #4DA859;
		position: absolute;
		left: 0;
		top: 132px;
	}
	.medicalSec .medical-top {
		position: relative;
		z-index: 2;
	}
	.medicalSec .medical-top:after {
		content: "";
		width: 85px;
		height: calc(100% - 61px);
		background: #4DA859;
		position: absolute;
		right: -85px;
		top: 50%;
		z-index: -1;
		transform: translateY(calc(-50% + 1px));
	}
	.medicalSec .medical-top > .elementor-container > .elementor-row {
		flex-wrap: nowrap;
		column-gap: 40px;
	}
	.medicalSec .medical-top .heading h3 {
		font-size: 24px;
		letter-spacing: 0.08em;
	}
	.medicalSec .medical-other:before {
		content: "";
		width: 100vw;
		height: 53.5%;
		background: #B7B2A9;
		position: absolute;
		right: 0;
		top: 50%;
		z-index: -1;
		transform: translate(0, -50%);
	}
	.medicalSec .medical-other:before {
		content: "";
		width: 100vw;
		height: 53.5%;
		background: #B7B2A9;
		position: absolute;
		top: 50%;
		z-index: -1;
		transform: translateY(-50%);
		margin-left: calc(calc(50% - 50vw) + 24px) !important;
		margin-right: calc(calc(50% - 50vw) + 24px) !important;
	}
}

@media screen and (max-width: 1199px) and (min-width: 768px) {
	.medicalSec .headingArea {
		margin-left: 15px;
	}
	.medicalSec .heading h3 {
		font-size: 18px;
	}
	.medicalSec .txt {
		font-size: 15px;
	}
}

@media screen and (max-width: 767px) {
	.medicalSec {
		padding: 48px 0;
	}
	.medicalSec .headingArea {
		width: 32px;
		position: absolute;
		right: 16px;
		top: 28px;
		z-index: 10;
	}
	.medicalSec .headingArea .primary-heading h2 sub {
		writing-mode: vertical-lr;
	}
	.medicalSec .medicalArea {
		width: calc(100% - 16px); 
	}
	.medicalSec .medical-top {
		padding: 20px 36px 20px 0;
		margin-bottom: 32px;
		position: relative;
		z-index: 2;
	}
	.medicalSec .medical-top:before {
		content: "";
		width: 16px;
		height: calc(100% - 40px);
		background: #4DA859;
		position: absolute;
		left: -16px;
		top: 20px;
		z-index: -1;
	}
	.medicalSec .medical-top:after {
		content: "";
		width: 32px;
		height: calc(100% + 32px);
		background: #E5E1D8;
		position: absolute;
		right: -32px;
		top: 0;
		z-index: -1;
	}
	.medicalSec .medical-top .item {
		padding: 20px 20px 30px;
	}
	.medicalSec .medical-top .item:not(:first-child) {
		margin-top: 24px;
	}
	body:not(.elementor-editor-active) .medicalSec .medical-top .item .link {
		width: calc(100% + 40px);
		height: calc(100% + 50px);
		left: -20px;
		top: -20px;
	}
	.medicalSec .medical-top .heading {
		margin: 16px 0;
	}
	.medicalSec .medical-top .txt {
		font-size: 15px;
	}
	.medicalSec .medical-other {
		padding: 20px 29px 30px 13px;
	}
	.medicalSec .medical-other > .elementor-container > .elementor-row {
		grid-template-columns: repeat(1, 1fr);
		grid-gap: 24px;
	}
	.medicalSec .medical-other:before {
		content: "";
		width: calc(100% + 32px);
		height: 100%;
		background: #B7B2A9;
		position: absolute;
		right: -16px;
		top: 0;
		z-index: -1;
	}
	.medicalSec .medical-other:after {
		content: "";
		width: 32px;
		height: 100%;
		background: #969593;
		position: absolute;
		right: -32px;
		top: 0;
		z-index: -1;
	}
}

/* -------------------------------------
■院長挨拶
------------------------------------- */
.greetingSec {
	padding-bottom: 48px;
	position: relative;
	z-index: 2;
}
.greetingSec .inner {
	padding-bottom: 65px;
}
.greetingSec .inner:after {
	content: "";
	width: 100%;
	height: 60.2%;
	background: #EAE6DF;
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: -1;
}
.greetingSec .inner > .elementor-container > .elementor-row {
	position: relative;
	z-index: 2;
}
.greetingSec .inner > .elementor-container > .elementor-row:after {
	content: "";
	width: 41%;
	height: 48px;
	background: #B7B2A9;
	position: absolute;
	left: 0;
	bottom: -113px;
	z-index: -1;
}
.greetingSec .txtWrap {
	position: relative;
	z-index: 2;
}
.greetingSec .txtWrap:before {
	content: "";
	width: 100vw;
	height: 68.55%;
	background: #EDEBE7;
	position: absolute;
	right: 57.87%;
	bottom: 16px;
	z-index: -1;
}
.greetingSec .txtWrap .doctor-name {
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	font-size: 24px;
	letter-spacing: 0.08em;
	line-height: 1;
	color: #7E7C78;
	margin-bottom: 36px;
}
.greetingSec .txtWrap .txt {
	font-size: 15px;
	line-height: 1.6;
}
.greetingSec .picWrap {
	padding-right: 88px;
	position: relative;
}
.greetingSec .picWrap .primary-heading {
	width: auto;
	position: absolute;
	right: -88px;
	top: 11px;
	z-index: 2;
}
.greetingSec .picWrap .primary-heading h2 sub {
	writing-mode: vertical-lr;
}
.greetingSec .picWrap .pic {
	padding: 0 20px 20px 0;
	position: relative;
	z-index: 2;
}

@media screen and (min-width: 768px) {
	.greetingSec:before {
		content: "";
		width: 46px;
		height: 240px;
		background: #969593;
		position: absolute;
		left: 0;
		top: 0;
		z-index: 10;
	}
	.greetingSec:after {
		content: "";
		width: 48px;
		height: 240px;
		background: #969593;
		position: absolute;
		right: 0;
		bottom: 0;
		z-index: -1;
	}
	.greetingSec .inner > .elementor-container > .elementor-row {
		display: block;
	}
	.greetingSec .inner > .elementor-container > .elementor-row:before {
		display: block;
		content: "";
		clear: both;
	}
	.greetingSec .txtWrap {
		/* 		width: 48.55%;
		max-width: 534px; */
		display: block;
		width: auto;
		margin-top: 6px;
	}
	.greetingSec .txtWrap > .elementor-column-wrap {
		display: block;
	}
	.greetingSec .txtWrap >  .elementor-column-wrap .elementor-widget-wrap {
		display: block;
		align-content: normal;
	}
	.greetingSec .picWrap {
		float: right;
		width: 47.2%;
		max-width: 518px;
		margin-left: 4.25%;
		z-index: 10
	}
	.greetingSec .picWrap .pic:after {
		content: "";
		width: 52.32%;
		height: 28%;
		background: #7E7C78;
		position: absolute;
		right: 0;
		bottom: 0;
		z-index: -1;
	}
}

@media screen and (max-width: 1199px) and (min-width: 768px) {
	.greetingSec .txtWrap {
		padding-left: 20px;
		padding-right: 20px;
	}
}

@media screen and (max-width: 767px) {
	.greetingSec {
		padding-bottom: 24px;
		margin-bottom: 48px;
	}
	.greetingSec .inner {
		padding-bottom: 24px;
	}
	.greetingSec .inner:after {
		width: 100%;
		height: 35.55%;
		left: 0;
		top: 138px;
		bottom: inherit;
	}
	.greetingSec .inner > .elementor-container > .elementor-row:after {
		width: 61.8%;
		height: 24px;
		left: -16px;
		bottom: -48px;
	}
	.greetingSec .picWrap {
		padding-right: 52px;
		margin-bottom: 32px;
		box-sizing: border-box;
	}
	.greetingSec .picWrap > .elementor-column-wrap,
	.greetingSec .picWrap > .elementor-column-wrap > .elementor-widget-wrap {
		position: static;
	}
	.greetingSec .picWrap .primary-heading {
		width: 32px;
		right: 0;
		top: 11px;
		z-index: 2;
	}
	.greetingSec .picWrap .pic {
		padding: 0 0 16px 0;
	}
	.greetingSec .picWrap .pic:after {
		content: "";
		width: 79.4%;
		height: 37.41%;
		background: #7E7C78;
		position: absolute;
		left: -16px;
		bottom: 0;
		z-index: -1;
	}
	.greetingSec .txtWrap:before {
		width: calc(100% + 16px);
		height: 68.55%;
		right: 0;
		bottom: inherit;
		top: -32px;
	}
	.greetingSec .txtWrap .doctor-name {
		font-size: 20px;
		margin-bottom: 24px;
	}
	.greetingSec .txtWrap .txt {
		font-size: 16px;
		line-height: 2;
	}
}

/* -------------------------------------
■医院情報
------------------------------------- */
.clinicSec {
	padding: 100px 0 110px;
}
.clinicSec .headingArea {
	width: auto;
	position: absolute;
	left: 0;
	top: 11px;
}
.clinicSec .clinicArea .txtWrap {
	background: #fff;
	padding: 40px 40px 47px 45px;
}
.clinicSec .clinicArea .txtWrap .logo {
	max-width: 235px;
	margin-bottom: 40px;
}
.clinicSec .clinicArea .txtWrap .infoList {
	margin-bottom: 38px;
}
.clinicSec .clinicArea .txtWrap .infoList .elementor-icon-list-item {
	line-height: 1.5;
	padding-left: 48px;
	padding-top: 5px;
}
.clinicSec .clinicArea .txtWrap .infoList .elementor-icon-list-item:last-child {
	display: none;
}
.clinicSec .clinicArea .txtWrap .infoList .elementor-icon-list-item:before {
	content: "";
	width: 27px;
	height: 29px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	position: absolute;
	left: 0;
	top: 2px;
}
.clinicSec .clinicArea .txtWrap .infoList .elementor-icon-list-item:first-child:before {
	background-image: url(/wp-content/uploads/icon-clinic.png);
}
.clinicSec .clinicArea .txtWrap .infoList .elementor-icon-list-item:last-child:before {
	background-image: url(/wp-content/uploads/icon-phone.png);
}
.clinicSec .clinicArea .txtWrap .infoList .elementor-icon-list-item:not(:first-child) {
	margin-top: 21px;
}
.clinicSec .clinicArea .txtWrap .infoList .elementor-icon-list-item a {
	color: #666666;
}
.clinicSec .clinicArea .txtWrap .note {
	font-size: 14px;
	letter-spacing: 0;
	margin: 6px 0 0 10px;
}
.clinicSec .clinicArea .mapWrap .map {
	border: 20px solid #B7B2A9;
}

@media screen and (min-width: 768px) {
	.clinicSec .inner > .elementor-column-wrap > .elementor-widget-wrap {
		padding-left: 90px !important;
	}
	.clinicSec .clinicArea .mapWrap .map {
		padding-top: 0;
	}
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
	.clinicSec .clinicArea .txtWrap {
		padding: 30px;
	}
	.timetable th,
	.timetable td {
		font-size: 12px;
	}
	.timetable thead th:first-child {
		width: 92px;
		font-size: 14px;
	}
	.timetable tbody th {
		border-right: 6px solid #fff;
	}
	.timetable tbody th,
	.timetable tbody td {
		border-top: 6px solid #fff;
	}
}

@media screen and (max-width: 767px) {
	.clinicSec {
		padding: 0 0 48px;
	}
	.clinicSec.elementor-section.elementor-section-boxed > .elementor-container {
		padding: 0;
	}
	.clinicSec .headingArea {
		width: 32px;
		left: 16px;
	}
	.clinicSec .clinicArea {
		background: #E5E1D8;
		padding-left: 32px;
	}
	.clinicSec .clinicArea .txtWrap {
		padding: 40px 16px 40px 60px;
	}
	.clinicSec .clinicArea .txtWrap .infoList .elementor-icon-list-item:not(:first-child) {
		margin-top: 11px;
	}
	.clinicSec .clinicArea .mapWrap:before {
		content: "";
		width: 32px;
		height: 100%;
		background: #7E7C78;
		position: absolute;
		left: -32px;
		top: 0;
	}
	.clinicSec .clinicArea .mapWrap .map {
		border: 16px solid #B7B2A9;
	}
}

@media screen and (max-width: 374px) {
	.clinicSec .clinicArea .txtWrap {
		padding-left: 40px;
	}
}

/* -------------------------------------
■新着情報
------------------------------------- */
.newsSec {
	padding-bottom: 40px;
	margin-bottom: 100px;
	position: relative;
	z-index: 2;
}
.newsSec:after {
	content: "";
	width: 100%;
	height: 48.1%;
	background: #969593;
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: -1;
}
.newsSec .inner {
	margin-bottom: 28px;
}
.newsSec .inner > .elementor-container > .elementor-row {
	flex-wrap: nowrap;
	justify-content: space-between;
	column-gap: 25px;
}
.newsSec .headingArea {
	width: 40px;
}
.newsSec .headingArea .primary-heading h2 sub {
	writing-mode: vertical-lr;
	color: #AFEEA9;
}
.newsSec .newsArea {
	width: 87.3%;
	max-width: 960px;
	margin-top: 40px;
}
.newsSec .news {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-gap: 30px;
}
.newsSec .news li a {
	display: block;
	font-weight: 500;
	color: #fff;
}
.newsSec .news li a:hover {
	opacity: 0.8;
}
.newsSec .news li .news-thumbnail {
	width: 100%;
	border: 10px solid #fff;
	padding-top: 68.25%;
	position: relative;
	overflow: hidden;
}
.newsSec .news li .news-thumbnail span {
	display: block;
	width: 100%;
	height: 100%;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	position: absolute;
	top: 0;
	left: 0;
	transform: scale(1);
	transition: ease-in-out .2s;
}
.newsSec .news li a:hover .news-thumbnail span {
	transform: scale(1.1);
}
.newsSec .news li dl {
	letter-spacing: 0;
	padding: 24px 20px 0;
}
.newsSec .news li dl dt {
	line-height: 1;
	margin-bottom: 13px;
}
.newsSec .news li dl dd {
	font-size: 18px;
	line-height: 1.34;
}
.newsSec .elementor-button {
	box-shadow: 0 0 0 1px #fff !important;
	color: #fff !important;
}
.newsSec .elementor-button:after {
	background-image: url(/wp-content/uploads/icon-link_white.png);
}
.newsSec .elementor-button:hover {
	background: #fff;
	color: #666666 !important;
}
.newsSec .elementor-button:hover:after {
	background-image: url(/wp-content/uploads/icon-link.png);
}

@media screen and (max-width: 767px) {
	.newsSec {
		padding-bottom: 48px;
		margin-bottom: 48px;
	}
	.newsSec:after {
		height: calc(100% - 193px);
	}
	.newsSec:before {
		content: "";
		width: 21.54%;
		height: calc(100% - 193px);
		background: #7E7C78;
		position: absolute;
		right: 0;
		bottom: 0;
	}
	.newsSec .headingArea {
		width: 32px;
		margin-top: 10px;
		z-index: 10;
	}
	.newsSec .inner {
		margin-bottom: 40px;
	}
	.newsSec .inner > .elementor-container > .elementor-row {
		column-gap: 20px;
	}
	.newsSec .newsArea {
		width: 100%;
		margin-top: 0;
		flex: 1;
	}
	.newsSec .news {
		grid-template-columns: repeat(1, 1fr);
		grid-gap: 34px;
	}
}