@charset "UTF-8";
/* new color */
/* ----------------------------------------------------------------------------------
リセット　_reset.scss
---------------------------------------------------------------------------------- */
html { -webkit-box-sizing: border-box; box-sizing: border-box; }

*, *::before, *::after { -webkit-box-sizing: inherit; box-sizing: inherit; }

ol, ul, dl, dt, dd { margin: 0; padding: 0; list-style: none; }

h1, h2, h3, h4, h5, h6 { margin: 0; padding: 0; font-weight: normal; font-size: inherit; }

p { margin: 0 0 1rem; padding: 0; }

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; }

.vsb { visibility: hidden; }

/* img -------------------------------------- */
.img_c { display: block; max-width: 100%; height: auto; text-align: center; margin: 0 auto; }

.img_l, .img_r { display: block; max-width: 80%; height: auto; margin: 1.0rem auto; }

@media (min-width: 48em) { .img_l { float: left; margin: 0 2.0rem 2.0rem 0; }
  .img_r { float: right; margin: 0 0 2.0rem 2.0rem; } }
.img_box .inner { margin: 0 0.5rem 2rem; }
.img_box .inner span { width: 100%; display: block; text-align: center; background-color: #008a43; color: #fff; }
.img_box .inner img { margin: 0 auto; }

@media (min-width: 48em) { .img_box { margin: 2rem 0 0 0; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }
  .img_box .inner { width: 32%; } }
/* PC・SP　表示・非表示 -------------------------------------- */
.sp_n { display: none; }
@media (min-width: 48em) { .sp_n { display: block; } }

@media (min-width: 48em) { .pc_n { display: none; } }

/* box -------------------------------------- */
.box-message { background-color: #fffdd9; border-radius: 10px; border: 1px solid #fffdd9; overflow: hidden; margin: 0 0 5rem 0; }
@media (max-width: 48em) { .box-message { margin: 0 0 3rem 0; } }
.box-message h3 { background-color: #008a43; color: #fff; text-align: center; font-size: 2rem; }
@media (max-width: 48em) { .box-message h3 { font-size: 1.5rem; } }
.box-message h3 > span { font-weight: bold; font-size: 2.5rem; }
.box-message h3 > span::before { font-family: 'fontello'; content: '\e802'; vertical-align: top; margin-right: 0.5rem; }
.box-message > div { padding: 2rem; }

@media (max-width: 48em) { .line-box .line-2:not(:last-of-type) { padding-bottom: 1rem; } }
@media (min-width: 48em) { .line-box { width: 100%; 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; }
  .line-box .line-2 { width: 48%; } }

@media (max-width: 48em) { .line-box .line-2:not(:last-of-type) { padding-bottom: 1rem; } }
@media (min-width: 48em) { .line-box { width: 100%; 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; }
  .line-box .line-2 { width: 48%; } }

/* タイムテーブル -------------------------------------- */
.tbl-time { width: 100%; border-collapse: separate; border-spacing: 0; background-color: rgba(255, 255, 255, 0.8); border: 3px solid #8A8D89; border-bottom: 2px solid #8A8D89; }
.tbl-time caption { margin: 1.2rem 0 0 0; caption-side: bottom; text-align: right; vertical-align: top; line-height: 1; }
.tbl-time caption img { width: auto; height: 1em; vertical-align: top; padding: 0 0.5rem 0 0; }
.tbl-time tr th, .tbl-time tr td { font-size: 1.3rem; font-weight: bold; text-align: center; vertical-align: middle; padding: .4rem; }
@media (min-width: 48em) { .tbl-time tr th, .tbl-time tr td { font-size: 1.6rem; padding: 1rem .4rem; } }
.tbl-time .ampm { color: #4db5e8; }
.tbl-time .fas { color: #E97874; padding: 0 0.3rem 0 0.5rem; }
.tbl-time .time { color: #6F655C; }
.tbl-time thead tr { background-color: #005EAC; }
.tbl-time thead tr th { color: #fff; }
.tbl-time tbody tr th, .tbl-time tbody tr td { border-bottom: 1px solid #8A8D89; }
.tbl-time tbody tr td { line-height: 1.4; }
.tbl-time tbody tr td img { vertical-align: middle; line-height: 1; }
@media (min-width: 48em) { .tbl-time tbody tr td img { width: 20px; } }

/*料金テーブル ************************************* */
.table_1 { width: 100%; border-collapse: collapse; border-spacing: 0; border: 1px solid #ccc; }
.table_1 tr td { font-size: 1.3rem; padding: .4rem; display: block; width: 100%; border-bottom: 1px solid #ccc; }
.table_1 tr:last-child td:last-child { border-bottom: none; }

@media (min-width: 48em) { .table_1 { font-size: 1.6rem; padding: 1rem .4rem; table-layout: fixed; }
  .table_1 tr td { font-size: 1.6rem; padding: 1.5rem; display: table-cell; width: 100%; border-bottom: 1px solid #ccc; border-right: 1px solid #ccc; } }
.table_2 { width: 100%; border-collapse: collapse; border-spacing: 0; }
.table_2 th { background: #008a43; border: solid 1px #ccc; color: #fff; padding: 3px; width: 33.3%; }
.table_2 td { border: solid 1px #ccc; padding: 3px; }

@media (max-width: 48em) { .table_2 { margin: 0 auto; }
  .table_2 .thead { display: none; }
  .table_2 tr { width: 100%; }
  .table_2 td { display: block; text-align: right; width: 100%; }
  .table_2 td:first-child { background: #008a43; color: #fff; font-weight: bold; text-align: center; }
  .table_2 td:before { content: attr(data-label); float: left; font-weight: bold; margin-right: 10px; } }
.table_3 { width: 100%; border-collapse: collapse; border-spacing: 0; table-layout: fixed; margin: 1.5rem auto; }
.table_3 th { background: #008a43; border: solid 1px #ccc; color: #fff; padding: 3px; width: auto; }
.table_3 td { border: solid 1px #ccc; padding: 3px; }

@media (max-width: 48em) { .table_3 { margin: 1rem auto; }
  .table_3 .thead { display: none; }
  .table_3 tr { width: 100%; }
  .table_3 td { display: block; text-align: left; width: 100%; }
  .table_3 td:first-child { background: #008a43; color: #fff; font-weight: bold; }
  .table_3 td:before { content: attr(data-label); float: left; font-weight: bold; margin-right: 10px; } }
.table_4 { width: 100%; border-collapse: collapse; border-spacing: 0; border: 1px solid #ccc; table-layout: fixed; margin: 1.3rem auto; }
@media (max-width: 48em) { .table_4 { margin: 1rem auto; } }
.table_4 tr th { background-color: #008a43; color: #fff; padding: 3px; }
.table_4 tr th:first-child { border-right: 1px solid #fff; }
.table_4 tr td { padding: 3px; }
.table_4 tr td:first-child { border-right: 1px solid #ccc; }

@media (min-width: 48em) { .table_1 { font-size: 1.6rem; padding: 1rem .4rem; table-layout: fixed; }
  .table_1 tr td { font-size: 1.6rem; padding: 1.5rem; display: table-cell; width: 100%; border-bottom: 1px solid #ccc; border-right: 1px solid #ccc; } }
/*医学講座　運動教室年間スケジュール ************************************* */
.table_5 { width: 100%; border-collapse: collapse; border-spacing: 0; border: 1px solid #ccc; table-layout: fixed; text-align: center; }
.table_5 caption { font-size: 1.5rem; color: #008a43; font-weight: bold; }
.table_5 tr th { background-color: #008a43; color: #fff; padding: 3px; font-size: 1.4rem; border-right: 1px solid #fff; }
.table_5 tr th:nth-child(1) { width: 24%; }
.table_5 tr th:nth-child(2) { width: 43%; }
.table_5 tr th:last-child { border-right: none; }
.table_5 tr td { padding: 3px; font-size: 1.4rem; border-right: 1px solid #ccc; border-bottom: 1px solid #ccc; }
.table_5 tr td span { color: red; }
.table_5 tr td:nth-child(3), .table_5 tr td:nth-child(6) { border-right: none; }

@media (min-width: 48em) { .table_6 { display: table; width: 100%; border-collapse: collapse; border-spacing: 0; table-layout: fixed; font-size: 1.6rem; text-align: center; }
  .table_6 caption { color: #008a43; font-size: 1.8rem; font-weight: bold; }
  .table_6 tr th { border: 1px solid #ccc; background-color: #008a43; color: #fff; padding: 3px; }
  .table_6 tr td { padding: 3px; border: 1px solid #ccc; }
  .table_6 tr td span { color: red; } }
/*診療時間タイムテーブル ************************************* */
.tbl-time_1 { width: 100%; border-collapse: separate; border-spacing: 0; }
.tbl-time_1 caption { margin: 1.2rem 0 0 0; caption-side: bottom; text-align: left; vertical-align: top; line-height: 1; }
.tbl-time_1 caption img { width: auto; height: 1em; vertical-align: middle; padding: 0 0.5rem 0 0; }
.tbl-time_1 tr th, .tbl-time_1 tr td { font-size: 1.3rem; font-weight: bold; text-align: center; vertical-align: middle; padding: .4rem; }
@media (min-width: 48em) { .tbl-time_1 tr th, .tbl-time_1 tr td { font-size: 1.6rem; padding: 1rem .4rem; } }
.tbl-time_1 thead { background-color: #008a43; }
.tbl-time_1 thead tr th { border-right: none; color: #fff; }
.tbl-time_1 tbody tr { color: #008a43; }
.tbl-time_1 tbody tr .time { font-size: 1.15rem; }
@media (min-width: 48em) { .tbl-time_1 tbody tr .time { font-size: 1.6rem; } }
.tbl-time_1 tbody tr td { line-height: 1.4; }
.tbl-time_1 tbody tr td img { vertical-align: middle; line-height: 1; }
.tbl-time_1 tbody tr:last-child th, .tbl-time_1 tbody tr:last-child td { border-bottom: none; }

.tbl-time_2 { width: 100%; border-collapse: separate; border-spacing: 0; }
.tbl-time_2 caption { margin: 1.2rem 0 0 0; caption-side: bottom; text-align: left; vertical-align: top; line-height: 1; }
.tbl-time_2 caption img { width: auto; height: 1em; vertical-align: middle; padding: 0 0.5rem 0 0; }
.tbl-time_2 tr th, .tbl-time_2 tr td { font-size: 1.3rem; font-weight: bold; text-align: center; vertical-align: middle; padding: .4rem; }
@media (min-width: 48em) { .tbl-time_2 tr th, .tbl-time_2 tr td { font-size: 1.6rem; padding: 1rem .4rem; } }
.tbl-time_2 thead { background-color: #008a43; }
.tbl-time_2 thead tr th { border-right: none; color: #fff; }
.tbl-time_2 tbody tr { color: #008a43; }
.tbl-time_2 tbody tr th { border-bottom: 1px solid #008a43; }
.tbl-time_2 tbody tr .time { font-size: 1.15rem; }
@media (min-width: 48em) { .tbl-time_2 tbody tr .time { font-size: 1.6rem; } }
.tbl-time_2 tbody tr td { line-height: 1.4; border-bottom: 1px solid #008a43; }
.tbl-time_2 tbody tr td img { vertical-align: middle; line-height: 1; }

.list-closed dt { display: inline-block; background-color: #B2E3c3; color: #fff; font-size: 0.85em; font-weight: bold; padding: 0.3rem 1.3rem; }
.list-closed dd { display: inline-block; }
@media (max-width: 48em) { .list-closed dd { margin: 0.5rem 0 0 0; } }

.list-closed { margin: 0.8rem 0 0 0; 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%; }
.list-closed dt { background-color: #fff; color: #008a43; font-size: 1.6rem; font-weight: bold; padding: 0.3rem 0.5rem; width: 23%; display: inline-block; margin: 0.5rem 0 0.5rem 0; text-align: center; }
@media (max-width: 48em) { .list-closed dt { font-size: 1.3rem; } }
.list-closed dd { display: inline-block; width: 76%; margin: 0.5rem 0 0.5rem 0; }
@media (max-width: 48em) { .list-closed dd { margin: 0.5rem 0 0 0; } }

/* グーグルマップ -------------------------------------- */
.gmap { position: relative; padding-top: 46%; width: 100%; height: 0; overflow: hidden; }
@media (max-width: 48em) { .gmap { padding-top: 95%; } }
.gmap iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: none; }

/* h2　h3等のタイトル回り -------------------------------------- */
.tit_01 { text-align: center; background: url("../images/top_title_bg.png") no-repeat center center; background-size: cover; }
.tit_01 h2 { display: inline-block; color: #8f603c; font-size: 2.0rem; text-shadow: #fff 1px 1px 2px, #fff -1px 1px 2px, #fff 1px -1px 2px, #fff -1px -1px 2px; padding: 2rem 0 0 0; }
@media (min-width: 48em) { .tit_01 h2 { font-size: 4.0rem; } }

.tit_02 { text-align: center; margin-top: 3rem; }
.tit_02 h3 { display: inline-block; text-align: center; color: #008a43; font-size: 1.8rem; text-shadow: #fff 1px 1px 2px, #fff -1px 1px 2px, #fff 1px -1px 2px, #fff -1px -1px 2px; margin: 1.5rem 0 1rem 0; border-bottom: 2px solid #008a43; }
@media (min-width: 48em) { .tit_02 h3 { margin: 3rem 0 2rem 0; font-size: 3.0rem; } }

.tit_03 { border-bottom: 1px solid #008a43; color: #008a43; font-weight: bold; line-height: 1.4; padding: 1rem 0 0.5rem 0; }
@media (min-width: 48em) { .tit_03 { font-size: 1.8rem; padding: 2rem 0 1rem 0; } }
.tit_03::before { content: url("../images/logo_1.png"); background-size: cover; display: inline-block; vertical-align: middle; margin-right: 0.5rem; }

.tit_04 { border-bottom: 1px dotted #008a43; color: #008a43; font-weight: bold; line-height: 1.4; padding: 0.8rem 0 0.4rem; font-size: 1.3rem; }
@media (min-width: 48em) { .tit_04 { font-size: 1.7rem; padding: 0.5rem 0; } }
.tit_04::before { content: '◆'; background-size: cover; display: inline-block; vertical-align: top; margin-right: 0.5rem; }

.tit_05 { font-weight: bold; color: red; padding: 0 0 0.5rem; vertical-align: middle; }
.tit_05::before { content: '※'; display: inline-block; }
@media (min-width: 48em) { .tit_05 { font-size: 1.8rem; } }

/*　ul li リスト回り -------------------------------------- */
.lst_ul01 { padding: 1.3rem 0 0 0; }
.lst_ul01 li { text-indent: -1.5rem; padding-left: 2.2rem; margin-bottom: 0.5rem; }
.lst_ul01 li::before { content: '●'; margin-right: .4rem; color: #008a43; }
.lst_ul01.-disc > li { padding-left: 1.5rem; }
.lst_ul01.-disc > li::before { content: "・"; color: inherit; }

.lst_ul02 { background: #e3d2c4; -webkit-box-shadow: 0px 0px 0px 10px #e3d2c4; box-shadow: 0px 0px 0px 10px #e3d2c4; /*線の外側*/ border: dashed 2px #008a43; /*破線*/ border-radius: 10px; margin-left: 1rem; /*はみ出ないように調整*/ margin-right: 1rem; /*はみ出ないように調整*/ margin-bottom: 1.5rem; padding: 1rem; margin-top: 2.0rem; }
@media (min-width: 48em) { .lst_ul02 { margin-top: 3rem; } }
.lst_ul02 li { text-indent: -2.0rem; padding-left: 2.2rem; margin-bottom: 0.5rem; }
.lst_ul02 li::before { content: '●'; margin-right: .4rem; color: #008a43; }
.lst_ul02 li ul li::before { content: '・'; margin-right: .4rem; color: #008a43; }

.lst_ul03 { background-color: #e3d2c4; margin-bottom: 1rem; padding: 1rem; border-radius: 10px; }
.lst_ul03 li { display: inline-block; padding-bottom: 0.5rem; }
.lst_ul03 li::before { content: '●'; margin-right: .4rem; color: #008a43; }

.lst_ul04 { padding: 1rem 0; }
.lst_ul04 li { text-indent: -1.2rem; padding: 0 0 0 1.2rem; }
@media (min-width: 48em) { .lst_ul04 li { text-indent: 0; padding: 0; } }

ol { counter-reset: number; /*数字をリセット*/ list-style-type: none !important; /*数字を一旦消す*/ padding: 0.5em; background: #e3d2c4; border-radius: 10px; margin-bottom: 1rem; }

ol li { position: relative; padding-left: 30px; line-height: 1.5em; padding: 0.5em 0.5em 0.5em 30px; }

ol li:before { /* 以下数字をつける */ position: absolute; counter-increment: number; content: counter(number); /*以下数字のデザイン変える*/ display: inline-block; background: #008a43; color: white; font-weight: bold; font-size: 15px; border-radius: 50%; left: 0; width: 25px; height: 25px; line-height: 25px; text-align: center; /*以下 上下中央寄せのため*/ top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); }

/* dl dt dd
-------------------------------------- */
.dl_box { background-color: #e3d2c4; padding: 1rem; border-radius: 10px; margin-bottom: 1rem; }
.dl_box dt { font-weight: bold; color: #008a43; }
.dl_box dd { display: block; }

.qa_dl_box { padding: 1rem; border-radius: 10px; margin: 1rem 0 1rem 0; }
.qa_dl_box dt { font-weight: bold; margin-bottom: 0.5rem; text-indent: -2rem; padding-left: 1.8rem; }
.qa_dl_box dt::before { content: "Q:"; margin-right: 0.5rem; }
.qa_dl_box dd { text-indent: -1.8rem; padding-left: 1.8rem; margin-bottom: 0.5rem; }
.qa_dl_box dd::before { content: "A:"; margin-right: 0.5rem; }
.qa_dl_box dd > span { color: #008a43; font-weight: bold; font-size: 1.6rem; }

/* slider 
-------------------------------------- */
.slick { /*左右の矢印の色を変える*/ /*左右の矢印の位置を変える*/ /*スライド数のドットの色を変える*/ /*スライド画像の横幅可変*/ }
.slick .slick-slide { position: relative; margin: 0 0.5rem; }
.slick .slick-slide .caption { position: absolute; top: 0; left: 0; width: 100%; background-color: #008a43; text-align: center; color: #fff; font-size: 2rem; }
@media (max-width: 48em) { .slick .slick-slide .caption { font-size: 1.5rem; } }
.slick .slick-slide img { margin: 0 auto; max-width: 100%; height: auto; }
.slick .slick-prev::before, .slick .slick-next::before { content: ''; }
.slick .slick-prev:before, .slick .slick-next:before { color: #000; }
.slick .slick-next { right: 20px; z-index: 99; }
.slick .slick-prev { left: 15px; z-index: 100; }
.slick .slick-dots li.slick-active button:before, .slick .slick-dots li button:before { color: #008a43; font-size: 1.5rem; }
.slick img { max-width: 100%; height: auto; }

/* リンクカット -------------------------------------- */
.link-cut a { pointer-events: none; }

/* サイト内リンク
----------------------------- */
.link_site { 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; margin: 0.5rem auto; z-index: 999; }
.link_site li { margin: 0.5rem; border: 1px solid #008a43; font-size: 1.2rem; width: 46%; height: 4.6rem; }
.link_site li a { 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; width: 100%; height: 100%; color: #008a43; text-decoration: none; -webkit-transition: all .3s; transition: all .3s; text-align: center; font-weight: bold; }
.link_site li a:hover { color: #fff; background-color: #008a43; }

@media (min-width: 48em) { .link_site { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; margin: 1rem auto; width: 95%; }
  .link_site li { width: 32%; border: 1px solid #008a43; font-size: 1.7rem; }
  .link_site li a { padding: 0.8rem 0.5rem; }
  .link_site li a:hover { color: #fff; background-color: #008a43; } }
/* リンクボタン
----------------------------- */
.link_btn { margin: 1.5rem 0; text-align: center; font-size: 1.6rem; }
.link_btn a { display: inline-block; margin: 0 auto; border: 1px solid #ccc; padding: 0.2rem 2rem; background-color: #f5eeec; font-weight: bold; text-decoration: none; }
.link_btn a::before { display: inline-block; margin-right: 0.5em; content: '\e801'; font-family: 'fontello'; color: #73390c; }

@media (max-width: 48em) { .link_btn { font-size: 1.2rem; } }
/* 関連リンクBOX
----------------------------- */
.link_box { width: 90%; border: 2px solid #8e5f3b; padding: 1em 1em 0; margin: 2rem auto; font-size: 1.8rem; }
@media (max-width: 48em) { .link_box { font-size: 1.4rem; } }
.link_box .box_title { font-weight: bold; text-align: center; margin: 0 auto 0.5em; color: #8e5f3b; border-bottom: 2px dotted #ccc; }
.link_box .box_title::before { display: inline-block; font-family: "Fontello"; font-weight: 900; content: "\f08e"; margin-right: 0.5em; }
.link_box p span { display: block; }
.link_box p a { font-weight: bold; text-decoration: none; color: #339900; }
.link_box p a::before { display: inline-block; font-family: "Fontello"; font-weight: 900; content: "\e806"; margin-right: 0.5rem; }

/* マージン・パディング回り -------------------------------------- */
.mt50 { margin-top: 5.0rem; }

.mt40 { margin-top: 4.0rem; }

.mt30 { margin-top: 3.0rem; }

.mt20 { margin-top: 2.0rem; }

.mt10 { margin-top: 1.0rem; }

.mt05 { margin-top: 0.5rem; }

.mb50 { margin-bottom: 5.0rem; }

.mb40 { margin-bottom: 4.0rem; }

.mb30 { margin-bottom: 3.0rem; }

.mb20 { margin-bottom: 2.0rem; }

.mb10 { margin-bottom: 1.0rem; }

.mb05 { margin-bottom: 0.5rem; }

@media (min-width: 48em) { .mt50 { margin-top: 10.0rem; }
  .mt40 { margin-top: 8.0rem; }
  .mt30 { margin-top: 6.0rem; }
  .mt20 { margin-top: 4.0rem; }
  .mt10 { margin-top: 2.0rem; }
  .mt05 { margin-top: 1.0rem; }
  .mb50 { margin-bottom: 10.0rem; }
  .mb40 { margin-bottom: 8.0rem; }
  .mb30 { margin-bottom: 6.0rem; }
  .mb20 { margin-bottom: 4.0rem; }
  .mb10 { margin-bottom: 2.0rem; }
  .mb05 { margin-bottom: 1.0rem; } }
/* ----------------------------------------------------------------------------------
共通　_common.scss
---------------------------------------------------------------------------------- */
html { font-size: calc(100vw / 32); font-family: YuGothic, 'Yu Gothic', sans-serif; overflow: auto; }
@media (min-width: 48em) { html { font-size: 62.5%; } }

body { overflow: hidden; }
@media (min-width: 48em) { body { min-width: 1040px; font-size: 1.3rem; } }

a { color: inherit; text-decoration: none; }
@media (min-width: 48em) { a { -webkit-transition: .2s; transition: .2s; }
  a:hover { opacity: .6; } }

@media (min-width: 48em) { .wrap { width: 940px; margin: auto; } }

/*メイン内容
----------------------------*/
.main { font-size: 1.4rem; line-height: 1.6; }
.main a { text-decoration: none; }
@media (min-width: 48em) { .main { font-size: 1.6rem; margin-top: 0; } }
.main section { padding: 3rem 1rem; }
@media (min-width: 48em) { .main section { padding: 6rem 0; } }
@media (min-width: 48em) { .main .wrap { -webkit-box-sizing: border-box; box-sizing: border-box; } }
.main .wrap .box-sub { padding-top: 2rem; }

@media (min-width: 48em) { .top_title { background-color: #713a0a; color: #fff; text-align: center; } }

/* ヘッダー 
-------------------------------------- */
header { padding-top: 1rem; z-index: 9999; width: 100%; background: -webkit-gradient(linear, left top, left bottom, color-stop(10%, rgba(251, 243, 234, 0.9)), color-stop(30%, rgba(255, 255, 255, 0))), url("../images/kv.jpg") no-repeat center center; background: linear-gradient(to bottom, rgba(251, 243, 234, 0.9) 10%, rgba(255, 255, 255, 0) 30%), url("../images/kv.jpg") no-repeat center center; background-size: cover; }
header #hd-wrap { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-pack: distribute; justify-content: space-around; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -ms-flex-wrap: wrap; flex-wrap: wrap; padding: 1rem 0; }
header #hd-wrap h1 { width: 100%; }
header #hd-wrap h1 img { width: 45%; }
header #hd-wrap ul { position: relative; background-color: rgba(130, 116, 106, 0.8); }
header #hd-wrap ul li.list { font-size: 1.3rem; background-color: #fff; padding: 0.2rem; color: #713a0a; }
header #hd-wrap ul li#sp-tel { position: absolute; top: -1.5rem; right: 1.2rem; display: block; width: 3.6rem; height: 3.6rem; padding: .2rem 0 0; -webkit-box-sizing: border-box; box-sizing: border-box; background-color: #73390c; border-radius: 5px; color: #fff; font-size: .8rem; text-align: center; overflow: hidden; }
header #hd-wrap ul li#sp-tel a::before { display: block; font-family: "Fontello"; font-weight: 900; font-size: 3rem; content: '\e802'; }
header #hd-wrap ul li#sp-tel .tel { display: block; width: 100%; height: 100%; }
header #hd-wrap .top_sp_address { width: 100%; margin: 1rem 0 0 0; text-align: right; font-size: 1.3rem; line-height: 1.4; }
header .kv_text { padding-bottom: 25rem; margin: 2% auto 0 23%; width: 75vw; }

@media (max-width: 48em) { header { padding-top: 0; background: -webkit-gradient(linear, left top, left bottom, color-stop(100%, rgba(251, 243, 234, 0.9)), color-stop(20%, rgba(251, 243, 234, 0.8)), color-stop(20%, rgba(255, 255, 255, 0.9))); background: linear-gradient(to bottom, rgba(251, 243, 234, 0.9) 100%, rgba(251, 243, 234, 0.8) 20%, rgba(255, 255, 255, 0.9) 20%); }
  header #hd-wrap { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-pack: distribute; justify-content: space-around; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -ms-flex-wrap: wrap; flex-wrap: wrap; padding: 1rem 0 0.5rem 0; }
  header #hd-wrap h1 { width: 100%; -webkit-box-ordinal-group: 2; -ms-flex-order: 1; order: 1; }
  header #hd-wrap h1 img { width: 45%; }
  header #hd-wrap ul { position: relative; background-color: rgba(130, 116, 106, 0.8); width: 15%; -webkit-box-ordinal-group: 4; -ms-flex-order: 3; order: 3; }
  header #hd-wrap ul li.address { display: none; }
  header #hd-wrap ul li.list { display: none; } }
@media (max-width: 48em) and (max-width: 48em) { header #hd-wrap ul li.paking { display: none; } }
@media (max-width: 48em) { header #hd-wrap ul li.telnum { display: none; }
  header #hd-wrap .top_sp_address { width: 80%; -webkit-box-ordinal-group: 3; -ms-flex-order: 2; order: 2; padding: 0 0.5rem 0 0; } }
@media (min-width: 48em) { header #hd-wrap { width: 90%; margin: 0 auto; padding: 0 0 1rem 0; }
  header #hd-wrap h1 { width: 40%; }
  header #hd-wrap h1 img { width: auto; }
  header #hd-wrap ul li { text-align: center; color: #fff; font-weight: bold; margin: 1rem; }
  header #hd-wrap ul li.address { font-size: 1.5rem; }
  header #hd-wrap ul li#sp-tel { display: none; } }
@media all and (-ms-high-contrast: none) { *::-ms-backdrop, header { /* IE11 にのみ適用される */ background: -ms-linear-gradient(top, rgba(251, 243, 234, 0.9) 10%, rgba(255, 255, 255, 0) 30%), url("../images/kv_1.jpg") no-repeat center center; background-size: cover; } }
/* グローバルナビ 
-------------------------------------- */
#nav { width: 100%; background-color: #e3d2c4; }
#nav .gnav li a { text-align: center; display: block; }
#nav .gnav .treatment-nav { display: none; position: absolute; width: 100vw; background: #fbf4ec; z-index: 9999; }
#nav .gnav .treatment-nav .text_big { font-weight: bold; width: 100%; }
#nav .gnav .treatment-nav .text_small { width: 100%; }
#nav .gnav .treatment-nav > a { border: 1px solid #73390c; }

@media (max-width: 48em) { #nav { width: 100%; z-index: 999; }
  #nav .gnav { border-top: 1px solid #fff; font-size: 0; }
  #nav .gnav li { display: inline-block; width: 50%; position: relative; }
  #nav .gnav li .gnav_top::before { content: ""; display: block; position: absolute; width: 9rem; height: 1rem; top: 52%; left: 23%; border-bottom: 1px solid #713a0a; }
  #nav .gnav li a { padding: 1rem 0; font-size: 1.3rem; border: 1px solid #fff; } }
@media (min-width: 48em) { #nav .gnav { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-pack: distribute; justify-content: space-around; -ms-flex-wrap: nowrap; flex-wrap: nowrap; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-sizing: border-box; box-sizing: border-box; overflow: visible; width: 80%; margin: 0 auto; padding: 2rem 0; }
  #nav .gnav > li .gnav_top, #nav .gnav > li .gnav_bottom { display: block; }
  #nav .gnav > li .gnav_top { border-bottom: 2px solid #713a0a; padding-bottom: 0.5rem; font-size: 2rem; }
  #nav .gnav > li .gnav_bottom { padding-top: 0.8rem; font-size: 1.3rem; }
  #nav .gnav > li a { padding: 0.5rem 0; }
  #nav .gnav > li.treatment-btn { position: relative; }
  #nav .gnav > li.treatment-btn .treatment-nav { width: 30rem; top: 4rem; left: -10rem; }
  #nav .gnav > li.treatment-btn .treatment-nav a { font-size: 1.8rem; padding: 1rem 0; }
  #nav .gnav > li.treatment-btn .treatment-nav a:hover { font-weight: bold; }
  #nav .gnav > li.treatment-btn .treatment-nav .text_big a { font-size: 2rem; } }
/* 医院概要 
-------------------------------------- */
#overview { overflow: hidden; padding: 0 0 4rem 0; }
#overview #ov-wrap { font-size: 1.4rem; line-height: 1.6; }
#overview #ov-wrap img { vertical-align: middle; }
#overview #ov-wrap .clinic dl.list dt, #overview #ov-wrap .access dl.list dt { width: 28%; margin: 0 0 0.5rem; font-weight: bold; color: #22a168; }
@media (min-width: 48em) { #overview #ov-wrap .clinic dl.list dt, #overview #ov-wrap .access dl.list dt { width: 21%; } }
#overview #ov-wrap .clinic dl.list dt::before, #overview #ov-wrap .access dl.list dt::before { content: url("../images/logo_1.png"); display: inline-block; vertical-align: middle; margin-right: 0.5rem; }
#overview #ov-wrap .clinic dl.list dd, #overview #ov-wrap .access dl.list dd { width: 68%; margin: 0 0 1rem; }
@media (min-width: 48em) { #overview #ov-wrap .clinic dl.list dd, #overview #ov-wrap .access dl.list dd { width: 78%; } }
#overview #ov-wrap .clinic dl.list dd ul.access_rotue li, #overview #ov-wrap .access dl.list dd ul.access_rotue li { margin: 0 0 1rem 0; }

@media (min-width: 48em) { #overview h2 { text-align: center; }
  #overview h2 .over_logo { display: inline-block; width: 20%; }
  #overview #ov-wrap { font-size: 1.8rem; width: 1040px; margin: 45px auto 0; overflow: hidden; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-pack: distribute; justify-content: space-around; -ms-flex-wrap: nowrap; flex-wrap: nowrap; }
  #overview #ov-wrap .clinic { width: 49%; }
  #overview #ov-wrap .clinic dl.list { 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%; }
  #overview #ov-wrap .clinic dl.list dd { margin: 0 0 4.5rem; font-size: 1.7rem; }
  #overview #ov-wrap .clinic dl.list dd ul.access_rotue li { margin: 0 0 1.5rem 0; }
  #overview #ov-wrap .clinic .timetable { padding: 1.5rem 0 0 0; }
  #overview #ov-wrap .access { width: 49%; }
  #overview #ov-wrap .access dl.list { 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%; }
  #overview #ov-wrap .access dl.list dd { margin: 0 0 2.2rem; padding: 0.2rem 0 0; font-size: 1.7rem; }
  #overview #ov-wrap .access .tbl-time_1 { width: 100%; border-collapse: collapse; }
  #overview #ov-wrap .access .tbl-time_1 tbody tr th { text-align: left; padding: 0.2rem; }
  #overview #ov-wrap .access .tbl-time_1 tbody tr td { padding: 0.2rem; }
  #overview #ov-wrap .access .tbl-time_1 tbody tr:nth-child(2) { border-bottom: 1px solid #22a168; }
  #overview #ov-wrap .access .tbl-time_1 tbody tr .t_point { color: red; }
  #overview #ov-wrap .access .small_map { padding-top: 50%; display: block; } }
@media (max-width: 48em) { #overview { padding: 3rem 0 0 0; }
  #overview h2 { text-align: center; }
  #overview h2 .over_logo { display: inline-block; width: 37%; }
  #overview #ov-wrap { -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }
  #overview #ov-wrap .clinic { width: 95%; margin: 0 auto; }
  #overview #ov-wrap .clinic dl.list { 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%; }
  #overview #ov-wrap .clinic dl.list dt { margin: 0 0 2.2rem; }
  #overview #ov-wrap .clinic dl.list dt dd { width: calc(100% - 8em); margin: 0 0 2.2rem; padding: 0.2rem 0 0; }
  #overview #ov-wrap .access { width: 95%; margin: 0 auto; }
  #overview #ov-wrap .access dl.list { 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; width: 100%; }
  #overview #ov-wrap .access dl.list dt { margin: 0 0 2.2rem; }
  #overview #ov-wrap .access dl.list dt dd { width: calc(100% - 8em); margin: 0 0 2.2rem; padding: 0.2rem 0 0; }
  #overview #ov-wrap .access .tbl-time_1 { width: 100%; border-collapse: collapse; }
  #overview #ov-wrap .access .tbl-time_1 tbody tr th { text-align: left; }
  #overview #ov-wrap .access .tbl-time_1 tbody tr:nth-child(2) { border-bottom: 1px solid #22a168; }
  #overview #ov-wrap .access .tbl-time_1 tbody tr .t_point { color: red; }
  #overview #ov-wrap .access .small_map { padding-top: 68%; } }
#overview.sub_footer { background-color: #f3f6f5; padding: 4rem 0 1rem 0; }
#overview.sub_footer #ov-wrap .clinic { 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: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; border-bottom: 1px solid #7ebd25; margin-bottom: 2rem; }
#overview.sub_footer #ov-wrap .clinic h2 { background: none; width: 40%; padding: 0 0 1rem 0; }
#overview.sub_footer #ov-wrap .clinic p:nth-of-type(2) span { display: inline-block; padding: 0.5rem 2.5rem; background-color: #7ebd25; color: #fff; border-radius: 25px; font-size: 1.4rem; }
#overview.sub_footer #ov-wrap .clinic p:nth-of-type(3) { font-size: 2.5rem; }
#overview.sub_footer #ov-wrap .clinic p:nth-of-type(3) .tel::before { content: "\e802"; font-family: "fontello"; display: inline-block; font-size: 2.5rem; margin-right: 0.5rem; }

@media (min-width: 48em) { #overview.sub_footer { margin: 0 0 4rem 0; }
  #overview.sub_footer #ov-wrap .clinic { border-bottom: none; position: relative; }
  #overview.sub_footer #ov-wrap .clinic::after { content: ""; position: absolute; display: block; width: 40rem; height: 1px; background-color: #7ebd25; -webkit-transform: rotate(90deg); transform: rotate(90deg); top: 0; right: -32%; }
  #overview.sub_footer #ov-wrap .clinic p:nth-of-type(2) span { padding: 0.5rem 2.5rem; font-size: 1.6rem; }
  #overview.sub_footer #ov-wrap .clinic p:nth-of-type(3) { font-size: 3.5rem; }
  #overview.sub_footer #ov-wrap .clinic p:nth-of-type(3) .tel::before { font-size: 3.5rem; margin-right: 0.5rem; } }
/* map box
-------------------------------------- */
.map_box { padding: 1rem 0; }
.map_box .link_btn { margin: 1.5rem 0; }

@media (min-width: 48em) { .map_box { padding: 2rem 0 0 0; }
  .map_box .link_btn { margin: 2.5rem 0; } }
/* フッター 
-------------------------------------- */
footer { overflow: hidden; background-color: #713a0a; color: #fff; text-align: center; }
footer .copy { display: inline-block; color: #fff; }
footer .copy a { color: inherit; }

@media (min-width: 48em) { footer { font-size: 1.4rem; line-height: 1.6; }
  footer .copy { font-size: 1.8rem; margin: 0 auto; } }
@media (max-width: 48em) { .copy { padding: 0.8rem 0; font-size: 1.2rem; } }
/* パンくずメニュー
----------------------------- */
.pankuzu { margin: 0.5rem auto; }
.pankuzu ul { 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; -ms-flex-wrap: wrap; flex-wrap: wrap; }
.pankuzu ul li { color: #713a0a; font-size: 1.5rem; margin: 0 1rem 1.5rem 0; }
.pankuzu ul li::before { content: "\e801"; font-family: 'fontello'; display: inline-block; margin-right: 0.5rem; }

@media (max-width: 48em) { .pankuzu { width: 90%; display: none; }
  .pankuzu ul { -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; }
  .pankuzu ul li { font-size: 1rem; margin: 0 1rem 0.5rem 0; } }
/* to top page
----------------------------- */
#pagetop { display: block; position: fixed; z-index: 9999; bottom: 1.8rem; right: 0rem; -webkit-transition: .5s; transition: .5s; }
#pagetop > a { font-size: 2rem; line-height: 2rem; padding: 2rem; display: block; text-align: center; text-decoration: none; }
#pagetop > a img { display: block; width: 90%; height: 100%; }
@media (max-width: 48em) { #pagetop { bottom: 1.5rem; right: -1.2rem; }
  #pagetop > a { font-size: 1rem; line-height: 1rem; padding: 1rem; }
  #pagetop > a img { width: 80%; } }

/* ----------------------------------------------------------------------------------
トップ　_top.scss
---------------------------------------------------------------------------------- */
#index { /* キービジュアル -------------------------------------- */ /* お知らせ -------------------------------------- */ /* 院長あいさつ -------------------------------------- */ }
#index .main { background: url(../images/a_bg02.png) center top; }
#index .main section { padding: 0; }
@media (min-width: 48em) { #index .main section { padding: 0; } }
#index h2 { font-family: "游明朝体", "ヒラギノ丸ゴ Pro W4", "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "HG丸ｺﾞｼｯｸM-PRO", "HGMaruGothicMPRO"; text-align: center; font-size: 3rem; background: url("../images/top_title_bg.png") repeat-x center center; background-size: cover; padding: 4rem 0; }
@media (max-width: 48em) { #index h2 { font-size: 2rem; background: url("../images/top_title_bg.png") repeat-x center center; background-size: cover; padding: 2rem 0; } }
#index h2 > span { display: block; color: #005d52; font-size: 1.5rem; }
#index #keyvisual { z-index: -1; padding-top: 45%; margin-top: 15vw; background: #fff url(../images/kv.jpg) no-repeat center center; background-size: cover; position: relative; }
#index #keyvisual .wrap { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
#index #keyvisual .wrap img { position: absolute; height: auto; }
#index #keyvisual .wrap img.kaiin { width: 33vw; bottom: 1rem; left: 1rem; }
#index #keyvisual .wrap .lead { position: absolute; top: 107%; width: 100%; text-align: center; font-size: 1.4rem; line-height: 1.4; color: #4db5e8; font-weight: bold; font-family: "游明朝体", "ヒラギノ丸ゴ Pro W4", "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "HG丸ｺﾞｼｯｸM-PRO", "HGMaruGothicMPRO"; }
#index #keyvisual .wrap .lead span { color: #005EAC; display: inline-block; padding: 0 0.2rem; }
@media (min-width: 48em) { #index #keyvisual { padding-top: 0; margin-top: 0; height: 40vw; }
  #index #keyvisual .wrap { position: relative; width: 1040px; }
  #index #keyvisual .wrap img { width: auto !important; }
  #index #keyvisual .wrap img.kaiin { bottom: 3rem; left: 0; }
  #index #keyvisual .wrap .lead { top: auto; left: auto; right: 0; bottom: 3rem; text-align: right; text-shadow: #fff 2px 0px, #fff -2px 0px, #fff 0px -2px, #fff 0px 2px, #fff 2px 2px, #fff -2px 2px, #fff 2px -2px, #fff -2px -2px, #fff 1px 2px, #fff -1px 2px, #fff 1px -2px, #fff -1px -2px, #fff 2px 1px, #fff -2px 1px, #fff 2px -1px, #fff -2px -1px; font-size: 2.8rem; }
  #index #keyvisual .wrap .lead span { font-size: 4rem; padding: 0 0.5rem 0 0.7rem; }
  #index #keyvisual .wrap .lead span:last-of-type { padding-right: 0; } }
#index #info .wrap h3 { padding: 0.5rem; background-color: #005d52; color: #fff; font-size: 2.3rem; text-align: center; }
#index #info .wrap .info_box { border: 2px solid #005d52; background-color: #fff; width: 95%; margin: 2rem auto 0 auto; }
#index #info .wrap dl { margin: 0.5rem 0 0 0; height: auto; overflow-y: auto; padding: 0 0.5rem; width: 100%; overflow-x: hidden; }
#index #info .wrap dl dt { font-size: 1.6rem; color: #005EAC; font-weight: bold; border-bottom: 1px dashed #000; }
#index #info .wrap dl dt span { display: inline-block; font-size: 1.0rem; }
#index #info .wrap dl dt span.date { color: #6F655C; margin: 0 0.5rem 0 0; }
#index #info .wrap dl dt span.new { color: red; }
#index #info .wrap dl dt.news_title:before { content: "▲ "; display: inline-block; }
#index #info .wrap dl dt.active:before { -webkit-transform: rotate(180deg); transform: rotate(180deg); }
#index #info .wrap dl dd { margin: 0.5em 0 0 0; padding-bottom: 0.5rem; font-size: 1.4rem; }
#index #info .wrap dl dd p a { text-decoration: underline !important; color: #0000ff; }
#index #info .wrap dl dd p:last-of-type { padding-bottom: 0; }
#index #info .wrap dl dd p:last-of-type p:last-of-type { margin: 0; }
@media (min-width: 48em) { #index #info .wrap h3 { font-size: 2.3rem; }
  #index #info .wrap .info_box { width: 100%; margin: auto; }
  #index #info .wrap dl { margin: 0.5rem 0 0 0; padding: 0 1.5rem; }
  #index #info .wrap dl dt { font-size: 2rem; }
  #index #info .wrap dl dt span { font-size: 1.6rem; }
  #index #info .wrap dl dd { font-size: 2rem; margin: 0.8em 0 0 0; } }
@media (max-width: 48em) { #index #info { margin-top: 2rem; }
  #index #info .wrap h3 { font-size: 1.6rem; }
  #index #info .wrap dl { margin: 0.5rem 0 0 0; }
  #index #info .wrap dl dt { font-size: 1.3rem; }
  #index #info .wrap dl dt span { font-size: 1.2rem; }
  #index #info .wrap dl dd { font-size: 1.3rem; margin: 0.8em 0 0 0; } }
#index #greeting { background: url("../images/kv_2.jpg") no-repeat left bottom; background-size: cover; padding: 0; position: relative; padding: 6rem 0; }
#index #greeting .wrap { 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; -ms-flex-wrap: wrap; flex-wrap: wrap; }
#index #greeting .wrap .txt { background-color: rgba(255, 255, 255, 0.8); text-align: center; position: relative; z-index: 1; width: 90%; -webkit-box-ordinal-group: 3; -ms-flex-order: 2; order: 2; }
#index #greeting .wrap .txt .pic { width: 90%; -webkit-box-ordinal-group: 2; -ms-flex-order: 1; order: 1; height: 0; padding-top: 76%; }
#index #greeting .wrap .txt p { text-align: center; }
#index #greeting .wrap .txt h3 { font-size: 1.8rem; }
#index #greeting .wrap .txt h3 .english { display: block; font-size: 1.3rem; }
#index #greeting .wrap .pic { background: url("../images/doctor.jpg") no-repeat center center; background-size: cover; position: relative; }
@media (min-width: 48em) { #index .wrap { padding: 2rem 0; }
  #index .wrap .txt { padding: 2.3rem; width: 60%; }
  #index .wrap .txt h3 { text-align: center; padding: 0 0 1.5rem 0; font-size: 2.3rem; }
  #index .wrap .txt h3 .english { display: block; font-size: 1.5rem; }
  #index .wrap .txt p { font-size: 1.6rem; line-height: 1.5; text-align: left; }
  #index .wrap .txt p .sign { display: block; font-size: 2rem; margin-bottom: 0; font-weight: bold; text-align: center; }
  #index .wrap .txt p.link_btn { text-align: center; }
  #index .wrap .pic { width: 39.55%; } }

#index { /* 当院の特徴-------------------------------------- */ }
@media (min-width: 48em) { #index .tit_02.top_features_h2 { margin-top: 0rem; } }
#index #top_features { margin: 5px 0 0 0; background-image: url("../images/clinic_bk_img.jpg"); background-repeat: no-repeat; background-size: cover; background-position: left bottom; position: relative; padding: 3rem 1rem !important; }
#index #top_features .wrap { 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; -ms-flex-wrap: wrap; flex-wrap: wrap; }
#index #top_features .wrap div { padding: 0.5rem; text-align: center; border: 2px solid #834b18; background-color: rgba(255, 255, 255, 0.8); margin: 1rem 0 1rem auto; position: relative; z-index: 1; }
#index #top_features .wrap div p { margin: 0.5rem; }
@media (min-width: 48em) { #index #top_features { background-position: 50% center; }
  #index #top_features .wrap { width: 1000px !important; display: -webkit-box; display: -ms-flexbox; display: flex; padding: 6rem 0; }
  #index #top_features .wrap div { width: 45%; margin: 2rem 2rem; } }
@media screen and (min-width: 768px) and (max-width: 1100px) { #index #top_features .wrap { padding: 4rem 0; }
  #index #top_features .wrap div { width: 45%; margin: 2rem 1rem; } }
#index .features_text { margin: 3rem 1rem 0 1rem; }
@media (min-width: 48em) { #index .features_text { width: 1040px; margin: 4rem auto 6rem auto; } }
@media screen and (min-width: 768px) and (max-width: 1100px) { #index .features_text p { padding: 0 1rem; } }
#index .clinic_text .wrap .dl_box { padding: 1rem; }
#index .clinic_text .wrap .dl_box .timetable p:nth-of-type(1) { margin: 0; font-weight: bold; color: #008a43; }
#index .clinic_text .wrap .dl_box .timetable dl.list { 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; -ms-flex-wrap: wrap; flex-wrap: wrap; width: 100%; }
#index .clinic_text .wrap .dl_box .timetable dl.list dt { width: 28%; margin: 0 0 0.5rem; font-weight: bold; color: #22a168; }
@media (min-width: 48em) { #index .clinic_text .wrap .dl_box .timetable dl.list dt { width: 21%; } }
#index .clinic_text .wrap .dl_box .timetable dl.list dt::before { content: url("../images/logo_1.png"); display: inline-block; vertical-align: middle; margin-right: 0.5rem; }
#index .clinic_text .wrap .dl_box .timetable dl.list dd { width: 70%; margin: 0 0 1rem; }
@media (min-width: 48em) { #index .clinic_text .wrap .dl_box .timetable dl.list dd { width: 78%; } }
#index .clinic_text .wrap .dl_box .timetable dl.list dd::before { content: none; }
#index .clinic_text .wrap .dl_box .timetable .tbl-time_1 { width: 100%; border-collapse: collapse; }
#index .clinic_text .wrap .dl_box .timetable .tbl-time_1 tbody tr th { text-align: left; padding: 0.5rem 0; }
#index .clinic_text .wrap .dl_box .timetable .tbl-time_1 tbody tr td { padding: 0; }
#index .clinic_text .wrap .dl_box .timetable .tbl-time_1 tbody tr:nth-child(2) { border-bottom: 1px solid #22a168; }
#index .clinic_text .wrap .dl_box .timetable .tbl-time_1 tbody tr .t_point { color: red; }
@media (min-width: 48em) { #index .clinic_text .wrap .dl_box { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-pack: distribute; justify-content: space-around; -webkit-box-align: start; -ms-flex-align: start; align-items: flex-start; padding: 2rem; }
  #index .clinic_text .wrap .dl_box .timetable, #index .clinic_text .wrap .dl_box dl { width: 45%; } }
#index .gallery_box { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-pack: distribute; justify-content: space-around; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -ms-flex-wrap: wrap; flex-wrap: wrap; }
#index .gallery_box div { width: 48%; margin: 0 0 1rem 0; }
#index .gallery_box div span { display: block; background-color: #22a168; width: 100%; color: #fff; text-align: center; font-size: 1.2rem; }
@media (min-width: 48em) { #index .gallery_box { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-pack: distribute; justify-content: space-around; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  #index .gallery_box div { width: 24%; margin: 0 0 1.5rem 0; }
  #index .gallery_box div span { font-size: 1.6rem; } }

/* ----------------------------------------------------------------------------------
下層　_lower.scss
---------------------------------------------------------------------------------- */
body:not(#index) { /* キービジュアル -------------------------------------- */ }
body:not(#index) .mask::before { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(255, 255, 255, 0.3); z-index: 0; }
body:not(#index) .tit_02 { margin-top: 0; }
body:not(#index) .tit_01 h2 { margin: 0 0 0.5rem; }
body:not(#index) #keyvisual { padding: 2.5rem 1rem; margin-top: 20vw; background: #f7fce6 url(../images/index_keyvisual_bg01.jpg) no-repeat center top; background-size: cover; }
body:not(#index) #keyvisual .wrap h2 { color: #666; font-size: 2rem; text-align: center; text-shadow: #fff 1px 1px 2px, #fff -1px 1px 2px, #fff 1px -1px 2px, #fff -1px -1px 2px; }
@media (min-width: 48em) { body:not(#index) #keyvisual { background-size: 100% auto; background-size: auto; padding: 7rem 0; margin: 0; }
  body:not(#index) #keyvisual .wrap { width: 940px; }
  body:not(#index) #keyvisual .wrap h2 { font-size: 4rem; } }
body:not(#index) .main { margin: 0 auto; }
@media (max-width: 48em) { body:not(#index) .main { width: 100%; padding-top: 0rem; } }
body:not(#index) .main section:not(#overview) { padding: 0 0.5rem 0; }
@media (min-width: 48em) { body:not(#index) .main section:not(#overview) { padding: 0; } }
body:not(#index) .main h2 { display: block; text-align: center; font-size: 3rem; font-weight: bold; }
@media (max-width: 48em) { body:not(#index) .main h2 { font-size: 1.9rem; } }
body:not(#index) .main .point { color: red; font-weight: bold; }
body:not(#index) .main .point_1 { color: #008a43; font-weight: bold; }

/* ----------------------------------------------------------------------------------
ご挨拶　greet.html
---------------------------------------------------------------------------------- */
#doctor .main p { line-height: 1.6; }
#doctor .main p.fl_r { margin: 0 1.5rem; }
#doctor .main p .sign { display: block; font-size: 2rem; margin-bottom: 0; font-weight: bold; text-align: right; }
@media (max-width: 48em) { #doctor .main p .sign { font-size: 1.5rem; } }
#doctor .main .staff_img { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-pack: distribute; justify-content: space-around; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -ms-flex-wrap: wrap; flex-wrap: wrap; margin: 4rem 0; }
#doctor .main .staff_img img { width: 25%; }
@media (max-width: 48em) { #doctor #greet .main .greet_txt .greet_txt_l { width: 90%; }
  #doctor #greet .main .greet_txt .greet_txt_r { width: 90%; }
  #doctor #greet .main .staff_img img { width: 35%; } }

/* ----------------------------------------------------------------------------------
クリニック紹介　clinic.html
---------------------------------------------------------------------------------- */
#clinic { /* 当院の特徴-------------------------------------- */ }
#clinic #features { margin: 5px 0 0 0; background-image: url("../images/clinic_bk_img.jpg"); background-repeat: no-repeat; background-size: cover; background-position: left bottom; position: relative; padding: 3rem 1rem !important; }
#clinic #features .wrap { 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; -ms-flex-wrap: wrap; flex-wrap: wrap; }
#clinic #features .wrap div { padding: 0.5rem; text-align: center; border: 2px solid #834b18; background-color: rgba(255, 255, 255, 0.8); margin: 1rem 0 1rem auto; position: relative; z-index: 1; }
#clinic #features .wrap div p { margin: 0.5rem; }
@media (min-width: 48em) { #clinic #features { background-position: 50% center; }
  #clinic #features .wrap { width: 1000px !important; 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; -ms-flex-wrap: wrap; flex-wrap: wrap; padding: 6rem 0; }
  #clinic #features .wrap div { width: 45%; margin: 2rem 2rem; } }
@media screen and (min-width: 768px) and (max-width: 1100px) { #clinic #features .wrap { padding: 4rem 0; }
  #clinic #features .wrap div { width: 45%; margin: 2rem 1rem; } }
#clinic .features_text { margin: 3rem 0 0 0; }
#clinic .clinic_text .wrap .dl_box { padding: 1rem; }
#clinic .clinic_text .wrap .dl_box .timetable p:nth-of-type(1) { margin: 0; font-weight: bold; color: #008a43; }
#clinic .clinic_text .wrap .dl_box .timetable dl.list { 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; -ms-flex-wrap: wrap; flex-wrap: wrap; width: 100%; }
#clinic .clinic_text .wrap .dl_box .timetable dl.list dt { width: 28%; margin: 0 0 0.5rem; font-weight: bold; color: #22a168; }
@media (min-width: 48em) { #clinic .clinic_text .wrap .dl_box .timetable dl.list dt { width: 21%; } }
#clinic .clinic_text .wrap .dl_box .timetable dl.list dt::before { content: url("../images/logo_1.png"); display: inline-block; vertical-align: middle; margin-right: 0.5rem; }
#clinic .clinic_text .wrap .dl_box .timetable dl.list dd { width: 70%; margin: 0 0 1rem; }
@media (min-width: 48em) { #clinic .clinic_text .wrap .dl_box .timetable dl.list dd { width: 78%; } }
#clinic .clinic_text .wrap .dl_box .timetable dl.list dd::before { content: none; }
#clinic .clinic_text .wrap .dl_box .timetable .tbl-time_1 { width: 100%; border-collapse: collapse; }
#clinic .clinic_text .wrap .dl_box .timetable .tbl-time_1 tbody tr th { text-align: left; padding: 0.5rem 0; }
#clinic .clinic_text .wrap .dl_box .timetable .tbl-time_1 tbody tr td { padding: 0; }
#clinic .clinic_text .wrap .dl_box .timetable .tbl-time_1 tbody tr:nth-child(2) { border-bottom: 1px solid #22a168; }
#clinic .clinic_text .wrap .dl_box .timetable .tbl-time_1 tbody tr .t_point { color: red; }
@media (min-width: 48em) { #clinic .clinic_text .wrap .dl_box { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-pack: distribute; justify-content: space-around; -webkit-box-align: start; -ms-flex-align: start; align-items: flex-start; padding: 2rem; }
  #clinic .clinic_text .wrap .dl_box .timetable, #clinic .clinic_text .wrap .dl_box dl { width: 45%; } }
#clinic .gallery_box { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-pack: distribute; justify-content: space-around; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -ms-flex-wrap: wrap; flex-wrap: wrap; }
#clinic .gallery_box div { width: 48%; margin: 0 0 1rem 0; }
#clinic .gallery_box div span { display: block; background-color: #22a168; width: 100%; color: #fff; text-align: center; font-size: 1.2rem; }
@media (min-width: 48em) { #clinic .gallery_box { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-pack: distribute; justify-content: space-around; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  #clinic .gallery_box div { width: 24%; margin: 0 0 1.5rem 0; }
  #clinic .gallery_box div span { font-size: 1.6rem; } }

/*-----------------------------------------------------------------------------------  診療案内 ----------------------------------------------------------------------------------*/
#treatment #treatment_inner { background-image: url("../images/treatment_bk_img.jpg"); background-repeat: no-repeat; background-size: cover; background-position: 11% center; position: relative; padding: 1rem 0 4rem !important; }
#treatment #treatment_inner .wrap { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: stretch; -ms-flex-align: stretch; align-items: stretch; -ms-flex-wrap: wrap; flex-wrap: wrap; }
#treatment #treatment_inner .wrap div { width: 90%; 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: start; -ms-flex-pack: start; justify-content: flex-start; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -ms-flex-wrap: wrap; flex-wrap: wrap; background-color: rgba(255, 255, 255, 0.8); padding: 1rem; border: 2px solid #005d52; position: relative; z-index: 1; margin: 1rem 0; }
#treatment #treatment_inner .wrap div h3 { margin: 0 auto 1rem auto; text-align: center; position: relative; width: 100%; }
#treatment #treatment_inner .wrap div h3::before { content: ""; display: block; position: absolute; top: 100%; left: 24%; width: 50%; height: 2px; background-color: #005d52; }
#treatment #treatment_inner .wrap div h3 span { display: block; margin: 0.2rem 0; }
#treatment #treatment_inner .wrap div h3 .box_title { font-size: 1.8rem; }
#treatment #treatment_inner .wrap div h3 .box_title.t_sm { font-size: 1.6rem; }
#treatment #treatment_inner .wrap div h3 span:nth-child(2) { font-size: 1.4rem; }
#treatment #treatment_inner .wrap div p:nth-of-type(1) { width: 100%; text-align: left; }
#treatment #treatment_inner .wrap div p:nth-of-type(2) a { text-decoration: none; font-weight: bold; font-size: 1.4rem; }
#treatment #treatment_inner .wrap div p:nth-of-type(2) a::before { content: "\e801"; font-family: "fontello"; color: #000; display: inline-block; margin-right: 0.5rem; }

@media (min-width: 48em) { #treatment #treatment_inner { padding: 2rem 0 8rem !important; }
  #treatment #treatment_inner .wrap { width: 85%; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: stretch; -ms-flex-align: stretch; align-items: stretch; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  #treatment #treatment_inner .wrap div { width: 32%; height: auto; 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: start; -ms-flex-pack: start; justify-content: flex-start; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -ms-flex-wrap: wrap; flex-wrap: wrap; background-color: rgba(255, 255, 255, 0.8); padding: 1.5rem; border: 2px solid #005d52; position: relative; z-index: 1; margin: 1rem 0; }
  #treatment #treatment_inner .wrap div h3 { margin: 0 auto 1rem auto; text-align: center; }
  #treatment #treatment_inner .wrap div h3::before { top: 96%; left: 23%; width: 52%; }
  #treatment #treatment_inner .wrap div h3 span { display: block; }
  #treatment #treatment_inner .wrap div h3 .box_title { font-size: 2.3rem; }
  #treatment #treatment_inner .wrap div h3 .box_title.t_sm { font-size: 2.3rem; }
  #treatment #treatment_inner .wrap div h3 span:nth-child(2) { font-size: 1.4rem; }
  #treatment #treatment_inner .wrap div p:nth-of-type(1) { height: 19rem; }
  #treatment #treatment_inner .wrap div p:nth-of-type(2) a { text-decoration: none; font-weight: bold; font-size: 1.7rem; }
  #treatment #treatment_inner .wrap div p:nth-of-type(2) a::before { content: "\e801"; font-family: "fontello"; color: #000; display: inline-block; margin-right: 0.5rem; } }
@media screen and (min-width: 768px) and (max-width: 1400px) { #treatment #treatment_inner { padding: 1rem 0 5rem !important; }
  #treatment #treatment_inner .wrap { width: 90%; }
  #treatment #treatment_inner .wrap div h3::before { top: 99%; left: 28%; width: 45%; }
  #treatment #treatment_inner .wrap div h3 .box_title { font-size: 1.6rem; }
  #treatment #treatment_inner .wrap div h3 .box_title.t_sm { font-size: 1.6rem; }
  #treatment #treatment_inner .wrap div p:nth-of-type(1) { height: 30rem; }
  #treatment #treatment_inner .wrap div:nth-child(n + 5) p:nth-of-type(1) { height: 20rem; } }
/* ----------------------------------------------------------------------------------
初めての方へ　faq.html
---------------------------------------------------------------------------------- */
/* ----------------------------------------------------------------------------------
診療案内　service.html
---------------------------------------------------------------------------------- */
#vaccination .possible { padding-bottom: 2rem; }
#vaccination .possible dt { color: #009c4d; }
#vaccination .possible dd { border-bottom: 1px solid #ddd; }
@media (max-width: 48em) { #vaccination .possible dt { padding: 0 0 0.6rem; }
  #vaccination .possible dt:not(:first-of-type) { padding: 1rem 0 0.6rem; }
  #vaccination .possible dd { padding: 0 0 1rem; } }
@media (min-width: 48em) { #vaccination .possible { margin: -1rem 0 0 0; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  #vaccination .possible dt { width: 9em; border-bottom: 1px solid #ddd; padding: 1rem 0; }
  #vaccination .possible dd { width: calc(100% - 9em); padding: 1rem 0; } }
#vaccination .symptoms { background-color: #fbe5e1; padding: 1.5rem 1rem; border-radius: 5px; }
#vaccination .symptoms li::before { color: #B2E3c3 !important; }
@media (min-width: 48em) { #vaccination .symptoms { padding: 3rem; overflow: hidden; }
  #vaccination .symptoms li { width: 33%; float: left; } }

/* ----------------------------------------------------------------------------------
アクセス　access.html
---------------------------------------------------------------------------------- */
#access .main .access_list li { padding-bottom: 0.5rem; }
@media (min-width: 48em) { #access .main .access_list li { font-size: 1.8rem; } }
#access .main .access_list.access_list_bg { background-color: #e3d2c4; padding: 0.8rem; margin: 0.5rem; }
@media (min-width: 48em) { #access .main .access_list.access_list_bg { padding: 1rem; margin: 1rem 0; } }
#access .main .gmap.pin_custom { position: relative; z-index: 99; padding-top: 95%; }
@media (min-width: 48em) { #access .main .gmap.pin_custom { padding-top: 58%; } }
#access .main .gmap.pin_custom iframe { margin-top: 0px; }
@media (min-width: 48em) { #access .main .gmap.pin_custom iframe { margin-top: -150px; } }
#access .main .link_btn.btn_custom { position: relative; z-index: 999; }
@media (min-width: 48em) { #access .main .link_btn.btn_custom { margin-top: -130px; } }

/* ----------------------------------------------------------------------------------
内視鏡検査 endoscope.html
---------------------------------------------------------------------------------- */
#endoscope .main .wrap .tel_box { background-color: #e3d2c4; padding: 0.8rem; margin: 0.5rem; }
@media (min-width: 48em) { #endoscope .main .wrap .tel_box { padding: 2rem; margin: 1rem 0; text-align: center; } }
#endoscope .main .wrap .machine_img div { width: 50%; margin: 0 auto; }

@media (min-width: 48em) { #endoscope .main .wrap .machine_img { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
  #endoscope .main .wrap .machine_img p { width: 65%; }
  #endoscope .main .wrap .machine_img div { width: 35%; }
  #endoscope .main .wrap .machine_img div img { width: 65%; } }
/* ----------------------------------------------------------------------------------
その他の治療 other.html
---------------------------------------------------------------------------------- */
/* ----------------------------------------------------------------------------------
·運動教室exerciseclassroom.html
---------------------------------------------------------------------------------- */
#exerciseclassroom .table_1 td.month { font-weight: bold; background-color: rgba(128, 128, 128, 0.2); }
#exerciseclassroom .table_1 td > span { color: red; }

@media (min-width: 48em) { .table_1 td.month { width: 30%; text-align: center; } }
/* ----------------------------------------------------------------------------------
各種検査 check.html
---------------------------------------------------------------------------------- */
#check #machine_list { width: 95%; }
#check #machine_list .eq_list { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -ms-flex-pack: distribute; justify-content: space-around; margin-bottom: 1.5rem; }
#check #machine_list .eq_list dl { width: 24%; margin: 0 auto 1.5rem; border: 1px solid #008a43; }
#check #machine_list .eq_list dl dt { background: #008a43; text-align: center; color: #fff; font-size: 1.7rem; }
#check #machine_list .eq_list dl dd { padding: 0.5rem; font-size: 1.4rem; }
#check #machine_list .eq_list dl dd.ph { text-align: center; padding: 0.5rem; height: 23rem; }
#check #machine_list .eq_list dl dd.ph img { display: block; max-width: 100%; height: 100%; text-align: center; margin: 0 auto; }
@media (max-width: 48em) { #check #machine_list .eq_list dl { width: 100%; } }

/* ----------------------------------------------------------------------------------
診療案内 - 下層
---------------------------------------------------------------------------------- */
/* 共通 -------------------------------------- */
body:not(#index) .service-tit { margin: 0 auto 2rem; width: 265px; height: 222px; position: relative; background-position: center top; background-repeat: no-repeat; background-size: 265px 222px; }
body:not(#index) .service-tit h3 { position: absolute; bottom: 1rem; left: 0; width: 100%; text-align: center; color: #009c4d; font-size: 1.8rem; font-weight: bold; text-shadow: #fff 2px 0px, #fff -2px 0px, #fff 0px -2px, #fff 0px 2px, #fff 2px 2px, #fff -2px 2px, #fff 2px -2px, #fff -2px -2px, #fff 1px 2px, #fff -1px 2px, #fff 1px -2px, #fff -1px -2px, #fff 2px 1px, #fff -2px 1px, #fff 2px -1px, #fff -2px -1px; }
body:not(#index) .service-sub { margin: 2rem 0 0 0; }
@media (min-width: 48em) { body:not(#index) .service-wrap { 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; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  body:not(#index) .service-tit { margin: 0; }
  body:not(#index) .service-tit h3 { bottom: 1.4rem; font-size: 2.2rem; }
  body:not(#index) .service-lead { width: calc(100% - 300px); font-size: 1.8rem; }
  body:not(#index) .service-sub { margin: 5rem 0 0 0; width: 100%; } }
body:not(#index) .tbl-time { width: 100%; border-collapse: separate; border-spacing: 0; }
body:not(#index) .tbl-time caption { margin: 1.2rem 0 0 0; caption-side: bottom; text-align: left; vertical-align: top; line-height: 1; }
body:not(#index) .tbl-time caption img { width: auto; height: 1em; vertical-align: middle; padding: 0 0.5rem 0 0; }
body:not(#index) .tbl-time tr th, body:not(#index) .tbl-time tr td { font-size: 1.3rem; font-weight: bold; text-align: center; vertical-align: middle; padding: 0.4rem; }
@media (min-width: 48em) { body:not(#index) .tbl-time tr th, body:not(#index) .tbl-time tr td { font-size: 1.6rem; padding: 1rem 0.4rem; } }
body:not(#index) .tbl-time .ampm { color: #4db5e8; }
body:not(#index) .tbl-time .fas { color: #e97874; padding: 0 0.3rem 0 0.5rem; }
body:not(#index) .tbl-time .time { color: #6F655C; }
body:not(#index) .tbl-time thead tr th { border-right: none; color: #fff; }
body:not(#index) .tbl-time tbody tr td { line-height: 1.4; }
body:not(#index) .tbl-time tbody tr td img { vertical-align: middle; line-height: 1; }
@media (min-width: 48em) { body:not(#index) .tbl-time { margin: 0 auto; width: 100%; }
  body:not(#index) .tbl-time tbody tr th { background-color: #fbe5e1; font-size: 1.8rem; }
  body:not(#index) .tbl-time tbody tr td { font-size: 1.7rem; line-height: 1.4; font-weight: inherit; } }
@media (max-width: 48em) { body:not(#index) .tbl-time tbody tr th { display: block; width: 100%; background: #fbe5e1; }
  body:not(#index) .tbl-time tbody tr td { display: block; width: 100%; font-weight: inherit; } }
body:not(#index) #overview h2 { background: url("../images/top_title_bg.png") repeat-x center center; background-size: cover; padding-top: 6.5rem; }
@media (max-width: 48em) { body:not(#index) #overview h2 { background: url("../images/top_title_bg.png") repeat-x center center; background-size: cover; padding: 3rem 0; } }

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