/*--------------------------------------------------------------
  フロントページ
--------------------------------------------------------------*/
/*==================================
  Web予約受付バナー
==================================*/
.web_reserve {
	text-align: center;
	padding-bottom: 50px;
	box-sizing: border-box;
}

.web_reserve a {
	display: inline-block;
	width: 75%;
}

.web_reserve a:hover {
	opacity: .7;
}

.web_reserve img {
	width: 100%;
}

@media screen and (min-width: 768px) and ( max-width: 1023px) {
	.web_reserve {
		padding-bottom: 40px;
	}
}

@media screen and (max-width : 767px) {
	.web_reserve {
		padding-bottom: 30px;
	}

	.web_reserve a {
		width: 100%;
	}
}

/*==================================
  お知らせ
==================================*/
.front_news_wrap { /* 背景の画像のposition設定 */
	position: relative;
}

.front_news_wrap .front_news {
	padding: 60px 0 120px 0;
	box-sizing: border-box;
}

.front_news_wrap .front_news .news_btn { /* お知らせ一覧の設定 */
	display: block;
	text-align: right;
}

.front_news_wrap .front_news .news_btn a { /* お知らせ一覧の色 */
	color: #ee8c8b;
}

.front_news_wrap .front_news .news_btn a:hover {
	color: #000;
}

.front_news_wrap .front_news { /* 背景画像より前に見せる */
	position: relative;
	z-index: 999;
}

.front_news_wrap .news_box { /* お知らせ全体 */
	width: 100%;
}

.front_news_wrap .news_box dl { /* お知らせ一列の設定 */
	font-size: 16px;
	font-size: 1.6rem;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 25px;
	box-sizing: border-box;
	border-bottom: 1px dashed #a9aaaa;
}

.front_news_wrap .news_box li:hover {
	background: #faf8ef;
}

.front_news_wrap .news_box dl dt {
	font-weight: normal;
	width: 27%;
}

.front_news_wrap .news_box .category-btn a {
	font-size: 13px;
	font-size: 1.3rem;
	color: #FFF;
	background: #ee8c8b;
	display: inline-block;
	padding: 4px 17px;
	box-sizing: border-box;
	border-radius: 25px;
	margin: 0 20px;
}

.front_news_wrap .news_box .category-btn a:hover {
	opacity: .7;
}

.front_news_wrap .news_box .category-btn.news a {
	background: #eed549;
}


.front_news_wrap .news_box dl dd {
	width: 77%;
	position: relative;
}

.front_news_wrap .news_box dl dd a {
	display: block;
	width: 100%;
}

.front_news_wrap .news_box dl dd a:hover {
	color: #ee8c8b;
	text-decoration: underline;
}

.front_news_wrap .news_box dl dd i {
	color: #ee8c8b;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
}


@media screen and (min-width: 768px) and ( max-width: 1023px) {
	.front_news_wrap .front_news {
		padding: 50px 0;
		box-sizing: border-box;
	}

	.front_news_wrap .news_box { /* お知らせ全体 */
		margin-bottom: 50px;
	}

	.front_news_wrap .news_box dl {
		padding: 15px 10px;
		box-sizing: border-box;
		display: block;
	}

	.front_news_wrap .news_box dl dt {
		width: 100%;
		padding: 10px 0;
		box-sizing: border-box;
	}

	.front_news_wrap .news_box dl dd {
    width: 100%;
		padding: 10px 0;
		box-sizing: border-box;
	}

}



@media screen and (max-width : 767px) {
	.front_news_wrap .front_news {
		padding: 40px 0 50px 0;
		box-sizing: border-box;
	}

	.front_news_wrap .news_box { /* お知らせ全体 */
		margin: 0;
	}

	.front_news_wrap .news_box dl {
		padding: 10px;
		box-sizing: border-box;
		display: block;
		font-size: 16px;
		font-size: 1.6rem;
	}

	.front_news_wrap .news_box dl dt {
		width: 100%;
		padding: 10px 0;
		box-sizing: border-box;
	}

	.front_news_wrap .news_box dl dd {
    width: 100%;
		padding: 10px 0;
		box-sizing: border-box;
	}

}

/*==================================
  診療のご案内
==================================*/
.front_medicalinfo_wrap {
	padding: 100px 0 160px 0;
	box-sizing: border-box;
}

.front_medicalinfo_box { /* 診療のご案内のビジュアルの設定 */
	position: relative;
	width: 480px;
	height: 380px;
	text-align: center;
	/* padding: 20px; */
	padding: 35px 20px 0px 20px;
	box-sizing: border-box;
	background: #fff;
	/* display: block; */
	border-radius: 25px;
	box-sizing: border-box;
	box-shadow: 2px 8px 0px 0 rgba(181, 178, 166, .35);
}

.front_medicalinfo_wrap h2 {
	margin-bottom: 45px;
}

.front_medicalinfo_box h3 {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	font-size: 28px;
	font-size: 2.8rem;
	display: block;
	text-align: center;
	position: relative;
	border: unset;
}

.front_medicalinfo_box h3::before {
	content: url(../img/flower-left.png);
	position: absolute;
	top: 3px;
	left: 75px;
}

.front_medicalinfo_box h3::after {
	content: url(../img/flower-right.png);
	position: absolute;
	top: 3px;
	right: 75px;
}

.front_medicalinfo_box p {
	padding: 20px;
	box-sizing: border-box;
}

.front_medicalinfo_box a {
	font-size: 15px;
	font-size: 1.5rem;
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom: 30px;
	display: block;
	color: #f29b9a;
}

.front_medicalinfo_box a:hover {
	color: #000;
}

.front_medicalinfo_box.gynecology p {
	line-height: 2;
	font-size: 18px;
	font-size: 1.8rem;
}

.front_medicalinfo_box.treatment p {
	font-size: 15px;
	font-size: 1.5rem;
	line-height: 1.75;
}


@media screen and (min-width: 768px) and ( max-width: 1023px) {
	.front_medicalinfo_wrap {
		padding: 80px 0;
		box-sizing: border-box;
	}

	.front_medicalinfo_wrap h2 {
		margin: 0;
	}

	.front_medicalinfo .row_flex {
		display: flex;
		padding: 0 15px;
		box-sizing: border-box;
	}

	.front_medicalinfo_box {
    position: relative;
    margin: 50px 0;
    width: 49%;
    height: auto;
    text-align: center;
	/* padding: 20px; */
		padding: 40px 20px 20px 20px;
		box-sizing: border-box;
	}

	.front_medicalinfo_box h3 {
		font-size: 25px;
		font-size: 2.5rem;
	}

	.front_medicalinfo_box h3::before {
		left: 45px;
	}

	.front_medicalinfo_box h3::after {
		right: 45px;
	}

	.front_medicalinfo_box p {
    padding: 40px 0;
		box-sizing: border-box;
	}

	.front_medicalinfo_box.gynecology p {
		font-size: 15px;
		font-size: 1.5rem;
	}

	.front_medicalinfo_box a {
		bottom: 20px;
	}

}


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

	.front_medicalinfo_wrap h2 {
		margin: 0;
	}

	.front_medicalinfo .row_flex {
		padding: 0 15px;
		box-sizing: border-box;
	}

	.front_medicalinfo_box {
    position: relative;
    margin: 30px 0;
    width: 100%;
    height: auto;
    text-align: center;
	/* padding: 20px; */
		padding: 40px 20px 20px 20px;
		box-sizing: border-box;
	}

	.front_medicalinfo_box h3 {
		font-size: 25px;
		font-size: 2.5rem;
	}

	.front_medicalinfo_box h3::before {
		left: 40px;
	}

	.front_medicalinfo_box h3::after {
		right: 40px;
	}

	.front_medicalinfo_box p {
    padding: 40px 0;
		box-sizing: border-box;
	}

	.front_medicalinfo_box.gynecology p {
		font-size: 16px;
		font-size: 1.6rem;
	}

	.front_medicalinfo_box a {
		bottom: 20px;
	}

}

/*==================================
  アドレス
==================================*/
.front_address_wrap {
	padding: 160px 0;
	box-sizing: border-box;
}

.front_address_wrap .office_schedule { /* スケジュール全体の設定 */
	width: 450px;
}

@media screen and (min-width: 768px) and ( max-width: 1023px) {
	.front_address_wrap {
		padding: 80px 0;
		box-sizing: border-box;
	}

	.front_address_wrap .office_schedule {
		width: 100%;
	}
}

@media screen and (max-width : 767px) {
	.front_address_wrap {
		padding: 50px 0;
		box-sizing: border-box;
	}

	.front_address_wrap .office_schedule {
		width: 100%;
	}
}

/*==================================
  GoogleMap
==================================*/
.ggmap {
	position: relative;
	overflow: hidden;
	height: 0;
	padding-top: 30px;
	padding-bottom: 56.25%;
	box-sizing: border-box;
}

 .ggmap iframe,
 .ggmap object,
 .ggmap embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/*==================================
  フロントページのGoogleMap
==================================*/
.front_address .ggmap {
	position: relative;
	height: 0;
	padding: 0;
	overflow: unset;
	box-sizing: border-box;
}

.front_address .ggmap iframe,
.front_address .ggmap object,
.front_address .ggmap embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 400px;
	border-radius: 15px;
}

@media screen and (min-width: 768px) and ( max-width: 1023px) {
	.front_address .ggmap {
		position: relative;
		overflow: hidden;
		height: 0;
		padding-top: 30px;
		padding-bottom: 56.25%;
		box-sizing: border-box;
	}

	.front_address .ggmap iframe,
	.front_address .ggmap object,
	.front_address .ggmap embed {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		border-radius: 0;
	}
}

@media screen and (max-width : 767px) {
	.front_address .ggmap {
		position: relative;
		overflow: hidden;
		height: 0;
		padding-top: 30px;
		padding-bottom: 56.25%;
		box-sizing: border-box;
	}

	.front_address .ggmap iframe,
	.front_address .ggmap object,
	.front_address .ggmap embed {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		border-radius: 0;
	}
}

/*==================================
  フロントページ フッターのスライド
==================================*/
.top_scroll_slider img {
	width: 100%;
	display: inline-block;
}


/*--------------------------------------------------------------
  フロントページ ここまで
--------------------------------------------------------------*/