@charset "utf-8";
/*================================
*
*基本設定
*
================================*/

/*================================
　ここから全サイズ適用
================================*/

/*CSS Variable
================================*/
:root {
	/*ベースカラー*/
	/*緑1*/
	--theme-color01: #90c31f;
	/*緑2*/
	--theme-color02: #23ac38;
	/*茶*/
	--theme-color03: #413933;
}

/*html基本設定
================================*/
html {
	overflow-y: scroll;
	scroll-behavior: smooth;
	font-size: 10px;
	font-size: 62.5%;
}
body {
	overflow: hidden;
	/*↓文字の基本設定*/
	font-family: "Noto Serif JP", serif;
	font-size: 18px;
	font-size: 1.8em;
	font-weight: 300;
	text-align: justify;
	color: #333;
	/* ↓iPhoneの文字サイズ自動調整を無効化 */
	-webkit-text-size-adjust: 100%;
}
h1 ,h2 ,h3 ,h4 ,h5 ,h6 {
	/*↓文字の字間を設定*/
	letter-spacing: 0.05em;
}
p, dl, dt, dd, ol, ul, li {
	/*↓文字の行の高さ設定*/
	line-height: 2;
	/*↓文字の字間を設定*/
	letter-spacing: 0.05em;
}
img {
	max-width: 100%;
	height: auto;
	vertical-align: middle;
}
a {
	text-decoration: none;
	color: var(--theme-color01);
}
a:link {
	text-decoration: none;
}
a:visited {
	/*text-decoration: none;*/
}
a:hover {}
a:active {
	/*color: #999;*/
	/*text-decoration: none;*/
}
/*margin-bottom
================================*/
.mb0 {
	margin-bottom:0 !important;
}
.mb10 {
	margin-bottom:1rem !important;
}
.mb20 {
	margin-bottom:2rem !important;
}
.mb30 {
	margin-bottom:3rem !important;
}
.mb40 {
	margin-bottom:4rem !important;
}
.mb50 {
	margin-bottom:5rem !important;
}
.mb60 {
	margin-bottom:6rem !important;
}
.mb70 {
	margin-bottom:7rem !important;
}
.mb80 {
	margin-bottom:8rem !important;
}
.mb90 {
	margin-bottom:9rem !important;
}
.mb100 {
	margin-bottom:10rem !important;
}

/* インライン方向の揃え
================================*/
.mi-c {
	margin-inline: auto;
}

/* コンテナ類、幅制御
================================*/
.inner {
	margin: 0 auto;
	/*max-width: calc(1200px + 14rem);*/
	padding-left: 7rem;
	padding-right: 7rem;
}

/* ページ内リンク位置調整
================================*/
.anchor-link {
	display: block;
	transform: translateY(-8rem);
}

/* ブロック要素、インライン要素
================================*/
.block,
.blk {
	display: block;
}
.inline,
.inl {
	display: inline;
}
.inline-block,
.inl-blk {
	display: inline-block;
}

/* ブロック要素の揃え方向
================================*/
.block-center,
.b-cen,
.blk-c {
	display: block;
	margin-left: auto;
	margin-right: auto;
}
.block-left,
.b-lef,
.blk-l {
	display: block;
	margin-right: auto;
}
.block-right,
.b-rig,
.blk-r {
	display: block;
	margin-left: auto;
}

/* 文字、インライン要素の揃え方向
================================*/
.text-center,
.t-cen,
.ta-c {
	text-align: center !important;
}
.text-left,
.t-lef,
.ta-l {
	text-align: left !important;
}
.text-right,
.t-rig,
.ta-r {
	text-align: right !important;
}
.text-justify,
.t-just,
.ta-j {
	text-align: justify!important;
}

/* フォントファミリー
================================*/
.ff-NotoSerifJP {
	font-family: "Noto Serif JP", serif;
}
.ff-MrsSaintDelafield {
	font-family: "Mrs Saint Delafield", cursive;
	letter-spacing: 0;
}

/* 文字ウェイト
================================*/
/*Light*/
.fw300 {
	font-weight: 300;
	vertical-align: baseline;
}
/*Regular*/
.fw400 {
	font-weight: 400;
	vertical-align: baseline;
}
/*Medium*/
/*
.fw500 {
	font-weight: 500;
	vertical-align: baseline;
}
*/
/*SemiBold*/
/*
.fw600 {
	font-weight: 600;
	vertical-align: baseline;
}
*/
/*Bold*/
.fw700 {
	font-weight: 700;
	vertical-align: baseline;
}

/*文字カラー
================================*/
.fc-theme01 {
	color: var(--theme-color01)!important;
	vertical-align: baseline;
}
.fc-theme02 {
	color: var(--theme-color02)!important;
	vertical-align: baseline;
}
.fc-theme03 {
	color: var(--theme-color03)!important;
	vertical-align: baseline;
}
.fc-fff {
	color: #fff!important;
	vertical-align: baseline;
}
.fc-333 {
	color: #333!important;
	vertical-align: baseline;
}
.fc-786967 {
	color: #786967!important;
	vertical-align: baseline;
}
.fc-f00 {
	color: #f00!important;
	vertical-align: baseline;
}

/* 注釈、脚注
================================*/
.kome {
	padding-left: 1em;
	text-indent: -1em;
}
/*footnote01*/
.footnote01 {
	display: flex;
	justify-content: flex-start;
	align-items: stretch;
	gap: 0.25em;
	text-align: left;
}
.footnote01_head {
	min-width: 1em;
}
.footnote01_text {}
/*footnote02*/
.footnote02 {
	display: flex;
	justify-content: flex-start;
	align-items: stretch;
	gap: 0.5em;
	text-align: left;
}
.footnote02_head {
	min-width: 1.5em;
}
.footnote02_text {}


/*================================
ノートPC 1366px～0px
================================*/
@media (max-width: 1366px) {}


/*================================
TABLET横 1080px～0px
================================*/
@media (max-width: 1080px) {

	/* font size設定 */
	/*--------------------------
	ベースとなるhtmlのfont sizeを10pxから8pxに変更することで、
	10px = 1remだったのが8px = 1remとなり、サイト全体の文字をサイズダウンする。
	ベースのfont sizeを変更したことで、bodyに設定した基本のfont sizeが
	1.8em = 18pxだったのが1.8em = 14.4pxになってしまうので、
	bodyのfont sizeを2em（16px相当）に変更する
	--------------------------
	※chrome対策のため、body要素のみemを使用、他の要素ではremを使用すること
	--------------------------
	※文字サイズ一覧※
	12.8px = 1.6rem
	14px = 1.75rem
	16px = 2rem
	18px = 2.25rem
	20px = 2.5rem
	24px = 3rem
	26px = 3.25rem
	28px = 3.5rem
	32px = 4rem
	--------------------------*/


	/*html基本設定
	================================*/
	html {
		font-size: 8px;
		font-size: 50%;
	}
	body {
		/*16px = 2em*/
		font-size: 2em;
	}

}


/*================================
TABLET縦 834px～0px
================================*/
@media (max-width: 834px) {

	/*margin-bottom
	================================*/
	.mb0-tab {
		margin-bottom: 0 !important;
	}
	.mb10-tab {
		margin-bottom: 1rem !important;
	}
	.mb20-tab {
		margin-bottom: 2rem !important;
	}
	.mb30-tab {
		margin-bottom: 3rem !important;
	}
	.mb40-tab {
		margin-bottom: 4rem !important;
	}
	.mb50-tab {
		margin-bottom: 5rem !important;
	}
	.mb60-tab {
		margin-bottom: 6rem !important;
	}
	.mb70-tab {
		margin-bottom: 7rem !important;
	}
	.mb80-tab {
		margin-bottom: 8rem !important;
	}
	.mb90-tab {
		margin-bottom: 9rem !important;
	}
	.mb100-tab {
		margin-bottom: 10rem !important;
	}

	/* コンテナ類、幅制御
	================================*/
	.inner {
		padding-left: 40px;
		padding-right: 40px;
	}

	/* 文字、インライン要素の揃え方向
	================================*/
	.text-center-tab,
	.t-cen-tab,
	.ta-c-tab {
		text-align: center !important;
	}
	.text-left-tab,
	.t-lef-tab,
	.ta-l-tab {
		text-align: left !important;
	}
	.text-right-tab,
	.t-rig-tab,
	.ta-r-tab {
		text-align: right !important;
	}
	.text-justify-tab,
	.t-just-tab,
	.ta-j-tab {
		text-align: justify!important;
	}

	/* ページ内リンク位置調整
	================================*/
	.anchor-link {}

}



/*================================
SP表示 667px～0px
================================*/
@media (max-width: 667px) {

	/*margin-bottom
	================================*/
	.mb0-sp {
		margin-bottom: 0 !important;
	}
	.mb10-sp {
		margin-bottom: 1rem !important;
	}
	.mb20-sp {
		margin-bottom: 2rem !important;
	}
	.mb30-sp {
		margin-bottom: 3rem !important;
	}
	.mb40-sp {
		margin-bottom: 4rem !important;
	}
	.mb50-sp {
		margin-bottom: 5rem !important;
	}
	.mb60-sp {
		margin-bottom: 6rem !important;
	}
	.mb70-sp {
		margin-bottom: 7rem !important;
	}
	.mb80-sp {
		margin-bottom: 8rem !important;
	}
	.mb90-sp {
		margin-bottom: 9rem !important;
	}
	.mb100-sp {
		margin-bottom: 10rem !important;
	}

	/* コンテナ類、幅制御
	================================*/
	.inner {
		padding-left: 20px;
		padding-right: 20px;
	}

	/* 文字、インライン要素の揃え方向
	================================*/
	.text-center-sp,
	.t-cen-sp,
	.ta-c-sp {
		text-align: center !important;
	}
	.text-left-sp,
	.t-lef-sp,
	.ta-l-sp {
		text-align: left !important;
	}
	.text-right-sp,
	.t-rig-sp,
	.ta-r-sp {
		text-align: right !important;
	}
	.text-justify-sp,
	.t-just-sp,
	.ta-j-sp {
		text-align: justify!important;
	}


}




/*================================
*
*共通パーツ（ヘッダー、フッターなど）
*
================================*/

/*================================
ここから全サイズ適用
================================*/

/*バナー
================================*/
.bnr_group {
	display: flex;
	justify-content: center;
	align-items: stretch;
	gap: 2rem 4rem;
}
.bnr_item {
	width: calc(100%/2 - 4rem/2);
}
.bnr_link {
	display: block;
	width: fit-content;
	margin-inline: auto;
	transition: 0.3s;
}
.bnr_item a:hover {
	filter: brightness(110%);
}

/* リンクボタン
================================*/
.link_btn {
	position: relative;
	z-index: 1;
	cursor: pointer;
	width: fit-content;
	min-height: 3.8rem;
	padding-top: 0.6rem;
	padding-left: 8rem;
	transition: padding 0.6s;
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	font-size: 1.6rem;
	font-weight: 400;
	text-align: left;
	line-height: 1.6;
	color: #333;
}
.link_btn::before {
	position: absolute;
	z-index: 1;
	content: "";
	left: 0;
	top: 0;
	width: 3.8rem;
	height: 3.8rem;
	border: 1px solid var(--theme-color01);
	border-radius: 100vmax;
	transition: 0.6s;
}
.link_btn::after {
	position: absolute;
	z-index: 1;
	content: "";
	left: calc(3.8rem/2);
	top: calc(3.8rem/2);
	width: 4rem;
	height: 1px;
	background: var(--theme-color01);
	transition: 0.6s;
}
/*hover*/
.link_btn:hover {
	padding-left: 6rem;
}
.link_btn:hover::before {
	top: calc(0.8rem/2);
	width: 3rem;
	height: 3rem;
}
.link_btn:hover::after {
	left: calc(3rem/2);
	width: 3rem;
}
/*nolink*/
.link_btn.-nolink {}

/*================================
ヘッダー
================================*/
.seo-message_wrapper {
	position: absolute;
	z-index: 10;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 100%;
	max-width: calc(1180px + 14rem);
	padding-top: 1rem;
	padding-left: 7rem;
	padding-right: 7rem;
}
.seo-message {
	font-size: 1.4rem;
	text-align: left;
	line-height: 1.4;
	color: #fff;
}
.header {
	position: absolute;
	z-index: 10;
	left: 0;
	top: 5rem;
	width: 100%;
}
.header .inner {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	max-width: calc(1180px + 14rem);
}
/*------------------------------*/
.hd_area01 {}
.hd_logo {
	max-width: 28rem;
}
.hd_logo_img {}
/*------------------------------*/
.hd_area02 {}
.hd_tel_cont {
	position: relative;
	z-index: 1;
	width: 33rem;
	height: 9rem;
	padding: 1rem;
	background: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}
.hd_tel_cont::before {
	position: absolute;
	z-index: 1;
	content: "";
	right: 1rem;
	bottom: 1rem;
	width: 1.2rem;
	height: 1.2rem;
	background: #bebebe;
	clip-path: polygon(100% 0,100% 100%,0 100%);
}
.hd_tel {}
.hd_tel_txt {
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.6;
	text-align: center;
}
.hd_tel_number {
	line-height: 1;
	font-weight: 300;
	font-size: 1.8rem;
	text-align: center;
	color: var(--theme-color02);
}
.hd_tel_link {
	display: inline-block;
	font-optical-sizing: auto;
	font-size: 3.2rem;
	color: var(--theme-color02);
}

/*固定タブ（右側）
================================*/
/*
.side_fix {
	position: fixed;
	z-index: 20;
	bottom: 18rem;
	right: 1rem;
	display: flex;
	justify-content: flex-start;
	align-items: flex-end;
	flex-direction: column;
	gap: 2rem;
}
.side_tab {
	cursor: pointer;
	transition: 0.4s;
	position: relative;
	z-index: 1;
	top: 0;
	width: 11.7rem;
}
.side_tab:hover {
	top: -0.5rem;
	filter: brightness(1.06);
}
.side_link {}
*/

/*================================
グローバルナビ
================================*/
.gnav {
	height: 14rem;
	background: #fff;
}
.gnav_cont {
	position: relative;
	z-index: 10;
	top: 0;
	left: 0;
	width: 100%;
}
.gnav .inner {
	display: flex;
	justify-content: center;
	align-items: center;
	max-width: calc(1000px + 14rem);
	height: 14rem;
	padding-top: 2rem;
	padding-bottom: 2rem;
}
.menu_lists {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
}
.menu_item {
	position: relative;
	z-index: 1;
	width: 100%;
}
.menu_item:not(:last-child) {
	border-right: 1px solid #e7e7e7;
}
.menu_link {
	display: block;
	position: relative;
	z-index: 1;
	width: fit-content;
	margin-inline: auto;
}
.menu_link::before {
	position: absolute;
	z-index: 1;
	content: "";
	left: 50%;
	translate: -50%;
	bottom: -1.2rem;
	transition: width 0.3s;
	width: 0;
	height: 2px;
	background: var(--theme-color01);
}
.menu_link:hover::before {
	width: 3rem;
}
.menu_link_jp {
	margin-bottom: 0.8rem;
	font-size: 1.6rem;
	text-align: center;
	line-height: 1.5;
	color: #333;
}
.menu_link_en {
	font-size: 1.25rem;
	text-align: center;
	line-height: 1.5;
	color: #333;
}
/*no link*/
.menu_link.-nolink {
	opacity: 0.4!important;
	margin-top: 0!important;
}
.menu_link.-nolink:hover::before {
	width: 0;
}

/* サブメニュー
-------------------------------*/
.sub_menu_lists {
	display: flex;
	justify-content: flex-start;
	align-items: stretch;
	flex-flow: row wrap;
	gap: 0 2rem;
	visibility: hidden;
	opacity: 0;
	position: absolute;
	z-index: 1;
	left: 50%;
	bottom: -16px;
	transform: translate(-50%,calc(100% - 20px));
	width: 40rem;
	padding: 10px 10px;
	background: #fff;
	border-radius: 0.4rem;
	transition: .3s;
	box-shadow: 0 0 20px 0 rgba(0,0,0,0.1);
}
/*ホバーでサブメニュー表示*/
.menu_item:hover .sub_menu_lists {
	visibility: visible;
	opacity: 1;
	transform: translate(-50%,calc(100% + 0px));
}
.sub_menu_item {
	position: relative;
	transition: .4s;
	width: calc(100%/2 - 1rem);
}
.sub_menu_link {
	display: block;
	padding: 1rem 0;
	font-size: 1.6rem;
	text-align: center;
	line-height: 1.5;
	color: #333;
}

/*-------------------------------
グローバルナビ（固定時）
-------------------------------*/
.gnav_cont.fixed {
	position: fixed;
	box-shadow: 0 0 20px 0 rgba(0,0,0,0.2);
	background: #fff;
	animation: gnav_cont-fixed 1s 0s ease both;
}
@keyframes gnav_cont-fixed {
	from {
		transform: translateY(-100%);
	}
	to {
		transform: translateY(0);
	}
}
.gnav_cont.fixed .inner {
	height: auto;
}
.gnav_cont.fixed .menu_link {
	padding-top: 0;
	background: none;
}

/*================================
メインコンテンツ
================================*/
.main {}

/*================================
フッターコンテンツ
================================*/
.footer {}
.ft_info {
	background: var(--theme-color03);
}
.ft_info .inner {
	max-width: calc(1000px + 14rem);
	padding-top: 9rem;
	padding-bottom: 9rem;
}

/*ft_fl
------------------------*/
.ft_fl {
	display: flex;
	justify-content: center;
	align-items: stretch;
	flex-flow: row wrap;
	gap: 4rem 4rem;
}
.ft_fl_item {
	width: calc(100%/2 - 4rem/2);
}

/*ロゴ
------------------------*/
.ft_logo {}
.ft_logo_img {
	max-width: 320px;
	margin: 0 auto;
}

/*住所
------------------------*/
.ft_address {
	font-size: 1.6rem;
	text-align: center;
	color: #fff;
}

/* 診療時間
------------------------*/
.ft_schedule {
	margin-inline: auto;
	max-width: 480px;
	padding: 2px 2px;
	background: var(--theme-color01);
}
.ft_time-tbl_wrap {
	padding: 1rem;
	background: #fff;
}
.ft_time-tbl {}
.ft_time-tbl .time {}
.ft_time-tbl .day {
	width: 9.7%;
}
.ft_time-tbl_thd th {
	padding: 8px 4px;
	border-bottom: 1px solid #d5dbd3;
	font-size: 1.6rem;
	text-align: center;
	line-height: 1;
	vertical-align: middle;
}
.ft_time-tbl_tbdy th {
	padding: 8px 4px;
	font-size: 1.6rem;
	text-align: center;
	line-height: 1;
	vertical-align: middle;
}
.ft_time-tbl_tbdy td {
	padding: 8px 4px;
	font-size: 1.2rem;
	font-weight: 700;
	text-align: center;
	line-height: 1;
	color: var(--theme-color01);
	vertical-align: middle;
}
.ft_time-tbl .am {
	padding-left: 0.5em;
}
.ft_time-tbl .pm {}

.ft_time-tbl_info {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 0 2rem;
	flex-flow: row wrap;
	padding: 0.5rem 1rem;
}
.ft_time-tbl_info .txt01 {
	font-size: 1.6rem;
	font-weight: 500;
	text-align: left;
	line-height: 1.6;
	color: #fff;
}
.ft_time-tbl_info .txt02 {
	font-size: 1.4rem;
	font-weight: 500;
	text-align: left;
	line-height: 1.6;
	color: #fff;
}
.ft_time-tbl_info .holyday {
	font-size: 1.4rem;
	font-weight: 500;
	text-align: left;
	line-height: 1.6;
	color: #fff;
}
.ft_sankaku {}

/* 初診受付
------------------------*/
.ft_time-tbl02_dl {
	display: flex;
	justify-content: center;
	align-items: stretch;
	flex-flow: row wrap;
	padding: 1rem;
	background: #fff;
}
.ft_time-tbl02_dl dt {
	padding-right: 3rem;
	border-right: 1px solid var(--theme-color02);
	font-size: 1.6rem;
	font-weight: 400;
	text-align: left;
	line-height: 1.6;
	color: #446d4a;
}
.ft_time-tbl02_dl dd {
	padding-left: 3rem;
	font-size: 1.6rem;
	font-weight: 400;
	text-align: right;
	line-height: 1.6;
	color: #446d4a;
}

/* カレンダー
------------------------*/
.ft_calendar {}
.ft_calendar iframe {
	/*aspect-ratio: 1/1;*/
	max-width: 100%;
	height: 500px;
}

/*電話
------------------------*/
.ft_tel_cont {
	max-width: 72rem;
	margin-inline: auto;
	padding: 2rem;
	background: #fff;
	border: 5px solid #95918e;
	box-shadow: 0 0 0 2px #c0c0c0 inset;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}
.ft_tel {
	width: 100%;
	max-width: 46rem;
	margin-inline: auto;
}
.ft_tel_txt {
	margin-bottom: 1rem;
	padding-bottom: 1rem;
	border-bottom: 1px solid #e0dbce;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.6;
	text-align: center;
}
.ft_tel_number {
	line-height: 1;
	font-weight: 300;
	font-size: 2.2rem;
	text-align: center;
	color: var(--theme-color02);
}
.ft_tel_link {
	display: inline-block;
	font-optical-sizing: auto;
	font-size: 3.4rem;
	color: var(--theme-color02);
}

/* Googleマップ
------------------------*/
.ft_googlemaps {
	height: 42rem;
}
.ft_googlemaps iframe {
	display: block;
	width: 100%;
	height: 100%;
}

/* 地域情報
------------------------*/
.ft_areainfo {
	background: #fff;
}
.ft_areainfo .inner {
	max-width: calc(1000px + 14rem);
	padding-top: 4rem;
	padding-bottom: 4rem;
}
.ft_areainfo_title {
	margin-bottom: 3rem;
	font-size: 2rem;
	text-align: center;
	line-height: 1.6;
}
.ft_areainfo_text {
	font-size: 1.6rem;
}

/* コピーライト表記
------------------------*/
.copyright {
	padding: 0.6rem 20px;
	background: var(--theme-color01);
	font-size: 1.4rem;
	line-height: 1.6;
	text-align: center;
}

/* ページTOPへ戻る
------------------------*/
.pagetop {
	opacity: 0;
	transition: .4s;
	position: fixed;
	z-index: 6;
	right: 3rem;
	bottom: 8rem;
	width: 4.5rem;
	aspect-ratio: 1/1;
	border: none;
	background: url(../img/pagetop.png)center/contain no-repeat;
	cursor: pointer;
}
.pagetop:hover {
	filter: brightness(110%);
}



/*================================
ノートPC 1366px～0px
================================*/
@media (max-width: 1366px) {}


/*================================
TABLET横 1080px～0px
================================*/
@media (max-width: 1080px) {}


/*================================
TABLET縦 834px～0px
================================*/
@media (max-width: 834px) {

	/* 画面下固定タブ
	================================*/
	.bottom_fix {
		display: flex;
		justify-content: flex-start;
		align-items: stretch;
		flex-flow: row wrap;
		position: fixed;
		z-index: 8;
		left: 0;
		bottom: 0;
		width: 100%;
		/*anime*/
		/*animation: fadeInUp 1.6s 2s ease both;*/
	}
	.bottom_tab {
		display: flex;
		justify-content: center;
		align-items: stretch;
		transition: 0.4s;
	}
	.bottom_link {
		display: flex;
		justify-content: center;
		align-items: center;
		height: 5.8rem;
		width: 100%;
		padding: 6px 10px;
	}
	.bottom_txt {
		padding-left: 1.8em;
		background-position: left top 0.2em;
		background-size: 1.2em auto;
		min-height: calc(2.4rem*1.4);
		font-size: 2.4rem;
		font-weight: 500;
		line-height: 1.4;
		color: #fff;
	}
	/*tel*/
	.bottom_tab.-tel {
		width: 100%;
		background: var(--theme-color02);
	}
	.bottom_tab.-tel .bottom_link {}
	.bottom_tab.-tel .bottom_txt {
		background-image: url(../img/bottom_tab_tel.png);
	}
	/*------------------------------*/


	/*バナー
	================================*/
	.bnr_group {
		flex-direction: column;
	}
	.bnr_item {
		width: 100%;
	}
	.bnr_link {}

	/* リンクボタン
	================================*/
	.link_btn {}
	.link_btn::before {}
	.link_btn::after {}

	/*================================
	ヘッダー
	================================*/
	.seo-message_wrapper {
		padding-left: 40px;
		padding-right: 40px;
	}
	.seo-message {}
	.header {}
	.header .inner {}
	/*------------------------------*/
	.hd_area01 {}
	.hd_logo {}
	.hd_logo_img {}
	/*------------------------------*/
	.hd_area02 {}
	.hd_tel_cont {}
	.hd_tel_cont::before {}
	.hd_tel {}
	.hd_tel_txt {}
	.hd_tel_number {}
	.hd_tel_link {}

	/*================================
	メインコンテンツ
	================================*/
	.main {}

	/*================================
	フッターコンテンツ
	================================*/
	.footer {}
	.ft_info {}
	.ft_info .inner {}

	/*ft_fl
	------------------------*/
	.ft_fl {}
	.ft_fl_item {}

	/*ロゴ
	------------------------*/
	.ft_logo {}
	.ft_logo_img {}

	/*住所
	------------------------*/
	.ft_address {}

	/* 診療時間
	------------------------*/
	.ft_schedule {}
	.ft_time-tbl_wrap {}
	.ft_time-tbl {}
	.ft_time-tbl .time {}
	.ft_time-tbl .day {}
	.ft_time-tbl_thd th {}
	.ft_time-tbl_tbdy th {}
	.ft_time-tbl_tbdy td {}
	.ft_time-tbl .am {}
	.ft_time-tbl .pm {}
	.ft_time-tbl_info {}
	.ft_time-tbl_info .txt01 {}
	.ft_time-tbl_info .txt02 {}
	.ft_time-tbl_info .holyday {}
	.ft_sankaku {}

	/* 初診受付
	------------------------*/
	.ft_time-tbl02_dl {}
	.ft_time-tbl02_dl dt {}
	.ft_time-tbl02_dl dd {}

	/* カレンダー
	------------------------*/
	.ft_calendar {}
	.ft_calendar iframe {}

	/*電話
	------------------------*/
	.ft_tel_cont {}
	.ft_tel {}
	.ft_tel_txt {}
	.ft_tel_number {}
	.ft_tel_link {}

	/* Googleマップ
	------------------------*/
	.ft_googlemaps {}
	.ft_googlemaps iframe {}

	/* 地域情報
	------------------------*/
	.ft_areainfo {}
	.ft_areainfo .inner {}
	.ft_areainfo_title {}
	.ft_areainfo_text {}

	/* コピーライト表記
	------------------------*/
	.copyright {
		padding: 0.6rem 20px 60px;
	}

	/* ページTOPへ戻る
	------------------------*/
	.pagetop {}
	
	
	
	
}



/*================================
SP表示 667px～0px
================================*/
@media (max-width: 667px) {


	/*バナー
	================================*/
	.bnr_group {}
	.bnr_item {}
	.bnr_link {}

	/* リンクボタン
	================================*/
	.link_btn {}
	.link_btn::before {}
	.link_btn::after {}

	/*================================
	ヘッダー
	================================*/
	.seo-message_wrapper {}
	.seo-message {}
	.header {
		top: 10px;
	}
	.header .inner {}
	/*------------------------------*/
	.hd_area01 {}
	.hd_logo {
		max-width: 180px;
	}
	.hd_logo_img {}
	/*------------------------------*/
	.hd_area02 {}
	.hd_tel_cont {}
	.hd_tel_cont::before {}
	.hd_tel {}
	.hd_tel_txt {}
	.hd_tel_number {}
	.hd_tel_link {}

	/*================================
	メインコンテンツ
	================================*/
	.main {}

	/*================================
	フッターコンテンツ
	================================*/
	.footer {}
	.ft_info {}
	.ft_info .inner {}

	/*ft_fl
	------------------------*/
	.ft_fl {}
	.ft_fl_item {
		width: 100%;
	}

	/*ロゴ
	------------------------*/
	.ft_logo {}
	.ft_logo_img {}

	/*住所
	------------------------*/
	.ft_address {}

	/* 診療時間
	------------------------*/
	.ft_schedule {}
	.ft_time-tbl_wrap {}
	.ft_time-tbl {}
	.ft_time-tbl .time {}
	.ft_time-tbl .day {}
	.ft_time-tbl_thd th {}
	.ft_time-tbl_tbdy th {}
	.ft_time-tbl_tbdy td {}
	.ft_time-tbl .am {}
	.ft_time-tbl .pm {}
	.ft_time-tbl_info {}
	.ft_time-tbl_info .txt01 {}
	.ft_time-tbl_info .txt02 {}
	.ft_time-tbl_info .holyday {}
	.ft_sankaku {}

	/* 初診受付
	------------------------*/
	.ft_time-tbl02_dl {}
	.ft_time-tbl02_dl dt {}
	.ft_time-tbl02_dl dd {}

	/* カレンダー
	------------------------*/
	.ft_calendar {}
	.ft_calendar iframe {}

	/*電話
	------------------------*/
	.ft_tel_cont {}
	.ft_tel {}
	.ft_tel_txt {}
	.ft_tel_number {}
	.ft_tel_link {}

	/* Googleマップ
	------------------------*/
	.ft_googlemaps {}
	.ft_googlemaps iframe {}

	/* 地域情報
	------------------------*/
	.ft_areainfo {}
	.ft_areainfo .inner {}
	.ft_areainfo_title {}
	.ft_areainfo_text {}

	/* コピーライト表記
	------------------------*/
	.copyright {}

	/* ページTOPへ戻る
	------------------------*/
	.pagetop {}
	
	
}
















