@charset "utf-8";
body {
	background: #fff;
}
/* =====================================
■Elementor
===================================== */
/* -------------------------------------
general
------------------------------------- */
.elementor-section.elementor-section-boxed > .elementor-container {
	max-width: 100% !important;
}
.elementor-column-gap-default > .elementor-column > .elementor-element-populated {
	padding: 0;
}
.elementor-column-gap-default > .elementor-row > .elementor-column > .elementor-element-populated > .elementor-widget-wrap {
	padding: 0;
}
header {
	background: rgba(255, 255, 255, 0.9);
	box-shadow: 0px 6px 12px rgba(0, 0, 0, 0.08);
}
#wrapper {
	padding-top: 0;
}
/* =====================================
■TITLE
===================================== */
.titWrap_h2 {
	text-align: center;
	margin-bottom: 43px;
}
.titWrap_h2 h2 {
	position: relative;
	font-size: 110px;
	color: #183240;
	letter-spacing: 0%;
	line-height: 100%;
	font-family: "Cormorant Infant", serif;
	font-optical-sizing: auto;
	font-weight: <weight>;
	font-style: normal;
}
.titWrap_h2 h2 sub {
	font-size: 30px;
	display: block;
	color: #0F3E59;
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-style: normal;
	font-weight: 500;
	line-height: 100%;
	letter-spacing: 0%;
	margin-top: 24px;
}
.titWrap_h2.pink h2 sub {
	background: linear-gradient(120.38deg, #F89FA8 0.46%, #CF95BB 97.16%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}
.titWrap_h2.purple h2 sub {
	background: linear-gradient(120.38deg, #CA97CA 0.46%, #8487BD 97.16%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}
.titWrap_h2 h2 span {
	color: #1F3D79;
}
.titWrap_h3 h3 {
	font-size: 32px;
	margin-bottom: 15px;
	color: #1F3D79;
	letter-spacing: 0%;
	line-height: 160%;
	font-weight: 500;
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-weight: <weight>;
	font-style: normal;
	text-align: center;
}
.titWrap_h3 p {
	line-height: 1.6;
	margin-top: 25px;
	margin-bottom: 25px;
	color: #fff;
}
@media screen and (max-width: 1025px) and (min-width: 768px) {
	.titWrap_h2 h2 {
		font-size: 90px;
	}
}

@media screen and (max-width: 767px) {
	.titWrap_h3 h3 {
		font-size: 22px;
	}
	.titWrap_h2 h2 {
		font-size: 56px;
	}
	.titWrap_h2 h2 sub {
		font-size: 18px;
		margin-top: 14px;
		line-height: 1.5;
	}
}
/* =====================================
■btn
===================================== */
.elementor-button,
.btn a {
	display: inline-block;
	vertical-align: bottom;
	width: 100% !important;
	max-width: 407px;
	background: #1F3D79;
	border-radius: 5px;
	font-weight: 400;
	font-size: 16px;
	letter-spacing: 50%;
	line-height: 1.2;
	color: #fff !important;
	text-align: center;
	padding: 23px 51px 23px 20px;
	box-sizing: border-box;
	position: relative;
	transition: all 0.5s ease;
	z-index: 2;
}
.elementor-button:after,
.btn a:after {
	content: "";
	width: 16px;
	height: 16px;
	background: url(/wp-content/uploads/under_icon01.png) no-repeat left top;
	background-size: contain;
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
	z-index: 2;
	transition: all 0.2s ease;
}
/* =====================================
■mainView
===================================== */
.mainMv {
	position: relative;
}
.mainMv img {
	width: 100%;
}
.mainTxt {
	width: 46.5% !important;
	position: absolute;
	content: "";
	bottom: 19%;
	left: 5%;
}
@media screen and (max-width: 767px) {
	.mainTxt {
		width: 90% !important;
		bottom: 16%;
	}
}
/* =====================================
■news
===================================== */
.topSec01 {
	background: linear-gradient(100.86deg, #F7F7F7 8.05%, #FFFFFF 100%);
	position: relative;
	padding-bottom: 80px;
}
.topSec01:before {
	position: absolute;
	content: "";
	width: 719px;
	height: 891px;
	background: url(/wp-content/uploads/top_bg01.png) no-repeat;
	background-size: cover;
}
.topSec01 .newsSec {
	z-index: 99;
	width: 80% !important;
	padding: 16px 48px;
	max-width: 900px;
	margin: 0px auto 0;
	margin-top: 0px;
	background: #F2F6F9;
	box-shadow: 0px 0px 12px rgba(0, 0, 0, 0.04);
	border-radius: 5px;
	margin-top: -45px;
}
.topSec01 .elementor-element-f368123 .elementor-row {
	align-items: center;
}
.contentNews dl dt,
.contentNews dl dd a {
	color: #333;
}
.newsLink a {
	color: #1F3D79;
	font-size: 12px;
	line-height: 1;
	position: relative;
	background: #fff;
	border-radius: 50px;
	padding: 6px 40px 6px 15px;
}
.newsLink a:before {
	position: absolute;
	content: "";
	width: 16px;
	height: 16px;
	background: url(/wp-content/uploads/news_icon.png) no-repeat;
	background-size: cover;
	right: 9px;
	top: 7px;
}
.newsContent {
	width: 62% !important;
	padding-left: 42px;
	box-sizing: border-box;
	position: relative;
}
.newsContent:before {
	position: absolute;
	content: "";
	background: #DDDEDF;
	height: 100%;
	width: 1px;
	left: 0;
	top: 0;
}
.newsSec .newsLink {
	width: 20%;
	position: relative;
	padding-left: 28px;
	box-sizing: border-box;
}
.newsSec .newsTit h2 {
	color: #333333;
	font-weight: 500;
	font-size: 20px;
	line-height: 1;
	text-align: center;
}
.newsSec .newsTit h2 sub {
	font-family: "Cormorant Infant", serif;
	font-optical-sizing: auto;
	font-style: normal;
	font-weight: 500;
	font-size: 13px;
	line-height: 1;
	letter-spacing: 0;
	display: block;
	margin-top: 5px;
}
.topSec01 .elementor-container.elementor-column-gap-default {
	display: flex;
	align-items: center;
}
.newsSec .newsTit {
	width: 18%;
	box-sizing: border-box;
	position: relative;
}
.newsContent dl {
	display: flex;
	justify-content: flex-start;
	align-items: center;
}
.newsContent dl:first-child {
	margin-bottom: 11px;
}
.contentNews dl dt {
	padding-right: 10px;
	color: #6F6F6F;
	font-size: 14px;
	line-height: 1;
}
.contentNews dl dd a {
	color: #333333;
	font-size: 14px;
}
.post-category {
	color: #1D325D;
	font-weight: 500;
	font-size: 11px;
	line-height: 1;
	background: #DBE6EE;
	padding: 8px 20px;
	border-radius: 50px;
	margin-right: 13px;
	margin-left: 7px;
}
.post-title {
	text-decoration: underline;
}
@media screen and (max-width: 1025px) and (min-width: 768px) {
	.topSec01 .newsSec {
		width: 90% !important;
		padding: 16px 10px;
	}
	.newsSec .newsLink {
		padding-left: 18px;
	}
	.newsContent {
		padding-left: 20px;
	}
	.post-category {
		padding: 8px 10px;
	}
}
@media screen and (max-width: 767px) {
	.topSec01 .newsSec {
		position: relative;
		width: 94% !important;
		max-width: 100%;
		background: #F2F6F9;
		border-radius: 5px;
		padding: 25px;
	}
	.topSec01 .elementor-container.elementor-column-gap-default {
		display: block;
	}
	.newsSec .newsTit {
		width: 50%;
	}

	.newsSec .newsLink {
		width: 112px;
		padding-left: 0;
		padding-right: 0;
		margin-left: auto;
	}
	.newsSec .newsLink:before {
		position: static;
	}
	.newsSec .newsLink:after {
		position: static;
		background: none;
	}
	.newsSec .newsLink .elementor-widget-container {
		line-height: 1;
	}
	.newsCo_pc {
		display: none;
	}
	.newsSec .newsTit h2 sub {
		display: inline-block;
		vertical-align: top;
	}
	.newsSec .newsTit h2 {
		text-align: left;
	}
	.newsLink a {
		padding: 6px 30px 6px 15px;
	}
	.newsContent {
		padding-left: 0;
		width: 100% !important;
		margin-top: 50px;
	}
	.newsContent:before {
		display: none;
	}
	.newsContent dl {
		flex-wrap: wrap;
	}
	.post-category {
		width: 86px;
		display: inline-block;
		max-width: 86px;
		text-align: center;
		margin-left: auto;
	}
	.post-title {
		width: 100%;
	}
	.clearfix.newsBox {
		position: relative;
	}
	.clearfix.newsBox:before {
		position: absolute;
		content: "";
		width: 58px;
		background: #BEC2C7;
		height: 1px;
		top: -16px;
		left: 0;
	}
}
/* =====================================
■30年間、自分の歯を残すことに
向き合い続けてきた歯科クリニック
===================================== */
.philosophyBox {
	margin-top: 35px;
}
.clinicMessage .clinicMessageInner {
	display: flex;
}
.clinicMessageInner .clinicMessageImgLeft {
	width: 16.8%;
	display: flex;
	align-items: flex-end;
	padding-bottom: 56px;
}
.clinicMessageInner .clinicMessageContent {
	width: 44.3%;
	margin-left: 4.4%;
	padding-top: 35px;
}
.clinicMessageInner .clinicMessageImgRight {
	width: 27.2%;
	margin-left: 7.2%;
	display: flex;
	align-items: flex-start;
}
.clinicMessageContent .tit {
	font-size: clamp(21px, 2.77vw, 40px);
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-style: normal;
	font-weight: 500;
	color: #1F3D79;
	line-height: 160%;
	letter-spacing: -0.01em;
}
.clinicMessageContent p {
	font-size: 16px;
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-style: normal;
	color: #333333;
	line-height: 200%;
	margin-bottom: 0;
	letter-spacing: 0.01em;
}
.clinicMessageContent p.lead {
	color: #333333;
	font-weight: 500;
	font-size: clamp(17px, 1.6vw, 24px);
	line-height: 180%;
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-style: normal;
	margin-top: 25px;
	margin-bottom: 33px;
}
.clinicMessageContent p.note {
	font-size: 14px;
	margin-top: 16px;
}
@media screen and (max-width: 767px) {
	.clinicMessageImg.clinicMessageImgLeft {
		width: 100%;
		display: block;
	}
	.clinicMessageInner .clinicMessageContent {
		width: 100%;
		margin-left: 0;
		padding-top: 0;
	}
	.clinicMessageInner .clinicMessageImgRight {
		width: 100%;
		margin-left: 0;
	}
	.clinicMessage .clinicMessageInner {
		display: block;
		padding: 0 20px;
		box-sizing: border-box;
	}
	.clinicMessageContent .tit {
		font-size: 32px;
	}
	.clinicMessageContent p.lead {
		font-size: 22px;
	}
	.topSec01:before {
		display: none;
	}
	.topSec01 {
		background: url(/wp-content/uploads/top_bg01-scaled.jpg) no-repeat;
		background-size: cover;
	}
}
/* =====================================
■全国の歯科医師でもわずか0.1%
指導医という技術力で応える歯科治療
===================================== */
.topSec02 {
	background: url(/wp-content/uploads/top_bg02-1-scaled.jpg) no-repeat right bottom;
	background-size: cover;
	padding: 91px 0 120px;
}
.topSec02 .box01 {
	max-width: 1240px;
	padding: 0 20px;
	box-sizing: border-box;
	margin: 0 auto;
	display: flex;
}
.topSec02 .box01 .left {
	width: 36.4%;
	margin-right: 5.4%;
}
.topSec02 .box01 .right {
	width: 58.2%;
}
.topSec02 .box01 .tit {
	color: #333333;
	font-size: 32px;
	font-weight: 500;
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-style: normal;
	margin-bottom: 44px;
}
.topSec02 .box01 .txt {
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-style: normal;
	color: #333333;
	line-height: 180%;
}
.topSec02 .box02 {
	max-width: 1240px;
	padding: 0 20px;
	box-sizing: border-box;
	margin: 0 auto;
	margin-top: 65px;
}
.topSec02 .box02 .tit {
	color: #4B4B4B;
	font-size: 40px;
	font-weight: 500;
	line-height: 48px;
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-style: normal;
	text-align: center;
}
.topSec02 .box02 ul {
	max-width: 912px;
	display: flex;
	margin: 0 auto;
	flex-direction: row;
	gap: 36px;
	margin-top: 40px;
}
.topSec02 .box02 p {
	text-align: center;
	color: #333333;
	font-size: 14px;
	margin-top: 30px;
}
@media screen and (max-width: 1025px) and (min-width: 768px) {
	.topSec02 .box01 .tit {
		font-size: 29px;
	}
	.topSec02 .box02 .tit {
		font-size: 30px;
	}
}
@media screen and (max-width: 767px) {
	.topSec02 .box01 {
		display: block;
	}
	.topSec02 .box01 .left {
		width: 100%;
		margin-right: 0;
		margin-bottom: 30px;
	}
	.topSec02 .box01 .right {
		width: 100%;
	}
	.topSec02 .box02 ul {
		display: block;
	}
	.topSec02 .box02 ul li {
		margin-bottom: 20px;
	}
	.topSec02 .box01 .tit {
		text-align: center;
	}
	.topSec02 .box02 .tit {
		font-size: 32px;
	}
	.topSec02 {
		background: url(/wp-content/uploads/top_bg02_sp-scaled.jpg) no-repeat;
		background-size: cover;
		padding: 91px 0;
	}
}
/* =====================================
■院長からのご挨拶
===================================== */
.greetingSec {
	background: url(/wp-content/uploads/greeting_bg-scaled.jpg) no-repeat;
	background-size: cover;
	padding: 0 0 80px;
}
.greetingSec > .elementor-container.elementor-column-gap-default {
	max-width: 1240px !important;
	margin: 0 auto;
	padding: 0 20px;
	box-sizing: border-box;
}
.greetingContent {
	display: flex;
	margin-top: 56px;
}
.greetingContent .left {
	width: 58.3%;
	margin-right: 5.4%;
}
.greetingContent .right {
	width: 36.3%;
}
.greetingContent .tit {
	color: #333333;
	font-size: 32px;
	line-height: 160%;
	font-weight: 500;
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-weight: <weight>;
	font-style: normal;
	margin-bottom: 35px;
}
.greetingContent p {
	color: #333333;
	font-size: 16px;
	line-height: 180%;
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-weight: <weight>;
	font-style: normal;
	margin-bottom: 33px;
}
@media screen and (max-width: 1025px) and (min-width: 768px) {
	.greetingContent .tit {
		font-size: 26px;
		margin-bottom: 15px;
	}
}
@media screen and (max-width: 767px) {
	.greetingSec {
		padding-top: 50px;
	}
	.greetingContent .left {
		width: 100%;
		margin-right: 0;
	}
	.greetingContent .tit {
		font-size: 24px;
		margin-top: 20px;
		margin-bottom: 20px;
	}
	.greetingSec {
		background: url(/wp-content/uploads/greeting_bg_sp-scaled.jpg) no-repeat;
		background-size: cover;
	}
}
/* =====================================
■院長・ドクターの著書論文・講演会情報
===================================== */
.mediaSec {
	background: url(/wp-content/uploads/media_bg-scaled.jpg) no-repeat right top;
	background-size: cover;
	padding: 80px 0;
}
.mediaSec .titWrap_h2 h2 {
	color: #C6C6C6;
}
.mediaSec .titWrap_h2 h2 span {
	color: #fff;
}
.mediaSec .titWrap_h2 h2 sub {
	color: #fff;
	font-size: 32px;
}
section.profileLinks {
	margin-top: 64px;
}
.profileLinks_list {
	display:grid;
	grid-template-columns:repeat(2, 1fr);
	gap:24px;
}
.profileLinks_item {
	display:flex;
	background:#fff;
	border-radius:4px;
	overflow:hidden;
	text-decoration:none;
	color:#1F3D79;
}
.profileLinks_img {
	width:40%;
}
.profileLinks_img img {
	width:100%;
	height:100%;
	object-fit:cover;
	/*	display:block; */
}
.profileLinks_body {
	position: relative;
	width: 60%;
	padding: 55px 25px 45px;
	height: 250px;
}
.profileLinks_body .tit {
	font-size: 24px;
	font-weight: 500;
	color: #1F3D79;
	margin: 0 0 12px;
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-weight: <weight>;
	font-style: normal;
}
.profileLinks_body p {
	font-size:15px;
	line-height:2;
	color:#333;
	margin:0;
}
.profileLinks_arrow {
	position:absolute;
	right:12px;
	bottom:12px;
	width:32px;
	height:32px;
	border:1px solid #1F3D79;
	border-radius:50%;
	display:flex;
	align-items:center;
	justify-content:center;
	font-size:20px;
	color:#1F3D79;
}
.profileLinks_arrow img {
	width: 17px;
	height: 14px;
}
.profileLinks_list .profileLinks_item:hover {
	text-decoration: none;
	opacity: 0.5;
}
.profileLinks_item:hover .profileLinks_arrow img {
	filter: brightness(0) invert(1);
}
/* hover */
.profileLinks_item:hover .profileLinks_arrow {
	background:#1F3D79;
	color:#fff;
}
@media screen and (max-width: 1025px) and (min-width: 768px) {
	.profileLinks_body {
		height: auto;
	}
}
@media screen and (max-width: 767px) {
	.profileLinks_list {
		display: block;
	}
	.profileLinks_item {
		margin-bottom: 20px;
		border-radius: 8px;
	}
	.profileLinks_body {
		height: auto;
		padding: 25px 15px 45px;
	}
	.mediaSec .titWrap_h2 h2 sub {
		font-size: 18px;
	}
	.profileLinks_body .tit {
		font-size: 20px;
	}
	.profileLinks_body p {
		font-size: 14px;
	}
	.profileLinks_img img {
		object-position: right center;
	}
	.mediaSec {
		position: relative;
		background: url(/wp-content/uploads/media_bg_sp.jpg) no-repeat left top;
		background-size: cover;
	}
	.mediaSec:before {
		position: absolute;
		content: "";
		width: 205px;
		height: 208px;
		background: url(/wp-content/uploads/media_bg_sp02.png) no-repeat;
		background-size: cover;
		right: 0;
		top: 0;
	}
	.mediaSec .titWrap_h2 {
		margin-bottom: 0;
	}
	section.profileLinks {
		margin-top: 24px;
	}
}
/* =====================================
■MEDICAL MENU
===================================== */
.medicalMenu {
	padding-top:80px;
	margin-bottom: 80px;
}
/* 标题 */
.medicalMenu_head {
	text-align:center;
}
.medicalMenu_text {
	font-size: 20px;
	line-height: 200%;
	color: #333;
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-style: normal;
}
.medicalMenu_head .titWrap_h2 {
	margin-bottom: 63px;
}
/* 上面3卡片 */
.medicalMenu_feature {
	display:grid;
	grid-template-columns:repeat(3,1fr);
	margin-top: 65px;
}
.medicalCard {
	background:#fff;
	color:#333;
	text-decoration:none;
	display: flex;
	flex-direction: column;
}
.medicalCard_img {
	height: 300px;
}
.medicalCard_img img {
	width:100%;
	height:100%;
	object-fit:cover;
}
.medicalCard_body {
	padding:30px 40px;
	text-align:center;
	flex: 1;
	display: flex;
	flex-direction: column;
}
.medicalCard_body h4 {
	font-size: 24px;
	font-weight: 600;
	color: #333333;
	margin-bottom: 20px;
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-style: normal;
}
.medicalCard_body p {
	font-size: 14px;
	line-height: 200%;
	color: #333333;
}
.medicalCard:hover {
	text-decoration: none;
	opacity: 0.7;
}
p.arrowBox {
	width: 94px;
	margin: 0 auto;
	color: #1F3D79;
	font-size: 14px;
	position: relative;
	margin-top: auto;
}
p.arrowBox .profileLinks_arrow {
	width: 16px;
	height: 16px;
	font-size: 10px;
	right: -8px;
	top: 25%;
	bottom: auto;
}
p.arrowBox .profileLinks_arrow img {
	width: 8.7px;
	height: 7.2px;
}
.medicalCard_body span,
.medicalItem span {
	color:#23457f;
	font-size:14px;
}
/* 下方菜单 */
.medicalMenu_list {
	max-width: 1240px;
	margin: 50px auto 0;
	display: grid;
	grid-template-columns: repeat(4,1fr);
	background: #fff;
	padding: 0 20px;
	box-sizing: border-box;
}
.medicalItem {
	padding:55px 30px;
	text-align:center;
	border-right: 1px solid #CCC;
	text-decoration:none;
	color:#333;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.medicalItem:last-child {
	border:none;
}
.medicalIcon {
	height:95px;
	display:flex;
	align-items:center;
	justify-content:center;
	margin-bottom:40px;
}
.medicalIcon img {
	max-width:110px;
	max-height:95px;
}
.medicalItem h4 {
	color: #1F3D79;
	font-size: 24px;
	font-weight: 500;
	margin-bottom: 25px;
	line-height: 27.43px;
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-style: normal;
}
.medicalItem p {
	font-size:14px;
	line-height:2;
	text-align:left;
	letter-spacing: 0.05em;
}
.medicalItem:hover {
	background: #1F3D79;
	text-decoration: none;
}
.medicalItem:hover p.arrowBox .profileLinks_arrow img {
	filter: brightness(0) invert(1);
}
.medicalItem:hover h4 {
	color: #fff;
}
.medicalItem:hover p {
	color: #fff;
}
.medicalItem:hover .profileLinks_arrow {
	color: #fff;
	border: 1px solid #fff;
}
.medicalItem:hover .medicalIcon img {
	filter: brightness(0) invert(1);
}
@media screen and (max-width: 1025px) and (min-width: 768px) {
	.medicalCard_body h4 {
		font-size: 21px;
		line-height: 1.3;
	}
	.medicalMenu_text {
		font-size: 17px;
	}
}
@media screen and (max-width: 767px) {
	.medicalMenu_feature {
		display: block;
	}
	.medicalMenu_list {
		grid-template-columns: repeat(2,1fr);
	}
	.medicalItem {
		padding: 20px 20px;
		border-right: none;
	}
	.medicalMenu_text {
		font-size: 16px;
		width: 94%;
		margin: 0 auto;
	}
	.medicalItem h4 {
		font-size: 20px;
	}
}
/* =====================================
■WHY CHOOSE US FIRST
===================================== */
.elementor-top-section.elementor-element.elementor-element-8a0edb8 {
	position: relative;
	padding-bottom: 107px;
}
.elementor-top-section.elementor-element.elementor-element-8a0edb8:before {
	position: absolute;
	content: "";
	background: url(/wp-content/uploads/consultation_bg-scaled.jpg) no-repeat right bottom;
	background-size: cover;
	bottom: 0;
	left: 0;
	background-size: cover;
	width: 100%;
	height: 420px;
}
.whynner {
	position: relative;
	margin-bottom: 80px;
}
.whynner:before {
	position: absolute;
	content: "";
	height: 87%;
	width: 100%;
	top: 7%;
	left: 0;
	background: linear-gradient(105.86deg, #EADCC7 38.94%, #B9A485 100.07%);
}
.whySec {
	max-width: 1240px;
	padding: 0 20px;
	margin: 0 auto;
	box-sizing: border-box;
	text-align: center;
	/* 	margin-bottom: 150px; */
}
.whyBox01 {
	position: relative;
	border-radius: 7px;
}
.whyBox01:before {
	position: absolute;
	content: "";
	height: 24px;
	width: 100%;
	top: 0;
	left: 0;
	background: url(/wp-content/uploads/why_bg01.png) no-repeat center;
	background-size: cover;
}
.whyBox01:after {
	position: absolute;
	content: "";
	width: 24px;
	height: 100%;
	background: url(/wp-content/uploads/why_bg02.png) no-repeat;
	background-size: cover;
	left: 0;
	top: 0;
}
.whyS {
	background: url(/wp-content/uploads/why_bg.jpg) no-repeat;
	background-size: cover;
	padding: 64px 20px 69px;
}
.whyBox02 {
	position: relative;
	padding: 24px;
}
.whyBox02:before {
	position: absolute;
	content: "";
	background: url(/wp-content/uploads/why_bg03.png) no-repeat center;
	height: 24px;
	width: 100%;
	bottom: 0;
	left: 0;
	background-size: cover;
}
.whyBox02:after {
	position: absolute;
	content: "";
	width: 24px;
	height: 100%;
	right: 0;
	top: 0;
	background: url(/wp-content/uploads/why_bg04.png) no-repeat center;
	background-size: cover;
}
.whySec .titWrap_h2 h2 {
	color: #2D210E;
	font-size: 96px;
}
.whySec .titWrap_h2 h2 span {
	color: #8B6220;
}
.whySec .titWrap_h2 h2 sub {
	color: #8B6220;
}
.whySec .txt {
	color: #333333;
	font-size: 16px;
	line-height: 180%;
	letter-spacing: 0;
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-weight: <weight>;
	font-style: normal;
}
@media screen and (max-width: 767px) {
	.whynner:before {
		height: 96.66%;
		top: 24px;
	}
	.whySec .titWrap_h2 h2 {
		font-size: 45px;
	}
	.whyS {
		background: url(/wp-content/uploads/why_bg_sp-scaled.jpg) no-repeat;
		background-size: cover;
	}
}
/* =====================================
■まず「自分の歯を残せるかどうか」を相談してみませんか？
===================================== */
.consultation {
	max-width: 1028px;
	margin: 0 auto;
	box-sizing: border-box;
	padding: 0 20px;
}
.consultation .btnList {
	margin-top: 63px;
}
.btnList {
	display: flex;
	gap: 20px;
	align-items: stretch;
}
.btnList .btna {
	height: 70px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.btnList .btna a:hover img {
	opacity: 1;
}
@media screen and (max-width: 767px) {
	.consultation .btnList {
		display: block;
	}
	.btnList .btna {
		height: auto;
		width: 100%;
		margin-bottom: 20px;
	}
	.btnList .btna a {
		display: block;
		width: 100%;
	}
	.btnList .btna img {
		width: 100%;
	}
}
/* =====================================
■EXECUTIVE CARE
===================================== */
.elementor-top-section.elementor-element-14bda75 {
	background: url(/wp-content/uploads/executive_bg-scaled.jpg) no-repeat right bottom;
	background-size: cover;
	padding: 48px 0 64px;
}
.executive {
	max-width: 1240px;
	margin: 0 auto;
	padding: 0 20px;
	box-sizing: border-box;
	color: #fff;
}
.executive .tit {
	background: radial-gradient(50% 416.82% at 50% 50%, #FFFFA5 0%, #966B34 13.46%, #CD9D51 21.15%, #AC7A3D 39.42%, #FFFFA5 56.25%, #966B34 76.92%, #CD9D51 92.79%);
	background-clip: border-box;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
	text-fill-color: transparent;
	font-size: 96px;
	font-family: "Cormorant Infant", serif;
	font-optical-sizing: auto;
	font-weight: <weight>;
	font-style: normal;
	text-align: center;
	line-height: 1.4;
}
.executive .tit span {
	display: block;
	font-size: 32px;
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-weight: <weight>;
	font-style: normal;
	font-weight: 500;
}
.executive .nner {
	display: flex;
	margin-top: 50px;
}
.executive .nner .left {
	width: 56%;
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-weight: <weight>;
	font-style: normal;
	font-size: 16px;
	line-height: 2;
}
.executive .nner .right {
	width: 40%;
	margin-left: 4%;
}
@media screen and (max-width: 767px) {
	.elementor-top-section.elementor-element-14bda75 {
		background: url(/wp-content/uploads/executive_bg_sp.jpg) no-repeat right bottom;
		background-size: cover;
	}
	.executive .nner {
		display: block;
		margin-top: 20px;
	}
	.executive .nner .left {
		width: 100%;
		margin-top: 30px;
		text-align: center;
		font-size: 15px;
	}
	.executive .nner .right {
		width: 100%;
		margin-left: 0;
		margin-top: 30px;
	}
	.executive .tit {
		font-size: 56px;
		line-height: 1.0;
	}
	.executive .tit span {
		font-size: 18px;
		line-height: 1.9;
	}
}
/* =====================================
■FEATURES
===================================== */
.features {
	padding: 80px 0;
}
.featureItem {
	display: flex;
	align-items: center;
	gap: 70px;
	margin-bottom: 30px;
}
.featureItem.reverse {
	flex-direction: row-reverse;
}
.featureImg {
	width: 48%;
}
.featureImg img {
	width: 100%;
	display: block;
	border-radius: 3px;
}
.featureText {
	flex: 1;
}
.featureItem.odd .featureText {
	padding-right: 56px;
}
.featureItem.even .featureText {
	padding-left: 56px;
}
.featureText h3 {
	font-size: 36px;
	line-height: 140%;
	font-weight: 500;
	margin-bottom: 35px;
	color: #4B4B4B;
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-weight: <weight>;
	font-style: normal;
	text-align: center;
}
.featureText p {
	font-size: 16px;
	line-height: 180%;
	margin-bottom: 25px;
	color: #333;
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-weight: <weight>;
	font-style: normal;
}
.featureList {
	margin-top: 63px;
}
@media screen and (max-width: 1024px) and (min-width: 768px) {
	.featureText h3 {
		font-size: 28px;
	}
	.featureItem {
		gap: 40px;
	}
	.featureList {
		padding: 0 20px;
		box-sizing: border-box;
	}
	.featureItem.odd .featureText {
		padding-right: 6px;
	}
	.featureItem.even .featureText {
		padding-left: 6px;
	}
}
@media screen and (max-width:767px){
	.features {
		padding: 60px 20px;
	}
	.featureItem,
	.featureItem.reverse {
		flex-direction: column;
		gap: 30px;
		margin-bottom: 20px;
	}
	.featureImg {
		width: 100%;
	}
	.featureText h3 {
		font-size: 24px;
		margin-bottom: 20px;
	}
	.featureText p {
		font-size: 16px;
	}
	.featureItem.even .featureText {
		padding-left: 0;
	}
	.featureItem.odd .featureText {
		padding-right: 0;
	}
}
/* =====================================
■INFORMATION
===================================== */
.information {
	background: url(/wp-content/uploads/info_bg-scaled.jpg) no-repeat;
	background-size: cover;
	padding: 80px 0;
}
.informationInner {
	max-width: 1240px;
	margin: 0 auto;
	padding: 0 20px;
	box-sizing: border-box;
}
.hoursBox {
	max-width: 900px;
	margin: 0 auto;
	margin-top: 81px;
}
/* 診療時間 */
.hoursTable {
	width:100%;
	border-collapse:collapse;
}
.hoursTable thead th {
	background: #24427c;
	color: #fff;
	padding: 24px 10px;
	font-size: 20px;
	text-align: center;
}
.hoursTable thead th:first-child {
	width: 33%;
	border-radius: 5px 0 0 0;
}
.hoursTable thead th:last-child {
	width: 13%;
	border-radius: 0 5px 0 0;
}
.hoursTable tbody th,
.hoursTable tbody td {
	border-bottom: 1px solid #29477e;
	text-align: center;
	padding: 21px 5px;
	font-size: 20px;
	color: #6F6F6F;
	background: #fff;
}
.hoursTable tbody tr:last-child th,
.hoursTable tbody tr:last-child td {
	border-bottom: none;
	padding: 11px 5px;
}
.hoursTable tbody tr:last-child th {
	border-radius: 0 0 0 5px;
}
.hoursTable tbody tr:last-child td:last-child {
	border-radius: 0 0 5px 0;
}
.hoursTable tbody th {
	padding: 5px 5px 21px;
}
.hoursTable tbody tr:last-child th {
	padding: 5px 5px 21px;
}
.hoursTable tbody th img {
	width: 130px;
}
.hoursTable .open {
	color: #1F3D79;
	font-size: 20px;
}
.hoursTable .open2 {
	color: #1F3D79;
	font-size: 16px;
	line-height: 1.2;
}
.hoursTable .open2 img {
	width: 37px;
}
.hoursNote {
	margin-top: 25px;
	font-size: 16px;
	text-align: center;
	color: #000;
}
/* 医院情報 */
.clinicInfo {
	display: flex;
	gap: 50px;
	margin-top: 70px;
	align-items: flex-start;
	justify-content: space-between;
}
.clinicTable .dlA {
	align-items: center;
}
.clinicTable {
	width: 52%;
}
.clinicTable dl {
	display:flex;
	margin:0;
	border-top: 1px solid #1F3D79;
}
.clinicTable dl:last-child {
	border-bottom:1px solid #9aa5b8;
}

.clinicTable dt {
	width: 115px;
	padding: 12px 0 9px;
	color: #1F3D79;
	font-weight: 700;
	font-size: 16px;
	line-height: 180%;
}
.clinicTable dd {
	flex: 1;
	margin: 0;
	padding: 12px 0 9px;
	line-height: 1.8;
}
.map {
	position: relative;
	width: 48%;
	padding-top: 534px;
}
.map iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
	border: none;
}
@media screen and (max-width:767px){
	.information {
		padding: 50px 0;
	}
	.hoursBox {
		margin-top: 40px;
	}
	.informationInner .titWrap_h2 h2 {
		font-size: 46px;
	}
	.hoursTable {
		font-size:13px;
	}
	.hoursTable thead th {
		padding:15px 5px;
		font-size:11.5px;
	}
	.hoursTable tbody th,
	.hoursTable tbody td {
		padding:15px 5px;
		font-size:11.52px;
	}
	.clinicInfo {
		flex-direction:column;
		gap:30px;
	}
	.clinicTable,
	.map {
		width:100%;
	}
	.clinicTable dt {
		width:80px;
		font-size:13px;
	}
	.clinicTable dd {
		font-size:13px;
	}
	.hoursNote {
		text-align: left;
		font-size: 14px;
		margin-top: 11px;
	}
	.hoursTable .open {
		font-size: 11.52px;
	}
	.hoursTable .open2 {
		font-size: 9px;
		line-height: 1;
	}
	.informationInner .titWrap_h2 {
		margin-bottom: 20px;
	}
	.hoursTable tbody th img {
		width: 80px;
	}
}
/* =====================================
■初めて当院をご利用の方へ
===================================== */
.firstTime {
	padding: 80px 0;
}
.firstTime .firstTimeInner {
	max-width: 1240px;
	padding: 0 20px;
	margin: 0 auto;
	box-sizing: border-box;
	display:flex;
	justify-content: space-between;
}
.firstVisual {
	width: 48.6%;
	position: relative;
	overflow: hidden;
	background: url(/wp-content/uploads/first_img01.jpg) no-repeat;
	background-size: cover;
	display: flex;
	align-items: center;
	justify-content: space-evenly;
	border-radius: 5px;
}
.firstVisual img {
	width:100%;
	height:100%;
	object-fit:cover;
}
.firstTitle {
	color: #fff;
	font-size: 30px;
	text-align: center;
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
}
.firstTitle .en {
	font-size: 110px;
	line-height: 100%;
	letter-spacing: 0%;
	margin: 0;
	font-family: "Cormorant Infant", serif;
	font-optical-sizing: auto;
	font-style: normal;
	font-weight: 400;
	margin-bottom: 20px;
}
/* right */
.firstMenu {
	width:50%;
	display:flex;
	flex-direction:column;
	gap:16px;
}
.firstMenuItem {
	position: relative;
	display: flex;
	align-items: center;
	border: 1px solid #1F3D79;
	padding: 7px 12px;
	text-decoration:none;
	color: #1F3D79;
	border-radius: 5px;
}
.firstMenu .firstMenuItem:hover {
	text-decoration: none;
	opacity: 0.5;
}
.firstMenuItem .icon {
	width: 120px;
	flex-shrink:0;
}
.firstMenuItem .icon img {
	width: 120px;
	height:auto;
}
.firstMenuItem .text div {
	color: #1F3D79;
	font-weight: 500;
	font-size: 18px;
	line-height: 160%;
	position: relative;
	margin-bottom: 5px;
}
.firstMenuItem .text div p {
	position: absolute;
	content: "";
	top: 0;
	right: 35px;
}
.firstMenuItem .text div p .profileLinks_arrow {
	font-size: 9px;
	width: 16px;
	height: 16px;
	right: -24px;
	bottom: 4px;
}
.firstMenuItem .text div p .profileLinks_arrow img {
	width: 8.7px;
	height: 7.2px;
}
.firstMenuItem p {
	font-size: 14px;
	line-height: 180%;
	margin: 0;
	color: #1F3D79;
}
@media(max-width:768px){
	.firstTimeInner {
		flex-direction:column;
	}
	.firstMenuItem .text div p sub {
		display: none;
	}
	.firstVisual {
		width:100%;
		height:450px;
	}
	.firstTitle {
		font-size: 18px;
	}
	.firstTitle .en {
		font-size: 56px;
		margin-bottom: 10px;
	}
	.firstMenu {
		width: 100%;
		padding: 0;
		margin-top: 20px;
	}
	.firstMenuItem {
		padding:20px;
		min-height:auto;
	}
	.firstMenuItem .icon {
		width:60px;
		margin-right: 10px;
	}
	.firstMenuItem .icon img {
		width: 60px;
	}
	.firstMenuItem .text {
		padding-right:0;
	}
	.firstMenuItem p {
		font-size:13px;
	}
	.firstMenuItem .text div p .profileLinks_arrow {
		right: -31px;
		bottom: 0;
		top: 6px;
	}
}
/* =====================================
■アクセスの多いページをご案内
===================================== */
.elementor-top-section.elementor-element.elementor-element-d8d0b35 {
	margin-bottom: 23px;
}
.accessGuide {
	background: #F4F3EF;
	padding: 86px 20px 80px;
}
/* .accessGuideInner {
max-width: 620px;
margin:0 auto;
} */
.accessGuideInner .titWrap_h3 h3 {
	color: #333;
	line-height: 120%;
}
.accessGuideInner .titWrap_h3 p {
	color: #333;
	text-align: center;
	margin-top: 0;
}
/* 上面3个 */
.accessLinks {
	display:flex;
	margin:0 0 45px;
	padding:0;
	list-style:none;
	max-width: 620px;
	margin: 0 auto;
}
.accessLinks li {
	width:33.333%;
	border-right: 1px solid #D4DBDF;
	padding-top: 23px;
}
.accessLinks li:last-child {
	border:none;
}
.accessLinks a {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 25px;
	text-decoration: none;
	color: #1F3D79;
	font-size: 16px;
	font-weight: 700;
}
.accessLinks .icon {
	width: 100px;
	height: 100px;
}
.accessButtons .btna a:hover img {
	opacity: 1 !important;
}
.accessLinks img {
	width:100%;
	height:100%;
	object-fit:contain;
}
.accessLinks span:last-child {
	font-size:16px;
	font-weight:bold;
}
/* 下方按钮 */

.accessButtons {
	display: flex;
	gap: 25px;
	max-width: 716px;
	margin: 0 auto;
	margin-top: 55px;
}
.webBtn,
.telBtn {
	width:50%;
	height:70px;
	display:flex;
	align-items:center;
	justify-content:center;
	text-decoration:none;
}
/* web按钮 */
.webBtn {
	background:#fff;
	border:1px solid #24427c;
	color:#24427c;
	gap:20px;
	transition:.3s;
}
.webBtn .btnIcon img {
	width:28px;
}
/* hover */

.webBtn:hover {
	background:#24427c;
	color:#fff;
}
.webBtn:hover img {
	filter:brightness(0) invert(1);
}
.webBtn i {
	font-style:normal;
}
/* 电话 */
.telBtn {
	border:1px solid #24427c;
	color:#24427c;
	gap:20px;
}
.telText {
	display:flex;
	flex-direction:column;
	text-align:center;
	font-size:28px;
	letter-spacing:.08em;
}
.telText small {
	font-size:12px;
	letter-spacing:0;
}
.accessButtons.sp {
	display: none;
}
@media(max-width:768px){
	.accessLinks {
		flex-wrap:wrap;
	}
	.accessLinks li {
		width:33.33%;
	}
	.accessButtons {
		flex-direction:column;
	}
	.webBtn,
	.telBtn {
		width:100%;
	}
	.accessButtons .btna {
		margin-bottom: 20px;
	}
	.accessLinks .icon {
		width: 57px;
		height: 57px;
	}
	.accessLinks span:last-child {
		font-size: 13px;
		font-weight: 400;
	}
	.tel_txt {
		color: #333;
		font-size: 12px;
		text-align: center;
		margin-top: 10px;
	}
}
/* =====================================
■よくある質問
===================================== */
.elementor-element.elementor-element-58f6b2d {
	background: url(/wp-content/uploads/top_qa_bg-scaled.jpg) no-repeat;
	background-size: cover;
	padding: 183px 0;
}
.faqTop_Sec {
	max-width: 840px;
	margin: 0 auto;
	padding: 0 20px;
	box-sizing: border-box;
}
.faqTop_Sec .nner {
	background: #fff;
	padding: 40px 85px;
}
.faqTop_Sec .titWrap_h3 h3 {
	color: #333;
}
.faqTop_Sec .titWrap_h3 p {
	color: #333;
	text-align: center;
	margin-top: 40px;
	margin-bottom: 42px;
}
.faqTop_Sec .btn {
	text-align: center;
	margin-top: 50px;
}
/* よくある質問
------------------------------------- */
.faqSection {
	background: #F8F8F8;
	padding: 74px 0 64px;
}
/* FAQ */
.faqBox {
	width: 100%;
}
/* .faqItem {
border-bottom: 24px solid #f8f8f8;
} */
/* Question */
.faqQuestion {
	display: flex;
	align-items: center;
	position: relative;
	padding: 18px 16px;
	background: #f6f6f3;
	cursor: pointer;
}
.faqQuestion p {
	margin: 0;
	font-size: 18px;
	font-weight: 700;
	color: #1F3D79;
	line-height: 1.6;
}
/* Q / A icon */
.faqIcon {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	margin-right: 18px;
	font-size: 12px;
	font-weight: 500;
}
.faqQuestion .faqIcon {
	background: #214584;
	color: #fff;
}
.faqAnswer .faqIcon {
	background: #dce2e6;
	color: #333;
}
/* Answer */
.faqAnswer {
	display: none;
	align-items: center;
	padding: 16px;
	background: #fff;
}
.faqAnswer.is-open {
	display: flex;
}
.faqAnswer p {
	margin: 0;
	font-size: 15px;
	color: #333;
	line-height: 1.8;
	flex: 1;
}
/* Arrow */
.faqArrow {
	position: absolute;
	right: 25px;
	top: 50%;
	width: 9px;
	height: 9px;
	border-right: 2px solid #214584;
	border-bottom: 2px solid #214584;
	transform: translateY(-50%) rotate(45deg);
	transition: .3s ease;
}
/* Click active */
.faqQuestion.active .faqArrow {
	transform: translateY(-30%) rotate(225deg);
}
/* hover */
.faqQuestion:hover {
	opacity: .8;
}
/* SP */
@media screen and (max-width: 767px) {
	.faqItem {
		border-bottom-width: 5px;
	}
	.faqQuestion {
		padding: 14px;
	}
	.faqQuestion p {
		font-size: 15px;
	}
	.faqAnswer {
		padding: 14px;
	}
	.faqAnswer p {
		font-size: 14px;
		padding-right: 10px;
	}
	.faqIcon {
		width: 34px;
		height: 34px;
		margin-right: 12px;
		font-size: 14px;
	}
	.faqArrow {
		right: 18px;
		width: 8px;
		height: 8px;
	}
	.elementor-element.elementor-element-58f6b2d {
		background: none;
		padding: 0;
	}
	.faqTop_Sec .nner {
		padding: 0;
	}
	.faqTop_Sec .titWrap_h3 p {
		margin-top: 10px;
		margin-bottom: 22px;
	}
	.faqTop_Sec {
		margin-top: 50px;
		margin-bottom: 50px;
	}
}
/* =====================================
■よくある質問の下　　NEWS
===================================== */
.newsSec_bottom {
	background: #F2F6F9;
	padding: 80px 0;
}
.newsSec_bottom > .elementor-container.elementor-column-gap-default {
	max-width: 1240px !important;
	margin: 0 auto;
	padding: 0 20px;
	box-sizing: border-box;
}
.newsSec_bottom.newsSec .newsTit {
	width: 21%;
}
.newsSec_bottom.newsSec .newsContent {
	width: 79% !important;
}
.newsSec_bottom.newsSec .newsTit h2 {
	color: #333333;
	font-weight: 500;
	font-size: 40px;
	line-height: 100%;
	font-family: "Cormorant Infant", serif;
	font-optical-sizing: auto;
	font-style: normal;
}
.newsSec_bottom.newsSec .newsTit h2 sub {
	font-size: 18px;
	font-weight: 500;
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-style: normal;
	margin-top: 20px;
}
.newsSec_bottom .newsLink a {
	background: #1F3D79;
	color: #fff;
	position: relative;
}
.newsSec_bottom.newsSec .newsLink {
	width: 100%;
	padding-left: 0;
	text-align: center;
	margin-top: 20px;
}
.newsSec_bottom .newsLink a:before {
	display: none;
}
.newsSec_bottom .newsLink a .arrow {
	position: absolute;
	width: 16px;
	height: 16px;
	border: 1px solid #fff;
	border-radius: 50%;
	top: 7px;
	right: 14px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.newsSec_bottom .newsLink a .arrow img {
	width: 8.7px;
	height: 7.2px;
}
.executive .nner .left .txt {
	font-size: 18px;
	margin-top: 35px;
}
.newsSec_bottom.newsSec .newsContent:after {
	position: absolute;
	content: "";
	background: #DDDEDF;
	height: 100%;
	width: 1px;
	height: 100%;
	right: 0;
	top: 0;
}
.newsSec_bottom .newsContent dl:first-child {
	margin-bottom: 22px;
}
@media screen and (max-width: 767px) {
	.newsSec_bottom .elementor-row {
		display: block;
	}
	.newsSec_bottom.newsSec .newsTit {
		width: 100%;
	}
	.newsSec_bottom.newsSec .newsContent {
		width: 100% !important;
	}
	.newsSec_bottom.newsSec .newsContent:before,
	.newsSec_bottom.newsSec .newsContent:after {
		display: none;
	}
	.newsSec_bottom.newsSec .newsLink {
		text-align: left;
	}
	.newsSec_bottom .clearfix.newsBox:before {
		display: none;
	}
	.newsSec_bottom .post-category {
		margin-left: 0;
	}
	.newsSec_bottom .newsContent {
		margin-top: 10px;
	}
	.newsSec_bottom.newsSec .newsTit h2 sub {
		position: absolute;
		content: "";
		top: -7px;
		right: 0;
	}
	.newsSec_bottom.newsSec .newsContent {
		margin-bottom: 30px;
	}
	.executive .nner .left .txt {
		font-size: 15px;
	}
}