@charset "UTF-8";
/* ----------------------------------------------------------------------------------
リセット　_reset.scss
---------------------------------------------------------------------------------- */
html { -webkit-box-sizing: border-box; box-sizing: border-box; }

*, *::before, *::after { -webkit-box-sizing: inherit; box-sizing: inherit; }

ol, ul { margin: 0; padding: 0; list-style: none; }

h1, h2, h3, h4, h5, h6 { margin: 0; padding: 0; font-weight: normal; font-size: inherit; }

img { max-width: 100%; height: auto; vertical-align: bottom; }

/* ----------------------------------------------------------------------------------
モジュール　_module.scss
---------------------------------------------------------------------------------- */
/* clearfix -------------------------------------- */
.cf::before, .cf::after { content: ''; display: block; }

.cf::after { clear: both; }

/* float -------------------------------------- */
.fl_l { float: left; }

.fl_r { float: right; }

/* txt -------------------------------------- */
.txt_c { text-align: center; }

.txt_l { text-align: left; }

.txt_r { text-align: right; }

.bold { font-weight: bold; }

.red { color: #f41b1b; }

.line_mark { background: -webkit-gradient(linear, left top, left bottom, color-stop(75%, transparent), color-stop(75%, #ffff83)) repeat scroll 0 -0.2em; background: linear-gradient(transparent 75%, #ffff83 75%) repeat scroll 0 -0.2em; padding-left: 0.1rem; padding-right: 0.1rem; }

.emp { font-size: 130%; margin: 0 0 0 .8rem; }

.frame { border: 2px solid #ab964b; padding: 1.2rem 1rem 1rem; }

/* img -------------------------------------- */
.img_c { display: block; max-width: 100%; height: auto; margin: 1.0rem auto; }

.img_l, .img_r { display: block; max-width: 80%; height: auto; margin: 1.5rem auto; }

@media screen and (min-width: 48em), print { .img_l { float: left; margin: 0 2.0rem 2.0rem 0; }
  .img_r { float: right; margin: 0 0 2.0rem 3.0rem; } }
/* PC・SP　表示・非表示 -------------------------------------- */
.sp_n { display: none; }

@media screen and (min-width: 48em), print { .sp_n { display: block; }
  .pc_n { display: none; } }
/* マージン・パディング回り -------------------------------------- */
.mt95 { margin-top: 3rem; }

.mt70 { margin-top: 2.6rem; }

.mt60 { margin-top: 2rem; }

.mt30 { margin-top: 2rem !important; }

.main > section section ~ section, .flex2 > section section ~ section { margin-top: 3.0rem; }

.main > section > section section ~ section, .flex2 > section > section section ~ section { margin-top: 2.0rem; }

.main > section > section > section section ~ section, .flex2 > section > section > section section ~ section { margin-top: 2.0rem; }

.wrap > section ~ section { margin-top: 4rem; }
.wrap > section ~ section > section { margin-top: 4rem; }

.frame ~ .frame { margin: 2rem 0 0; }

@media screen and (min-width: 48em), print { .mt95 { margin-top: 9.5rem; }
  .mt70 { margin-top: 7.0rem; }
  .mt60 { margin-top: 6.0rem; }
  .mt30 { margin-top: 3.0rem; }
  .wrap > section ~ section { margin-top: 6rem; }
  .wrap > section ~ section > section { margin-top: 5rem; } }
/* テーブル回り -------------------------------------- */
.table { width: 100%; display: inline-table; margin: 1.6rem 0 0; }
.table caption { text-align: left; font-weight: bold; font-size: 120%; margin: 1rem 0 0; }
.table thead { display: none; }
.table tbody tr { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; }
.table tbody tr:first-of-type { border-top: 1px solid #444444; }
.table tbody tr th { width: 100%; background: #f6f7ee; border-bottom: 1px solid #444444; padding: .4rem 0; }
.table tbody tr td { width: 100%; padding: .4rem 1rem .8rem 1rem; border-bottom: 1px solid #444444; }
.table tbody tr td::before { content: attr(label); display: block; width: 100%; margin: .8rem 0 0; font-weight: bold; }

@media screen and (min-width: 48em), print { .table { display: table; width: 100%; border-collapse: collapse; border-spacing: 0; }
  .table thead { display: table-header-group; }
  .table thead tr { border-top: 1px solid #444444; }
  .table thead tr th { background: #f6f7ee; min-width: 33rem; }
  .table tbody tr { display: table-row; }
  .table tbody tr th { width: 20%; text-align: left; padding: .8rem 2rem; }
  .table tbody tr td { padding: 1rem 1rem .8rem 1.8rem; }
  .table tbody tr td::before { content: ""; margin: 0; } }
/* グーグルマップ -------------------------------------- */
.gmap { width: 100%; }
.gmap iframe { width: 100%; height: 100%; border: none; }
.gmap img { border: 2px solid #92887f; margin: 0 auto 1.2rem; }
.gmap a.btn_map { display: block; width: 23rem; text-align: center; padding: .2rem 1.8rem; font-size: 1.6rem; color: #fff; background: #5b3932; }

@media screen and (min-width: 48em), print { .gmap a.btn_map { padding: 1rem 1.8rem; font-size: 1.8rem; } }
/* タイトル回り -------------------------------------- */
.tit_02 { color: #57380b; font-size: 2rem; line-height: 1.2; margin: 2rem auto 2.0rem auto; position: relative; }
.tit_02 span { color: #e9e4cb; font-size: 4rem; position: absolute; left: 0; right: 0; margin: auto; bottom: -1.2rem; z-index: -1; }

.tit_03 { color: #57380b; font-size: 1.8rem; line-height: 1.2; margin: 2rem auto 2.0rem auto; position: relative; }
.tit_03 span { color: #f1e8db; font-size: 3rem; position: absolute; left: 0; right: 0; margin: auto; bottom: -.8rem; z-index: -1; }

.tit_04 { color: #57380b; font-size: 1.8rem; line-height: 1.2; margin: 0 0 1.0rem; }

@media screen and (min-width: 48em), print { .tit_02 { font-size: 2.8rem; line-height: 0.5; margin: 0 0 6.0rem; }
  .tit_02 span { font-size: 6.6rem; }
  .tit_03 { font-size: 2.4rem; margin: 0 0 2.0rem; }
  .tit_04 { font-size: 2.4rem; margin: 0 0 2.0rem; } }
/* 下層タイトル回り -------------------------------------- */
body:not(.index) .tit_01 { background: url(../img/index_keyvsl01.jpg) repeat center top/25%; font-size: 2.2rem; text-align: left; color: #57380d; padding: 2.0rem 0; margin: 0; -webkit-box-shadow: 0 7px 2px -6px #666666 inset; box-shadow: 0 7px 2px -6px #666666 inset; border-bottom: 1px solid #ae9e8c; }
body:not(.index) .tit_01 > .wrap { -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }
body:not(.index) .tit_02 { font-size: 2rem; text-align: left; border-top: 3px solid #ab964b; border-bottom: 3px solid #ab964b; line-height: 1.2; padding: .8rem 0 .3rem; color: #ab964b; }
body:not(.index) .tit_03 { font-size: 2rem; text-align: left; border-bottom: 3px solid #6f5c4b; padding: 0 0 .2rem 0; line-height: 1.2; position: relative; }
body:not(.index) .tit_03:after { content: ""; border-bottom: 3px solid #ae9e8c; position: absolute; top: 4rem; }
body:not(.index) .tit_04 { color: #ab964b; text-align: left; font-size: 1.8rem; padding: 0 0 .2rem 0; line-height: 1.2; border-bottom: 3px solid #ab964b; }

@media screen and (min-width: 48em), print { body:not(.index) .tit_01 { background: url(../img/index_keyvsl01.jpg) repeat 100%; border-bottom: none; padding: 11rem 0; text-align: left; font-size: 4rem; }
  body:not(.index) .tit_01 > .wrap { -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; }
  body:not(.index) .tit_02 { font-size: 3.6rem; margin: 0 0 3rem; }
  body:not(.index) .tit_03 { font-size: 3.2rem; margin: 0 0 3rem; }
  body:not(.index) .tit_04 { font-size: 2.6rem; margin: 0 0 3rem; } }
/* リスト回り -------------------------------------- */
.lst_ul01 { margin: 1.5rem 0; }
.lst_ul01 li { text-indent: -2.0rem; padding-left: 2.2rem; padding-bottom: 1.0rem; line-height: 1.4; }
.lst_ul01 li::before { content: '●'; color: #ab964b; margin-right: .4rem; }
.lst_ul01 li.none::before { content: ''; }
.lst_ul01.-check > li::before { content: "\e805"; font-family: "fontello"; }
.lst_ul01.-kome > li::before { content: "※"; }
.lst_ul01.-kome > li.red { color: #f41b1b; }
.lst_ul01.-kome > li.red::before { color: #f41b1b; }

.lst_ol01 { margin: 1.0rem 0 1.0rem 2.6rem; }
@media screen and (min-width: 48em), print { .lst_ol01 { margin: 1.0rem 0 1.0rem 2.5rem; } }
.lst_ol01 li { line-height: 1.4; counter-increment: number 1; text-indent: -1.0rem; padding: 0 0 1.0rem 0; }
.lst_ol01 li::before { display: inline-block; content: counter(number) "."; margin-right: .8rem; font-family: 'Lato', sans-serif; color: clr_blue; font-weight: bold; }

.lst_dl01 { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-wrap: wrap; flex-wrap: wrap; }
.lst_dl01 dt { width: 100%; font-weight: bold; background: #f6f7ee; }
.lst_dl01 dd { margin: .6rem 0 1.0rem; padding: 0; }

@media screen and (min-width: 48em), print { .lst_dl01 { display: block; }
  .lst_dl01 dt { background: none; float: left; width: 13%; clear: left; }
  .lst_dl01 dd { margin: 0 0 1.0rem; padding-left: 18rem; } }
/* フレックス回り -------------------------------------- */
.flex3 { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-wrap: wrap; flex-wrap: wrap; }
.flex3 > li { width: 46%; }

@media screen and (min-width: 48em), print { .flex2 { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  .flex2 > section, .flex2 > li { width: 48%; margin: 0 !important; }
  .flex3 li { width: 31%; } }
/* WEB予約バナー -------------------------------------- */
a.web_yoyaku { background: #360c0f; border: 2px solid #713d41; display: -webkit-box; display: -ms-flexbox; display: flex; color: #fff; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; text-align: left; width: 100%; height: 100%; }
a.web_yoyaku::before { content: "\e801"; font-family: "fontello"; color: #fff; margin: 0 1rem 0 0; }

/* 診療時間表 -------------------------------------- */
.timetable { 			/* img{ margin: 1.6rem 0 0; width: 100%; }
			*/ }
.timetable table { width: 100%; -webkit-box-sizing: border-box; box-sizing: border-box; border-collapse: collapse; background: #fff; }
.timetable table th { background: #5b3932; color: #fff; border-right: 2px solid #fff; border-bottom: 2px solid #fff; }
.timetable table td { border-right: 2px solid #727171; border-bottom: 2px solid #727171; }
.timetable table th, .timetable table td { text-align: center; vertical-align: middle; line-height: 1; font-weight: normal; }
.timetable table thead tr th { width: 26%; height: 20vw; border-top: 2px solid #fff; font-size: 4vw; }
.timetable table thead tr th:first-of-type { width: 22%; border-left: 2px solid #fff; font-size: 6.6vw; }
.timetable table tbody tr th { height: 16vw; border-left: 2px solid #fff; font-size: 7vw; }
.timetable table tbody tr td img { width: 7vw; height: 7vw; vertical-align: bottom; line-height: 1; }
.timetable table tbody tr td small { display: inline-block; padding: 6px 0 0; width: 100%; color: #444; font-size: 3.3vw; }
.timetable table tbody tr td.closed { color: #727171; font-size: 7vw; background: #fffeee; }
.timetable table tbody tr td:last-of-type { border-right: 2px solid #fff; }
.timetable table tbody tr:last-of-type td { border-bottom: 2px solid #fff; }
.timetable table caption { caption-side: bottom; text-align: left; }
.timetable table caption ul { font-size: 1.4rem; margin: .8rem 0 0; }
.timetable table caption ul li { margin: 0 0 .6rem; }
.timetable table caption ul li span { font-size: 2.5rem; line-height: .8; vertical-align: middle; }
.timetable table caption ul li.mark_doublecircle { float: right; width: 44%; text-align: right; }
.timetable table caption ul li.mark_star span { color: #dbc08d; }
.timetable table caption ul li.mark_circle span { color: #023461; }
.timetable table caption ul li:last-child span { font-size: 1.6rem; background: #dbc08d; color: #fff; padding: .2rem .2rem; margin: 0 .4rem 0 0; }

@media screen and (min-width: 48em), print { .timetable { margin: 3rem 0 0; -webkit-box-ordinal-group: 4; -ms-flex-order: 3; order: 3; text-align: left;     /*
		> img{ width: 100%; margin: 0; }
		*/ }
  .timetable table thead tr th { height: 80px; font-size: 18px; }
  .timetable table thead tr th:first-of-type { font-size: 28px; }
  .timetable table tbody tr th { height: 64px; font-size: 28px; }
  .timetable table tbody tr td img { width: 28px; height: 28px; }
  .timetable table tbody tr td small { font-size: 14px; }
  .timetable table tbody tr td.closed { font-size: 28px; }
  .timetable table caption ul { font-size: 2rem; }
  .timetable table caption ul li:last-child span { padding: .1rem 1rem; font-size: 2.4rem; } }
/* ボタンリンク -------------------------------------- */
.btn_link { color: #fff; }
.btn_link a { text-decoration: none !important; background: #ab964b; padding: .2rem .6rem; display: inline-block; }

@media screen and (min-width: 48em), print { .btn_link a { padding: .4rem 1rem; } }
/* ----------------------------------------------------------------------------------
共通　_common.scss
---------------------------------------------------------------------------------- */
html { font-size: calc(100vw / 32); font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", sans-serif; }

body { background: #fff; color: #444444; }

a { color: inherit; text-decoration: none; }

.main { font-size: 1.4rem; line-height: 1.6; }
.main a:not([href*="tel"]) { text-decoration: underline; }
.main a[class*="btn_"] { text-decoration: none; }

@media screen and (min-width: 48em), print { html { font-size: 62.5%; }
  body { min-width: 1180px; }
  a { -webkit-transition: .2s; transition: .2s; }
  a:hover { opacity: .8; }
  .wrap { width: 1120px; margin: auto; }
  .main { font-size: 1.8rem; padding: 0; -webkit-box-ordinal-group: 3; -ms-flex-order: 2; order: 2; width: 100%; }
  .sidebar { -webkit-box-ordinal-group: 2; -ms-flex-order: 1; order: 1; width: 23%; } }
p { line-height: 1.6; }

/* アイコンフォント -------------------------------------- */
@font-face { font-family: 'fontello'; src: url("fontello/font/fontello.eot"); src: url("fontello/font/fontello.eot#iefix") format("embedded-opentype"), url("fontello/font/fontello.woff2") format("woff2"), url("fontello/font/fontello.woff") format("woff"), url("fontello/font/fontello.ttf") format("truetype"), url("fontello/font/fontello.svg#fontello") format("svg"); }
/* ヘッダー -------------------------------------- */
.header .wrap { padding: 1.0rem; text-align: center; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; }
.header .wrap .logo { height: 5.0rem; width: 100%; }
.header .wrap .logo a { display: block; width: 80%; height: 100%; background: url(../img/logo.svg) no-repeat left center/contain; text-indent: 100%; white-space: nowrap; overflow: hidden; }
.header .wrap .headL { width: 42%; margin: 1.2rem 0 0; }
.header .wrap .headL a { font-size: 1.2rem; }
.header .wrap .headL a::before { font-size: 2.2rem; }
.header .wrap .headC { width: 58%; margin: 1rem 0 0; font-size: 1.4rem; line-height: 2.2; }
.header .wrap .headC .tel { display: inline-block; font-size: 1.8rem; color: #4f4940; }
.header .wrap .headC .tel::before { content: "\e800"; font-family: "fontello"; margin: 0 .6rem 0 0; font-size: 1.6rem; }
.header .wrap .headR { width: 100%; margin: 1.2rem 0 0; text-align: center; font-size: 1.4rem; line-height: 1.4; }
.header .wrap .headR:last-child { font-size: 1.2rem; }

@media screen and (min-width: 48em), print { .header .wrap { width: 1120px; margin: 0 auto; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  .header .wrap .logo { -ms-flex-preferred-size: 50%; flex-basis: 50%; height: 10rem; }
  .header .wrap .logo a { background: url(../img/logo.svg) no-repeat left center/100%; width: 54rem; }
  .header .wrap .headL { width: 15%; }
  .header .wrap .headL a { -ms-flex-preferred-size: 16rem; flex-basis: 16rem; font-size: 2.2rem; }
  .header .wrap .headL a::before { font-size: 3rem; }
  .header .wrap .headC { -ms-flex-preferred-size: 30%; flex-basis: 30%; margin: 0 0 -4rem auto; position: relative; bottom: 4rem; -webkit-box-ordinal-group: 3; -ms-flex-order: 2; order: 2; }
  .header .wrap .headC .tel { width: auto; display: block; background: none; color: #444444; font-size: 3rem; text-align: left; line-height: 1.6; margin: 0; padding: 0; background-size: auto 70%; }
  .header .wrap .headC .tel::before { font-size: 3rem; }
  .header .wrap .headR { line-height: 1.2; -ms-flex-preferred-size: 30%; flex-basis: 30%; -webkit-box-ordinal-group: 2; -ms-flex-order: 1; order: 1; }
  .header .wrap .headR:last-child { font-size: 2rem; text-align: left; } }
/* SP ドロップダウンメニュー（Slick Nav） -------------------------------------- */
.slicknav_menu { position: fixed; top: 1.0rem; right: 0; font-size: 4.4rem; display: inline-block; background: none; padding: 0; z-index: 10; }
.slicknav_menu .slicknav_btn { width: 5.0rem; height: 5.0rem; color: #fff; background: #6f5c4b; text-shadow: none; border-radius: 0; text-align: center; line-height: 1.0; margin: 0 1.0rem; padding: 0; }
.slicknav_menu .slicknav_btn.slicknav_collapsed::before { display: block; font-family: 'fontello'; content: '\e802'; line-height: .8; }
.slicknav_menu .slicknav_btn.slicknav_collapsed::after { display: block; content: 'MENU'; font-size: 1.0rem; }
.slicknav_menu .slicknav_btn.slicknav_open::before { display: block; font-family: 'fontello'; content: '\e803'; line-height: .8; }
.slicknav_menu .slicknav_btn.slicknav_open::after { display: block; content: 'CLOSE'; font-size: 1.0rem; }
.slicknav_menu .slicknav_nav { width: 100vw; background: #f6f7ee; position: absolute; top: 6.0rem; right: 0; margin: auto; }
.slicknav_menu .slicknav_nav .gnav { margin: 0; }
.slicknav_menu .slicknav_nav .gnav li { border-top: 1px solid #ae9e8c; border-bottom: none; background: none; }
.slicknav_menu .slicknav_nav .gnav li.treatment { border-top: none; }
.slicknav_menu .slicknav_nav .gnav li a { display: block; background: #f6f7ee; color: #614c3f; padding: 1.0rem 0.5rem; margin: 0; font-size: 1.2rem; position: relative; text-align: left; }
.slicknav_menu .slicknav_nav .gnav li a:hover { color: #222222; background: none; border-radius: 100%; }
.slicknav_menu .slicknav_nav .gnav li a:not(.sub)::after { position: absolute; right: 1.0rem; color: #713d41; font-family: 'fontello'; content: '\e804'; font-size: 2.0rem; }
.slicknav_menu .slicknav_nav .gnav li a .sub { display: none; }
.slicknav_menu .slicknav_nav .gnav li a .sub::after { position: absolute; right: 1.0rem; font-family: 'fontello'; content: '\e805'; font-size: 2.0rem; }
.slicknav_menu .slicknav_nav .gnav li.slicknav_parent a.slicknav_item { padding: 0; }
.slicknav_menu .slicknav_nav .gnav li.slicknav_parent ul li:last-child { border: none; }
.slicknav_menu .slicknav_nav .gnav li.slicknav_open > a.slicknav_item .sub::after { font-family: 'fontello'; content: '\e804'; }
.slicknav_menu .slicknav_nav .sub_nav { margin: 0; }
.slicknav_menu .slicknav_nav .sub_nav li { border-top: 1px solid #fff; }
.slicknav_menu .slicknav_nav .sub_nav li a { display: block; color: #fff; margin: 0; padding: 1.0rem 0.5rem; font-size: 1.2rem; position: relative; text-align: left; background: #6f5c4b; }
.slicknav_menu .slicknav_nav .sub_nav li a:not(.sub)::after { position: absolute; right: 1.0rem; color: #fff; font-family: 'fontello'; content: '\e804'; font-size: 2.0rem; }
.slicknav_menu .slicknav_nav .sub_nav .pc_n { display: none; }
.slicknav_menu .slicknav_icon, .slicknav_menu .slicknav_icon-bar, .slicknav_menu .slicknav_arrow, .slicknav_menu .slicknav_row:after { display: none !important; }

#nav { display: none; }

@media screen and (min-width: 48em), print { .slicknav_menu { display: none; }
  #nav { display: block; border-top: 3px solid #ae9e8c; border-bottom: 3px solid #d9d8c0; }
  #nav .gnav { width: 1120px; margin: auto; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
  #nav .gnav li { width: calc(100%/5); padding: 1rem 0; margin: 2rem 0; border-left: 1px solid #ece6d7; }
  #nav .gnav li:first-of-type a { font-size: 1.2rem; }
  #nav .gnav li:first-of-type a span { font-size: 1.6rem; }
  #nav .gnav li:last-child { border-right: 1px solid #ece6d7; }
  #nav .gnav li a { display: block; color: #360c0f; text-decoration: none; text-align: center; font-size: 1.6rem; }
  #nav .gnav li a span { font-size: 1.2rem; }
  #nav .gnav li .subnav { position: absolute; display: none; z-index: 3; }
  #nav .gnav li .subnav li { width: 22rem; padding: 0; margin: 0; border-left: none; border-right: none; }
  #nav .gnav li .subnav li:first-child { margin: 3rem 0 0; }
  #nav .gnav li .subnav li:first-child a { font-size: 1.6rem; padding: 2rem 0 3rem; border-top: none; }
  #nav .gnav li .subnav li:first-child a::before { border-top: none; }
  #nav .gnav li .subnav li a { display: block; width: 100%; background: rgba(111, 92, 75, 0.85); padding: 1rem 0 3rem; color: #fff; }
  #nav .gnav li .subnav li a::before { position: relative; bottom: 2rem; content: ""; width: 90%; display: block; margin: 0 auto; margin-bottom: 1rem; margin-top: 1rem; border-top: 1px dashed #fff; }
  #nav .gnav li .subnav li a:hover { background: rgba(111, 92, 75, 0.85); color: #fff; }
  #nav .sub_nav { display: none; }
  /* Gナビ　ハイライト */ }
/* サイドバー -------------------------------------- */
.sidebar { display: none; }

@media screen and (min-width: 48em), print { .sidebar { display: none; }
  .sidebar .tit { background: #6f5c4b; color: #f6f7ee; font-size: 2.4rem; text-align: center; padding: 1.8rem; border-radius: .8rem; }
  .sidebar .subnav { margin: 0; padding: 1.0rem 0; }
  .sidebar .subnav li a { display: block; padding: 1.2rem .6rem; color: #57380b; position: relative; font-size: 1.8rem; }
  .sidebar .subnav li a::after { font-family: 'fontello'; content: '\e807'; position: absolute; right: .6rem; color: #e0bf97; }
  .sidebar .subnav li a:hover { background: #ffedcd; color: #ec7218; }
  .sidebar .subnav li a:hover::after { color: #ec7218; }
  .sidebar .subnav li:not(:last-child) { border-bottom: 1px solid #f6f7ee; } }
/* クリニック概要 -------------------------------------- */
.overview { padding: 2.0rem 1.0rem 4.0rem; margin: 0; font-size: 1.4rem; line-height: 1.6; border-top: 2px solid #d9d8c0; background: url("../img/overview_bg.jpg") no-repeat center top/cover; }
.overview .clinic_name { text-align: center; margin: 0 0 2.0rem; }
.overview .clinic_name img { max-width: 80%; height: auto; }
.overview > .wrap .overviewL .tbl_gaiyo { width: 100%; border-collapse: collapse; }
.overview > .wrap .overviewL .tbl_gaiyo:first-of-type tr:first-child { border-top: 1px solid #ae9e8c; }
.overview > .wrap .overviewL .tbl_gaiyo tr { border-bottom: 1px solid #ae9e8c; }
.overview > .wrap .overviewL .tbl_gaiyo tr th { width: 24%; font-size: 110%; text-align: left; padding: .4rem; font-weight: normal; color: #ab964b; }
.overview > .wrap .overviewL .tbl_gaiyo tr td { padding: .4rem; }
.overview > .wrap .overviewL .tbl_gaiyo tr td .tel { font-size: 120%; }
.overview > .wrap .map_tit { font-size: 125%; padding: .4rem; color: #ab964b; border-top: 1px solid #ab964b; border-bottom: 1px solid #ab964b; margin-bottom: 0; }
.overview > .wrap .timetable { margin: 1.6rem 0; }
.overview > .wrap .overviewR { margin: 2.0rem 0 0; text-align: center; }
.overview > .wrap .gmap img { width: 100%; margin: 0 0 1.2rem; }
.overview > .wrap .gmap a.btn_map { margin: 0 auto 0; }
.overview > .wrap .gmap a.btn_map.-img { margin-top: 0.8rem; }
.overview > .wrap .overview_maps { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; gap: 2rem; }

@media screen and (min-width: 48em), print { .overview { background: url("../img/overview_bg.jpg") no-repeat center top/100% 100%; width: 100%; margin: 0 0; padding: 10.0rem 0; font-size: 1.8rem; border-top: 3px solid #d9d8c0; }
  .overview .clinic_name { margin: 0 0 3.0rem; }
  .overview .clinic_name img { max-width: 35.0rem; }
  .overview .wrap { width: 1120px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-wrap: wrap; flex-wrap: wrap; margin: 0 auto; }
  .overview .wrap .overviewL { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-wrap: wrap; flex-wrap: wrap; width: 100%; width: 49%; }
  .overview .wrap .overviewL .tbl_gaiyo tbody tr { width: 100%; display: block; border-bottom: 1px solid #ae9e8c; }
  .overview .wrap .overviewL .tbl_gaiyo tbody tr:first-child { border-top: 1px solid #ae9e8c; }
  .overview .wrap .overviewL .tbl_gaiyo tbody tr th { width: 13rem; padding: 5.0rem 0; }
  .overview .wrap .overviewL .tbl_gaiyo tbody tr td .tel { font-size: 160%; }
  .overview .wrap .overviewR { width: 49%; margin: 0; }
  .overview .wrap .map_tit { font-size: 140%; padding: .8rem; }
  .overview .wrap .overview_maps { margin-top: 2rem; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; gap: 0; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
  .overview .wrap .overview_maps li { width: 49%; }
  .overview .wrap .overview_map { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; min-height: 70rem; }
  .overview .wrap .overview_map iframe { height: 475px; }
  .overview .wrap .timetable { width: 44rem; margin: 0 auto; }
  .overview .wrap .timetable img { width: 100%; } }
/* フッター -------------------------------------- */
#pageup { display: none; position: fixed; bottom: 1.0rem; right: 1.0rem; z-index: 1; cursor: pointer; }
#pageup a { display: block; width: 5.0rem; height: 5.0rem; font-size: 1.6rem; text-align: center; padding: .4rem; background: #e5bc53; border-radius: 50%; }
#pageup a::before { text-align: center; font-size: 3.6rem; font-family: 'fontello'; content: '\e805'; color: #fff; }
#pageup a span { display: none; }

@media screen and (min-width: 48em), print { #pageup a { width: 6.4rem; height: 6.4rem; }
  #pageup a::before { font-size: 5.0rem; } }
.tel_up { width: 100%; background: #f6f7ee; visibility: hidden; position: fixed; bottom: 0; left: 0; right: 0; z-index: 11; font-size: 1.4rem; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
.tel_up .tel { display: block; color: #444444; text-align: center; width: 46%; font-size: 1.4rem; line-height: 1.0; }
.tel_up .tel::before { margin: 0 .8rem 0 0; font-family: 'fontello'; content: '\e800'; font-size: 1.6rem; }
.tel_up > a { width: 32%; }
.tel_up .pageup { cursor: pointer; }
.tel_up .pageup a { display: block; width: 5.0rem; font-size: 1.6rem; text-align: center; padding: .6rem .8rem; line-height: 1.0; background: #d2ad5c; }
.tel_up .pageup a::before { text-align: center; font-size: 3.4rem; font-family: 'fontello'; content: '\f106'; color: #fff; }
.tel_up .pageup a span { display: none; }

@media screen and (min-width: 48em), print { .tel_up { display: block; width: 8.0rem; bottom: 4.0rem; right: 2.0rem; left: auto; cursor: pointer; background: none; padding: 0; }
  .tel_up .tel { display: none; }
  .tel_up a.web_yoyaku { display: none; }
  .tel_up .pageup a { width: 6.4rem; height: 6.4rem; border: 3px solid clr_blue; border-radius: 50%; }
  .tel_up .pageup a::before { font-size: 5.0rem; } }
.footer { text-align: center; padding: 0 0 4.6rem; background: #ae9e8c; }
.footer .copy { display: block; background: #ae9e8c; color: #fff; padding: .6rem 1.0rem; font-size: 1.2rem; }
.footer ul { display: none; }

@media screen and (min-width: 48em), print { .footer { color: #fff; padding: 6rem 0 1rem; }
  .footer .copy { padding: 6rem 1rem 0; }
  .footer ul { display: block; text-align: center; margin: 0; padding: 1rem 0 2rem; }
  .footer ul li { display: inline-block; font-size: 1.4rem; }
  .footer ul li:not(:last-child)::after { content: '|'; margin: 0 .4rem; }
  .footer ul li a { opacity: 1.0; }
  .footer ul li a span { display: none; }
  .footer ul li a:hover { text-decoration: underline; }
  .footer ul li.treatment { display: none; } }
/* ----------------------------------------------------------------------------------
トップ　_top.scss
---------------------------------------------------------------------------------- */
main > div { padding: 3rem 1rem 5rem; }

@media screen and (min-width: 48em), print { .wrap { width: 1120px; margin: 0 auto; }
  main > div { padding: 0; } }
/* キービジュアル -------------------------------------- */
#keyvsl { max-width: 100%; padding: 1rem 0; background: url(../img/index_keyvsl01.jpg) repeat center top/25%; -webkit-box-shadow: 0 7px 2px -6px #666666 inset; box-shadow: 0 7px 2px -6px #666666 inset; }
#keyvsl > .wrap { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -ms-flex-wrap: wrap; flex-wrap: wrap; position: relative; }
#keyvsl > .wrap #slide_img { background: url(../img/index_fade01.png) center top/contain no-repeat; width: 100%; height: 21rem; margin: auto; position: relative; z-index: 2; }
#keyvsl > .wrap img.online { width: 86%; margin: 1rem 0 .4rem; }
#keyvsl > .wrap .logo02 { display: none; }

@media screen and (min-width: 48em), print { #keyvsl { padding: 4rem 0; margin: 0 auto 0; background: url(../img/index_keyvsl01.jpg) repeat 100%; }
  #keyvsl > .wrap { -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
  #keyvsl > .wrap #slide_img { background: url(../img/index_fade01.png) no-repeat; width: 23.2%; height: 20rem; margin: 0 auto 0 0; }
  #keyvsl > .wrap img.online { width: 240px; margin: 0 4.5rem 0 0; }
  #keyvsl > .wrap .logo02 { display: block; width: 48%; }
  #keyvsl > .wrap .logo02 img { width: 100%; }
  #keyvsl > .wrap .logo02 p { display: inline-block; text-align: center; line-height: 6rem; width: 100%; margin: 1.2rem 0 0; height: 6rem; background: #ab964b; font-size: 3.2rem; color: #fff; } }
/* 特長(キービジュアル内） -------------------------------------- */
.feature { width: 100%; }
.feature ul { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-wrap: wrap; flex-wrap: wrap; }
.feature ul li { background: url("../img/index_btn_bg.svg") no-repeat center center/30% #fff; width: 48%; height: 10rem; margin: 1rem 0; padding: .2rem; border: 2px solid #ab964b; position: relative; -webkit-box-shadow: 0.2rem 0.2rem 0.1rem rgba(0, 0, 0, 0.2); box-shadow: 0.2rem 0.2rem 0.1rem rgba(0, 0, 0, 0.2); }
.feature ul li a { text-decoration: none; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; font-size: 1.2rem; line-height: 1.4; text-align: center; border: 1px solid #ab964b; width: 100%; height: 100%; position: relative; z-index: 5; }

@media screen and (min-width: 48em), print { .feature { width: 100%; margin: 3rem 0 0; }
  .feature ul { -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
  .feature ul li { background: url("../img/index_btn_bg.svg") no-repeat center center/50% #fff; width: 23%; height: 20rem; }
  .feature ul li a { font-size: 2.2rem; padding: 2rem 0; } }
/* お知らせ -------------------------------------- */
.index .info { background: #f8f5ec; border-top: 2px solid #d9d8c0; text-align: center; position: relative; z-index: 1; /*
a{
		img{
				margin-bottom: 4rem;
				border: #ae9e8c solid 1px;
		}
}
*/ }
.index .info .info_bnr { margin: 0 0 4rem; }
.index .info .info_bnr li { margin: 0 0 2rem; }
.index .info .info_bnr li a { border: #ae9e8c solid 1px; display: block; }
.index .info .info_bnr li a img { max-width: 100%; }
.index .info .info_bnr li.bnr_recruit { position: relative; width: 100%; padding: 21.875% 0 0; background: #ab964b url("../img/index_bnr_recruit.png") no-repeat right top/contain; }
.index .info .info_bnr li.bnr_recruit a { position: absolute; top: 0; left: 0; width: 100%; height: 100%; color: #fff; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; -webkit-box-align: center; -ms-flex-align: center; align-items: center; text-decoration: none; -webkit-box-sizing: border-box; box-sizing: border-box; padding: 0 0 0 1em; }
.index .info .info_bnr li.bnr_blog { position: relative; width: 100%; padding: 21.875% 0 0; }
.index .info .info_bnr li.bnr_blog a { position: absolute; top: 0; left: 0; width: 100%; height: 100%; color: #360c0f; text-align: left; text-decoration: none; -webkit-box-sizing: border-box; box-sizing: border-box; padding: 1rem 0 0 1em; }
.index .info .info_bnr li.bnr_blog a span { display: block; font-size: 1rem; }
.index .info .info_bnr li.bnr_blog01 { background: #FFF url("../img/bnr_blog01.png") no-repeat right top/contain; }
.index .info .info_bnr li.bnr_blog02 { line-height: 1.2; background: #FFF url("../img/bnr_blog02.png") no-repeat right top/contain; }
.index .info .info_bnr li.bnr_blog03 { background: #FFF url("../img/bnr_blog03.png") no-repeat right top/contain; }
.index .info dl { background: #fff; width: 100%; margin: 0 auto 2rem; line-height: 1.4; padding: 1rem .6rem 0 .6rem; height: 100%; overflow-y: auto; text-align: left; border: 1px solid #ae9e8c; }
.index .info dl dt { margin-bottom: .4rem; font-weight: bold; color: #360c0f; font-size: 110%; text-indent: -.6rem; padding-left: 1.3rem; }
.index .info dl dt::before { content: "\a012"; font-family: "fontello"; display: inline-block; margin-right: .4rem; color: #d2ad5c; }
.index .info dl dt.close::before { content: "\a011"; font-family: "fontello"; display: inline-block; margin-right: .4rem; }
.index .info dl dd { margin: 0 0 1.0rem; padding-bottom: 1.0rem; word-wrap: break-word; }
.index .info dl dd:not(:first-of-type) { display: none; }
.index .info .bnr_mynumber { background: #fff; border: 1px solid #aaa; padding: 2rem 1rem; text-align: left; }
.index .info .bnr_mynumber .bnr_tit { font-weight: bold; color: #ab964b; font-size: 120%; text-align: center; }
.index .info .bnr_mynumber .lst_ul01 { margin-bottom: 0; }

@media screen and (min-width: 48em), print { .index .info { padding: 10rem 1rem 8rem; border-top: none; margin: 0 auto; z-index: 1; /*
.img_corona{
	width: 40%;
	display: block;
	margin: 0 auto;
	img{
		margin: -3rem auto 8rem;
	}
	&:hover{
		img{
			opacity: .8;
		}
	}
}
*/ }
  .index .info .info_bnr { margin: 0 0 8rem; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
  .index .info .info_bnr li { width: 49%; height: 120px; }
  .index .info .info_bnr li.bnr_recruit { position: inherit; width: 49%; padding: 0; }
  .index .info .info_bnr li.bnr_recruit a { position: inherit; font-size: 2.8rem; }
  .index .info .info_bnr li.bnr_blog { position: inherit; width: 49%; padding: 0; }
  .index .info .info_bnr li.bnr_blog a { position: inherit; padding-top: 20px; font-size: 2.8rem; }
  .index .info .info_bnr li.bnr_blog a span { font-size: 2rem; }
  .index .info .info_bnr li.bnr_blog02 { line-height: 1.2; }
  .index .info .info_bnr.single { -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }
  .index .info .info_bnr.single li { width: 642px; }
  .index .info dl { padding: 1.4rem; height: 100%; }
  .index .info dl dt { text-align: left; cursor: pointer; display: table; }
  .index .info dl dt::before { margin-right: .8rem; }
  .index .info dl dt.close::before { margin-right: .8rem; }
  .index .info dl dt:hover { opacity: .8; }
  .index .info .bnr_mynumber { padding: 3rem 5rem; width: calc(100% - 25rem); margin-inline: auto; }
  .index .info .bnr_mynumber .bnr_tit { font-size: 120%; }
  .index .info .bnr_mynumber .flex_content { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: center; -ms-flex-align: center; align-items: center; margin: 2rem 0; }
  .index .info .bnr_mynumber .flex_content .lst_ul01 { width: calc(100% - 37rem); }
  .index .info .bnr_mynumber .flex_content > .flex_img { width: 35rem; }
  .index .info .bnr_mynumber .flex_content > .flex_img img { width: 100%; height: auto; } }
/* 診療科目 -------------------------------------- */
.tre { background: url("../img/index_tre_bg.jpg") no-repeat center top/cover; border-top: 2px solid #d9d8c0; text-align: center; position: relative; z-index: 0; }
.tre ul { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-wrap: wrap; flex-wrap: wrap; }
.tre ul li { background: url("../img/index_btn_bg.svg") no-repeat center center/30% #fff; width: 48%; height: 8rem; margin: 1rem 0; padding: .2rem; border: 2px solid #ab964b; -webkit-box-shadow: 0.2rem 0.2rem 0.1rem rgba(0, 0, 0, 0.2); box-shadow: 0.2rem 0.2rem 0.1rem rgba(0, 0, 0, 0.2); position: relative; }
.tre ul li a { text-decoration: none !important; display: -webkit-box; display: -ms-flexbox; display: flex; position: relative; z-index: 5; border: 1px solid #ab964b; color: #360c0f; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; width: 100%; height: 100%; }
.tre section > section { margin: 3rem 0 0; }
.tre section > section p { text-align: left; }

@media screen and (min-width: 48em), print { .tre { padding: 10rem 1rem 8rem; border-top: 3px solid #d9d8c0; background: url("../img/index_tre_bg.jpg") no-repeat center top/cover; }
  .tre ul { -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; }
  .tre ul li { background: url("../img/index_btn_bg.svg") no-repeat center center/37% #fff; width: 23%; height: 13rem; margin: 0 2% 3.2rem 0; }
  .tre ul li:nth-child(4n) { margin: 0 0 3.2rem 0; }
  .tre ul li a { font-size: 2rem; }
  .tre section > section { margin: 5rem 0 0; }
  .tre a img:hover { opacity: .7; } }
/* ご挨拶 -------------------------------------- */
.greeting { background: url("../img/index_greeting_bg.jpg") no-repeat center top/cover; border-top: 2px solid #d9d8c0; text-align: center; position: relative; z-index: 0; }
.greeting img { width: 80%; }
.greeting p:not(.doctor_name) { text-align: left; width: 100%; margin: 0 auto; }
.greeting .doctor_name { text-align: right; margin-bottom: .2rem; }
.greeting .lst_ul01 { text-align: left; }
.greeting .btn_link { text-align: right; margin-bottom: 4rem; }

@media screen and (min-width: 48em), print { .greeting { padding: 10rem 1rem 8rem; background: url("../img/index_greeting_bg.jpg") no-repeat center top/auto; border-top: 3px solid #d9d8c0; padding-bottom: 10rem; }
  .greeting img { width: 350px; height: 100%; }
  .greeting p { text-align: left; line-height: 1.8; }
  .greeting p.doctor_name { text-align: right; padding: 0 3rem 0; margin: 0; }
  .greeting .lst_ul01 { text-align: center; display: inline-block; }
  .greeting .lst_ul01 li { text-align: left; display: block; } }
/* ----------------------------------------------------------------------------------
下層　_lower.scss
---------------------------------------------------------------------------------- */
body:not(.index) main { margin: 2rem 0 4rem; }
body:not(.index) main > div { padding: 0 1rem; }
body:not(.index) main a { word-break: break-all; }
body:not(.index) main .frame .tit_03 { margin-top: 0; }

@media screen and (min-width: 48em), print { body:not(.index) main { margin: 9.5rem 0; }
  body:not(.index) main .cf .img_l, body:not(.index) main .cf .img_r { max-width: 40%; height: auto; }
  body:not(.index) main .overview { margin: 4rem 0 0; } }
/* ドクター紹介 */
@media screen and (min-width: 48em), print { .doctor img { width: 350px; }
  p { line-height: 1.8; } }
/* クリニック紹介 */
.clinic #clinicslide { margin-bottom: 8.0rem; }
.clinic #clinicslide img, .clinic #clinicslide p { display: none; }
.clinic .sp-layer.sp-black.sp-padding { text-align: center; font-size: 2.4rem; }
.clinic .sp-selected-thumbnail { border: 4px solid #000; }
.clinic .device li { margin: 0 0 2.0rem; text-align: center; }
.clinic .device li img { display: block; margin: 0 auto .6rem; max-width: 80%; height: auto; }
.clinic .device li p { text-align: left; margin: .4rem 0 .8rem; padding: 0 1rem 0; }

@media screen and (min-width: 48em), print { .clinic .device { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  .clinic .device li { width: 48%; }
  .clinic .device li img { margin: 0 auto 1.0rem; max-width: 100%; }
  .clinic .device li p { line-height: 1.6; padding: 0; } }
/* 初めての方へ */
.flow dd { margin: 1rem 0 6.0rem; position: relative; }
@media screen and (min-width: 48em), print { .flow dd { margin: 0 0 10.0rem; } }
.flow dd:not(:last-child)::after { display: block; width: 0; height: 0; content: ""; position: absolute; bottom: -5.0rem; left: 0; right: 0; border-top: 2.0rem solid #ccc; border-right: 3.0rem solid transparent; border-bottom: 1.0rem solid transparent; border-left: 3.0rem solid transparent; margin: auto; }

/* 診療時間・アクセス */
.access .gmap { margin: 5rem 0 0; padding: 0 0 4rem; }
.access .gmap a.btn_map { margin: 1.2rem auto 0; }
.access .gmap img { width: 100%; margin: 0; }

@media screen and (min-width: 48em), print { .access .timetable { margin: 9.5rem 0 0; text-align: center; }
  .access .timetable table { width: 440px; margin: 0 auto; }
  .access .gmap { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; -ms-flex-wrap: nowrap; flex-wrap: nowrap; -webkit-box-align: end; -ms-flex-align: end; align-items: flex-end; text-align: center; }
  .access .gmap img { width: 50%; }
  .access .gmap a.btn_map { margin: 0 auto; }
  .access .footer { margin-top: 6rem; } }
/* 健康診断 */
.checkup .table { margin-top: 0; }
.checkup .table tr th { text-align: left; padding: .4rem .8rem; }
.checkup .table tr th span { font-weight: normal; }
.checkup .table tr td { text-align: right; }

@media screen and (min-width: 48em), print { .checkup .table tr th { padding: .4rem .8rem; width: 65%; } }
/* 予防接種 */
.vaccination .table { margin-top: 0; }
.vaccination .table tr th { text-align: left; padding: .4rem .8rem; }
.vaccination .table tr th span { font-weight: normal; }
.vaccination .table tr td { text-align: right; }

@media screen and (min-width: 48em), print { .vaccination .table tr th { padding: .4rem .8rem; width: 65%; } }
/* オンライン */
.online .img_c { border-top: 8px solid #ebf3d9; border-bottom: 8px solid #ebf3d9; margin: 0 auto; }
.online .online_info { background: #ebf3d9; padding: .8rem; color: #2b6538; }
.online .online_info > p { border-bottom: 1px solid #fb3e39; margin: 0 0 .6rem; }
.online .online_info ~ div { background: #ebf3d9; padding: .8rem; }
.online .online_info ~ div > p { color: #444444; margin: 0; }

@media screen and (min-width: 48em), print { .online .online_info { font-size: 2.6rem; margin-top: 6rem; padding: 2.4rem 2rem 1rem; }
  .online .online_info > p { display: inline !important; }
  .online .online_info .tel { margin: 0 1.2rem; }
  .online .online_info ~ div { background: #ebf3d9; padding: 1.6rem; font-size: 2.6rem; }
  .online .online_info ~ div > p { display: inline !important; }
  .online .online_info ~ div a { margin: 0 1.2rem; } }
/* 過去のお知らせ -------------------------------------- */
.information .info { background: none; border-top: 2px solid #d9d8c0; text-align: center; position: relative; z-index: 1; }
.information .info dl { background: #fff; width: 100%; margin: 0 auto; line-height: 1.4; padding: 1rem .6rem 0 .6rem; height: 100%; overflow-y: auto; text-align: left; border: 1px solid #ae9e8c; }
.information .info dl dt { margin-bottom: .4rem; font-weight: bold; color: #360c0f; font-size: 110%; text-indent: -.6rem; padding-left: 1.3rem; }
.information .info dl dt::before { content: "\a012"; font-family: "fontello"; display: inline-block; margin-right: .4rem; color: #d2ad5c; }
.information .info dl dt.close::before { content: "\a011"; font-family: "fontello"; display: inline-block; margin-right: .4rem; }
.information .info dl dd { margin: 0 0 1.0rem; padding-bottom: 1.0rem; word-wrap: break-word; display: none; }

@media screen and (min-width: 48em), print { .information .info { padding: 0rem 0rem 0rem; border-top: none; margin: 0 auto; z-index: 1; }
  .information .info dl { padding: 1.4rem; height: 100%; }
  .information .info dl dt { text-align: left; cursor: pointer; display: table; }
  .information .info dl dt::before { margin-right: .8rem; }
  .information .info dl dt.close::before { margin-right: .8rem; }
  .information .info dl dt:hover { opacity: .8; } }

/*# sourceMappingURL=style.css.map */