@charset "UTF-8";
/* ----------------------------------------------------------------------------------
リセット　_reset.scss
---------------------------------------------------------------------------------- */
html { box-sizing: border-box; }

*, *::before, *::after { 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; }

.txt_red { color: #ec1919; }

/* img -------------------------------------- */
.img_c { display: block; max-width: 100%; height: auto; margin: 1.0rem auto; }

.img_l, .img_r { display: block; max-width: 70%; height: auto; margin: 1.0rem auto; }

@media all 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 2.0rem; } }
/* PC・SP　表示・非表示 -------------------------------------- */
.sp_n { display: none; }

@media all and (min-width: 48em), print { .sp_n { display: block; }
  .pc_n { display: none; } }
/* マージン・パディング回り -------------------------------------- */
.mt40 { margin-top: 4.0rem; }

.mt30 { margin-top: 3.0rem; }

.mt20 { margin-top: 2.0rem; }

.mt10 { margin-top: 1.0rem; }

.main > section ~ section, .flex2 > section ~ section { margin-top: 4.0rem; }

.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; }

@media all and (min-width: 48em), print { .mt40 { margin-top: 8.0rem; }
  .mt30 { margin-top: 6.0rem; }
  .mt20 { margin-top: 4.0rem; }
  .mt10 { margin-top: 2.0rem; }
  .main > section ~ section, .flex2 > section ~ section { margin-top: 8.0rem; }
  .main > section section ~ section, .flex2 > section section ~ section { margin-top: 6.0rem; }
  .main > section > section section ~ section, .flex2 > section > section section ~ section { margin-top: 4.0rem; }
  .main > section > section > section section ~ section, .flex2 > section > section > section section ~ section { margin-top: 2.0rem; } }
/* タイムテーブル -------------------------------------- */
.tbl_time { width: 100%; border-collapse: collapse; border-spacing: 0; font-size: 1.4rem; table-layout: fixed; }
.tbl_time caption { font-size: 85%; caption-side: bottom; text-align: left; margin-top: .4rem; }
.tbl_time tr th { padding: .4rem 0; background: #434fac; font-size: 1.2rem; color: #fff; font-weight: normal; }
.tbl_time tr th:first-child { width: 33%; }
.tbl_time tr td { text-align: center; padding: .6rem .4rem; border-bottom: 1px solid #434fac; line-height: 1.0; }
.tbl_time tr td.time { color: #222; }

@media all and (min-width: 48em), print { .tbl_time { font-size: 1.6rem; }
  .tbl_time tr th { padding: 1.0rem 0; font-size: 1.6rem; }
  .tbl_time tr td { padding: 1.4rem 0; } }
/* グーグルマップ -------------------------------------- */
.gmap { width: 100%; }
.gmap iframe { width: 100%; height: 100%; border: none; }

/* タイトル回り -------------------------------------- */
.tit_01 { background: url(../img/tit_01.jpg) no-repeat center top -2rem/100% auto; font-weight: normal; color: #FFF; text-align: center; font-size: 2.4rem; padding: 3.0rem 0; margin: 1.0rem -1.0rem 3.0rem; }

.tit_02 { color: #204982; text-align: center; font-size: 2.2rem; margin: 0 0 1.0rem; font-weight: normal; line-height: 1.2; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; }
.tit_02::before, .tit_02::after { content: ''; background: url("../img/tit_02.svg") no-repeat 0 0/contain; display: block; flex: 0 0 2.4rem; max-height: 100%; margin: 0 .4rem; }
.tit_02::after { transform: scale(-1, -1); }

.tit_03 { color: #29b4e7; text-align: center; font-size: 2.0rem; line-height: 1.2; padding: 0 0 1.6rem; margin: 0 0 1.0rem; background: url("../img/tit_03.svg") no-repeat center bottom/auto 1rem; }

.tit_04 { color: #177fb3; font-size: 1.8rem; line-height: 1.2; padding: 0 0 .4rem; border-bottom: 2px solid #cbe3ef; margin: 0 0 1.0rem; }

.tit_05 { color: #29b4e7; font-size: 1.6rem; line-height: 1.2; margin: 0 0 1.0rem; }

@media all and (min-width: 48em), print { .tit_01 { background: url(../img/tit_01.jpg) no-repeat center top -12rem/auto; font-size: 3.2rem; padding: 9.0rem 4.0rem; margin: 0 0 10.0rem; }
  .tit_02 { font-size: 2.6rem; margin: 0 0 3.0rem; }
  .tit_03 { font-size: 2.4rem; margin: 0 0 3.0rem; padding: 0 0 2.0rem; background: url("../img/tit_03.svg") no-repeat center bottom/auto 1.2rem; }
  .tit_04 { font-size: 2.2rem; margin: 0 0 3.0rem; }
  .tit_05 { font-size: 2.0rem; margin: 0 0 1.0rem; } }
/* リスト回り -------------------------------------- */
.lst_ul01 li { text-indent: -2.0rem; padding-left: 2.2rem; padding-bottom: 1.0rem; line-height: 1.4; }
.lst_ul01 li::before { content: '●'; margin-right: .4rem; color: #29b4e7; }

.lst_ul02 { margin: 0 0 0 2.6rem; }
.lst_ul02 li { list-style: disc; }

.lst_ol01 { margin: 1.0rem 0 1.0rem 2.6rem; }
@media all and (min-width: 48em), print { .lst_ol01 { margin: 1.0rem 0 1.0rem 3.0rem; } }
.lst_ol01 li { list-style: decimal; padding-bottom: 1.0rem; line-height: 1.4; }

.lst_dl01 dt { float: left; width: 5.0rem; font-weight: bold; clear: left; }
.lst_dl01 dd { margin: 0 0 1.0rem; padding-left: 7.0rem; }

@media all and (min-width: 48em), print { .lst_dl01 dt { width: 8.0rem; }
  .lst_dl01 dd { padding-left: 10.0rem; } }
.lst_dl02 dd { margin: 0 0 2.0rem; }

/* フレックス回り -------------------------------------- */
@media all and (min-width: 48em), print { .flex2 { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .flex2 > section, .flex2 > li { width: 48%; margin: 0 !important; } }
/* テキスト回り -------------------------------------- */
.camera { font-size: 85%; margin: .4rem 0 0; }

@media all and (min-width: 48em), print { .camera { margin: 1.0rem 0 0; } }
/* ボックス回り -------------------------------------- */
.box_blue { background: #f2f7ff; padding: 1.0rem; }
@media all and (min-width: 48em), print { .box_blue { padding: 2.0rem; } }

.box_line img { max-width: 100%; height: auto; border: 1px solid #ccc; padding: 1.0rem; }
@media all and (min-width: 48em), print { .box_line img { max-width: 70%; padding: 3.0rem; } }

/* ボタン回り -------------------------------------- */
.btn_detail { display: inline-block; margin-top: 1.0rem; padding: .4rem 2.0rem; border-radius: .5rem; background: #fff; border: 3px double #204982; color: #204982; text-decoration: none !important; }
.btn_detail:hover { background: #204982; color: #fff; border: 3px double #fff; opacity: 1.0; }

/* 背景カラー -------------------------------------- */
.bg_lightblue { margin: 4.0rem auto; padding: 1.5rem 0 .2rem; background: #E0EEF7; }

/* ----------------------------------------------------------------------------------
共通　_common.scss
---------------------------------------------------------------------------------- */
html { font-size: calc( 100vw / 32 ); font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro", "游ゴシック Medium", "Yu Gothic Medium", "メイリオ", Meiryo, sans-serif; }

body { background: #fff; color: #212121; }

a { color: inherit; text-decoration: none; }

.main { font-size: 1.4rem; line-height: 1.6; padding: 0 1.0rem 6.0rem; }
.main a:not([href*="tel"]) { text-decoration: underline; }
.main a[class*="btn_"] { text-decoration: none; }

@media all and (min-width: 48em), print { html { font-size: 62.5%; }
  body { min-width: 1000px; }
  a { transition: .2s; }
  a:hover { opacity: .8; }
  .wrap { width: 960px; margin: auto; }
  .main { font-size: 1.6rem; padding: 0 0 8.0rem; } }
/* アイコンフォント -------------------------------------- */
@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 { margin: 1.0rem; }
.header .wrap .logo { height: 5.0rem; }
.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 .headR { margin: 1.0rem 0 0; font-size: 1.4rem; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: center; align-items: center; }
.header .wrap .headR .acs { width: 50%; text-align: center; color: #204982; border: 1px solid #204982; padding: .4rem; }
.header .wrap .headR ul { width: 46%; text-align: center; }
.header .wrap .headR ul li { width: 100%; }
.header .wrap .headR ul li.add { display: none; }
.header .wrap .headR ul li.telno .tel { display: block; background: #29b4e7; color: #fff; font-size: 1.4rem; text-align: center; padding: .4rem; }
.header .wrap .headR ul li.telno .tel::before { font-family: 'fontello'; content: '\e800'; margin: 0 .6rem 0 0; }
.header .wrap .headR ul li.telno .tel a { display: inline-block; }

@media all and (min-width: 48em), print { .header { margin: 1.0rem 0 0; }
  .header .wrap { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: center; align-items: center; }
  .header .wrap .logo { width: 50%; height: 7.0rem; }
  .header .wrap .headR { width: 46%; }
  .header .wrap .headR .acs { width: 30%; font-size: 1.6rem; padding: .6rem 1.0rem; border: 2px solid #204982; }
  .header .wrap .headR ul { width: 64%; }
  .header .wrap .headR ul li.telno .tel { font-size: 2.4rem; }
  .header .wrap .headR ul li.add { display: block; margin: .4rem 0 0; } }
/* SP ドロップダウンメニュー（Slick Nav） -------------------------------------- */
.slicknav_menu { position: absolute; top: 0; right: 0; font-size: 4.4rem; display: inline-block; background: none; padding: 0; z-index: 10; /* Toggle Btn */ /* 展開部 */ }
.slicknav_menu .slicknav_btn { width: 5.0rem; height: 5.0rem; color: #fff; background: #204982; text-shadow: none; border-radius: 0; text-align: center; line-height: 1.0; margin: 1.0rem 1.0rem 0 0; padding: 0; /* Toggle Open Icon */ }
.slicknav_menu .slicknav_btn::before { display: block; font-family: 'fontello'; content: '\e802'; line-height: .8; }
.slicknav_menu .slicknav_btn::after { display: block; content: 'MENU'; font-size: 1.0rem; }
.slicknav_menu .slicknav_btn.slicknav_open { /* Toggle Close Icon */ }
.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: 94vw; background: rgba(255, 255, 255, 0.9); padding: 1.6rem; position: absolute; top: 6.4rem; right: 1.0rem; margin: auto; border: 1px solid #204982; }
.slicknav_menu .slicknav_nav .gnav { margin: 0; }
.slicknav_menu .slicknav_nav .gnav li { border-bottom: 1px dotted #204982; }
.slicknav_menu .slicknav_nav .gnav li a { display: block; color: #204982; text-align: center; padding: 1.0rem 0; font-size: 1.6rem; }
.slicknav_menu .slicknav_nav .gnav li a:hover { background: none; }
.slicknav_menu .slicknav_nav .gnav li:first-child { border-top: 1px dotted #204982; }
.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 all and (min-width: 48em), print { .slicknav_menu { display: none; }
  #nav { display: block; margin: 2.0rem 0 0; border-top: 2px solid #204982; border-bottom: 2px solid #204982; }
  #nav .gnav { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; }
  #nav .gnav li { color: #204982; }
  #nav .gnav li a { display: inline-block; text-align: center; font-size: 1.6rem; padding: 1.6rem 1.4rem; }
  #nav .gnav li a:hover { color: #29b4e7; }
  #nav .gnav li:not(:last-child)::after { content: '/'; font-size: 2.2rem; }
  /* Gナビ　ハイライト */
  .index #nav .home, .doctor #nav .doctor, .treatment #nav .treatment, .clinic #nav .clinic, .first #nav .first, .access #nav .access { color: #29b4e7; } }
/* クリニック概要 -------------------------------------- */
.overview { padding: 4.0rem 0; font-size: 1.4rem; line-height: 1.6; background: #f2f7ff; }
.overview .overviewL { margin: 0 1.0rem; text-align: center; }
.overview .overviewL .clinic_name { margin: 0 0 2.0rem; }
.overview .overviewL .clinic_name img { display: block; max-width: 90%; height: auto; margin: auto; }
.overview .overviewL ul li.telno { font-size: 120%; margin: 0 0 2.0rem; }
.overview .overviewL ul li.telno .tel::before { content: 'tel. '; }
.overview .overviewL .tbl_time { margin: 1.0rem 0 0; }
.overview .overviewL .camera { text-align: left; }
.overview .overviewR { margin: 2.0rem 0 0; }
.overview .overviewR .gmap { height: 30.0rem; }

@media all and (min-width: 48em), print { .overview { margin: 8.0rem 0; padding: 0; font-size: 1.8rem; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; }
  .overview .overviewL, .overview .overviewR { width: 50%; }
  .overview .overviewL { max-width: 50.0rem; margin: auto; padding: 6.0rem 1.0rem; }
  .overview .overviewL .clinic_name { margin: 0 0 1.0rem; }
  .overview .overviewL .clinic_name img { max-width: 32.0rem; }
  .overview .overviewL .tbl_time { margin: 1.6rem 0 0; }
  .overview .overviewR { margin: 0; }
  .overview .overviewR .gmap { height: 100%; } }
/* フッター -------------------------------------- */
.pageup { display: none; position: fixed; bottom: 0rem; right: 0rem; z-index: 1; cursor: pointer; }
.pageup a { display: block; width: 5.0rem; height: 5.0rem; font-size: 1.2rem; text-align: center; color: #fff; padding: .2rem .4rem; background: #29b4e7; border: 1px solid #fff; box-sizing: border-box; }
.pageup a::before { display: block; content: '▲'; color: #0a8cbc; font-size: 90%; line-height: 1.4; }

@media all and (min-width: 48em), print { .pageup { display: none; }
  .pageup a { width: 6.4rem; height: 6.4rem; font-size: 1.4rem; padding: .4rem; } }
.sp_ftmenu { position: fixed; left: 0; bottom: 0; display: flex; padding: 0; width: 100%; box-sizing: border-box; }
.sp_ftmenu li { width: 50%; background: #29b4e7; border-top: 1px solid #fff; border-bottom: 1px solid #fff; border-left: 1px solid #fff; box-sizing: border-box; }
.sp_ftmenu li:last-of-type { background: #d37777; }
.sp_ftmenu li a { padding: 0.5rem; display: block; text-align: center; font-size: 1rem; line-height: 1.4; color: #fff; }
.sp_ftmenu li a span { font-size: 1.4rem; }
.sp_ftmenu li a span::before { font-family: 'fontello'; margin: 0 .4rem 0 0; }
.sp_ftmenu li a span.icon_tel::before { content: '\e800'; }
.sp_ftmenu li a span.icon_reserve::before { content: '\e808'; }
@media all and (min-width: 48em), print { .sp_ftmenu { display: none; } }

.footer { text-align: center; }
.footer .copy { display: block; padding: .6rem 1.0rem 5.6rem; font-size: 1.2rem; }
.footer ul { display: none; }

@media all and (min-width: 48em), print { .footer { padding: 2.0rem 0; }
  .footer .copy { margin: 2.0rem 0 0; }
  .footer ul { display: block; text-align: center; margin: 1.0rem 0; }
  .footer ul li { display: inline-block; font-size: 1.4rem; }
  .footer ul li:not(:last-child)::after { content: '|'; margin: 0 1.0rem; }
  .footer ul li a { opacity: 1.0; }
  .footer ul li a br { display: none; }
  .footer ul li a:hover { text-decoration: underline; } }
/* ----------------------------------------------------------------------------------
トップ　_top.scss
---------------------------------------------------------------------------------- */
/* キービジュアル -------------------------------------- */
#keyvsl { margin: 0 0 2.0rem; padding: 5.0rem 1.0rem 1.0rem; max-width: 100%; background: url("../img/index_keyvsl01.jpg") no-repeat right top/150% auto; font-size: 1.4rem; }
#keyvsl .wrap .catch { font-size: 1.6rem; color: #204982; text-align: center; text-shadow: #fff 1px 1px 1px, #fff -1px 1px 1px, #fff 1px -1px 1px, #fff -1px -1px 1px; margin: 0; line-height: 1.6; }
#keyvsl .wrap > div { margin: 6.0rem 0 0; }

@media all and (min-width: 48em), print { #keyvsl { padding: 0; height: 50.0rem; margin: 0 auto; background: url("../img/index_keyvsl01.jpg") no-repeat center bottom/auto; position: relative; }
  #keyvsl .wrap { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: center; align-items: center; position: absolute; bottom: 4.0rem; left: 0; right: 0; }
  #keyvsl .wrap .catch { order: 2; text-align: left; font-size: 3.0rem; }
  #keyvsl .wrap > div { order: 1; width: 45%; margin: 0; padding: 2.0rem; background: rgba(255, 255, 255, 0.8); box-shadow: .2rem .2rem .2rem #d2d2d2; -webkit-box-shadow: .2rem .2rem .2rem #d2d2d2; } }
/* bnr -------------------------------------- */
.bnr { margin: 4.0rem 0 0; padding: 1rem; background-color: #53c7f1; border: 4px solid #29B4E7; }
.bnr dl { margin: 0; line-height: 1.4; padding: .6rem; overflow-y: auto; }
.bnr dl dt { margin-bottom: .4rem; color: #fff; font-size: 180%; text-align: center; }
.bnr dl dd { text-align: center; margin: 0; padding: 0; }
.bnr dl dd.telno .tel { display: block; color: #fff; font-size: 1.4rem; text-align: center; }
.bnr dl dd.telno .tel::before { font-family: 'fontello'; content: '\e800'; margin: 0 .6rem 0 0; }
.bnr dl dd.telno .tel a { display: inline-block; }

@media all and (min-width: 48em), print { .bnr { /*margin: 8.0rem auto;*/ margin: 8.0rem auto 0; }
  .bnr dl dt { font-size: 2.8rem; }
  .bnr dl dd.telno .tel { font-size: 2.4rem; } }
/* お知らせ -------------------------------------- */
.info { margin: 4.0rem 0 0; }
.info dl { margin: 0; line-height: 1.4; padding: .6rem; height: 20.0rem; overflow-y: auto; }
.info dl dt { margin-bottom: .4rem; color: #29b4e7; font-size: 120%; }
.info dl dd { margin: 0 0 2.0rem; }

@media all and (min-width: 48em), print { .info { margin: 8.0rem auto; }
  .info dl { padding: 1.4rem; height: 28.0rem; }
  .info dl dt { font-size: 1.8rem; } }
/* バナー -------------------------------------- */
.bnr_top { width: 80%; margin: 4.0rem auto; }
.bnr_top li { margin: 0 0 1.0rem; }
.bnr_top li a img { max-width: 100%; height: auto; }

@media all and (min-width: 48em), print { .bnr_top { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-wrap: wrap; flex-wrap: wrap; width: 100%; margin: 8.0rem auto; }
  .bnr_top li { width: 49%; margin: 0 0 2.0rem; }
  .bnr_top li.wide { width: 100%; } }
/* 診療内容 -------------------------------------- */
.tre { margin: 4.0rem 0 0; }
.tre ul { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
.tre ul li { width: 49.5%; margin: 0 0 .2rem; }
.tre ul li a { display: block; width: 100%; height: 14.8rem; background: rgba(41, 180, 231, 0.75); color: #fff; text-align: center; font-size: 1.8rem; line-height: 1.2; text-decoration: none !important; text-shadow: 0.2rem 0.2rem 0.1rem rgba(102, 102, 102, 0.8); display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
.tre ul li a .sub { display: block; font-size: 80%; text-align: center; }
.tre ul li.internal { background: url("../img/a_index_tre_internal.jpg") no-repeat center center/contain; }
.tre ul li.gastro { background: url("../img/a_index_tre_gastro.jpg") no-repeat center center/contain; }
.tre ul li.endoscopy { background: url("../img/a_index_tre_endoscopy.jpg") no-repeat center center/contain; }
.tre ul li.colonoscopy { background: url("../img/a_index_tre_colonoscopy.jpg") no-repeat center center/contain; }
.tre ul li.intestine { background: url("../img/a_index_tre_intestine.jpg") no-repeat center center/contain; }
.tre ul li.pylori { background: url("../img/a_index_tre_pylori.jpg") no-repeat center center/contain; }
.tre ul li.examination { background: url("../img/a_index_tre_examination.jpg") no-repeat center center/contain; }
.tre ul li.checkup { background: url("../img/a_index_tre_checkup.jpg") no-repeat center center/contain; }

@media all and (min-width: 48em), print { .tre { margin: 8.0rem 0 0; }
  .tre ul li { width: 24.8%; }
  .tre ul li a { height: 23.8rem; font-size: 2.6rem; }
  .tre ul li a:hover { background: rgba(32, 73, 130, 0.75); } }
/* 特長 -------------------------------------- */
.feature ol li { padding: 12.4rem 0 0; color: #fff; margin: 0 0 1.0rem; }
.feature ol li > div { display: block; padding: 1.0rem; }
.feature ol li > div .point { display: block; font-family: 'Niconne', cursive; font-display: fallback; font-size: 1.8rem; }
.feature ol li > div .lst_ul02 { font-size: 85%; }
.feature ol li > div .lst_ul02 li { padding: 0; margin: 0; }
.feature ol li:nth-child(odd) > div { background: #204982; }
.feature ol li:nth-child(even) > div { background: #29b4e7; }
.feature ol li.point01 { background: url("../img/index_feature01.jpg") no-repeat center top/100% auto; }
.feature ol li.point02 { background: url("../img/index_feature02.jpg") no-repeat center top/100% auto; }
.feature ol li.point03 { background: url("../img/index_feature03.png") no-repeat center top/100% auto; }
.feature ol li.point04 { background: url("../img/index_feature04.jpg") no-repeat center top/100% auto; }
.feature ol li.point05 { background: url("../img/index_feature05.jpg") no-repeat center top/100% auto; }

@media all and (min-width: 48em), print { .feature ol > li { margin: 0 0 1.0rem; font-size: 2.0rem; }
  .feature ol > li > div { padding: 4.0rem; }
  .feature ol > li > div .point { font-size: 3.0rem; }
  .feature ol > li:nth-child(odd) { padding: 0 0 0 50%; }
  .feature ol > li:nth-child(even) { padding: 0 50% 0 0; }
  .feature ol > li.point01 { background: url("../img/index_feature01.jpg") no-repeat left center/50% auto; }
  .feature ol > li.point02 { background: url("../img/index_feature02.jpg") no-repeat right center/50% auto; }
  .feature ol > li.point03 { background: url("../img/index_feature03.png") no-repeat left center/50% auto; }
  .feature ol > li.point04 { background: url("../img/index_feature04.jpg") no-repeat right center/50% auto; }
  .feature ol > li.point05 { background: url("../img/index_feature05.jpg") no-repeat left center/auto 100%; } }
/* ブログバナー -------------------------------------- */
.btn_blog { max-width: 100%; height: auto; }
@media all and (min-width: 48em), print { .btn_blog { max-width: 60%; } }

/* ----------------------------------------------------------------------------------
下層　_lower.scss
---------------------------------------------------------------------------------- */
@media all and (min-width: 48em), print { .cf .img_l, .cf .img_r { max-width: 30%; height: auto; } }
/* 医師紹介 */
@media all and (min-width: 48em), print { .doctor .img_r { max-width: 40%; } }
/* クリニック紹介 */
#clinicslide01, #clinicslide02, #access_slide { margin-bottom: 8.0rem; }
#clinicslide01 img, #clinicslide01 p, #clinicslide02 img, #clinicslide02 p, #access_slide img, #access_slide p { display: none; }

.sp-layer.sp-black.sp-padding { text-align: center; font-size: 2.4rem; }

.sp-selected-thumbnail { border: 4px solid #000; }

.sp-arrow::before, .sp-arrow::after { background: #e7e7e7; }

/* 初めての方へ */
.flow dd { margin: 0 0 6.0rem; position: relative; }
@media all 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 #e0ebfb; border-right: 3.0rem solid transparent; border-bottom: 1.0rem solid transparent; border-left: 3.0rem solid transparent; margin: auto; }

/* 診療時間・アクセス */
.access .gmap { height: 30.0rem; margin: 2.0rem 0; }

@media all and (min-width: 48em), print { .access .tbl_time { font-size: 1.8rem; }
  .access .tbl_time caption { font-size: 1.8rem; }
  .access .tbl_time td.time { font-size: 1.8rem; }
  .access .tbl_time td span { font-size: 1.8rem; }
  .access .gmap { height: 50.0rem; } }
/* よくある質問 */
.qa dd { margin: 0 0 2.0rem; }
@media all and (min-width: 48em), print { .qa dd { margin: 0 0 3.0rem; } }
.qa dd .lst_ul01 { margin: 1.0rem 0 0; }

.tbl_price { width: 100%; margin: 1.0rem 0; border-collapse: collapse; table-layout: fixed; }
.tbl_price th { padding: .4rem; border: 1px solid #ccc; background: #f2f7ff; }
.tbl_price td { padding: .4rem; text-align: center; border: 1px solid #ccc; }

@media all and (min-width: 48em), print { .tbl_price th, .tbl_price td { padding: 1.0rem; } }
/* 大腸内視鏡 */
.colonoscopy blockquote { margin: 1.6rem 0; }
.colonoscopy blockquote .daicho_illst li { margin: 0 0 2.0rem; }
.colonoscopy blockquote .daicho_illst li span { display: block; text-align: center; background: #f2f7ff; padding: .4rem; }
.colonoscopy blockquote .daicho_illst li img { display: block; margin: 1.0rem auto; max-width: 80%; height: auto; }
.colonoscopy blockquote cite { font-size: 85%; }
@media all and (min-width: 48em), print { .colonoscopy blockquote .daicho_illst { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .colonoscopy blockquote .daicho_illst li { width: 30%; } }

/*# sourceMappingURL=style.css.map */
