@charset "utf-8";

.m_mv {
	background-image: url(../images/top/mv_bg_pc.png);
}

.m_mv_item {
	padding-top: 90px;
}

.m_ttl01 span {
	font-size: 6.5rem;
}

.m_ttl01 em {
	font-size: 2rem;
	padding-top: 16px;
}

.m_ttl01 {
	margin-bottom: 80px;
	margin-top: 0;
}

.m_ttl02 span {
	padding-top: 5px;
	font-size: 1.8rem;
}

.m_ttl02 em {
	padding-top: 0;
	font-size: 4.7rem;
}

.img_bg_block {
	padding: 150px 0;
}

#top_feature {
	background-image: url(../images/top/feature_bg.png);
}

#top_feature .mod_icon {
	--gap-col: 30px;
	--gap-row: 30px;
}

#top_feature .box {
	border-radius: 20px;
	padding: 30px;
	font-size: 2.3rem;
}

#top_feature .mod_icon_ttl {
	padding-bottom: 8px;
	margin-bottom: 16px;
}

#top_feature .box .textbox p {
	letter-spacing: 0.1em;
}

#top_feature .mod_icon_ttl:before {
	width: 30px;
}

.top_feature_btn {
	margin-top: 70px;
}

#top_trouble .box {
	border-radius: 20px;
	padding: 30px;
	font-size: 2.3rem;
}

#top_trouble .mod_icon {
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
}

#top_trouble .box .mod_icon_img {
	width: 200px;
}

#top_trouble .box .btn {
	margin-top: 30px;
}

#top_age .mod_icon {
	gap: 50px;
}

#top_age .mod_icon .mod_icon_img {
	width: 200px;
	margin: 0 auto 11px;
}

#top_age .mod_icon .box+.box:before {
	border-width: 30px 0 30px 30px;
	left: -30px;
	top: 120px;
}

#top_age .mod_icon .btn {
	margin-top: 20px;
}

.imgbg_block {
	padding: 50px 50px 50px 50%;
	background-size: 50% auto !important;
	background-position: left center;
	min-height: 450px;
	display: grid;
	align-content: center;
}

.imgbg_box {
	padding: 0 0 0 50px;
}

.imgbg_ttl.ttl_top_lv02 {
	font-size: 3rem;
	text-align: left;
	padding-top: 0;
	margin-bottom: 20px;
}

.imgbg_block.imgbg_right {
	background-position: right center;
	padding: 50px 50% 50px 50px;
}

.imgbg_block.imgbg_right .imgbg_box {
	padding: 0 50px 0 0;
}

.top_doctor .img_bg_block {
	padding: 150px 0;
}

#top_doctor {
	background: #f9f0e9 url(../images/top/greeting_bg.jpg) center top / 2000px no-repeat;
	min-height: 794px;
	display: flex;
	align-items: center;
}

.top_doctor .img_bg_block {
	padding: 70px 0;
	width: 100%;
}

.tm_greeting_body {
	width: 600px;
}

.tm_greeting_ttl {
	text-align: left;
	margin-bottom: 26px;
	margin-top: 0;
}

.tm_greeting_ttl em {
	padding-top: 10px;
}

.tm_greeting_name {
	display: block;
	width: 200px;
	margin-top: 30px;
	position: relative;
	bottom: inherit;
	left: inherit;
}

.tm_greeting_btn {
	margin-top: 50px;
	text-align: left;
}

.tm_greeting_btn .btn {
	margin-left: 0;
}

.top_profile {
	background: url(../images/top/clinic_bg.jpg) center / cover no-repeat;
}

.top_profile .img_bg_block {
	padding: 80px 0;
}

.tm_clinic_body {
	width: 600px;
}

.tm_clinic_ttl {
	text-align: left;
	margin-bottom: 20px;
	margin-top: 0;
}

.tm_clinic_ttl em {
	padding-top: 10px;
}

.tm_clinic_time {
	margin-top: 20px;
	margin-bottom: 5px;
}

.tm_clinic_box {
	margin-top: 20px;
	--gap-col: 20px;
	--gap-row: 20px;
	--col: 2;
	display: flex;
	flex-wrap: wrap;
	gap: var(--gap-row) var(--gap-col);
}

.tm_clinic .gmap {
	height: 100%;
}

.tm_clinic_btn {
	margin-top: 50px;
	text-align: center;
}

.m_newslist_item_in.m_newslist_item_in {
	display: flex;
	overflow: hidden;
	padding: 20px 0;
	text-decoration: none;
	flex-direction: row;
	align-items: center;
}

.m_newslist_item_in .date {
	padding-top: 4px;
}

.top_news_btn02 {
	margin-top: 50px;
}

.top_news_btn {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
	margin-top: 80px;
}

.m_footer_menu_ttl {
	font-size: 4.1rem;
	margin-bottom: 10px;
	color: #fff;
	font-weight: 400;
	line-height: 1.1;
	letter-spacing: 0.1em;
}

.m_footer_block {
	display: flex;
	gap: 60px;
	flex-direction: row-reverse;
}

.m_footer_item {
	flex: 1;
}

.m_footer_menu_list li {
	margin-bottom: 4px;
	padding-left: 1em;
}

.m_footer_menu_list ul li:before {
	background: #fff;
	top: 12px;
	width: 7px;
	height: 7px;
}

.m_footer_menu_list li a {
	color: #fff;
}

.m_footer_item+.m_footer_item {
	margin: 0;
}

#top_button {
	right: 10px;
	bottom: 10px;
}

.m_footer_small {
	display: flex;
	align-items: center;
	justify-content: center;
}