@import url("//share.cr-cms.net/hp_agency/hpagency.css");
@import url("//fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200..900&display=swap");
@import url("//use.fontawesome.com/releases/v5.6.1/css/all.css");

/*------------------------------------------------------
テンプレート
ノーマル01 ブラウン 右メイン
-------------------------------------------------------*/
html{
  scroll-behavior: smooth;
}

/*-------------------------------------------
common
-------------------------------------------*/
body {
  font-size:17px;
  line-height:1.8;
  color: #000000;
  background-color:#fff;
  /*font-family: "Noto Sans JP", sans-serif;*/
  font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "游ゴシック体", YuGothic, "Yu Gothic M", "游ゴシック Medium", "Yu Gothic Medium", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
  font-optical-sizing: auto;
  font-style: normal;
}
/*背景設定*/
#wrap{
  background:#fff;
}

/*--------------------------------------------------------------
リンク・ボタン
---------------------------------------------------------------*/
/*リンクカラー*/
a {
  color:#f69834;
}
a:hover{
  color: #d3822b;
}
/*電話番号*/
a.tel-link {
  font-size: 1.05em;
  font-weight: 700;
  text-decoration: none;
}
a.tel-link::before {
  font-family: "Font Awesome 5 Free";
  content: "\f2a0";
  font-weight: bold;
  margin-right: 8px;
}

/*--------------------------------------------------------------
コンテンツ
---------------------------------------------------------------*/
/*p*/
.article p {
  margin-bottom: 1em;
}
strong {
  font-weight:600;
  font-size:1.1em;
}
/*コンテンツエリア余白設定*/
#contents {
  margin:30px auto 50px auto;
}
.mainArticles .article {
  width:auto;
  margin-bottom: 0px !important;
}

/*マウスホバー時*/
#mainArticles a:hover img,
#sideBanners  a:hover img,
div.freeHtml a:hover img,
div.image img.gallery:hover,
#title h1 a:hover,
#topMenu li a:hover {
  filter: alpha(opacity=75);
  -moz-opacity:0.75;
  opacity:0.75;
}

/*pankuz*/
.pankuz p {
  font-size: 14px;
}

/*----------------------------------------------------------
メインイメージ
----------------------------------------------------------*/
#mainImage {
  padding-top:0;
  padding-bottom:0;
  background-image:none;
  background-color:#fff;
}
#mainImage_outer {
  background-image:none;
  background-color:#fff;
}
#mainImage_body {
  padding-bottom:0;
}
/*メインイメージ border削除*/
#mainImage_body img{
  border:none;
}
#mainImage_body {
  width:100%;
}
.mainImage img {
  max-width:100%;
}

/*----------------------------------------------------------
グローバルナビゲーション
----------------------------------------------------------*/
#topMenu {
  height:52px;
  margin-bottom:0px;
  border-bottom:1px solid #cbb7a2;
  background: #ffffff;
}
#topMenu .topMenu li{
  height:52px;
  line-height:52px;
}
#topMenu .topMenu li a {
  font-size:1em;
  font-weight:600;
  height:52px;
  line-height:52px;
  color:#2c1c11;
}
#topMenu .topMenu li a:hover {
  background-image: none;
  background-color: #cac6b7;
  height:52px;
  line-height:52px;
  color:#222;
  font-weight: 600;
}

/*グローバルナビゲーション天地幅修正*/
#topMenu_body {
  width:940px;
  height:52px;
  background:none;
}
#topMenu_outer{
  height:52px;
  width:940px;
}
/*トップメニュー*/
#topMenu li {
  background:none;
}
#topMenu .topMenu li a {
  font-size:1em;
  border-left: solid 1px #ccc !important;
  display: block;
  width: auto;
}
#topMenu .topMenu li.fifth a {
  border-left: solid 1px #ccc !important;
  border-right: solid 1px #ccc !important;
}

/*----------------------------------------------------------
タイトル部
----------------------------------------------------------*/
/*ヘッダー部タイトル画像*/
#title {
  padding: 10px 0 10px 0;
  margin:0  auto;
  /*width:96%;*/
  background-image:none;
  max-width: 940px;
  width:100%;
}
#title h1 {
  margin: 0;
  padding: 0;
  text-align: left;
}
#title h1 a {
  margin:15px 0 10px 0;
  display: inline-block;
  height: 75px;
  overflow: hidden;
  white-space: nowrap;
  text-indent: 110%;
  width: 250px;
  padding:0;
  background:url(/materials/175671212609801.png) no-repeat;
  background-size: 100%;
}

/*ヘッダー部右背景画像*/
#title_outer {
  width: 100%;
  height: 140px;
  background: url(/materials/175671400950901.png) top 10px right 0 no-repeat;
  background-size: 575px;
}

/*ディスクリプション*/
#title .description {
  font-size:1.0em;
    font-weight: 600;
  letter-spacing: 0;
  color:#745042;
  text-align:center;
  padding: 15px 0 10px 0;
}

/*----------------------------------------------------------
見出し
----------------------------------------------------------*/
/*h2*/
#mainArticles h2 {
  font-family: "Noto Serif JP", serif;
  font-size:1.6em;
  color: #222;
  font-weight:700;
  padding: 0.5em;
  border-bottom: 4px double #c4a84e;
  text-align: center;
  background: url("/materials/175679656745201.png") top center no-repeat;
  background-size: 120px;
  padding-top: 35px;
}
#mainArticles .article[id^="blog"] h2 {
  background: none;
}
/*h3*/
.mainContents .article h3, #mainTopics h2, #mainServices h2, #listTopics h2, .mainContents div.gallery h3 {
  font-family: "Noto Serif JP", serif;
  font-weight:500;
  color:#fff;
  font-size:1.5em;
  margin:35px 0 15px 0;
  border:none;
  position: relative;
  padding: 0.4em 1em;
  letter-spacing: 3px;
  background: #543f32 url("/materials/175679755688001.png") left 12px center no-repeat;
  background-size: 30px;
  padding-left: 50px;
}
#listTopics h2, #mainTopics h2 {
  background: #543f32;
  text-align: center;
}
.mainContents .article h3  strong,#mainTopics h2 strong {
  padding-left: 20px;
  font-size: 12px;
  color: #565656;
  vertical-align: middle;
  letter-spacing: 3px;
}
/*h4*/
.mainContents .article h4 {
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  color: #4e2700;
  font-size: 1.3em;
  line-height: 1.5;
  position: relative;
  padding: 0 .5em .2em 0.2em;
  border-bottom: 3px double #cbb7a2;
  overflow: hidden;
}
.mainContents .article h4::before {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: normal;
  color: #4e2700;
  content: "■";
  display: inline-block;
  font-size: 1em;
  margin-right: 5px;
}
/*h5*/
h5 {
  color:#b5791d;
  font-weight:bold;
  font-size:1.1em;
  margin:1em 0 0.5em 0;
  overflow:hidden;
  border-bottom:1px dashed #b5791d;
}
.brown h5{ color:#4e2700; }

/*----------------------------------------------------------
最新情報
----------------------------------------------------------*/
#mainTopics h2 {
  text-align: center;
  margin: 0;
}
#mainTopics .topics {
  margin-top: 10px;
}
.mainTopics .topics li {
  border: none;
  background: #f7f7f3;
  margin-bottom: 10px;
}
/*日付*/
#mainTopics .topics li p.date ,
#listTopics .topics li p.date {
  font-size: 1em;
  color: #775;
}
/*リンクタイトル*/
#mainTopics .topics li h3 ,
#listTopics .topics li h3 {
  font-size: 1em;
  font-weight: 400;
}
/*リード文*/
#mainTopics .topics li p.description ,
#listTopics .topics li p.description {
  color: #888;
  font-size:1em;
}
/*続き*/
#mainTopics .topics li p.more ,
#listTopics .topics li p.more {
  font-size:1em;
}
/*一覧を見る*/
#mainTopics .listview {
  font-size:1em;
  background-color: #fff;
}
#mainTopics .listview a {
  background-color: #cac6b7;
}
#mainTopics .listview a:hover {
  background-color: #bbb49d;
}

/*----------------------------------------------------------
サイドコンテンツ
----------------------------------------------------------*/
/*医院概要*/
#sideCompany {
  padding:16px;
  border: 1px solid #ddd;
  background: #f7f7f3;
}
#sideCompany .sideCompany_inner {
  width: 100%;
}
#sideCompany h2 {
  font-size:16px;
  font-weight:bold;
  margin: 0 auto;
  padding: 0;
}
#sideCompany h2.logomark {
  width:216px;
  height:70px;
  background:url("/materials/175671212609801.png") no-repeat;
  margin:10px auto 30px;
  background-size: 100%;
  display:block;
  overflow: hidden;
  text-indent: 110%;
  white-space: nowrap;
}
#sideCompany .logomark img {
  width:100%;
  height:auto;
}
#sideCompany dl {
  font-size: 0.9em;
  width: 100%;
  display:flex;
  flex-direction: column;
  flex-wrap: wrap;
  margin: 0;
  box-sizing: border-box;
}
#sideCompany dt {
  width: 100%;
  font-size: 1.0em;
  color: #fff;
  font-weight: 500;
  line-height: 1.0;
  text-align: center;
  padding: 0.5em;
  margin-bottom: 0.5em;
  background: #543f32;
  box-sizing: border-box;
}
#sideCompany dd {
  width: 100%;
  font-size: 1.0em;
  color: #222;
  line-height: 1.5;
  font-weight: normal;
  margin-bottom: 1.0em;
  box-sizing: border-box;
}
#sideCompany dd.tel-num {
  text-align: center;
}
#sideCompany a.tel-link {
  color: #6f4b3e;
  font-size: 1.6em;
  font-weight: 900;
}
#sideCompany a.tel-link:hover {
  color: #d67822;
}

/*サイドメニュー*/
#sideServices {
  width:248px;
  background:none;
  border:none;
  background-color:#fff;
  margin:30px 0;
}
#sideServices h2 {
  border: none;
  font-family: "Noto Serif JP", serif;
  color: #fff;
  font-size: 1.15em;
  font-weight: normal;
  background-image: none;
  text-align: center;
  background-color: #b5791d; 
}
.sideServices h2 {
  font-size:1em;
  border:none;
}
.sideServices ul li {
  border:none;
  border-bottom:1px solid #ccc;
  background-color:#fff;
}
.sideServices ul li a {
  color: #42352c;
  font-weight: 500;
  background-image:none;
  background-color:#fff;
  border-color:#fff;
}
.sideServices ul li a::before {
  font-family: "Font Awesome 5 Free";
  color: #cac6b7;
  content: "\f105";
  font-size: inherit;
  font-weight: bold;
  margin-right: 8px;
}
#sideContents {
  font-size:1em;
}
#sideMobile {
  width:248px;
  font-size:1em;
}
/*ブログ*/
.sideBlogCategories, .sideBlogDates {
  margin:35px 0;
}
.sideBlogCategories h2, .sideBlogDates h2 {
  font-size:1em;
  border:none;
  padding:10px;
  padding-left:12px;
  background-color:#4e2700;
  background-image:none;
  color:#333;
}
.sideBlogCategories ul {
  width:248px;
  padding:0 0 5px 0;
}

.sideBlogCategories ul li {
  border:none;
  width:248px;
  border-bottom:1px dotted #ccc;
  background-color:#fff;
}
.sideBlogCategories ul li a {
  background-image:none;
  background-color:#fff;
  border-color:#fff;
  padding:8px 6px 8px 0;
  text-decoration:none;
  line-height:20px;
  color:#333;
  display:block;
  border-style:solid;
}
.sideBlogCategories ul li a:hover {
  color:#999;
}
.sideBlogCategories ul li a::before {
  color: #999;
  content: "→";
  display: inline-block;
  font-size:1.2em;
  margin-right: 2px;
}
.sideBlogDates dl dt a {
  color:#333;
  text-decoration:none;
}
.sideBlogDates dl dt a:hover {
  color: #999;
}
.sideBlogDates dl {
  border-bottom:1px dotted #ccc;
}
.sideBlogDates dd {
  margin-left:0;
}
.sideBlogDates ul {
  width:248px;
  padding:0 0 5px 0;
}
.sideBlogDates ul li {
  border:none;
  width:248px;
  background-color:#fff;
}
.sideBlogDates ul li a {
  background-image:none;
  background-color:#fff;
  border-color:#fff;
  padding:4px 6px 4px 0;
  text-decoration:none;
  line-height:20px;
  color:#333;
  display:block;
  border-style:solid;
}
.sideBlogDates ul li a:hover {
  color:#999;
}
.sideBlogDates ul li a::before {
  color: #999;
  content: "→";
  display: inline-block;
  font-size:1em;
  margin-right: 2px;
}

/*----------------------------------------------------------
フッター
----------------------------------------------------------*/
#footer{
  background-color: #42352c;
  background-image: none;
}
#footer_outer {
  width:940px;
}
#footer li a {
  background: none;
  padding-left: 0;
}
#footer li a:hover {
  color:#efa128;
}
#footer li a::before {
  font-family: "Font Awesome 5 Free";
  content: "\f105";
  color: inherit;
  font-size: inherit;
  font-weight: bold;
  margin-right: 8px;
}
.footer * {
  font-size:1em;
}
.footer .topMenu {
  background: none;
  border-bottom: 1px dotted #fff;
  margin-bottom: 30px;
}
.footer p {
  font-size:1em;
  color:#fff;
}
.footer p a {
  color:#fff;
}
.footer p a:hover {
  color:#efa128;
}
.footer .copyright {
  margin:100px 0 5px 0;
}

/*-------------------------------------------
table
-------------------------------------------*/
.article table p {
  margin: 0;
}
.article table:not(.contactTable) {
  border-collapse: collapse;
  border-left: 1px solid #ccc;
  border-spacing: 0;
  border-top: 1px solid #ccc;
  margin: 10px auto;
}
.article table:not(.contactTable) td,
.article table:not(.contactTable) th {
  border-bottom: 1px solid #ccc;
  border-right: 1px solid #ccc;
  height: auto;
  padding: 10px;
  box-sizing: border-box;
}
.article table:not(.contactTable) th {
  background-color: #f7f7f7;
  text-align: center;
}

/*-------------------------------------
テーブルデザイン
---------------------------------------*/
/*テーブル*/
table.table {
  border-collapse:collapse;
  width:100%;
}
table.table th,
table.table td {
  padding:7px !important;
  border:solid 1px #ccc !important;
}
table.table th {
  background:#eee;
  width:30%;
}

/*テーブル2*/
table.table2 {
  border-collapse:collapse;
  width:100%;
  margin:0 0 15px 0 !important;
}
table.table2 th,
table.table2 td {
  padding:6px !important;
  border:solid 1px #ccc;
  text-align:center;
}
table.table2 th {
  background:#eee !important;
}

/*----------------------------------------------------------
リストデザイン
----------------------------------------------------------*/
ol.pp {
  padding-left: 2em;
}
ol.pp li {
  list-style-type: decimal;
  padding: 5px;
}

ul.notes {
  list-style-type: none;
  margin-left:1em;
  margin-bottom:1em;
  font-weight:bold;
}
ul.notes li::before {
  content: "◆";
  margin-left: -1em;
  font-family: "Noto Sans JP", sans-serif;
}

ul.ps {
  list-style-type: none;
  margin-left:1em;
  color:#666;
}
ul.ps li::before {
  content: "※";
  margin-left: -1em;
  font-family: "Noto Sans JP", sans-serif;
}

ul.maru {
  list-style-type: none;
  margin-left:1.2em;
  font-weight: 500;
  color:#333;
}
ul.maru li::before {
  content: "●";
  margin-left: -1em;
  font-family: "Noto Sans JP", sans-serif;
}

/*----------------------------------------------------------
当院のご案内
----------------------------------------------------------*/
.goannai h5 {
  font-size: 1.3em;
  border-bottom: none;
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  letter-spacing: 1px;
}

/*----------------------------------------------------------
診療内容
----------------------------------------------------------*/
ul.clinic-menu {
  padding: 12px 16px;
  background: #f7f7f3;
  border-radius: 8px;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}
ul.clinic-menu li {
  width: calc(100% / 3);
}
ul.clinic-menu li::before {
  content: "●";
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  color: #b5791d;
  margin-right: 8px;
  vertical-align: 2px;
}

/*----------------------------------------------------------
アクセス方法
----------------------------------------------------------*/
dl.access {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin: 15px 0;
}
dl.access dt {
  width: 25%;
  height: 2.4em;
  display: flex;
  background: #887;
  color: #fff;
  font-weight: 600;
  line-height: 1.0;
  border-radius: 4px;
  align-items: center;
  justify-content: center;
  margin-right: 3%;
  margin-bottom: 12px;
}
dl.access dd {
  width: 67%;
  height: 2.4em;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  margin-bottom: 12px;
  font-weight: 400;
}

/*----------------------------------------------------------
GoogleMap
----------------------------------------------------------*/
.gmap-wrap {
  height: 0;
  overflow: hidden;
  padding-bottom: 75%; /*4:3*/
  /*padding-bottom: 56.25%; 16:9*/
  position: relative;
}
.gmap-wrap iframe {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
}

/*--------------------------------------------------------------
チェックマークリスト
---------------------------------------------------------------*/
ul.check-plus {
  display: flex;
  flex-direction: column;
  padding: 1.25em 1.5em 1.25em 3.0em;
  background: #f7f7f3;
  margin-bottom: 12px;
}
ul.check-plus li {
  font-size: 1.0em;
  font-weight: 400;
  line-height: 1.5;
  border-bottom: 2px dashed #ccc;
  margin-bottom: 0.7em;
  padding: 0.3em 0;
  display: block;
  position: relative;
}
ul.check-plus li span {
  font-size: 1.1em;
  font-weight: 600;
  color: #b5791d;
}
ul.check-plus li:before {
  display: block;
  content: "";
  position: absolute;
  top: 0.5em;
  left: -1.5em;
  width: 0.8em;
  height: 0.5em;
  border-left: 4px solid #c71c1c;
  border-bottom: 4px solid #e55;
  transform: rotate(-45deg);
}

/*--------------------------------------------------------------
丸数字リスト
---------------------------------------------------------------*/
ol.num-plus {
  counter-reset: item;
  list-style-type: none;
  padding: 12px 18px 6px 18px;
  background: #f7f7f3;
  border-radius: 8px;
  margin-bottom: 12px;
}
ol.num-plus li {
  font-weight: 500;
  text-indent: -2.3em;
  padding-left: 2.3em;
  margin-bottom: 0.7em;
}
ol.num-plus li:before {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.8em;
  height: 1.8em;
  background: #b5791d;
  border-radius: 50%;
  counter-increment: item;
  content: counter(item);
  margin-right: .5em;
  font-weight: 700;
  color: #fff;
  text-indent: 0;
}

/*--------------------------------------------------------------
枠囲み
---------------------------------------------------------------*/
div.envelope {
  background: #f7f7f3;
  padding: 18px 18px 6px 18px;
  margin-bottom: 12px;
}
div.envelope h4 {
  margin-top: 0;
}

/*--------------------------------------------------------------
side 診療時間テーブル
---------------------------------------------------------------*/
table.side-table {
  width: 100%;
}
table.side-table th {
  width: 4.5em;
  text-align:center;
  vertical-align: middle;
  background: #eee;
}
table.side-table td {
  padding-left: 0.5em;
}

/*side order*/
#sideContents_body {
  display: flex;
  flex-direction: column;
}
#sideServices {
  order: 1;
}
.freeHtml {
  order: 2;
}

/*スマホボタン非表示*/
#bottomLink {
  display: none;
}

.mb0{ margin-bottom:0px !important; }

/*追従型ボタン*/
.freeHtml #contact-box{
  position:fixed;
  top:250px;
  right:0px;
  z-index:100;
  width:70px;
}
.news_area{  
  height: 200px;
  border-collapse: collapse;
  overflow-y: scroll !important;
}
