@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; }

.bold { font-weight: bold; }

.red { color: #f00; }

.blue { color: #0061b1; }

.underline { text-decoration: underline 2px #cca11f; }

/* 囲い文字 -------------------------------------- */
.frame_01 { background: #FBF8EF; padding: 1rem; margin-bottom: 2rem; }
@media screen and (min-width: 48em), print { .frame_01 { padding: 2.4rem 2rem 2rem; margin-bottom: 3rem; } }

.frame_02 { background: #EFF3F6; padding: 1rem; margin-bottom: 2rem; }
@media screen and (min-width: 48em), print { .frame_02 { padding: 2.4rem 2rem 2rem; margin-bottom: 3rem; } }

/* img -------------------------------------- */
.img_c { display: block; max-width: 100%; height: auto; margin: 1.0rem auto; }

.img_l, .img_r { display: block; max-width: 80%; height: auto; margin: 1.0rem auto; }

@media screen and (min-width: 48em), print { .img_l { float: left; margin: 0 2.0rem 2.0rem 0; }
  .img_r { float: right; margin: 0 0 2.0rem 2.0rem; } }
@media screen and (min-width: 48em), print { .img_flex { width: 80%; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: center; align-items: center; }
  .img_flex > * { width: 49%; } }
/* PC・SP　表示・非表示 -------------------------------------- */
.sp_n { display: none; }

@media screen 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; }

.mr20 { margin-right: 2rem; }

.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 screen 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: separate; border-spacing: 0; font-size: 1.4rem; table-layout: fixed; font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif"; }
.tbl_time caption { font-size: 85%; caption-side: bottom; text-align: left; margin-top: .4rem; }
.tbl_time caption span.kyushin { display: inline-block; background: #5297CF; text-align: center; padding: .2rem .8rem; margin: 0 .2rem 0 0; color: #fff; }
.tbl_time tr th { font-weight: normal; }
.tbl_time tr th[scope="col"] { padding: .4rem 0; background: #CDDEEC; font-size: 1.2rem; font-weight: bold; }
.tbl_time tr th[scope="col"]:first-child { width: 35%; }
.tbl_time tr th.time { background: #fff; border-bottom: 1px solid #E1E1E1; }
.tbl_time tr td { text-align: center; padding: .6rem .4rem; background: #fff; border-bottom: 1px solid #E1E1E1; line-height: 1.0; }
.tbl_time tr:last-child th.time { border-bottom: 2px solid #E1E1E1; }
.tbl_time tr:last-child td { border-bottom: 2px solid #E1E1E1; }
.tbl_time .sun { color: #CCA11F; }
.tbl_time .tue { color: #0061B1; }

@media screen and (min-width: 48em), print { .tbl_time { font-size: 1.6rem; }
  .tbl_time caption { padding: .4rem 0 0; line-height: 1.8; font-size: 1.6rem; }
  .tbl_time caption span.kyushin { display: inline-block; margin: .2rem .5rem .2rem 0; padding: .2rem 1.8rem; }
  .tbl_time tr th[scope="col"] { padding: .6rem 0; font-size: 1.8rem; }
  .tbl_time tr th[scope="col"]:first-child { width: 28%; }
  .tbl_time tr th.time { font-size: 1.8rem; }
  .tbl_time tr td { padding: 1.5rem 0; font-size: 2rem; } }
.tbl_dr_wrap::after { content: "※横スクロールできます"; display: block; padding-top: .5em; font-size: 85%; }
.tbl_dr_wrap .tbl_dr { position: relative; overflow-x: auto; -webkit-overflow-scrolling: touch; }
.tbl_dr_wrap .tbl_dr table { width: 800px; min-width: 100%; border-collapse: separate; border-spacing: 0; font-size: 85%; line-height: 1.0; table-layout: fixed; }
.tbl_dr_wrap .tbl_dr table tr th { padding: .4rem 0; background: #CDDEEC; font-weight: normal; }
.tbl_dr_wrap .tbl_dr table tr td { padding: .6rem .4rem; background: #fff; text-align: left; border-bottom: 1px solid #E1E1E1; }
.tbl_dr_wrap .tbl_dr table tr td:not(:first-of-type) { border-left: 1px solid #E1E1E1; }

@media screen and (min-width: 48em), print { .tbl_dr_wrap::after { display: none; }
  .tbl_dr_wrap .tbl_dr { overflow-x: visible; }
  .tbl_dr_wrap .tbl_dr table { width: 100%; font-size: 1.6rem; line-height: 1.4; }
  .tbl_dr_wrap .tbl_dr table tr th { padding: .6rem; }
  .tbl_dr_wrap .tbl_dr table tr td { padding: 1.6rem .6rem; } }
/* グーグルマップ -------------------------------------- */
.gmap { width: 100%; }
.gmap iframe { width: 100%; height: 100%; border: none; }

/* タイトル回り -------------------------------------- */
.tit_01 { background: url(../img/tit_01.jpg) no-repeat center top/cover; font-size: 2.2rem; text-align: center; padding: 3.0rem 1.0rem; margin: 0 0 3.0rem; font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif"; font-weight: bold; color: #fff; }

.tit_02 { color: #333; font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif"; font-size: 2.0rem; margin: 0 .2rem 4.0rem; padding: 1.0rem 0; line-height: 1.2; font-weight: bold; text-align: center; position: relative; }
.tit_02::after { content: ""; display: block; position: absolute; left: 0; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); background: #E3E0D0; width: 100%; height: 1px; font-weight: normal; }
.tit_02 span { padding: 0 .6rem; display: inline-block; position: relative; z-index: 0; }
.tit_02 span.eng_txt { font-family: 'Allura', cursive; color: #CCA11F; display: block; font-weight: normal; background: none; position: absolute; left: 0; right: 0; margin: auto; }

body:not(.index) .tit_02 { padding: 0 2rem; margin: 0 0 2rem; }
body:not(.index) .tit_02 span { display: inline-block; background: #fff; padding: .2rem 1rem; }
body:not(.index) .tit_02::after { z-index: -1; }

.tit_03 { color: #fff; background: #0061B1; font-weight: bold; font-size: 1.8rem; line-height: 1.2; margin: 0 0 1.0rem; padding: .4rem 1rem; font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif"; }

.tit_04 { color: #575757; font-size: 1.8rem; font-weight: bold; line-height: 1.2; margin: 0 0 1.0rem; padding: 0 0 .2rem; font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif"; border-bottom: 1px solid #707070; text-indent: -2.0rem; padding-left: 2.2rem; }
.tit_04::before { content: "\e81b"; color: #CCA11F; font-family: "fontello"; margin-right: .4rem; }

.tit_05 { color: #575757; font-size: 1.8rem; font-weight: bold; line-height: 1.2; margin: 0 0 1.0rem; padding-left: .6rem; font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif"; position: relative; }
.tit_05::before { content: ""; margin-right: .4rem; display: inline-block; position: absolute; left: 0; top: 0; height: 100%; width: 2px; background: #1790AC; }

@media screen and (min-width: 48em), print { .tit_01 { background: url(../img/tit_01.jpg) no-repeat center bottom/auto auto; font-size: 3.7rem; height: 27rem; margin: 0; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
  .tit_02 { font-size: 3.2rem; margin: 0 0 2.0rem; }
  .tit_02 span.eng_txt { font-size: 3rem; }
  body:not(.index) .tit_02 { margin: 0 0 2.0rem; }
  body:not(.index) .tit_02 span { font-size: 2.5rem; padding: .4rem 5rem; }
  .tit_03 { font-size: 2rem; margin: 0 0 2.0rem; padding: 1rem 2rem; }
  .tit_04 { font-size: 2rem; margin: 0 0 2.0rem; padding: 0 0 .8rem 2.2rem; }
  .tit_04::before { margin-right: .6rem; }
  .tit_05 { font-size: 2rem; margin: 0 0 2.0rem; padding: .2rem 0 .2rem 1rem; }
  .tit_05::before { width: 3px; } }
/* リスト回り -------------------------------------- */
.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: #0061B1; }
.lst_ul01 li.none::before { content: none; }

.lst_ul02 li { text-indent: -2.0rem; padding-left: 2.2rem; padding-bottom: 1.0rem; line-height: 1.4; }
.lst_ul02 li::before { content: '●'; margin-right: .4rem; color: #0061B1; }
.lst_ul02 li.none::before { content: none; }

@media screen and (min-width: 48em), print { .lst_ul02 { display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-align-items: flex-start; align-items: flex-start; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .lst_ul02 li { width: 49%; text-indent: -2.0rem; padding-left: 2.2rem; padding-bottom: 1.0rem; line-height: 1.4; }
  .lst_ul02 li::before { content: '●'; margin-right: .4rem; color: #0061B1; }
  .lst_ul02 li.none::before { content: none; } }
.lst_ol01 { margin: 1.0rem 0 1.0rem 2.6rem; }
@media screen and (min-width: 48em), print { .lst_ol01 { margin: 1.0rem 0 1.0rem 3.0rem; } }
.lst_ol01 li { line-height: 1.4; counter-increment: number 1; text-indent: -1.0rem; padding: 0 0 1.0rem 0; }
.lst_ol01 li::before { display: inline-block; content: counter(number) "."; margin-right: .8rem; font-family: 'Lato', sans-serif; color: clr_blue; font-weight: bold; }

.lst_dl01 dt { font-weight: bold; }
.lst_dl01 dd { margin: 0 0 .6rem; }

@media screen and (min-width: 48em), print { .lst_dl01 dt { float: left; width: 8%; clear: left; }
  .lst_dl01 dd { margin: 0 0 .6rem; padding-left: 5.0rem; } }
.lst_dl02 dt { padding: .2rem 1rem; margin: 0; background: #f2f2f2; font-size: 110%; font-weight: bold; display: block; }
@media screen and (min-width: 48em), print { .lst_dl02 dt { padding: .6rem 1.2rem; } }
.lst_dl02 dd { margin: .8rem 0 1rem; display: block; }

.lst_flow dt { padding: .2rem 1rem; margin: 0; background: #f2f2f2; font-size: 110%; font-weight: bold; display: block; }
@media screen and (min-width: 48em), print { .lst_flow dt { padding: .6rem 1.2rem; } }
.lst_flow dd { margin: .6rem 0 6rem; display: block; position: relative; }
.lst_flow dd:not(:last-child)::after { display: block; width: 0; height: 0; content: ""; position: absolute; bottom: -5.0rem; left: 0; right: 0; border-top: 2.0rem solid #ccc; border-right: 3.0rem solid transparent; border-bottom: 1.0rem solid transparent; border-left: 3.0rem solid transparent; margin: auto; }

/* フレックス回り -------------------------------------- */
.flex3 { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
.flex3 > li { width: 46%; }

@media screen 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; }
  .flex3 li { width: 31%; } }
/* リンク -------------------------------------- */
.btn_01 { display: block; }
.btn_01 a { background: #0061B1; color: #fff; text-align: left; padding: .2rem 2rem; display: inline-block; text-decoration: none !important; position: relative; font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif"; }
.btn_01 a::after { content: "\e804"; font-family: "fontello"; position: absolute; right: 3%; }
@media screen and (min-width: 48em), print { .btn_01 a { text-align: center; padding: 1.2rem 4rem; }
  .btn_01 a::after { right: 1rem; } }

.lst_link > * { display: inline-block; min-width: 100%; }
@media screen and (min-width: 48em), print { .lst_link > * { min-width: auto; } }
.lst_link > * ~ * { margin: 1.4rem 0 0; }
@media screen and (min-width: 48em), print { .lst_link > * ~ * { margin: 0 0 1rem; } }
.lst_link > * a { display: block; }
@media screen and (min-width: 48em), print { .lst_link > * a { display: inline-block; } }
.lst_link .under { margin: 1.4rem 0 0; }
@media screen and (min-width: 48em), print { .lst_link .under { margin: 0 0 1rem; } }
@media screen and (min-width: 48em), print { .lst_link.center { text-align: center; } }

/* テーブル -------------------------------------- */
.tbl_01 { table-layout: fixed; border-collapse: collapse; }
.tbl_01 tr th { width: 30%; background: #FBF8EF; text-align: center; font-weight: normal; border: 1px solid #BCBCBC; }
.tbl_01 tr td { padding: .8rem; border: 1px solid #BCBCBC; }

@media screen and (min-width: 48em), print { .tbl_01 { width: 100%; }
  .tbl_01 tr th { padding: 1rem 0; font-size: 110%; font-weight: bold; letter-spacing: .1rem; } }
.tbl_02 { table-layout: fixed; border-collapse: collapse; }
.tbl_02 tr th { width: 30%; background: #FBF8EF; text-align: center; font-weight: normal; border: 1px solid #BCBCBC; }
.tbl_02 tr td { padding: .8rem; border: 1px solid #BCBCBC; text-align: center; color: #ad954d; }

@media screen and (min-width: 48em), print { .tbl_02 tr th { padding: 1rem .2rem; font-size: 110%; font-weight: bold; letter-spacing: .1rem; }
  .tbl_02 tr:first-child th { width: 15%; }
  .tbl_02 tr:first-child th:first-child { width: 40%; } }
.tbl_price { table-layout: fixed; border-collapse: collapse; width: 100%; caption-side: bottom; }
.tbl_price caption { text-align: left; padding: .4rem 0 0; }
.tbl_price tr th { width: 60%; background: #FBF8EF; text-align: center; font-weight: normal; border: 1px solid #BCBCBC; }
.tbl_price tr th.tit { background: #ecdfb6; }
.tbl_price tr td { text-align: right; padding: .8rem; border: 1px solid #BCBCBC; }

@media screen and (min-width: 48em), print { .tbl_price tr th { padding: 1rem 0; font-size: 110%; font-weight: bold; letter-spacing: .1rem; } }
.tbl_price02 { table-layout: fixed; border-collapse: collapse; width: 100%; }
.tbl_price02 tr th { width: 40%; background: #FBF8EF; text-align: center; font-weight: normal; border: 1px solid #BCBCBC; }
.tbl_price02 tr th.tit { background: #ecdfb6; }
.tbl_price02 tr td { text-align: right; padding: .8rem; border: 1px solid #BCBCBC; }
.tbl_price02 tr:first-child th { width: 30%; }
.tbl_price02 tr:first-child th:first-child { width: 40%; }

@media screen and (min-width: 48em), print { .tbl_price02 tr th { padding: 1rem 0; font-size: 110%; font-weight: bold; letter-spacing: .1rem; }
  .tbl_price02 tr:first-child th { width: 20%; }
  .tbl_price02 tr:first-child th:first-child { width: 60%; } }
.tbl_price03 { table-layout: fixed; border-collapse: collapse; width: 100%; }
.tbl_price03 tr th { background: #FBF8EF; text-align: center; font-weight: bold; border: 1px solid #BCBCBC; }
.tbl_price03 tr th:first-child { width: 20%; }
.tbl_price03 tr td { text-align: center; border: 1px solid #BCBCBC; }
.tbl_price03 tr td.cat_a { background: #fbe5e5; }

@media screen and (min-width: 48em), print { .tbl_price03 tr th { font-size: 110%; padding: .8rem 0; }
  .tbl_price03 tr td.cat_a { padding: .8rem; background: #fbe5e5; } }
.tbl_access { table-layout: fixed; border-collapse: separate; border-spacing: .2rem; }
.tbl_access tr th { width: 37%; background: #f2f2f2; text-align: center; font-weight: normal; padding: .8rem; }
.tbl_access tr td { padding: .8rem; }

@media screen and (min-width: 48em), print { .tbl_access tr th { width: 30%; } }
/* ----------------------------------------------------------------------------------
共通　_common.scss
---------------------------------------------------------------------------------- */
html { font-size: calc( 100vw / 32 ); font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif"; }

body { background: #fff; color: #333; }

a { color: inherit; text-decoration: none; }

.wrap { padding: 0 1rem 0; }

.main { font-size: 1.4rem; line-height: 1.6; padding: 0 0 0; }
.main a:not([href*="tel"]) { text-decoration: underline; }
.main a[class*="btn_"] { text-decoration: none; }

@media screen and (min-width: 48em), print { html { font-size: 62.5%; }
  body { min-width: 1220px; }
  body > .wrap { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-wrap: nowrap; flex-wrap: nowrap; margin: 10rem auto 0; }
  a { transition: .2s; }
  a:hover { opacity: .8; }
  .wrap { width: 1200px; margin: 0 auto; padding: 0; }
  .main { font-size: 1.6rem; padding: 0 0 0; width: 100%; } }
/* アイコンフォント -------------------------------------- */
@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 { border-top: 4px solid #0061B1; }
.header .wrap { margin: 0; padding: .6rem .2rem; }
.header .wrap .logo { height: 5.0rem; }
.header .wrap .logo a { display: block; width: 100%; height: 100%; background: url(../img/logo.svg) no-repeat left center/contain; text-indent: 100%; white-space: nowrap; overflow: hidden; }
.header .wrap .headR { display: none; padding: 2rem .2rem 0; font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif"; }
.header .wrap .headR .rsv { width: 50%; font-size: 1.4rem; padding: .4rem .4rem; background: #1790AC; color: #fff; text-align: center; position: relative; }
.header .wrap .headR .rsv::after { content: "\e804"; font-family: "fontello"; display: inline-block; position: absolute; right: 2%; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); }
.header .wrap .headR .rsv::before { content: ""; background: url("../img/rsv_parts01.svg") no-repeat center/contain; width: 1.4rem; height: 1.4rem; display: inline-block; position: absolute; left: 3%; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); }
.header .wrap .headR div { width: 48%; text-align: center; }
.header .wrap .headR div .tel { display: inline-block; font-size: 1.8rem; }
.header .wrap .headR div .tel::before { content: "Tel."; margin-right: .2rem; display: inline-block; }
.header .wrap .headR div .tel a { display: inline-block; }

@media screen and (min-width: 48em), print { .header { border-top: 10px solid #0061B1; }
  .header .wrap { margin: 0 auto 0; padding: 5.6rem 0 0; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: flex-start; align-items: flex-start; }
  .header .wrap .logo { width: 40%; height: 10.0rem; }
  .header .wrap .headR { width: 30.5rem; display: block; padding: 0; }
  .header .wrap .headR .rsv { width: 100%; padding: 1.4rem 0; font-size: 1.9rem; display: block; }
  .header .wrap .headR .rsv::before { position: absolute; left: 5%; width: 4rem; height: 3rem; }
  .header .wrap .headR .rsv::after { position: absolute; right: 3%; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); }
  .header .wrap .headR div { width: 100%; background: rgba(255, 255, 255, 0.6); }
  .header .wrap .headR div .tel { width: auto; display: block; background: none; font-size: 3.4rem; font-weight: bold; line-height: 1.6; margin: 0; padding: 0; } }
/* SP ドロップダウンメニュー（Slick Nav） -------------------------------------- */
.slicknav_menu { position: absolute; top: 1.0rem; right: 0; font-size: 4.4rem; display: inline-block; background: none; padding: 0; z-index: 10; }
.slicknav_menu .slicknav_btn { width: 5.0rem; height: 5.0rem; color: #0061B1; background: none; text-shadow: none; border-radius: 0; text-align: center; line-height: 1.0; margin: 0 1.0rem; padding: 0; }
.slicknav_menu .slicknav_btn.slicknav_collapsed::before { display: block; font-family: 'fontello'; content: '\e802'; line-height: .8; }
.slicknav_menu .slicknav_btn.slicknav_collapsed::after { display: block; content: 'MENU'; font-size: 1.0rem; font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif"; }
.slicknav_menu .slicknav_btn.slicknav_open::before { display: block; font-family: 'fontello'; content: '\e803'; line-height: .8; }
.slicknav_menu .slicknav_btn.slicknav_open::after { display: block; content: 'CLOSE'; font-size: 1.0rem; }
.slicknav_menu .slicknav_nav { width: 100vw; background: #f4fbff; position: absolute; top: 6.0rem; right: 0; margin: auto; }
.slicknav_menu .slicknav_nav .gnav { margin: 0; }
.slicknav_menu .slicknav_nav .gnav li { border-bottom: 1px solid #333; padding: 0; }
.slicknav_menu .slicknav_nav .gnav li.treatment { display: none; }
.slicknav_menu .slicknav_nav .gnav li a { display: block; color: #333; padding: 1.4rem 2rem; margin: 0; font-size: 1.6rem; position: relative; }
.slicknav_menu .slicknav_nav .gnav li a:hover { background: none; }
.slicknav_menu .slicknav_nav .gnav li a::after { content: "\e804"; font-family: "fontello"; color: #0061B1; position: absolute; right: 4%; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); }
.slicknav_menu .slicknav_nav .gnav li.slicknav_parent a.slicknav_item { padding: 0; }
.slicknav_menu .slicknav_nav .gnav li.slicknav_parent ul li:last-child { border: none; }
.slicknav_menu .slicknav_nav .gnav li.slicknav_open > a.slicknav_item .sub::after { font-family: 'fontello'; content: '\e804'; }
.slicknav_menu .slicknav_nav .sub_menu p { font-size: 1.8rem; background: #0061B1; padding: .8rem 0; margin: 0; text-align: center; }
.slicknav_menu .slicknav_nav .sub_menu ul { margin: 0; }
.slicknav_menu .slicknav_nav .sub_menu ul li { border-bottom: 1px solid #333; padding: 0; margin: 0; }
.slicknav_menu .slicknav_nav .sub_menu ul li a { display: block; color: #333; padding: 1.4rem 2rem; margin: 0; font-size: 1.6rem; position: relative; }
.slicknav_menu .slicknav_nav .sub_menu ul li a::after { content: "\e804"; font-family: "fontello"; color: #0061B1; position: absolute; right: 4%; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); }
.slicknav_menu .slicknav_nav .sub_menu ul li a .br { display: none; }
.slicknav_menu .slicknav_nav .sub_menu ul li a:hover { background: none; }
.slicknav_menu .slicknav_icon, .slicknav_menu .slicknav_icon-bar, .slicknav_menu .slicknav_arrow, .slicknav_menu .slicknav_row:after { display: none !important; }

#nav { display: none; }

@media screen and (min-width: 48em), print { .slicknav_menu { display: none; }
  #nav { display: block; background: #0061B1; border-bottom: 1rem solid #CCA11F; }
  #nav .gnav { width: 1200px; margin: auto; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; }
  #nav .gnav li { width: auto; }
  #nav .gnav li.treatment { position: relative; }
  #nav .gnav li a { display: block; text-align: center; padding: 2.9rem 4rem; font-size: 1.9rem; color: #fff; }
  #nav .gnav li a:hover { background: #004782; opacity: 1; }
  #nav .gnav li a.sub { position: relative; }
  #nav .gnav li a.sub::after { content: "\e805"; font-family: "fontello"; display: block; position: absolute; right: 0; left: 0; bottom: .5rem; margin: auto; }
  #nav .gnav li .subnav { width: 66rem; display: none; position: absolute; top: 8.9rem; z-index: 20; color: #fff; }
  #nav .gnav li .subnav ul { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  #nav .gnav li .subnav ul li { width: 50%; }
  #nav .gnav li .subnav ul li a { display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-align-items: center; align-items: center; width: 100%; background: #004782; padding: 1.6rem 0 1.6rem 4.4rem; text-align: left; position: relative; }
  #nav .gnav li .subnav ul li a:hover { background: #0061B1; }
  #nav .gnav li .subnav ul li a:hover::after { content: "\e804"; font-family: "fontello"; position: absolute; right: 5%; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); }
  #nav .gnav li .subnav ul li a .br { display: none; }
  #nav .gnav li .subnav ul li a .small { font-size: 1.7rem; }
  #nav .sub_menu { display: none; }
  /* Gナビ　ハイライト */ }
/* クリニック概要 -------------------------------------- */
.overview { padding: 2.0rem 0 0; font-size: 1.4rem; line-height: 1.6; background: #F5F5F5; }
.overview .clinic_name { text-align: center; margin: 0 0 2.0rem; }
.overview .clinic_name img { max-width: 80%; height: auto; }
.overview > .wrap .overviewL .address { color: #0061B1; }
.overview > .wrap .overviewL .tbl_gaiyo { width: 100%; border-collapse: separate; border-spacing: 0 .2rem; }
.overview > .wrap .overviewL .tbl_gaiyo th { width: 27%; background: #5297CF; color: #fff; text-align: center; padding: .4rem; font-weight: normal; }
.overview > .wrap .overviewL .tbl_gaiyo td { padding: .4rem; }
.overview > .wrap .overviewL .tbl_gaiyo td .tel { font-size: 110%; }
.overview > .wrap .overviewL .tbl_time { margin: 1.6rem 0; }
.overview > .wrap .overviewR { margin: 2.0rem 0 2rem; }
.overview .gmap { width: 100%; height: 30rem; }
.overview .gmap iframe { height: 100%; width: 100%; }

@media screen and (min-width: 48em), print { .overview { margin: 0 0 0; padding: 8.0rem 0 0; font-size: 1.8rem; }
  .overview > .wrap { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; padding: 0 5rem; margin: 0 auto 6rem; }
  .overview > .wrap .overviewL { width: 47rem; padding: 0 0; }
  .overview > .wrap .overviewL .clinic_name { margin: 0 auto 1.7rem; text-align: left; }
  .overview > .wrap .overviewL .clinic_name img { max-width: 46.0rem; }
  .overview > .wrap .overviewL .address { margin-bottom: 3rem; }
  .overview > .wrap .overviewL .tbl_gaiyo { border-spacing: 0 1.4rem; }
  .overview > .wrap .overviewL .tbl_gaiyo th { padding: 0rem 0; font-size: 1.5rem; width: 8.5rem; }
  .overview > .wrap .overviewL .tbl_gaiyo td { padding: .4rem 0 .4rem 1rem; font-size: 1.6rem; line-height: 1.2; }
  .overview > .wrap .overviewL .tbl_gaiyo td.tel_item { padding: 0 0 0 1rem; }
  .overview > .wrap .overviewL .tbl_gaiyo td.tel_item .tel { font-size: 2.5rem; line-height: 1; }
  .overview > .wrap .overviewR { width: 56rem; padding: 0 0; margin: 0; }
  .overview .gmap { height: 42rem; }
  .overview .gmap iframe { height: 100%; } }
/* フッター -------------------------------------- */
#pageup { display: none; position: fixed; bottom: 4.6rem; right: 1.0rem; z-index: 1; cursor: pointer; }
#pageup a { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; width: 4.0rem; height: 4.0rem; font-size: 1.6rem; text-align: center; padding: .4rem; background: rgba(42, 121, 185, 0.8); }
#pageup a::before { text-align: center; font-size: 2rem; font-family: 'fontello'; content: '\e812'; color: #fff; }
#pageup a span { display: none; }

@media screen and (min-width: 48em), print { #pageup { bottom: 3.0rem; right: 3.0rem; }
  #pageup a { width: 5rem; height: 5rem; }
  #pageup a::before { font-size: 2rem; padding-bottom: .4rem; } }
.tel_rsv { width: 100%; height: 4rem; color: #fff; /*  visibility: hidden;*/ position: fixed; bottom: 0; left: 0; right: 0; z-index: 1; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; }
.tel_rsv .tel { display: block; width: 60%; background: #0061b1; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; height: 100%; text-align: center; font-size: 1.4rem; }
.tel_rsv .tel::before { content: "tel."; display: inline-block; }
.tel_rsv .rsv { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; height: 100%; width: 40%; text-align: center; font-size: 1.4rem; background: #1790AC; position: relative; }
.tel_rsv .rsv::before { content: ""; background: url(../img/rsv_parts01.svg) no-repeat center/contain; width: 1.4rem; height: 1.4rem; display: inline-block; position: absolute; left: 8%; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); }
.tel_rsv .rsv::after { content: "\e804"; font-family: "fontello"; display: inline-block; position: absolute; right: 6%; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); }

@media screen and (min-width: 48em), print { .tel_rsv { display: none !important; }
  .tel_rsv .tel { display: none; }
  .tel_rsv .rsv { display: none; } }
.footer { text-align: center; padding: 0 0 2.8rem; }
.footer .copy { display: block; background: #0061B1; color: #fff; padding: 2.4rem 1.0rem; font-size: 1.2rem; }
.footer ul { display: none; }

@media screen and (min-width: 48em), print { .footer { padding: 0; }
  .footer ul { display: block; text-align: center; margin: 3.7rem auto 0; }
  .footer ul ~ ul { margin: 1.4rem auto 0; }
  .footer ul li { display: inline-block; font-size: 1.6rem; }
  .footer ul li::after { content: '|'; margin: 0 .6rem; }
  .footer ul li:first-child::before { content: '|'; margin: 0 .6rem; }
  .footer ul li a { opacity: 1.0; }
  .footer ul li a:hover { text-decoration: underline; }
  .footer ul li a .br { display: none; }
  .footer ul li a .small { display: none; }
  .footer ul li.treatment { display: none; }
  .footer .copy { margin: 3.2rem auto 0; padding: 1.8rem; font-size: 1.8rem; } }
/* ----------------------------------------------------------------------------------
トップ　_top.scss
---------------------------------------------------------------------------------- */
.overflow { overflow-x: hidden; }

/* キービジュアル -------------------------------------- */
#keyvsl { margin: 0 0 2rem; height: 38rem; background: url(../img/index_keyvsl01.jpg) no-repeat calc(50% - 1rem) top/cover; }
#keyvsl .txt_area { height: 100%; width: 100%; padding: 0 1rem; position: relative; font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif"; /*        &::after{ content: ""; display: block; background: url("../img/index_keyvsl_parts01.svg")no-repeat center /contain; width: 9rem; height: 8rem; position: absolute; right: 1rem; bottom: 1rem; z-index: 0; }*/ /*        .kaiin_info{ width: 100%; @include flex; @include SetPrefix(justify-content, center); position: absolute; margin:auto; left: 0; right: 0; bottom: -1rem; z-index: 1; .kaiin{ width: 48%; color: #fff; background: rgba(#CCA11F,.4); padding: .4rem; @include flex; @include SetPrefix(justify-content, center); > div{ width: 100%; height: 100%; background: rgba(#CCA11F,.8); text-align: center; font-size: 1.6rem; padding: .3rem; @include flex; @include SetPrefix(justify-content, center); @include SetPrefix(align-items, center); > span{ > span{ font-size: 130%; } } } } .nairan{ background: rgba(#D27671,.9); width: 48%; color: #fff; padding: 1rem; margin: 0 0 0 .4rem; font-size: 1.6rem; > span{ display: block; padding:  0 0 .4rem; margin: 0 0 .2rem; border-bottom: 1px solid #fff; } > div{ > span{ font-size: 130%; } } } }*/ }
#keyvsl .txt_area .lead { padding: 8rem 0 1rem; color: #333; font-size: 1.4rem; font-weight: bold; text-align: center; text-shadow: 0px 0px 2px rgba(255, 255, 255, 0.8), 0px 0px 2px rgba(255, 255, 255, 0.8), 0px 0px 3px rgba(255, 255, 255, 0.8), 0px 0px 3px rgba(255, 255, 255, 0.8), 0px 0px 4px rgba(255, 255, 255, 0.8), 0px 0px 4px rgba(255, 255, 255, 0.8), 0px 0px 4px rgba(255, 255, 255, 0.8), 0px 0px 4px rgba(255, 255, 255, 0.8); }
#keyvsl .txt_area .lead span { font-size: 1.6rem; display: block; }
#keyvsl .txt_area .career { padding: 0 0 2rem; color: #333; font-size: 1rem; font-weight: bold; }
#keyvsl .txt_area .career span { display: block; border-bottom: 1px solid #A99780; padding: 0 0 .2rem; margin: 0 0 .2rem; }

@media screen and (min-width: 48em), print { #keyvsl { margin: 0 0 2rem; height: auto; background: url(../img/index_keyvsl01.jpg) no-repeat center top/auto auto; }
  #keyvsl .txt_area { height: 69rem; width: 1200px; padding: 0; margin: 0 auto; /*        &::after{ width: 60rem; height: 60rem; right: -10rem; bottom: 3rem; }*/ /*        .kaiin_info{ width: 30rem; display: block; left: auto; right: 0; bottom: 7rem; position: absolute; .kaiin{ position: relative; z-index: 0; width: 21rem; height: 21rem; padding: .8rem; margin: 0 0 0 auto; border-radius: 50%; > div{ border-radius: 50%; font-size: 2.3rem; > span{ > span{ font-size: 3.8rem; } } } } .nairan{ position: relative; z-index: 1; width: 30rem; text-align: center; padding: 1rem .8rem; margin: -5.5rem 0 0; > span{ font-size: 2rem; padding: 0 0 1rem; margin: 0 0 .8rem; } > div{ font-size: 2.5rem; > span{ font-size: 3.9rem; } } } }*/ }
  #keyvsl .txt_area .lead { position: absolute; top: 40%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); left: 0; right: 0; margin: auto; padding: 0; font-size: 2.6rem; line-height: 1.8; text-shadow: 0px 0px 2px rgba(255, 255, 255, 0.8), 0px 0px 2px rgba(255, 255, 255, 0.8), 0px 0px 3px rgba(255, 255, 255, 0.8), 0px 0px 3px rgba(255, 255, 255, 0.8), 0px 0px 4px rgba(255, 255, 255, 0.8), 0px 0px 4px rgba(255, 255, 255, 0.8), 0px 0px 4px rgba(255, 255, 255, 0.8), 0px 0px 4px rgba(255, 255, 255, 0.8); }
  #keyvsl .txt_area .lead span { font-size: 3rem; }
  #keyvsl .txt_area .career { width: 43rem; padding: 0; font-size: 1.8rem; position: absolute; bottom: 3rem; left: 0; }
  #keyvsl .txt_area .career span { border-bottom: 2px solid #A99780; padding: 0 0 1rem; margin: 0 0 1rem; font-size: 2rem; }
  #keyvsl .txt_area .career ul li { margin: 0 0 1rem; } }
/* お知らせバナー -------------------------------------- */
.bnr_link { display: block; margin: 0 2rem 2rem; padding: .8rem .2rem; text-align: center; border: 2px solid #c11616; background: #FBF8EF; text-decoration: none !important; position: relative; }
@media screen and (min-width: 48em), print { .bnr_link { width: 80rem; font-size: 2.2rem; padding: 2rem 0; margin: 6rem auto 2rem; letter-spacing: .1rem; border: 3px solid #c11616; } }
.bnr_link::after { content: "\e804"; font-family: "fontello"; color: #c11616; position: absolute; right: .6rem; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); }
@media screen and (min-width: 48em), print { .bnr_link::after { right: 2%; } }
.bnr_link span { display: block; color: #c11616; font-size: 120%; font-weight: bold; }

.bnr_info { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; margin: 0 1rem 2rem; background: #FBF8EF; position: relative; font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif"; text-decoration: none !important; cursor: pointer; }
.bnr_info div:not(.img) { width: 67%; height: 100%; margin: 0 0 0 auto; padding: .8rem .6rem; /*        .time{ margin: .4rem 0 0; font-size: 1.2rem; text-align: center; span{ font-size: 1.4rem; background: #0061B1; color: #fff; display: block; } }*/ }
.bnr_info div:not(.img) .tit { text-align: center; font-weight: bold; margin: 0; color: #0061B1; line-height: 1.4; }
.bnr_info div:not(.img) .tit span { font-size: 130%; }
.bnr_info div:not(.img) .ex { margin: 1rem 0 0; font-size: 1.2rem; text-align: center; line-height: 1; color: #fff; }
.bnr_info div:not(.img) .ex span { display: inline-block; background: #0061B1; padding: .3rem 2rem; position: relative; }
.bnr_info div:not(.img) .ex span::after { content: "\e804"; font-family: "fontello"; position: absolute; right: .6rem; }
.bnr_info div.img { width: 33%; height: 100%; background: url("../img/index_bnr_info01.jpg") no-repeat center top/cover; display: block; position: absolute; top: 0; }
.bnr_info.item_02 { position: relative; }
.bnr_info.item_02 div { margin: 0 auto 0 0; }
.bnr_info.item_02 .img { background: url("../img/index_bnr_info02.jpg") no-repeat center top/cover; right: 0; }
.bnr_info.item_03 { position: relative; }
.bnr_info.item_03 div { margin: 0 auto 0 0; }
.bnr_info.item_03 div .tit { color: #CCA11F; }
.bnr_info.item_03 div .ex span { background-color: #CCA11F; }
.bnr_info.item_03 .img { background: url("../img/index_bnr_info04.jpg") no-repeat center top/cover; right: 0; }
.bnr_info.item_04 { position: relative; }
.bnr_info.item_04 div { margin: 0 auto 0 0; }
.bnr_info.item_04 div .tit { color: #1790AC; }
.bnr_info.item_04 div .ex span { background-color: #1790AC; }
.bnr_info.item_04 .img { background: url("../img/index_bnr_info05.jpg") no-repeat center top/cover; right: 0; }
.bnr_info.item_05 { position: relative; }
.bnr_info.item_05 div { margin: 0 auto 0 0; }
.bnr_info.item_05 div .tit { color: #0061B1; }
.bnr_info.item_05 div .ex span { background-color: #0061B1; }
.bnr_info.item_05 .img { background: url("../img/index_bnr_info06.jpg") no-repeat center top/cover; right: 0; }
.bnr_info.item_min { min-height: 130px; display: flex; flex-wrap: wrap; align-items: center; align-content: center; justify-content: center; padding: 1.5rem 0; box-sizing: border-box; }
.bnr_info.item_min span { line-height: 1.1; }
.bnr_info.item_min .ex { margin-top: 0.5rem !important; }
.bnr_info.item_min div { padding: 0 !important; }
.bnr_info.reserve { border: 2px solid #c11616; position: relative; }
.bnr_info.reserve::after { content: "\e804"; font-family: "fontello"; color: #c11616; position: absolute; right: .6rem; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); }
@media screen and (min-width: 48em), print { .bnr_info.reserve::after { right: 2%; } }
.bnr_info.reserve div { margin: 0 0 0 auto; padding: 0 1rem 0 0 !important; }
.bnr_info.reserve div .tit { text-align: center; color: #333; }
.bnr_info.reserve div .tit span { display: inline-block; margin-top: 0.4rem; line-height: 1.2; color: #c11616; }
.bnr_info.reserve .img { background: url("../img/index_bnr_info07.jpg") no-repeat center top/cover; left: 0; }

@media screen and (min-width: 48em), print { .bnr_info { width: 800px; margin: 6rem auto 0; }
  .bnr_info ~ .bnr_info { margin: 5rem auto 6rem; }
  .bnr_info div:not(.img) { width: 69%; padding: 2.4rem .6rem 2rem 2.4rem; /*        .time{ @include flex; @include SetPrefix(justify-content, flex-start); font-size: 2.5rem; margin: 0; span{ display: inline-block; font-size: 2rem; margin: 0 1.2rem 0 0; padding: .4rem 1.2rem; line-height: 1.2; position: relative; bottom: 3px; }
}*/ }
  .bnr_info div:not(.img) .tit { font-size: 2.5rem; line-height: 1.6; }
  .bnr_info div:not(.img) .tit span { font-size: 3rem; }
  .bnr_info div:not(.img) .ex { margin-top: .6rem; font-size: 1.5rem; }
  .bnr_info div:not(.img) .ex span { padding: .4rem 6rem; }
  .bnr_info div.img { width: 31%; }
  .bnr_info.item_min { min-height: 170px; }
  .bnr_info.item_min .ex { margin-top: 1.2rem !important; } }
/* 求人用バナー -------------------------------------- */
.recruit_bnr { margin: 2rem auto 2rem; }
.recruit_bnr .wrap li ~ li { margin: 1.4rem 0 0; }
.recruit_bnr .wrap li a { text-decoration: none; display: block; padding: .8rem; text-align: center; background: #FBF8EF; font-weight: bold; font-family: '游ゴシック', YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif"; font-size: 1.8rem; position: relative; }
.recruit_bnr .wrap li a::after { content: "\e804"; font-family: "fontello"; position: absolute; right: 1rem; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); }
.recruit_bnr .wrap li a .deco { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; background: #F67707; color: #fff; font-size: 1.4rem; width: 4rem; height: 4rem; border-radius: 50%; margin-right: .8rem; position: absolute; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); left: 1.4rem; }
.recruit_bnr .wrap li a .size_s { font-size: 80%; line-height: 1; }

@media screen and (min-width: 48em), print { .recruit_bnr { margin: 6rem auto 2rem; }
  .recruit_bnr .wrap { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
  .recruit_bnr .wrap li { width: 32%; margin: 0; }
  .recruit_bnr .wrap li ~ li { margin: 0 0 0 3rem; }
  .recruit_bnr .wrap li a { padding: 1.6rem 1rem 1.6rem 1rem; font-size: 2.2rem; }
  .recruit_bnr .wrap li a::after { right: 1.8rem; }
  .recruit_bnr .wrap li a .deco { width: 5.7rem; height: 5.7rem; font-size: 1.9rem; margin-right: 1rem; } }
/* 求人用バナー(写真あり) -------------------------------------- */
/*.recruit_bnr{ margin: 2rem auto 2rem; .wrap{ li{ ~ li{ margin: 1.4rem 0 0; } a{ display: block; text-decoration: none; figure{ margin: 0; figcaption{ @include flex; @include SetPrefix(justify-content, center); @include SetPrefix(align-items, center); @include SetPrefix(flex-wrap, wrap); padding: .8rem; text-align: center; background: #FBF8EF; font-weight: bold; font-family: '游ゴシック',YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif"; font-size: 1.8rem; position: relative; &::after{ content: "\e804"; font-family: "fontello"; position: absolute; right: 1rem; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); } .deco{ @include flex; @include SetPrefix(justify-content, center); @include SetPrefix(align-items, center); background: #F67707; color: #fff; font-size: 1.4rem; width: 4rem; height: 4rem; border-radius: 50%; margin-right: .8rem; } .size_s{ font-size: 80%; line-height: 1; } } } } } }
}
@include pc {
.recruit_bnr{ margin: 6rem auto 2rem; .wrap{ width: 70rem; @include flex; @include SetPrefix(justify-content, space-between);//ふたつバナーが並ぶ場合 @include SetPrefix(justify-content, center);//バナーがひとつの場合 @include SetPrefix(align-items, center); li{ width: 33rem; ~ li{ margin: 0; } a{ figure{ figcaption{ @include SetPrefix(justify-content, flex-start); padding: 1.6rem 1rem 1.6rem 2.2rem; font-size: 2.2rem; &::after{ right: 1.8rem; } .deco{ width: 5.7rem; height: 5.7rem; font-size: 1.9rem; margin-right: 1rem; } } } } } }
}
}*/
/* 上部・診療時間表 -------------------------------------- */
.time_table { padding: 2rem 0 2rem; }

@media screen and (min-width: 48em), print { .time_table { padding: 8rem 0 2rem; }
  .time_table .wrap { width: 95rem; }
  .time_table .wrap .tbl_time caption { font-size: 2rem; }
  .time_table .wrap .tbl_time caption span.kyushin { line-height: 1.2; }
  .time_table .wrap .tbl_time caption span:not(.kyushin):not(.tue):not(.sun) { margin-left: 5rem; font-size: 1.6rem; }
  .time_table .wrap .tbl_time caption .br { display: none; }
  .time_table .wrap .tbl_time tr th { padding: 1.6rem 0; }
  .time_table .wrap .tbl_time tr th[scope="col"] { font-size: 2.3rem; }
  .time_table .wrap .tbl_time tr th.time { padding: 1.4rem 0; font-size: 2.3rem; border-bottom: 2px solid #E1E1E1; }
  .time_table .wrap .tbl_time tr td { font-size: 2.3rem; border-bottom: 2px solid #E1E1E1; }
  .time_table .wrap .tbl_time tr:last-child th.time { border-bottom: 4px solid #E1E1E1; }
  .time_table .wrap .tbl_time tr:last-child td { border-bottom: 4px solid #E1E1E1; } }
/* お知らせ -------------------------------------- */
.info { margin: 6rem 0 0; padding: 3.0rem 1rem 8rem; position: relative; }
.info::before { content: ""; background: #F5F5F5; position: absolute; top: 0; left: 0; z-index: -2; height: 100%; width: 100%; transform: skewY(-10deg); transform-origin: bottom left; overflow: hidden; }
.info::after { content: ""; background: #D9E6F1; position: absolute; top: 0; left: 0; z-index: -3; height: 100%; width: 100%; transform: skewY(10deg); transform-origin: bottom right; }
.info .wrap { background: url("../img/index_info_bg01.svg") no-repeat center top 3rem/90%, #fff; padding: 2rem 1rem; }
.info .wrap .tit_02 { margin: 0 0 1rem; text-align: left; position: relative; }
.info .wrap .tit_02::after { top: auto; bottom: 2px; background: #D5D5D5; }
.info .wrap .tit_02 .eng_txt { text-align: right; position: absolute; bottom: 6px; display: inline; }
.info .wrap dl { margin: 0; line-height: 1.4; padding: 0; height: 100%; }
.info .wrap dl dt { margin: .6rem 0 .4rem; color: #0061B1; font-size: 110%; cursor: pointer; display: table; }
.info .wrap dl dt:hover { opacity: .8; }
.info .wrap dl dt::before { content: "\e805"; font-family: "fontello"; color: #707070; display: inline-block; margin-right: .6rem; }
.info .wrap dl dt.close::before { content: "\e806"; }
.info .wrap dl dd { padding: .2rem 0 .2rem 1.2rem; margin: 0; font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif"; }
.info .wrap dl dd p { margin: 0; }
.info .wrap dl dd p.link_text { margin: 1rem 0 0; }
.info .wrap dl dd a { color: #003CFF; }
.info .wrap dl .line { border-bottom: 1px solid #D5D5D5; }
.info .wrap dl .line:nth-of-type(n + 4) dd { display: none; }

@media screen and (min-width: 48em), print { .info { margin: 30rem auto 44.0rem; padding: 2rem 0 7rem; }
  .info::before { height: 150%; }
  .info::after { height: 150%; }
  .info .wrap { background: url("../img/index_info_bg01.svg") no-repeat center top 5rem/90%, #fff; padding: 8rem 7.3rem; }
  .info .wrap .tit_02 { font-size: 2.5rem; padding: 0 0 1.4rem; margin: 0; }
  .info .wrap .tit_02 .eng_txt { bottom: 10px; }
  .info .wrap dl dt { font-size: 1.8rem; }
  .info .wrap dl dd { font-size: 1.6rem; }
  .info .wrap dl .line { padding: 2rem 0 2rem; } }
/* 特長 -------------------------------------- */
.feature { position: relative; padding: 2rem 0 0; margin: 0 0 10rem; }
.feature::before { content: ""; background: #fff; position: absolute; top: -6rem; left: 0; z-index: -2; height: 100%; width: 100%; transform: skewY(10deg); transform-origin: bottom left; overflow: hidden; }
.feature::after { content: ""; background: #F5F5F5; position: absolute; top: 10rem; left: 0; z-index: -1; height: 100%; width: 100%; transform: skewY(10deg); transform-origin: bottom right; }
.feature .tit_02::after { background: linear-gradient(to right, #E3E0D0 15%, transparent 15%, transparent 86%, #E3E0D0 86%); }
.feature .tit_02::before { content: ""; background: url("../img/index_feature_parts01.svg") no-repeat center/contain; position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: auto; display: block; width: 13rem; height: 11rem; }
.feature ul { counter-reset: number; padding: 0 1.2rem; }
.feature ul li { counter-increment: number 1; margin: 0 0 2rem; display: block; background: #fff; text-decoration: none !important; position: relative; box-shadow: 0px 9px 9px -5px rgba(204, 204, 204, 0.8); }
.feature ul li::after { content: ""; position: absolute; right: 0; bottom: 0; display: block; width: 3rem; height: 3rem; background: linear-gradient(135deg, transparent 50%, #0061B1 50%); }
.feature ul li img { display: block; width: 100%; margin: 0 auto; }
.feature ul li div { padding: .8rem 2rem; position: relative; }
.feature ul li div span { font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif"; position: absolute; top: -33px; left: 0; right: 0; margin: auto; text-align: center; color: #A99780; font-size: 2rem; text-shadow: 0px 0px 11px #fff, 0px 0px 10px #fff, 0px 0px 10px #fff, 0px 0px 11px #fff, 0px 0px 10px #fff, 0px 0px 10px #fff, 0px 0px 11px #fff, 0px 0px 10px #fff, 0px 0px 10px #fff, 0px 0px 11px #fff, 0px 0px 10px #fff, 0px 0px 10px #fff; }
.feature ul li div span::after { content: counter(number,decimal-leading-zero) ""; display: inline-block; font-size: 3.6rem; margin-left: .6rem; }
.feature ul li div p { text-align: justify; font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif"; }
.feature ul li div p.tit { text-align: center; padding: 0 0 1rem; font-size: 1.8rem; font-weight: bold; border-bottom: 1px solid #0061B1; font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif"; }

@media screen and (min-width: 48em), print { .feature { margin: 0 0 16rem; }
  .feature::before { top: -39%; }
  .feature::after { top: 24rem; height: 82%; }
  .feature .tit_02::after { background: linear-gradient(to right, #E3E0D0 30%, transparent 30%, transparent 70%, #E3E0D0 70%); }
  .feature .tit_02::before { width: 31rem; height: 26rem; }
  .feature ul { display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-flex-wrap: wrap; flex-wrap: wrap; padding: 0; margin: 5.4rem 0 0; }
  .feature ul li { width: 27.6rem; height: 55.2rem; margin-right: 3.2rem; margin-bottom: 4rem; }
  .feature ul li:nth-child(4n) { margin-right: 0; }
  .feature ul li div p.tit { min-height: 6.7rem; display: flex !important; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; } }
/* 診療案内 -------------------------------------- */
.tre_menu { background: #fff; padding: 2rem 0 2rem; }
.tre_menu .tit_02::after { background: linear-gradient(to right, #E3E0D0 30%, transparent 30%, transparent 71%, #E3E0D0 71%); }
.tre_menu ul { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
.tre_menu ul li { margin: 0 0 2rem; width: 49%; display: -webkit-flex; display: flex; }
.tre_menu ul li a { display: block; font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif"; text-align: center; text-decoration: none !important; border: 1px solid #A99780; padding: .2rem; width: 100%; height: 100%; position: relative; }
.tre_menu ul li a > span { 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; border: 1px solid #EEE7DD; padding: 3rem .2rem 1rem; width: 100%; height: 100%; color: #786041; font-weight: bold; }
.tre_menu ul li a > span::before { content: "\e81b"; font-family: "fontello"; display: block; font-weight: normal; position: absolute; left: 0; right: 0; top: .8rem; margin: auto; color: #E5D8B2; }
.tre_menu ul li a > span .small { font-size: 80%; width: 100%; font-weight: normal; }

@media screen and (min-width: 48em), print { .tre_menu { padding: 2rem 0 25rem; }
  .tre_menu .tit_02::after { background: linear-gradient(to right, #E3E0D0 40%, transparent 40%, transparent 60%, #E3E0D0 60%); }
  .tre_menu ul { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; margin: 0 auto; padding: 2.7rem 13rem; }
  .tre_menu ul li { width: 14rem; height: 14rem; margin-right: 2rem; }
  .tre_menu ul li:nth-child(6n) { margin-right: 0; }
  .tre_menu ul li a { padding: .5rem; }
  .tre_menu ul li a > span { padding: 6rem .2rem 2rem; font-size: 1.9rem; line-height: 1.2; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .tre_menu ul li a > span::before { top: 2.2rem; font-size: 2.4rem; }
  .tre_menu ul li a > span .small { font-size: 1.5rem; }
  .tre_menu ul li a:hover { opacity: 1; background: #A99780; }
  .tre_menu ul li a:hover > span { border: 1px solid #fff; color: #fff; }
  .tre_menu ul li a:hover > span::before { color: #fff; } }
/* 日帰り手術 -------------------------------------- */
.desc_surgery { padding: 2rem 0 2rem; margin: 4rem auto 0; position: relative; z-index: 0; }
.desc_surgery .tit_02 { position: relative; }
.desc_surgery .tit_02::before { content: ""; background: url("../img/logo_mark.svg") no-repeat center/200%; position: absolute; top: -5rem; left: 0; z-index: -1; height: 15rem; width: 100%; }
.desc_surgery .tit_02::after { background: linear-gradient(to right, #fff 30%, transparent 30%, transparent 71%, #fff 71%); }
.desc_surgery .tit_02 span { color: #fff; }
.desc_surgery .tit_02 span.eng_txt { color: #fff; }
.desc_surgery::before { content: ""; background: #0061B1; position: absolute; top: 0; left: 0; z-index: -1; height: 15rem; width: 100%; transform: skewY(-10deg); transform-origin: bottom left; overflow: hidden; }
.desc_surgery::after { content: ""; background: #F5F5F5; position: absolute; top: 0; left: 0; z-index: -2; height: 15rem; width: 100%; transform: skewY(10deg); transform-origin: bottom right; }
.desc_surgery ul { margin: 4rem auto; }
.desc_surgery ul li { margin: 0 auto 4rem; text-align: center; }
.desc_surgery ul li a { text-decoration: none !important; display: block; }
.desc_surgery ul li a img { display: block; margin: 0 auto 2.4rem; box-shadow: 0px 9px 9px -1px rgba(204, 204, 204, 0.8); }
.desc_surgery ul li a p { width: 80%; margin: 0 auto; color: #fff; padding: .4rem .2rem; background: #0061B1; position: relative; font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif"; }
.desc_surgery ul li a p::after { content: ""; position: absolute; right: -2rem; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); background: url("../img/arrow.svg") no-repeat center/contain; display: block; width: 4rem; height: 1rem; }

@media screen and (min-width: 48em), print { .desc_surgery { padding: 5rem 0 15rem; }
  .desc_surgery::before { height: 50rem; }
  .desc_surgery::after { height: 50rem; top: 0; }
  .desc_surgery .wrap { width: 95rem; }
  .desc_surgery .wrap .tit_02::before { height: 60rem; background: url("../img/logo_mark.svg") no-repeat center/auto auto; top: -30rem; }
  .desc_surgery .wrap .tit_02::after { background: linear-gradient(to right, #fff 36%, transparent 36%, transparent 65%, #fff 65%); }
  .desc_surgery .wrap ul { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; }
  .desc_surgery .wrap ul li { width: 31%; margin: 0; }
  .desc_surgery .wrap ul li a:hover { opacity: 1; }
  .desc_surgery .wrap ul li a:hover .img_wrap img { opacity: .8; transition: all .2s; }
  .desc_surgery .wrap ul li a:hover p { opacity: .8; transition: all .2s; }
  .desc_surgery .wrap ul li a .img_wrap { background: #fff; }
  .desc_surgery .wrap ul li a p { font-size: 1.8rem; height: 8.5rem; line-height: 1.2; display: flex !important; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
  .desc_surgery .wrap ul li a p::after { right: -2.5rem; }
  .desc_surgery .wrap ul li a p span { font-size: 1.6rem; }
  .desc_surgery .wrap ul li:first-child { margin-top: 8rem; }
  .desc_surgery .wrap ul li:nth-child(2) { margin-top: 4rem; } }
/* 院長からの挨拶 -------------------------------------- */
.greeting { background: #fff; padding: 6rem 0 6rem; font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif"; }
.greeting .tit_02 { text-align: left; position: relative; z-index: 0; background: none; }
.greeting .tit_02 span { position: absolute; z-index: -1; left: 0; bottom: 2.2rem; color: #EBEBEB; font-size: 6rem; padding: 0; }
.greeting .tit_02::after { content: none; }
.greeting img { display: block; margin: 0 auto; max-width: 60%; height: auto; }
.greeting p { text-align: justify; }
.greeting p.dr_name { text-align: right; }
.greeting .link { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: center; align-items: center; }
.greeting .link li { width: 49%; }
.greeting .link li a { display: block; position: relative; }
.greeting .link li a::after { content: "\e804"; font-family: "fontello"; position: absolute; right: 4%; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); }

@media screen and (min-width: 48em), print { .greeting { padding: 6rem 0 20rem; }
  .greeting .wrap { width: 95rem; }
  .greeting .wrap .tit_02 { font-size: 3.2rem; margin: 0; }
  .greeting .wrap .tit_02 span { font-size: 15rem; bottom: 1rem; left: -3rem; }
  .greeting .wrap .flex { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: flex-start; align-items: flex-start; }
  .greeting .wrap .flex img { order: 2; margin: 0 0 0; }
  .greeting .wrap .flex div { width: 50rem; order: 1; }
  .greeting .wrap .flex div p.dr_name { font-size: 2.3rem; }
  .greeting .wrap .flex div .link { margin: 4rem 0 0; }
  .greeting .wrap .flex div .link li { width: 48%; }
  .greeting .wrap .flex div .link li a { font-size: 1.5rem; padding: 1.3rem 0; } }
/* カレンダー -------------------------------------- */
.cal .box_white { padding: 1.0rem; }
.cal .box_white .status { display: -webkit-flex; display: flex; }
.cal .box_white .status li { display: inline-block; display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; }
.cal .box_white .status li::before { display: inline-block; content: '■'; font-size: 120%; }
.cal .box_white .status li:not(:last-child) { margin-right: 1.0rem; }
.cal .box_white .status li.open::before { color: #3c9; }
.cal .box_white .status li.am::before { color: #75b65d; }
.cal .box_white .status li.kyushin::before { color: #bbb; }

@media screen and (min-width: 48em), print { .cal .box_white { padding: 2.0rem; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .cal .box_white .caledit { width: 48%; font-size: 1.8rem; padding: 0 0 2.0rem; }
  .cal .box_white .caledit .week th { padding: 1.6rem 0 .6rem; }
  .cal .box_white .status { width: 100%; } }
/* ----------------------------------------------------------------------------------
下層　_lower.scss
---------------------------------------------------------------------------------- */
body:not(.index) .main { margin: 0 1.0rem 4rem; }
@media screen and (min-width: 48em), print { body:not(.index) .header > div > .wrap { padding: 3.3rem 0 1.7rem; }
  body:not(.index) .main { margin: 0 0 10rem; } }

@media screen and (min-width: 48em), print { .cf .img_l, .cf .img_r { max-width: 40%; height: auto; }
  .img { max-width: 40%; height: auto; } }
/* ドクター紹介 */
/* クリニック紹介 */
#clinicslide { margin-bottom: 8.0rem; }
#clinicslide img, #clinicslide p { display: none; }

.sp-layer.sp-black.sp-padding { text-align: center; font-size: 2.4rem; }

.sp-selected-thumbnail { border: 4px solid #000; }

.device li { margin: 0 0 2.0rem; text-align: center; }
.device li img { display: block; margin: 0 auto .6rem; max-width: 80%; height: auto; }

@media screen and (min-width: 48em), print { .device { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .device li { width: 48%; }
  .device li img { margin: 0 auto 1.0rem; max-width: 100%; } }
/* 初めての方へ */
.flow dd { margin: 0 0 6.0rem; position: relative; }
@media screen and (min-width: 48em), print { .flow dd { margin: 0 0 10.0rem; } }
.flow dd:not(:last-child)::after { display: block; width: 0; height: 0; content: ""; position: absolute; bottom: -5.0rem; left: 0; right: 0; border-top: 2.0rem solid #ccc; border-right: 3.0rem solid transparent; border-bottom: 1.0rem solid transparent; border-left: 3.0rem solid transparent; margin: auto; }

/* 診療時間・アクセス */
.access .gmap { height: 30.0rem; margin: 2.0rem 0; }

@media screen and (min-width: 48em), print { .access .gmap { height: 50.0rem; } }

/*# sourceMappingURL=style.css.map */
