@charset "utf-8";
/* =====================================
■ Base
===================================== */
.elementor-section.elementor-section-boxed > .elementor-container {
	padding: 0 20px;
}


/* =====================================
■ mainView
===================================== */
.main-img {
	position: relative;
}
.main-img .swiper-slide img {
	width:100%; height:auto;
}
.main-img__catch-copy {
	width: 508px;
	position: absolute;
	bottom: 10%;
	left: 10%;
	z-index: 10;
}
.main-img__catch-copy img {
	height: 238px;
}
.announce {
	position: absolute;
	right: 15px;
	bottom: 15px;
	z-index: 10;
}
.announce__item {
	background-color: #fff;
	width: 270px;
}
.announce__item a {
	padding: 16px;
	font-size: 1.5rem;
	font-family: source-han-serif-japanese, serif;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 1.4;
	width: 100%;
	box-sizing: border-box;
}
.announce__item:not(:last-child) {
	margin-bottom: 8px;
}
.announce__item:nth-child(1) {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
}
.announce__item:nth-child(2) a {
	display: block;
	text-indent: 2em;
	position: relative;
}
.announce__item:nth-child(2) a::before {
	content: '';
	position: absolute;
	width: 8px;
	height: 8px;
	border-top: 1px solid #dd4b07;
	border-right: 1px solid #dd4b07;
	transform: rotate(135deg);
	top: 50%;
	margin-top: -8px;
}
.announce__item:nth-child(2) a::before {
	right: 17px;
	border-color: #a34b07;
}
.announce__icon {
	width: 34px;
	height: 34px;
	margin: 0 auto 8px;
}
.top-main-visual-case {
	display: grid;
	grid-template-columns: 30% 1fr;
	gap: 16px;
	padding: 8px  !important;
	align-items: center;
	position: relative;
	font-family: source-han-serif-japanese, serif;
	font-weight: 400;
}
.top-main-visual-case:before {
	content: "";
	position: absolute;
	width: 8px;
	height: 8px;
	right: 22px;
	border-top: 1px solid #dd4b07;
	border-right: 1px solid #dd4b07;
	transform: rotate(45deg) translateY(-50%);
	top: 50%;
	z-index: 1;
}
.top-main-visual-case .text {
	text-align: left;
	font-weight: 500;
}
.top-main-visual-case .image {
	width: 100%;
	height: auto;
	display: block;
}
.top-main-visual-case .image > img {
	width: 100%;
	height: auto;
	display: block;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	overflow: hidden;
}

@media screen and (max-width: 767px) {
	.main-img__catch-copy {
		width: 207px;
		bottom: 30px;
		left: 20px;
	}
	.announce {
		display: none;
	}
}


/* =====================================
■ Block H1
===================================== */
.block-h1 {
	margin-bottom: 65px;
}
.block-h1__title {
	font-size: 3rem;
	font-family: source-han-serif-japanese, serif;
	letter-spacing: 0.13em;
	line-height: 1.06667;
	text-align: center;
	position: relative;
	margin: 0 0 12%;
}
.block-h1__title .elementor-heading-title {
	font-weight: 500;
}
.block-h1__hr {
	width: 250px;
	margin: 0 auto;
	border-top-color: rgba(128, 128, 128, 0.25);
}

@media screen and (max-width: 767px) {
	.block-h1 {
		margin: 0 16px 7%;
	}
	.block-h1__title {
		font-size: 2.2rem;
		line-height: 1.8;
		margin: 0 0 24px 0;
	}
	.block-h1__hr {
		width: 125px;
	}
}


/* =====================================
■ slickSlide
===================================== */
/*============= slickCSS　===============*/
.slick-slider{position:relative;display:block;box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none;-khtml-user-select:none;touch-action:pan-y;-webkit-tap-highlight-color:transparent}.slick-list{position:relative;display:block;overflow:hidden;margin:0;padding:0}.slick-list:focus{outline:none}.slick-list.dragging{cursor:pointer;cursor:hand}.slick-slider .slick-track,.slick-slider .slick-list{transform:translate3d(0,0,0)}.slick-track{position:relative;top:0;left:0;display:block;margin-left:auto;margin-right:auto}.slick-track:before,.slick-track:after{display:table;content:''}.slick-track:after{clear:both}.slick-loading .slick-track{visibility:hidden}.slick-slide{display:none;float:left;height:100%;min-height:1px}[dir='rtl'] .slick-slide{float:right}.slick-slide img{display:block}.slick-slide.slick-loading img{display:none}.slick-slide.dragging img{pointer-events:none}.slick-initialized .slick-slide{display:block}.slick-loading .slick-slide{visibility:hidden}.slick-vertical .slick-slide{display:block;height:auto;border:1px solid transparent}.slick-arrow.slick-hidden{display:none}
.slick-loading .slick-list{background:#fff}.slick-prev,.slick-next{font-size:0;line-height:0;position:absolute;top:50%;display:block;width:20px;height:20px;padding:0;transform:translate(0,-50%);cursor:pointer;color:transparent;border:none;outline:none;background:transparent}.slick-prev:hover,.slick-prev:focus,.slick-next:hover,.slick-next:focus{color:transparent;outline:none;background:transparent}.slick-prev:hover:before,.slick-prev:focus:before,.slick-next:hover:before,.slick-next:focus:before{opacity:1}.slick-prev.slick-disabled:before,.slick-next.slick-disabled:before{opacity:.25}.slick-prev:before,.slick-next:before{font-family:'slick';font-size:20px;line-height:1;opacity:.75;color:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.slick-prev{left:-25px}[dir='rtl'] .slick-prev{right:-25px;left:auto}.slick-prev:before{content:'←'}[dir='rtl'] .slick-prev:before{content:'→'}.slick-next{right:-25px}[dir='rtl'] .slick-next{right:auto;left:-25px}.slick-next:before{content:'→'}[dir='rtl'] .slick-next:before{content:'←'}.slick-dotted.slick-slider{margin-bottom:30px}.slick-dots{position:absolute;bottom:-25px;display:block;width:100%;padding:0;margin:0;list-style:none;text-align:center}.slick-dots li{position:relative;display:inline-block;width:20px;height:20px;margin:0 5px;padding:0;cursor:pointer}.slick-dots li button{font-size:0;line-height:0;display:block;width:20px;height:20px;padding:5px;cursor:pointer;color:transparent;border:0;outline:none;background:transparent}.slick-dots li button:hover,.slick-dots li button:focus{outline:none}.slick-dots li button:hover:before,.slick-dots li button:focus:before{opacity:1}.slick-dots li button:before{font-family:'slick';font-size:30px;line-height:20px;position:absolute;top:0;left:0;width:20px;height:20px;content:'•';text-align:center;opacity:.25;color:#000;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.slick-dots li.slick-active button:before{opacity:.75;color:#000}

#slickSlide {
	margin: 24px auto;
}
.slick-slide {
	margin: 0 8px !important;
}
#slickSlide > li:not(nth-child(-n+2)) {
	display: none;
}

@media all and (min-width:768px) {
	.slidSection {
		max-width: 931px !important;
		margin: 0 auto;
	}
	.slider8 {
		margin-bottom: 50px !important;
	}
}

@media screen and (max-width: 767px) {
	.slick-slide {
		margin: 0 !important;
	}
	#slickSlide > li:not(nth-child(-n+2)) {
		display: initial;
	}
	#slickSlide > li:not(:first-child) {
		display: none;
	}
	.slick-dots {
		bottom: -12px;
	}
	.slick-dots li button:before {
		font-size: 20px !important;
	}
	.slider8 img {
		margin-bottom: 10px;
	}
}


/* =====================================
■ 赤坂で上質の歯科治療をお約束いたします。
===================================== */
.top-banner-list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-gap: 50px 40px;
}
.top-banner-list li a figure {
	padding: 0 8px;
}
.top-banner-list__item figure:hover {
	opacity: 0.7;
	transition: 0.5s;
}
.top-banner-list__item--col2 {
	grid-column: 1/3;
}
.top-banner-list__item02 {
	position: relative;
	z-index: 1;
}
.top-banner-list__item02 > .inner {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 0;
}
.top-banner-lineup > .link {
	transition: ease .3s;
}
.top-banner-lineup > .link:hover{
	background-color: rgba(255, 255, 255, .7);
	transition: ease .3s;
}

@media screen and (max-width: 767px) {
	.top-banner {
		margin-bottom: 80px;
	}
	.top-banner-list {
		display: block;
	}
	.top-banner-list__item {
		margin-bottom: 10px;
		display: block;
	}
	.top-banner-list li a figure {
		padding: 0;
	}
}


/* =====================================
■ テクニック
===================================== */
.top-tecnique {
	margin: auto;
	padding: 120px 0;
}
.top-tecnique-box {
	margin: auto;
	display: grid;
	grid-template-columns: 1fr 57%;
	gap: 24px;
	justify-content: center;
	align-items: center;
}
.top-tecnique-text {
	font-family: source-han-serif-japanese, serif;
	font-weight: 500;
	letter-spacing: 0.13em;
	line-height: 2.4;
	text-align: center;
	margin-bottom: 40px;
}
.top-tecnique-text a {
	margin: 40px auto 0;
}
.top-tecnique-image {
	width: 100%;
	height: auto;
	display: block;
	padding: 16px;
	border: .5px solid #ccc;
	background-color: #fff;
	margin-bottom: 48px !important;
}
.top-tecnique-image	> img {
	width: 100%;
	height: auto;
	display: block;
}

@media all and (min-width: 1025px) {
	.top-tecnique-text {
		font-size: min(3.73vw, 2.4rem);
	}
}

@media all and (max-width: 1024px) {
	.top-tecnique-text {
		font-size: min(3.73vw, 1.8rem);
	}
}

@media all and (max-width: 767px) {
	.top-tecnique {
		padding: 56px 0;
	}
	.top-tecnique-box {
		grid-template-columns: 1fr;
		margin-top: 24px;
	}
	.top-tecnique-text {
		text-align: left;
		font-size: min(3.73vw, 1.8rem);
		margin-bottom: 24px;
		padding-left: 16px;
		line-height: 2;
	}
	.top-tecnique-image {
		border: 0;
		padding: 32px 20px 0;
		border-top: .5px solid #ccc;
		width: min(100% + 40px);
		margin: 0 0 48px -20px !important;
	}
}


/* =====================================
■ 歯科治療例
===================================== */
.top-case-title {
	font-size: min(, 2.8rem);
}
.top-blog {
	padding: 90px 0 135px;
	background: url(/wp-content/uploads/top-bg_photo01.jpg) no-repeat center center/cover;
}
.top-blog__title {
	margin-bottom: 1em;
	text-align: center;
}
.top-blog__title .title {
	font-size: 3.2rem;
	font-family: source-han-serif-japanese, serif;
	font-weight: 500;
	letter-spacing: 0.15em;
	text-align: center;
	color: #fff;
}
.top-blog__title .title > span {
	font-size: min(3.73vw, 1.8rem);
	display: flex;
	justify-content: center;
	margin: 0 auto 24px;
	padding-bottom: 12px;
	letter-spacing: .8px;
	font-weight: 500;
	position: relative;
}
.top-blog__title .title > span:before {
	content: "";
	position: absolute;
	left: 50%;
	bottom: -8px;
	transform: translateX(-50%);
	width: min(45vw, 200px);
	height: 1px;
	background-color: #fff;
}
.top-blog__title--en {
	display: block;
	color: #fff;
	font-size: 2rem;
	font-family: cormorant-garamond, Palatino, source-han-serif-japanese, serif;
	letter-spacing: 0.026em;
	line-height: 3;
	font-weight: 400;
}
.top-blog-list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 8px;
	margin: 0 auto 49px;
	max-width: 1100px;
}
.top-blog-item {
	text-align: center;
	background-color: #fff;
	margin-bottom: 0;
}
.top-blog-item a {
	display: block;
}
.top-blog-item-list {
	display: grid !important;
	grid-template-columns: 1fr;
	gap: 0;
}
.top-blog-item__photo {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
}
.top-blog-item__photo img {
	width: 100%;
	height: auto;
	aspect-ratio: 168 / 100;
	object-fit: cover;
}
.top-blog-item__group {
	padding: 16px 32px 16px 16px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	position: relative;
}
.top-blog-item__group:before {
	content: "";
	position: absolute;
	width: 8px;
	height: 8px;
	border-top: 1px solid #ccc;
	border-right: 1px solid #ccc;
	transform: rotate(45deg) translateY(-50%);
	top: 50%;
	right: 16px;
	z-index: 2;
}
.top-blog-item__date {
	font-size: 1.4rem;
	font-weight: 600;
	color: #dd4b07;
	margin-bottom: 4px;
	text-align: left;
}
.top-blog-item-category {
	background-color: #dd4b07;
	margin-bottom: 8px;
	border-radius: 14px;
	display: flex;
	justify-content: center;
	max-width: 120px;
}
.top-blog-item-category > span {
	line-height: 24px;
	color: #fff;
	font-size: 1.2rem;
	padding: 0 12px;
	display: -webkit-box;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
}
.top-blog-item__text {
	text-align: left;
	color: #282828;
	font-size: 1.4rem;
	line-height: 1.4;
	display: -webkit-box;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	height: 40px;
}
.top-blog__btn {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-family: source-han-serif-japanese, serif;
	font-weight: 400;
	font-size: 1.6rem;
	letter-spacing: 0.08em;
	width: 250px;
	height: 55px;
	background: #fff;
	color: pallet('text');
	position: relative;
	white-space: nowrap;
	justify-content: center;
	margin: 0 auto;
}
.top-blog__btn::before {
	content: '';
	position: absolute;
	width: 8px;
	height: 8px;
	border-top: 1px solid #dd4b07;
	border-right: 1px solid #dd4b07;
	transform: rotate(45deg);
	top: 50%;
	margin-top: -8px;
}
.top-blog__btn::before {
	right: 16px;
	margin-top: -4px;
}

@media screen and (max-width: 767px) {
	.top-blog {
		padding: 58px 0 50px;
		background: url(/wp-content/uploads/top-bg_photo01_sp.jpg) no-repeat center center/cover;
	}
	.top-blog__title {
		margin-bottom: 1.2em;
	}
	.top-blog__title .title {
		font-size: 2.4rem;
	}
	.top-blog__title--en {
		font-size: 1.7rem;
		letter-spacing: 0.025em;
		line-height: 2.35294;
	}
	.top-blog-list {
		grid-template-columns: repeat(1, 1fr);
		margin-bottom: 60px;
	}
	.top-blog-item {
		text-align: left;
	}
	.top-blog-item a {
		display: flex;
	}
	.top-blog-item-list {
		grid-template-columns: 35% 1fr;
	}
	.top-blog-item__photo {
		width: 100%;
		flex: none;
	}
	.top-blog-item__photo img {
		aspect-ratio: 1 / 1;
	}
	.top-blog-item__group {
		padding: 0 32px 0 16px;
	}
	.top-blog-item__text {
		-webkit-line-clamp: 3;
		height: initial;
	}
	.top-blog__btn {
		font-size: 1.5rem;
		position: relative;
	}
	.top-blog__btn::before {
		content: '';
		position: absolute;
		width: 6px;
		height: 6px;
		border-top: 1px solid #dd4b07;
		border-right: 1px solid #dd4b07;
		transform: rotate(45deg);
		top: 50%;
		margin-top: -6px;
	}
	.top-blog__btn::before {
		right: 16px;
		margin-top: -2px;
	}
}


/* =====================================
■ philosophy
===================================== */
/* title */
.philosophy__title,
.philosophy__title02 {
	text-align: center;
	font-size: 3.2rem;
	font-family: source-han-serif-japanese, serif;
	font-weight: 500;
	letter-spacing: 0.15em;
	text-align: center;
	color: #282828;
	position: relative;
}
.philosophy__title {
	margin-top: 0;
	margin-bottom: 1em;
}
.philosophy__title  .title {
	font-weight: 500;
}
.philosophy__title02 {
	margin-top: 160px;
	margin-bottom: 1em;
}
.philosophy__title02:before,
.philosophy__title02:after {
	content: "";
	position: absolute;
	left: 50%;
	z-index: -1;
	width: min(70vw, 300px);
	height: 40px;
	transform: translateX(-50%);
	opacity: .07;
}
.philosophy__title02:before {
	background: url("/wp-content/uploads/top/headline-decoration.svg") no-repeat center center / 100%;
	top: -56px;
}
.philosophy__title02:after {
	bottom: -56px;
	background: url("/wp-content/uploads/headline-decoration.svg") no-repeat center center / 100%;
}
.philosophy__title--en {
	display: block;
	font-size: 2rem;
	font-family: cormorant-garamond, Palatino, source-han-serif-japanese, serif;
	letter-spacing: 0.026em;
	line-height: 3;
	font-weight: 400;
}

@media screen and (max-width: 767px) {
	.philosophy__title,
	.philosophy__title02 {
		font-size: 2.4rem;
		margin-bottom: 0;
	}
	.philosophy__title {
		margin-top: 0;
	}
	.philosophy__title02 {
		font-size: 2.2rem;
		margin-top: 104px;
		margin-bottom: 48px;
	}
	.philosophy__title--en {
		font-size: 1.7rem;
		letter-spacing: 0.025em;
		line-height: 2.35294;
	}
	.philosophy__title--mt {
		margin: 0 auto 40px;
	}
}

/* media */
.philosophy__media {
	display: grid;
	grid-template-columns: 55% 1fr;
	gap: 0;
	align-items: center;
	max-width: 1000px;
	margin: auto;
	position: relative;
	padding: 0 20px;
}

@media screen and (max-width: 767px) {
	.philosophy__media {
		grid-template-columns: 1fr;
		padding: 0;
	}
}

/* name */
.philosophy__name {
	font-size: 1.8rem;
	font-family: source-han-serif-japanese, serif;
	font-weight: 400;
	letter-spacing: 0.13em;
	line-height: 2.4;
}
.philosophy__name .inner {
	display: inline;
}
.philosophy__name .inner .director {
	font-size: 1.9rem;
}
.philosophy__name .inner .name {
	font-size: 3.05rem;
	font-weight: 500;
}
.philosophy__name .inner .read {
	font-size: min(3.46vw, 1.4rem);
	letter-spacing: 0.68px;
	display: inline-block;
	padding-left: 8px;
	font-family: cormorant-garamond, Palatino, source-han-serif-japanese, serif;
}

@media screen and (max-width: 767px) {
	.philosophy__name {
		font-size: 1.4rem;
		text-align: left;
	}
	.philosophy__name .inner {
		display: inline-block;
		margin-bottom: 32px;
		padding-left: 16px;
	}
	.philosophy__name .inner .director {
		font-size: 1.5rem;
	}
	.philosophy__name .inner .name {
		font-size: 2.05rem;
		line-height: 1.4;
	}
}

@media all and (min-width: 1025px) {
	.text {
		left: 0;
		bottom: 80px;
	}
}

/* btn */
.philosophy__btn {
	margin: 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-family: source-han-serif-japanese, serif;
	font-weight: 400;
	font-size: 1.6rem;
	letter-spacing: 0.08em;
	width: 300px;
	height: 50px;
	background: #e24b07;
	color: #fff;
	white-space: nowrap;
	position: relative;
}
.philosophy__btn::before {
	content: '';
	position: absolute;
	width: 5px;
	height: 5px;
	border-top: 1px solid #dd4b07;
	border-right: 1px solid #dd4b07;
	transform: rotate(45deg);
	top: 50%;
	margin-top: -5px;
	border-color: #fff;
	right: 16px;
	margin-top: -3px;
}

@media screen and (max-width: 767px) {
	.philosophy__btn {
		font-size: 1.5rem;
		width: 250px;
		height: 50px;
		position: relative;
		padding-bottom: 4px;
		box-sizing: border-box;
		margin: 56px auto 0;
	}
	.philosophy__btn::before {
		content: '';
		position: absolute;
		width: 4px;
		height: 4px;
		border-top: 1px solid #dd4b07;
		border-right: 1px solid #dd4b07;
		transform: rotate(45deg);
		top: 50%;
		margin-top: -4px;
	}
	.philosophy__btn::before {
		right: 12px;
		border-color: #fff;
		margin-top: -3px;
	}
}

/* list */
.philosophy__text {
	font-size: 2rem;
	font-family: source-han-serif-japanese, serif;
	font-weight: 400;
	letter-spacing: 0.13em;
	line-height: 1.7;
	text-align: center;
}
.philosophy__Certificate {
	margin-bottom: 80px;
	max-width: 632px;
}
.philosophy-list {
	margin-bottom: 116px;
	width: calc(100% + 40px);
	text-align: center;
	margin-left: -22px;
}
.philosophy-item {
	display: inline-block;
	width: 340px;
	margin: 17px;
	position: relative;
	box-shadow: 4px 4px 14px 0px rgba(0, 0, 0, 0.1);
	padding: 0;
	background-color: #fff;
}
.philosophy-item:first-child {
	position: relative;
	margin-bottom: 0;
}
.philosophy-item a {
	display: block;
	position: relative;
	z-index: 2;
	padding: 0 0 16px 0;
}
.philosophy-item__inner {
	display: flex;
	flex-direction: column;
	height: 100%;
	margin: 0 auto;
}
.philosophy-item__title {
	color: #333333;
	font-size: 1.8rem;
	text-align: center;
	font-family: source-han-serif-japanese, serif;
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1.4;
	display: flex;
	height: 80px;
	align-items: center;
	justify-content: center;
}
.philosophy-item__title span {
	font-weight: 700;
}
.philosophy-item__text {
	width: 90%;
	margin: 0 auto;
	font-size: 1.3rem;
	letter-spacing: .05rem;
	line-height: 1.875;
	text-align: justify;
}

@media screen and (max-width: 767px) {
	.philosophy__text {
		font-size: 1.6rem;
		line-height: 2.4;
		text-align: left;
		margin-bottom: 8px;
	}
	.philosophy__Certificate {
		margin-bottom: 44px;
	}
	.philosophy-list {
		margin-left: 0;
		margin-bottom: 75px;
		width: 100%;
	}
	.philosophy-item {
		margin: 0 auto 24px;
		display: block;
		width: 100%;
	}
	.philosophy-item:first-child {
		position: relative;
		margin-bottom: 24px;
	}
	.philosophy-item::after {
		z-index: 1;
		height: 200px;
		width: 100%;
		top: 0px;
		left: 0px;
	}
	.philosophy-item__inner {
		padding: 0 0 0.5em;
		height: 85%;
	}
	.philosophy-item__title {
		font-size: 1.9rem;
		font-weight: 700;
		padding-top: 0;
	}
	.philosophy-item__text {
		width: 100%;
		font-size: 1.4rem;
		letter-spacing: 0.08em;
		line-height: 1.73333;
		padding: 0 20px;
	}
}

@media screen and (max-width: 375px) {
	.philosophy-item__title {
		font-size: 4.53vw;
		height: 72px;
		font-weight: 600 !important;
	}
	.philosophy-item__text {
		font-size: 3.73vw;
		padding: 0 5.33vw;
	}
}

/* banne 01 */
.philosophy img {
	height: auto;
}
.philosophy-banner01 {
	padding: 40px;
	height: 245px;
	box-sizing: border-box;
	margin-bottom: 30px;
	display: flex;
	align-items: center;
	box-shadow: 0px 0px 20px #d1d2d2;
	background: #fff url(/wp-content/uploads/top-banner01_1.png) no-repeat right center/cover;
}
.philosophy-banner01__photo {
	width: 207px;
	margin-right: 55px;
}
.philosophy-banner01__heading {
	font-size: 3.4rem;
	margin-bottom: 1em;
	font-family: source-han-serif-japanese, serif;
	font-weight: 400;
	letter-spacing: 0.05em;
}

@media screen and (max-width: 767px) {
	.philosophy-banner01 {
		display: block;
		height: auto;
		padding: 20px;
		margin-bottom: 39px;
		box-shadow: 0px 0px 17px #d1d2d2;
		background: #fff url(/wp-content/uploads/top-banner01_1_sp.png) no-repeat right center/cover;
	}
	.philosophy-banner01__photo {
		margin-right: 9px;
		width: 104px;
	}
	.philosophy-banner01__group {
		display: flex;
		align-items: center;
		margin-bottom: 1em;
	}
	.philosophy-banner01__heading {
		font-size: 2.2rem;
	}
	.philosophy-banner01__desc {
		font-size: 1.5rem;
	}
}

/* banne 02 */
.philosophy-banner02 {
	padding: 30px;
	box-sizing: border-box;
	height: 245px;
	margin-bottom: 80px;
	display: flex;
	align-items: center;
	background-color: #f8f8f7;
	text-align: center;
}
.philosophy-banner02__photo {
	width: 320px;
	margin-right: 55px;
}
.philosophy-banner02__list {
	background: url(/wp-content/uploads/metalfree.png) no-repeat center center/contain;
}
.philosophy-banner02__heading {
	font-size: 2.8rem;
	margin-bottom: 1em;
	font-family: source-han-serif-japanese, serif;
	font-weight: 400;
	letter-spacing: 0.05em;
}

@media screen and (max-width: 767px) {
	.philosophy-banner02 {
		height: auto;
		margin-bottom: 24px;
		padding: 14px 10px;
		display: block;
		text-align: left;
	}
	.philosophy-banner02__heading {
		font-size: 1.8rem;
		margin-bottom: 0.5em;
		line-height: 1.2;
	}
	.philosophy-banner02__photo {
		margin-right: 9px;
		width: 140px;
	}
	.philosophy-banner02__group {
		display: flex;
		align-items: center;
		margin-bottom: 1em;
	}
	.philosophy-banner02__desc {
		font-size: 1.5rem;
	}
}

/* qualification */
.philosophy__qualification {
	font-family: source-han-serif-japanese, serif;
	font-weight: 400;
	letter-spacing: 0.13em;
	line-height: 1.6;
	white-space: nowrap;
	position: relative;
	padding-left: 16px;
	text-align: left;
}
.philosophy__qualification:before {
	content: "・";
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
}

@media screen and (min-width: 1025px) {
	.philosophy__qualification {
		font-size: min(3.2vw, 1.5rem);
	}
}

@media screen and (max-width: 1024px) {
	.philosophy__qualification {
		font-size: min(3.2vw, 1.3rem);
	}
}

@media screen and (max-width: 767px) {
	.philosophy__qualification {
		font-size: min(3.2vw, 1.3rem);
	}
}


/* -------------------------------------
* 院長紹介
------------------------------------- */
.top-philosophy {
	padding: 90px 0 0;
}
.top-philosophy-image-box {
	position: relative;
}
.top-philosophy-image-box .text {
	position: absolute;
	z-index: 1;
}
.top-philosophy-name-box {
	margin: 0 auto;
	text-shadow: 0px 0px 10px rgba(255, 255, 255, 1);
	padding: 0;
}
.top-philosophy-image {
	width: 100%;
	height: auto;
	display: block;
	overflow: hidden;
}
.top-philosophy-image > img {
	width: 100%;
	height: auto;
	display: block;
}
.top-philosophy-wrapper {
	position: relative;
}

@media screen and (max-width: 1024px) {
	.top-philosophy-image-box .text {
		bottom: 40px;
	}
	.top-philosophy-wrapper {
		right: 5vw;
	}
}

@media screen and (max-width: 767px) {
	.top-philosophy {
		padding: 56px 0;
	}
	.top-philosophy-image-box .text {
		right: 0;
		bottom: 40px;
	}
	.top-philosophy-name-box {
		border: 0;
	}
	.top-philosophy-name-box >.text {
		width: 80%;
		margin: auto;
	}
	.top-philosophy-name-box .philosophy__btn {
		margin: 56px auto 0;
	}
	.top-philosophy-image {
		width: calc(100% + 40px);
		margin: 0 0 0 -20px !important;
	}
	.top-philosophy-image > img {
		width: 70%;
		margin-left: min(-16vw, 60px);
	}
	.top-philosophy-wrapper {
		right: initial;
	}
}


/* -------------------------------------
* 選ばれる理由
------------------------------------- */
.top-reason {
	padding: 120px 20px;
	background-color: #f5f4f2;
	box-sizing: border-box;
}
.top-philosophy-list {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 16px;
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
}
.top-philosophy-list .philosophy-item {
	width: 100%;
	margin: 0;
}

@media screen and (max-width: 767px) {
	.top-reason {
		padding: 56px 0;
	}
	.top-philosophy-list {
		grid-template-columns: repeat(1, 1fr);
		padding: 0 20px;
		gap: 16px;
	}
}


/* =====================================
■ specialty
===================================== */
.specialty {
	background-color: #eae7e4;
	padding: 74px 0 86px;
}

@media screen and (max-width: 767px) {
	.specialty {
		padding: 50px 0;
	}
}

/* hospitality */
.specialty-hospitality {
	margin-bottom: 49px;
	background: url(/wp-content/uploads/top-specialty_bg.webp) no-repeat right center/cover;
	height: 420px;
	text-align: center;
	padding-left: 43px;
	display: flex;
	align-items: center;
}
.specialty-hospitality__content {
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 550px;
	margin: 0;
}
.specialty-hospitality__title {
	margin-bottom: 20px;
}
.specialty-hospitality__title .title {
	font-size: 2.8rem;
	font-family: source-han-serif-japanese, serif;
	font-weight: 500;
	letter-spacing: 0.15em;
	line-height: 0.875;
}
.specialty-hospitality__text {
	letter-spacing: 0.08em;
	line-height: 1.73333;
	margin-bottom: 40px;
}
.specialty-hospitality__list {
	display: flex;
	align-items: center;
}
.specialty-hospitality__item {
	font-size: 1.5rem;
	font-family: source-han-serif-japanese, serif;
	font-weight: 400;
	letter-spacing: 0.1em;
	line-height: 1.26667;
}
.specialty-hospitality__item--em {
	margin-top: 4px;
	display: block;
	color: #e24b07;
	font-size: 2.4rem;
	line-height: 1.125;
}
.specialty-hospitality__item--line {
	display: block;
	background-color: rgba(128, 128, 128, 0.25);
	width: 1px;
	height: 86px;
	transform: rotate(25deg);
	margin: 0 2em;
}

@media screen and (max-width: 767px) {
	.specialty-hospitality {
		margin-bottom: 42px;
		background: #fff url(/wp-content/uploads/top-specialty_bg_sp.webp) no-repeat bottom center/cover;
		height: auto;
		padding: 45px 0 240px 0;
		display: block;
	}
	.specialty-hospitality__content {
		display: block;
		width: 100%;
		margin: 0;
	}
	.specialty-hospitality__title {
		margin-bottom: 1.5em;
	}
	.specialty-hospitality__title .title {
		font-size: 2.2rem;
		letter-spacing: 0.1em;
		line-height: 1.375;
	}
	.specialty-hospitality__text {
		line-height: 1.53333;
		margin-bottom: 1.5em;
	}
	.specialty-hospitality__list {
		display: block;
	}
	.specialty-hospitality__item {
		font-size: 1.5rem;
		line-height: 1.3;
	}
	.specialty-hospitality__item--em {
		margin-top: 0;
		line-height: 1.45455;
	}
	.specialty-hospitality__item--line {
		display: block;
		background-color: rgba(128, 128, 128, 0.25);
		width: 225px;
		height: 1px;
		transform: none;
		margin: 1.5em auto;
	}
}

/* list */
.specialty-list {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: (minmax(320px, 1fr)) [auto-fill];
	grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
	grid-gap: 30px;
}
.specialty-item {
	position: relative;
	display: block;
	padding: 5px;
	height: 343px;
	background-color: #fff;
	border-bottom: 3px solid #cac6c1;
	position: relative;
}
.specialty-item::before {
	content: '';
	position: absolute;
	width: 8px;
	height: 8px;
	border-top: 1px solid #dd4b07;
	border-right: 1px solid #dd4b07;
	transform: rotate(45deg);
	left: 50%;
	margin-left: -8px;
}
.specialty-item:hover {
	opacity: 1;
}
.specialty-item::before {
	bottom: 26px;
}
.specialty-item::after {
	content: '';
	height: 3px;
	position: absolute;
	background-color: #fff;
	width: calc(100% - 10px);
	bottom: -6px;
	left: 5px;
}
.specialty-item:last-child {
	margin-right: 0;
}
.specialty-item__inner {
	border-top: 3px solid #e24b07;
	display: flex;
	flex-direction: column;
	height: 100%;
	margin: 0 auto;
	padding: 10px;
}
.specialty-item__circle {
	color: #e24b07;
	font-size: 1rem;
	display: block;
	margin: 0 auto 54px;
}
.specialty-item__title {
	text-align: center;
}
.specialty-item__title .title {
	font-size: 2.3rem;
	text-align: center;
	font-family: source-han-serif-japanese, serif;
	font-weight: 400;
	letter-spacing: 0.05em;
}
.specialty-item__title--en {
	display: block;
	color: #e24b07;
	margin-top: 4px;
	font-size: 1.8rem;
	font-family: cormorant-garamond, Palatino, source-han-serif-japanese, serif;
	letter-spacing: 0.025em;
	line-height: 2.68;
}
.specialty-item__hr {
	border-top-color: rgba(128, 128, 128, 0.25);
	width: 70px;
	margin: 1.2em auto 1.6em !important;
}
.specialty-item__text {
	width: 85%;
	margin: 0 auto;
	font-size: 1.6rem;
	text-align: center;
	letter-spacing: 0.08em;
	line-height: 1.875;
}
.specialty-list-block:hover * {
	transition: 0.5s;
}
.specialty-list-block:hover .specialty-item {
	background: linear-gradient(-45deg, #c38009 7.87%, #dd4b07 83.33%);
	border-bottom-color: #fff;
}
.specialty-list-block:hover .specialty-item::before {
	border-color: #fff;
}
.specialty-list-block:hover .specialty-item::after {
	background-color: #e24b07;
}
.specialty-list-block:hover .specialty-item__inner {
	border-top-color: #fff;
}
.specialty-list-block:hover .specialty-item__circle {
	color: #fff;
}
.specialty-list-block:hover .specialty-item__title {
	color: #fff;
}
.specialty-list-block:hover .specialty-item__title--en {
	color: #fff;
}
.specialty-list-block:hover .specialty-item__hr {
	border-top-color: rgba(255, 255, 255, 0.25);
	width: 70px;
}
.specialty-list-block:hover .specialty-item__text {
	color: #fff;
}

@media screen and (max-width: 767px) {
	.specialty-list {
		display: block;
	}
	.specialty-list-block:not(:last-child) {
		margin-bottom: 8px;
	}
	.specialty-item {
		padding: 3px;
		height: 223px;
		border-bottom-width: 1px;
	}
	.specialty-item::before {
		bottom: 20px;
	}
	.specialty-item::after {
		content: '';
		height: 2px;
		position: absolute;
		background-color: #fff;
		width: calc(100% - 4px);
		bottom: -4px;
		left: 2px;
	}
	.specialty-item__inner {
		border-top-width: 2px;
		display: flex;
		padding: 8px;
	}
	.specialty-item__circle {
		margin-bottom: 30px;
	}
	.specialty-item__title .title {
		font-size: 1.9rem;
		font-weight: 500;
		letter-spacing: 0.1em;
	}
	.specialty-item__title--en {
		margin-top: 0;
		font-size: 1.5rem;
		font-weight: 500;
		line-height: 2.4;
	}
	.specialty-item__hr {
		border-top-color: rgba(128, 128, 128, 0.25);
		width: 35px;
		margin: 0.5em auto 1em !important;
	}
	.specialty-item__text {
		width: 100%;
		font-size: 1.5rem;
		line-height: 1.53333;
	}
}

/* banner */
.topBannerBox {
	padding-top: 50px;
	margin-bottom: 32px;
}
.topBannerBox a {
	display: block;
	width: 100%;
/* 	box-shadow: 4px 4px 20px 0px rgb(0 0 0 / 10%); */
	transition: ease .3s;
}


/* =====================================
■ 治療メニュー
===================================== */
.treatment {
	padding: 90px 0 135px;
	background: url(/wp-content/uploads/top-bg_photo01.jpg) no-repeat center center/cover;
}
.treatment__title {
	margin-bottom: 1em;
	text-align: center;
}
.treatment__title .title {
	font-size: 3.2rem;
	font-family: source-han-serif-japanese, serif;
	font-weight: 500;
	letter-spacing: 0.15em;
	text-align: center;
	color: #fff;
}
.treatment__title--en {
	display: block;
	color: #fff;
	font-size: 2rem;
	font-family: cormorant-garamond, Palatino, source-han-serif-japanese, serif;
	letter-spacing: 0.026em;
	line-height: 3;
	font-weight: 400;
}
.treatment__text {
	text-align: center;
	margin-bottom: 70px;
}
.treatment__text p {
	color: #fff;
	font-size: 1.6rem;
	letter-spacing: 0.08em;
	line-height: 1.875;
}
.treatment-list {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: (minmax(260px, 1fr)) [auto-fill];
	grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
	grid-gap: 8px;
}
.treatment-item {
	position: relative;
	background-color: #fff;
	height: 265px;
	position: relative;
}
.treatment-item::before {
	content: '';
	position: absolute;
	width: 8px;
	height: 8px;
	border-top: 1px solid #dd4b07;
	border-right: 1px solid #dd4b07;
	transform: rotate(45deg);
	left: 50%;
	margin-left: -8px;
}
.treatment-item a {
	display: block;
	height: 100%;
	padding-top: 25px;
}
.treatment-item::before {
	bottom: 26px;
}
.treatment-item__photo {
	width: 110px;
	height: 110px;
	margin: 0 auto 17px !important;
}
.treatment-item__title {
	font-size: 1.8rem;
	text-align: center;
	font-family: source-han-serif-japanese, serif;
	font-weight: 400;
	letter-spacing: 0.08em;
	line-height: 1.22727;
	height: 60px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	white-space: nowrap;
}

@media screen and (max-width: 767px) {
	.treatment {
		padding: 57px 0 50px;
		background: url(/wp-content/uploads/top-bg_photo01_sp.jpg) no-repeat center center/cover;
	}
	.treatment__title .title {
		font-size: 2.4rem;
	}
	.treatment__title--en {
		font-size: 1.7rem;
		letter-spacing: 0.025em;
		line-height: 2.35294;
	}
	.treatment__text {
		margin-bottom: 45px;
	}
	.treatment__text p {
		font-size: 1.5rem;
		line-height: 1.73333;
	}
	.treatment-list {
		display: block;
	}
	.treatment-item {
		position: relative;
		background-color: #fff;
		height: 105px;
		position: relative;
	}
	.treatment-item:not(:last-child) {
		margin-bottom: 4px;
	}
	.treatment-item::before {
		content: '';
		position: absolute;
		width: 6px;
		height: 6px;
		border-top: 1px solid #dd4b07;
		border-right: 1px solid #dd4b07;
		transform: rotate(45deg);
		top: 50%;
		margin-top: -6px;
	}
	.treatment-item::before {
		right: 13px;
		bottom: auto;
		left: auto;
		margin-top: -2px;
	}
	.treatment-item a {
		padding-top: 0;
	}
	.treatment-item__photo {
		width: 55px;
		height: 55px;
		margin: 0 !important;
		flex: none;
	}
	.treatment-item__photo img {
		height: auto;
	}
	.treatment-item__title {
		font-size: 1.5rem;
		letter-spacing: 0.1em;
		font-weight: 500;
		line-height: 1.36842;
		height: auto;
		display: flex;
		flex-direction: column;
		justify-content: flex-start;
		margin-left: 18px;
		text-align: left;
	}
	.treatment-item a {
		padding: 25px;
		box-sizing: border-box;
		display: flex;
		align-items: center;
		height: 100%;
	}
}


/* =====================================
■ 当院のご紹介
===================================== */
.clinic {
	padding-top: 70px;
	margin-bottom: 110px;
}
.clinic__title {
	margin-bottom: 1em;
	text-align: center;
}
.clinic__title .title {
	font-size: 3.2rem;
	font-family: source-han-serif-japanese, serif;
	font-weight: 500;
	letter-spacing: 0.15em;
	text-align: center;
	color: #282828;
}
.clinic__title--en {
	display: block;
	color: #e24b07;
	font-size: 2rem;
	font-family: cormorant-garamond, Palatino, source-han-serif-japanese, serif;
	letter-spacing: 0.026em;
	line-height: 3;
	font-weight: 400;
}
.clinic-list {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: (1fr) [2];
	grid-template-columns: repeat(2, 1fr);
	gap: 8px;
	margin-bottom: 50px;
}
.clinic-item__link {
	padding: 7px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1.1fr 1fr;
	grid-template-columns: 1.1fr 1fr;
	border: 1px solid rgba(128, 128, 128, 0.25);
}
.clinic-item__photo {
	flex: none;
}
.clinic-item__photo img {
	height: auto;
}
.clinic-item__title {
	padding: 5px;
	font-size: 2rem;
	font-family: source-han-serif-japanese, serif;
	font-weight: 400;
	letter-spacing: 0.1em;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	line-height: 1.3;
}

@media screen and (max-width: 767px) {
	.clinic {
		padding-top: 50px;
		margin-bottom: 68px;
	}
	.clinic__title {
		font-size: 2.4rem;
		margin-bottom: 1.2em;
	}
	.clinic__title--en {
		font-size: 1.7rem;
		letter-spacing: 0.025em;
		line-height: 2.35294;
	}
	.clinic-list {
		display: block;
		margin-bottom: 25px;
	}
	.clinic-item:not(:last-child) {
		margin-bottom: 4x;
	}
	.clinic-item__link {
		padding: 6px;
		-ms-grid-columns: 1fr 1.2fr;
		grid-template-columns: 1fr 1.2fr;
	}
	.clinic-item__title {
		padding: 5px 5px 5px 18px;
		font-size: 1.5rem;
		font-weight: 500;
		line-height: 1.36842;
		justify-content: flex-start;
		text-align: left;
	}
}


/* =====================================
■ ニュース
===================================== */
.news {
	margin-bottom: 130px;
}
.news__content {
	border: 1px solid rgba(128, 128, 128, 0.25);
	padding: 70px 50px 30px;
	max-width: 1100px;
	margin: 0 auto;
}
.news-list {
	overflow-y: scroll;
	max-height: 300px;
}
.news__title {
	margin-bottom: 1em;
}
.news__title .title {
	font-size: 3.2rem;
	font-family: source-han-serif-japanese, serif;
	font-weight: 500;
	letter-spacing: 0.15em;
	text-align: center;
	color: #282828;
}
.news__title--en {
	display: block;
	color: #e24b07;
	font-size: 2rem;
	font-family: cormorant-garamond, Palatino, source-han-serif-japanese, serif;
	letter-spacing: 0.026em;
	line-height: 3;
	font-weight: 400;
}
.news-item {
	padding: 33px 0;
}
.news-item:not(:last-child) {
	border-bottom: 1px solid rgba(128, 128, 128, 0.25);
}
.news-item__row {
	display: flex;
}
.news-item__date {
	font-size: 1.5rem;
	padding-top: 6px;
	color: #808080;
	letter-spacing: 0.05em;
	margin-right: 40px;
}
.news-item__text {
	font-size: 1.6rem;
	line-height: 1.75;
	word-break: break-all;
}
.news-item__text a {
	text-decoration: underline;
}

@media screen and (max-width: 767px) {
	.news {
		margin: 0 20px 70px;
		width: auto;
	}
	.news__content {
		padding: 40px 15px;
	}
	.news__title {
		margin-bottom: 0;
	}
	.news__title .title {
		font-size: 2.4rem;
	}
	.news__title--en {
		font-size: 1.7rem;
		letter-spacing: 0.025em;
		line-height: 2.35294;
	}
	.news-list {
		overflow-y: scroll;
		max-height: 300px;
	}
	.news-list::-webkit-scrollbar {
		background: #eae7e4;
		width: 6px;
	}
	.news-list::-webkit-scrollbar-thumb {
		background: #e24b07;
		border-radius: 50px;
		height: 50px;
	}
	.news-item {
		padding: 2em 0.5em 1em;
	}
	.news-item:last-child {
		border-bottom: 1px solid rgba(128, 128, 128, 0.25);
	}
	.news-item__row {
		display: block;
	}
	.news-item__date {
		padding-top: 0;
		display: block;
		font-size: 1.3rem;
		margin-right: 0;
		margin-bottom: 1em;
	}
	.news-item__text {
		font-size: 1.5rem;
		line-height: 1.53333;
	}
}


/* =====================================
■ メッセージ
===================================== */
.message {
	padding-top: 80px;
	margin-bottom: 110px;
}
.message__title {
	margin-bottom: 1em;
	text-align: center;
}
.message__title .title {
	font-size: 3.2rem;
	font-family: source-han-serif-japanese, serif;
	font-weight: 500;
	letter-spacing: 0.15em;
	text-align: center;
	color: #282828;
}
.message__title--en {
	display: block;
	color: #e24b07;
	font-size: 2rem;
	font-family: cormorant-garamond, Palatino, source-han-serif-japanese, serif;
	letter-spacing: 0.026em;
	line-height: 3;
	font-weight: 400;
}

@media screen and (max-width: 767px) {
	.message {
		padding: 50px 0 0;
		margin-bottom: 74px;
	}
	.message__title {
		font-size: 2.4rem;
	}
	.message__title--en {
		font-size: 1.7rem;
		letter-spacing: 0.025em;
		line-height: 2.35294;
	}
}

/* block */
.message-block {
	display: flex;
	margin-bottom: 50px;
}
.message-block__group {
	margin-left: 120px;
	flex: none;
	max-width: 350px;
	width: 35%;
}
.message-block__photo {
	width: 100%;
	margin-bottom: 25px !important;
}
.message-block__career {
	font-size: 1.6rem;
	font-family: source-han-serif-japanese, serif;
	font-weight: 400;
	letter-spacing: 0.1em;
	line-height: 1;
}
.message-block__name {
	font-size: 2.4rem;
	font-family: source-han-serif-japanese, serif;
	font-weight: 400;
	letter-spacing: 0.1em;
	display: flex;
	align-items: center;
}
.message-block__name--en {
	margin-top: 5px;
	margin-left: 32px;
	font-size: 1.8rem;
	font-family: cormorant-garamond, Palatino, source-han-serif-japanese, serif;
	letter-spacing: 0.025em;
}
.message-block__title {
	margin-bottom: 3em;
	font-size: 3rem;
	font-family: source-han-serif-japanese, serif;
	font-weight: 400;
	letter-spacing: 0.1em;
	line-height: 1.73333;
	text-align: left;
}
.message-block__text {
	text-align: justify;
	font-size: min(3.73vw, 15px);
}

@media screen and (max-width: 767px) {
	.message-block {
		flex-direction: column;
		margin-bottom: 45px;
	}
	.message-block__group {
		order: 1;
		width: 100%;
		margin: 0 auto 36px;
	}
	.message-block__photo {
		width: 175px;
		margin: 0 auto 20px !important;
	}
	.message-block__photo img {
		height: auto;
	}
	.message-block__text-area {
		order: 2;
	}
	.message-block__prof {
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.message-block__career {
		font-size: 1.8rem;
	}
	.message-block__name {
		font-size: 1.8rem;
		margin-left: 25px;
		flex-direction: column;
		align-items: flex-start;
	}
	.message-block__name--en {
		margin-top: 0;
		margin-left: 0;
		font-size: 1.5rem;
		line-height: 1;
		letter-spacing: 0.07em;
	}
	.message-block__title {
		margin-bottom: 36px;
		text-align: center;
		font-size: 1.9rem;
		line-height: 1.73684;
	}
}

/* qua */
.message-qua {
	background-color: #eae7e4;
	padding: 57px 67px 32px;
	margin-bottom: 77px;
}
.message-qua__list {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: (minmax(310px, 1fr)) [auto-fill];
	grid-template-columns: repeat(auto-fill, minmax(310px, 1fr));
	grid-gap: 18px;
	grid-row-gap: 32px;
	margin-bottom: 48px;
}
.message-qua__item {
	padding-bottom: 15px;
	border-bottom: 1px solid rgba(120, 120, 120, 0.25);
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	justify-content: flex-start;
}
.message-qua__item:nth-child(4) .message-qua__photo img {
	width: 87px;
}
.message-qua__photo {
	width: 142px;
	margin-right: 15px !important;
}
.message-qua__text {
	font-size: 1.4rem;
	letter-spacing: 0.05em;
	line-height: 1.5;
	text-align: left;
}
.message-qua__text--add {
	text-align: center;
	color: #3c3c3c;
}

@media screen and (max-width: 767px) {
	.message-qua {
		padding: 25px 20px 40px;
		margin-bottom: 50px;
	}
	.message-qua__list {
		display: block;
		margin-bottom: 36px;
	}
	.message-qua__item {
		padding: 15px 0 20px;
	}
	.message-qua__item:nth-child(4) .message-qua__photo img {
		width: 44px;
	}
	.message-qua__photo {
		width: 71px;
		margin-right: 15px !important;
	}
	.message-qua__photo img {
		height: auto;
	}
	.message-qua__text {
		font-size: 1.5rem;
		letter-spacing: 0.08em;
		line-height: 1.53333;
	}
	.message-qua__text--add {
		letter-spacing: 0.05em;
		font-size: 1.4rem;
	}
}

/* effort */
.message-effort__list {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: (1fr) [3];
	grid-template-columns: repeat(3, 1fr);
	gap: 0;
	border-right: 1px solid rgba(128, 128, 128, 0.25);
}
.message-effort__title {
	font-size: 2.4rem;
	font-family: source-han-serif-japanese, serif;
	font-weight: 400;
	letter-spacing: 0.15em;
	line-height: 1.33333;
	padding: 2em 0;
	background-size: auto 75px !important;
}
.message-effort__item {
	border-left: 1px solid rgba(128, 128, 128, 0.25);
	text-align: center;
	padding-top: 2em;
}
.message-effort__item:nth-child(1) .message-effort__title {
	background: url(/wp-content/uploads/txt_rome1.svg) no-repeat center center;
}
.message-effort__item:nth-child(2) .message-effort__title {
	background: url(/wp-content/uploads/txt_rome2.svg) no-repeat center center;
}
.message-effort__item:nth-child(3) .message-effort__title {
	background: url(/wp-content/uploads/txt_rome3.svg) no-repeat center center;
}
.message-effort__text {
	font-size: 1.4rem;
	line-height: 1.71429;
	margin-bottom: 2em;
}
.message-effort__relation-item {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	margin-bottom: 1.5em;
}
.message-effort__relation-text {
	font-size: 1.5rem;
	font-family: source-han-serif-japanese, serif;
	font-weight: 400;
	letter-spacing: 0.1em;
	line-height: 1.33333;
}
.message-effort__relation-text--em {
	color: #e24b07;
	font-size: 1.9rem;
	letter-spacing: 0.1em;
	line-height: 1.31579;
}
.message-effort__relation-text--lap {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
}
.message-effort__relation-text--block {
	display: block;
	margin-bottom: 0.5em;
}

@media screen and (max-width: 1024px) {
	.message-effort__list {
		border-right: none;
		display: block;
		border-bottom: 1px solid rgba(128, 128, 128, 0.25);
	}
	.message-effort__title {
		font-size: 2rem;
		line-height: 1.35;
		padding: 1.5em 0;
		margin-bottom: 1.2em;
		background-size: auto 63px !important;
	}
	.message-effort__item {
		border-top: 1px solid rgba(128, 128, 128, 0.25);
		border-left: none;
		padding: 1.5em 0 2.5em;
	}
	.message-effort__text {
		font-size: 1.5rem;
		line-height: 1.53333;
	}
	.message-effort__relation-item {
		margin-bottom: 1em;
	}
	.message-effort__relation-item:last-child {
		margin-bottom: 0;
	}
	.message-effort__relation-text--lap {
		letter-spacing: 0.02em;
	}
}

@media screen and (max-width: 767px) {
	.message-effort__list {
		display: block;
	}
}

.banner-list > .elementor-container > .elementor-row {
	justify-content: space-around;
}
.banner-list .banner-list__item {
    width: 47%;
}

@media screen and (max-width: 767px) {
	.banner-list .banner-list__item {
        width: 100%;
        margin-bottom: 1em;
    }
	.banner-list .banner-list__item:last-child {
		margin-bottom: 0;
	}
}