@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*/
/*肌色*/
/*緑3*/
/*灰色2*/
/*緑4*/
/*オレンジ*/
/*茶色*/
/*オレンジ2*/
/*緑5*/
/*灰色3*/
/*オレンジ3*/
/*オレンジ4*/
/*灰色4*/
/*緑6*/
/*茶色*/
/*茶色2*/
/*オレンジ*/
/*薄い緑*/
/*灰色5*/
/*オレンジ5*/
/*赤*/
/*黄色*/
/*緑*/
/*オレンジ*/
/*ハンバーガー*/
.drawr { display: none; position: absolute; top: 20vw; width: 100%; padding: 0; margin: 0 auto; height: auto; z-index: 999999; background-color: #95c62c; 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; -webkit-box-sizing: border-box; box-sizing: border-box; letter-spacing: 0.05em; }
.drawr ul.hbg li a i { display: none; }
.drawr ul.hbg li a span { display: none; }
.drawr ul.hbg li ul { display: none; }
.drawr ul.hbg li ul li { background-color: #ffce7e; }
.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; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; 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: ''; -webkit-transition: all 500ms ease-in-out; 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'; -webkit-transition: all 500ms ease-in-out; transition: all 500ms ease-in-out; visibility: visible; opacity: 1; }

.toggle-label .toggle-text:after { position: absolute; width: 100%; left: 0; content: 'CLOSE'; -webkit-transition: all 500ms ease-in-out; transition: all 500ms ease-in-out; visibility: hidden; opacity: 0; }

.toggle-label .toggle-icon { -webkit-transform: translate3d(-50%, -5px, 0); transform: translate3d(-50%, -5px, 0); }

.toggle-label .toggle-icon:before { -webkit-transform: translate3d(-50%, -11.5px, 0); transform: translate3d(-50%, -11.5px, 0); }

.toggle-label .toggle-icon:after { -webkit-transform: translate3d(-50%, 5px, 0); 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 { -webkit-transform: translateX(-50%) rotate(45deg); transform: translateX(-50%) rotate(45deg); top: 1.5px; }

.toggle:checked ~ .toggle-label .toggle-icon:after { -webkit-transform: translateX(-50%) translateY(-10px) rotate(-45deg); 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: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: 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: #95c62c; border: #95c62c 1px solid; }

/*アサイド*/
aside { display: none; }

@media screen and (min-width: 768px), print { aside { display: block; width: 300px; background: url(../images/aside_bg.png) repeat; padding: 29px 0 0 0; }
  aside p.aside_title { text-align: center; color: #648c0a; font-size: 2.8rem; width: 258px; margin: 0 auto 30px auto; line-height: 100%; border-bottom: #8fc31f 2px dotted; }
  aside p.aside_title span { font-family: 'caveat'; font-size: 1.6rem; color: #979797; display: block; }
  aside ul.aside_list { list-style-type: none; }
  aside ul.aside_list li { width: auto; margin: 0 0 29px 13px; -webkit-box-sizing: border-box; box-sizing: border-box; }
  aside ul.aside_list li a { /*
display: -webkit-flex;
display: flex;
-webkit-justify-content: flex-start;
justify-content: flex-start;
-webkit-align-items: center;
align-items: center;
*/ display: inline-block; font-size: 2rem; font-weight: bold; color: #000000; text-decoration: none; position: relative; }
  aside ul.aside_list li a::after { position: absolute; bottom: -4px; left: 0; content: ''; width: 100%; height: 2px; -webkit-transform: scale(0, 1); transform: scale(0, 1); -webkit-transform-origin: right top; transform-origin: right top; -webkit-transition: -webkit-transform .3s; transition: -webkit-transform .3s; transition: transform .3s; transition: transform .3s, -webkit-transform .3s; background-color: #8fc31f; }
  aside ul.aside_list li a i { font-size: 2rem; color: #8fc31f; margin: 0 5px 0 0; }
  aside ul.aside_list li a:hover { opacity: 0.8; }
  aside ul.aside_list li a:hover::after { -webkit-transform-origin: left top; transform-origin: left top; -webkit-transform: scale(1, 1); transform: scale(1, 1); }
  aside div { width: 244px; height: 41px; background: url(../images/aside_title_bg2.jpg) no-repeat; background-position: right bottom; background-color: #8fc31f; 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 { -webkit-transition: all 0.3s ease 0s; transition: all 0.3s ease 0s; background: url(../images/aside_bana_bg_hover.jpg) no-repeat; background-size: cover; } }
/*診療時間*/
/* -----------------------------------------------------------
　診療時間
----------------------------------------------------------- */
table.timetable { padding: 0; margin: 0 auto; vertical-align: middle; width: 100%; text-align: center; border-collapse: collapse; -webkit-box-sizing: border-box; box-sizing: border-box; line-height: 140%; }
table.timetable tr { -webkit-box-sizing: border-box; box-sizing: border-box; }
table.timetable tr th { width: auto; -webkit-box-sizing: border-box; box-sizing: border-box; font-weight: normal; font-size: 1rem; padding: 0.8rem 0; vertical-align: middle; color: #ffffff; background-color: #95c62c; width: 10%; }
table.timetable tr th.time { width: 28%; letter-spacing: 0.1em; }
table.timetable tr td { -webkit-box-sizing: border-box; box-sizing: border-box; font-weight: normal; font-size: 1rem; padding: 0.8rem 0; vertical-align: middle; color: #000000; background-color: #ffffff; border-bottom: #95c62c 1px dotted; }
table.timetable tr td i { color: #000000; }
table.timetable tr:last-child td { border-bottom: #95c62c 2px solid; }

.notice_time { color: #000000; font-size: 1.4rem; margin: 0.6rem 0 0 0; width: 96%; line-height: 140%; }
.notice_time span { color: #95c62c; }

@media screen and (min-width: 768px), print { table.timetable { padding: 0; margin: 0 auto; vertical-align: middle; width: 100%; text-align: center; border-collapse: collapse; -webkit-box-sizing: border-box; box-sizing: border-box; line-height: 140%; }
  table.timetable tr { -webkit-box-sizing: border-box; box-sizing: border-box; }
  table.timetable tr th { width: auto; -webkit-box-sizing: border-box; box-sizing: border-box; font-weight: normal; font-size: 1.4rem; padding: 9px 0; vertical-align: middle; color: #ffffff; background-color: #95c62c; width: 10%; }
  table.timetable tr th.time { width: 28%; letter-spacing: 0.1em; }
  table.timetable tr td { -webkit-box-sizing: border-box; box-sizing: border-box; font-weight: normal; font-size: 1.4rem; padding: 12px 0; vertical-align: middle; color: #000000; background-color: #ffffff; border-bottom: #95c62c 1px dotted; }
  table.timetable tr td i { color: #000000; }
  table.timetable tr:last-child td { border-bottom: #95c62c 2px solid; }
  .notice_time { color: #000000; font-size: 1.8rem; margin: 6px 0 0 0; width: 100%; line-height: 160%; } }
/*見出し*/
h1 { margin: 0; }

h2.general { background: url(../images/h2_bg.png) no-repeat; background-position: center top; background-size: 20%; height: 23vw; text-align: center; display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: end; -webkit-box-pack: end; justify-content: flex-end; -ms-flex-align: center; -webkit-box-align: center; align-items: center; -ms-flex-direction: column; -webkit-box-orient: vertical; -webkit-box-direction: normal; flex-direction: column; font-size: 2.4rem; font-weight: normal; letter-spacing: 0.1em; color: #648c0a; margin: 2rem 0 1rem 0; }
h2.general span { display: block; font-size: 1.2rem; font-weight: bold; color: #ffce7e; margin: 0.4rem 0 0 0; font-family: 'caveat'; }
h2.low { background: url(../images/h2_bg.png) no-repeat; background-position: center center; background-size: 20%; height: 23vw; text-align: center; display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: end; -webkit-box-pack: end; justify-content: flex-end; -ms-flex-align: center; -webkit-box-align: center; align-items: center; -ms-flex-direction: column; -webkit-box-orient: vertical; -webkit-box-direction: normal; flex-direction: column; font-size: 2.2rem; font-weight: normal; letter-spacing: 0.1em; color: #648c0a; margin: 2rem auto 1rem auto; padding: 0 2% 0.6rem 2%; border-bottom: #f39800 2px dotted; word-break: break-all; -webkit-box-sizing: border-box; box-sizing: border-box; }
h2.first { margin: 0 auto 1rem auto; }
h2.notice { margin: 0 0 1rem 0; }
h2.greeting { margin: 0 0 1rem 0; }

h3.low { background-color: #95c62c; background-image: radial-gradient(#aad156 10%, transparent 20%); background-size: 8px 8px; margin: 2rem 0 1rem 0; }
h3.low span { background: url(../images/h3_bg.png) no-repeat; background-position: right 2% bottom; background-size: 16%; display: block; width: 100%; font-size: 2rem; font-weight: normal; color: #ffffff; padding: 0.6rem 0.8rem; -webkit-box-sizing: border-box; box-sizing: border-box; }
h3.first { margin: 0 0 1rem 0; }

h4 { background: url(../images/h4_bg.png) no-repeat; background-position: left center; min-height: 61px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; -webkit-box-align: center; -ms-flex-align: center; align-items: center; margin: 2rem 0 1rem 0; }
h4 span { color: #7f4f21; font-size: 1.9rem; font-weight: normal; padding: 0 0 0.4rem 65px; border-bottom: #7f4f21 1px solid; width: 100%; }
h4.first { margin: 0 0 1rem 0; }

h5 { color: #806e5c; font-size: 1.8rem; font-weight: normal; border-bottom: #806e5c 1px dashed; padding: 0 0 0.6rem 0.2rem; margin: 2rem 0 1rem 0; }
h5.first { margin: 0 0 1rem 0; }

p { font-size: 1.4rem; margin: 0 0 2rem 0; line-height: 140%; }

@media screen and (min-width: 768px), print { h1 { margin: 0; }
  h2.general { background: url(../images/h2_bg.png) no-repeat; background-position: center top; background-size: 109px; height: 130px; text-align: center; display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: end; -webkit-box-pack: end; justify-content: flex-end; -ms-flex-align: center; -webkit-box-align: center; align-items: center; -ms-flex-direction: column; -webkit-box-orient: vertical; -webkit-box-direction: normal; flex-direction: column; font-size: 3rem; font-weight: bold; letter-spacing: 0.1em; color: #648c0a; margin: 60px 0 30px 0; }
  h2.general span { display: block; font-size: 1.6rem; color: #ffce7e; margin: 4px 0 0 0; font-family: 'caveat'; }
  h2.low { background: url(../images/h2_bg.png) no-repeat; background-position: center center; background-size: 109px; height: 130px; text-align: center; display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: end; -webkit-box-pack: end; justify-content: flex-end; -ms-flex-align: center; -webkit-box-align: center; align-items: center; -ms-flex-direction: column; -webkit-box-orient: vertical; -webkit-box-direction: normal; flex-direction: column; font-size: 3rem; font-weight: bold; letter-spacing: 0.1em; color: #648c0a; margin: 60px 0 30px 0; padding: 0 0 18px 0; border-bottom: #f39800 2px dotted; word-wrap: break-all; }
  h2.first { margin: 0 0 30px 0; }
  h2.notice { margin: 0 0 8px 0; }
  h2.greeting { margin: 0 0 40px 0; }
  h3.low { background-color: #95c62c; background-image: radial-gradient(#aad156 10%, transparent 20%); background-size: 8px 8px; margin: 36px 0 20px 0; }
  h3.low span { background: url(../images/h3_bg.png) no-repeat; background-position: right 15px bottom; background-size: 91px; display: block; width: 100%; font-size: 2.6rem; font-weight: normal; color: #ffffff; padding: 12px 18px; -webkit-box-sizing: border-box; box-sizing: border-box; }
  h3.first { margin: 0 0 20px 0; }
  h4 { background: url(../images/h4_bg.png) no-repeat; background-position: left center; min-height: 61px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; -webkit-box-align: center; -ms-flex-align: center; align-items: center; margin: 36px 0 20px 0; }
  h4 span { color: #7f4f21; font-size: 2.2rem; font-weight: normal; padding: 0 0 10px 65px; border-bottom: #7f4f21 1px solid; width: 100%; }
  h4.first { margin: 0 0 20px 0; }
  h5 { color: #806e5c; font-size: 2rem; font-weight: normal; border-bottom: #806e5c 1px dashed; padding: 0 0 10px 8px; margin: 36px 0 20px 0; }
  h5.first { margin: 0 0 20px 0; }
  p { font-size: 1.8rem; margin: 0 0 2rem 0; line-height: 160%; } }
/*下層*/
/*文中リンク*/
.text_link { color: #95c62c; font-weight: bold; }

/*太文字*/
.text_bold { font-weight: bold; }

/*赤文字*/
.text_red { color: red; }

/*矢印*/
.arrow { width: 0; height: 0; border-left: 60px solid transparent; border-right: 60px solid transparent; border-top: 30px solid #95c62c; text-align: center; display: block; margin: 30px auto; }

/*ボタンリンク*/
a.link_btn { text-decoration: none; width: 80%; margin: 0 auto; text-align: center; background-color: #ffecc6; color: #ffffff; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; font-size: 1.4rem; padding: 1rem 0; border-radius: 2rem; }
a.link_btn i { color: #a8cc5a; }

/*ボタンリンク*/
a.link_btn2 { text-decoration: none; width: 80%; margin: 0; text-align: center; background-color: #ffecc6; color: #ffffff; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; font-size: 1.4rem; padding: 1rem 0; border-radius: 2rem; }
a.link_btn2 i { color: #a8cc5a; }

/*左右並べ*/
.low_tel a { text-decoration: none; color: #95c62c; font-size: 2rem; font-weight: bold; }
.low_tel span { text-decoration: none; color: #95c62c; font-size: 2rem; font-weight: bold; }

@media screen and (min-width: 768px), print { /*文中リンク*/
  .text_link { color: #95c62c; font-weight: bold; }
  .text_link:hover { color: #ff9900; -webkit-transition: all 0.3s ease 0s; transition: all 0.3s ease 0s; }
  /*太文字*/
  .text_bold { font-weight: bold; }
  /*赤文字*/
  .text_red { color: red; }
  /*矢印*/
  .arrow { width: 0; height: 0; border-left: 60px solid transparent; border-right: 60px solid transparent; border-top: 30px solid #95c62c; text-align: center; display: block; margin: 30px auto; }
  a.link_btn { text-decoration: none; width: 300px; margin: 0 auto; text-align: center; background-color: #ffecc6; color: #ffffff; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; font-size: 1.8rem; padding: 12px 0; border-radius: 2rem; }
  a.link_btn i { color: #a8cc5a; }
  a.link_btn:hover { background-color: #a8cc5a; color: #000000; }
  a.link_btn:hover i { color: #ffecc6; }
  a.link_btn2 { text-decoration: none; width: 300px; margin: 0; text-align: center; background-color: #ffecc6; color: #ffffff; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; font-size: 1.8rem; padding: 12px 0; border-radius: 2rem; }
  a.link_btn2 i { color: #a8cc5a; }
  a.link_btn2:hover { background-color: #a8cc5a; color: #000000; }
  a.link_btn2:hover i { color: #ffecc6; }
  /*左右並べ*/
  .two_box { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; }
  .two_box section { width: 48%; }
  .low_tel a { text-decoration: none; color: #95c62c; font-size: 2rem; font-weight: bold; }
  .low_tel span { color: #95c62c; font-size: 3rem; font-weight: bold; } }
/* ----------------------------------------------------------- 院長紹介
----------------------------------------------------------- */
.doctor_name { float: right; text-align: left; }

@media screen and (min-width: 768px), print { .doctor_name { float: right; text-align: left; } }
/* ----------------------------------------------------------- クリニック紹介
----------------------------------------------------------- */
.item_list { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -ms-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.4rem; 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.4rem; line-height: 160%; margin: 0 0 15px 0; }

@media screen and (min-width: 768px), print { .item_list { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -ms-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.8rem; 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.8rem; line-height: 160%; margin: 0 0 15px 0; } }
/* ----------------------------------------------------------- アクセス
----------------------------------------------------------- */
.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; } }
/* ----------------------------------------------------------- 表
----------------------------------------------------------- */
table.low_table { padding: 0px; width: 100%; margin: 0 auto 1rem auto; border-collapse: collapse; -webkit-box-sizing: border-box; box-sizing: border-box; line-height: 140%; font-size: 1.4rem; }
table.low_table tr th { background-color: #eafcc7; vertical-align: middle; text-align: center; width: auto; padding: 0.8rem; border: #aaaaaa 1px solid; width: 50%; font-weight: normal; }
table.low_table tr td { vertical-align: middle; text-align: left; border: #aaaaaa 1px solid; padding: 0.8rem; background-color: #ffffff; width: 50%; }

table.low_table2 { padding: 0px; width: 100%; margin: 0 auto 1rem auto; border-collapse: collapse; -webkit-box-sizing: border-box; box-sizing: border-box; line-height: 140%; font-size: 1.4rem; }
table.low_table2 tr th { background-color: #eafcc7; vertical-align: middle; text-align: center; width: auto; padding: 0.8rem; border: #aaaaaa 1px solid; width: 33.33%; font-weight: normal; }
table.low_table2 tr td { vertical-align: middle; text-align: left; border: #aaaaaa 1px solid; padding: 0.8rem; background-color: #ffffff; width: 33.33%; }

table.low_table3 { padding: 0px; width: 100%; margin: 0 auto 1rem auto; border-collapse: collapse; -webkit-box-sizing: border-box; box-sizing: border-box; line-height: 140%; font-size: 1.4rem; }
table.low_table3 tr th { background-color: #eafcc7; vertical-align: middle; text-align: center; width: auto; padding: 0.8rem; border: #aaaaaa 1px solid; width: 30%; font-weight: normal; }
table.low_table3 tr td { vertical-align: middle; text-align: left; border: #aaaaaa 1px solid; padding: 0.8rem; background-color: #ffffff; width: 70%; }

@media screen and (min-width: 768px), print { table.low_table { padding: 0px; width: 100%; margin: 0 auto 1rem auto; border-collapse: collapse; -webkit-box-sizing: border-box; box-sizing: border-box; line-height: 140%; font-size: 1.8rem; }
  table.low_table tr th { background-color: #eafcc7; vertical-align: middle; text-align: center; width: auto; padding: 20px; border: #aaaaaa 1px solid; width: auto; font-weight: normal; }
  table.low_table tr th.left { width: 30%; }
  table.low_table tr th.right { width: 70%; }
  table.low_table tr td { vertical-align: middle; text-align: left; border: #aaaaaa 1px solid; padding: 20px; background-color: #ffffff; width: auto; }
  table.low_table2 { padding: 0px; width: 100%; margin: 0 auto 1rem auto; border-collapse: collapse; -webkit-box-sizing: border-box; box-sizing: border-box; line-height: 140%; font-size: 1.8rem; }
  table.low_table2 tr th { background-color: #eafcc7; vertical-align: middle; text-align: center; width: auto; padding: 20px; border: #aaaaaa 1px solid; width: auto; font-weight: normal; }
  table.low_table2 tr th.left { width: 20%; }
  table.low_table2 tr th.right { width: 40%; }
  table.low_table2 tr th.center { width: 40%; }
  table.low_table2 tr td { vertical-align: middle; text-align: left; border: #aaaaaa 1px solid; padding: 20px; background-color: #ffffff; width: auto; }
  table.low_table3 { padding: 0px; width: 100%; margin: 0 auto 1rem auto; border-collapse: collapse; -webkit-box-sizing: border-box; box-sizing: border-box; line-height: 140%; font-size: 1.8rem; }
  table.low_table3 tr th { background-color: #eafcc7; vertical-align: middle; text-align: center; width: auto; padding: 20px; border: #aaaaaa 1px solid; width: auto; font-weight: normal; }
  table.low_table3 tr th.left { width: 30%; }
  table.low_table3 tr th.right { width: 70%; }
  table.low_table3 tr td { vertical-align: middle; text-align: left; border: #aaaaaa 1px solid; padding: 20px; background-color: #ffffff; width: auto; } }
/* ----------------------------------------------------------- メールフォーム
----------------------------------------------------------- */
#mailformpro table { font-size: 1.4rem; line-height: 140%; width: 100%; }
#mailformpro table tr th { display: block; text-align: left; font-weight: normal; background-color: #eafcc7; padding: 1rem 0 1rem 1rem; -webkit-box-sizing: border-box; box-sizing: border-box; border: #aaaaaa 1px solid; }
#mailformpro table tr th span { background-color: #648c0a; color: #ffffff; display: inline-block; padding: 0 0.2rem; -webkit-box-sizing: border-box; box-sizing: border-box; margin: 0 0 0 0.6rem; }
#mailformpro table tr td { display: block; text-align: left; padding: 1rem 0; -webkit-box-sizing: border-box; box-sizing: border-box; }
#mailformpro table tr td ol { list-style-type: none; }
#mailformpro table tr td input[type="text"], #mailformpro table tr td input[type="tel"] { font-size: 1.4rem; width: 90%; }
#mailformpro table tr td input[type="email"] { font-size: 1.4rem; width: 90%; }
#mailformpro table tr td input[type="date"] { font-size: 1.4rem; width: 90%; }
#mailformpro table tr td select { font-size: 1.4rem; width: 90%; }
#mailformpro table tr td textarea { font-size: 1.4rem; width: 100%; min-width: 92vw; min-height: 40vw; -webkit-box-sizing: border-box; box-sizing: border-box; }

.privacy_policy { height: 60vw; overflow-y: scroll; border: #000000 1px solid; padding: 1rem; -webkit-box-sizing: border-box; box-sizing: border-box; margin: 0 0 1rem 0; }

.privacy_policy ::-webkit-scrollbar { width: 12px; }

.privacy_policy ::-webkit-scrollbar-track { -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3); border-radius: 10px; background: #979797; }

.privacy_policy ::-webkit-scrollbar-thumb { border-radius: 10px; -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.5); }

@media screen and (min-width: 768px), print { #mailformpro table { font-size: 1.8rem; line-height: 140%; width: 850px; }
  #mailformpro table tr th { width: 300px; display: table-cell; text-align: left; font-weight: normal; background-color: #eafcc7; padding: 20px; -webkit-box-sizing: border-box; box-sizing: border-box; border: #aaaaaa 1px solid; vertical-align: middle; }
  #mailformpro table tr th span { background-color: #648c0a; color: #ffffff; display: inline-block; padding: 0 0.2rem; -webkit-box-sizing: border-box; box-sizing: border-box; margin: 0 0 0 1rem; }
  #mailformpro table tr td { width: 550px; display: table-cell; text-align: left; border-bottom: #aaaaaa 1px solid; border-right: #aaaaaa 1px solid; padding: 20px; -webkit-box-sizing: border-box; box-sizing: border-box; vertical-align: middle; line-height: 140%; }
  #mailformpro table tr td ol { list-style-type: none; }
  #mailformpro table tr td ol li { margin: 0 0 5px 0; }
  #mailformpro table tr td input[type="text"], #mailformpro table tr td input[type="tel"] { font-size: 2rem; width: 200px; margin: 0 1rem 1rem 0; }
  #mailformpro table tr td input[type="email"] { font-size: 2rem; width: 400px; margin: 0 1rem 1rem 0; }
  #mailformpro table tr td input[type="date"] { font-size: 2rem; width: auto; }
  #mailformpro table tr td select { font-size: 2rem; width: 300px; }
  #mailformpro table tr td textarea { font-size: 2rem; width: 100%; min-width: 420px !important; min-height: 300px; -webkit-box-sizing: border-box; box-sizing: border-box; }
  #mailformpro table tr:first-child td { border-top: #aaaaaa 1px solid; }
  .privacy_policy { height: 400px; overflow-y: scroll; border: #000000 1px solid; padding: 20px; -webkit-box-sizing: border-box; box-sizing: border-box; margin: 0 0 20px 0; } }
/*リスト*/
/* -----------------------------------------------------------
　リスト
----------------------------------------------------------- */
/*標準*/
ul.list_normal { line-height: 120%; font-size: 1.4rem; list-style-type: disc; margin: 0 0 1rem 0; }
ul.list_normal li { margin: 0 0 10px 1.8rem; padding: 0; }

/*画像●*/
ul.list_maru { padding: 0; margin: 0 0 1rem 0; }
ul.list_maru li { line-height: 130%; font-size: 1.4rem; list-style-type: none; margin: 0 0 1rem 0; -webkit-box-sizing: border-box; box-sizing: border-box; background: url(../images/maru.png) no-repeat; background-position: left top 0.4rem; background-size: 1rem; padding: 0 0 0 1.8rem; line-height: 140%; }
ul.list_maru li.aj { margin: 0 0 4rem 0; }

ul.list_maru_two { padding: 0; margin: 0; }
ul.list_maru_two li { line-height: 130%; font-size: 1.4rem; list-style-type: none; margin: 0 0 10px 0; -webkit-box-sizing: border-box; box-sizing: border-box; background: url(../images/maru.png) no-repeat; background-position: left top 0.6rem; background-size: 1rem; padding: 0 0 0 1.8rem; line-height: 140%; }

/*なし*/
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_num { -webkit-box-sizing: border-box; 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; -webkit-box-sizing: border-box; box-sizing: border-box; width: 90%; }

/*英語*/
ul.list_alphabet { -webkit-box-sizing: border-box; box-sizing: border-box; width: 100%; margin: 0 0 2rem 0; }
ul.list_alphabet li { line-height: 130%; font-size: 1.4rem; list-style-type: upper-latin; margin: 0 0 1.4rem 2rem; -webkit-box-sizing: border-box; box-sizing: border-box; width: 90%; }

/*概要*/
ul.list_overview { -webkit-box-sizing: border-box; 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; -webkit-box-sizing: border-box; box-sizing: border-box; width: 90%; }

/*2列*/
ul.list_normal_two { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; }
ul.list_normal_two li { -webkit-box-sizing: border-box; box-sizing: border-box; line-height: 130%; font-size: 1.4rem; list-style-type: disc; margin: 0 0 10px 25px; }

@media screen and (min-width: 768px) { /*標準*/
  ul.list_normal { line-height: 160%; font-size: 1.8rem; 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; }
  ul.list_maru li { line-height: 100%; font-size: 1.8rem; list-style-type: none; margin: 0 0 15px 0; -webkit-box-sizing: border-box; box-sizing: border-box; background: url(../images/maru.png) no-repeat; background-position: left 4px top 8px; background-size: 10px; padding: 0 0 0 25px; line-height: 140%; }
  ul.list_maru_two { padding: 0; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  ul.list_maru_two li { width: 48%; line-height: 100%; font-size: 1.8rem; list-style-type: none; margin: 0 0 15px 0; -webkit-box-sizing: border-box; box-sizing: border-box; background: url(../images/maru.png) no-repeat; background-position: left 4px top 8px; background-size: 10px; padding: 0 0 0 25px; line-height: 140%; }
  /*なし*/
  ul.list_none { line-height: 160%; font-size: 1.8rem; 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 { -webkit-box-sizing: border-box; box-sizing: border-box; width: 100%; }
  ul.list_num li { line-height: 130%; font-size: 1.8rem; list-style-type: decimal; margin: 0 0 10px 25px; -webkit-box-sizing: border-box; box-sizing: border-box; width: 90%; }
  /*数値*/
  ul.list_alphabet { -webkit-box-sizing: border-box; box-sizing: border-box; width: 100%; }
  ul.list_alphabet li { line-height: 130%; font-size: 1.8rem; list-style-type: upper-latin; margin: 0 0 10px 25px; -webkit-box-sizing: border-box; box-sizing: border-box; width: 90%; }
  /*概要*/
  ul.list_overview li { line-height: 130%; font-size: 1.8rem; list-style-type: disc; margin: 0 0 10px 25px; }
  ul.list_normal_two { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  ul.list_normal_two li { width: 45%; -webkit-box-sizing: border-box; box-sizing: border-box; line-height: 130%; font-size: 1.8rem; list-style-type: disc; margin: 0 0 10px 25px; } }
/* -----------------------------------------------------------
　定義リスト
----------------------------------------------------------- */
dl.bio_list { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -ms-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.4rem; -webkit-box-sizing: border-box; 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; }

dl.check_list { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -ms-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.4rem; -webkit-box-sizing: border-box; box-sizing: border-box; margin: 0 0 0 0; line-height: 140%; width: 100%; }
dl.check_list dt { width: 8%; margin: 0 0 0 0; }
dl.check_list dd { width: 90%; margin: 0 0 20px 0; }

@media screen and (min-width: 768px) { dl.bio_list { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -ms-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.8rem; -webkit-box-sizing: border-box; box-sizing: border-box; line-height: 140%; width: 1170px; margin: 0; }
  dl.bio_list dt { width: 70px; margin: 0 0 10px 0; font-weight: normal; }
  dl.bio_list dd { width: 1100px; margin: 0 0 10px 0; }
  dl.check_list { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -ms-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.8rem; -webkit-box-sizing: border-box; box-sizing: border-box; line-height: 140%; width: 1170px; margin: 0; }
  dl.check_list dt { width: 30px; margin: 0 0 10px 0; font-weight: normal; }
  dl.check_list dd { width: 1140px; 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_right_frame { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; margin: 0 0 1rem 0; }
.img_right_frame div.right { -webkit-box-ordinal-group: 2; -ms-flex-order: 1; 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 { -webkit-box-ordinal-group: 3; -ms-flex-order: 2; order: 2; width: 100%; }
.img_right_frame div.left .doctor_name { text-align: right; }

/*画像左*/
.img_left_frame { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; margin: 0 0 1rem 0; }
.img_left_frame div.left { -webkit-box-ordinal-group: 2; -ms-flex-order: 1; 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 { -webkit-box-ordinal-group: 3; -ms-flex-order: 2; order: 2; width: 100%; line-height: 120%; }

/*二つ*/
.img_two { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; }
.img_two figure { width: 70%; margin: 0 auto 20px auto; display: block; }
.img_two figure img { width: 100%; }

.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: 375px; 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-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; margin: 0 0 3rem 0; }
  .img_right_frame div.right { -webkit-box-ordinal-group: 3; -ms-flex-order: 2; order: 2; width: 350px; text-align: center; }
  .img_right_frame div.right img { width: 350px; height: auto; margin: 0; }
  .img_right_frame div.left { -webkit-box-ordinal-group: 2; -ms-flex-order: 1; order: 1; width: 445px; line-height: 120%; }
  .img_right_frame div.left .doctor_name { text-align: right; }
  /*画像左*/
  .img_left_frame { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; margin: 0 0 0 0; }
  .img_left_frame div.left { -webkit-box-ordinal-group: 2; -ms-flex-order: 1; 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 { -webkit-box-ordinal-group: 3; -ms-flex-order: 2; order: 2; width: 445px; line-height: 120%; }
  /*二つ*/
  .img_two { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-pack: distribute; justify-content: space-around; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; }
  .img_two figure { width: 300px; margin: 0; display: block; }
  .img_two figure img { width: 100%; }
  .top_doctor_name { font-size: 1.8rem; text-align: right; }
  .top_doctor_name span { font-size: 2.2rem; } }
/* ----------------------------------------------------------- 特殊フォント
----------------------------------------------------------- */
@font-face { font-family: 'caveat'; src: url(../font/Caveat-Regular.ttf); font-weight: normal; font-style: normal; }
@font-face { font-family: 'caveat'; src: url(../font/Caveat-Bold.ttf); font-weight: bold; font-style: normal; }
/* ----------------------------------------------------------- フォントサイズ基本
----------------------------------------------------------- */
html { font-size: calc( 100vw / 32 ); overflow-y: auto; font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "メイリオ", Meiryo, Arial, sans-serif; color: #000000; 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: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "メイリオ", Meiryo, Arial, sans-serif; color: #000000; 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; }

.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.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 0 1rem 0; padding: 0; }

.wrapper { height: auto; width: 96%; margin: 1rem auto 2rem auto; padding: 0; }

.main { width: 100%; margin: 0 auto 3rem auto; padding: 0 0 0 0; }

.main_low { 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: 66px 0 0 0; padding: 0 0 0 0; }
  article.low { margin: 0; }
  .wrapper { height: auto; width: 1170px; margin: 0 auto 0 auto; padding: 0; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; }
  .main { width: 870px; margin: 0 0 84px 0; padding: 0; }
  .main_low { width: 850px; margin: 0 0 84px 0; padding: 10px 0 0 0; } }
/* -----------------------------------------------------------
　メインナビ
----------------------------------------------------------- */
.main_nav_pc { display: none; }

@media screen and (min-width: 768px) { .main_nav_pc { display: block; height: 50px; margin: 0 auto; padding: 0; width: 1170px; -webkit-box-sizing: border-box; box-sizing: border-box; overflow: visible; max-width: 1170px; position: absolute; top: 690px; left: 0; right: 0; }
  .main_nav_pc nav { width: 640px; height: 50px; margin: 0 0 0 530px; padding: 0; -webkit-box-sizing: border-box; box-sizing: border-box; }
  .main_nav_pc nav ul { list-style-type: none; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -webkit-box-align: center; -ms-flex-align: center; align-items: center; width: 640px; -webkit-box-sizing: border-box; box-sizing: border-box; height: 50px; padding: 0; position: relative; }
  .main_nav_pc nav ul li { display: block; text-align: center; -webkit-box-sizing: border-box; box-sizing: border-box; height: 50px; line-height: 120%; text-align: center; border-left: #e2e2e2 1px solid; }
  .main_nav_pc nav ul li a { text-decoration: none; color: #000000; height: 50px; display: block; -webkit-box-sizing: border-box; box-sizing: border-box; margin: 0; font-size: 2rem; font-weight: normal; line-height: 100%; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; width: 100%; position: relative; }
  .main_nav_pc nav ul li a::after { position: absolute; bottom: -4px; left: 0; content: ''; width: 100%; height: 2px; -webkit-transform: scale(0, 1); transform: scale(0, 1); -webkit-transform-origin: center top; transform-origin: center top; -webkit-transition: -webkit-transform .3s; transition: -webkit-transform .3s; transition: transform .3s; transition: transform .3s, -webkit-transform .3s; background-color: #95c62c; }
  .main_nav_pc nav ul li a:hover { opacity: 0.8; }
  .main_nav_pc nav ul li a:hover::after { -webkit-transform: scale(1, 1); transform: scale(1, 1); }
  .main_nav_pc nav ul li a span { font-family: 'caveat'; font-size: 1.4rem; font-weight: bold; color: #9fca3e; margin: 4px 0 0 0; }
  .main_nav_pc nav ul li.home { width: 98px; }
  .main_nav_pc nav ul li.doctor { width: 114px; }
  .main_nav_pc nav ul li.clinic { width: 168px; }
  .main_nav_pc nav ul li.first { width: 148px; }
  .main_nav_pc nav ul li.access { width: 112px; }
  .main_nav_pc nav ul li:last-child { border-right: #e2e2e2 1px solid; }
  .main_nav_pc nav ul.open_nav { display: -webkit-box; display: -ms-flexbox; display: flex; } }
/* -----------------------------------------------------------
　ヘッダ
----------------------------------------------------------- */
header { display: block; height: auto; margin: 0 auto; }
header .key_visual { background-size: cover; background-repeat: no-repeat; background-position: center top; height: 58vw; display: block; position: relative; z-index: 0; }
header .key_visual .key_on { height: 56vw; position: relative; width: 100%; }
header .key_visual .key_on .catch_copy { position: absolute; top: 12vw; right: 0; left: 4%; margin: 0; display: inline-block; color: #000000; font-size: 1.4rem; line-height: 100%; z-index: 2; }
header .key_visual .key_on .catch_copy span { /*
background: linear-gradient(transparent 30%, $color0 70%);
*/ padding: 0 0.4rem; font-size: 1.4rem; }
header .key_visual .key_on hr { background-color: #ffffff; position: absolute; top: 12vw; height: 10px; width: 70%; right: 0; left: 4%; border: none; z-index: 1; /*display: none;*/ }
header .key_visual .key_on .key_news { position: absolute; top: 20vw; right: 2%; background: url(../images/key_on.png) no-repeat; background-position: center center; background-size: cover; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; text-align: center; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; width: 29%; height: 29vw; }
header .key_visual .key_on .key_news a { color: #ffffff; line-height: 140%; font-weight: normal; text-decoration: none; }
header .key_visual .key_on .key_news a.text_1 { font-size: 1rem; }
header .key_visual .key_on .key_news a.text_2 { font-size: 1.3rem; }
header .key_visual .key_on .key_news a.text_3 { font-size: 1.2rem; }
header .key_visual .key_on .key_news a.text_4 { font-size: 1.2rem; }
header .head_frame { width: 100%; padding: 0 0 0 0; height: auto; /*医院情報*/ }
header .head_frame .head_logo { width: 80%; margin: 0 auto 2vw auto; -webkit-box-sizing: border-box; box-sizing: border-box; padding: 2vw 0 0 0; }
header .head_frame .head_logo a { width: 100%; }
header .head_frame .head_logo a img { width: 100%; }
header .head_frame .head_info .head_access { text-align: center; font-size: 1.2rem; background-color: #95c62c; color: #ffffff; width: 80%; margin: 0 auto 1rem auto; padding: 0.2rem 0; }
header .head_frame .head_info .head_tel { text-align: center; }
header .head_frame .head_info .head_tel span { font-size: 2.4rem; color: #95c62c; }
header .head_frame .head_info .head_tel a { font-size: 2.4rem; text-decoration: none; color: #95c62c; }
header .head_frame .head_info .head_tel i { color: #95c62c; font-size: 2rem; }
header.low { display: block; height: auto; min-height: 56vw; margin: 0; background: url(../images/key_visual_low.jpg); background-size: cover; background-repeat: no-repeat; background-position: center top; }
header.low .head_frame_low { width: 100%; padding: 0 0 0 0; height: 40vw; display: block; position: relative; z-index: 0; /*医院情報*/ }
header.low .head_frame_low .head_logo { width: 75%; margin: 0 0 2vw 2%; -webkit-box-sizing: border-box; box-sizing: border-box; padding: 2vw 0 0 0; }
header.low .head_frame_low .head_logo a { width: 100%; }
header.low .head_frame_low .head_logo a img { width: 100%; }
header.low .head_frame_low .head_info .head_access { text-align: center; font-size: 1.2rem; background-color: #95c62c; color: #ffffff; width: 80%; margin: 0 auto 1rem auto; padding: 0.2rem 0; }
header.low .head_frame_low .head_info .head_tel { text-align: center; }
header.low .head_frame_low .head_info .head_tel span { font-size: 2.4rem; color: #95c62c; }
header.low .head_frame_low .head_info .head_tel a { font-size: 2.4rem; text-decoration: none; color: #95c62c; }
header.low .head_frame_low .head_info .head_tel i { color: #95c62c; font-size: 2rem; }
header.low h1.low { text-align: center; font-size: 2.4rem; font-weight: normal; }

@media screen and (min-width: 768px) { header { display: block; height: 760px; margin: 0 auto; position: relative; }
  header .key_visual { background-size: cover; background-repeat: no-repeat; background-position: center top; height: 729px; display: block; position: relative; z-index: 0; }
  header .key_visual .key_on { height: 729px; position: relative; width: 1170px; margin: 0 auto; }
  header .key_visual .key_on .catch_copy { position: absolute; top: 42px; right: 846px; left: 280px; margin: 0; display: inline-block; color: #000000; font-size: 2.4rem; line-height: 100%; letter-spacing: 0.1em; -ms-writing-mode: tb-rl; -webkit-writing-mode: vertical-rl; writing-mode: vertical-rl; z-index: 2; width: 36px; }
  header .key_visual .key_on .catch_copy span { background: none; padding: 0; font-size: 2.4rem; }
  header .key_visual .key_on hr.catch_copy_line { position: absolute; top: 41px; right: 856px; left: 303px; display: block; width: 20px; height: 420px; border: none; background-color: #ffffff; z-index: 1; margin: 0; }
  header .key_visual .key_on .key_news { position: absolute; top: 431px; right: 20px; background: url(../images/key_on.png) no-repeat; background-position: center center; background-size: cover; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; text-align: center; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; width: 186px; height: 186px; }
  header .key_visual .key_on .key_news a { color: #ffffff; line-height: 140%; font-weight: normal; text-decoration: none; }
  header .key_visual .key_on .key_news a.text_1 { font-size: 2.2rem; }
  header .key_visual .key_on .key_news a.text_2 { font-size: 3rem; }
  header .key_visual .key_on .key_news a.text_2 span { font-size: 2.2rem; }
  header .key_visual .key_on .key_news a.text_3 { font-size: 2.6rem; }
  header .key_visual .key_on .key_news a.text_4 { margin: 10px 0 0 0; font-size: 2.6rem; }
  header .key_visual .key_on .key_news:hover { opacity: 0.8; -webkit-transition: all 0.3s ease 0s; transition: all 0.3s ease 0s; }
  header .head_frame { position: absolute; top: 584px; left: 0; right: 0; width: 1170px; padding: 0; height: 180px; margin: 0 auto; /*医院情報*/ }
  header .head_frame .head_logo { width: 497px; margin: 0; -webkit-box-sizing: border-box; box-sizing: border-box; padding: 0 0 0 0; }
  header .head_frame .head_info .head_access { text-align: center; font-size: 1.8rem; background-color: #95c62c; color: #ffffff; width: 497px; margin: 8px 0 0 0; padding: 1px 0; }
  header .head_frame .head_info .head_tel { text-align: center; width: 497px; margin: 16px 0 0 0; }
  header .head_frame .head_info .head_tel span { font-size: 4.2rem; color: #95c62c; }
  header .head_frame .head_info .head_tel a { font-size: 4.2rem; text-decoration: none; color: #95c62c; }
  header .head_frame .head_info .head_tel i { color: #95c62c; font-size: 3.8rem; }
  header.low { display: block; height: 320px; min-height: 320px; background: url(../images/key_visual_low.jpg); background-size: cover; background-repeat: no-repeat; background-position: center bottom; margin: 0 0 0 0; }
  header.low .head_frame_low { width: 1170px; padding: 0 0 0 0; height: 232px; display: block; position: relative; z-index: 0; margin: 0 auto; /*医院情報*/ }
  header.low .head_frame_low .head_logo { width: 496px; margin: 0 0 0 0; -webkit-box-sizing: border-box; box-sizing: border-box; padding: 12px 0 0 0; }
  header.low .head_frame_low .head_info .head_access { text-align: center; font-size: 1.8rem; background-color: #95c62c; color: #ffffff; width: 497px; margin: 8px 0 0 0; padding: 1px 0; }
  header.low .head_frame_low .head_info .head_tel { text-align: center; width: 497px; margin: 6px 0 0 0; }
  header.low .head_frame_low .head_info .head_tel span { font-size: 4.2rem; color: #95c62c; }
  header.low .head_frame_low .head_info .head_tel a { font-size: 4.2rem; text-decoration: none; color: #95c62c; }
  header.low .head_frame_low .head_info .head_tel i { color: #95c62c; font-size: 3.8rem; }
  header.low h1.low { text-align: center; font-size: 3.4rem; font-weight: normal; }
  header.low .main_nav_pc { display: block; height: 50px; margin: 0 auto; padding: 0; width: 1170px; -webkit-box-sizing: border-box; box-sizing: border-box; overflow: visible; max-width: 1170px; position: absolute; top: 110px; left: 0; right: 0; } }
/* -----------------------------------------------------------
　バナー
----------------------------------------------------------- */
a.recruitbana { display: block; width: 100%; margin: 0 0 2rem 0; }
a.recruitbana img { width: 100%; }

.corona_bana a { color: #ffffff; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; width: 100%; height: 20vw; font-size: 1.4rem; font-weight: bold; text-decoration: none; text-align: center; }
.corona_bana a span span { font-family: 'caveat'; margin: 0 1rem 0 0; color: #ff0000; }
.corona_bana a span.eng { font-family: 'caveat'; font-size: 1rem; margin: 0.4rem 0 0 0; }
.corona_bana a.corona { background: url(../images/arrow2.jpg) no-repeat; background-position: right 3px bottom 3px; background-color: #ffbe0a; margin: 0 0 2rem 0; }
.corona_bana a.recruit { background: url(../images/arrow.jpg) no-repeat; background-position: right 3px bottom 3px; background-color: #a8cb60; }
.corona_bana a.blog { background: url(../images/arrow.jpg) no-repeat; background-position: right 3px bottom 3px; background-color: #a8cb60; margin: 0 0 2rem 0; }

@media screen and (min-width: 768px) { a.recruitbana { display: block; width: 836px; margin: 0 auto 30px auto; }
  a.recruitbana img { width: 100%; }
  a.recruitbana:hover { -webkit-transition: all  0.3s ease; transition: all  0.3s ease; opacity: 0.6; }
  .corona_bana { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-pack: distribute; justify-content: space-around; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  .corona_bana a { color: #ffffff; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; width: 400px; height: 120px; font-size: 2.2rem; text-decoration: none; text-align: center; line-height: 100%; -webkit-box-sizing: border-box; box-sizing: border-box; padding: 10px 0 0 0; margin: 0 0 60px 0; }
  .corona_bana a span span { font-family: 'caveat'; margin: 0 1rem 0 0; color: #ff0000; }
  .corona_bana a span.eng { font-family: 'caveat'; font-size: 1.6rem; margin: 0 0 0 0; }
  .corona_bana a:hover { -webkit-transition: all  0.3s ease; transition: all  0.3s ease; opacity: 0.6; }
  .corona_bana a.corona { background: url(../images/arrow2.jpg) no-repeat; background-position: right 3px bottom 3px; background-color: #ffbe0a; margin: 0 0 30px 0; }
  .corona_bana a.recruit { background: url(../images/arrow.jpg) no-repeat; background-position: right 3px bottom 3px; background-color: #a8cb60; }
  .corona_bana a.blog { background: url(../images/arrow.jpg) no-repeat; background-position: right 3px bottom 3px; background-color: #a8cb60; margin: 0 0 30px 0; } }
/* -----------------------------------------------------------
　キービジュアル
----------------------------------------------------------- */
/*
.key_visual{ background-size: cover; background-repeat: no-repeat; background-position: center top;   height: 46vw;   display: block; position: relative; z-index: 9999; .key_on{ height: 46vw;  position: relative; width: 100%; .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; p{ color: $color3; font-family: 'Mandali'; font-size: 1rem; font-weight: normal; margin: 0; }       } }
}
*/
@media screen and (min-width: 768px) {   /*
.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_on{ height: 471px;  position: relative; width: 1124px; margin: 0 auto; .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; p{ color: $color3; font-family: 'Mandali'; font-size: 2.6rem; font-weight: normal; margin:30px 0 0 0; }       } }
}
*/ }
/* -----------------------------------------------------------
　お知らせ
----------------------------------------------------------- */
.notice_frame { -webkit-box-sizing: border-box; box-sizing: border-box; margin: 4rem 0 3rem 0; }
.notice_frame .notice_box dl { overflow-y: scroll; height: auto; min-height: 60vw; -webkit-box-sizing: border-box; box-sizing: border-box; background-color: #ffffff; border-top: #ae9a8e 1px solid; border-bottom: #ae9a8e 1px solid; padding: 1rem; }
.notice_frame .notice_box dl dt { margin: 0 0 0.6rem 0; font-size: 1.4rem; -webkit-box-sizing: border-box; box-sizing: border-box; font-weight: bold; letter-spacing: 0.1em; line-height: 120%; color: #f39800; padding: 0 0 0 0; }
.notice_frame .notice_box dl dd { color: #000000; margin: 0 0 2rem 0; padding: 0 0 0 0; -webkit-box-sizing: border-box; box-sizing: border-box; font-size: 1.2rem; line-height: 110%; }

/* .notice_box dl::-webkit-scrollbar { width: 12px; }
 .notice_box dl::-webkit-scrollbar-track { -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3); border-radius: 10px; background: $color1;         }
 .notice_box dl::-webkit-scrollbar-thumb { border-radius: 10px; -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.5); background: $color0;     }
*/
@media screen and (min-width: 768px), print { .notice_frame { -webkit-box-sizing: border-box; box-sizing: border-box; margin: 0 0 66px 0; }
  .notice_frame .notice_box dl { overflow-y: scroll; height: auto; min-height: 270px; -webkit-box-sizing: border-box; box-sizing: border-box; background-color: #ffffff; border-top: #ae9a8e 1px solid; border-bottom: #ae9a8e 1px solid; padding: 26px 11px; margin: 0 0 0 20px; }
  .notice_frame .notice_box dl dt { margin: 0 0 0.6rem 0; font-size: 1.8rem; -webkit-box-sizing: border-box; box-sizing: border-box; font-weight: bold; letter-spacing: 0.1em; line-height: 120%; color: #f39800; padding: 0 0 0 0; }
  .notice_frame .notice_box dl dd { color: #000000; margin: 0 0 56px 0; padding: 0 0 0 0; -webkit-box-sizing: border-box; box-sizing: border-box; font-size: 1.6rem; line-height: 120%; } }
/* .notice_box dl::-webkit-scrollbar { width: 12px; }
 .notice_box dl::-webkit-scrollbar-track { -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3); border-radius: 10px; background: $color1;      }
 .notice_box dl::-webkit-scrollbar-thumb { border-radius: 10px; -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.5); background: $color0;     }
*/
/* -----------------------------------------------------------
　診療科目
----------------------------------------------------------- */
.treatment_frame ul { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-pack: distribute; justify-content: space-around; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -ms-flex-wrap: wrap; flex-wrap: wrap; list-style-type: none; }
.treatment_frame ul li { width: 48%; margin: 0 0 1rem 0; }
.treatment_frame ul li a { background: url(../images/arrow.jpg) no-repeat; background-position: right 3px bottom 3px; background-color: #a8cc5a; color: #ffffff; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; width: 100%; height: 26vw; font-size: 1.4rem; text-decoration: none; text-align: center; }
.treatment_frame ul li a span { font-family: 'caveat'; font-size: 1rem; margin: 0.4rem 0 0 0; }

@media screen and (min-width: 768px), print { .treatment_frame { margin: 0 0 0 20px; }
  .treatment_frame ul { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -ms-flex-wrap: wrap; flex-wrap: wrap; list-style-type: none; }
  .treatment_frame ul li { width: 184px; margin: 0 0 20px 0; }
  .treatment_frame ul li a { background: url(../images/arrow.jpg) no-repeat; background-position: right 3px bottom 3px; background-color: #a8cc5a; color: #ffffff; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; width: 100%; height: 120px; font-size: 2.2rem; text-decoration: none; text-align: center; line-height: 100%; -webkit-box-sizing: border-box; box-sizing: border-box; padding: 10px 0 0 0; }
  .treatment_frame ul li a span { font-family: 'caveat'; font-size: 1.6rem; margin: 0 0 0 0; }
  .treatment_frame ul li a:hover { -webkit-transition: all  0.3s ease; transition: all  0.3s ease; opacity: 0.6; }
  .treatment_frame ul li.ost { margin: 0 0 0 115px; }
  .treatment_frame ul li.ped { margin: 0 115px 0 0; } }
/* -----------------------------------------------------------
当クリニックの特長
----------------------------------------------------------- */
.feature_frame h2.general { position: relative; z-index: 1; }
.feature_frame .feature_area { background-color: #f9f6eb; margin: -16vw 0 0 0; padding: 16vw 0 0 0; position: relative; z-index: 0; }
.feature_frame .feature_area .feature_box1 { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; margin: 0 0 2rem 0; }
.feature_frame .feature_area .feature_box1 .feature_box_no_left { width: 25%; }
.feature_frame .feature_area .feature_box1 .feature_box_no_left p { margin: 0; background-color: #fbc566; color: #ffffff; font-size: 1.4rem; text-align: center; padding: 1rem 0; font-family: 'caveat'; line-height: 120%; }
.feature_frame .feature_area .feature_box1 .feature_box_no_left p span { display: block; font-size: 2rem; }
.feature_frame .feature_area .feature_box1 section.feature_box_text_right { width: 70%; margin: 0; padding: 0; }
.feature_frame .feature_area .feature_box1 section.feature_box_text_right h3.feature { color: #f1a114; border-bottom: #f1a114 2px dotted; padding: 0 0 0.4rem 0; font-size: 2rem; font-weight: bold; margin: 0.2rem 0 1rem 0; }
.feature_frame .feature_area .feature_box2 { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; margin: 0 0 2rem 0; }
.feature_frame .feature_area .feature_box2 .feature_box_no_right { width: 25%; }
.feature_frame .feature_area .feature_box2 .feature_box_no_right p { margin: 0; background-color: #fbc566; color: #ffffff; font-size: 1.2rem; text-align: center; padding: 1rem 0; font-family: 'caveat'; line-height: 120%; }
.feature_frame .feature_area .feature_box2 .feature_box_no_right p span { display: block; font-size: 2rem; }
.feature_frame .feature_area .feature_box2 section.feature_box_text_left { width: 70%; margin: 0; padding: 0; }
.feature_frame .feature_area .feature_box2 section.feature_box_text_left h3.feature { color: #f1a114; border-bottom: #f1a114 2px dotted; padding: 0 0 0.4rem 0; font-size: 2rem; font-weight: bold; margin: 0.2rem 0 1rem 0; }

@media screen and (min-width: 768px), print { .feature_frame h2.general { position: relative; z-index: 1; }
  .feature_frame .feature_area { background-color: #f9f6eb; margin: -90px 0 0 0; padding: 114px 20px 2px 20px; position: relative; z-index: 0; -webkit-box-sizing: border-box; box-sizing: border-box; }
  .feature_frame .feature_area .feature_box1 { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; margin: 0 0 30px 0; }
  .feature_frame .feature_area .feature_box1 .feature_box_no_left { width: 142px; }
  .feature_frame .feature_area .feature_box1 .feature_box_no_left p { width: 142px; height: 136px; margin: 0; background-color: transparent; background: url(../images/index_feature_bg.png); color: #ffffff; font-size: 3.6rem; text-align: center; padding: 0; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; font-family: 'caveat'; line-height: 120%; }
  .feature_frame .feature_area .feature_box1 .feature_box_no_left p span { display: block; font-size: 6rem; }
  .feature_frame .feature_area .feature_box1 section.feature_box_text_right { width: 655px; margin: 0; padding: 0; }
  .feature_frame .feature_area .feature_box1 section.feature_box_text_right h3.feature { color: #f1a114; border-bottom: #f1a114 2px dotted; padding: 0 0 9px 0; font-size: 2.4rem; font-weight: bold; margin: 5px 0 15px 0; }
  .feature_frame .feature_area .feature_box2 { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; margin: 0 0 30px 0; }
  .feature_frame .feature_area .feature_box2 .feature_box_no_right { width: 142px; }
  .feature_frame .feature_area .feature_box2 .feature_box_no_right p { width: 142px; height: 136px; margin: 0; background-color: transparent; background: url(../images/index_feature_bg.png); color: #ffffff; font-size: 3.6rem; text-align: center; padding: 0; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; font-family: 'caveat'; line-height: 120%; }
  .feature_frame .feature_area .feature_box2 .feature_box_no_right p span { display: block; font-size: 6rem; }
  .feature_frame .feature_area .feature_box2 section.feature_box_text_left { width: 655px; margin: 0; padding: 0; }
  .feature_frame .feature_area .feature_box2 section.feature_box_text_left h3.feature { color: #f1a114; border-bottom: #f1a114 2px dotted; padding: 0 0 12px 0; font-size: 2.4rem; font-weight: bold; margin: 5px 0 15px 0; } }
/* -----------------------------------------------------------
　ごあいさつ
----------------------------------------------------------- */
.greeting_frame .greeting_box { background: url(../images/index_greetin_bg.jpg) no-repeat; background-position: right bottom; padding: 0 0 1rem 0; }
.greeting_frame .greeting_box p { font-size: 1.4rem; font-weight: bold; letter-spacing: 0.05em; }
.greeting_frame .greeting_box p.greeting_name span { font-size: 1.8rem; }
.greeting_frame .greeting_box a.doctor_btn { background: url("../images/arrow.png") no-repeat; background-position: left 6% center; background-size: 8%; background-color: #f39800; color: #ffffff; text-decoration: none; width: 50%; height: 12vw; font-size: 1.4rem; font-weight: bold; letter-spacing: 0.1em; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; border-radius: 0.5rem; }

@media screen and (min-width: 768px), print { .greeting_frame .greeting_box { background: url(../images/index_greetin_bg.jpg) no-repeat; background-position: right bottom; height: 583px; margin: 0 0 0 20px; padding: 0; position: relative; }
  .greeting_frame .greeting_box p { font-size: 1.8rem; font-weight: bold; margin: 0 0 32px 0; letter-spacing: 0.05em; }
  .greeting_frame .greeting_box p.greeting_name span { font-size: 2.2rem; }
  .greeting_frame .greeting_box a.doctor_btn { position: absolute; bottom: 20px; right: 20px; background: url("../images/arrow.png") no-repeat; background-position: left 10px center; background-size: 13px; background-color: #f39800; color: #ffffff; text-decoration: none; width: 160px; height: 40px; font-size: 1.6rem; font-weight: bold; letter-spacing: 0.1em; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; border-radius: 0.5rem; }
  .greeting_frame .greeting_box a.doctor_btn:hover { opacity: 0.6; -webkit-transition: all 0.3s ease 0s; transition: all 0.3s ease 0s; } }
/* -----------------------------------------------------------
　医院概要
----------------------------------------------------------- */
.overview { width: 100%; margin: 0 auto; padding: 1rem 2% 0 2%; -webkit-box-sizing: border-box; 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_access { color: #95c62c; font-size: 1.4rem; text-align: center; margin: 0 0 1rem 0; }
.overview .overview_box .overview_tel { text-align: center; }
.overview .overview_box .overview_tel span { font-size: 2.4rem; color: #95c62c; }
.overview .overview_box .overview_tel a { font-size: 2.4rem; text-decoration: none; color: #95c62c; }
.overview .overview_box .overview_tel i { color: #95c62c; font-size: 2rem; }
.overview .overview_box dl { width: 100%; margin: 0 0 2rem 0; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -ms-flex-wrap: wrap; flex-wrap: wrap; line-height: 160%; }
.overview .overview_box dl dt { margin: 0 0 1rem 0; width: 25%; }
.overview .overview_box dl dt span { color: #ffffff; background-color: #95c62c; font-size: 1.2rem; font-weight: normal; -webkit-box-sizing: border-box; box-sizing: border-box; padding: 0.6rem 0; display: block; text-align: center; }
.overview .overview_box dl dd { margin: 0 0 1rem 0; color: #000000; background-color: #ffffff; font-size: 1.2rem; margin: 0; width: 70%; padding: 0.6rem 0; -webkit-box-sizing: border-box; box-sizing: border-box; }
.overview .overview_box .notice_time { font-size: 1.2rem; }
.overview iframe.googlemap { margin: 2rem 0 0 0; width: 100%; height: 500px; }

@media screen and (min-width: 768px), print { .overview { width: 100%; margin: 80px auto 0 auto; padding: 0 0 0 0; -webkit-box-sizing: border-box; box-sizing: border-box; }
  .overview h2.overview { text-align: center; margin: 0 0 10px 0; padding: 0; }
  .overview h2.overview img { width: 497px; }
  .overview .overview_box { width: 560px; margin: 0 auto; }
  .overview .overview_box .overview_access { color: #95c62c; font-size: 1.8rem; text-align: center; margin: 0 0 1rem 0; }
  .overview .overview_box .overview_tel { text-align: center; }
  .overview .overview_box .overview_tel span { font-size: 3.2rem; color: #95c62c; }
  .overview .overview_box .overview_tel a { font-size: 3.2rem; text-decoration: none; color: #95c62c; }
  .overview .overview_box .overview_tel i { color: #95c62c; font-size: 2rem; }
  .overview .overview_box dl { width: 100%; margin: 0 0 0 0; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -ms-flex-wrap: wrap; flex-wrap: wrap; line-height: 160%; }
  .overview .overview_box dl dt { margin: 5px 0 18px 0; width: 88px; line-height: 160%; }
  .overview .overview_box dl dt span { color: #ffffff; background-color: #95c62c; font-size: 1.4rem; font-weight: normal; -webkit-box-sizing: border-box; box-sizing: border-box; padding: 0.6rem 0; display: block; text-align: center; }
  .overview .overview_box dl dd { color: #000000; background-color: #ffffff; font-size: 1.6rem; margin: 0 0 18px 0; width: 450px; padding: 0.6rem 0; -webkit-box-sizing: border-box; box-sizing: border-box; line-height: 160%; }
  .overview .overview_box .notice_time { font-size: 1.6rem; }
  .overview iframe.googlemap { margin: 40px 0 0 0; width: 100%; height: 448px; } }
/* -----------------------------------------------------------
　フッター
----------------------------------------------------------- */
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: #95c62c; }
footer .copyright a { color: #ffffff; text-decoration: none; }

.footer_link { position: fixed; bottom: 0; width: 100%; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-pack: distribute; justify-content: space-around; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-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: #95c62c; padding: 1rem 0; text-decoration: none; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; border-radius: 0.2rem; }
.footer_link a.footer_web { width: 32%; margin: 0; color: #ffffff; text-align: center; font-size: 1.3rem; background-color: #95c62c; text-decoration: none; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
.footer_link .smoothScrolls { background-color: #95c62c; width: 12%; text-align: center; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; 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%; -webkit-box-sizing: border-box; box-sizing: border-box; padding: 30px 0 0 0; margin: 0 0 0 0; overflow: hidden; background-color: #f3ebe4; height: 160px; position: relative; }
  footer .footer_frame { display: block; width: 1170px; margin: 0 auto; padding: 0 0 0 0; -webkit-box-sizing: border-box; box-sizing: border-box; height: auto; }
  footer .footer_frame ul { list-style-type: none; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; margin: 0 0 0 0; }
  footer .footer_frame ul li { margin: 0 18px 10px 0; }
  footer .footer_frame ul li a { color: #000000; text-decoration: none; line-height: 140%; font-size: 1.5rem; font-weight: normal; letter-spacing: 0.05em; }
  footer .footer_frame ul li a span { display: none; }
  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 18px; color: #000000; font-size: 1.5rem; font-weight: normal; }
  footer .footer_frame ul li:last-child::after { content: ""; }
  footer .footer_frame ul li ul { display: none; }
  footer .copyright { text-align: center; margin: 0; padding: 0; color: #ffffff; font-size: 1.2rem; height: 26px; letter-spacing: 0.05em; background-color: #95c62c; position: absolute; bottom: 0; display: block; width: 100%; }
  footer .copyright a { color: #ffffff; text-decoration: none; height: 26px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-sizing: border-box; box-sizing: border-box; margin: 0 0 0 0; font-size: 1.2rem; }
  .footer_link { display: none; } }
/* -----------------------------------------------------------
　ページトップへ
----------------------------------------------------------- */
#pagetop_position { display: none; }

@media screen and (min-width: 768px), print { #linkpagetop { float: left; }
  #linkpagetop img { width: 60px; height: auto; display: block; }
  #pagetop { position: fixed; bottom: 87px; left: 50%; margin: 0 0 0 585px; 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: 70px; left: 90%; margin: 0 0 0 0; height: 70px; text-align: center; } }

/*# sourceMappingURL=style.css.map */