@charset "UTF-8";
/* 共通 */
body{font-display: swap;}

div.cont_btn a {
	display: inline-block;
	width: 300px;
	font-size: 18px;
	line-height: 60px;
	color: #D3CEB8;
	background: #333;
	text-decoration: none;
	text-align: center;
	font-family: 'Noto Serif JP', "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
	transition: 0.2s linear;
	position: relative;
}
	div.cont_btn a:after {
		position: absolute;
		display: block;
		content: '';
		width: 10px;
		height: 10px;
		margin: 0;
		padding: 0;
		border-top: 2px solid #9B8759;
		border-right: 2px solid #9B8759;
		transform: rotate(45deg);
		transition: 0.2s linear;
		top: 43%;
		right: 20px;
	}
	div.cont_btn a:hover {
		color: #fff;
		background: #9B8759;
	}
		div.cont_btn a:hover:after {
			border-top: 2px solid #fff;
			border-right: 2px solid #fff;
		}


/* KV */
#kv {
	width: 100%;
	margin: 0 auto;
	padding: 0;
	position: relative;
}
	#kv ul.slick_box {
		width: 100%;
		min-width: 1220px;
		height: 660px;
		margin: 0 auto;
		padding: 0;
		overflow: hidden;
		list-style: none;
	}
		#kv ul.slick_box li {
			width: 100%;
			height: 660px;
			margin: 0 auto;
			padding: 0;
			color: #fff;
			text-align: left;
			position: relative;
		}
			#kv ul.slick_box li:before {
				position: absolute;
				content: '';
				display: block;
				width: 100%;
				height: 100%;
				margin: 0;
				padding: 0;
				top: 0;
				left: 0;
			}
			#kv ul.slick_box li.kv01:before {
				background: url(../images/top/kv_01.jpg) center left / cover no-repeat;
			}
	#kv div.txt {
		position: absolute;
		margin: 0 auto;
		padding: 0;
		display: flex;
		flex-direction: column;
		align-items: center;
		top: 190px;
		left: calc(50% + 20px);
		z-index: 1;
	}
		#kv div.txt h2 {
			margin: 0;
			padding: 0;
			font-size: 50px;
			line-height: 160%;
			font-weight: 400;
			font-family: 'Noto Serif JP', "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
			text-shadow:
				#fff 1px 1px 10px, #fff -1px 1px 10px,
				#fff 1px -1px 10px, #fff -1px -1px 10px;
			white-space: nowrap;
		}
		#kv div.txt h3 {
			margin: 30px 0 0;
			padding: 0;
			font-size: 20px;
			line-height: 200%;
			font-weight: 400;
			font-family: 'Noto Serif JP', "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
			text-shadow:
				#fff 1px 1px 10px, #fff -1px 1px 10px,
				#fff 1px -1px 10px, #fff -1px -1px 10px;
			white-space: nowrap;
		}


/* 当日予約OK・緊急の来院でも対応します */
div.index_shop {
	min-width: 1220px;
	margin: 0 auto;
	padding: 110px 0 155px;
	background: url(../images/top/shop_bg.png) center / cover no-repeat;
}
	div.index_shop div.shop_box {
		width: 1000px;
		margin: 0 auto;
		padding: 10px;
		background: #D3CEB8;
	}
		div.index_shop div.shop_box div.shop_box_in {
			width: 100%;
			margin: 0 auto;
			padding: 35px 100px 25px;
			background: #fff;
			position: relative;
		}
			div.index_shop div.shop_box div.shop_box_in:before,
			div.index_shop div.shop_box div.shop_box_in:after{
				position: absolute;
				content: '';
				display: block;
				width: 100%;
				height: 0;
				left: 0;
			}
			div.index_shop div.shop_box div.shop_box_in:before{
				border-bottom: solid 20px #fff;
				border-left: solid 20px #D3CEB8;
				bottom: calc(100% - 20px);
			}
			div.index_shop div.shop_box div.shop_box_in:after{
				border-top: solid 20px #fff;
				border-right: solid 20px #D3CEB8;
				top: calc(100% - 20px);
			}
			div.index_shop div.shop_box div.shop_box_in .point {
				margin: 0 auto;
				padding: 0;
				display: flex;
				justify-content: center;
			}
				div.index_shop div.shop_box div.shop_box_in .point span {
					display: inline-block;
					width: 200px;
					margin: 0 10px;
					padding: 0;
					font-size: 18px;
					line-height: 40px;
					font-weight: 500;
					font-family: 'Noto Serif JP', "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
					color: #fff;
					background: #60AAB7;
				}
			div.index_shop div.shop_box div.shop_box_in h3 {
				margin: 20px auto 0;
				padding: 0;
				font-size: 30px;
				line-height: 180%;
				font-weight: 500;
				font-family: 'Noto Serif JP', "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
			}
			div.index_shop div.shop_box div.shop_box_in h4 {
				margin: 15px auto 0;
				padding: 0;
				font-size: 16px;
				line-height: 180%;
				font-weight: 400;
			}
				div.index_shop div.shop_box div.shop_box_in h4 storng {
					font-weight: 500;
				}
			div.index_shop div.shop_box div.shop_box_in div.tel_time {
				margin: 35px auto 0;
				padding: 0;
				display: flex;
				justify-content: center;
				align-items: flex-start;
			}
				div.index_shop div.shop_box div.shop_box_in div.tel_time div.tel {
					width: 300px;
					margin: 0 48px 0 0;
					padding: 0;
					display: flex;
					flex-direction: column;
				}
					div.index_shop div.shop_box div.shop_box_in div.tel_time div.tel .tel_ttl {
						width: 100%;
						margin: 0;
						padding: 0;
						font-size: 14px;
						line-height: 38px;
						font-weight: 500;
						font-family: 'Noto Serif JP', "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
						color: #9B8759;
						border: 1px solid #D3CEB8;
					}
					div.index_shop div.shop_box div.shop_box_in div.tel_time div.tel a {
						width: 100%;
						margin: 10px 0 0;
						padding: 0;
						font-size: 40px;
						line-height: 120%;
						font-weight: 500;
						font-family: 'Noto Serif JP', "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
						text-decoration: none;
						color: #9B8759;
						display: flex;
						justify-content: center;
						pointer-events: none;
					}
						div.index_shop div.shop_box div.shop_box_in div.tel_time div.tel a strong {
							display: none;
						}
						div.index_shop div.shop_box div.shop_box_in div.tel_time div.tel a span {
							display: block;
							margin: 0;
							padding: 0 0 0 30px;
							position: relative;
						}
							div.index_shop div.shop_box div.shop_box_in div.tel_time div.tel a span:before {
								position: absolute;
								content: '';
								display: block;
								width: 24px;
								height: 24px;
								margin: 0;
								background: url(../images/icon/tel_ico.png) no-repeat;
								top: 15px;
								left: 0;
							}
				div.index_shop div.shop_box div.shop_box_in div.tel_time div.open_days {
					width: 410px;
				}
					div.index_shop div.shop_box div.shop_box_in div.tel_time div.open_days table.time_table th:first-of-type {
						width: 114px;
					}
					div.index_shop div.shop_box div.shop_box_in div.tel_time div.open_days table.time_table th:nth-of-type(n+2) {
						width: calc((100% - 114px) / 7);
					}

/* 選ばれる3つのポイント */
div.index_point3 {
	min-width: 1220px;
	margin: -30px auto 0;
	padding: 0 0 180px;
	position: relative;
	z-index: 1;
}
	div.index_point3:before {
		position: absolute;
		content: '';
		display: block;
		width: 120%;
		height: calc(100% - 30px);
		margin: 0 auto;
		padding: 0;
		background: linear-gradient(to top, #D9D1BF 0px, #D9D1BF 190px, #F2F1E8 620px, #F2F1E8 100%);
		transform: rotate(0) skew(-5deg, -5deg);
		top: 30px;
		left: -10%;
		z-index: -1;
	}
	div.index_point3:after {
		position: absolute;
		content: '';
		display: block;
		width: 100%;
		height: 100%;
		margin: 0 auto;
		padding: 0;
		background: linear-gradient(transparent 0%, transparent 50%, #D9D1BF 50%, #D9D1BF 100%);
		top: 0;
		left: 0;
		z-index: -2;
	}
	div.index_point3 div.point_cont {
		margin: 0 auto 0;
		padding: 0;
		display: flex;
		position: relative;
	}
		div.index_point3 div.point_cont:after {
			position: absolute;
			content: '';
			display: block;
			width: 100%;
			height: 50px;
			background: rgba(0,0,0,0.2);
			bottom: 0;
			left: 0;
		}
		div.index_point3 div.point_cont:first-of-type {
			margin: 55px auto 0;
		}
		div.index_point3 div.point_cont.rev {
			flex-direction: row-reverse;
		}
		div.index_point3 div.point_cont div.point_txt {
			width: 610px;
			margin: 0;
			padding: 120px 70px 80px;
			text-align: left;
			background: linear-gradient(to top, #9A835A 0px, #9A835A 150px, #B9A98A 100%);
		}
			div.index_point3 div.point_cont div.point_txt h4 {
				margin: 0 0 10px 80px;
				padding: 0;
				font-size: 30px;
				line-height: 160%;
				font-weight: 500;
				font-family: 'Noto Serif JP', "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
				color: #fff;
				position: relative;
				z-index: 1;
			}
				div.index_point3 div.point_cont div.point_txt h4 span {
					position: absolute;
					display: block;
					margin: 0;
					padding: 0;
					font-size: 120px;
					line-height: 110%;
					font-weight: 300;
					font-style: italic;
					font-family: 'Noto Serif JP', "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
					color: #7B6948;
					top: -80px;
					left: -100px;
					z-index: -1;
				}
			div.index_point3 div.point_cont div.point_txt p {
				margin: 20px 0 0;
				padding: 0;
				color: #fff;
			}
		div.index_point3 div.point_cont div.point_img {
			width: 610px;
			margin: 0;
		}
	div.index_point3 div.cont_btn {
		text-align: right;
	}

/* 院長ごあいさつ */
div.index_message {
	min-width: 1220px;
	margin: -120px auto 0;
	padding: 210px 0 140px;
	background: url(../images/top/message_bg.png) left top / cover no-repeat;
	position: relative;
	z-index: 2;
}
	div.index_message div.message_cont {
		margin: 50px auto 0;
		padding: 0;
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
	}
		div.index_message div.message_cont div.message_txt {
			width: 700px;
			margin: 0;
			padding: 45px 0 0;
			text-align: left;
		}
			div.index_message div.message_cont div.message_txt p {
				margin: 20px 0 0;
			}
				div.index_message div.message_cont div.message_txt p:nth-of-type(4) {
					margin: 50px 0 0;
				}
		div.index_message div.message_cont div.message_img {
			width: 450px;
			margin: 0;
		}
			div.index_message div.message_cont div.message_img div.message_img_in {
				width: 100%;
				margin: 0;
				position: relative;
			}
				div.index_message div.message_cont div.message_img div.message_img_in div.img_btm {
					position: absolute;
					width: 100%;
					margin: 0;
					padding: 20px 22px;
					text-align: right;
					font-family: 'Noto Serif JP', "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
					color: #fff;
					background: rgba(0,0,0,0.4);
					bottom: 0;
					left: 0;
				}
					div.index_message div.message_cont div.message_img div.message_img_in div.img_btm strong {
						position: absolute;
						display: inline-block;
						font-size: 54px;
						line-height: 110%;
						font-weight: 300;
						font-style: italic;
						font-family: 'Noto Serif JP', "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
						color: #fff;
						top: -25px;
						left: 10px;
					}
					div.index_message div.message_cont div.message_img div.message_img_in div.img_btm h4 {
						margin: 0;
						font-size: 16px;
						font-weight: 500;
					}
					div.index_message div.message_cont div.message_img div.message_img_in div.img_btm p {
						margin: 3px 0 0;
						font-size: 26px;
						font-weight: 500;
					}
						div.index_message div.message_cont div.message_img div.message_img_in div.img_btm p small {
							display: inline-block;
							margin: 0 25px 0 0;
							font-size: 18px;
							font-weight: 500;
						}
			div.index_message div.message_cont div.message_img div.cont_btn {
				text-align: right;
			}

/* 院内紹介 */
div.index_clinic {
	min-width: 1220px;
	margin: 0 auto;
	padding: 130px 0 140px;
	background: url(../images/top/clinic_bg.jpg) center / cover no-repeat;
}
	div.index_clinic .cont_top_txt {
		margin: 0 auto;
		padding: 25px 0 0;
	}
		div.index_clinic .cont_top_txt p {
			margin: 20px auto 0;
		}
	div.index_clinic ul.clinic_img {
		max-width: 1521px;
		min-width: 1220px;
		margin: 50px auto 0;
		list-style: none;
		display: flex;
		flex-wrap: wrap;
	}
		div.index_clinic ul.clinic_img li {
			width: calc(100% / 3);
			margin: 0;
		}
			div.index_clinic ul.clinic_img li img {
				width: 100%;
				height: auto;
			}

/* GoogleMap */
div.index_gmap {
	width: 1220px;
	margin: 0 auto;
	padding: 140px 0;
}
	div.index_gmap .gmap {
		width: 1000px;
		height: 400px;
		margin: 0 auto;
		position: relative;
	}
		div.index_gmap .gmap iframe {
			position: absolute;
			display: block;
			width: 100%;
			height: 100%;
			margin: 0;
			top: 0;
			left: 0;
		}

/* 診療メニュー */
div.index_menu {
	min-width: 1220px;
	margin: 0 auto;
	padding: 130px 0 140px;
	background: url(../images/top/menu_bg.jpg) center / cover no-repeat;
}
	div.index_menu ul.menu_cont {
		width: 1100px;
		margin: 0 auto;
		padding: 15px 0;
		list-style: none;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}
		div.index_menu ul.menu_cont li {
			width: 220px;
			margin: 40px 20px 0;
			padding: 0;
		}
		div.index_menu ul.menu_cont li a {
			width: 220px;
			height: 220px;
			margin: 0;
			padding: 40px 0 0;
			text-decoration: none;
			color: #333;
			background: #EDEADE;
			border-radius: 110px;
			border: 3px solid #EDEADE;
			display: flex;
			flex-direction: column;
			justify-content: flex-start;
			align-items: center;
			transition: 0.2s linear;
		}
			div.index_menu ul.menu_cont li a:hover {
				border: 3px solid #60AAB7;
			}
			div.index_menu ul.menu_cont li a h4 {
				height: 50px;
				margin: 0 auto;
				padding: 0;
				font-size: 18px;
				line-height: 160%;
				font-weight: 500;
				font-family: 'Noto Serif JP', "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
				display: flex;
				justify-content: center;
				align-items: center;
			}

/* お知らせ */
div.index_info {
	width: 1220px;
	margin: 0 auto;
	padding: 90px 0 145px;
}
	div.index_info h3 {
		margin: 0 auto;
		padding: 0;
		font-size: 30px;
		line-height: 180%;
		font-weight: 500;
		font-family: 'Noto Serif JP', "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
	}
	div.index_info div.info_cont {
		width: 840px;
		max-height: 300px;
		margin: 35px auto 0;
		padding: 45px 0;
		font-size: 15px;
		line-height: 180%;
		font-weight: 400;
		text-align: left;
		border-top: 1px solid #DDDDDD;
		border-bottom: 1px solid #DDDDDD;
		overflow-y: auto;
	}
		div.index_info div.info_cont div,
		div.index_info div.info_cont p {
			margin: 0;
			padding: 0;
			font-size: 15px !important;
			font-weight: 400 !important;
		}
	div.index_info ul.pdf_link {
		width: 840px;
		margin: 60px auto 0;
		padding: 0;
		list-style: none;
		display: flex;
	}
		div.index_info ul.pdf_link li {
			width: calc(100% / 3);
			margin: 0;
			padding: 0;
			text-align: left;
			border-right: 1px solid #DDDDDD;
			display: flex;
		}
			div.index_info ul.pdf_link li:first-of-type {
				justify-content: flex-start;
			}
			div.index_info ul.pdf_link li:nth-of-type(2) {
				justify-content: center;;
			}
			div.index_info ul.pdf_link li:last-of-type {
				justify-content: flex-end;
				border-right: none;
			}
			div.index_info ul.pdf_link li a {
				display: inline-block;
				margin: 0;
				padding: 20px 0 20px 40px;
				font-size: 14px;
				line-height: 160%;
				text-decoration: none;
				color: #333;
				transition: 0.2s linear;
				position: relative;
			}
				div.index_info ul.pdf_link li a:hover {
					color: #60AAB7;
				}
				div.index_info ul.pdf_link li a:before {
					position: absolute;
					content: '';
					display: block;
					width: 30px;
					height: 36px;
					margin: 0;
					padding: 0;
					background: url(../images/icon/pdf_ico_off.png) no-repeat ,url(../images/icon/pdf_ico_on.png) no-repeat;
					transition: 0.2s linear;
					top: 25px;
					left: 0;
				}
					div.index_info ul.pdf_link li a:hover:before {
						background: url(../images/icon/pdf_ico_on.png) no-repeat;
					}
