@charset "UTF-8";
/* =======================================================================
 共通項目 
======================================================================= */
/*汎用モジュール*/
/* ----------------------------------------------------------------------------------
モジュール　_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; }

/* 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*/
/*文字SP*/
/*文字PC*/
/*基本フォント*/
/*
$bace_font: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Arial, sans-serif;
*/
/*游明朝*/
/*Mandali*/
/*Pinyon Script*/
/*基本文字色*/
/*基本背景色PC*/
/*白*/
/*緑*/
/*オレンジ色*/
/*緑2*/
/*オレンジ色2*/
/*緑3*/
/*クリーム色*/
/*薄緑色*/
/*緑3*/
/*クリーム色2*/
/*オレンジ色3*/
/*オレンジ色4*/
/*緑4*/
/*緑5*/
/*オレンジ色5*/
/*薄緑*/
/*緑6*/
/*緑7*/
/*緑8*/
/*青紫*/
/*グレイ*/
/*ハンバーガー*/
.drawr { display: none; position: absolute; top: 20vw; width: 100%; padding: 0; margin: 0 auto; height: auto; z-index: 999999; background-color: #009e21; border-top: #ffffff 1px solid; }
.drawr ul.hbg { list-style-type: none; }
.drawr ul.hbg li { width: 100%; text-align: center; }
.drawr ul.hbg li a { color: #ffffff; font-size: 1.4rem; text-decoration: none; padding: 1rem 0; display: block; border-bottom: #ffffff 1px solid; box-sizing: border-box; letter-spacing: 0.05em; }
.drawr ul.hbg li ul { display: none; }
.drawr ul.hbg li ul li { background-color: #f6ab00; }
.drawr ul.hbg li ul li a i { display: none; }
.drawr ul.hbg li ul.open_nav { display: block; }

.openNav { display: block; }

@media screen and (min-width: 768px), print { .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 { display: flex; align-items: center; justify-content: center; width: 16%; max-width: 55px; position: absolute; cursor: pointer; right: 2%; top: 1vw; padding: 0 0 0.6rem 0; background-color: #009e21; border: #009e21 1px solid; }

/*アサイド*/
aside { display: none; }

@media screen and (min-width: 768px), print { aside { display: block; width: 244px; }
  aside p.aside_title { width: 244px; height: 61px; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; font-size: 2.6rem; font-family: 'KosugiMaru'; background: url(../images/aside_title_bg.jpg) no-repeat; background-position: left bottom; background-color: #c6eab2; color: #46793a; margin: 0 0 2px 0; }
  aside ul.aside_list { list-style-type: none; }
  aside ul.aside_list li { width: 244px; height: 56px; margin: 0 0 2px 0; box-sizing: border-box; }
  aside ul.aside_list li a { width: 244px; height: 56px; background-color: #ffffff; display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; margin: 0; text-decoration: none; font-size: 1.7rem; font-weight: bold; color: #009e21; padding: 0 0 0 7px; box-sizing: border-box; white-space: nowrap; }
  aside ul.aside_list li a span { width: 34px; height: 34px; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; background-color: #fff9b3; color: #009e21; border-radius: 50%; margin: 0 9px 0 0; }
  aside ul.aside_list li a span i { color: #009e21; font-size: 2.2rem; }
  aside ul.aside_list li a:hover { transition: all 0.3s ease 0s; background-color: #f6ab00; color: #ffffff; }
  aside div { width: 244px; height: 41px; background: url(../images/aside_title_bg2.jpg) no-repeat; background-position: right bottom; background-color: #c6eab2; margin: 0 0 21px 0; }
  aside a.staff_bana { background: url(../images/aside_bana_bg.jpg) no-repeat; background-size: cover; display: block; width: 244px; height: 130px; text-decoration: none; position: relative; }
  aside a.staff_bana span { position: absolute; top: 40px; left: 136px; font-size: 2.4rem; color: #ffffff; line-height: 130%; font-family: 'KosugiMaru'; }
  aside a.staff_bana:hover { transition: all 0.3s ease 0s; background: url(../images/aside_bana_bg_hover.jpg) no-repeat; background-size: cover; }
  aside .bnr a:hover { opacity: 0.8; } }
/*診療時間*/
/* -----------------------------------------------------------
　診療時間
----------------------------------------------------------- */
table.timetable { padding: 0; margin: 0 auto; vertical-align: middle; width: 100%; text-align: center; border-collapse: collapse; box-sizing: border-box; line-height: 140%; }
table.timetable tr { box-sizing: border-box; }
table.timetable tr th { width: auto; box-sizing: border-box; font-weight: normal; font-size: 1rem; padding: 0.8rem 0; vertical-align: middle; color: #ffffff; background-color: #009e21; border-right: #ffffff 1px solid; width: 10%; }
table.timetable tr th.time { width: 28%; letter-spacing: 0.1em; }
table.timetable tr th.holiday { width: 12%; }
table.timetable tr th:last-child { border-right: none; }
table.timetable tr td { box-sizing: border-box; font-weight: normal; font-size: 1rem; padding: 10px 0; vertical-align: middle; color: #1b1b1b; background-color: #ffffff; border-bottom: #009e21 1px solid; border-right: #009e21 1px solid; }
table.timetable tr td:last-child { border-right: none; }
table.timetable tr td i { color: #fdd000; }
table.timetable tr td.sat { color: #009e21; }
table.timetable tr td.green_circle { color: #009e21; }

ul.notice_list { list-style-type: disc; width: 96%; margin: 0.6rem auto 0 auto; }
ul.notice_list li { color: #1b1b1b; font-size: 1.2rem; margin: 0 0 0.6rem 1.2rem; line-height: 130%; }
ul.notice_list li span { color: #009e21; }

.notice_time { color: #1b1b1b; font-size: 1.2rem; margin: 0.6rem 0 0 0; width: 96%; line-height: 140%; }
.notice_time span { color: #009e21; }

.low_time_table table.timetable { width: 100%; }

@media screen and (min-width: 768px), print { table.timetable { padding: 0; margin: 0 auto; vertical-align: middle; width: 526px; text-align: center; border-collapse: collapse; box-sizing: border-box; line-height: 140%; }
  table.timetable tr { box-sizing: border-box; }
  table.timetable tr th { width: auto; box-sizing: border-box; font-weight: normal; font-size: 1.8rem; padding: 0; vertical-align: middle; color: #ffffff; background-color: #009e21; border-right: #ffffff 1px solid; width: 50px; height: 39px; }
  table.timetable tr th.time { width: 180px; letter-spacing: 0.1em; }
  table.timetable tr th.holiday { width: 50px; }
  table.timetable tr th:last-child { border-right: none; }
  table.timetable tr td { box-sizing: border-box; font-weight: normal; font-size: 1.8rem; padding: 0; vertical-align: middle; color: #1b1b1b; background-color: #ffffff; border-bottom: #009e21 1px solid; border-right: #009e21 1px solid; height: 43px; }
  table.timetable tr td:last-child { border-right: none; }
  table.timetable tr td i { color: #fdd000; }
  ul.notice_list { list-style-type: disc; width: 100%; margin: 12px 0 0 0; }
  ul.notice_list li { color: #1b1b1b; font-size: 1.8rem; margin: 0 0 6px 25px; line-height: 130%; }
  .notice_time { color: #1b1b1b; font-size: 1.8rem; margin: 6px 0 0 0; width: 100%; line-height: 160%; }
  .low_time_table table.timetable { width: 100%; } }
table.tbl01 { padding: 0; margin: 0 auto; vertical-align: middle; width: 100%; text-align: center; border-collapse: collapse; box-sizing: border-box; line-height: 140%; border-top: #009e21 1px solid; border-left: #009e21 1px solid; }
table.tbl01 tr { box-sizing: border-box; }
table.tbl01 tr td { box-sizing: border-box; font-weight: normal; padding: 10px 0; vertical-align: middle; color: #1b1b1b; background-color: #ffffff; border-bottom: #009e21 1px solid; border-right: #009e21 1px solid; font-size: 1.2rem; }

@media screen and (min-width: 768px), print { table.tbl01 { padding: 0; margin: 0 auto; vertical-align: middle; width: 100%; text-align: center; border-collapse: collapse; box-sizing: border-box; line-height: 140%; border-top: #009e21 1px solid; border-left: #009e21 1px solid; }
  table.tbl01 tr { box-sizing: border-box; }
  table.tbl01 tr td { box-sizing: border-box; font-weight: normal; padding: 10px 0; vertical-align: middle; color: #1b1b1b; background-color: #ffffff; border-bottom: #009e21 1px solid; border-right: #009e21 1px solid; font-size: 1.6rem; } }
/*見出し*/
h1 { margin: 0; }

h2.general { color: #ff9600; font-size: 2.2rem; font-weight: normal; font-family: 'KosugiMaru'; line-height: 120%; margin: 3rem 0 1rem 0; background: url(../images/h2_icon.png), url(../images/h2_bg.jpg); background-repeat: no-repeat,no-repeat; background-position: left 6vw center,left bottom; background-color: #fff1b6; box-sizing: border-box; padding: 2vw 2vw 2vw 15vw; min-height: 61px; display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-align-items: center; align-items: center; }
h2.first { margin: 0 0 1rem 0; }

h3 { background-color: #009e21; color: #ffffff; padding: 0.6rem 0.6rem 0.6rem 2rem; box-sizing: border-box; font-size: 1.7rem; font-weight: normal; font-family: 'KosugiMaru'; margin: 2.5rem 0 1rem 0; line-height: 120%; }
h3.first { margin: 0 0 1rem 0; }

h4 { background-color: #d3f2c2; color: #46793a; padding: 0.5rem 0.5rem 0.5rem 2rem; box-sizing: border-box; font-size: 1.6rem; font-weight: normal; margin: 2.5rem 0 1rem 0; line-height: 120%; }
h4 span { font-weight: bold; }
h4.first { margin: 0 0 1rem 0; }

h5 { color: #009e21; padding: 0; box-sizing: border-box; font-size: 1.5rem; font-weight: bold; margin: 2.5rem 0 1rem 0; padding: 0 0 0.3rem 0; line-height: 120%; border-bottom: #009e21 2px solid; }
h5.first { margin: 0 0 1rem 0; }

h6 { color: #1b1b1b; padding: 0; box-sizing: border-box; font-size: 1.5rem; font-weight: bold; margin: 2.5rem 0 1rem 0; padding: 0 0 0.3rem 0; line-height: 120%; border-bottom: #1b1b1b 2px dotted; }
h6.first { margin: 0 0 1rem 0; }

p { font-size: 1.2rem; margin: 0 0 2rem 0; line-height: 140%; }

@media screen and (min-width: 768px), print { h1 { margin: 0; }
  h2.general { color: #ff9600; font-size: 2.6rem; font-weight: normal; font-family: 'KosugiMaru'; line-height: 120%; margin: 44px 0 24px 0; background: url(../images/h2_icon.png), url(../images/h2_bg.jpg); background-repeat: no-repeat,no-repeat; background-position: left 36px center,left bottom; background-color: #fff1b6; box-sizing: border-box; padding: 12px 12px 12px 78px; min-height: 61px; display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-align-items: center; align-items: center; }
  h2.first { margin: 0 0 24px 0; }
  h3 { background: url(../images/icon_h3.png) no-repeat; background-position: left 18px top 14px; background-color: #009e21; color: #ffffff; padding: 12px 12px 12px 26px; box-sizing: border-box; font-size: 2.4rem; font-weight: normal; font-family: 'KosugiMaru'; margin: 30px 0 18px 0; line-height: 120%; }
  h3.first { margin: 0 0 16px 0; }
  h4 { background-color: #d3f2c2; color: #46793a; padding: 10px 10px 10px 26px; box-sizing: border-box; font-size: 2.2rem; font-weight: normal; margin: 30px 0 18px 0; line-height: 120%; }
  h4 span { font-weight: bold; }
  h4.first { margin: 0 0 20px 0; }
  h5 { color: #009e21; padding: 0; box-sizing: border-box; font-size: 2rem; font-weight: bold; margin: 30px 0 18px 0; padding: 0 0 5px 0; line-height: 120%; border-bottom: #009e21 2px solid; }
  h5.first { margin: 0 0 20px 0; }
  h6 { color: #1b1b1b; padding: 0; box-sizing: border-box; font-size: 2rem; font-weight: bold; margin: 30px 0 18px 0; padding: 0 0 5px 0; line-height: 120%; border-bottom: #1b1b1b 2px dotted; }
  h6.first { margin: 0 0 18px 0; }
  p { font-size: 1.6rem; margin: 0 0 2rem 0; line-height: 160%; } }
/*下層*/
/*文中リンク*/
.text_link { color: #009e21; font-weight: bold; }

/*太文字*/
.text_bold { font-weight: bold; }

/*矢印*/
.arrow { width: 0; height: 0; border-left: 60px solid transparent; border-right: 60px solid transparent; border-top: 30px solid #009e21; text-align: center; display: block; margin: 30px auto; }

/*ボタンリンク*/
a.link_btn { text-decoration: none; width: 80%; margin: 0 auto; text-align: center; background-color: #ff7200; color: #ffffff; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; font-size: 1.2rem; padding: 1rem 0; border-radius: 2rem; }
a.link_btn i { color: #fff1b6; }

/*ボタンリンク*/
a.link_btn2 { text-decoration: none; width: 80%; margin: 0; text-align: center; background-color: #ff7200; color: #ffffff; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; font-size: 1.2rem; padding: 1rem 0; border-radius: 2rem; }
a.link_btn2 i { color: #fff1b6; }

/*左右並べ*/
.low_tel { margin: 2rem 0 0 0; }
.low_tel i { margin: 0 1rem 0 0; }
.low_tel a { text-decoration: none; color: #1b1b1b; font-size: 2rem; }

.white_box { background-color: #ffffff; padding: 1rem; box-sizing: border-box; margin: 0 0 1rem 0; }

@media screen and (min-width: 768px), print { /*文中リンク*/
  .text_link { color: #009e21; font-weight: bold; }
  .text_link:hover { opacity: 0.6; }
  /*太文字*/
  .text_bold { font-weight: bold; }
  /*矢印*/
  .arrow { width: 0; height: 0; border-left: 60px solid transparent; border-right: 60px solid transparent; border-top: 30px solid #009e21; text-align: center; display: block; margin: 30px auto; }
  a.link_btn { text-decoration: none; width: 300px; margin: 0 auto; text-align: center; background-color: #ff7200; color: #ffffff; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; font-size: 1.6rem; padding: 12px 0; border-radius: 2rem; }
  a.link_btn i { color: #fff1b6; }
  a.link_btn:hover { background-color: #fff1b6; color: #1b1b1b; }
  a.link_btn:hover i { color: #ff7200; }
  a.link_btn2 { text-decoration: none; width: 300px; margin: 0; text-align: center; background-color: #ff7200; color: #ffffff; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; font-size: 1.6rem; padding: 12px 0; border-radius: 2rem; }
  a.link_btn2 i { color: #fff1b6; }
  a.link_btn2:hover { background-color: #fff1b6; color: #1b1b1b; }
  a.link_btn2:hover i { color: #ff7200; }
  /*左右並べ*/
  .two_box { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; }
  .two_box section { width: 48%; }
  .low_tel i { margin: 0 1rem 0 0; }
  .low_tel a { text-decoration: none; color: #1b1b1b; font-size: 1.6rem; }
  .low_tel span { color: #1b1b1b; font-size: 1.6rem; }
  .white_box { background-color: #ffffff; padding: 20px; box-sizing: border-box; margin: 0 0 20px 0; } }
/* ----------------------------------------------------------- 院長紹介
----------------------------------------------------------- */
/* ----------------------------------------------------------- クリニック紹介
----------------------------------------------------------- */
.item_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; }
.item_list figure { width: 48%; margin: 0 0 2rem 0; }
.item_list figure img { width: 100%; }
.item_list figure figcaption { font-size: 1.2rem; line-height: 160%; margin: 0 0 15px 0; }
.item_list figure.small img { width: 70%; }
.item_list figure.small figcaption { width: 70%; font-size: 1.2rem; line-height: 160%; margin: 0 0 15px 0; }

.slider-pro p.sp-layer { font-size: 2.6rem !important; }

@media screen and (min-width: 768px), print { .item_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; }
  .item_list figure { width: 30%; margin: 0 0 2rem 0; }
  .item_list figure img { width: 100%; }
  .item_list figure figcaption { font-size: 1.6rem; line-height: 160%; margin: 0 0 15px 0; }
  .item_list figure.small img { width: 55%; }
  .item_list figure.small figcaption { width: 55%; font-size: 1.6rem; line-height: 160%; margin: 0 0 15px 0; }
  .slider-pro p.sp-layer { font-size: 2.4rem !important; } }
/* ----------------------------------------------------------- アクセス
----------------------------------------------------------- */
.access_timetable table.timetable { width: 100%; margin: 0 auto; }

.accessmap { width: 100%; height: 500px; }

@media screen and (min-width: 768px), print { .access_timetable table.timetable { width: 1080px; margin: 0 auto; }
  .access_timetable table.timetable tr th { font-size: 1.6rem; padding: 16px 0; }
  .access_timetable table.timetable tr td { font-size: 1.8rem; }
  .access_timetable table.timetable tr td.lb { width: 160px; }
  .accessmap { width: 100%; height: 500px; } }
/* ----------------------------------------------------------- 下層
----------------------------------------------------------- */
.low_table { padding: 0; margin: 0 auto; width: 100%; border-collapse: collapse; box-sizing: border-box; line-height: 140%; font-size: 1.2rem; }
.low_table tr th { text-align: center; border: #6dba44 1px solid; background-color: #e3f8d7; padding: 0.6rem; vertical-align: middle; }
.low_table tr th.left { width: 35%; }
.low_table tr th.right { width: 65%; }
.low_table tr td { text-align: left; border: #6dba44 1px solid; background-color: #fffee6; padding: 0.6rem; vertical-align: middle; }

.content_frame .content_box { width: 96%; margin: 0 auto 2rem auto; padding: 0 0 2rem 0; border: #009e21 1px solid; box-sizing: border-box; border-radius: 0.5rem; }
.content_frame .content_box p { background-color: #009e21; color: #ffffff; font-size: 2rem; font-weight: bold; font-family: 'KosugiMaru'; text-align: center; padding: 1rem 0; border-top-left-radius: 0.5rem; border-top-right-radius: 0.5rem; }
.content_frame .content_box ul.list_maru_two { padding: 0; margin: 0 auto; width: 90%; 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; }
.content_frame .content_box ul.list_maru_two li { width: 48%; line-height: 130%; font-size: 1.2rem; list-style-type: none; margin: 0 0 10px 0; box-sizing: border-box; background: url(../images/maru.png) no-repeat; background-position: left 0.4rem top 0.4rem; background-size: 1rem; padding: 0 0 0 1.8rem; line-height: 140%; }

ul.content_list { list-style-type: none; }
ul.content_list li { width: 96%; margin: 0 auto 2rem auto; padding: 2rem; border: #009e21 1px solid; box-sizing: border-box; border-radius: 0.5rem; font-size: 2rem; color: #009e21; line-height: 140%; text-align: center; font-weight: bold; font-family: 'KosugiMaru'; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: column; flex-direction: column; }

.flow_box p.flow_title { background-color: #e3f8d7; text-align: center; padding: 1rem 0; margin: 0 0 0.4rem 0; border-radius: 0.5rem; }
.flow_box p.flow_title.last { margin: 0 0 1rem 0; }
.flow_box p.flow_title span.t1 { color: #1b1b1b; font-size: 1.8rem; font-weight: normal; font-family: 'KosugiMaru'; line-height: 120%; }
.flow_box p.flow_title span.t2 { background-color: #fff1b6; color: #1b1b1b; font-size: 1.2rem; font-weight: normal; font-family: 'KosugiMaru'; line-height: 120%; padding: 0.8rem; border-radius: 0.5rem; width: 50%; margin: 0.6rem auto 0 auto; text-align: center; display: block; }

@media screen and (min-width: 768px), print { .low_table { padding: 0; margin: 0 auto; width: 100%; border-collapse: collapse; box-sizing: border-box; line-height: 140%; font-size: 1.6rem; }
  .low_table tr th { text-align: center; border: #6dba44 1px solid; background-color: #e3f8d7; padding: 8px 12px; vertical-align: middle; }
  .low_table tr th.left { width: 35%; }
  .low_table tr th.right { width: 65%; }
  .low_table tr td { text-align: left; border: #6dba44 1px solid; background-color: #fffee6; padding: 8px 12px; vertical-align: middle; }
  .content_frame { 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; width: 100%; }
  .content_frame .content_box { width: 390px; margin: 0 0 2rem 0; padding: 0 0 15px 0; border: #009e21 1px solid; box-sizing: border-box; border-radius: 0.5rem; }
  .content_frame .content_box p { background-color: #009e21; color: #ffffff; font-size: 2.6rem; font-weight: bold; font-family: 'KosugiMaru'; text-align: center; padding: 10px 0; border-top-left-radius: 0.5rem; border-top-right-radius: 0.5rem; }
  .content_frame .content_box ul.list_maru_two { padding: 0; margin: 0 auto; width: 90%; 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; }
  .content_frame .content_box ul.list_maru_two li { width: 48%; line-height: 130%; font-size: 1.6rem; list-style-type: none; margin: 0 0 15px 0; box-sizing: border-box; background: url(../images/maru.png) no-repeat; background-position: left 5px top 6px; background-size: 11px; padding: 0 0 0 25px; line-height: 140%; }
  ul.content_list { list-style-type: none; width: 100%; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: nowrap; flex-wrap: nowrap; }
  ul.content_list li { width: 31%; margin: 0; padding: 15px; border: #009e21 1px solid; box-sizing: border-box; border-radius: 0.5rem; font-size: 2.2rem; color: #009e21; line-height: 140%; text-align: center; font-weight: bold; font-family: 'KosugiMaru'; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: column; flex-direction: column; }
  .flow_box p.flow_title { background-color: #e3f8d7; text-align: center; padding: 20px 0; margin: 0 0 0.4rem 0; border-radius: 0.5rem; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: nowrap; flex-wrap: nowrap; }
  .flow_box p.flow_title.last { margin: 0 0 1rem 0; }
  .flow_box p.flow_title span.t1 { color: #1b1b1b; font-size: 2.2rem; font-weight: normal; font-family: 'KosugiMaru'; line-height: 120%; margin: 0 20px 0 0; display: block; }
  .flow_box p.flow_title span.t2 { background-color: #fff1b6; color: #1b1b1b; font-size: 1.6rem; font-weight: normal; font-family: 'KosugiMaru'; line-height: 120%; padding: 15px 25px; border-radius: 0.5rem; width: auto; margin: 0; text-align: center; display: inline-block; } }
/*リスト*/
/* -----------------------------------------------------------
　リスト
----------------------------------------------------------- */
/*標準*/
ul.list_normal { line-height: 120%; font-size: 1.2rem; list-style-type: disc; margin: 0; }
ul.list_normal li { margin: 0 0 2rem 1.8rem; padding: 0; }

/*画像●*/
ul.list_maru { padding: 0; margin: 0 0 2rem 0; }
ul.list_maru li { line-height: 130%; font-size: 1.2rem; list-style-type: none; margin: 0 0 1rem 0; box-sizing: border-box; background: url(../images/maru.png) no-repeat; background-position: left 0.4rem top 0.4rem; background-size: 11px; padding: 0 0 0 1.8rem; line-height: 140%; }
ul.list_maru li.aj { margin: 0 0 4rem 0; }
ul.list_maru li:last-child { margin: 0; }

ul.list_maru_two { padding: 0; margin: 0; }
ul.list_maru_two li { line-height: 130%; font-size: 1.2rem; list-style-type: none; margin: 0 0 2rem 0; box-sizing: border-box; background: url(../images/maru.png) no-repeat; background-position: left 0.4rem top 0.4rem; background-size: 1rem; padding: 0 0 0 1.8rem; line-height: 140%; }

/*なし*/
ul.list_none { line-height: 160%; font-size: 1.2rem; list-style-type: none; margin: 0; }
ul.list_none li { margin: 0 0 2rem 0; padding: 0 0 0 5px; }
ul.list_none li span { color: #fedc50; margin: 0 0.5rem 0 0; }

/*数値*/
ul.list_num { box-sizing: border-box; width: 100%; }
ul.list_num li { line-height: 130%; font-size: 1.2rem; list-style-type: decimal; margin: 0 0 2rem 2rem; box-sizing: border-box; width: 90%; }

/*英語*/
ul.list_alphabet { box-sizing: border-box; width: 100%; margin: 0 0 2rem 0; }
ul.list_alphabet li { line-height: 130%; font-size: 1.2rem; list-style-type: upper-latin; margin: 0 0 1.4rem 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.2rem; 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.2rem; list-style-type: disc; margin: 0 0 2rem 25px; }

@media screen and (min-width: 768px) { /*標準*/
  ul.list_normal { line-height: 160%; font-size: 1.6rem; list-style-type: disc; margin: 0 0 1rem 0; }
  ul.list_normal li { margin: 0 0 0 25px; padding: 0; }
  /*画像●*/
  ul.list_maru { padding: 0; margin: 0; }
  ul.list_maru li { line-height: 100%; font-size: 1.6rem; list-style-type: none; margin: 0 0 20px 0; box-sizing: border-box; background: url(../images/maru.png) no-repeat; background-position: left 5px top 6px; background-size: 11px; padding: 0 0 0 25px; line-height: 140%; }
  ul.list_maru li.aj { margin: 0 0 40px 0; }
  ul.list_maru li:last-child { margin: 0 0 20px 0; }
  ul.list_maru_two { padding: 0; margin: 0; 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; }
  ul.list_maru_two li { width: 48%; line-height: 100%; font-size: 1.6rem; list-style-type: none; margin: 0 0 20px 0; box-sizing: border-box; background: url(../images/maru.png) no-repeat; background-position: left 5px top 6px; background-size: 11px; padding: 0 0 0 25px; 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_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_alphabet { box-sizing: border-box; width: 100%; }
  ul.list_alphabet li { line-height: 130%; font-size: 1.6rem; list-style-type: upper-latin; margin: 0 0 10px 25px; 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; } }
/* -----------------------------------------------------------
　定義リスト
----------------------------------------------------------- */
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.2rem; box-sizing: border-box; margin: 0 0 0 0; line-height: 140%; width: 100%; }
dl.bio_list dt { width: 20%; margin: 0 0 0 0; }
dl.bio_list dd { width: 75%; 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: 1080px; margin: 0; }
  dl.bio_list dt { width: 80px; margin: 0 0 10px 0; font-weight: normal; }
  dl.bio_list dd { width: 1000px; margin: 0 0 10px 0; } }
/*画像*/
/* -----------------------------------------------------------
　イメージ
----------------------------------------------------------- */
.img_right { margin: 0 0 10px 0; text-align: center; }
.img_right 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: 0 0 10px 0; text-align: center; }
.img_center img { width: 100%; height: auto; }
.img_center img.-w80 { width: 80%; }

/*画像右*/
.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: 70%; 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; }

.doctor_name2 { text-align: right; }

@media screen and (min-width: 768px), print { .img_right { float: right; margin: 0 0 10px 20px; }
  .img_right img { width: 300px; height: auto; }
  .img_doctor { float: right; margin: 0 0 10px 10px; }
  .img_doctor a:hover { opacity: 0.6; }
  .img_doctor img { width: 300px; height: auto; }
  .img_center { float: none; margin: 0 0 10px 10px; 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: space-between; -webkit-flex-direction: row; flex-direction: row; }
  .img_two img { width: 540px; 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; } }
/* ----------------------------------------------------------- 特殊フォント
----------------------------------------------------------- */
@font-face { font-family: 'KosugiMaru'; src: url(../font/KosugiMaru-Regular.ttf); font-weight: normal; font-style: normal; }
@font-face { font-family: 'Mandali'; src: url(../font/Mandali-Regular.ttf); font-weight: normal; font-style: normal; }
/* ----------------------------------------------------------- フォントサイズ基本
----------------------------------------------------------- */
html { font-size: calc( 100vw / 32 ); overflow-y: auto; font-family: "メイリオ", Meiryo, "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Arial, sans-serif; color: #1b1b1b; background-color: #ffffff; padding: 0 0 17vw 0; }

@media screen and (min-width: 768px), print { html { font-size: 62.5%; overflow-y: scroll; font-family: "メイリオ", Meiryo, "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Arial, sans-serif; color: #1b1b1b; background-color: #ffffff; padding: 0; } }
/* ----------------------------------------------------------- 構成
----------------------------------------------------------- */
body { position: relative; width: 100%; margin: 0 auto; }

section { height: auto; overflow: hidden; margin: 3rem 0 0 0; }
section.first { margin: 0 0 0 0; }
section.low { background-color: rgba(255, 255, 255, 0.7); padding: 1.5rem; box-sizing: border-box; margin: 4rem 0 0 0; }
section.first { margin: 0 0 0 0; }

.sentence { height: auto; overflow: hidden; }

.pc_none { display: block; }

.sp_none { display: none; }

.pc_none_span { display: inline; }

.sp_none_span { display: none; }

.text_bold { font-weight: bold; }

@media screen and (min-width: 768px), print { body { position: relative; z-index: 0; overflow: hidden; min-width: 1280px; }
  section { height: auto; overflow: hidden; margin: 40px 0 0 0; }
  section.low { background-color: rgba(255, 255, 255, 0.7); padding: 18px 20px; box-sizing: border-box; margin: 75px 0 0 0; }
  section.first { margin: 0 0 0 0; }
  .sentence { height: auto; min-height: 243px; overflow: hidden; }
  .pc_none { display: none; }
  .sp_none { display: block; }
  .pc_none_span { display: none; }
  .sp_none_span { display: inline; } }
/* -----------------------------------------------------------
　枠
----------------------------------------------------------- */
article { height: auto; width: 100%; margin: 0 auto 1rem auto; padding: 0; background-color: #fffee6; }

.wrapper { height: auto; width: 96%; margin: 1rem auto 2rem auto; padding: 0; }

.wrapper_low { height: auto; width: 96%; margin: 1rem auto 2rem auto; padding: 0; }

.main { width: 100%; margin: 0 auto 3rem auto; padding: 0 0 0 0; }

@media screen and (min-width: 768px), print { article { height: auto; width: 100%; margin: 0 auto 0 auto; padding: 0 0 0 0; background-color: #fffee6; }
  .wrapper { height: auto; width: 1080px; margin: 36px auto 128px auto; padding: 0; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; }
  .wrapper_low { height: auto; width: 1080px; margin: 0 auto 128px auto; padding: 102px 0 0 0; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; }
  .main { width: 800px; margin: 0; padding: 0; } }
/* -----------------------------------------------------------
　ヘッダ
----------------------------------------------------------- */
header { display: block; height: auto; margin: 0 auto; }
header .head_frame { width: 100%; padding: 0 0 0 0; height: auto; /*医院情報*/ }
header .head_frame .head_logo { width: 76%; margin: 1vw 0 6vw 2%; box-sizing: border-box; padding: 2vw 0 0 0; }
header .head_frame .head_logo h1 a { display: block; margin: 0; }
header .head_frame .head_logo h1 a img { width: 100%; height: auto; }
header .head_frame .head_logo div a { display: block; margin: 0; }
header .head_frame .head_logo div a img { width: 100%; height: auto; }
header .head_frame .head_info .head_tel { color: #f6ab00; font-family: 'Mandali'; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; margin: 0 0 1rem 0; }
header .head_frame .head_info .head_tel i { font-size: 2rem; }
header .head_frame .head_info .head_tel span { font-size: 3rem; }
header .head_frame .head_info .head_tel a { font-size: 3rem; text-decoration: none; color: #f6ab00; font-family: 'Mandali'; }
header .head_frame .head_info .head_treatment { text-align: center; margin: 0 0 0.6rem 0; }
header .head_frame .head_info .head_treatment span { display: block; color: #ffffff; background-color: #009e21; width: 30%; height: 6vw; font-size: 1.2rem; margin: 0 auto 0.4rem auto; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; border-radius: 0.3rem; line-height: 120%; }
header .head_frame .head_info .head_address { text-align: center; font-size: 1.2rem; }
header .head_frame .head_info .head_address i { color: #009e21; }

@media screen and (min-width: 768px), print { header { display: block; width: 100%; height: 187px; margin: 0 auto; }
  header .head_frame { background: url(../images/header_bg.jpg) no-repeat; background-position: left bottom; width: 1430px; padding: 25px 0 0 0; height: 187px; margin: 0 auto; box-sizing: border-box; /*医院情報*/ }
  header .head_frame .head_logo { width: 636px; margin: 0 auto 7px auto; box-sizing: border-box; padding: 0 0 0 0; }
  header .head_frame .head_logo h1 a { display: block; margin: 0; }
  header .head_frame .head_logo h1 a img { width: 636px; height: auto; }
  header .head_frame .head_logo div a { display: block; margin: 0; }
  header .head_frame .head_logo div a img { width: 636px; height: auto; }
  header .head_frame .head_info { width: 1080px; margin: 0 auto; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-flex-direction: row; flex-direction: row; }
  header .head_frame .head_info .head_tel { color: #f6ab00; font-family: 'Mandali'; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; margin: 0 30px 0 0; font-weight: bold; font-size: 3rem; }
  header .head_frame .head_info .head_tel i { font-size: 3rem; margin: 0 5px 0 0; }
  header .head_frame .head_info .head_tel span { font-size: 3rem; }
  header .head_frame .head_info .head_tel a { font-size: 3rem; text-decoration: none; font-family: 'Mandali'; color: #f6ab00; }
  header .head_frame .head_info .head_treatment { text-align: center; margin: 0 0 0 0; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; }
  header .head_frame .head_info .head_treatment span { display: block; color: #ffffff; background-color: #009e21; width: 84px; height: 26px; font-size: 1.6rem; margin: 0 10px 0 0; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; border-radius: 0.5rem; line-height: 100%; }
  header .head_frame .head_info .head_address { text-align: center; font-size: 1.6rem; margin: 10px 0 0 30px; }
  header .head_frame .head_info .head_address i { color: #009e21; margin: 0 8px 0 0; } }
/* -----------------------------------------------------------
　メインナビ
----------------------------------------------------------- */
.main_nav_pc { display: none; }

@media screen and (min-width: 768px), print { .main_nav_pc { display: block; height: 60px; margin: 0; padding: 0; width: 100%; box-sizing: border-box; overflow: visible; position: relative; max-width: 2000px; background-color: #009e21; }
  .main_nav_pc nav { width: 1080px; height: 34px; margin: 0 auto; padding: 13px 0 0 0; box-sizing: border-box; }
  .main_nav_pc nav ul { list-style-type: none; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; align-items: center; width: 1080px; box-sizing: border-box; height: 34px; padding: 0; position: relative; }
  .main_nav_pc nav ul li { display: block; text-align: center; box-sizing: border-box; height: 34px; line-height: 120%; text-align: center; border-left: #ffffff 1px dashed; width: 154.3px; }
  .main_nav_pc nav ul li a { text-decoration: none; color: #ffffff; height: 34px; display: block; box-sizing: border-box; margin: 0; font-size: 1.5rem; font-weight: bold; line-height: 100%; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: column; flex-direction: column; width: 154.3px; }
  .main_nav_pc nav ul li a:hover { transition: all 0.3s ease 0s; background-color: #f6ab00; }
  .main_nav_pc nav ul li a i { display: none; }
  .main_nav_pc nav ul li:last-child { border-right: #ffffff 1px dashed; }
  .main_nav_pc nav ul li ul { display: none; width: 200px; height: 40px; margin: 192px 0 0 -23px; }
  .main_nav_pc nav ul li ul li { width: 100%; height: 40px; border-left: none; position: relative; z-index: 99999; }
  .main_nav_pc nav ul li ul li a { background-color: #009e21; height: 40px; width: 200px; }
  .main_nav_pc nav ul li ul li a i { display: none; }
  .main_nav_pc nav ul li ul li:last-child { border-right: none; }
  .main_nav_pc nav ul li.treatment:hover { cursor: pointer; cursor: hand; }
  .main_nav_pc nav ul.open_nav { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: column; flex-direction: column; } }
/* -----------------------------------------------------------
　キービジュアル
----------------------------------------------------------- */
.key_visual { background-size: cover; background-repeat: no-repeat; background-position: center top; height: 46vw; display: block; position: relative; z-index: 9999; }
.key_visual .key_on { height: 46vw; position: relative; width: 100%; }
.key_visual .key_on .catch_copy { position: absolute; top: 1vw; right: 2%; background: url(../images/KV_on.png) no-repeat; background-position: center center; background-size: cover; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; text-align: center; width: 45%; height: 44vw; }
.key_visual .key_on .catch_copy p { color: #006934; font-family: 'Mandali'; font-size: 1rem; font-weight: normal; margin: 0; }

.key_visual_low { background: url(../images/key_visual_low.jpg) no-repeat; background-size: cover; background-position: center top; height: 40vw; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-flex-direction: column; flex-direction: column; }
.key_visual_low h1 { color: #ffffff; font-weight: normal; font-size: 2.2rem; text-align: center; letter-spacing: 0.1em; }

@media screen and (min-width: 768px), print { .key_visual { background-size: cover; background-repeat: no-repeat; background-position: center top; height: 471px; width: 100%; display: block; position: relative; z-index: 9999; margin: 12px 0 0 0; }
  .key_visual .key_on { height: 471px; position: relative; width: 1124px; margin: 0 auto; }
  .key_visual .key_on .catch_copy { position: absolute; top: 48px; right: 0; background: url(../images/KV_on.png) no-repeat; background-position: center center; background-size: cover; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; text-align: center; width: 380px; height: 380px; }
  .key_visual .key_on .catch_copy p { color: #006934; font-family: 'Mandali'; font-size: 2.6rem; font-weight: normal; margin: 30px 0 0 0; }
  .key_visual_low { background: url(../images/key_visual_low.jpg) no-repeat; background-size: cover; background-position: center top; height: 235px; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-flex-direction: column; flex-direction: column; margin: 12px 0 0 0; }
  .key_visual_low h1 { color: #ffffff; font-weight: normal; font-size: 3.4rem; text-align: center; letter-spacing: 0.1em; } }
/* -----------------------------------------------------------
　トップ
----------------------------------------------------------- */
.top_info p { text-align: center; color: #53a428; font-size: 1.5rem; margin: 0 auto 0.4rem auto; padding: 1rem 0 0 0; font-family: 'KosugiMaru'; width: 96%; }
.top_info p span { color: #ff7200; font-size: 1.6rem; display: block; }
.top_info p.top_info_text { font-size: 1.2rem; color: #53a428; margin: 0 auto 1rem auto; text-align: left; }
.top_info a { display: block; width: 60%; height: 10vw; text-decoration: none; color: #ffffff; background-color: #009e21; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; font-size: 1.6rem; margin: 0 auto; border-radius: 3rem; font-family: 'KosugiMaru'; }
.top_info a i { font-size: 0.8rem; }

.top_bana { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-flex-direction: column; flex-direction: column; }
.top_bana figure { display: block; margin: 2rem auto 0 auto; width: 96%; }
.top_bana figure img { width: 100%; height: auto; }
.top_bana figure a { text-decoration: none; font-size: 1.2rem; font-weight: bold; color: #009e21; display: block; line-height: 140%; margin: 0.6rem 0 0 0; display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; }
.top_bana figure a span { color: #1b1b1b; font-weight: normal; }
.top_bana figure a i { color: #f6ab00; font-size: 0.8rem; margin: 0 2px 0 0; }
.top_bana .bnr_sp { text-align: center; margin-top: 1rem; }

@media screen and (min-width: 768px), print { .top_info p { text-align: center; color: #53a428; font-size: 3rem; margin: 0 0 0 0; padding: 24px 0 0 0; font-family: 'KosugiMaru'; width: auto; }
  .top_info p span { color: #ff7200; font-size: 3.4rem; display: block; margin: 0 30px 0 0; }
  .top_info p.top_info_text { font-size: 1.8rem; color: #53a428; margin: 0 auto 22px auto; text-align: center; padding: 0; }
  .top_info a { display: block; width: 310px; height: 61px; text-decoration: none; color: #ffffff; background-color: #009e21; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; font-size: 2.4rem; font-family: 'KosugiMaru'; margin: 0 auto; border-radius: 3rem; }
  .top_info a i { font-size: 0.8rem; margin: 0 10px 0 0; }
  .top_info a:hover { background-color: #f6ab00; transition: all 0.3s ease 0s; }
  .top_bana { 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; width: 1080px; margin: 0 auto 0 auto; padding: 70px 0 0 0; box-sizing: border-box; }
  .top_bana figure { display: block; margin: 0 0 0 0; width: 520px; }
  .top_bana figure img { width: 520px; height: auto; }
  .top_bana figure a { text-decoration: none; font-size: 2rem; font-weight: bold; color: #009e21; display: block; line-height: 140%; margin: 0.6rem 0 0 0; display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; }
  .top_bana figure a span { color: #1b1b1b; font-weight: normal; }
  .top_bana figure a i { color: #f6ab00; font-size: 1rem; margin: 0 2px 0 0; }
  .top_bana figure a:hover { opacity: 0.6; transition: all 0.3s ease 0s; }
  .top_bana .bnr_sp { display: none; } }
/* -----------------------------------------------------------
　お知らせ
----------------------------------------------------------- */
.notice_frame { box-sizing: border-box; margin: 4rem 0 0 0; }
.notice_frame .notice_box dl { overflow-y: scroll; height: auto; min-height: 60vw; box-sizing: border-box; background: url(../images/notice_bg.jpg) no-repeat; background-position: left top; background-color: #ffffff; padding: 1rem; border-bottom: #009e21 1px dashed; }
.notice_frame .notice_box dl dt { margin: 0 0 0 0; font-size: 1.4rem; box-sizing: border-box; font-weight: bold; letter-spacing: 0.1em; line-height: 120%; color: #006835; padding: 0 0 0.6rem 0.6rem; border-left: #6eb944 3px solid; }
.notice_frame .notice_box dl dd { color: #1b1b1b; margin: 0 0 2rem 0; padding: 0 0 0 0.6rem; box-sizing: border-box; font-size: 1.2rem; line-height: 110%; border-left: #6eb944 3px solid; }

@media screen and (min-width: 768px), print { .notice_frame { box-sizing: border-box; margin: 0; }
  .notice_frame .notice_box dl { overflow-y: scroll; height: auto; min-height: 242px; box-sizing: border-box; background: url(../images/notice_bg.jpg) no-repeat; background-position: left top; background-color: #ffffff; padding: 28px 17px 0 17px; border-bottom: #009e21 1px dashed; }
  .notice_frame .notice_box dl dt { margin: 0 0 0 0; font-size: 2rem; box-sizing: border-box; font-weight: bold; letter-spacing: 0.1em; line-height: 140%; color: #006835; padding: 0 0 14px 12px; border-left: #6eb944 3px solid; }
  .notice_frame .notice_box dl dd { color: #1b1b1b; margin: 0 0 35px 0; padding: 0 0 0 12px; box-sizing: border-box; font-size: 1.8rem; line-height: 140%; border-left: #6eb944 3px solid; } }
/*スマホ用スライドバー*/
@media screen and (max-width: 767px) { .notice_box dl::-webkit-scrollbar { width: 12px; background: #ffffff; }
  .notice_box dl::-webkit-scrollbar-track { -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3); border-radius: 10px; }
  .notice_box dl::-webkit-scrollbar-thumb { border-radius: 10px; -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.5); } }
/* -----------------------------------------------------------
　診療時間表
----------------------------------------------------------- */
.time_frame { margin: 4rem 0 0 0; }
.time_frame .time_box { background-color: #c6eab2; padding: 1rem 0.4rem 0.4rem 0.4rem; box-sizing: border-box; }
.time_frame .time_box table.timetable { width: 100%; }

@media screen and (min-width: 768px), print { .time_frame { margin: 62px 0 0 0; }
  .time_frame .time_box { background-color: #c6eab2; background: url(../images/index_timetable_bg2.jpg) no-repeat; background-position: center top; width: 800px; height: auto; padding: 0 0 20px 0; box-sizing: border-box; overflow: hidden; }
  .time_frame .time_box table.timetable { width: 526px; margin: 20px auto 0 auto; }
  .time_frame .time_box .notice_list { width: 526px; margin: 11px auto 0 auto; }
  .time_frame .time_box .notice_time { width: 526px; margin: 11px auto 0 auto; } }
/* -----------------------------------------------------------
　陶山医院の特長
----------------------------------------------------------- */
.feature_frame { margin: 4rem 0 0 0; padding: 0 0 0 0; }
.feature_frame .feature_box .feature_item { width: 100%; margin: 0 auto 2rem auto; position: relative; padding: 0 0 1rem 0; background-color: #e3f8d7; border-bottom-left-radius: 1rem; }
.feature_frame .feature_box .feature_item img { width: 100%; height: auto; }
.feature_frame .feature_box .feature_item .feature_item_num { font-size: 2rem; font-weight: bold; font-family: 'KosugiMaru'; color: #009e21; background: url(../images/index_point_bg.png) no-repeat; width: 114px; height: 60px; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: flex-end; align-items: flex-end; margin: -6vw auto 0.8rem auto; position: relative; z-index: 1; line-height: 120%; }
.feature_frame .feature_box .feature_item .feature_text { font-size: 1.4rem; width: 90%; margin: 0 auto; }
.feature_frame .feature_box .feature_item .feature_text span { color: #ff9600; }

@media screen and (min-width: 768px), print { .feature_frame { margin: 65px 0 0 0; padding: 0; }
  .feature_frame .feature_box { width: 800px; 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; }
  .feature_frame .feature_box .feature_item { width: 388px; height: 356px; margin: 0 0 26px 0; position: relative; padding: 0 0 0 0; background-color: #e3f8d7; border-bottom-left-radius: 1rem; }
  .feature_frame .feature_box .feature_item img { width: 100%; height: auto; }
  .feature_frame .feature_box .feature_item .feature_item_num { font-size: 2.8rem; font-weight: bold; font-family: 'KosugiMaru'; color: #009e21; background: url(../images/index_point_bg.png) no-repeat; width: 114px; height: 60px; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: flex-end; align-items: flex-end; margin: -47px auto 12px auto; position: relative; z-index: 1; line-height: 120%; }
  .feature_frame .feature_box .feature_item .feature_text { font-size: 2rem; width: 90%; margin: 0 auto; line-height: 130%; }
  .feature_frame .feature_box .feature_item .feature_text span { color: #ff9600; } }
/* -----------------------------------------------------------
　医院概要
----------------------------------------------------------- */
.overview { width: 100%; margin: 0 auto; padding: 1rem 2% 0 2%; background-color: #d4f490; box-sizing: border-box; }
.overview h2.overview { text-align: center; margin: 0 0 1rem 0; }
.overview h2.overview img { width: 96%; }
.overview .overview_box .overview_left dl { width: 100%; margin: 0 0 2rem 0; 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; line-height: 160%; }
.overview .overview_box .overview_left dl dt { color: #ffffff; background-color: #009e21; font-size: 1.2rem; font-weight: normal; margin: 0; width: 25%; padding: 1rem 0; box-sizing: border-box; border-bottom: #d4f490 1px solid; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
.overview .overview_box .overview_left dl dt.overview_access { border-bottom: #d4f490 1px solid; }
.overview .overview_box .overview_left dl dd { color: #1b1b1b; background-color: #ffffff; font-size: 1.2rem; margin: 0; width: 75%; padding: 1rem 0.5rem; box-sizing: border-box; border-bottom: #d4f490 1px solid; line-height: 120%; }
.overview .overview_box .overview_left dl dd.overview_doctor span { font-size: 1rem; }
.overview .overview_box .overview_left dl dd.overview_subject { border-top: #d4f490 1px solid; }
.overview .overview_box .overview_left dl dd.overview_tel a { font-size: 1.2rem; font-family: "Mandali", sans-serif; text-decoration: none; color: #1b1b1b; }
.overview .overview_box .overview_left dl dd.overview_tel span { font-size: 1.2rem; font-family: "Mandali", sans-serif; text-decoration: none; color: #1b1b1b; }
.overview .overview_box .overview_left dl dd.overview_access { display: block; }
.overview .overview_box .overview_left dl dd.overview_access span { color: #009e21; font-weight: bold; display: inline; }
.overview .overview_box .overview_left .notice_time { font-size: 1.2rem; }
.overview .overview_box .overview_right { margin: 2rem 0 0 0; }
.overview .overview_box .overview_right iframe.googlemap { width: 100%; height: 500px; }
.overview .overview_box .overview_right a { color: #ffffff; background-color: #009e21; font-size: 1.4rem; text-align: center; border-radius: 2rem; padding: 1rem 0; box-sizing: border-box; display: block; margin: 2rem auto; text-decoration: none; width: 80%; }

@media screen and (min-width: 768px), print { .overview { width: 100%; margin: 13px 0; padding: 54px 0 54px 0; background-color: #d4f490; box-sizing: border-box; }
  .overview h2.overview { text-align: center; margin: 0 0 53px 0; padding: 0; }
  .overview h2.overview img { width: 570px; }
  .overview .overview_box { width: 1080px; margin: 0 auto; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; box-sizing: border-box; }
  .overview .overview_box .overview_left { width: 518px; }
  .overview .overview_box .overview_left dl { width: 100%; margin: 0 0 25px 0; 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; line-height: 160%; }
  .overview .overview_box .overview_left dl dt { color: #ffffff; background-color: #009e21; font-size: 1.8rem; font-weight: normal; margin: 0; width: 131px; height: 81px; padding: 0; box-sizing: border-box; border-bottom: #d4f490 1px solid; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
  .overview .overview_box .overview_left dl dt.overview_access { border-bottom: #009e21 1px solid; }
  .overview .overview_box .overview_left dl dt.overview_doctor { height: 100px; }
  .overview .overview_box .overview_left dl dd { color: #1b1b1b; background-color: #ffffff; font-size: 1.8rem; margin: 0; width: 387px; height: 81px; padding: 0 0 0 25px; box-sizing: border-box; border-bottom: #d4f490 1px solid; line-height: 120%; display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-align-items: center; align-items: center; }
  .overview .overview_box .overview_left dl dd.overview_doctor { display: block; height: 100px; padding: 7px 0 0 25px; box-sizing: border-box; }
  .overview .overview_box .overview_left dl dd.overview_doctor span { font-size: 1.4rem; }
  .overview .overview_box .overview_left dl dd.overview_subject { border-top: #d4f490 1px solid; }
  .overview .overview_box .overview_left dl dd.overview_tel a { font-size: 1.8rem; font-family: "Mandali", sans-serif; text-decoration: none; color: #1b1b1b; }
  .overview .overview_box .overview_left dl dd.overview_tel span { font-size: 1.8rem; font-family: "Mandali", sans-serif; text-decoration: none; color: #1b1b1b; }
  .overview .overview_box .overview_left dl dd.overview_access { display: block; padding: 15px 25px; box-sizing: border-box; }
  .overview .overview_box .overview_left dl dd.overview_access span { color: #009e21; font-weight: bold; display: inline; margin: 0 0 0 12px; }
  .overview .overview_box .overview_left .notice_time { font-size: 1.8rem; }
  .overview .overview_box .overview_right { width: 518px; margin: 0; }
  .overview .overview_box .overview_right iframe.googlemap { width: 518px; height: 506px; }
  .overview .overview_box .overview_right a { color: #ffffff; background-color: #009e21; font-size: 1.6rem; text-align: center; border-radius: 2rem; padding: 8px 0; box-sizing: border-box; display: block; margin: 12px auto 0 auto; text-decoration: none; width: 284px; }
  .overview .overview_box .overview_right a:hover { background-color: #f6ab00; transition: all 0.3s ease 0s; } }
/* -----------------------------------------------------------
　フッター
----------------------------------------------------------- */
footer .footer_frame { display: none; }
footer .copyright { margin: 0; text-align: center; margin: 0; padding: 0.8rem 0; color: #ffffff; font-size: 1.2rem; height: auto; letter-spacing: 0.05em; background-color: #009e21; }
footer .copyright a { color: #ffffff; text-decoration: none; }

.footer_link { position: fixed; bottom: 0; width: 100%; display: -webkit-flex; display: flex; -webkit-justify-content: space-around; justify-content: space-around; -webkit-flex-direction: row; flex-direction: row; padding: 1rem 0; background-color: rgba(255, 255, 255, 0.8); z-index: 999999; }
.footer_link a.footer_tel { width: 84%; margin: 0; color: #ffffff; text-align: center; font-size: 1.4rem; font-weight: bold; letter-spacing: 0.1em; display: block; background-color: #009e21; padding: 1rem 0; text-decoration: none; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; border-radius: 0.2rem; }
.footer_link a.footer_web { width: 32%; margin: 0; color: #ffffff; text-align: center; font-size: 1.3rem; background-color: #009e21; text-decoration: none; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
.footer_link .smoothScrolls { background-color: #009e21; width: 12%; text-align: center; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; border-radius: 0.2rem; }
.footer_link .smoothScrolls a { width: 100%; color: #ffffff; padding: 0.8rem 0; font-weight: bold; text-decoration: none; font-size: 1.4rem; }

@media screen and (min-width: 768px), print { footer { width: 100%; height: auto; padding: 0; box-sizing: border-box; padding: 46px 0 0 0; margin: 0 0 0 0; overflow: hidden; background-color: #009e21; }
  footer .footer_frame { display: block; width: 1080px; margin: 0 auto 15px auto; padding: 0 0 0 0; box-sizing: border-box; }
  footer .footer_frame a.footer_logo { display: block; text-align: center; margin: 0 0 24px 0; }
  footer .footer_frame a.footer_logo img { width: 446px; }
  footer .footer_frame ul { list-style-type: none; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; margin: 0 0 0 0; }
  footer .footer_frame ul li { margin: 0 25px 10px 0; }
  footer .footer_frame ul li a { color: #ffffff; text-decoration: none; line-height: 140%; font-size: 1.8rem; font-weight: normal; }
  footer .footer_frame ul li a i { display: none; }
  footer .footer_frame ul li a br { display: none; }
  footer .footer_frame ul li a:hover { text-decoration: underline; }
  footer .footer_frame ul li::after { content: "|"; font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif; margin: 0 0 0 25px; color: #ffffff; font-size: 1.6rem; font-weight: normal; }
  footer .footer_frame ul li:last-child::after { content: ""; }
  footer .footer_frame ul li ul { display: none; }
  footer .footer_frame ul li.treatment { display: none; }
  footer .footer_frame ul li.adult_allergie { display: none; }
  footer .copyright { margin: 0; text-align: center; margin: 0; padding: 0; color: #ffffff; font-size: 1.4rem; height: auto; letter-spacing: 0.05em; background-color: #009e21; }
  footer .copyright a { color: #ffffff; text-decoration: none; height: 40px; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; box-sizing: border-box; margin: 0 0 0 0; }
  .footer_link { display: none; } }
/* -----------------------------------------------------------
　ページトップへ
----------------------------------------------------------- */
#pagetop_position { display: none; }

@media screen and (min-width: 768px), print { #linkpagetop { float: left; }
  #linkpagetop img { width: 72px; height: auto; display: block; }
  #pagetop { position: fixed; bottom: 170px; left: 50%; margin: 0 0 0 560px; text-align: center; z-index: 9999999; }
  #pagetop a { display: block; color: #ffffff; }
  #pagetop_position { display: block; float: right; margin: 0; padding: 0; } }
@media screen and (min-width: 768px) and (max-width: 1500px) { #pagetop_position { display: block; }
  #pagetop { position: fixed; bottom: 67px; left: 90%; margin: 0 0 0 0; height: 185px; text-align: center; } }

/*# sourceMappingURL=style.css.map */
