@charset "UTF-8";
/* Scss Document */
/* =======================================================================
 共通項目 
======================================================================= */
/*関数*/
/* ----------------------------------------------------------- 関数
----------------------------------------------------------- */
/*サイトの横幅*/
/*media screen*/
/*文字SP*/
/*文字PC*/
/*基本フォント*/
/*游明朝*/
/*基本文字色*/
/*基本背景色PC*/
/*白*/
/*茶色*/
/*茶色*/
/*茶色*/
/*茶色*/
/*青*/
/*水色*/
/*青*/
/*黒*/
/*茶色*/
/*茶色*/
/*青*/
/*灰色*/
/*青*/
/*影*/
/*茶色*/
/*水色*/
/*茶色*/
/*紺色3*/
/*薄紫*/
/*薄い茶色*/
/*紫*/
/*茶色*/
/*黒(下層キービジュアル)*/
/*茶色*/
/*水色*/
/*薄茶色*/
/* ----------------------------------------------------------- 特殊フォント読込
----------------------------------------------------------- */
@font-face { font-family: 'ebgaramond'; src: url(../font/static/EBGaramond-Regular.ttf); font-weight: normal; font-style: normal; }
@font-face { font-family: 'ebgaramond_italic'; src: url("../font/static/EBGaramond-Italic.ttf"); font-weight: normal; font-style: italic; }
@font-face { font-family: 'ebgaramond_bold'; src: url(../font/static/EBGaramond-Bold.ttf); font-weight: bold; font-style: normal; }
/* ----------------------------------------------------------- フォントサイズ基本
----------------------------------------------------------- */
html { font-size: calc( 100vw / 32 ); overflow-y: auto; font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "メイリオ", Meiryo, Arial, sans-serif; color: #333333; background-color: #ffffff; padding: 0 0 14vw 0; }

@media screen and (min-width: 768px), print { html { font-size: 62.5%; overflow-y: scroll; font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "メイリオ", Meiryo, Arial, sans-serif; color: #333333; background-color: #ffffff; padding: 0; } }
/* ----------------------------------------------------------- 構成
----------------------------------------------------------- */
body { position: relative; width: 100%; margin: 0 auto; }

section { height: auto; overflow: hidden; margin: 2rem 0 0 0; }
section.first { margin: 0 0 0 0; }

.clear { clear: both; }

.sentence { height: auto; overflow: hidden; }

.pc_none { display: block; }

.sp_none { display: none; }

.pc_none_span { display: inline; }

.sp_none_span { display: none; }

img.sp_img { width: 100%; height: auto; }

.text_bold { font-weight: bold; }

.txt_c { text-align: center; }

.mb0 { margin-bottom: 0; }

.mb10 { margin-bottom: 10px; }

.mb30 { margin-bottom: 30px; }

@media screen and (min-width: 768px), print { .pc_left_150 { margin-left: 150px !important; }
  .pc_left_400 { margin-left: 400px !important; } }
a[href=""] { pointer-events: none; }

@media screen and (min-width: 768px), print { body { position: relative; z-index: 0; overflow: hidden; min-width: 1280px; }
  section { height: auto; overflow: hidden; margin: 0 0 0 0; }
  section.first { margin: 0 0 0 0; }
  .pc_none { display: none; }
  .sp_none { display: block; }
  .pc_none_span { display: none; }
  .sp_none_span { display: inline; }
  .mb10 { margin-bottom: 20px; } }
/* -----------------------------------------------------------
　枠
----------------------------------------------------------- */
article { height: auto; width: 100%; margin: 0; padding: 0; background-color: #ffffff; }

.wrapper { height: auto; width: 100%; margin: 0; padding: 0; }

.wrapper_low { height: auto; width: 100%; margin: 0; padding: 0; }

.main { height: auto; width: 96%; margin: 2rem auto 4rem auto; padding: 0; }

@media screen and (min-width: 768px), print { article { height: auto; width: 100%; margin: 0; padding: 0; background-color: #ffffff; }
  .wrapper { height: auto; width: 100%; margin: 0 0 0 0; padding: 0 0 0 0; box-sizing: border-box; }
  .wrapper_low { height: auto; width: 100%; margin: 0 0 0 0; padding: 0 0 0 0; box-sizing: border-box; background: url("../images/bg_low_left.jpg"), url("../images/bg_low_right.jpg"); background-repeat: no-repeat,no-repeat; background-position: left top, right top; }
  .main { height: auto; width: 1200px; margin: 112px auto 140px auto; padding: 0 50px; box-sizing: border-box; background-color: #ffffff; } }
/* -----------------------------------------------------------
　ヘッダ
----------------------------------------------------------- */
header .head_frame { background-color: #ffffff; width: 100%; padding: 0 0 1rem 0; margin: 0; height: auto; }
header .head_frame .head_logo { width: 75%; margin: 0 0 0 4%; padding: 0 0 0 0; box-sizing: border-box; }
header .head_frame .head_logo a { display: block; margin: 0; }
header .head_frame .head_logo a img { width: 100%; height: auto; margin: 2vw 0 0 0; }
header .head_frame .head_tel { width: 70%; height: 10vw; margin: 4vw auto 0 auto; background-color: #7A4000; color: #ffffff; font-size: 2.4rem; font-family: 'ebgaramond'; border-radius: 2rem; box-sizing: border-box; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
header .head_frame .head_tel i { font-size: 1.8rem; }
header .head_frame .head_tel a { color: #ffffff; text-decoration: none; }
header .head_frame .head_access { width: 65%; margin: 1rem auto 0 auto; border-left: #442605 2px solid; box-sizing: border-box; padding: 0 0 0 0.5rem; font-size: 1.4rem; letter-spacing: 0.1em; }
header .head_frame .head_access span.station { font-size: 1.6rem; color: #94540D; }
header .head_frame .head_access span.time { display: inline-block; background: #00316c; color: #fff; margin: 0 0 0 0.5em; padding: 0.4rem 0.6rem 0.2rem; border-radius: 0.5rem; }
header .head_frame .head_web { width: 70%; height: 10vw; color: #ffffff; background-color: #00316c; box-sizing: border-box; font-size: 2rem; font-weight: bold; border-radius: 2rem; border: #2081B9 3px solid; margin: 1rem auto 0 auto; text-decoration: none; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }

@media screen and (min-width: 768px), print { header { width: 100%; height: 124px; }
  header .head_frame { background-color: #ffffff; width: 1100px; padding: 0 0 0 0; margin: 0 auto; height: 124px; position: relative; }
  header .head_frame .head_logo { width: 453px; margin: 0 0 0 0; padding: 0 0 0 0; box-sizing: border-box; position: absolute; top: 27px; left: 0; }
  header .head_frame .head_logo a { display: block; margin: 0; }
  header .head_frame .head_logo a img { width: 453px; height: auto; margin: 0; }
  header .head_frame .head_tel { position: absolute; top: 27px; left: 609px; width: 233px; height: 44px; margin: 0; background-color: #7A4000; color: #ffffff; font-size: 3.2rem; font-family: 'ebgaramond'; border-radius: 2rem; box-sizing: border-box; line-height: 100%; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  header .head_frame .head_tel i { font-size: 2rem; }
  header .head_frame .head_tel a { color: #ffffff; text-decoration: none; }
  header .head_frame .head_access { position: absolute; top: 82px; left: auto; right: 0; width: auto; margin: 0; border-left: #442605 2px solid; box-sizing: border-box; padding: 0 0 0 5px; font-size: 1.6rem; letter-spacing: 0.08em; line-height: 140%; }
  header .head_frame .head_access span.station { font-size: 1.8rem; color: #94540D; }
  header .head_frame .head_access span.time { display: inline; background: none; color: #333333; margin: 0 0.5em; padding: 0; border-radius: none; }
  header .head_frame .head_access br { display: none; }
  header .head_frame .head_web { position: absolute; top: 27px; right: 0; width: 233px; height: 45px; color: #ffffff; background-color: #00316c; font-size: 2rem; font-weight: bold; border-radius: 3rem; border: #2081B9 2px solid; margin: 0; text-decoration: none; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  header .head_frame .head_web:hover { opacity: 0.6; transition: all 0.3s ease 0s; } }
/* -----------------------------------------------------------
　メインナビ
----------------------------------------------------------- */
.main_nav_pc { display: none; }

@media screen and (min-width: 768px), print { .main_nav_pc { display: block; height: 54px; margin: 0; padding: 0; width: 100%; box-sizing: border-box; overflow: visible; background-color: #472909; }
  .main_nav_pc nav { width: 1100px; height: 54px; margin: 0 auto; padding: 0; }
  .main_nav_pc nav ul { list-style-type: none; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; width: 1100px; box-sizing: border-box; height: 54px; padding: 0; margin: 0; }
  .main_nav_pc nav ul li { display: block; text-align: center; box-sizing: border-box; height: 54px; text-align: center; font-weight: normal; margin: 0; padding: 0; width: 157.14px; }
  .main_nav_pc nav ul li a { width: 100%; text-decoration: none; text-align: center; color: #ffffff; height: 30px; box-sizing: border-box; margin: 12px 0 0 0; padding: 0 0 0 0; box-sizing: border-box; letter-spacing: 0.05em; font-size: 1.6rem; font-weight: normal; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; line-height: 120%; border-left: #ffffff 1px dotted; }
  .main_nav_pc nav ul li a:hover { opacity: 0.6; transition: all 0.3s ease 0s; }
  .main_nav_pc nav ul li ul { width: 240px; height: auto; display: none; margin: 12px 0 0 0; padding: 0 0 0 0; position: relative; z-index: 9999; background-color: rgba(17, 79, 154, 0.9); }
  .main_nav_pc nav ul li ul li { width: 240px; height: auto; margin: 0; border-left: none; }
  .main_nav_pc nav ul li ul li a { font-size: 1.8rem; color: #ffffff; width: 240px; height: 40px; padding: 0 0 0 16px; margin: 0; box-sizing: border-box; text-align: left; border-bottom: #ffffff 1px solid; display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; }
  .main_nav_pc nav ul li ul li a::before { content: "・"; }
  .main_nav_pc nav ul li ul li a:hover { transition: all 0.3s ease 0s; opacity: 0.6; }
  .main_nav_pc nav ul li:last-child a { border-right: #ffffff 1px solid; }
  .main_nav_pc nav ul li.treatment:hover { cursor: pointer; cursor: hand; }
  .main_nav_pc nav ul.open_nav { display: -webkit-flex !important; display: flex !important; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-flex-direction: column; flex-direction: column; -webkit-flex-wrap: wrap; flex-wrap: wrap; } }
/* -----------------------------------------------------------
　キービジュアル
----------------------------------------------------------- */
.key { margin: 0; }
.key div { background-repeat: no-repeat; background-size: cover !important; height: 53vw !important; background-position: center center !important; }
.key div .key_on { width: 100%; height: 53vw; position: relative; }
.key div .key_on .key_bana_pc { display: none; }
.key div .key_on strong { display: block; margin: 0; font-size: 1.1rem; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; font-weight: bold; color: #010101; position: absolute; bottom: 1rem; right: auto; left: auto; width: 100%; text-align: center; line-height: 140%; text-shadow: 6px 0px 6px #ffffff,6px 0px 6px #ffffff, -6px 0px 6px #ffffff,-6px 0px 6px #ffffff, 0px 6px 6px #ffffff,0px 6px 6px #ffffff, 0px -6px 6px #ffffff,0px -6px 6px #ffffff; }
.key div .key_on strong span { font-size: 1.3rem; color: #7A4000; }
.key div .key_on .access { display: none; }

.key_bana_sp { display: block; text-decoration: none; width: 80%; margin: 2rem auto; }
.key_bana_sp img { width: 100%; }

.key_visual_low { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-wrap: wrap; flex-wrap: wrap; height: 30vw; background: url("../images/key_visual_low.jpg") no-repeat; background-position: left 30% center; background-size: cover; }
.key_visual_low h1 { color: #94540D; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; font-weight: bold; font-size: 2.2rem; text-align: center; letter-spacing: 0.1em; }

@media screen and (min-width: 768px), print { .key { margin: 0 0 0 0; }
  .key div { background-repeat: no-repeat; background-size: cover !important; height: 565px !important; background: cover !important; overflow: hidden; width: 100% !important; background-position: center top !important; position: relative; }
  .key div .key_on { width: 1100px !important; height: 565px !important; position: relative; margin: 0 auto; }
  .key div .key_on .key_bana_pc { position: absolute; bottom: 22px; left: 0; display: block; text-decoration: none; width: 383px; height: 143px; }
  .key div .key_on .key_bana_pc img { width: 383px; }
  .key div .key_on .key_bana_pc:hover { opacity: 0.6; transition: all 0.3s ease 0s; }
  .key div .key_on strong { margin: 0; font-size: 2.8rem; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; font-weight: bold; color: #010101; position: absolute; bottom: 82px; right: 0; left: auto; text-align: left; line-height: 150%; display: inline; width: auto; text-shadow: 6px 0px 6px #ffffff,6px 0px 6px #ffffff, -6px 0px 6px #ffffff,-6px 0px 6px #ffffff, 0px 6px 6px #ffffff,0px 6px 6px #ffffff,  0px -6px 6px #ffffff,0px -6px 6px #ffffff; }
  .key div .key_on strong span { font-size: 3.4rem; color: #7A4000; }
  .key div .key_on .access { display: flex; justify-content: center; align-items: center; align-self: center; position: absolute; right: 0; top: 3rem; width: 6em; height: 6em; border-radius: 3em; color: #fff; text-align: center; font-weight: bold; font-size: 2.4rem; line-height: 1.1; background: #00316c; /* Old browsers */ background: -moz-radial-gradient(center, ellipse cover, #0076a9 0%, #00316c 100%); /* FF3.6-15 */ background: -webkit-radial-gradient(center, ellipse cover, #0076a9 0%, #00316c 100%); /* Chrome10-25,Safari5.1-6 */ background: radial-gradient(ellipse at center, #0076a9 0%, #00316c 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0076a9', endColorstr='$color18',GradientType=1); /* IE6-9 fallback on horizontal gradient */ }
  .key div .key_on .access small { font-size: 1.8rem; }
  .key div .key_on .access .lag { font-size: 3.2rem; }
  .bg-slider { background-size: cover !important; overflow: hidden; }
  .key_bana_sp { display: none; }
  .key_visual_low { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-wrap: wrap; flex-wrap: wrap; height: 204px; background: url("../images/key_visual_low.jpg") no-repeat; background-position: center center; background-size: cover; }
  .key_visual_low h1 { color: #94540D; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; font-weight: bold; font-size: 4rem; text-align: center; letter-spacing: 0.1em; } }
/*-----------------------------------------------------------
診療時間について
----------------------------------------------------------- */
.about_time_bg { position: relative; }
.about_time_bg img.leaf_bg { position: absolute; top: 0; right: 0; z-index: 0; width: 50%; }
.about_time_bg .about_time_bg_in { /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ffffff+0,ffffff+10,fbf7f4+10,fbf7f4+10,fbf7f4+100 */ background: white; /* Old browsers */ background: -moz-linear-gradient(top, white 0%, white 10%, #fbf7f4 10%, #fbf7f4 10%, #fbf7f4 100%); /* FF3.6-15 */ background: -webkit-linear-gradient(top, white 0%, white 10%, #fbf7f4 10%, #fbf7f4 10%, #fbf7f4 100%); /* Chrome10-25,Safari5.1-6 */ background: linear-gradient(to bottom, white 0%, white 10%, #fbf7f4 10%, #fbf7f4 10%, #fbf7f4 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#fbf7f4',GradientType=0 ); /* IE6-9 */ padding: 0 0 2rem 0; position: relative; z-index: 1; }
.about_time_bg .about_time_bg_in .about_time .bt_left { margin: 0; padding: 2rem 0 0 0; box-sizing: border-box; }
.about_time_bg .about_time_bg_in .about_time .bt_left h2.top_about_time { color: #442605; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; font-weight: normal; font-size: 2.2rem; text-align: center; margin: 0; position: relative; z-index: 2; }
.about_time_bg .about_time_bg_in .about_time .bt_left img { width: 30%; display: block; margin: 0 auto 0 auto; }
.about_time_bg .about_time_bg_in .about_time .at_right table.timetable { width: 96%; margin: 0 auto; }
.about_time_bg .about_time_bg_in .about_time .at_right .notice_time { margin: 0.6rem auto 0 auto; width: 96%; }

@media screen and (min-width: 768px), print { .about_time_bg { position: relative; width: 100%; height: 310px; }
  .about_time_bg img.leaf_bg { position: absolute; top: -81px; right: 0; z-index: 3; width: 935px; }
  .about_time_bg .about_time_bg_in { /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ffffff+0,ffffff+50,fbf7f4+50,fbf7f4+50,fbf7f4+50,fbf7f4+100 */ background: white; /* Old browsers */ background: -moz-linear-gradient(left, white 0%, white 50%, #fbf7f4 50%, #fbf7f4 50%, #fbf7f4 50%, #fbf7f4 100%); /* FF3.6-15 */ background: -webkit-linear-gradient(left, white 0%, white 50%, #fbf7f4 50%, #fbf7f4 50%, #fbf7f4 50%, #fbf7f4 100%); /* Chrome10-25,Safari5.1-6 */ background: linear-gradient(to right, white 0%, white 50%, #fbf7f4 50%, #fbf7f4 50%, #fbf7f4 50%, #fbf7f4 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#fbf7f4',GradientType=1 ); /* IE6-9 */ padding: 0 0 0 0; position: relative; z-index: 1; height: 240px; margin: 81px 0 0 0; }
  .about_time_bg .about_time_bg_in .about_time { position: absolute; top: 0; left: 0; right: 0; width: 1100px; height: 240px; margin: 0 auto; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; background-color: #FBF7F4; overflow: visible; }
  .about_time_bg .about_time_bg_in .about_time .bt_left { width: 492px; margin: 0; padding: 0; box-sizing: border-box; overflow: visible; }
  .about_time_bg .about_time_bg_in .about_time .bt_left h2.top_about_time { color: #442605; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; font-weight: normal; font-size: 3.4rem; text-align: center; margin: -16px 0 0 0; position: relative; z-index: 2; }
  .about_time_bg .about_time_bg_in .about_time .bt_left img { width: 140px; display: block; margin: -5px auto 0 auto; }
  .about_time_bg .about_time_bg_in .about_time .at_right { width: 608px; overflow: visible; position: relative; z-index: 4; }
  .about_time_bg .about_time_bg_in .about_time .at_right table.timetable { width: 484px; margin: -16px 0 0 0; }
  .about_time_bg .about_time_bg_in .about_time .at_right .notice_time { margin: 15px 0 0 0; width: 484px; } }
/*-----------------------------------------------------------
バナー
----------------------------------------------------------- */
.top_link { display: block; width: 96%; margin: 2rem auto; }
.top_link a, .top_link span { display: block; margin-bottom: .5rem; }
.top_link a img, .top_link span img { width: 100%; height: auto; }

@media screen and (min-width: 768px), print { .top_link { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; list-style: none; justify-content: left; /* 子要素をflexboxにより中央に配置する */ align-items: top; /* 子要素をflexboxにより中央に配置する */ width: 1100px; margin: 75px auto 150px !important; }
  .top_link a, .top_link span { width: 48%; margin: 0 1%; display: block; margin-bottom: .5rem; }
  .top_link a img, .top_link span img { width: 100%; height: auto; }
  .top_link02 { display: block; width: 1100px; margin: 100px auto 160px; }
  .top_link02 a, .top_link02 span { display: block; margin-bottom: .5rem; }
  .top_link02 a img, .top_link02 span img { width: 100%; height: auto; } }
/*-----------------------------------------------------------
お知らせ
----------------------------------------------------------- */
.notice_frame { width: 100%; margin: 0; padding: 2rem 0 0 0; }
.notice_frame .notice_box { width: 96%; height: auto; margin: 0 auto; padding: 2rem 0 2rem 0; box-sizing: border-box; }
.notice_frame .notice_box dl { height: auto; margin: 0 auto 0 auto; width: 96%; overflow-wrap: break-word; }
.notice_frame .notice_box dl dt { color: #7A4000; margin: 2rem 0 0.4rem 0; padding: 1.8rem 0.4rem 0 2rem; font-size: 1.5rem; box-sizing: border-box; font-weight: bold; letter-spacing: 0.1em; line-height: 140%; position: relative; }
.notice_frame .notice_box dl dt::before { position: absolute; font-family: "fontello"; content: "\00e809"; color: #5C9ABE; display: block; width: 0; height: 0; margin: auto; left: 0; top: 1.8rem; }
.notice_frame .notice_box dl dt.open::before { border: none; font-family: "fontello"; content: "\00e809"; color: #5C9ABE; }
.notice_frame .notice_box dl dt:first-child { margin: 0 0 0.4rem 0; border-top: none; padding: 1.8rem 0.4rem 0 2rem; }
.notice_frame .notice_box dl dt.close::before { font-family: "fontello"; content: "\00e80a"; color: #5C9ABE; }
.notice_frame .notice_box dl dd { margin: 0 0 1rem 0; padding: 0 0.4rem 0 2rem; color: #333333; font-size: 1.4rem; line-height: 160%; display: none; }
.notice_frame .notice_box dl dd.open { display: block; }

@media screen and (min-width: 768px), print { .notice_frame { width: 100%; margin: 0 0 90px 0; padding: 0 0 0 0; }
  .notice_frame .notice_box { width: 768px; height: auto; margin: 0 auto; padding: 0; box-sizing: border-box; }
  .notice_frame .notice_box dl { height: auto; margin: 0 auto 0 auto; width: 768px; overflow-wrap: break-word; }
  .notice_frame .notice_box dl dt { color: #7A4000; margin: 0 0 0 0; padding: 5px 0 0 38px; font-size: 1.8rem; box-sizing: border-box; font-weight: bold; letter-spacing: 0.1em; line-height: 140%; position: relative; }
  .notice_frame .notice_box dl dt::before { position: absolute; font-family: "fontello"; content: "\00e809"; color: #5C9ABE; display: block; width: 0; height: 0; margin: auto; left: 0; top: 5px; }
  .notice_frame .notice_box dl dt.open::before { border: none; font-family: "fontello"; content: "\00e809"; color: #5C9ABE; }
  .notice_frame .notice_box dl dt:first-child { margin: 0 0 0 0; border-top: none; padding: 5px 0.4rem 0 38px; }
  .notice_frame .notice_box dl dt.close::before { font-family: "fontello"; content: "\00e80a"; color: #5C9ABE; }
  .notice_frame .notice_box dl dd { margin: 0 0 10px 0; padding: 0 0 0 38px; color: #333333; font-size: 1.8rem; line-height: 160%; display: none; }
  .notice_frame .notice_box dl dd.open { display: block; } }
/* -----------------------------------------------------------
　ごあいさつ
----------------------------------------------------------- */
.greeting_frame { margin: 4rem 0 0 0; background: url("../images/index_leaf_02.png") no-repeat; background-position: left top; background-size: 80%; background-color: #FBF7F4; overflow: visible; position: relative; padding: 0 0 2rem 0; }
.greeting_frame h2.top_title { margin: 0 auto; position: absolute; top: -1rem; left: 0; right: 0; }
.greeting_frame .greeting_box { padding: 4rem 0 0 0; box-sizing: border-box; width: 96%; margin: 0 auto 2rem auto; }
.greeting_frame .greeting_box .greeting_text_box .greeting_text { line-height: 180%; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; font-size: 1.4rem; }
.greeting_frame .greeting_box .greeting_text_box .greeting_info .greeting_name { font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; font-size: 1.4rem; font-weight: bold; text-align: right; line-height: 140%; }
.greeting_frame .greeting_box .greeting_text_box .greeting_info .greeting_name span { font-size: 1.8rem; line-height: 180%; }
.greeting_frame .greeting_box .greeting_text_box .greeting_info a { width: 50%; height: 8vw; background-color: #94540D; color: #ffffff; font-size: 1.2rem; text-align: center; text-decoration: none; border-radius: 2rem; margin: 0 auto; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; }
.greeting_frame .greeting_box .greeting_text_box .greeting_info img { max-width: 92%; }
.greeting_frame .greeting_box figure { width: 70%; margin: 2rem auto 0 auto; }
.greeting_frame .greeting_box figure img { width: 100%; }
.greeting_frame .greeting_line { display: none; }

@media screen and (min-width: 768px), print { .greeting_frame { margin: 20px 0 0 0; background: url("../images/index_leaf_02.png") no-repeat; background-position: left top; background-size: 926px; background-color: #FBF7F4; overflow: visible; position: relative; padding: 0 0 80px 0; }
  .greeting_frame h2.top_title { margin: 0 auto; position: absolute; top: -20px; left: 0; right: 0; }
  .greeting_frame .greeting_box { padding: 84px 0 0 0; box-sizing: border-box; width: 1100px; margin: 0 auto 0 auto; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; position: relative; z-index: 1; }
  .greeting_frame .greeting_box .greeting_text_box { width: 740px; }
  .greeting_frame .greeting_box .greeting_text_box .greeting_text { line-height: 200%; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; font-size: 1.8rem; text-align: justify; }
  .greeting_frame .greeting_box .greeting_text_box .greeting_info { width: 740px; display: -webkit-flex; display: flex; -webkit-justify-content: flex-end; justify-content: flex-end; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: nowrap; flex-wrap: nowrap; }
  .greeting_frame .greeting_box .greeting_text_box .greeting_info .greeting_name { font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; font-size: 1.8rem; font-weight: bold; text-align: right; margin: 0; line-height: 160%; }
  .greeting_frame .greeting_box .greeting_text_box .greeting_info .greeting_name span { font-size: 2.6rem; line-height: 180%; }
  .greeting_frame .greeting_box .greeting_text_box .greeting_info a { width: 168px; height: 31px; background-color: #94540D; color: #ffffff; font-size: 1.6rem; text-align: center; text-decoration: none; border-radius: 2rem; margin: 0 0 0 45px; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; }
  .greeting_frame .greeting_box .greeting_text_box .greeting_info a:hover { opacity: 0.6; transition: all 0.3s ease 0s; }
  .greeting_frame .greeting_box .greeting_text_box .greeting_info img { max-width: 100%; }
  .greeting_frame .greeting_box figure { width: 322px; margin: 0; }
  .greeting_frame .greeting_box figure img { width: 322px; }
  .greeting_frame .greeting_line { display: block; position: absolute; bottom: 0; z-index: 0; width: 100%; height: 290px; border: none; margin: 0; /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ffffff+0,ffffff+50,fbf7f4+50,fbf7f4+50,fbf7f4+50,fbf7f4+100 */ background: white; /* Old browsers */ background: -moz-linear-gradient(left, white 0%, white 50%, #fbf7f4 50%, #fbf7f4 50%, #fbf7f4 50%, #fbf7f4 100%); /* FF3.6-15 */ background: -webkit-linear-gradient(left, white 0%, white 50%, #fbf7f4 50%, #fbf7f4 50%, #fbf7f4 50%, #fbf7f4 100%); /* Chrome10-25,Safari5.1-6 */ background: linear-gradient(to right, white 0%, white 50%, #fbf7f4 50%, #fbf7f4 50%, #fbf7f4 50%, #fbf7f4 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#fbf7f4',GradientType=1 ); /* IE6-9 */ } }
/*-----------------------------------------------------------
診療のご案内
----------------------------------------------------------- */
.features_frame { margin: 6rem 0 0 0; background-color: #FBF7F4; overflow: visible; position: relative; padding: 100px 0 80px 0; }
.features_frame h2.top_title { margin: 0 auto; position: absolute; top: -1.4rem; left: 0; right: 0; }
.features_frame .features_box1 { width: 100%; height: auto; position: relative; margin: 0 0 4rem 0; }
.features_frame .features_box1 .fbl_img { width: 100%; height: 56vw; text-align: right; }
.features_frame .features_box1 .img1 { background: url("../images/index_featues_01.jpg") no-repeat; background-position: right top; background-size: 190%; }
.features_frame .features_box1 .img3 { background: url("../images/index_featues_03.jpg") no-repeat; background-position: right top; background-size: 190%; }
.features_frame .features_box1 .img5 { background: url("../images/index_featues_05.jpg") no-repeat; background-position: right top; background-size: 190%; }
.features_frame .features_box1 .fbr_text_box { width: 100%; height: auto; margin: 0 0 0 0; padding: 0 0 2rem 0; z-index: 4; background: url("../images/index_leaf_03.png") no-repeat; background-position: right top; background-color: #ffffff; background-size: 70%; }
.features_frame .features_box1 .fbr_text_box .fbr_title { width: 96%; margin: 0 auto 1rem auto; font-size: 3.8rem; font-family: 'ebgaramond_italic'; color: #7A4000; }
.features_frame .features_box1 .fbr_text_box .fbr_title::after { content: ""; border-bottom: #2081B9 2px dotted; width: 4rem; display: block; margin: 1rem 0 0 0; }
.features_frame .features_box1 .fbr_text_box .fbr_text { width: 96%; font-size: 2rem; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; color: #7A4000; line-height: 200%; margin: 0 auto; text-align: justify; }
.features_frame .features_box2 { width: 100%; height: auto; position: relative; margin: 0 0 4rem 0; }
.features_frame .features_box2 .fbl_img { width: 100%; height: 56vw; text-align: left; }
.features_frame .features_box2 .img2 { background: url("../images/index_featues_02.jpg") no-repeat; background-position: left top; background-size: 190%; }
.features_frame .features_box2 .img4 { background: url("../images/index_featues_04.jpg") no-repeat; background-position: left top; background-size: 190%; }
.features_frame .features_box2 .img6 { background: url("../images/index_featues_06.jpg") no-repeat; background-position: left top; background-size: 190%; }
.features_frame .features_box2 .fbr_text_box { width: 100%; height: auto; margin: 0 0 0 0; padding: 0 0 2rem 0; z-index: 4; background: url("../images/index_leaf_04.png") no-repeat; background-position: left top; background-color: #ffffff; background-size: 70%; }
.features_frame .features_box2 .fbr_text_box .fbr_title { width: 96%; margin: 0 auto 1rem auto; font-size: 3.8rem; font-family: 'ebgaramond_italic'; color: #7A4000; }
.features_frame .features_box2 .fbr_text_box .fbr_title::after { content: ""; border-bottom: #2081B9 2px dotted; width: 4rem; display: block; margin: 1rem 0 0 0; }
.features_frame .features_box2 .fbr_text_box .fbr_text { width: 96%; font-size: 2rem; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; color: #7A4000; line-height: 200%; margin: 0 auto; text-align: justify; }

@media screen and (min-width: 768px), print { .features_frame { margin: 130px 0 0 0; background-color: #FBF7F4; overflow: visible; position: relative; padding: 100px 0 80px 0; }
  .features_frame h2.top_title { margin: 0 auto; position: absolute; top: -20px; left: 0; right: 0; }
  .features_frame .features_box1 { width: 100%; height: 370px; position: relative; margin: 0 0 80px 0; }
  .features_frame .features_box1 .fbl_img { position: absolute; z-index: 5; width: 50%; height: 300px; text-align: right; }
  .features_frame .features_box1 .img1 { background: url("../images/index_featues_01.jpg") no-repeat; background-position: right center; background-size: 1000px; background-color: #EBEEEF; }
  .features_frame .features_box1 .img3 { background: url("../images/index_featues_03.jpg") no-repeat; background-position: right center; background-size: 1000px; background-color: #EBEEEF; }
  .features_frame .features_box1 .img5 { background: url("../images/index_featues_05.jpg") no-repeat; background-position: right center; background-size: 1000px; background-color: #EBEEEF; }
  .features_frame .features_box1 .fbr_text_box { width: 100%; height: 330px; position: absolute; left: 50%; top: 70px; margin: 0 0 0 -95px; padding: 0; z-index: 4; background: url("../images/index_leaf_03.png") no-repeat; background-position: left 410px top; background-color: #ffffff; background-size: 411px; }
  .features_frame .features_box1 .fbr_text_box .fbr_title { width: auto; margin: -40px 0 18px 131px; font-size: 4.8rem; font-family: 'ebgaramond_italic'; color: #7A4000; }
  .features_frame .features_box1 .fbr_text_box .fbr_title::after { content: ""; border-bottom: #2081B9 2px dotted; width: 60px; display: block; margin: 10px 0 0 0; }
  .features_frame .features_box1 .fbr_text_box .fbr_text { width: 530px; font-size: 2.5rem; color: #7A4000; line-height: 200%; margin: 0 0 0 121px; text-align: justify; }
  .features_frame .features_box2 { width: 100%; height: 370px; position: relative; margin: 0 0 80px 0; }
  .features_frame .features_box2 .fbl_img { position: absolute; top: 0; left: 50%; z-index: 5; width: 50%; height: 300px; text-align: right; }
  .features_frame .features_box2 .img2 { background: url("../images/index_featues_02.jpg") no-repeat; background-position: left center; background-size: 1000px; background-color: #EBEEEF; }
  .features_frame .features_box2 .img4 { background: url("../images/index_featues_04.jpg") no-repeat; background-position: left center; background-size: 1000px; background-color: #EBEEEF; }
  .features_frame .features_box2 .img6 { background: url("../images/index_featues_06.jpg") no-repeat; background-position: left center; background-size: 1000px; background-color: #EBEEEF; }
  .features_frame .features_box2 .fbr_text_box { width: 50%; height: 330px; position: absolute; left: 0; top: 70px; margin: 0 0 0 0; padding: 0 186px 0 0; z-index: 4; background: url("../images/index_leaf_04.png") no-repeat; background-position: right 416px top; background-color: #ffffff; background-size: 411px; }
  .features_frame .features_box2 .fbr_text_box .fbr_title { width: 520px; margin: -40px 0 18px 0; font-size: 4.8rem; font-family: 'ebgaramond_italic'; color: #7A4000; float: right; }
  .features_frame .features_box2 .fbr_text_box .fbr_title::after { content: ""; border-bottom: #2081B9 2px dotted; width: 60px; display: block; margin: 10px 0 0 0; }
  .features_frame .features_box2 .fbr_text_box .fbr_text { width: 530px; font-size: 2.5rem; color: #7A4000; line-height: 200%; margin: 0 0 0 121px; float: right; text-align: justify; } }
/* -----------------------------------------------------------
　トップリンク
----------------------------------------------------------- */
.clinic_menu_frame { background: url("../images/index_clinic_menu_bg.jpg") no-repeat; background-position: center top; background-size: cover; padding: 2rem 0 0 0; }
.clinic_menu_frame ul.clinic_menu_list { list-style-type: none; display: -webkit-flex; display: flex; -webkit-justify-content: space-around; justify-content: space-around; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; width: 96%; margin: 0 auto; }
.clinic_menu_frame ul.clinic_menu_list li { width: 46%; margin: 0 0 2rem 0; }
.clinic_menu_frame ul.clinic_menu_list li a { text-decoration: none; width: 100%; height: 43vw; background-color: #ffffff; border-radius: 50%; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: column; flex-direction: column; box-shadow: 5px 5px #707070; margin: 0 0 1rem 0; }
.clinic_menu_frame ul.clinic_menu_list li a img { width: 40%; }
.clinic_menu_frame ul.clinic_menu_list li a p { color: #442605; margin: 0; }
.clinic_menu_frame ul.clinic_menu_list li a p.jap { font-size: 1.4rem; font-weight: bold; }
.clinic_menu_frame ul.clinic_menu_list li a p.eng { font-size: 0.6rem; margin: 0 0 0.5rem 0; }
.clinic_menu_frame ul.clinic_menu_list li a i { color: #5C9ABE; font-size: 1.2rem; }
.clinic_menu_frame ul.clinic_menu_list li.coming_soon a { pointer-events: none; filter: sepia(100%); }
.clinic_menu_frame ul.clinic_menu_list li.coming_soon a .link_tit { font-family: 'ebgaramond_italic'; font-size: 2rem; font-weight: bold; }

@media screen and (min-width: 768px), print { .clinic_menu_frame { background: url("../images/index_clinic_menu_bg.jpg") no-repeat; background-position: center top; background-size: cover; padding: 90px 0 0 0; height: 797px; box-sizing: border-box; }
  .clinic_menu_frame ul.clinic_menu_list { list-style-type: none; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; width: 1100px; margin: 0 auto; gap: 50px 25px; }
  .clinic_menu_frame ul.clinic_menu_list li { width: 200px; margin: 0; }
  .clinic_menu_frame ul.clinic_menu_list li a { text-decoration: none; width: 200px; height: 200px; background-color: #ffffff; border-radius: 50%; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: column; flex-direction: column; box-shadow: 5px 5px #707070; margin: 0 0 0 0; }
  .clinic_menu_frame ul.clinic_menu_list li a img { width: 97px; }
  .clinic_menu_frame ul.clinic_menu_list li a p { color: #442605; margin: 0; }
  .clinic_menu_frame ul.clinic_menu_list li a p.jap { font-size: 2rem; font-weight: bold; }
  .clinic_menu_frame ul.clinic_menu_list li a p.eng { font-size: 1.1rem; margin: 0 0 10px 0; }
  .clinic_menu_frame ul.clinic_menu_list li a i { color: #5C9ABE; font-size: 1.6rem; }
  .clinic_menu_frame ul.clinic_menu_list li a:hover img { opacity: 0.6; transition: all 0.3s ease 0s; }
  .clinic_menu_frame ul.clinic_menu_list li a:hover p { color: #b4a89b; transition: all 0.3s ease 0s; }
  .clinic_menu_frame ul.clinic_menu_list li a:hover i { color: #bed7e5; transition: all 0.3s ease 0s; }
  .clinic_menu_frame ul.clinic_menu_list li.coming_soon a .link_tit { font-size: 2.4rem; } }
/*----------------------------------------------------------- メガネ処方とコンタクト処方
----------------------------------------------------------- */
.top_link_frame { margin: 4rem 0; }
.top_link_frame .top_link_box { width: 96%; margin: 0 auto; }
.top_link_frame .top_link_box .top_link { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: column; flex-direction: column; padding: 0 0 0 25%; margin: 0 0 2rem 0; box-sizing: border-box; width: 100%; height: 23vw; text-align: center; text-decoration: none; }
.top_link_frame .top_link_box .top_link .tl_text1 { color: #442605; font-size: 1.8rem; font-weight: bold; margin: 0 0 0.5rem 0; }
.top_link_frame .top_link_box .top_link .tl_text2 { color: #7A4000; font-size: 1.2rem; font-weight: normal; }
.top_link_frame .top_link_box .tl_glassess { background: url("../images/index_link_01.jpg"), url("../images/icon_02.png"); background-repeat: no-repeat, no-repeat; background-size: 25%,17px; background-position: left center, right 8% center; background-color: #E2F1FF; }
.top_link_frame .top_link_box .tl_contact { background: url("../images/index_link_02.jpg"), url("../images/icon_02.png"); background-repeat: no-repeat, no-repeat; background-size: 25%,17px; background-position: left center, right 8% center; background-color: #E2F1FF; }

@media screen and (min-width: 768px), print { .top_link_frame { margin: 100px 0; }
  .top_link_frame .top_link_box { width: 1100px; margin: 0 auto; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .top_link_frame .top_link_box .top_link { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: column; flex-direction: column; padding: 0 0 0 135px; margin: 0 0 0 0; box-sizing: border-box; width: 508px; height: 135px; text-align: center; text-decoration: none; }
  .top_link_frame .top_link_box .top_link .tl_text1 { color: #442605; font-size: 2.6rem; font-weight: bold; margin: 0 20px 10px 0; }
  .top_link_frame .top_link_box .top_link .tl_text2 { color: #7A4000; font-size: 1.6rem; font-weight: normal; margin: 0 20px 0 0; }
  .top_link_frame .top_link_box .top_link:hover { opacity: 0.6; transition: all 0.3s ease 0s; }
  .top_link_frame .top_link_box .tl_glassess { background: url("../images/index_link_01.jpg"), url("../images/icon_02.png"); background-repeat: no-repeat, no-repeat; background-size: 135px,17px; background-position: left center, right 65px center; background-color: #E2F1FF; }
  .top_link_frame .top_link_box .tl_contact { background: url("../images/index_link_02.jpg"), url("../images/icon_02.png"); background-repeat: no-repeat, no-repeat; background-size: 135px,17px; background-position: left center, right 65px center; background-color: #E2F1FF; } }
/*----------------------------------------------------------- 連携している高次医療機関
----------------------------------------------------------- */
.top_hospital_list { margin: 4rem 0; }
.top_hospital_list .hospital_list_title { color: #442605; font-size: 2.4rem; font-weight: normal; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; text-align: center; letter-spacing: 0.05em; line-height: 100%; z-index: 2; padding: 0 0 0 0; margin: 0 0 2rem 0; box-sizing: border-box; position: relative; width: 100%; }
.top_hospital_list .hospital_list_title::before { position: absolute; top: 4vw; left: 2vw; content: ""; display: block; width: 6rem; border-bottom: #5C9ABE 2px dashed; }
.top_hospital_list .hospital_list_title::after { position: absolute; top: 4vw; right: 2vw; content: ""; display: block; width: 6rem; border-bottom: #5C9ABE 2px dashed; }
.top_hospital_list .emphasis { width: 96%; margin: 0 auto; background: #FBF7F4; border: none; padding-top: 2rem; }
.top_hospital_list .emphasis .list_maru li { background: #fff; padding: 0 !important; }
.top_hospital_list .emphasis .list_maru li a { box-sizing: border-box; padding: 1rem; font-size: 1.3rem; color: #442605; text-decoration: none; display: block; width: 100%; height: 100%; }
.top_hospital_list .emphasis .txt_brown { color: #7A4000; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; }

@media screen and (min-width: 768px), print { .top_hospital_list { margin: 100px 0; }
  .top_hospital_list .hospital_list_title { color: #442605; font-size: 3.8rem; font-weight: normal; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; text-align: center; letter-spacing: 0.05em; line-height: 100%; z-index: 2; padding: 0 0 0 0; margin: 0 auto 40px auto; box-sizing: border-box; position: relative; width: 880px; }
  .top_hospital_list .hospital_list_title::before { position: absolute; top: 24px; left: 0; content: ""; display: block; width: 142px; border-bottom: #5C9ABE 2px dashed; }
  .top_hospital_list .hospital_list_title::after { position: absolute; top: 24px; right: 0; content: ""; display: block; width: 142px; border-bottom: #5C9ABE 2px dashed; }
  .top_hospital_list .emphasis { width: 1100px; margin: 0 auto; padding-top: 35px; }
  .top_hospital_list .emphasis .list_maru { display: flex; flex-wrap: wrap; }
  .top_hospital_list .emphasis .list_maru li { width: 32%; }
  .top_hospital_list .emphasis .list_maru li:not(:nth-of-type(3n)) { margin-right: 2%; }
  .top_hospital_list .emphasis .list_maru li a { padding: 15px; font-size: 1.6rem; }
  .top_hospital_list .emphasis .list_maru li a:hover { opacity: 0.7; } }
/*----------------------------------------------------------- 医院概要
----------------------------------------------------------- */
.overview_bg { width: 100%; background-color: #FBF7F4; padding: 2rem 0 2rem 0; margin: 0; }
.overview_bg .overview { width: 96%; margin: 0 auto 0 auto; background-color: #ffffff; border: #5C9ABE 1px solid; box-sizing: border-box; padding: 2rem 1rem; }
.overview_bg .overview h2.overview_title img { width: 80%; display: block; margin: 0 auto; }
.overview_bg .overview .overview_info_up .overview_tel { width: 70%; height: 10vw; margin: 4vw auto 0 auto; background-color: #7A4000; color: #ffffff; font-size: 2.4rem; font-family: 'ebgaramond'; border-radius: 2rem; box-sizing: border-box; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
.overview_bg .overview .overview_info_up .overview_tel i { font-size: 1.8rem; }
.overview_bg .overview .overview_info_up .overview_tel a { color: #ffffff; text-decoration: none; }
.overview_bg .overview .overview_info_up .overview_web { width: 70%; height: 10vw; color: #ffffff; background-color: #00316c; box-sizing: border-box; font-size: 2rem; font-weight: bold; border-radius: 2rem; border: #2081B9 3px solid; margin: 1rem auto 0 auto; text-decoration: none; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
.overview_bg .overview .overview_info_box .overview_info_box_left dl.overview_list { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.2rem; box-sizing: border-box; margin: 2rem 0 3rem 0; line-height: 160%; }
.overview_bg .overview .overview_info_box .overview_info_box_left dl.overview_list dt { width: 25%; margin: 0 0 1rem 0; color: #EBEEEF; }
.overview_bg .overview .overview_info_box .overview_info_box_left dl.overview_list dt span { background-color: #442605; color: #ffffff; width: 100%; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; font-weight: bold; font-size: 1.2rem; }
.overview_bg .overview .overview_info_box .overview_info_box_left dl.overview_list dd { width: 70%; margin: 0 0 1rem 0; color: #333333; font-size: 1.2rem; }
.overview_bg .overview .overview_info_box .overview_info_box_left dl.overview_list dd ul { list-style-type: none; }
.overview_bg .overview .overview_info_box .overview_info_box_left dl.overview_list dd ul li { font-size: 1.2rem; margin: 0 0 1rem 0; padding: 0 0 0 1rem; box-sizing: border-box; position: relative; }
.overview_bg .overview .overview_info_box .overview_info_box_left dl.overview_list dd ul li::before { content: "■"; color: #2275A5; font-size: 0.5rem; position: absolute; top: -0.1rem; left: 0; }
.overview_bg .overview .overview_info_box .overview_info_box_left dl.overview_list dd ul li span { color: #7A4000; font-weight: bold; }
.overview_bg .overview .overview_info_box .overview_info_box_right table.timetable { width: 100%; }

iframe.googlemap { width: 100%; height: 500px; }

@media screen and (min-width: 768px), print { .overview_bg { width: 100%; background-color: #FBF7F4; padding: 100px 0 95px 0; margin: 0; }
  .overview_bg .overview { width: 1100px; margin: 0 auto 0 auto; background-color: #ffffff; border: #5C9ABE 1px solid; box-sizing: border-box; padding: 50px 0 0 0; }
  .overview_bg .overview h2.overview_title img { width: 484px; display: block; margin: 0 auto; }
  .overview_bg .overview .overview_info_up { width: 568px; margin: 35px auto 0 auto; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .overview_bg .overview .overview_info_up .overview_tel { width: 279px; height: 50px; margin: 0; background-color: #7A4000; color: #ffffff; font-size: 3rem; font-family: 'ebgaramond'; border-radius: 3rem; box-sizing: border-box; line-height: 100%; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .overview_bg .overview .overview_info_up .overview_tel i { font-size: 2rem; }
  .overview_bg .overview .overview_info_up .overview_tel a { color: #ffffff; text-decoration: none; }
  .overview_bg .overview .overview_info_up .overview_web { width: 279px; height: 50px; color: #ffffff; background-color: #00316c; font-size: 2.1rem; font-weight: bold; border-radius: 3rem; border: #2081B9 2px solid; margin: 0; text-decoration: none; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .overview_bg .overview .overview_info_up .overview_web:hover { opacity: 0.6; transition: all 0.3s ease 0s; }
  .overview_bg .overview .overview_info_box { width: 1000px; margin: 52px auto 0 auto; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .overview_bg .overview .overview_info_box .overview_info_box_left { width: 500px; }
  .overview_bg .overview .overview_info_box .overview_info_box_left dl.overview_list { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.2rem; box-sizing: border-box; margin: 2rem 0 3rem 0; line-height: 200%; }
  .overview_bg .overview .overview_info_box .overview_info_box_left dl.overview_list dt { width: 127px; margin: 0 0 26px 0; color: #EBEEEF; }
  .overview_bg .overview .overview_info_box .overview_info_box_left dl.overview_list dt span { background-color: #442605; color: #ffffff; width: 100%; height: 33px; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; font-weight: bold; font-size: 1.6rem; }
  .overview_bg .overview .overview_info_box .overview_info_box_left dl.overview_list dd { width: 348px; margin: 0 0 26px 0; color: #333333; font-size: 1.8rem; padding: 5px 0 0 0; box-sizing: border-box; }
  .overview_bg .overview .overview_info_box .overview_info_box_left dl.overview_list dd ul { list-style-type: none; }
  .overview_bg .overview .overview_info_box .overview_info_box_left dl.overview_list dd ul li { font-size: 1.8rem; margin: 0 0 12px 0; padding: 0 0 0 16px; box-sizing: border-box; position: relative; }
  .overview_bg .overview .overview_info_box .overview_info_box_left dl.overview_list dd ul li::before { content: "■"; color: #2275A5; font-size: 0.5rem; position: absolute; top: -0.1rem; left: 0; }
  .overview_bg .overview .overview_info_box .overview_info_box_left dl.overview_list dd ul li span { color: #7A4000; font-weight: bold; }
  .overview_bg .overview .overview_info_box .overview_info_box_right { width: 500px; }
  .overview_bg .overview .overview_info_box .overview_info_box_right table.timetable { padding: 0; margin: 0 16px 0 0; vertical-align: middle; width: 484px; text-align: center; border-collapse: collapse; box-sizing: border-box; line-height: 160%; }
  .overview_bg .overview .overview_info_box .overview_info_box_right table.timetable tr th { box-sizing: border-box; font-weight: normal; font-size: 1.8rem; padding: 0; vertical-align: middle; color: #ffffff; background-color: #563b1d; width: 52px; min-height: 46px; height: 46px; box-sizing: border-box; }
  .overview_bg .overview .overview_info_box .overview_info_box_right table.timetable tr th.time { letter-spacing: 0.2em; }
  .overview_bg .overview .overview_info_box .overview_info_box_right table.timetable tr td { box-sizing: border-box; font-weight: normal; font-size: 1.8rem; padding: 0; vertical-align: middle; color: #7A4000; min-height: 47px; height: 47px; box-sizing: border-box; }
  .overview_bg .overview .overview_info_box .overview_info_box_right table.timetable tr td i { font-size: 1.8rem; color: #AB671B; }
  .overview_bg .overview .overview_info_box .overview_info_box_right table.timetable tr td.time { width: 130px; text-align: center; color: #333333; font-size: 1.8rem; }
  iframe.googlemap { width: 100%; height: 564px; } }
/* -----------------------------------------------------------
　フッター
----------------------------------------------------------- */
footer { margin: 0 0 0 0; padding: 2rem 0 0 0; background-color: #442605; box-sizing: border-box; }
footer .footer_frame { width: 96%; margin: 0 auto; }
footer .footer_frame ul.footer_list { line-height: 130%; font-size: 1.2rem; margin: 0 0 0 0; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
footer .footer_frame ul.footer_list li { width: 48%; margin: 0 0 1.4rem 0; padding: 0 0 0 1.5rem; list-style-type: none; position: relative; box-sizing: border-box; }
footer .footer_frame ul.footer_list li::before { content: "■"; color: #63aed8; font-size: 0.5rem; position: absolute; top: 0.1rem; left: 0; }
footer .footer_frame ul.footer_list li a { color: #ffffff; text-decoration: none; text-align: left; display: block; }
footer .footer_frame ul.footer_list li a span { display: none; }
footer .footer_frame ul.footer_list li.treatment { display: none; }
footer .footer_frame .subtitle { font-size: 1.2rem; font-weight: normal; margin: 0 0 1.4rem; border-bottom: #ffffff 1px solid; color: #ffffff; text-align: center; padding: 0 0 0.5rem 0; }
footer .copyright { margin: 0; text-align: center; padding: 1rem 0; color: #ffffff; font-size: 1.2rem; height: auto; letter-spacing: 0.05em; background-color: #442605; }
footer .copyright a { color: #ffffff; text-decoration: none; letter-spacing: 0.1em; }

.footer_link { position: fixed; bottom: 0; width: 100%; display: -webkit-flex; display: flex; -webkit-justify-content: space-around; justify-content: space-around; -webkit-flex-direction: row; flex-direction: row; padding: 0.5rem 0; background-color: #442605; z-index: 999999; }
.footer_link a.footer_tel { width: 50%; margin: 0; color: #333333; text-align: center; font-size: 1.6rem; font-weight: normal; letter-spacing: 0.1em; display: block; background-color: #ffffff; padding: 1rem 0; text-decoration: none; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; border-radius: 5px; }
.footer_link a.footer_web { width: 30%; margin: 0; color: #333333; text-align: center; font-size: 1.6rem; font-weight: normal; letter-spacing: 0.1em; display: block; background-color: #ffffff; padding: 1rem 0; text-decoration: none; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; border-radius: 5px; }
.footer_link .smoothScrolls { background-color: #ffffff; width: 15%; text-align: center; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; border-radius: 5px; }
.footer_link .smoothScrolls a { width: 100%; color: #333333; padding: 0.8rem 0; font-weight: normal; text-decoration: none; font-size: 1.6rem; }

@media screen and (min-width: 768px), print { footer { width: 100%; height: 206px; box-sizing: border-box; padding: 0 0 0 0; margin: 0 0 0 0; overflow: hidden; position: relative; background-color: #442605; }
  footer .footer_frame { width: 1100px; margin: 30px auto 0 auto; }
  footer .footer_frame ul.footer_list { line-height: 130%; font-size: 1.7rem; margin: 0 0 0 0; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  footer .footer_frame ul.footer_list li { width: auto; margin: 0 28px 18px 0; padding: 0 0 0 12px; list-style-type: none; position: relative; }
  footer .footer_frame ul.footer_list li::before { content: "■"; color: #63aed8; font-size: 0.5rem; position: absolute; top: 1px; left: 0; }
  footer .footer_frame ul.footer_list li a { color: #ffffff; text-decoration: none; }
  footer .footer_frame ul.footer_list li a span { display: none; }
  footer .footer_frame ul.footer_list li a:hover { opacity: 0.6; transition: all 0.3s ease 0s; }
  footer .footer_frame ul.footer_list li.treatment { display: none; }
  footer .footer_frame .subtitle { display: none; }
  footer .copyright { margin: 0; height: 50px; text-align: center; padding: 0; color: #ffffff; font-size: 1.4rem; letter-spacing: 0.05em; background-color: #442605; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: flex-start; align-items: flex-start; -webkit-flex-wrap: wrap; flex-wrap: wrap; position: absolute; bottom: 0; width: 100%; }
  footer .copyright a { color: #ffffff; text-decoration: none; letter-spacing: 0.1em; }
  .footer_link { display: none; } }
/* -----------------------------------------------------------
　ページトップへ
----------------------------------------------------------- */
#pagetop_position { display: none; }

@media screen and (min-width: 768px), print { #pagetop_position { display: block; margin: 0; padding: 0; }
  #pagetop_position #linkpagetop a { width: 84px; height: 84px; }
  #pagetop_position #linkpagetop a img { width: 84px; height: 84px; }
  #pagetop { position: fixed; bottom: 12rem; right: 2%; z-index: 999999; } }
@media screen and (min-width: 768px) and (max-width: 1500px) { #pagetop_position { display: block; margin: 0; padding: 0; }
  #pagetop_position #linkpagetop a { width: 84px; height: 84px; }
  #pagetop_position #linkpagetop a img { width: 84px; height: 84px; }
  #pagetop { position: fixed; bottom: 12rem; right: 2%; z-index: 999999; } }
.chatbot-btn { z-index: 999999; position: fixed; right: 1vw; bottom: 16.5vw; appearance: none; -webkit-appearance: none; border: none; padding: 0; background: none; cursor: pointer; }
.chatbot-btn img { display: block; width: 180px; height: auto; }

@media screen and (min-width: 768px), print { .chatbot-btn { right: 2rem; bottom: 2rem; }
  .chatbot-btn img { width: 250px; height: auto; } }
/*----------------------------------------------------------- インポート
----------------------------------------------------------- */
/*ハンバーガー*/
.drawr { display: none; position: absolute; top: 16vw; width: 100%; padding: 1rem 0 0 0; margin: 0 0 0 0; height: auto; z-index: 999999; background-color: #ffffff; }
.drawr ul.hbg { list-style-type: none; width: 96%; margin: 0 auto; display: -webkit-flex; display: flex; -webkit-justify-content: space-around; justify-content: space-around; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
.drawr ul.hbg li { width: 45%; background-color: #472909; margin: 0 0 1rem 0; }
.drawr ul.hbg li a { font-size: 1.2rem; color: #ffffff; text-decoration: none; width: 100%; height: 10vw; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
.drawr ul.hbg li.treatment { display: none; }
.drawr ul.hbg li.none { background-color: transparent; }
.drawr ul.hbg2 { list-style-type: none; width: 96%; margin: 0 auto; display: -webkit-flex; display: flex; -webkit-justify-content: space-around; justify-content: space-around; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
.drawr ul.hbg2 li { width: 45%; background-color: #114F9A; margin: 0 0 1rem 0; }
.drawr ul.hbg2 li a { font-size: 1.2rem; color: #ffffff; text-decoration: none; width: 100%; height: 10vw; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
.drawr ul.hbg2 li.treatment { display: none; }
.drawr ul.hbg2 li.none { background-color: transparent; }
.drawr .subtitle { font-size: 2rem; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; font-weight: bold; text-align: center; margin: 2rem 0 1rem 0; color: #472909; }

.openNav { display: block; }

@media screen and (min-width: 768px), print { .main_nav_sp { display: none; } }
.toggle { display: none; }

.toggle-label { cursor: pointer; display: block; width: 14%; height: 10vw; padding: 0 0 0.5vw 0; user-select: none; -webkit-tap-highlight-color: transparent; }

.toggle-label:active { -webkit-tap-highlight-color: transparent; }

.toggle-label { cursor: pointer; width: 100%; }

.toggle-label .toggle-icon, .toggle-label .toggle-icon:before, .toggle-label .toggle-icon:after { position: relative; display: block; top: 50%; left: 50%; height: 3px; width: 28px; background: #ffffff; content: ''; transition: all 500ms ease-in-out; }

.toggle-label .toggle-text { position: relative; display: block; top: calc(100% - 10px); height: 14px; font-size: 12px; color: #ffffff; text-align: center; }

.toggle-label .toggle-text:before { position: absolute; width: 100%; left: 0; content: 'MENU'; transition: all 500ms ease-in-out; visibility: visible; opacity: 1; }

.toggle-label .toggle-text:after { position: absolute; width: 100%; left: 0; content: 'CLOSE'; transition: all 500ms ease-in-out; visibility: hidden; opacity: 0; }

.toggle-label .toggle-icon { transform: translate3d(-50%, -5px, 0); }

.toggle-label .toggle-icon:before { transform: translate3d(-50%, -11.5px, 0); }

.toggle-label .toggle-icon:after { transform: translate3d(-50%, 5px, 0); }

.toggle:checked ~ .toggle-label .toggle-icon { background-color: transparent; }

.toggle:checked ~ .toggle-label .toggle-icon:before, .toggle:checked ~ .toggle-label .toggle-icon:after { top: 0; }

.toggle:checked ~ .toggle-label .toggle-icon:before { transform: translateX(-50%) rotate(45deg); top: 1.5px; }

.toggle:checked ~ .toggle-label .toggle-icon:after { transform: translateX(-50%) translateY(-10px) rotate(-45deg); top: 8.5px; }

.toggle:checked ~ .toggle-label .toggle-text:before { visibility: hidden; opacity: 0; }

.toggle:checked ~ .toggle-label .toggle-text:after { visibility: visible; opacity: 1; }

.container { display: flex; align-items: center; justify-content: center; width: 16%; max-width: 55px; position: absolute; cursor: pointer; right: 2%; top: 2vw; padding: 0 0 0.6rem 0; background-color: #472909; border-radius: 0.3rem; }

/*見出し*/
h1 { margin: 0; }

h2.top_title { color: #442605; font-size: 2.4rem; font-weight: normal; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; text-align: center; letter-spacing: 0.05em; line-height: 100%; z-index: 2; padding: 0 0 0 0; margin: 0 0 2rem 0; box-sizing: border-box; }
h2.top_title span { display: block; font-size: 1.3rem; font-family: 'ebgaramond_italic'; }
h2.top_title2 { color: #ffffff; font-size: 2.4rem; font-weight: normal; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; text-align: center; letter-spacing: 0.05em; line-height: 100%; z-index: 2; padding: 0 0 0 0; margin: 0 0 2rem 0; box-sizing: border-box; position: relative; width: 100%; }
h2.top_title2 span { display: block; font-size: 1.3rem; font-family: 'ebgaramond_italic'; }
h2.top_title2::before { position: absolute; top: 4vw; left: 2vw; content: ""; display: block; width: 25vw; border-bottom: #5C9ABE 2px dashed; }
h2.top_title2::after { position: absolute; top: 4vw; right: 2vw; content: ""; display: block; width: 25vw; border-bottom: #5C9ABE 2px dashed; }
h2.low { color: #442605; font-size: 2.4rem; font-weight: normal; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; text-align: center; letter-spacing: 0.05em; line-height: 100%; z-index: 2; padding: 0 0 0 0; margin: 4rem 0 3rem 0; box-sizing: border-box; position: relative; }
h2.low::after { position: absolute; bottom: -1rem; right: 0; left: 0; margin: 0 auto; content: ""; display: block; width: 30%; border-bottom: #2081B9 2px dotted; }
h2.smaller { color: #3e3e82 !important; font-size: 1.75rem; font-weight: normal; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; text-align: center; letter-spacing: 0.05em; line-height: 100%; z-index: 2; padding: 0 0 0 0; margin: 4rem 0 3rem 0; box-sizing: border-box; position: relative; }
h2.smaller::after { position: absolute; bottom: -1rem; right: 0; left: 0; margin: 0 auto; content: ""; display: block; width: 30%; border-bottom: #8080b8 2px dotted; }
h2.first { margin: 0 0 3rem 0; }

h3.low { background-color: #7A4000; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; font-size: 1.8rem; font-weight: normal; color: #ffffff; padding: 0.8rem 0.7rem; box-sizing: border-box; margin: 2rem 0 1rem 0; line-height: 120%; }
h3.first { margin: 0 0 1rem 0; }

.titsm-h3 { color: #ffffff; background-color: #7A4000; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; text-align: left; font-size: 1.8rem; font-weight: normal; padding: 1.0rem 0.8rem 0.8rem 1.1rem; box-sizing: border-box; margin: 2rem 0 1rem 0; line-height: 130%; font-feature-settings: "palt"; }
.titsm-h3.first { margin: 0 0 1rem 0; }

h4 { background-color: #EBD0BD; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; font-size: 1.7rem; font-weight: normal; color: #442605; padding: 0.7rem 0.7rem; box-sizing: border-box; margin: 2rem 0 1rem 0; line-height: 120%; }
h4.first { margin: 0 0 1rem 0; }

h5 { font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; font-size: 1.6rem; color: #442605; padding: 0.4rem 0.6rem; box-sizing: border-box; border-bottom: #63aed8 4px double; margin: 2rem 0 1rem 0; line-height: 120%; }
h5.first { margin: 0 0 1rem 0; }

h6 { font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; font-size: 1.6rem; color: #333333; padding: 0.4rem 0.6rem; box-sizing: border-box; border-bottom: #63aed8 2px dotted; margin: 2rem 0 1rem 0; line-height: 120%; }
h6.first { margin: 0 0 1rem 0; }

p { font-size: 1.4rem; margin: 0 0 2rem 0; line-height: 140%; letter-spacing: 0.05em; }

@media screen and (min-width: 768px), print { h1 { margin: 0; }
  h2.top_title { color: #442605; font-size: 3.8rem; font-weight: normal; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; text-align: center; letter-spacing: 0.05em; line-height: 100%; z-index: 2; padding: 0 0 0 0; margin: 0 0 25px 0; box-sizing: border-box; }
  h2.top_title span { display: block; font-size: 2rem; font-family: 'ebgaramond_italic'; }
  h2.top_title2 { color: #ffffff; font-size: 3.8rem; font-weight: normal; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; text-align: center; letter-spacing: 0.05em; line-height: 100%; z-index: 2; padding: 0 0 0 0; margin: 0 auto 40px auto; box-sizing: border-box; position: relative; width: 552px; }
  h2.top_title2 span { display: block; font-size: 2rem; font-family: 'ebgaramond_italic'; }
  h2.top_title2::before { position: absolute; top: 24px; left: 0; content: ""; display: block; width: 167.5px; border-bottom: #5C9ABE 2px dashed; }
  h2.top_title2::after { position: absolute; top: 24px; right: 0; content: ""; display: block; width: 167.5px; border-bottom: #5C9ABE 2px dashed; }
  h2.low { color: #442605; font-size: 3.8rem; font-weight: normal; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; text-align: center; letter-spacing: 0.05em; line-height: 100%; z-index: 2; padding: 0 0 0 0; margin: 100px 0 55px 0; box-sizing: border-box; }
  h2.low::after { position: absolute; bottom: -15px; right: 0; left: 0; margin: 0 auto; content: ""; display: block; width: 124px; border-bottom: #2081B9 2px dotted; }
  h2.smaller { color: #3e3e82 !important; font-size: 2.5rem; font-weight: normal; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; text-align: center; letter-spacing: 0.05em; line-height: 120%; z-index: 2; padding: 0 0 0 0; margin: 100px 0 55px 0; box-sizing: border-box; }
  h2.smaller::after { position: absolute; bottom: -15px; right: 0; left: 0; margin: 0 auto; content: ""; display: block; width: 124px; border-bottom: #8080b8 2px dotted; }
  h2.first { margin: 5px 0 55px 0; }
  h3.low { background-color: #7A4000; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; font-size: 2.2rem; font-weight: normal; color: #ffffff; padding: 10px 14px; box-sizing: border-box; margin: 40px 0 18px 0; }
  h3.first { margin: 0 0 22px 0; }
  .titsm-h3 { font-size: 30px; font-weight: normal; padding: 10px 14px; box-sizing: border-box; margin: 40px 0 18px 0; }
  .titsm-h3.first { margin: 0 0 22px 0; }
  h4 { background-color: #EBD0BD; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; font-size: 2rem; font-weight: normal; color: #442605; padding: 10px 14px; box-sizing: border-box; margin: 40px 0 18px 0; line-height: 120%; }
  h4.first { margin: 0 0 22px 0; }
  h5 { font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; font-size: 2rem; color: #442605; padding: 10px 14px; box-sizing: border-box; border-bottom: #63aed8 4px double; margin: 40px 0 18px 0; line-height: 120%; }
  h5.first { margin: 0 0 22px 0; }
  h6 { font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; font-size: 2rem; color: #333333; padding: 10px 14px; box-sizing: border-box; border-bottom: #63aed8 2px dotted; margin: 40px 0 18px 0; line-height: 120%; }
  h6.first { margin: 0 0 22px 0; }
  p { font-size: 1.6rem; margin: 0 0 2rem 0; line-height: 160%; letter-spacing: 0.05em; } }
/*イメージ*/
/* -----------------------------------------------------------
　イメージ
----------------------------------------------------------- */
.img_right { margin: 0 0 1rem 0; text-align: center; }
.img_right img { max-width: 70%; height: auto; }
.img_right figcaption { text-align: center; font-size: 1.4rem; max-width: 70%; margin: 1rem auto 2rem auto; }

.img_left { margin: 0 0 1rem 0; text-align: center; }
.img_left img { max-width: 70%; height: auto; }
.img_left figcaption { text-align: center; font-size: 1.4rem; max-width: 70%; margin: 1rem auto 2rem auto; }

.img_center { margin: 0 0 10px 0; text-align: center; }
.img_center img { max-width: 100%; height: auto; }

@media screen and (min-width: 768px), print { .img_right { float: right; margin: 0 0 20px 20px; }
  .img_right img { max-width: 100%; width: 400px; height: auto; }
  .img_right.sml img { max-width: 100%; width: 200px; height: auto; }
  .img_right figcaption { text-align: center; font-size: 1.6rem; max-width: 100%; width: 400px; margin: 1rem 0 0 0; }
  .img_left { float: left; margin: 0 20px 20px 0; }
  .img_left img { max-width: 100%; width: 400px; height: auto; }
  .img_left figcaption { text-align: center; font-size: 1.6rem; max-width: 100%; width: 400px; margin: 1rem 0 0 0; }
  .img_center { float: none; margin: 0 0 20px 0; text-align: center; }
  .img_center img { max-width: 100%; width: auto; height: auto; } }
/*リスト*/
/* -----------------------------------------------------------
　リスト
----------------------------------------------------------- */
/*標準*/
ul.list_normal { line-height: 130%; font-size: 1.4rem; list-style-type: disc; margin: 0 0 1rem 0; }
ul.list_normal li { margin: 0 0 1.4rem 1.8rem; padding: 0; }

/*画像●*/
ul.list_maru { padding: 0; margin: 0 0 1rem 0; }
ul.list_maru li { line-height: 130%; font-size: 1.4rem; list-style-type: none; margin: 0 0 10px 0; box-sizing: border-box; background: url(../images/maru.png) no-repeat; background-position: left 0.4rem top 0.5rem; background-size: 1rem; padding: 0 0 0 1.8rem; line-height: 140%; }
ul.list_maru li span.nontext { color: #ffffff; }
ul.list_maru li span.nontext span { display: none; }
ul.list_maru li.none { background: none; }

ul.list_maru_two { padding: 0; margin: 0; }
ul.list_maru_two li { line-height: 130%; font-size: 1.4rem; list-style-type: none; margin: 0 0 10px 0; box-sizing: border-box; background: url(../images/maru.png) no-repeat; background-position: left 0.4rem top 0.5rem; background-size: 1rem; padding: 0 0 0 1.8rem; line-height: 140%; }

/*なし*/
ul.list_none { line-height: 160%; font-size: 1.4rem; list-style-type: none; margin: 0; }
ul.list_none li { margin: 0 0 15px 0; padding: 0 0 0 5px; }
ul.list_none li span { color: #fedc50; margin: 0 0.5rem 0 0; }

/*数値*/
ul.list_num { box-sizing: border-box; width: 100%; }
ul.list_num li { line-height: 130%; font-size: 1.4rem; list-style-type: decimal; margin: 0 0 10px 2rem; box-sizing: border-box; width: 90%; }

ul.list_num2 { box-sizing: border-box; width: 100%; }
ul.list_num2 li { line-height: 130%; font-size: 1.4rem; list-style-type: decimal; margin: 0 0 10px 2rem; box-sizing: border-box; width: 90%; }

/*概要*/
ul.list_overview { box-sizing: border-box; width: 100%; }
ul.list_overview li { line-height: 130%; font-size: 1.4rem; list-style-type: disc; margin: 0 0 10px 25px; box-sizing: border-box; width: 90%; }

/*2列*/
ul.list_normal_two { display: flex; justify-content: space-between; flex-direction: column; }
ul.list_normal_two li { box-sizing: border-box; line-height: 130%; font-size: 1.4rem; list-style-type: disc; margin: 0 0 10px 25px; }

@media screen and (min-width: 768px), print { /*標準*/
  ul.list_normal { line-height: 160%; font-size: 1.6rem; list-style-type: disc; margin: 0; }
  ul.list_normal li { margin: 0 0 1.4rem 25px; padding: 0; }
  ul.list_normal li ul { box-sizing: border-box; width: 100%; }
  ul.list_normal li ul li { line-height: 130%; font-size: 1.6rem; list-style-type: none; margin: 0 0 0.8rem 1.8rem; box-sizing: border-box; width: auto; }
  /*画像●*/
  ul.list_maru { padding: 0; }
  ul.list_maru li { line-height: 160%; font-size: 1.6rem; list-style-type: none; margin: 0 0 15px 0; box-sizing: border-box; background: url(../images/maru.png) no-repeat; background-position: left 4px top 6px; background-size: 10px; padding: 0 0 0 25px; }
  ul.list_maru li span.nontext { color: #ffffff; }
  ul.list_maru li span.nontext span { display: inline; }
  ul.list_maru li.none { background: none; }
  ul.list_maru_two { padding: 0; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  ul.list_maru_two li { width: 45%; line-height: 100%; font-size: 1.6rem; list-style-type: none; margin: 0 0 15px 0; box-sizing: border-box; background: url(../images/maru.png) no-repeat; background-position: left 4px top 6px; background-size: 10px; padding: 0 0 0 25px; line-height: 140%; }
  /*なし*/
  ul.list_none { line-height: 160%; font-size: 1.6rem; list-style-type: none; }
  ul.list_none li { margin: 0 0 15px 0; }
  ul.list_none li span { color: #fedc50; margin: 0 5px 0 0; }
  /*数値*/
  ul.list_num { box-sizing: border-box; width: 100%; }
  ul.list_num li { line-height: 130%; font-size: 1.6rem; list-style-type: decimal; margin: 0 0 10px 25px; box-sizing: border-box; width: 90%; }
  ul.list_num2 { box-sizing: border-box; width: 100%; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  ul.list_num2 li { width: 45%; line-height: 130%; font-size: 1.6rem; list-style-type: decimal; margin: 0 0 10px 25px; box-sizing: border-box; }
  /*概要*/
  ul.list_overview li { line-height: 130%; font-size: 1.6rem; list-style-type: disc; margin: 0 0 10px 25px; }
  ul.list_normal_two { display: flex; justify-content: space-between; flex-direction: row; flex-wrap: wrap; }
  ul.list_normal_two li { width: 45%; box-sizing: border-box; line-height: 130%; font-size: 1.6rem; list-style-type: disc; margin: 0 0 10px 25px; } }
/* -----------------------------------------------------------
　定義リスト
----------------------------------------------------------- */
dl.bio_list { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.4rem; box-sizing: border-box; margin: 0 0 2rem 0; line-height: 160%; }
dl.bio_list dt { width: 100%; margin: 0 0 0 0; font-weight: bold; }
dl.bio_list dt span { display: inline; text-align: left; padding: 0 0 0 0; box-sizing: border-box; }
dl.bio_list dd { width: 100%; margin: 0 0 2rem 0; }

dl.num_list { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.4rem; box-sizing: border-box; margin: 0 0 0 0; line-height: 120%; }
dl.num_list dt { width: 6%; margin: 0 0 0 0; }
dl.num_list dd { width: 94%; margin: 0 0 20px 0; }

@media screen and (min-width: 768px), print { dl.bio_list { display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.6rem; box-sizing: border-box; line-height: 160%; width: 1100px; }
  dl.bio_list dt { width: 100px; margin: 0 0 20px 0; font-weight: normal; }
  dl.bio_list dt span { display: block; text-align: center; padding: 0 35px 0 0; box-sizing: border-box; }
  dl.bio_list dd { width: 1000px; margin: 0 0 20px 0; }
  dl.num_list { display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.6rem; box-sizing: border-box; line-height: 160%; width: 1200px; margin: 0; }
  dl.num_list dt { width: 22px; margin: 0 0 20px 0; font-weight: normal; }
  dl.num_list dd { width: 1178px; margin: 0 0 20px 0; } }
/*アサイド*/
aside { display: none; }

@media screen and (min-width: 768px), print { aside { display: block; width: 270px; }
  aside p.aside_title { width: 270px; height: 54px; background-color: #442605; font-size: 2rem; font-weight: normal; color: #ffffff; letter-spacing: 0.2em; margin: 0 0 6px 0; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
  aside ul.aside_list { list-style-type: none; }
  aside ul.aside_list li { margin: 0 0 0 0; width: 270px; }
  aside ul.aside_list li a { width: 270px; height: 50px; margin: 0; padding: 0 0 0 50px; box-sizing: border-box; color: #333333; font-size: 2rem; background: url(../images/aside_arrow.png) no-repeat; background-position: left 18px center; border-bottom: #FBF7F4 1px solid; text-decoration: none; display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-align-items: center; align-items: center; letter-spacing: 0.05em; }
  aside ul.aside_list li a:hover { opacity: 0.6; transition: all 0.3s ease 0s; } }
/*診療時間*/
/* -----------------------------------------------------------
　診療時間
----------------------------------------------------------- */
table.timetable { padding: 0; margin: 0 auto; vertical-align: middle; width: 100%; text-align: center; border-collapse: collapse; box-sizing: border-box; line-height: 140%; }
table.timetable tr th { box-sizing: border-box; font-weight: normal; font-size: 3.4vw; padding: 0.8rem 0; vertical-align: middle; color: #ffffff; background-color: #563b1d; width: 10%; border-right: #ffffff 1px solid; }
table.timetable tr th:last-child { border-right: #442605 1px solid; }
table.timetable tr th:first-child { border-left: #442605 1px solid; }
table.timetable tr th.time { letter-spacing: 0.1em; }
table.timetable tr td { box-sizing: border-box; font-weight: normal; font-size: 3.4vw; padding: 0.8rem 0; vertical-align: middle; color: #7A4000; min-height: 17vw; border-bottom: #442605 1px solid; border-right: #442605 1px solid; }
table.timetable tr td:first-child { border-left: #442605 1px solid; }
table.timetable tr td i { font-size: 4vw; color: #AB671B; }
table.timetable tr td.time { width: 30%; text-align: center; color: #333333; }

.notice_time { font-size: 3.4vw; margin: 0.6rem 0 0 0; width: 100%; color: #333333; box-sizing: border-box; }

@media screen and (min-width: 768px), print { table.timetable { padding: 0; margin: 0 auto; vertical-align: middle; width: 100%; text-align: center; border-collapse: collapse; box-sizing: border-box; line-height: 140%; }
  table.timetable tr th { box-sizing: border-box; font-weight: normal; font-size: 1.8rem; padding: 0; vertical-align: middle; color: #ffffff; background-color: #563b1d; width: 52px; min-height: 31px; height: 31px; box-sizing: border-box; border-right: #ffffff 1px solid; }
  table.timetable tr th:last-child { border-right: #442605 1px solid; }
  table.timetable tr th:first-child { border-left: #442605 1px solid; }
  table.timetable tr th.time { letter-spacing: 0.2em; }
  table.timetable tr td { box-sizing: border-box; font-weight: normal; font-size: 1.8rem; padding: 0; vertical-align: middle; color: #7A4000; min-height: 32px; height: 32px; box-sizing: border-box; border-bottom: #442605 1px solid; border-right: #442605 1px solid; }
  table.timetable tr td:first-child { border-left: #442605 1px solid; }
  table.timetable tr td i { font-size: 1.8rem; color: #AB671B; }
  table.timetable tr td.time { width: 130px; text-align: center; color: #333333; font-size: 1.8rem; }
  .notice_time { font-size: 1.6rem; margin: 12px 0 0 0; width: 100%; color: #333333; padding: 0; box-sizing: border-box; line-height: 160%; } }
/*下層*/
.cf::before, .cf::after { content: ""; display: block; }

.cf::after { clear: both; }

/*矢印*/
.arrow { width: 0; height: 0; border-left: 60px solid transparent; border-right: 60px solid transparent; border-top: 30px solid #7A4000; text-align: center; display: block; margin: 30px auto; }

.text_bold { font-weight: bold; }

.link_text { color: #7A4000; }

.red_text { color: red; }

.underline_text { text-decoration: underline; }

.font_l { font-size: 120%; }

.tac, .text-center { text-align: center; }

.text-right { text-align: right; }

.text-left { text-align: left; }

.text-left680 { max-width: 680px; }

.emphasis { background-color: #EFE5D9; border: #7A4000 1px solid; padding: 1rem; box-sizing: border-box; margin: 0 0 2rem 0; }
.emphasis p { margin: 0; }
.emphasis ul.list_mb { margin: 0; }

.emphasis_pink { background-color: #5C9ABE; padding: 1rem; box-sizing: border-box; margin: 0 0 2rem 0; }
.emphasis_pink p { margin: 0; }

.low_tel i { font-size: 2rem; }
.low_tel a { color: #472909; font-size: 2rem; font-weight: bold; text-decoration: none; }
.low_tel span { color: #472909; font-size: 2rem; font-weight: bold; text-decoration: none; }

@media screen and (min-width: 768px), print { /*矢印*/
  .arrow { width: 0; height: 0; border-left: 60px solid transparent; border-right: 60px solid transparent; border-top: 30px solid #7A4000; text-align: center; display: block; margin: 30px auto; }
  .text_bold { font-weight: bold; }
  .link_text { color: #7A4000; }
  .link_text:hover { opacity: 0.6; transition: all 0.3s ease 0s; }
  .red_text { color: red; }
  .underline_text { text-decoration: underline; }
  .font_l { font-size: 120%; }
  .tac { text-align: center; }
  .emphasis { background-color: #EFE5D9; border: #7A4000 1px solid; padding: 20px; box-sizing: border-box; margin: 0 0 30px 0; }
  .emphasis p { margin: 0; }
  .emphasis ul.list_mb { margin: 0; }
  .emphasis_pink { background-color: #5C9ABE; padding: 20px; box-sizing: border-box; margin: 0 0 30px 0; }
  .emphasis_pink p { margin: 0; }
  .tow_box { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; width: 1100px; }
  .tow_box section { width: 550px; }
  .low_tel i { font-size: 3rem; }
  .low_tel a { color: #472909; font-size: 3rem; font-weight: bold; text-decoration: none; }
  .low_tel span { color: #472909; font-size: 3rem; font-weight: bold; text-decoration: none; } }
/* -----------------------------------------------------------
　院長紹介
----------------------------------------------------------- */
figure.doctor_img { margin: 0 0 1rem 0; text-align: center; }
figure.doctor_img img { width: 100%; height: auto; }

.doctor_name { text-align: right; font-size: 1.4rem; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; line-height: 160%; }
.doctor_name span { font-size: 1.8rem; }

@media screen and (min-width: 768px), print { figure.doctor_img { margin: 0 20px 50px 0; text-align: left; float: left; }
  figure.doctor_img img { width: 400px; height: auto; }
  .doctor_name { text-align: right; font-size: 1.6rem; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; }
  .doctor_name span { font-size: 2.6rem; } }
/*----------------------------------------------------------- 診療時間・アクセス
----------------------------------------------------------- */
.access_tel i { color: #94540D; font-weight: bold; font-size: 2rem; }
.access_tel span { color: #94540D; font-weight: bold; font-size: 2rem; font-family: 'ebgaramond'; }
.access_tel a { color: #94540D; font-weight: bold; font-size: 2rem; font-family: 'ebgaramond'; text-decoration: none; }

iframe.accessmap { width: 98%; height: 500px; margin: 0 auto; }

dl.access_info { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.2rem; box-sizing: border-box; margin: 2rem 0 3rem 0; line-height: 160%; }
dl.access_info dt { width: 25%; margin: 0 0 1rem 0; color: #EBEEEF; }
dl.access_info dt span { background-color: #442605; color: #ffffff; width: 100%; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; font-weight: bold; font-size: 1.2rem; }
dl.access_info dd { width: 70%; margin: 0 0 1rem 0; color: #333333; font-size: 1.2rem; }
dl.access_info dd ul { list-style-type: none; }
dl.access_info dd ul li { font-size: 1.2rem; margin: 0 0 1rem 0; padding: 0 0 0 1rem; box-sizing: border-box; position: relative; }
dl.access_info dd ul li::before { content: "■"; color: #2275A5; font-size: 0.5rem; position: absolute; top: -0.1rem; left: 0; }
dl.access_info dd ul li span { color: #7A4000; font-weight: bold; }

@media screen and (min-width: 768px), print { .access_tel i { color: #94540D; font-weight: bold; font-size: 3rem; }
  .access_tel span { color: #94540D; font-weight: bold; font-size: 3rem; font-family: 'ebgaramond'; }
  .access_tel a { color: #94540D; font-weight: bold; font-size: 3rem; font-family: 'ebgaramond'; text-decoration: none; }
  iframe.accessmap { width: 100%; height: 500px; margin: 0; }
  dl.access_info { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.2rem; box-sizing: border-box; margin: 2rem 0 3rem 0; line-height: 200%; width: 1100px; }
  dl.access_info dt { width: 127px; margin: 0 0 26px 0; color: #EBEEEF; }
  dl.access_info dt span { background-color: #442605; color: #ffffff; width: 100%; height: 33px; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; font-weight: bold; font-size: 1.6rem; }
  dl.access_info dd { width: 948px; margin: 0 0 26px 0; color: #333333; font-size: 1.8rem; padding: 5px 0 0 0; box-sizing: border-box; }
  dl.access_info dd ul { list-style-type: none; }
  dl.access_info dd ul li { font-size: 1.8rem; margin: 0 0 12px 0; padding: 0 0 0 16px; box-sizing: border-box; position: relative; }
  dl.access_info dd ul li::before { content: "■"; color: #2275A5; font-size: 0.5rem; position: absolute; top: -0.1rem; left: 0; }
  dl.access_info dd ul li span { color: #7A4000; font-weight: bold; } }
/* -----------------------------------------------------------
　初めての方へ
----------------------------------------------------------- */
/*.right_btn {
	text-align: right;
}

@media screen and (min-width: $breakpoint),
	print {
	.right_btn {
	text-align: right;
}
}*/
a.low_bana { display: block; text-decoration: none; width: 70%; margin: 1rem auto; background-color: #472909; color: #ffffff; font-size: 1.6rem; text-align: center; padding: 1rem 0; }

@media screen and (min-width: 768px), print { a.low_bana { display: block; text-decoration: none; width: 400px; margin: 1rem auto; background-color: #472909; color: #ffffff; font-size: 2rem; text-align: center; padding: 2rem 0; }
  a.low_bana:hover { opacity: 0.6; } }
a.low_btn { display: block; text-decoration: none; width: 70%; margin: 3rem 0 1rem; background-color: #2081B9; border-radius: 0.5rem; color: #ffffff; font-size: 1.6rem; text-align: center; padding: 1rem 0; }
a.low_btn.btn_center { margin-left: auto; margin-right: auto; }

@media screen and (min-width: 768px), print { a.low_btn { width: 400px; margin: 5rem 0 2rem; font-size: 2rem; padding: 2rem 0; }
  a.low_btn:hover { opacity: 0.6; } }
/* -----------------------------------------------------------
　クリニック紹介
----------------------------------------------------------- */
.machine_frame { width: 100%; margin: 0; }
.machine_frame figure { margin: 0 0 4rem 0; }
.machine_frame figure img { width: 80%; display: block; margin: 0 auto 1rem auto; }
.machine_frame figure figcaption { font-size: 1.6rem; color: #333333; text-align: center; }

@media screen and (min-width: 768px), print { .machine_frame { width: 100%; margin: 0; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .machine_frame figure { width: 550px; margin: 0 0 60px 0; }
  .machine_frame figure img { width: 550px; display: block; margin: 0 0 20px 0; }
  .machine_frame figure figcaption { font-size: 2.6rem; color: #333333; text-align: center; } }
/* -----------------------------------------------------------
　下層
----------------------------------------------------------- */
a.link_btn { text-decoration: none; font-size: 1.4rem; color: #ffffff; background-color: #7A4000; display: inline-block; text-align: center; padding: 0.4rem 2rem; box-sizing: border-box; border-radius: 2rem; }
a.link_btn::before { font-family: "fontello"; content: "\00e80c"; font-size: 1rem; margin: 0 0.5rem 0 0; }

ul.list_link { list-style-type: none; }
ul.list_link li { margin: 0 0 1rem 0; }
ul.list_link li a { text-decoration: none; font-size: 1.4rem; color: #ffffff; background-color: #7A4000; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; padding: 0.8rem 0; box-sizing: border-box; border-radius: 2rem; }
ul.list_link li a::before { font-family: "fontello"; content: "\00e80c"; font-size: 1rem; margin: 0 0.5rem 0 0; }

dl.title_box { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.4rem; box-sizing: border-box; margin: 0 0 2rem 0; line-height: 160%; }
dl.title_box dt { width: 100%; margin: 0; background-color: #EFE5D9; padding: 1rem; box-sizing: border-box; border-left: #7A4000 1px solid; border-right: #7A4000 1px solid; border-bottom: #7A4000 1px solid; }
dl.title_box dt:first-child { border-top: #7A4000 1px solid; }
dl.title_box dd { width: 100%; margin: 0; padding: 1rem; box-sizing: border-box; border-left: #7A4000 1px solid; border-right: #7A4000 1px solid; border-bottom: #7A4000 1px solid; }

@media screen and (min-width: 768px), print { a.link_btn { text-decoration: none; font-size: 1.6rem; color: #ffffff; background-color: #7A4000; display: inline-block; text-align: center; padding: 10px 30px; box-sizing: border-box; border-radius: 3rem; width: auto; }
  a.link_btn::before { font-family: "fontello"; content: "\00e80c"; font-size: 1rem; margin: 0 0.5rem 0 0; }
  a.link_btn:hover { opacity: 0.6; transition: all 0.3s ease 0s; }
  ul.list_link { list-style-type: none; display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  ul.list_link li { margin: 0 1.6% 20px 1.6%; width: 30%; }
  ul.list_link li a { text-decoration: none; font-size: 1.6rem; color: #ffffff; background-color: #7A4000; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; padding: 15px 0; box-sizing: border-box; border-radius: 3rem; }
  ul.list_link li a::before { font-family: "fontello"; content: "\00e80c"; font-size: 1rem; margin: 0 0.5rem 0 0; }
  ul.list_link li a:hover { opacity: 0.6; transition: all 0.3s ease 0s; }
  dl.title_box { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.6rem; box-sizing: border-box; margin: 0 0 20px 0; line-height: 160%; }
  dl.title_box dt { width: 100%; margin: 0; background-color: #EFE5D9; padding: 15px; box-sizing: border-box; border-left: #7A4000 1px solid; border-right: #7A4000 1px solid; border-bottom: #7A4000 1px solid; }
  dl.title_box dt:first-child { border-top: #7A4000 1px solid; }
  dl.title_box dd { width: 100%; margin: 0; padding: 15px; box-sizing: border-box; border-left: #7A4000 1px solid; border-right: #7A4000 1px solid; border-bottom: #7A4000 1px solid; } }
/* -----------------------------------------------------------
　コンタクト
----------------------------------------------------------- */
.machine_box { margin: 0 0 2rem 0; }
.machine_box figure { width: 90%; margin: 0 auto; display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; border: #2275A5 1px solid; box-sizing: border-box; padding: 15px 0; }
.machine_box figure.right { border-top: none; }
.machine_box figure img { width: 80%; display: block; margin: 0 auto; }
.machine_box figure figcaption { text-align: center; font-size: 1.4rem; margin: 1rem auto 0 auto; line-height: 140%; }

@media screen and (min-width: 768px), print { .machine_box { width: 1100px; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; margin: 0 0 20px 0; }
  .machine_box figure { width: 550px; margin: 0; text-align: left; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: column; flex-direction: column; border: #2275A5 1px solid; box-sizing: border-box; padding: 15px 0; }
  .machine_box figure.right { border-left: none; border-top: #2275A5 1px solid; }
  .machine_box figure img { width: 50%; display: block; margin: 0 auto; }
  .machine_box figure figcaption { width: auto; text-align: center; font-size: 1.8rem; margin: 15px 0 0 0; line-height: 140%; } }
/* -----------------------------------------------------------
　汎用テーブル
----------------------------------------------------------- */
table.low_table { width: 100%; border-collapse: collapse; color: #333333; font-size: 1.4rem; margin: 0 0 2rem 0; }
table.low_table caption { caption-side: bottom; text-align: left; margin: 0.5rem 0 0 0; }
table.low_table tr th { padding: 0.5rem; border: #7A4000 1px solid; background-color: #EFE5D9; box-sizing: border-box; text-align: center; vertical-align: middle; font-weight: normal; padding: 1rem; }
table.low_table tr th:first-child { width: 30%; }
table.low_table tr td { padding: 1rem; border: #7A4000 1px solid; box-sizing: border-box; vertical-align: middle; text-align: center; line-height: 140%; }

table.low_table2 { width: 100%; border-collapse: collapse; color: #333333; font-size: 1.4rem; margin: 0 0 2rem 0; }
table.low_table2 caption { caption-side: bottom; text-align: left; margin: 0.5rem 0 0 0; }
table.low_table2 tr th { padding: 0.5rem; border: #7A4000 1px solid; background-color: #EFE5D9; box-sizing: border-box; text-align: center; vertical-align: middle; font-weight: normal; padding: 1rem; }
table.low_table2 tr th:first-child { width: 30%; }
table.low_table2 tr td { padding: 1rem; border: #7A4000 1px solid; box-sizing: border-box; text-align: left; vertical-align: middle; line-height: 140%; }
table.low_table2 tr td p.mbnone { margin: 0; }

@media screen and (min-width: 768px), print { table.low_table { width: 100%; border-collapse: collapse; color: #333333; font-size: 1.6rem; margin: 0 0 20px 0; }
  table.low_table caption { caption-side: bottom; text-align: left; margin: 10px 0 0 0; }
  table.low_table tr th { padding: 20px; border: #7A4000 1px solid; background-color: #EFE5D9; box-sizing: border-box; text-align: center; vertical-align: middle; font-weight: normal; }
  table.low_table tr th:first-child { width: 30%; }
  table.low_table tr td { padding: 20px; border: #7A4000 1px solid; box-sizing: border-box; text-align: left; vertical-align: middle; text-align: center; line-height: 160%; }
  table.low_table2 { width: 100%; border-collapse: collapse; color: #333333; font-size: 1.6rem; margin: 0 0 20px 0; }
  table.low_table2 caption { caption-side: bottom; text-align: left; margin: 10px 0 0 0; }
  table.low_table2 tr th { padding: 20px; border: #7A4000 1px solid; background-color: #EFE5D9; box-sizing: border-box; text-align: center; vertical-align: middle; font-weight: normal; }
  table.low_table2 tr th:first-child { width: 30%; }
  table.low_table2 tr td { padding: 20px; border: #7A4000 1px solid; box-sizing: border-box; text-align: left; vertical-align: middle; line-height: 160%; }
  table.low_table2 tr td p.mbnone { margin: 0; } }
/* -----------------------------------------------------------
　採用情報
----------------------------------------------------------- */
.about_application_box { border: #7A4000 1px solid; padding: 1rem; box-sizing: border-box; margin: 0 0 0 0; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: column; flex-direction: column; }
.about_application_box p { margin: 0; }
.about_application_box p.low_tel { margin: 0 0 1rem 0; }
.about_application_box p.tanto_name { font-size: 2rem; }

@media screen and (min-width: 768px), print { .about_application_box { border: #7A4000 1px solid; padding: 20px; box-sizing: border-box; margin: 0 0 0 0; display: -webkit-flex; display: flex; -webkit-justify-content: space-around; justify-content: space-around; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; }
  .about_application_box p { margin: 0; }
  .about_application_box p.low_tel { margin: 0 0 0 0; }
  .about_application_box p.tanto_name { font-size: 3rem; }
  .flex { display: flex; } }
/*----------------------------------------------------------- 日帰り白内障手術 Ｑ＆Ａ
----------------------------------------------------------- */
img.cataract_surgery-faq_key { width: 100%; height: auto; }

.faq { margin-bottom: 4em; }
.faq .box dl dt { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; list-style: none; margin: 0; padding: 0; justify-content: left; /* 子要素をflexboxにより中央に配置する */ align-items: center; /* 子要素をflexboxにより中央に配置する */ }
.faq .box dl dt .q { min-height: 80px; width: 80px; background-position: 0 0; background-repeat: no-repeat; background-size: 100%; text-indent: -9999px; margin-right: 20px; }
.faq .box dl dt .q.icon01 { background-image: url("../images/icon_question01.png"); }
.faq .box dl dt .q.icon02 { background-image: url("../images/icon_question02.png"); }
.faq .box dl dt .q.icon03 { background-image: url("../images/icon_question03.png"); }
.faq .box dl dt .balloon2-left { width: calc(100% - 100px); position: relative; display: inline-block; margin: 0 0px 1.5em 0px; padding: 10px 10px; min-width: 120px; max-width: 100%; background: #FFF; border: solid 2px #104F9A; box-sizing: border-box; vertical-align: baseline; }
.faq .box dl dt .balloon2-left::before { content: ""; position: absolute; top: 50%; left: -24px; margin-top: -12px; border: 12px solid transparent; border-right: 12px solid #104F9A; z-index: 2; }
.faq .box dl dt .balloon2-left::after { content: ""; position: absolute; top: 50%; left: -30px; margin-top: -14px; border: 14px solid transparent; border-right: 14px solid #104F9A; z-index: 1; }
.faq .box dl dt .balloon2-left p { color: #442605; font-size: 140%; font-weight: bold; margin: 0; position: relative; padding-left: 1.2em; }
.faq .box dl dt .balloon2-left p::before { content: "Q"; position: absolute; top: 0; left: 0px; font-size: 120%; font-weight: bold; color: #104F9A; }
.faq .box dl dd { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; list-style: none; margin: 0; padding: 0; align-items: center; /* 子要素をflexboxにより中央に配置する */ flex-direction: row-reverse; }
.faq .box dl dd .a { min-height: 80px; width: 80px; background-image: url("../images/icon_answer.png"); background-position: 0 0; background-repeat: no-repeat; background-size: 100%; text-indent: -9999px; margin-left: 20px; }
.faq .box dl dd .balloon2-right { width: calc(100% - 100px); position: relative; display: inline-block; margin: 0 0px 1.5em 0px; padding: 10px 10px; min-width: 120px; max-width: 100%; color: #442605; font-size: 24px; font-weight: bold; background: #FFF; border: solid 2px #F78787; box-sizing: border-box; vertical-align: baseline; border-radius: 10px; }
.faq .box dl dd .balloon2-right::before { content: ""; position: absolute; top: 50%; right: -24px; margin-top: -12px; border: 12px solid transparent; border-left: 12px solid #F78787; z-index: 2; }
.faq .box dl dd .balloon2-right::after { content: ""; position: absolute; top: 50%; right: -30px; margin-top: -14px; border: 14px solid transparent; border-left: 14px solid #F78787; z-index: 1; }
.faq .box dl dd .balloon2-right p { color: #442605; font-size: 1.4rem; margin: 0; position: relative; padding-left: 2em; font-weight: normal; }
.faq .box dl dd .balloon2-right p::before { content: "A"; position: absolute; top: 0; left: 5px; font-size: 120%; font-weight: bold; color: #F78787; }

.faq_img img { width: 100%; height: auto; }

@media screen and (min-width: 768px), print { .faq .box dl dt .q { min-height: 150px; width: 150px; margin-right: 40px; }
  .faq .box dl dt .balloon2-left { width: calc(100% - 380px); margin: 0 190px 1.5em 0px; border-width: 3px; }
  .faq .box dl dt .balloon2-left p { font-size: 24px; padding-left: 1.5em; }
  .faq .box dl dt .balloon2-left p::before { font-size: 24px; top: 0; left: 5px; }
  .faq .box dl dd .a { min-height: 150px; width: 150px; margin-left: 40px; }
  .faq .box dl dd .balloon2-right { width: calc(100% - 380px); margin: 0 0px 1.5em 190px; border-width: 3px; }
  .faq .box dl dd .balloon2-right p { font-size: 18px; }
  .faq .box dl dd .balloon2-right p::before { font-size: 24px; }
  .faq_txt { margin-left: 190px; font-size: 18px; }
  .faq_img img { width: 383px; height: 143px; } }
table.tbl { padding: 0; margin: 0 auto 1.5rem; width: 100%; text-align: center; border-collapse: collapse; box-sizing: border-box; line-height: 140%; }
table.tbl tr th { box-sizing: border-box; font-weight: normal; font-size: 3.4vw; padding: 1.2rem; color: #ffffff; background-color: #563b1d; width: 10%; border-right: #ffffff 1px solid; }
table.tbl tr th:last-child { border-right: #442605 1px solid; }
table.tbl tr th:first-child { border-left: #442605 1px solid; }
table.tbl tr td { box-sizing: border-box; font-weight: normal; font-size: 3.4vw; padding: 1.2rem; /* color: $color2;*/ border-bottom: #442605 1px solid; border-right: #442605 1px solid; vertical-align: middle; line-height: 1.2; }
table.tbl tr td:first-child { border-left: #442605 1px solid; }
table.tbl tr td img { width: 100%; height: auto; }

@media screen and (min-width: 768px), print { table.tbl tr th { font-size: 1.8rem; vertical-align: middle; border-right: #ffffff 1px solid; }
  table.tbl tr th:last-child { border-right: #442605 1px solid; }
  table.tbl tr th:first-child { border-left: #442605 1px solid; }
  table.tbl tr td { font-weight: normal; font-size: 1.8rem; vertical-align: middle; border-bottom: #442605 1px solid; border-right: #442605 1px solid; }
  table.tbl tr td:first-child { border-left: #442605 1px solid; }
  table.tbl tr td img.aa { width: 100px; height: auto; }
  table.tbl tr td img.bb { width: 150px; height: auto; }
  table.tbl tr td img.cc { width: 150px; height: auto; }
  table.tbl tr td img.dd { width: 150px; height: auto; } }
.cert-tag { display: inline-block; margin-top: 0.8rem; padding: 0.2rem 0.6rem; border: 1px solid #333; font-size: 0.9em; border-radius: 4px; line-height: 1.4; font-weight: bold; }

/*# sourceMappingURL=style.css.map */
