@charset "UTF-8";
/* =======================================================================
 共通項目

======================================================================= */
/*関数*/
/* ----------------------------------------------------------- 関数
----------------------------------------------------------- */
/*サイトの横幅*/
/*media screen*/
/*文字PC*/
/*基本フォント*/
/*游明朝*/
/*基本文字色*/
/*基本背景色PC*/
/*青*/
/*水色*/
/*赤*/
/*水色2*/
/*赤2*/
/*ピンク*/
/*グレー*/
/*緑*/
/*ピンク*/
/*黄色*/
/* ----------------------------------------------------------- フォントサイズ基本
----------------------------------------------------------- */
html { font-size: calc( 100vw / 32 ); overflow-y: auto; font-family: "メイリオ", Meiryo, Arial, "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; color: #020202; }

@media screen and (min-width: 768px) { html { font-size: 62.5%; overflow-y: scroll; font-family: "メイリオ", Meiryo, Arial, "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; color: #020202; } }
/* ----------------------------------------------------------- 構成
----------------------------------------------------------- */
body { width: 100%; margin: 0 auto; }

section { height: auto; overflow: hidden; margin: 4.0rem 0 0 0; }
section.first { margin: 0 0 0 0; }

@media screen and (min-width: 768px) { body { margin: 0; padding: 0; }
  section { height: auto; overflow: hidden; margin: 3rem 0 0 0; }
  section.first { margin: 0 0 0 0; } }
/* 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; }

/* 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: 768px) { .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 screen and (min-width: 768px) { .sp_n { display: block; }
  .pc_n { display: none; } }
/* -----------------------------------------------------------
　枠
----------------------------------------------------------- */
article { height: auto; overflow: hidden; width: 100%; margin: 0 auto 0 auto; padding: 0 0 0 0; }
article.low { margin: 0 auto; }

.wrapper { height: auto; width: 100%; margin: 0 auto; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-flex-direction: column; flex-direction: column; }
.wrapper .main { width: 96%; margin: 0 auto; order: 1; }

@media screen and (min-width: 768px) { article { height: auto; overflow: hidden; width: 100%; margin: 47px auto 0 auto; padding: 0; }
  article.low { margin: 0 auto; }
  .wrapper { width: 1080px; height: auto; margin: 0 auto 7.0rem; padding: 0 0 0 0; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; }
  .wrapper .main { width: 820px; margin: 0; padding: 0; order: 2; } }
/* -----------------------------------------------------------
　文字装飾
----------------------------------------------------------- */
span.text_red { color: red; }

span.text_blue { color: #0357a8; }

span.bold_text { font-weight: bold; }

strong { font-weight: bold; font-size: 1.4rem; margin: 0 0 2rem 0; line-height: 140%; }

.tel a { color: #0357a8; text-decoration: none; }

span.underline_text { text-decoration: underline; }

@media screen and (min-width: 768px) { strong { font-weight: bold; font-size: 1.6rem; margin: 0 0 2rem 0; line-height: 160%; } }
/* -----------------------------------------------------------
　ヘッダ
----------------------------------------------------------- */
header { height: 62vw; }
header .head_frame { margin: 0.6rem auto 0 auto; width: 96%; }
header .head_frame .head_logo { width: 75%; }
header .head_frame .head_logo a img { width: 100%; height: auto; }
header .head_frame .head_text .head_info { padding: 0.8rem 0; margin: 1rem 0 0 0; }
header .head_frame .head_text .head_info span.tel a { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: baseline; align-items: baseline; border: 1px solid #0357a8; color: #0357a8; font-size: 3rem; font-weight: bold; text-align: center; text-decoration: none; padding: 0.6rem 0; }
header .head_frame .head_text .head_info span.tel a i { display: inline; color: #0357a8; }
header .head_frame .head_text .head_info a.head_parking { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-flex-direction: row; flex-direction: row; align-items: center; color: #ffffff; background-color: #0357a8; font-size: 1.6rem; margin: 2rem 0 0 0; padding: 1rem 0; border-radius: 1rem; }
header .head_frame .head_text .head_info a.head_parking i { margin: 0 0.4rem 0 0; }
header .head_frame .head_text .head_address { font-size: 1.8rem; margin: 1rem 0 0 0; }
header .head_frame .head_text .head_address div { width: 18%; text-align: center; }
header .head_frame .head_text .head_address div i { color: #0357a8; font-size: 3rem; text-indent: 0; }
header .head_frame .head_text .head_address p { text-indent: -23px; margin-left: 23px; margin-bottom: 1rem; }
header .head_frame .head_text .head_address p i { color: #0357a8; text-indent: 0; }
header .head_frame .head_text .head_address p span { color: #0357a8; font-weight: bold; }
header .head_frame .head_link { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; }
header .head_frame .head_link a { display: block; width: 48%; color: #ffffff; font-weight: bold; text-decoration: none; background-color: #b13d41; border-radius: 0.8rem; text-align: center; font-size: 1.4rem; padding: 1rem 0; box-sizing: border-box; }

@media screen and (min-width: 736px) { header .head_frame .head_text .head_info span.tel a { border: none; color: #020202; font-size: 3.2rem; font-weight: normal; padding: 0.6rem 0; display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-flex-direction: row; flex-direction: row; align-items: center; }
  header .head_frame .head_text .head_info span.tel a i { color: #0357a8; font-size: 2rem; display: inline; padding: 0 .8rem; } }
@media screen and (min-width: 768px) { header { height: auto; }
  header .head_frame { position: relative; margin: 0 auto; width: 1080px; height: 120px; display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; -webkit-justify-content: space-between; justify-content: space-between; }
  header .head_frame .head_logo { width: 401px; }
  header .head_frame .head_logo a img { width: 100%; height: auto; }
  header .head_frame .head_text { width: auto; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; }
  header .head_frame .head_text .head_info { margin: 0 6rem 0 0; width: auto; box-sizing: border-box; display: -webkit-flex; display: flex; }
  header .head_frame .head_text .head_info span.tel { border: none; color: #020202; font-size: 3.2rem; font-weight: normal; padding: 0.6rem 0; display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-flex-direction: row; flex-direction: row; align-items: center; }
  header .head_frame .head_text .head_info span.tel i { color: #0357a8; font-size: 2rem; display: inline; padding: 0 .8rem; }
  header .head_frame .head_text .head_info a { text-decoration: none; display: block; padding: 0.8rem 0; }
  header .head_frame .head_text .head_address { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-flex-direction: column; flex-direction: column; align-items: flex-start; margin: 0; }
  header .head_frame .head_text .head_address i { color: #0357a8; padding: 0 .3rem; }
  header .head_frame .head_text .head_address p { margin: 0; line-height: 130%; }
  header .head_frame .head_text .head_address p:first-child { margin-bottom: 10px; }
  header .head_frame .head_text .head_address p br.zip { display: none; }
  header .head_frame .head_link { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; width: 420px; margin: 30px 0 0 0; }
  header .head_frame .head_link a { display: block; width: 200px; color: #ffffff; font-weight: bold; text-decoration: none; background-color: #b13d41; border-radius: 2rem; text-align: center; font-size: 1.8rem; padding: 1rem 0; box-sizing: border-box; height: 45px; }
  header .head_frame::after { position: absolute; top: 0; right: 140px; content: '\e800'; color: #f0f5f9; font-size: 12rem; font-family: 'fontello'; z-index: -1; } }
/* -----------------------------------------------------------
　キービジュアル
----------------------------------------------------------- */
.key_visual { display: block; width: 100%; height: 50vw; background-size: cover; background-position: center top; margin: 1rem 0; }
.key_visual .key_on { display: none; }

.key_on_sp { position: relative; text-align: center; height: 9.5rem; margin: 0 0 3rem; }
.key_on_sp .key_on { background: url(../images/key_visual_on.png) no-repeat; background-size: 96% 96%; background-position: center center; height: 100%; }
.key_on_sp .key_on_info1, .key_on_sp .key_on_info2 { color: #fff; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; padding: 5% 0 0; margin: 0; }
.key_on_sp .key_on_info2 { font-size: 1.9rem; }

.key_visual_low { background: url(../images/key_visual_low.png) no-repeat; background-size: cover; background-position: center top; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; height: 27vw; padding: 0 4%; margin: 1rem 0 2rem 0; overflow: hidden; }
.key_visual_low h1 { width: 1080px; color: #fff; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; font-size: 2rem; font-weight: bold; margin: 0 auto; }

@media screen and (min-width: 768px) { .key_visual { display: block; width: 100%; height: 420px; margin: 25px auto 100px auto; background-size: cover; background-position: center top; }
  .key_visual .key_on { display: block; position: relative; width: 1080px; margin: 0 auto; z-index: 1; }
  .key_visual .key_on img { position: absolute; top: 343px; right: 0; }
  .key_visual .key_on_info1, .key_visual .key_on_info2 { position: absolute; color: #fff; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; }
  .key_visual .key_on_info2 { top: 396px; right: 85px; font-size: 3rem; }
  .key_on_sp { display: none; }
  .key_visual_low { background: url(../images/key_visual_low.png) no-repeat; background-size: cover; background-position: center top; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; width: 100%; height: 143px; padding: 0; margin: 25px 0 0 0; overflow: hidden; }
  .key_visual_low h1 { width: 1080px; color: #fff; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; font-size: 4rem; font-weight: bold; margin: 0 auto; } }
/* -----------------------------------------------------------
　診療時間
----------------------------------------------------------- */
table.timetable { padding: 0px; vertical-align: middle; width: 100%; text-align: center; border-collapse: collapse; box-sizing: border-box; border: none; margin: 1rem auto; }
table.timetable tr { margin: 0px; padding: 0px; vertical-align: middle; }
table.timetable tr.line { border-bottom: #dcdcdc 1px solid; }
table.timetable tr th { background-color: #0357a8; padding: 12px 0; text-align: center; font-size: 90%; font-weight: normal; color: #ffffff; vertical-align: middle; box-sizing: border-box; }
table.timetable tr th.holiday { letter-spacing: -.3rem; }
table.timetable tr td { text-align: center; padding: 0.8rem 0; vertical-align: middle; box-sizing: border-box; background-color: #fff; }
table.timetable tr td.time { width: 26%; color: #020202; font-size: 1rem; text-align: center; border-left: #fff 1px solid; }
table.timetable tr td.holiday { width: 12%; color: #020202; }
table.timetable tr td.right { border-right: #fff 1px solid; }

.notice_time { font-size: 1.5rem; color: #020202; line-height: 120%; width: 100%; margin: 15px auto 10px auto; }

@media screen and (min-width: 768px) { table.timetable { padding: 0px; vertical-align: middle; width: 100%; text-align: center; border-collapse: collapse; box-sizing: border-box; border: none; margin: 1rem auto; }
  table.timetable tr { margin: 0px; padding: 0px; vertical-align: middle; }
  table.timetable tr.line { border-bottom: #dcdcdc 1px solid; }
  table.timetable tr th { background-color: #0357a8; padding: 12px 0; text-align: center; font-weight: normal; color: #fff; font-size: 1.6rem; vertical-align: middle; box-sizing: border-box; }
  table.timetable tr th.holiday { width: 12%; }
  table.timetable tr td { text-align: center; padding: 1.2rem 0; font-size: 1.6rem; vertical-align: middle; box-sizing: border-box; background-color: #fff; }
  table.timetable tr td.time { width: 130px; color: #020202; font-size: 1.6rem; text-align: center; border-left: #fff 1px solid; }
  table.timetable tr td.holiday { color: #020202; }
  table.timetable tr td.right { border-right: #fff 1px solid; }
  .notice_time { font-size: 1.6rem; color: #020202; line-height: 120%; margin: 0; width: 100%; padding: 1rem; box-sizing: border-box; line-height: 180%; } }
/* -----------------------------------------------------------
　メインナビ
----------------------------------------------------------- */
.main_nav_pc { display: none; }

@media screen and (min-width: 768px) { .main_nav_pc { display: block; margin: 0 auto; padding: 0; width: 1080px; }
  .main_nav_pc nav { width: 1080px; margin: 22px auto 0 auto; }
  .main_nav_pc nav ul { width: 820px; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-wrap: nowrap; flex-wrap: nowrap; margin: 0 auto; }
  .main_nav_pc nav ul li { display: -webkit-flex; display: flex; text-align: center; font-size: 1.6rem; line-height: 100%; margin: 0; }
  .main_nav_pc nav ul li a { background-color: inherit; color: #020202; text-decoration: none; text-align: left; }
  .main_nav_pc nav ul li a i { color: #0357a8; font-size: .8rem; margin-right: 3px; }
  .main_nav_pc nav ul li a:hover { color: #b13d41; }
  .main_nav_pc nav ul li a:hover i { color: #b13d41; } }
/* -----------------------------------------------------------
　診療時間表
----------------------------------------------------------- */
.medical_time { background-color: #1b1b1b; margin: 2rem 0 0 0; }
.medical_time .medical_time_left { text-align: center; padding: 2rem 0 0.5rem 0; }
.medical_time .medical_time_left img { width: 40%; }
.medical_time .medical_time_right { padding: 0 0 1rem 0; }
.medical_time .medical_time_right table { width: 96%; margin: 0 auto; }
.medical_time .medical_time_right p { width: 96%; margin: 1rem auto; }

@media screen and (min-width: 768px) { .medical_time { background-color: #1b1b1b; margin: 38px 0 60px 0; padding: 38px 0 20px 0; width: 100%; display: -webkit-flex; display: flex; -webkit-justify-content: space-around; justify-content: space-around; -webkit-flex-direction: row; flex-direction: row; }
  .medical_time .medical_time_left { text-align: center; padding: 2rem 0 0.5rem 0; width: 169px; }
  .medical_time .medical_time_left img { width: 169px; }
  .medical_time .medical_time_right { padding: 0 0 1rem 0; width: 560px; }
  .medical_time .medical_time_right table { width: 96%; margin: 0 auto; }
  .medical_time .medical_time_right p { width: 96%; margin: 1rem auto; } }
/* -----------------------------------------------------------
　お知らせ
----------------------------------------------------------- */
.notice_frame { width: 100%; padding: 0rem; margin: 0 auto; box-sizing: border-box; }
.notice_frame dl { overflow-y: scroll; height: 360px; }
.notice_frame dl dt { box-sizing: border-box; color: #d12a1f; font-size: 1.4rem; letter-spacing: .1em; line-height: 120%; padding: 0 0 0 .4rem; margin-bottom: .3rem; }
.notice_frame dl dd { border-bottom: 1px solid #dcdcdc; box-sizing: border-box; color: #020202; font-size: 1.4rem; line-height: 120%; padding: 0 0 0 0.4rem; margin: 0 1rem 2rem 0; }

@media screen and (min-width: 768px) { .notice_frame { width: 100%; padding: 20px 10px 20px 30px; margin: 0 auto; }
  .notice_frame dl { overflow-y: scroll; height: 360px; padding-right: 10px; }
  .notice_frame dl dt { color: #d12a1f; font-size: 1.7rem; letter-spacing: .1em; line-height: 120%; padding: 0 0 0 .8rem; margin: 0; box-sizing: border-box; }
  .notice_frame dl dd { color: #020202; font-size: 1.6rem; line-height: 120%; border-bottom: 1px solid #dcdcdc; box-sizing: border-box; padding: 0 0 0 .8rem; } }
/*スマホ用スライドバー*/
@media screen and (max-width: 767px) { .notice_frame dl::-webkit-scrollbar { width: 12px; background: #ffffff; }
  .notice_frame dl::-webkit-scrollbar-track { -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3); border-radius: 10px; }
  .notice_frame dl::-webkit-scrollbar-thumb { border-radius: 10px; -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.5); } }
/* -----------------------------------------------------------
　当院の特長
----------------------------------------------------------- */
.features { position: relative; width: 100%; border-bottom: 1px solid #dcdcdc; margin-bottom: 4.0rem; }
.features_cont { position: relative; display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; min-height: 16rem; }
.features_cont .features_title { display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; margin: 0 0 1rem 0; }
.features_cont .features_title p { color: #d12a1f; font-size: 1.4rem; font-weight: bold; line-height: 120%; margin: 0; }
.features_cont .features_title p br { display: none; }
.features_cont::after { content: ''; position: absolute; top: 0; right: 50%; z-index: -1; }
.features_cont_1::after { background: url(../images/index_feature_no1.png) no-repeat; width: 90px; height: 169px; margin-right: -45px; }
.features_cont_2::after { background: url(../images/index_feature_no2.png) no-repeat; width: 114px; height: 169px; margin-right: -57px; }
.features_cont_3::after { background: url(../images/index_feature_no3.png) no-repeat; width: 106px; height: 172px; margin-right: -53px; }
.features_cont_4::after { background: url(../images/index_feature_no4.png) no-repeat; width: 115px; height: 169px; margin-right: -57px; }
.features_text { line-height: 160%; }
.features_image { position: relative; z-index: -1; margin-bottom: 2rem; }
.features_image img.features_img { width: 100%; height: auto; margin: 0; }

@media screen and (min-width: 768px) { .features { border-bottom: none; margin: 0 auto 20px; }
  .features_box { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; }
  .features_cont { -webkit-justify-content: center; justify-content: center; min-height: unset; }
  .features_cont .features_title p { font-size: 2.2rem; }
  .features_cont .features_title p br { display: block; }
  .features_left { order: 1; margin-right: 20px; }
  .features_left.features_image::after { content: ""; position: absolute; top: 0; right: -59px; width: 0; height: 0; border-style: solid; border-width: 213px 59px 0 59px; border-color: #fff transparent transparent transparent; }
  .features_right { order: 2; }
  .features_right.features_image::after { content: ""; position: absolute; top: 0; left: -59px; width: 0; height: 0; border-style: solid; border-width: 0 59px 213px 59px; border-color: transparent transparent #fff transparent; }
  .features_image { position: relative; z-index: -1; margin-bottom: 2rem; }
  .features_image img.features_img { width: auto; height: 213px; margin: 0; } }
/* -----------------------------------------------------------
　医院概要
----------------------------------------------------------- */
.overview { width: 100%; box-sizing: border-box; font-size: 1.4rem; padding: 0; margin: 2rem auto 0; }
.overview_title { background-color: #fff; }
.overview_title h3 { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; }
.overview_title h3 span { position: relative; color: #0357a8; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; font-size: 1.8rem; font-weight: bold; padding: 0 25px; }
.overview_title h3 span::before, .overview_title h3 span::after { position: absolute; top: 0; font-size: 1.8rem; font-family: 'fontello'; }
.overview_title h3 span::before { left: 0; content: '\e807'; color: #b13d41; }
.overview_title h3 span::after { right: 0; content: '\e808'; color: #0357a8; }
.overview .overview_bg { padding: 3.8rem 2% 2rem 2%; box-sizing: border-box; margin: -3rem 0 2rem 0; }
.overview .overview_bg .logo_frame { background-color: #0357a8; }
.overview .overview_bg .logo_frame div { background-color: #fff; width: 96%; margin: 0 auto; }
.overview .overview_bg .overview_frame { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-flex-direction: column; flex-direction: column; margin: 0 0 0 0; padding: 0 0 0 0; }
.overview .overview_bg .overview_frame .overview_frame_left { background-color: #fff; width: 100%; margin: 0 auto; box-sizing: border-box; padding: 2rem 0; }
.overview .overview_bg .overview_frame .overview_frame_left dl { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; box-sizing: border-box; margin: 0 0 1rem 0; line-height: 180%; color: #020202; }
.overview .overview_bg .overview_frame .overview_frame_left dl dt { display: -webkit-flex; display: flex; align-items: center; -webkit-justify-content: center; justify-content: center; background-color: #0357a8; font-weight: normal; margin: 0; width: 25%; box-sizing: border-box; border-bottom: #fff 1px solid; color: #fff; }
.overview .overview_bg .overview_frame .overview_frame_left dl dd { display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; color: #020202; margin: 0; width: 75%; padding: 0.8rem; box-sizing: border-box; background-color: #fff; }
.overview .overview_bg .overview_frame .overview_frame_left dl dd.overview_access span { color: #d12a1f; font-weight: bold; }
.overview .overview_bg .overview_frame .overview_frame_right { width: 100%; margin: 0 auto 0 auto; background-color: #ffffff; box-sizing: border-box; padding: 2rem 2% 0 2%; }
.overview .overview_bg .overview_frame .overview_frame_right p.green_title { margin: 0; color: #0357a8; font-weight: bold; }
.overview .overview_bg .overview_frame .overview_frame_right p.orange_title { margin: 0; color: #fee7e5; font-weight: bold; margin: 2rem 0 0 0; }
.overview .overview_bg .overview_frame .overview_frame_right dl { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; box-sizing: border-box; margin: 0 0 1rem 0; line-height: 180%; color: #020202; }
.overview .overview_bg .overview_frame .overview_frame_right dl dt { display: -webkit-flex; display: flex; align-items: center; -webkit-justify-content: center; justify-content: center; background-color: #0357a8; font-weight: normal; margin: 0; width: 25%; box-sizing: border-box; border-bottom: #ffffff 1px solid; color: #ffffff; }
.overview .overview_bg .overview_frame .overview_frame_right dl dd { display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; -webkit-justify-content: center; justify-content: center; color: #020202; margin: 0; width: 75%; padding: 0.8rem; box-sizing: border-box; background-color: #fff; }
.overview .overview_bg .overview_frame .overview_frame_right img { display: block; width: 100%; height: auto; margin: 0 auto 2rem; }
.overview .overview_bg .overview_frame .overview_frame_right .time_notice { margin: 0.6rem 0 0 0; font-size: 1.2rem; }
.overview .overview_bottom { display: none; }

.map_btn { color: #0357a8; text-align: center; text-decoration: none; display: block; font-size: 1.4rem; padding: .7rem 0; width: 80%; margin: 0 auto; border-radius: 1.6rem; border: #0357a8 1px solid; }

.access_map { text-align: center; }
.access_map img { width: 100%; height: auto; margin-bottom: 2rem; }

.time_notice { margin: 0.6rem 0 0 0; font-size: 1.2rem; }

@media screen and (min-width: 768px) { .overview { width: 100%; margin: 20px auto 0 auto; padding: 0; box-sizing: border-box; background: none; }
  .overview_inner { width: 100%; margin: 0 auto; background-color: #0357a8; }
  .overview_title { background-color: #fff; padding-bottom: 30px; }
  .overview_title h3 span { font-size: 2.5rem; }
  .overview_title h3 span::before, .overview_title h3 span::after { font-size: 2.2rem; }
  .overview .overview_bg { padding: 0; margin: 0 auto; background-color: #fff; width: 1080px; }
  .overview .overview_bg .logo_frame { background-color: #fff; }
  .overview .overview_bg .logo_frame img.overview_title { width: 569px; display: block; margin: 0 auto; }
  .overview .overview_bg .overview_frame { background: url(../images/foot_bg.png) no-repeat; background-color: #fff; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; width: 985px; padding: 50px 0 0 0; margin: 0 auto 80px; }
  .overview .overview_bg .overview_frame .overview_frame_left { width: 480px; margin: 0; padding: 0; }
  .overview .overview_bg .overview_frame .overview_frame_left dl { font-size: 1.7rem; margin: 0 0 30px 0; }
  .overview .overview_bg .overview_frame .overview_frame_left dl dt { width: 130px; padding: 20px 0; }
  .overview .overview_bg .overview_frame .overview_frame_left dl dd { -webkit-justify-content: center; justify-content: center; border-bottom: 1px solid #dcdcdc; width: 350px; padding: 0 30px; }
  .overview .overview_bg .overview_frame .overview_frame_left dl dd.overview_access { flex-direction: initial; justify-content: flex-start; align-items: center; }
  .overview .overview_bg .overview_frame .overview_frame_left dl dd a { color: #020202; }
  .overview .overview_bg .overview_frame .overview_frame_left dl dd a:hover { opacity: .6; }
  .overview .overview_bg .overview_frame .overview_frame_right { width: 480px; text-align: left; margin: 0; padding: 0; }
  .overview .overview_bg .overview_frame .overview_frame_right iframe { width: 100%; height: 430px; margin: 0 auto 2rem; display: block; }
  .overview .overview_bottom { display: block; text-align: center; }
  .overview .overview_bottom img { width: 320px; height: auto; }
  .map_btn { color: #0357a8; text-align: center; text-decoration: none; display: block; font-size: 1.6rem; padding: .7rem 0; width: 220px; margin: 22px auto  0 auto; border-radius: 1.6rem; border: #0357a8 1px solid; }
  .map_btn:hover { opacity: .6; }
  .access_map img { width: auto; height: auto; margin-bottom: 0; }
  .time_notice { margin: 0.6rem 0 1rem 0; font-size: 1.6rem; line-height: 140%; } }
/* -----------------------------------------------------------
　フッター
----------------------------------------------------------- */
footer .footer_frame { display: none; }
footer .copyright { margin: 0; text-align: center; margin: 0; padding: 1rem 0; color: #020202; font-size: 1.2rem; height: auto; }

@media screen and (min-width: 768px) { footer { width: 100%; height: auto; box-sizing: border-box; padding: 40px 0 0 0; background-color: #fff; color: #020202; }
  footer .footer_frame { display: block; width: 1080px; margin: 0 auto 60px auto; }
  footer .footer_frame ul { list-style-type: none; font-size: 1.5rem; width: 1080px; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; margin: 0 auto 0 auto; }
  footer .footer_frame ul li { width: 15%; line-height: 180%; }
  footer .footer_frame ul li a { text-decoration: none; color: #020202; white-space: nowrap; }
  footer .footer_frame ul li a:hover { color: #b13d41; }
  footer .footer_frame ul li a:hover i { color: #b13d41; }
  footer .footer_frame ul li a i { color: #0357a8; font-size: .8rem; margin-right: 3px; }
  footer .footer_frame ul.global_list { margin: 0 auto 0.4rem auto; }
  footer .footer_frame ul.aside_list1 { margin: 0 auto; }
  footer .footer_frame ul.aside_list1 li:last-child { width: 10%; }
  footer .footer_frame ul.aside_list1 i { color: #d12a1f; }
  footer .footer_frame ul.aside_list2 { width: 490px; margin: 0 auto; }
  footer .footer_frame ul.aside_list2 li br { display: none; }
  footer .copyright { padding: 　16px 0; font-size: 1.6rem; max-width: 2000px; letter-spacing: 0.2rem; background-color: #fff; } }
/* -----------------------------------------------------------
　ページトップへ
----------------------------------------------------------- */
#linkpagetop { float: right; }

#linkpagetop img { width: 80%; height: auto; }

#pagetop { position: fixed; bottom: 15vw; right: 0px; height: 15vw; text-align: right; margin: 0 2% 0 0; }

#pagetop a { display: block; }

#pagetop_position { float: right; margin: 0px; padding: 0px; }

.pagetop { width: 75px; height: 75px; background-color: #d12a1f; border-radius: 50%; color: #fff; font-size: 3.6vmin; line-height: 1.2; text-align: center; text-decoration: none; }
.pagetop i { display: block; font-size: 5.3vmin; padding: 9% 0 0; }

@media screen and (min-width: 768px) { #linkpagetop { float: left; }
  #linkpagetop img { width: 93px; height: auto; }
  #pagetop { position: fixed; bottom: 180px; left: 50%; margin: 0 0 0 600px; height: 180px; text-align: center; }
  #pagetop a { display: block; color: #ffffff; }
  #pagetop_position { float: right; margin: 0px; padding: 0px; }
  .blog #pagetop { position: fixed; bottom: 90px; left: 50%; margin: 0 0 0 600px; height: 90px; text-align: center; }
  .pagetop { width: 86px; height: 86px; font-size: 1.6rem; }
  .pagetop i { font-size: 2.4rem; padding-top: 10px; } }
@media screen and (min-width: 768px) and (max-width: 1500px) { #pagetop { position: fixed; bottom: 80px; left: 90%; margin: 0 0 0 0; height: 105px; text-align: center; } }
/*----------------------------------------------------------- インポート
----------------------------------------------------------- */
/*ハンバーガー*/
.drawr { display: none; position: absolute; top: 19vw; width: 100%; padding: 0; margin: 0 auto; height: auto; z-index: 999999; background-color: #0357a8; }
.drawr ul.hbg li { text-align: center; }
.drawr ul.hbg li a { border-bottom: #fff 1px solid; color: #fff; display: block; font-size: 1.6rem; text-decoration: none; padding: 1rem 0; }
.drawr ul.hbg li a i { display: none; }

.openNav { display: block; }

/*ハンバーガーナビ*/
.main_nav_sp { display: block; width: 100%; height: auto; margin: 0; }

.main_nav_sp ul.gnav { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-flex-direction: column; flex-direction: column; width: 100%; box-sizing: border-box; margin: 0 auto; }

.main_nav_sp ul.gnav li { width: 100%; font-weight: normal; font-size: 1.6rem; letter-spacing: 0.05em; line-height: 140%; list-style-type: none; box-sizing: border-box; padding: 0; border-bottom: #ffffff 1px solid; text-align: center; }

.main_nav_sp ul.gnav li a { color: #ffffff; text-decoration: none; width: 100%; display: block; padding: 1rem 0; text-shadow: none; box-sizing: border-box; }

@media screen and (min-width: 768px) { .main_nav_sp { display: none; } }
.toggle { display: none; }

.toggle-label { cursor: pointer; display: block; width: 56px; height: 50px; padding: 0 0 4px 0; user-select: none; -webkit-tap-highlight-color: transparent; }

.toggle-label:active { -webkit-tap-highlight-color: transparent; }

.toggle-label { cursor: pointer; }

.toggle-label .toggle-icon, .toggle-label .toggle-icon:before, .toggle-label .toggle-icon:after { position: relative; display: block; top: 50%; left: 50%; height: 3px; width: 42px; background: #ffffff; content: ''; transition: all 500ms ease-in-out; }

.toggle-label .toggle-text { position: relative; display: block; top: calc(100% - 10px); height: 14px; font-size: 12px; color: #ffffff; text-align: center; }

.toggle-label .toggle-text:before { position: absolute; width: 100%; left: 0; content: 'MENU'; transition: all 500ms ease-in-out; visibility: visible; opacity: 1; }

.toggle-label .toggle-text:after { position: absolute; width: 100%; left: 0; content: 'CLOSE'; transition: all 500ms ease-in-out; visibility: hidden; opacity: 0; }

.toggle-label .toggle-icon { transform: translate3d(-50%, -5px, 0); }

.toggle-label .toggle-icon:before { transform: translate3d(-50%, -11.5px, 0); }

.toggle-label .toggle-icon:after { transform: translate3d(-50%, 5px, 0); }

.toggle:checked ~ .toggle-label .toggle-icon { background-color: transparent; }

.toggle:checked ~ .toggle-label .toggle-icon:before, .toggle:checked ~ .toggle-label .toggle-icon:after { top: 0; }

.toggle:checked ~ .toggle-label .toggle-icon:before { transform: translateX(-50%) rotate(45deg); top: 1.5px; }

.toggle:checked ~ .toggle-label .toggle-icon:after { transform: translateX(-50%) translateY(-10px) rotate(-45deg); top: 8.5px; }

.toggle:checked ~ .toggle-label .toggle-text:before { visibility: hidden; opacity: 0; }

.toggle:checked ~ .toggle-label .toggle-text:after { visibility: visible; opacity: 1; }

.container { position: absolute; top: 2vw; right: 2%; display: flex; align-items: center; justify-content: center; background-color: #0357a8; width: 56px; padding: 0 0 0.6rem 0; cursor: pointer; }

/*----------------------------------------------------------- 下層
----------------------------------------------------------- */
.text_link { font-size: 1.4rem; margin: 0 0 2rem 0; text-align: right; line-height: 140%; display: block; }

.parking_text { color: #020202; }

.red_text { color: red; }

/*はめての方へ*/
.tel_text { font-weight: bold; font-size: 2rem; }
.tel_text span { display: block; }
.tel_text a { text-decoration: none; }

.reservation_btn { text-align: center; background-color: #ef92bb; color: #ffffff; font-size: 1.8rem; text-decoration: none; display: block; margin: 1rem auto 2rem auto; width: 90%; padding: 0.6rem 0; border-radius: 2rem; }

/*矢印*/
.arrow { width: 0; height: 0; border-left: 60px solid transparent; border-right: 60px solid transparent; border-top: 30px solid #d12a1f; text-align: center; display: block; margin: 30px auto; }

@media screen and (min-width: 768px) { .text_link { font-size: 1.6rem; margin: 0 0 2rem 0; text-align: right; line-height: 140%; display: block; }
  .parking_text { color: #020202; }
  .parking_text:hover { opacity: 0.6; }
  /*はめての方へ*/
  .tel_text { text-align: center; color: #01af84; font-weight: bold; font-size: 3rem; line-height: 140%; }
  .tel_text span { display: inline; margin: 0 0 0 2rem; }
  .tel_text a { text-decoration: none; }
  .reservation_btn { width: 400px; text-align: center; background-color: #ef92bb; color: #ffffff; font-size: 2rem; text-decoration: none; display: block; margin: 0 auto 20px auto; padding: 1rem 0; border-radius: 2rem; line-height: 100%; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; align-items: center; }
  .reservation_btn:hover { opacity: 0.6; }
  /*矢印*/
  .arrow { width: 0; height: 0; border-left: 60px solid transparent; border-right: 60px solid transparent; border-top: 30px solid #d12a1f; text-align: center; display: block; margin: 30px auto; } }
/*----------------------------------------------------------- インポート
----------------------------------------------------------- */
/*アサイド*/
/* -----------------------------------------------------------
　アサイド
----------------------------------------------------------- */
aside { order: 1; width: 96%; margin: 0 auto; /*ロゴ*/ /*見出し*/ /*リンクリスト*/ }
aside figure { text-align: center; }
aside p { display: none; }
aside ul.aside_list { display: none; }

@media screen and (min-width: 768px) { aside { order: 1; width: 230px; margin: 0; /*ロゴ*/ /*見出し*/ /*リンクリスト*/ /*外部リンク*/ }
  aside figure { text-align: center; }
  aside .aside_title { position: relative; display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; -webkit-justify-content: center; justify-content: center; background-color: #0357a8; color: #fff; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; font-size: 2.5rem; text-align: center; height: 52px; margin: 0; overflow: hidden; }
  aside .aside_title::before { position: absolute; top: 0; left: -10px; color: #b13d41; content: '\e807'; font-size: 7rem; font-family: 'fontello'; margin: 0 5px 0 0; }
  aside .aside_footer { position: relative; display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; -webkit-justify-content: center; justify-content: center; background-color: #0357a8; color: #fff; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; font-size: 2.5rem; text-align: center; height: 32px; margin: 0; overflow: hidden; }
  aside .aside_footer::before { position: absolute; top: 0; left: -10px; color: #1d6cb7; content: '\e807'; font-size: 7rem; font-family: 'fontello'; margin: 0 5px 0 0; }
  aside ul.aside_list { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-flex-direction: column; flex-direction: column; -webkit-flex-wrap: wrap; flex-wrap: wrap; list-style-type: none; margin: 0; width: 230px; }
  aside ul.aside_list li { position: relative; background-color: #d8e8f9; box-sizing: border-box; font-size: 1.8rem; width: 230px; margin: 0 0 1px 0; overflow: hidden; }
  aside ul.aside_list li::before { position: absolute; top: 0; left: -10px; color: #fff; content: '\e807'; font-size: 3.5rem; font-family: 'fontello'; margin: 0 5px 0 0; }
  aside ul.aside_list li a { display: -webkit-flex; display: flex; align-items: center; width: 100%; height: 52px; padding: 0 0.6rem 0 2.6rem; color: #020202; text-decoration: none; margin: auto; box-sizing: border-box; }
  aside ul.aside_list li a::before { content: "･"; color: #b13d41; font-size: 5rem; margin-top: 6px; }
  aside ul.aside_list li a:hover { color: #fff; }
  aside ul.aside_list li a:hover::before { color: #fff; }
  aside ul.aside_list li a i { display: none; }
  aside ul.aside_list li:hover { background-color: #b13d41; color: #fff; }
  aside a { text-align: center; display: block; margin: 25px 0 0 0; }
  aside a img { width: 230px; height: auto; }
  aside a img:hover { opacity: 0.6; }
  aside #engage-contributions-widget-wrapper { display: block; height: 230px; height: 300px; }
  aside .aside_3bees { text-align: center; margin: 1rem 0 0 0; padding: 2rem 0 0 0; background-color: #ebeced; } }
/*イメージ*/
/* -----------------------------------------------------------
　イメージ
----------------------------------------------------------- */
.img_right { margin: 0 0 10px 0; text-align: center; }
.img_right img { width: 70%; height: auto; }

.img_locomo { margin: 0 0 10px 0; text-align: center; }
.img_locomo img { width: 70%; height: auto; }

.img_doctor { margin: 0 0 10px 0; text-align: center; }
.img_doctor img { width: 70%; height: auto; }

.img_center { margin: 10px 0 10px 0; text-align: center; }
.img_center img { width: 100%; height: auto; }

/*画像右*/
.img_right_frame { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-flex-direction: column; flex-direction: column; margin: 0 0 1rem 0; }
.img_right_frame div.right { order: 1; width: 100%; text-align: center; }
.img_right_frame div.right img { width: 80%; height: auto; margin: 0 0 1rem 0; }
.img_right_frame div.left { order: 2; width: 100%; }
.img_right_frame div.left .doctor_name { text-align: right; }

/*画像左*/
.img_left_frame { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-flex-direction: column; flex-direction: column; margin: 0 0 1rem 0; }
.img_left_frame div.left { order: 1; width: 100%; text-align: center; }
.img_left_frame div.left img { width: 80%; height: auto; margin: 0 0 1rem 0; }
.img_left_frame div.right { order: 2; width: 100%; line-height: 120%; }

/*二つ*/
.img_two { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-flex-direction: column; flex-direction: column; }
.img_two img { width: 100%; margin: 0 auto 20px auto; display: block; }

.top_doctor_name { font-size: 1.5rem; text-align: right; }
.top_doctor_name span { font-size: 1.8rem; }

@media screen and (min-width: 768px) { .img_right { float: right; margin: 0 0 10px 10px; }
  .img_right img { width: 236px; height: auto; }
  .img_doctor { float: right; margin: 0 0 10px 10px; }
  .img_doctor img { width: 300px; height: auto; }
  .img_locomo { float: right; margin: 0 0 10px 10px; }
  .img_locomo a:hover { opacity: 0.6; }
  .img_locomo img { width: 255px; height: auto; }
  .img_center { float: none; margin: 0 0 10px 0; text-align: center; }
  .img_center img { width: auto; height: auto; }
  /*画像右*/
  .img_right_frame { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; margin: 0 0 3rem 0; }
  .img_right_frame div.right { order: 2; width: 350px; text-align: center; }
  .img_right_frame div.right img { width: 350px; height: auto; margin: 0; }
  .img_right_frame div.left { order: 1; width: 445px; line-height: 120%; }
  .img_right_frame div.left .doctor_name { text-align: right; }
  /*画像左*/
  .img_left_frame { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; margin: 0 0 0 0; }
  .img_left_frame div.left { order: 1; width: 350px; text-align: left; }
  .img_left_frame div.left img { width: 350px; height: auto; margin: 10px 0; }
  .img_left_frame div.right { order: 2; width: 445px; line-height: 120%; }
  /*二つ*/
  .img_two { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: center; -webkit-flex-direction: row; flex-direction: row; }
  .img_two img { width: 272px; margin: 0 auto 20px auto; display: block; }
  .top_doctor_name { font-size: 1.8rem; text-align: right; }
  .top_doctor_name span { font-size: 2.2rem; } }
/*リスト*/
/* -----------------------------------------------------------
　リスト
----------------------------------------------------------- */
/*標準*/
ul.list_normal { line-height: 160%; font-size: 1.4rem; list-style-type: disc; margin: 0; }
ul.list_normal li { margin: 0 0 10px 1.8rem; padding: 0; }
ul.list_normal li ul { list-style-type: none; }
ul.list_normal li ul li { margin: 0 0 10px 0; }

/*画像●*/
ul.list_maru { padding: 0; margin: 0; }
ul.list_maru li { line-height: 130%; font-size: 1.4rem; list-style-type: none; margin: 0 0 1rem 0; box-sizing: border-box; background: url(../images/maru.gif) no-repeat; background-position: left top 0.6rem; background-size: 1rem; padding: 0 0 0 1.4rem; line-height: 130%; }
ul.list_maru li ul { margin: 1rem 0 0 0; }
ul.list_maru li ul li { background: none; list-style-type: disc; margin: 0 0 1rem 2rem; padding: 0 0 0 0; }
ul.list_maru li ul li ul li { list-style-type: none; }

/*画像●*/
ul.list_maru2 { padding: 0; margin: 0; }
ul.list_maru2 li { line-height: 130%; font-size: 1.4rem; list-style-type: none; margin: 0 0 1rem 0; box-sizing: border-box; background: url(../images/maru.gif) no-repeat; background-position: left top 0.6rem; background-size: 1rem; padding: 0 0 0 1.4rem; line-height: 130%; }
ul.list_maru2 li ul { margin: 1rem 0 0 0; }
ul.list_maru2 li ul li { background: none; list-style-type: none; margin: 0 0 1rem 0; padding: 0 0 0 0; }
ul.list_maru2 li ul li ul li { list-style-type: none; }

/*画像■グリーン*/
ul.list_green { padding: 0; margin: 0; }
ul.list_green li { line-height: 130%; font-size: 1.4rem; list-style-type: none; margin: 0 0 1rem 0; box-sizing: border-box; background: url(../images/icon_green.gif) no-repeat; background-position: left top 0.6rem; background-size: 1rem; padding: 0 0 0 1.4rem; line-height: 130%; }

/*画像■オレンジ*/
ul.list_orange { padding: 0; margin: 0; }
ul.list_orange li { line-height: 130%; font-size: 1.4rem; list-style-type: none; margin: 0 0 1rem 0; box-sizing: border-box; background: url(../images/icon_orange.gif) no-repeat; background-position: left top 0.6rem; background-size: 1rem; padding: 0 0 0 1.4rem; line-height: 130%; }

/*なし*/
ul.list_none { line-height: 160%; font-size: 1.4rem; list-style-type: none; margin: 0; }
ul.list_none li { margin: 0 0 15px 0; padding: 0 0 0 5px; }
ul.list_none li span { color: #fedc50; margin: 0 0.5rem 0 0; }
ul.list_none li span.text_red { color: red; }

/*数値*/
ul.list_num { box-sizing: border-box; width: 100%; }
ul.list_num li { line-height: 130%; font-size: 1.4rem; list-style-type: decimal; margin: 0 0 10px 2rem; box-sizing: border-box; width: 90%; }
ul.list_num li ul { list-style-type: none; }
ul.list_num li ul li { margin: 0 0 10px 0; }

/*数値*/
ul.list_num2 { box-sizing: border-box; width: 100%; }
ul.list_num2 li { line-height: 130%; font-size: 1.4rem; list-style-type: decimal; margin: 0 0 10px 2rem; box-sizing: border-box; width: 90%; }
ul.list_num2 li ul.alpha { box-sizing: border-box; width: 100%; }
ul.list_num2 li ul.alpha li { line-height: 130%; font-size: 1.4rem; list-style-type: lower-alpha; margin: 0 0 1rem 2rem; box-sizing: border-box; width: 90%; }
ul.list_num2 li ul.none { box-sizing: border-box; width: 100%; }
ul.list_num2 li ul.none li { line-height: 130%; font-size: 1.4rem; list-style-type: none; margin: 0 0 1rem 0; box-sizing: border-box; width: 90%; }

/*英語*/
ul.list_alpha { box-sizing: border-box; width: 100%; }
ul.list_alpha li { line-height: 130%; font-size: 1.4rem; list-style-type: lower-alpha; margin: 0 0 10px 2rem; box-sizing: border-box; width: 90%; }

/*概要*/
ul.list_overview { box-sizing: border-box; width: 100%; }
ul.list_overview li { line-height: 130%; font-size: 1.4rem; list-style-type: disc; margin: 0 0 10px 25px; box-sizing: border-box; width: 90%; }

/*2列*/
ul.list_normal_two { display: flex; justify-content: space-between; flex-direction: column; }
ul.list_normal_two li { box-sizing: border-box; line-height: 130%; font-size: 1.4rem; list-style-type: disc; margin: 0 0 10px 25px; }

ul.link_list { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; list-style-type: none; }
ul.link_list li { width: 45%; margin: 0 0 0.6rem 0; }
ul.link_list li a { display: block; width: 100%; text-decoration: none; padding: 1rem; box-sizing: border-box; font-size: 1.4rem; background-color: #0357a8; border-bottom: #d12a1f 4px solid; color: #ffffff; border-radius: 1rem 0 0 0; display: -webkit-flex; display: flex; align-items: center; }
ul.link_list li a::before { content: "･"; color: #ffe473; font-size: 3rem; }

@media screen and (min-width: 768px) { /*標準*/
  ul.list_normal { line-height: 160%; font-size: 1.6rem; list-style-type: disc; margin: 0; }
  ul.list_normal li { margin: 0 0 10px 25px; padding: 0; }
  /*画像●*/
  ul.list_maru { padding: 0; }
  ul.list_maru li { line-height: 100%; font-size: 1.6rem; list-style-type: none; margin: 0 0 15px 0; box-sizing: border-box; background: url(../images/maru.gif) no-repeat; background-position: left top 3px; background-size: 1.5rem; padding: 0 0 0 25px; line-height: 140%; }
  /*画像●*/
  ul.list_maru2 { padding: 0; }
  ul.list_maru2 li { line-height: 100%; font-size: 1.6rem; list-style-type: none; margin: 0 0 15px 0; box-sizing: border-box; background: url(../images/maru.gif) no-repeat; background-position: left top 3px; background-size: 1.5rem; padding: 0 0 0 25px; line-height: 140%; }
  ul.list_maru2 li ul { margin: 1rem 0 0 0; }
  ul.list_maru2 li ul li { background: none; list-style-type: none; margin: 0 0 1rem 0; padding: 0 0 0 0; }
  ul.list_maru2 li ul li ul li { list-style-type: none; }
  /*画像■グリーン*/
  ul.list_green { padding: 0; }
  ul.list_green li { line-height: 100%; font-size: 1.6rem; list-style-type: none; margin: 0 0 15px 0; box-sizing: border-box; background: url(../images/icon_green.gif) no-repeat; background-position: left top 3px; background-size: 1.5rem; padding: 0 0 0 20px; line-height: 140%; }
  /*画像■オレンジ*/
  ul.list_orange { padding: 0; }
  ul.list_orange li { line-height: 100%; font-size: 1.6rem; list-style-type: none; margin: 0 0 15px 0; box-sizing: border-box; background: url(../images/icon_orange.gif) no-repeat; background-position: left top 3px; background-size: 1.5rem; padding: 0 0 0 20px; line-height: 140%; }
  /*なし*/
  ul.list_none { line-height: 160%; font-size: 1.6rem; list-style-type: none; }
  ul.list_none li { margin: 0 0 15px 0; }
  ul.list_none li span { color: #fedc50; margin: 0 5px 0 0; }
  ul.list_none li span.text_red { color: red; }
  /*数値*/
  ul.list_num { box-sizing: border-box; width: 100%; }
  ul.list_num li { line-height: 130%; font-size: 1.6rem; list-style-type: decimal; margin: 0 0 10px 25px; box-sizing: border-box; width: 90%; }
  ul.list_num li ul { margin: 1rem 0 0 0; }
  ul.list_num li ul li { list-style-type: none; }
  /*数値*/
  ul.list_num2 { box-sizing: border-box; width: 100%; }
  ul.list_num2 li { line-height: 160%; font-size: 1.6rem; list-style-type: decimal; margin: 0 0 10px 2rem; box-sizing: border-box; width: 90%; }
  ul.list_num2 li ul.alpha { box-sizing: border-box; width: 100%; }
  ul.list_num2 li ul.alpha li { line-height: 160%; font-size: 1.6rem; list-style-type: lower-alpha; margin: 0 0 1rem 2rem; box-sizing: border-box; width: 90%; }
  ul.list_num2 li ul.none { box-sizing: border-box; width: 100%; }
  ul.list_num2 li ul.none li { line-height: 160%; font-size: 1.6rem; list-style-type: none; margin: 0 0 1rem 0; box-sizing: border-box; width: 90%; }
  /*概要*/
  ul.list_overview li { line-height: 130%; font-size: 1.6rem; list-style-type: disc; margin: 0 0 10px 25px; }
  ul.list_normal_two { display: flex; justify-content: space-between; flex-direction: row; flex-wrap: wrap; }
  ul.list_normal_two li { width: 45%; box-sizing: border-box; line-height: 130%; font-size: 1.6rem; list-style-type: disc; margin: 0 0 10px 25px; }
  ul.link_list { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; list-style-type: none; }
  ul.link_list li { width: 30%; margin: 0 0 0.6rem 0; }
  ul.link_list li a { width: 100%; text-decoration: none; padding: 1rem; box-sizing: border-box; font-size: 1.6rem; background-color: #0357a8; border-bottom: #d12a1f 4px solid; color: #ffffff; border-radius: 1rem 0 0 0; display: -webkit-flex; display: flex; align-items: center; }
  ul.link_list li a::before { content: "･"; color: #ffe473; font-size: 3rem; }
  ul.link_list li a:hover { background-color: #b13d41; border-bottom: #d8e8f9 4px solid; } }
/* -----------------------------------------------------------
　定義リスト
----------------------------------------------------------- */
dl.bio_list { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.4rem; box-sizing: border-box; margin: 0 0 20px 0; line-height: 120%; }
dl.bio_list dt { width: 100%; margin: 0 0 0 0; font-weight: bold; }
dl.bio_list dd { width: 100%; margin: 0 0 20px 0; }

@media screen and (min-width: 768px) { dl.bio_list { display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.6rem; box-sizing: border-box; line-height: 140%; width: 820px; }
  dl.bio_list dt { width: 120px; margin: 0 0 20px 0; font-weight: normal; }
  dl.bio_list dd { width: 700px; margin: 0 0 20px 0; } }
/*見出し*/
/* -----------------------------------------------------------
　見出し
----------------------------------------------------------- */
h1 { margin: 0; }

.title_LV2 { position: relative; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; align-items: center; border-bottom: 2px solid #0357a8; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; font-size: 1.8rem; font-weight: bold; line-height: 120%; height: 55px; margin: 0 0 2rem 2rem; }
.title_LV2::before { content: '\e807'; position: absolute; top: 0; left: -12%; color: #0357a8; font-size: 7rem; font-family: 'fontello'; height: 100%; margin: 0 5px 0 0; overflow: hidden; }
.title_LV2 span { padding: 0 1rem; max-width: 90%; }

.title_LV3 { position: relative; background-color: #fee7e5; color: #d12a1f; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; font-size: 1.8rem; font-weight: normal; padding: 1.0rem 0 1.0rem 3.0rem; text-indent: -2.7rem; margin-bottom: 2rem; overflow: hidden; }
.title_LV3::before { content: '\e807'; position: absolute; top: 0; left: 2.8rem; color: #e15147; font-size: 4.4rem; font-family: 'fontello'; }
.title_LV3 span { padding: 0 1rem 0 34px; max-width: 90%; }

.title_LV4 { position: relative; background-color: #e3effb; color: #313131; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; font-size: 1.6rem; font-weight: normal; padding: .9rem 0; margin-bottom: 2rem; overflow: hidden; }
.title_LV4::before { content: '\e807'; position: absolute; top: 0; left: -6px; color: #9cc1e9; font-size: 4.4rem; font-family: 'fontello'; }
.title_LV4 span { padding: 0 1rem 0 34px; max-width: 90%; }

.title_LV5 { position: relative; background-color: #fff; color: #313131; font-family: "游明朝", "YuMincho", "游明朝体", "YuMincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif; font-size: 1.6rem; font-weight: normal; padding: .9rem 0; margin-bottom: 2rem; overflow: hidden; }
.title_LV5::before { content: '\e807'; position: absolute; top: 0; left: -9px; color: #b5b5b5; font-size: 4.4rem; font-family: 'fontello'; }
.title_LV5 span { padding: 0 1rem 0 34px; max-width: 90%; }

p { font-size: 1.4rem; margin: 0 0 2rem 0; line-height: 140%; }

.bold { font-weight: bold; }

@media screen and (min-width: 768px) { h1 { margin: 0; }
  .title_LV2 { font-size: 2.5rem; line-height: 160%; margin: 0 0 20px 22px; }
  .title_LV2::before { left: -35px; }
  .title_LV2.top::after { content: ''; position: absolute; top: 50%; right: 0px; background: url(../images/logo_02.png) no-repeat; width: 208px; height: 18px; margin-top: -9px; }
  .title_LV3 { font-size: 2.4rem; padding: 1.0rem 0 1.0rem 3.0rem; text-indent: -2.7rem; }
  .title_LV3::before { left: 2.8rem; }
  .title_LV4 { font-size: 2.2rem; }
  .title_LV5 { font-size: 2rem; }
  p { font-size: 1.6rem; line-height: 160%; } }
/*----------------------------------------------------------- 医師紹介
----------------------------------------------------------- */
.doctor_name { text-align: right; }

/*----------------------------------------------------------- 診療時間・アクセス
----------------------------------------------------------- */
.access_notice { padding: 1rem; box-sizing: border-box; height: auto; width: 100%; margin: 2rem auto 0 auto; box-sizing: border-box; border: #ffb821 2px solid; border-radius: 0.5rem; }
.access_notice p { margin: 0; }
.access_notice p span { font-weight: bold; display: block; margin: 0 0 1rem 0; }

iframe.access_map { width: 100%; height: 500px; margin: 2rem auto 1rem auto; display: block; }

.access_guide figure { text-align: center; }
.access_guide figure img { width: 80%; }
.access_guide figure figcaption { font-size: 1.4rem; text-align: left; width: 80%; margin: 1rem auto 3rem auto; }

.access_notice2 { margin: 0.6rem 0 1rem 0; font-size: 2.4rem; font-weight: bold; display: inline-block; padding: 0 1rem; background: linear-gradient(transparent 60%, #fff4b8 0%); color: #107a60; }

.access_root_text { font-size: 1.4rem; font-weight: bold; margin: 1rem 0; }

#access1, #access2, #access3, #access4 { margin: 0 0 4rem 0; }

@media screen and (min-width: 768px) { .access_guide { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .access_guide figure { text-align: center; }
  .access_guide figure img { width: 380px; }
  .access_guide figure figcaption { font-size: 1.6rem; text-align: left; width: 380px; margin: 1rem auto 3rem auto; }
  .access_notice2 { margin: 1rem 0 2rem 0; font-size: 3.2rem; line-height: 160%; background: linear-gradient(transparent 60%, #fff4b8 0%); font-weight: bold; display: inline; padding: 0 1rem; color: #107a60; }
  .access_root_text { font-size: 1.6rem; font-weight: bold; margin: 1rem 0; }
  #access1, #access2, #access3, #access4 { margin: 0 0 60px 0; } }
/*----------------------------------------------------------- クリニック紹介
----------------------------------------------------------- */
#clinicslide { margin-bottom: 3rem; }
#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; }

@media screen and (min-width: 768px) { #clinicslide { margin-bottom: 8rem; } }
.device { font-size: 1.4rem; }
.device li { list-style: none; text-align: center; margin: 0 0 2rem; }
.device li img { display: block; margin: 0 auto 1.0rem; max-width: 80%; height: auto; }

@media screen and (min-width: 768px) { .device { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.6rem; }
  .device li { width: 48%; margin-bottom: 2rem; }
  .device li img { width: 100%; max-width: 100%; margin-bottom: 1rem; } }
/*----------------------------------------------------------- 診療内容
----------------------------------------------------------- */
.link_text { text-align: right; color: #020202; font-size: 1.4rem; }

@media screen and (min-width: 768px) { .link_text { text-align: right; color: #020202; font-size: 1.6rem; } }
/* -----------------------------------------------------------
　プラセンタ治療
----------------------------------------------------------- */
table.placenta_table { padding: 0px; vertical-align: middle; width: 100%; margin: 0 auto; text-align: center; border-collapse: collapse; box-sizing: border-box; border: none; }
table.placenta_table tr { margin: 0px; padding: 0px; vertical-align: middle; }
table.placenta_table tr th { background-color: #0357a8; padding: 1rem; text-align: left; font-weight: normal; color: #ffffff; font-size: 1.4rem; vertical-align: middle; box-sizing: border-box; display: block; }
table.placenta_table tr td { text-align: left; padding: 1rem; font-size: 1.4rem; vertical-align: middle; box-sizing: border-box; background-color: #ffffff; border: #0357a8 1px solid; color: #020202; display: block; }

@media screen and (min-width: 768px) { table.placenta_table { padding: 0px; vertical-align: middle; width: 100%; margin: 0 auto; text-align: center; border-collapse: collapse; box-sizing: border-box; border: none; }
  table.placenta_table tr { margin: 0px; padding: 0px; vertical-align: middle; }
  table.placenta_table tr th { background-color: #0357a8; border: #ffffff 1px solid; padding: 1rem; text-align: left; font-weight: normal; color: #ffffff; font-size: 1.4rem; vertical-align: middle; box-sizing: border-box; display: table-cell; }
  table.placenta_table tr td { text-align: left; padding: 1rem; font-size: 1.4rem; vertical-align: middle; box-sizing: border-box; background-color: #ffffff; border: #0357a8 1px solid; color: #020202; display: table-cell; } }
/* -----------------------------------------------------------
　院長紹介
----------------------------------------------------------- */
.introduction_img { text-align: center; }
.introduction_img img { width: 100%; height: auto; margin-bottom: 2rem; }
.introduction_img p { text-align: center; }

@media screen and (min-width: 768px) { .introduction_txt { float: left; width: 500px; }
  .introduction_img { float: right; }
  .introduction_img img { width: 300px; } }
.career { font-size: 1.4rem; line-height: 1.5; }
.career th { font-weight: normal; width: 75px; text-align: left; }

@media screen and (min-width: 768px) { .career { font-size: 1.6rem; } }
/*----------------------------------------------------------- 診療時間・アクセス
----------------------------------------------------------- */
.accessmap { width: 100%; height: 500px; margin: 0 auto 4rem; }

@media screen and (min-width: 768px) { .accessmap { height: 600px; margin: 2rem auto 4rem; } }
