@charset "utf-8";
@import url("https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css");
@import url('https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@500;700;800&display=swap');


/*slide.cssの読み込み
------------------------------------------------------------------------------------------------------------------------------------------------------*/
@import url(slide.css);


/*全端末（PC・タブレット・スマホ）共通設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/

/*全体の設定
---------------------------------------------------------------------------*/
body {
	margin: 0px;
	padding: 0px;
	color: #666;	/*全体の文字色*/
	font-family: "M PLUS Rounded 1c", "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;	/*フォント種類*/
	font-size: 18px;	/*文字サイズ*/
	line-height: 1.5;		/*行間*/
	background: #f9f9f9;	/*背景色*/
	-webkit-text-size-adjust: none;
}
h1,h2,h3,h4,h5,p,ul,ol,li,dl,dt,dd,form,figure,form,select,input,textarea {margin: 0px;padding: 0px;font-size: 100%;font-weight: normal;}
ul {list-style-type: none;}
img {border: none;max-width: 100%;height: auto;vertical-align: middle;}
table {border-collapse:collapse;font-size: 100%;border-spacing: 0;}
iframe {width: 100%;}
video,audio {max-width: 100%;}

/*リンク（全般）設定
---------------------------------------------------------------------------*/
a {
	color: #555;		/*リンクテキストの色*/
	transition: 0.5s;	/*マウスオン時の移り変わるまでの時間設定。0.5秒。*/
}
a:hover {
	color: #F4B3BB;			/*マウスオン時の文字色*/
	text-decoration: none;	/*マウスオン時に下線を消す設定。残したいならこの１行削除。*/
}

/*container（footer以外を囲むブロック）
---------------------------------------------------------------------------*/
#container {
	max-width: 1500px;	/*サイトの最大幅*/
	margin: 0 auto;
	position: relative;
	padding: 0 10%;		/*上下、左右へのボックス内の余白*/
}

/*ヘッダー（ロゴが入った最上段のブロック）
---------------------------------------------------------------------------*/
/*ヘッダーブロック*/
header {
	float: left;	/*左に回り込み*/
	width: 25%;		/*幅*/
}
/*ロゴ画像ブロック*/
/*ロゴ画像ブロック*/
header #logo {
	margin-top: 10px;
	margin-bottom: 50px;	/*画像ブロックの下に空けるスペース*/
	background: #fff; /* #FFF0f0;	/*背景色*/
	border-radius: 10px 10px 10px 10px;	/*角丸のサイズ。左上、右上、右下、左下の順番の指定。*/
}
header #logo a {
    display: block;
    text-align: center;
    padding: 10% 5%;
    box-sizing: border-box;
}

/*メニューブロック
---------------------------------------------------------------------------*/
/*メニューブロック全体*/
.submenu {
	overflow: hidden;
	border-radius: 10px;	/*角丸のサイズ*/
	border: 5px solid #F4B3BB;	/*枠線の幅、線種、色*/
	margin-bottom: 20px;	/*ブロックの下に空けるスペース*/
}
/*メニュー１個あたりの設定*/
.submenu li {
	text-align: center;			/*文字をセンタリング*/
	border-top: 1px solid #ccc;	/*上の線の幅、線種、色*/
	font-size: 18px;			/*文字サイズ*/
}
.submenu li a {
	display: block;text-decoration: none;
	padding: 15px 5px;	/*上下、左右へのメニュー内の余白*/
	background: #fff;	/*背景色*/
}
/*マウスオン時*/
.submenu li a:hover {
/*	background: #FFF6f6;	/*背景色*/
	background: #F9F9F9;	/*背景色*/
}
/*１つ目のメニューへの追加指定*/
.submenu li:first-child {
	border: none;	/*上の線を消す*/
}
/*飾り文字*/
.submenu li span {
	display: block;
	font-size: 11px;		/*文字サイズ*/
	font-weight: normal;	/*文字を太字でなく標準に戻す設定*/
	letter-spacing: 0.2em;	/*文字間隔を少しあける設定*/
	color: #F4B3BB;			/*文字色*/
}

/*スマホ用メニューを表示させない*/
#menubar-s {display: none;}
/*３本バーアイコンを表示させない*/
#menubar_hdr {display: none;}

/*サイドガイド*/
@media screen and (min-width:481px) {
	.floating-banner {
	    display: none;
	}
}
@media screen and (max-width:480px) {
	#side_guide_wrap {
	    display: none;
	}
}
#side_guide_wrap {
    position: relative;
}
@media (min-height: 749px) {
    /* 高さ749px以上の場合 */
    #side_guide {
        width: 45px;
        position: fixed;
        z-index: 100;
        right: 5px;
        top: 15%;
        animation: fadein 5.0s forwards;
    }
    #side_guide img {
        margin-bottom: 10px;
        border-radius: 10px;
    }
    /*ゆっくり透明に*/
    #side_guide img {
        transition: 0.3s;
    }
    /*ホバー時に透明度50%*/
    #side_guide img:hover {
        opacity: 0.5;
    }
}
@media (max-height: 750px) {
    /* 高さ750px以下の場合 縮小 */
    #side_guide {
        width: 35px;
        position: fixed;
        z-index: 100;
        right: 0px;
        bottom: 20%;
        animation: fadein 5.0s forwards;
    }
    #side_guide img {
        width: 35px;
        height: auto;
        margin-bottom: 7px;
    }
    /*ゆっくり透明に*/
    #side_guide img {
        transition: 0.3s;
    }
    /*ホバー時に透明度50%*/
    #side_guide img:hover {
        opacity: 0.5;
    }
}
@media (max-height: 500px) {
    /* 高さ500px以下の場合 非表示 */
    #side_guide {
        display: none;
    }
}
/*バナーをページ下部に固定 縦 */
@media (orientation: portrait) {
    .floating-banner {
        position: fixed;
        /* バナーを追従させる */
        z-index: 99999;
        /* 他の要素の下に隠れないように */
        bottom: 5px;
        /* バナーの上下の位置 */
        right: 0;
        /* バナーの左右の位置 */
        /* width: 300px; /* バナーの横幅 */
    }
    .floating-banner ul {
        display: flex;
        list-style: none;
        padding: 0;
        margin: 0;
        width: 100%;
    }
    .floating-banner li {
        justify-content: center;
        align-items: center;
        width: 50%;
        padding: 0;
        margin: 0;
    }
    .floating-banner li a {
    	display: block;
    }
    .floating-banner li img {
        width: 100%;
        height: auto;
        border-radius: 10px 10px 0 0;
    }
    .floating-banner__image {
        max-width: 100%;
        /* 画像の最大幅 */
    }
}
/*バナーをページ下部に固定 横 */
@media (orientation: landscape) {
    .floating-banner {
        font-display: none;
    }
}

/*contents
---------------------------------------------------------------------------*/
#contents {
	clear: both;overflow: hidden;
}

/*mainコンテンツ
---------------------------------------------------------------------------*/
/*mainブロック全体の設定*/
#main {
	float: right;	/*右に回り込み*/
	width: 70%;		/*ブロックの幅*/
}
/*トップページでのmainコンテンツへの追加設定*/
.home #main {
	margin-top: 30%;	/*上に空けるスペース。スライドショーとのバランスをとって設定して下さい。*/
}
/*mainコンテンツのh2タグ設定*/
#main h2 {
	clear: both;
	font-size: 24px;
	margin-bottom: 20px;
	padding: 10px 20px 10px 60px;	/*上、右、下、左への見出し内の余白*/

/*	color: #fff;		/*文字色*/
/*	background: #F4B3BB;	/*背景色（古いブラウザ用）*/
/*	background: #F4B3BB url(../images/arrow2.png) no-repeat 20px center / 25px;	/*背景色、背景画像の読み込み。左から20pxの場所に配置。画像の幅を25pxに。*/
	border-radius: 10px;	/*角丸のサイズ*/

	background: #fff;	/*背景色（古いブラウザ用）*/
	background: #fff url(../images/arrow1.png) no-repeat 20px center / 25px;	/*背景色、背景画像の読み込み。左から20pxの場所に配置。画像の幅を25pxに。*/
	border: 1px solid #ccc;	/*枠線の幅、線種、色*/

}
/*mainコンテンツのh3タグ設定*/
#main h3 {
	clear: both;
	margin-bottom: 20px;
	padding: 10px 20px;		/*上下、左右への見出し内の余白*/
/*	border: 1px solid #ccc;	/*枠線の幅、線種、色*/
/*	background: #fff;	/*背景色*/
	border-radius: 10px;	/*角丸のサイズ*/

	color: #fff;		/*文字色*/
	background: #F4B3BB;	/*背景色（古いブラウザ用）*/
}
#main h3::first-letter {
	border-left: 3px solid #fff;
	padding-left: 15px;
}
/*mainコンテンツの段落タグ設定*/
#main p {
	padding: 0px 20px 20px;	/*上、左右、下への余白*/
}
/*他。微調整。*/
#main p + p {
	margin-top: -5px;
}
#main h2 + p,
#main h3 + p {
	margin-top: -10px;
}
#main section + section {
	margin-top: 30px;
}

.b-pink {
	font-weight: bold;
	color: #F4B3BB;
}

/*診療時間*/
.shinryo_wrap {
	width: 100%;
	padding: 0 8em;
	box-sizing: border-box;
}
.div_kamoku {
	font-size: 18px;
    text-align: center;
    padding-bottom: 0.5em;
    margin: 1em 0 3em;
}
.div_jikan {
    font-size: 18px;
    text-align: left;
    margin: 1em 1em 0 1em;
    text-indent: -1em;
}
.div_kyushin {
	font-size: 18px;
	text-align: left;
	color: #F4B3BB;
    margin: 0.5em 1em 1em 0;
}
.pink {
	color: #F4B3BB;
}
@media screen and (max-width: 768px) {
    .shinryo_wrap {
        padding: 0 2%;
    }
    .div_jikan,
    .div_kamoku,
    .div_kyushin {
    	font-size: 100%;
    }
}

/*subコンテンツ
---------------------------------------------------------------------------*/
/*subブロック全体の設定*/
#sub {
	float: left;		/*左に回り込み*/
	font-size: 14px;	/*文字サイズ*/
	line-height: 1.5;
	width: 25%;			/*ブロックの幅*/
}
#sub h2 {
	font-size: 18px;	/*文字サイズ*/
}
#sub h2::first-letter {
	border-left: 3px solid #F4B3BB;
	padding-left: 10px;
}
#sub .box h2::first-letter {
	border-left: 3px solid #fff;
}

/*subコンテンツ内のbox
---------------------------------------------------------------------------*/
#sub .box {
	background: #F4B3BB;	/*背景色*/
	color: #fff;			/*文字色*/
	padding: 20px;			/*ボックス内の余白*/
	border-radius: 10px;	/*角丸の指定*/
	margin-bottom: 20px;	/*ボックスの下(外側)に空けるスペース*/
}
/*リンクテキストの文字色*/
#sub .box a {
	color: #fff;
}
.side_tel {
    font-size: 24px;
    text-align: center;
    margin-bottom: 0.5em;
}
.side_tel a {
    letter-spacing: -0.03em;
    text-decoration: none;
}
.side_li ul {
	margin: 0px 0px 0px 0px;
	padding: 0px;
}
.side_li li {
	background-image: url("../images/dot_white.png");
	background-repeat: no-repeat;
	background-position: 0px 6px;
	padding: 0px 0px 15px 15px;
	margin: 0px 0px 0px 0px;
	list-style-type: none;
}
.side_p {
	margin: 1em 0 1.5em !important;
	font-size: 1rem;
}

/*診察時間*/
.timetable-wrap {
	padding: 1em 1.5em;
	background-color: #F4B3BB;
	border-radius: 10px;
}
.timetable {
    border-collapse: collapse;
	width: 100%;
}
.timetable th,
.timetable td {
    color: #fff;
    padding: 0.5em 0;
    text-align: center;
    font-size: 1.2em;
}
.timetable tr > *:first-child {
    min-width: 2em;
}
.timetable .dow th,
.timetable .am-line th,
.timetable .am-line td {
    border-bottom: 1px solid #fff;
}
.timetable .dow th,
.timetable .day td {
    border-left: 1px solid #fff;
}
.timetable .dow th:first-child {
    border-left: 0;
}
@media screen and (max-width: 900px) {
	#sub .timetable th, .timetable td {
		font-size: 1.35em;
	}
}

/*address*/
#sub address {
	font-style: normal;	/*デフォルトで斜体になるのでノーマルに*/
}

/*フッター設定
---------------------------------------------------------------------------*/
footer {
	clear: both;
	padding-top: 40px;
	text-align: center;
	font-size: 85%;
}
footer .pr {display: block;font-size: 80%;}

/*フッターメニュー
---------------------------------------------------------------------------*/
/*ボックス全体*/
#footermenu {
	padding: 40px;
}
/*メニュー１個あたり*/
#footermenu li {
	display: inline-block;	/*横並びにさせる*/
	padding: 2px 10px;	/*上下、左右への余白*/
}
#footermenu li a {
	color: #F4B3BB;
}
#footermenu li a:hover {
	color: #777;
}

/*フッター地図*/
.footer_space_map{
	display: flex;
	justify-content: space-between;
	width: 100%;
	margin-top: 60px;
/*	background-color: #FFF0F0;*/
}
.footer_space_map a {
	color:#F4B3BB;
	text-decoration:none;
}
.footer_space_map a:hover {
	opacity: 0.8;
}
.footer_space_map_r img{
	width: 380px;
	height: auto;
	margin-bottom: 15px;
}
.footer_space_map iframe {
    vertical-align: bottom;
}
.footer_space_map_l {
	width : calc(100% - 550px);
}
.footer_space_map_r {
	width: 550px;
	height: 420px;
	color: #666;
	text-align: center;
	font-size: 16px;
	padding: 60px 0 0 0;
	line-height: 1.2em;
	box-sizing: border-box;
	background-color: #fff;
}
.footer_space_map_r .address {
	font-size: 16px;
	font-weight: 600;
	margin: 0 0 20px 0;
}
.footer_space_map_r .tel {
	font-size: 25px;
	font-weight: 600;
	color: #F7ACB5;
	margin: 20px 0 0 0;
}
.footer_space_map_r .mail {
	font-size: 18px;
	font-weight: 600;
	margin: 20px 0 0 0;
}


/*コピーライト
---------------------------------------------------------------------------*/
#copyright {
	clear: both;
	background: #aaa;	/*背景色*/
	color: #fff;		/*文字色*/
}
#copyright a {
	text-decoration: none;
	color: #fff;		/*文字色*/
}

/*トップページ
---------------------------------------------------------------------------*/
.h01l{
	font-family: 'M PLUS Rounded 1c', sans-serif;
	font-weight: 800;
	font-size: 120%;
	color: #F4B3BB;
}
.h02{
	font-weight: bold;
	font-size: 105%;
	color: #999;
}
/*まる付き数字*/
ol.maru {
  counter-reset:number; /*数字をリセット*/
  list-style-type: none!important; /*数字を一旦消す*/
  padding:0.5em;
}
ol.maru li {
  position: relative;
  padding-left: 30px;
  line-height: 1.5;
  padding: 0.5em 0.5em 0.5em 30px;
}
ol.maru li::before{
  /* 以下数字をつける */
  position: absolute;
  counter-increment: number;
  content: counter(number);

  /*以下数字のデザイン変える*/
  display:inline-block;
  background: #F7ACB5;
  color: white;
  font-family: 'Avenir','Arial Black','Arial',sans-serif;
  font-weight:bold;
  font-size: 15px;
  border-radius: 50%;
  left: 0;
  width: 25px;
  height: 25px;
  line-height: 25px;
  text-align: center;
  /*以下 上下中央寄せのため*/
  top: 1.5em;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
ol.maru .feature {
	color: #F4B3BB;
	font-weight: bold;
	margin-bottom: 0.5em;
}
/*※付きリスト*/
ul.kome {
  list-style-type: none!important; /*数字を一旦消す*/
  padding:0.5em;
}
ul.kome li {
  position: relative;
  line-height: 1.5;
  padding: 0.25em 0;
  padding-left: 1em;
}
ul.kome li::before{
  position: absolute;
  content: "※";
  color: #666;
  display:inline-block;
  font-size: 15px;
  left: 0;
  top: 5px;
}

/*院長*/
.profile {
	width: 100%;
	margin: 1em auto;
	padding: 0 9em;
	box-sizing: border-box;
}
.profile .name {
	font-size: 22px;
	font-weight: bold;
	text-align: center;
	padding-bottom: 0.5em;
	margin-bottom: 1em;
	border-bottom: 1px solid #F4B3BB;
}
.profile .position {
	width: 100%;
}
@media screen and (max-width:768px){
	.profile {
		padding: 0 2%;
	}
}

/*アクセス*/
.access-block {
	display: flex;
	justify-content: space-between;
	flex-direction: row-reverse;
	padding-right: 3%;
}
@media screen and (max-width:768px) {
	.access-block {
		flex-wrap: wrap;
		flex-direction: column;
	}
	.access-block > * {
		width: 100% !important;
	}
}
/*トップページ内「更新情報・お知らせ」ブロック
---------------------------------------------------------------------------*/
/*（/tool/css/topics.css を参照）*/

/*listブロック
---------------------------------------------------------------------------*/
/*ブロック１個あたりの設定*/
.list {
	overflow: hidden;
	width: 26.4%;	/*幅*/
	float: left;	/*左に回り込み*/
	margin: 0 0 20px 2%;	/*上、右、下、左へのボックスの外側に空けるスペース*/
	border: 1px solid #ccc;	/*枠線の幅、線種、色*/
	box-shadow: 3px 4px 2px rgba(0,0,0,0.1);	/*ボックスの影。右へ、下へ、ぼかし幅、色。0,0,0は黒の事で、0.1は色が10%出た状態。*/
	padding: 2%;	/*ボックス内の余白*/
	border-radius: 3px;	/*角丸のサイズ。ほんの少し角が丸くなってます。*/
	background: #fff;	/*背景色*/
}
.list a {
	display: block;text-decoration: none;overflow: hidden;
	margin: -2%;	/*ボックスのマージン。リンク設定する場合に、上の.listのpaddingを相殺するため。*/
	padding: 2%;	/*ボックス内の余白*/
	background: #fff url(../images/arrow1.png) no-repeat right bottom / 40px;	/*リンク設定した際の右下の矢印マークの読み込み。right（右）、bottom（下）、40pxは画像の幅。*/
}
/*マウスオン時の設定*/
.list a:hover {
	position: relative;
	left: 1px;	/*マウスオン時に右に1px移動する*/
	top: 1px;	/*マウスオン時に下に1px移動する*/
}
/*h4（見出し）タグの設定*/
.list h4 {
	color: #F4B3BB;		/*文字色*/
	font-size: 120%;	/*文字サイズ*/
	text-align: center;	/*文字をセンタリング*/
	height: 2em;		/*高さ*/
	overflow: hidden;	/*高さを超えた場合に非表示にする*/
}
/*p（段落）タグの設定*/
.list p {
	padding: 0 !important;
	line-height: 1.5;	/*行間を少し狭くする。デフォルトは最上部のbodyにあります。*/
	font-size: 90%;		/*文字サイズを少し小さく*/
	color: #333;		/*文字色*/
	height: 6em;		/*高さ。1.5emを１行分とカウントして下さい。6emなら４行です。*/
	overflow: hidden;	/*高さを超えた場合に非表示にする*/
}

/*サムネイル画像の設定
---------------------------------------------------------------------------*/
.thumbnail {
	width: 70px;	/*サムネイル画像の幅*/
	margin: 5px;	/*画像同士に空けるスペース*/
	opacity: 0.7;	/*透明度。色が70%出た状態。*/
}
/*マウスオン時*/
.thumbnail:hover {
	opacity: 1;	/*透明度。色が100%出た状態。*/
}

/*よく頂く質問
---------------------------------------------------------------------------*/
/*外側ブロック*/
.faq {
	padding: 0px 20px;	/*上下、左右への余白*/
}
/*質問*/
.faq dt {
	color: #F4B3BB;		/*文字色*/
	font-weight: bold;	/*太字にする設定*/
	padding-left: 30px;	/*背景アイコンに重ならないよう左に余白を作る*/
	background: url(../images/faq_q.png) no-repeat left top / 30px;	/*「Q」アイコン*/
}
/*回答*/
.faq dd {
	padding-left: 30px;		/*背景アイコンに重ならないよう左に余白を作る*/
	margin-bottom: 20px;	/*ボックスの下側（外側）に空けるスペース*/
	padding-bottom: 20px;	/*ボックス内の下側に空けるスペース*/
	border-bottom: 1px solid #ccc;	/*下線の幅、線種、色*/
	background: url(../images/faq_a.png) no-repeat left top / 30px;	/*「A」アイコン*/
}

/*テーブル
---------------------------------------------------------------------------*/
/*テーブル１行目に入った見出し部分（※caption）*/
.ta1 caption {
	border: 1px solid #ccc;	/*テーブルの枠線の幅、線種、色*/
	border-bottom: none;	/*下線だけ消す*/
	text-align: left;		/*文字を左寄せ*/
	background: #eee;		/*背景色*/
	color: #666;			/*文字色*/
	font-weight: bold;		/*太字に*/
	padding: 10px;			/*ボックス内の余白*/
}
/*ta1設定*/
.ta1 {
	table-layout: fixed;
	width: 100%;
	margin: 0 auto 20px;
	background: #fff;	/*背景色*/
	color: #666;		/*文字色*/
}
.ta1, .ta1 td, .ta1 th {
	word-break: break-all;
	border: 1px solid #ccc;	/*テーブルの枠線の幅、線種、色*/
	padding: 10px;	/*ボックス内の余白*/
}
/*ta1の左側ボックス*/
.ta1 th {
	width: 140px;		/*幅*/
	text-align: center;	/*センタリング*/
}

/*テーブル（ta2）サブブロックの受付テーブルに使用。
---------------------------------------------------------------------------*/
/*テーブル１行目に入った見出し部分（※caption）*/
.ta2 caption {
	border: 1px solid #b7b7b7;	/*テーブルの枠線の幅、線種、色*/
	border-bottom: none;	/*下線だけ消す*/
	text-align: center;
	background: #fff;		/*背景色*/
	color: #333;
	font-weight: bold;		/*太字に*/
	padding: 10px;			/*ボックス内の余白*/
}
/*ta2設定*/
.ta2 {
	table-layout: fixed;
	width: 100%;
	margin-bottom: 20px;
	text-align: center;	/*センタリング*/
	background: #fff;	/*背景色*/
	color: #333;
}
.ta2, .ta2 td, .ta2 th {
	word-break: break-all;
	border: 1px solid #b7b7b7;	/*テーブルの枠線の幅、線種、色*/
}
/*曜日*/
.ta2 th {
	background: #fffbe3;
}

/*inputボタン
---------------------------------------------------------------------------*/
#main input[type="submit"].btn,
#main input[type="button"].btn,
#main input[type="reset"].btn {
	padding: 5px 10px;
	border: 1px solid #ccc;
	font-size: 18px;
	border-radius: 3px;
	background: #eee;
}
/*マウスオン時の設定*/
#main input[type="submit"].btn:hover,
#main input[type="button"].btn:hover,
#main input[type="reset"].btn:hover {
	border: 1px solid #999;
	background: #fff;
}

/*box（info1.htmlやstaff.htmlで使っている枠色がついたタイプのボックス）
---------------------------------------------------------------------------*/
/*box*/
#main .box {
	overflow: hidden;
	border: 3px solid #F4B3BB;	/*枠線の幅、線種、色*/
	padding: 20px;				/*ボックス内の余白*/
	border-radius: 10px;		/*角丸のサイズ。この１行を削除すれば角のとれた長方形になります。*/
	margin-bottom: 20px;		/*ボックスの下に空けるスペース*/
	background: #fff;			/*背景色*/
}
/*box内のh4タグ*/
#main .box h4 {
	color: #F4B3BB;		/*文字色*/
	font-size: 130%;	/*文字サイズ*/
}
/*box内のpタグ*/
#main .box p {
	padding: 0 !important;
}
/*box内のfrとflスタイルのリセット*/
#main .box .fr,#main .box .fl {margin-bottom: 0;}
@media screen and (max-width:480px){
	 #main .box h4 {
	 	font-size: 110%;
	 }
}

/*ページ内メニュー（info.htmlで使用）
---------------------------------------------------------------------------*/
/*ブロック全体*/
.menu {
	overflow: hidden;
	margin-bottom: 20px;	/*下に空けるスペース*/
	text-align: center;		/*内容をセンタリング*/
}
/*メニュー１個あたりの指定*/
.menu li {
	display: inline;	/*横並びになる指定*/
	border-right: 1px solid #999;	/*右側の線の幅、線種、色*/
}
.menu li a {
	padding: 10px;	/*メニュー内余白*/
}
/*最初のメニューへの追加指定*/
.menu li:first-child {
	border-left: 1px solid #999;	/*左側の線の幅、線種、色*/
}

/*PAGE TOP（↑）設定
---------------------------------------------------------------------------*/
/*アニメーションのキーグレーム設定（変更不要）*/
@keyframes scroll {
0% {opacity: 0;}
100% {opacity: 1;}
}
/*デフォルトでは非表示に*/
body .nav-fix-pos-pagetop a {display: none;}
/*ボタンの設定*/
body.is-fixed-pagetop .nav-fix-pos-pagetop a {
	display: block;z-index: 100;position: fixed;
	width: 100px;		/*幅*/
	bottom: 55px;		/*下からの配置場所指定*/
	right: 3%;			/*右からの配置場所指定*/
	animation-name: scroll;	/*上のアニメーションで指定しているkeyframesの名前（scroll）*/
	animation-duration: 0.5S;	/*アニメーションの実行時間*/
	animation-fill-mode: forwards;	/*アニメーションの完了後、最後のキーフレームを維持する*/
	border-radius: 50%;
	border: 3px solid #F4B3BB;	/*枠線の幅、線種、色*/
	background: #fff;	/*背景色（古いブラウザ用）*/
	background: rgba(255,255,255,0.5);	/*背景色。255,255,255は白のことで0.3は色が30%出た状態のこと。*/
}
/*マウスオン時*/
body.is-fixed-pagetop .nav-fix-pos-pagetop a:hover {
	background: #fff;
}
@media screen and (max-width:480px) {
	body.is-fixed-pagetop .nav-fix-pos-pagetop a {
		bottom: 85px;
	}
}

/*pdfアイコン
---------------------------------------------------------------------------*/
a[href$=".pdf"]{
	display: inline-block;
	background: url(../images/PDF_32.png) no-repeat right center;
	padding: 5px 40px 5px 0px;
}

/*トップページのNEWアイコン
---------------------------------------------------------------------------*/
.newicon {
	background: #F00;	/*背景色*/
	color: #FFF;		/*文字色*/
	font-size: 70%;
	line-height: 1.5;
	padding: 2px 5px;
	border-radius: 2px;
	margin: 0px 5px;
	vertical-align: text-top;
}

/*アクセス
---------------------------------------------------------------------------*/
.p_access {
	padding-left: 20px;
}

/*医師の紹介
---------------------------------------------------------------------------*/
.dr_greeting p {
	text-indent: 1em;
}
.dr_image {
	max-width: 320px;
}
.dr_timeline_wrap {
	width: 100%;
	padding: 0 20px 20px;
	box-sizing: border-box;
}
.dr_timeline {
	border-collapse: collapse;
	clear: both;
	width: 100%;
	box-sizing: border-box;
}
.dr_timeline th {
	text-align: left;
	width: 18%;
	padding: 10px 2% 10px 6%;
	vertical-align: middle;
	border-color: #CCC; /*#F4B3BB;*/
	border-style: solid;
	border-width: 1px 1px 1px 0;
	vertical-align: middle;
	font-weight: normal;
	white-space: nowrap;
	box-sizing: border-box;
}
.dr_timeline td {
	text-align: left;
	padding: 10px 0px 10px 2%;
	vertical-align: middle;
	border-color: #CCC;
	border-style: solid;
	border-width: 1px 0;
	width: 76%;
	box-sizing: border-box;
}
@media screen and (min-width:1401px){
	.dr_timeline th {
		width: 18%;
		padding: 10px 2% 10px 4%;
	}
}
@media screen and (max-width:1400px){
	.dr_timeline th {
		width: 20%;
		padding: 10px 2% 10px 4%;
	}
}
@media screen and (max-width:1200px){
	.dr_timeline th {
		width: 22%;
		padding: 10px 2% 10px 2%;
	}
}
@media screen and (max-width:767px){
	.dr_timeline th {
		width: 23%;
		padding: 10px 2% 10px 10px;
	}
}
@media screen and (max-width:480px){
	.dr_timeline_wrap {
		padding: 0 5px 20px;
	}
	.dr_timeline th {
		width: 30%;
		padding: 10px 2% 10px 5px;
	}
}

/*診療のご案内
---------------------------------------------------------------------------*/
.guide-flow {
	margin-top: 1em;
	display: flex;
	justify-content: space-between;
}
.guide-flow .guide-img {
	width: 40%;
}
.guide-flow .guide-img img {
	width: 100%;
	height: auto;
}
.guide-flow .guide-text {
	width: 57%;
}
@media screen and (max-width:480px) {
	.guide-flow {
		flex-direction: column;
		flex-wrap: wrap;
	}
	.guide-flow > * {
		width: 100% !important;
	}
	.guide-flow .guide-text {
		margin-top: 1em;
	}
	.guide-flow .guide-text ul {
		padding-left: 20px;
	}
}

/*予約
---------------------------------------------------------------------------*/
.app-btn {
	display: flex;
	justify-content: center;
	margin: 1.5em auto;
}
.app-btn img {
	width: auto;
	height: 50px;
	margin: 0 10px;
}
@media screen and (max-width:480px) {
	.app-block ul {
		padding-left: 20px;
	}
}

/*お問い合わせ
---------------------------------------------------------------------------*/
.disisma {
	width: 100%;
}
.disisma img {
	width: 100%;
	max-width: 320px;
	height: 80px;
	margin: auto;
}
.line-btn {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 1.5em auto;
}
.line-btn img {
	margin: 0 10px;
}
.line-btn img.line-banner {
	width: auto;
	height: 50px;
}
.line-btn img.line-qr {
	width: 100%;
	max-width: 167px;
	height: auto;
}
@media screen and (max-width:480px) {

}


/*checkブロック。赤い注意書きブロックです。
---------------------------------------------------------------------------*/
p.check {
	background: #ff0000;
	color:#fff;
	padding: 10px 25px !important;
	margin-bottom: 20px;
}
#sub p.check {
	padding: 5px !important;
}
p.check a {color: #fff;}

/*ul.disc,olタグ
---------------------------------------------------------------------------*/
ul.disc {
	list-style: disc;
	padding: 0 20px 20px 40px;
}
ol {
	padding: 0 20px 20px 45px;
}

/*その他
---------------------------------------------------------------------------*/
.look {background: #eee;border: 1px solid #ccc;padding: 5px 10px;border-radius: 4px;}
.mb15,.mb1em {margin-bottom: 15px;}
.mb10 {margin-bottom: 10px;}
.mb30 {margin-bottom: 30px;}
.clear {clear: both;}
.color1, .color1 a {color: #F4B3BB;}
.bgcolor1 {background: #f2f2f2 !important;}
.bgcolor2 {background: #dbebf7 !important;}
.pr {font-size: 10px;}
.wl {width: 96%;}
.ws {width: 50%;}
.w40p {width: 40%;}
.w20p {width: 20%;}
.c {text-align: center;}
.r {text-align: right;}
.l {text-align: left;}
.fr {float: right;margin-left: 2%;margin-bottom: 20px;}
.fl {float: left;margin-right: 2%;margin-bottom: 20px;}
.big1 {font-size: 24px;letter-spacing: 0.2em;}
#sub .big1 {font-size: 20px;letter-spacing: normal;}
.mini1 {font-size: 11px;display: inline-block;line-height: 1.5;}
.sh {display: none;}
.dn {display: none;}




/*画面幅1100px以下の設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width:1100px){

/*container（footer以外を囲むブロック）
---------------------------------------------------------------------------*/
#container {
	padding: 0 3%;		/*上下、左右へのボックス内の余白*/
}

/*mainコンテンツ
---------------------------------------------------------------------------*/
/*トップページでのmainコンテンツへの追加設定*/
.home #main {
	margin-top: 23%;	/*上に空けるスペース。スライドショーとのバランスをとって設定して下さい。*/
}

}



/*画面幅900px以下の設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width:900px){

/*ヘッダー（ロゴが入った最上段のブロック）
---------------------------------------------------------------------------*/
/*ヘッダーブロック*/
header {
	position: absolute;
	left: 3%;	/*画面の左からの配置場所指定*/
	top: 0px;	/*画面の上からの配置場所指定*/
}
/*ロゴ画像ブロック*/
header #logo {
	width: 170px;	/*ロゴ画像の幅*/
}

/*contents
---------------------------------------------------------------------------*/
/*トップページのcontentsブロック*/
.home #contents {
	padding-top: 25%;	/*上のスライドショーとのバランスをとって下さい*/
}
/*トップページ以外のcontentsブロック*/
#contents {
	padding-top: 200px;
}

/*メインメニュー
---------------------------------------------------------------------------*/
/*アニメーションのフレーム設定。全100コマアニメーションだと思って下さい。透明(0%)から色を100%出すアニメーション指定。*/
@keyframes menu1 {
	0% {opacity: 0;}
	100% {opacity: 1;}
}
/*スマホ用メニューブロック*/
#menubar-s {
	display: block;overflow: hidden;
	position: absolute;
	top: 0px;
	left: 0px;
	border-top: 1px solid #fff;		/*上の線の幅、線種、色*/
	width: 100%;
	z-index: 10;
	animation-name: menu1;		/*上のkeyframesの名前*/
	animation-duration: 0.5S;	/*アニメーションの実行時間。0.5秒。*/
	animation-fill-mode: both;	/*アニメーションの完了後、最後のキーフレームを維持する*/
	border: 5px solid #F4B3BB;
	border-radius: 10px;
	box-sizing: border-box;
}
/*メニュー１個あたりの設定*/
#menubar-s li {
	border-top: 1px solid #ccc;
}
#menubar-s li:first-child {
	border-top: 0px;
}

#menubar-s li a {
	display: block;text-decoration: none;
	padding: 15px 10px 15px 20px;	/*上、右、下、左へのメニュー内の余白*/
	background: rgba(255,255,255,0.9);	/*背景色*/
	font-size: 16px;
	color: #666;	/*文字色*/
}
/*英語表記（飾り文字）*/
#menubar-s li a span {
	display: block;
	font-size: 12px;	/*文字サイズ*/
}
/*PC用メニューを非表示にする*/
#menubar {display: none;}

/*３本バーアイコン設定
---------------------------------------------------------------------------*/
/*３本バーブロック*/
#menubar_hdr {
	display: block;
	position: absolute;
	z-index: 11;
	top: 50px;	/*上からの配置場所指定*/
	right: 3%;	/*右からの配置場所指定*/
	border: 1px solid #fff;	/*枠線の幅、線種、色*/
}
/*アイコン共通設定*/
#menubar_hdr.close,
#menubar_hdr.open {
	width: 50px;	/*幅*/
	height: 50px;	/*高さ*/
	border-radius: 50%;
}
/*三本バーアイコン*/
#menubar_hdr.close {
	background: #F4B3BB url(../images/icon_menu.png) no-repeat center top/50px;
}
/*閉じるアイコン*/
#menubar_hdr.open {
	background: #F4B3BB url(../images/icon_menu.png) no-repeat center bottom/50px;
}

/*header,main,sub
---------------------------------------------------------------------------*/
header, #main, #sub {
	float: none;
	width: auto;
	overflow: hidden;
}
#sub {
	margin-top: 60px;
}
/*その他
---------------------------------------------------------------------------*/
body.s-n #sub,body.s-n #side {display: none;}

/*フッター
---------------------------------------------------------------------------*/
/*フッター地図*/
.footer_space_map {
	margin-top: 0;
	justify-content: center;
	flex-direction: column;
	flex-wrap: wrap;
}
.footer_space_map_l{
	width : 100%;
}
.footer_space_map_r{
	margin: auto;
	width: 100%;
	padding: 40px 0;
	height: auto;
}
.footer_space_map_r .address{
	font-size: 100%;
}
.footer_space_map_r .tel {
	font-size: 110%;
	font-family: 'M PLUS Rounded 1c', sans-serif;
	font-weight: 800;
	margin: 10px 0 0 0;
}
.footer_space_map_r .mail{
	font-size: 105%;
	margin: 10px 0 0 0;
}
.footer_space_map_r img {
	width: 60%;
	height: auto;
	margin-bottom: 10px;
}
.address_sp {
	font-size: 80%;
}

}



/*画面幅600px以下の設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width:600px){

/*mainコンテンツ
---------------------------------------------------------------------------*/
/*mainコンテンツのh2タグ設定*/
#main h2{
	font-size: 18px;	/*文字サイズ*/
	padding: 10px 20px 10px 60px;	/*上、右、下、左への見出し内の余白*/
}
#sub h2.h2 {
	font-size: 18px;	/*文字サイズ*/
	padding: 10px 20px 10px 30px !important;	/*上、右、下、左への見出し内の余白*/
}

/*PAGE TOP（↑）設定
---------------------------------------------------------------------------*/
/*ボタンの設定*/
body.is-fixed-pagetop .nav-fix-pos-pagetop a {
	width: 60px;	/*幅*/
}




/*画面幅480px以下の設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width:480px){

/*全体の設定
---------------------------------------------------------------------------*/
body {
	font-size: 100%;
}

/*ヘッダー（ロゴが入った最上段のブロック）
---------------------------------------------------------------------------*/
/*ロゴ画像ブロック*/
header #logo {
	width: 120px;	/*ロゴ画像の幅*/
}
/*フッター
---------------------------------------------------------------------------*/
/*ロゴ画像ブロック*/
footer {
	padding-bottom: 80px;
}
/*contents
---------------------------------------------------------------------------*/
/*トップページのcontentsブロック*/
.home #contents {
	padding-top: 60%;	/*上のスライドショーとのバランスをとって下さい*/
}
/*トップページ以外のcontentsブロック*/
#contents {
	padding-top: 140px;
}

/*mainコンテンツ
---------------------------------------------------------------------------*/
/*mainコンテンツのh2タグ設定*/
#main h2,
#sub h2.h2 {
	font-size: 16px !important;
	padding-left:  40px;
	background: #fff url(../images/arrow1.png) no-repeat 10px center / 20px !important;
}
/*mainコンテンツのh3タグ設定*/
#main h3 {
	padding: 4px 15px;
}
#main h3::first-letter {
	padding-left: 8px;
}
/*mainコンテンツの段落タグ設定*/
#main p {
	padding: 0px 0px 20px;	/*上、左右、下への余白*/
}

/*listブロック
---------------------------------------------------------------------------*/
/*ブロック１個あたりの設定*/
.list {
	overflow: hidden;
	width: 26.4%;	/*幅*/
	float: left;	/*左に回り込み*/
	margin: 0 0 20px 2%;	/*上、右、下、左へのボックスの外側に空けるスペース*/
	border: 1px solid #ccc;	/*枠線の幅、線種、色*/
	box-shadow: 3px 4px 2px rgba(0,0,0,0.1);	/*ボックスの影。右へ、下へ、ぼかし幅、色。0,0,0は黒の事で、0.1は色が10%出た状態。*/
	padding: 2%;	/*ボックス内の余白*/
	border-radius: 3px;	/*角丸のサイズ。ほんの少し角が丸くなってます。*/
}
.list a {
	display: block;text-decoration: none;overflow: hidden;
	margin: -2%;	/*ボックスのマージン。リンク設定する場合に、上の.listのpaddingを相殺するため。*/
	padding: 2%;	/*ボックス内の余白*/
	background: url(../images/arrow1.png) no-repeat right bottom / 40px;	/*リンク設定した際の右下の矢印マークの読み込み。right（右）、bottom（下）、40pxは画像の幅。*/
}
/*マウスオン時の設定*/
.list a:hover {
	position: relative;
	left: 1px;	/*マウスオン時に右に1px移動する*/
	top: 1px;	/*マウスオン時に下に1px移動する*/
}
/*h4（見出し）タグの設定*/
.list h4 {
	color: #F4B3BB;		/*文字色*/
	font-size: 120%;	/*文字サイズ*/
	text-align: center;	/*文字をセンタリング*/
	height: 2em;		/*高さ*/
	overflow: hidden;	/*高さを超えた場合に非表示にする*/
}
/*p（段落）タグの設定*/
.list p {
	padding: 0 !important;
	line-height: 1.5;	/*行間を少し狭くする。デフォルトは最上部のbodyにあります。*/
	font-size: 90%;		/*文字サイズを少し小さく*/
	color: #333;		/*文字色*/
	height: 6em;		/*高さ。1.5emを１行分とカウントして下さい。6emなら４行です。*/
	overflow: hidden;	/*高さを超えた場合に非表示にする*/
}

/*よく頂く質問
---------------------------------------------------------------------------*/
.faq {
	padding: 0px;
}
.faq dt,.faq dd {
	background-size: 25px;
}

/*テーブル（ta1）
---------------------------------------------------------------------------*/
/*テーブル１行目に入った見出し部分（※caption）*/
.ta1 caption {
	padding: 5px;	/*ボックス内の余白*/
}
/*ta1設定*/
.ta1, .ta1 td, .ta1 th {
	padding: 5px;	/*ボックス内の余白*/
}
/*ta1の左側ボックス*/
.ta1 th {
	width: 100px;
}

/*その他
---------------------------------------------------------------------------*/
.ws,.wl {width: 94%;}
.big1 {font-size: 18px;letter-spacing: normal;}
.sh {display:block;}
.pc {display:none;}


ol.maru li::before{
  top: 1.2em;
}

}
