@charset "UTF-8";
/* Scss Document */
/* =======================================================================
 共通項目 
======================================================================= */
/* ----------------------------------------------------------- 関数
----------------------------------------------------------- */
/*基本フォント*/
/*基本文字色*/
/*media screen*/
/* ----------------------------------------------------------- フォントサイズ基本
----------------------------------------------------------- */
html { font-size: calc( 100vw / 32 ); overflow-y: auto; font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; color: #4c4c4c; background-color: #fcfcf4; }

@media screen and (min-width: 768px) { html { font-size: 62.5%; overflow-y: scroll; font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; color: #4c4c4c; background-color: #fcfcf4; } }
/* ----------------------------------------------------------- 構成
----------------------------------------------------------- */
body { position: relative; width: 100%; margin: 0 auto; }

section { height: auto; overflow: hidden; margin: 40px 0 0 0; }
section.first { margin: 0 0 0 0; }

.sentence { height: auto; overflow: hidden; }

.pc_none { display: block; }

.sp_none { display: none; }

@media screen and (min-width: 768px) { body { position: relative; z-index: 0; }
  section { height: auto; overflow: hidden; margin: 40px 0 0 0; }
  section.first { margin: 0 0 0 0; }
  .pc_none { display: none; }
  .sp_none { display: block; } }
/* -----------------------------------------------------------
　枠
----------------------------------------------------------- */
article { height: auto; overflow: hidden; width: 96%; margin: 50px auto 0 auto; padding: 0 0 50px 0; }

.wrapper { height: auto; 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; width: 100%; margin: 0 auto; }

.main { width: 100%; margin: 20px auto 0 auto; }

@media screen and (min-width: 768px) { article { height: auto; overflow: hidden; width: 100%; margin: 50px auto 0 auto; padding: 0 0 110px 0; }
  .wrapper { height: auto; overflow: hidden; 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; width: 1020px; margin: 0 auto; padding: 0 0 0 0; }
  .main { width: 720px; margin: 0 0 0 0; padding: 0 0 0 0; } }
/* -----------------------------------------------------------
　見出し
----------------------------------------------------------- */
h2 { color: #2f4f4f; font-size: 2rem; text-align: center; margin: 0 0 15px 0; font-weight: normal; }

.h2_01 { /* 背景緑と白文字左 */ background-color: #76aa03; color: #fff; font-size: 2.0rem; margin: 0 0 15px 0; font-weight: normal; padding: 1.0rem 0 1.0rem 1.2rem; text-align: left; }

.h2_02 { /* 下線緑と縁取りに弱めグラデのグレー背景 */ border-left: solid 1px #e6e6e6; border-top: solid 1px #e6e6e6; border-right: solid 1px #e6e6e6; border-bottom: solid 3px #80b330; background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#EFEFEF)); background: linear-gradient(#ffffff 0%, #EFEFEF 100%); -webkit-box-shadow: 0 -1px 0 white inset; box-shadow: 0 -1px 0 white inset; color: #666; font-size: 2.0rem; margin: 0 0 15px 0; font-weight: normal; padding: 1.0rem 0 1.0rem 1.2rem; text-align: left; }

h3 { border: solid 2px #7c5e40; color: #7c5e40; font-size: 1.9rem; margin: 0 0 10px 0; font-weight: normal; padding: 0.8rem 0 0.6rem 1.0rem; text-align: left; }

.h3_01 { /* 茶・薄茶・白・グレー影 */ border: 0 !important; /* 上のh3が効いているので　アンドロイドのみサイドに線 */ -webkit-box-shadow: 0 2px #764f29, 0 4px #a59b7f, 0 6px #fff, 0 8px rgba(0, 0, 0, 0.1); box-shadow: 0 2px #764f29, 0 4px #a59b7f, 0 6px #fff, 0 8px rgba(0, 0, 0, 0.1); color: #764f29; font-size: 1.9rem; margin: 0 0 20px 0; font-weight: normal; padding: 1.2rem 0 0.6rem 0; text-align: left; border-left: 0; border-right: 0; }

.h4_basic { -webkit-box-shadow: 0 2px #197b30, 0 4px #a3d39c; box-shadow: 0 2px #197b30, 0 4px #a3d39c; color: #197b30; font-size: 1.8rem; margin: 0 0 10px 0; font-weight: normal; padding: 0.8rem 0 0.6rem 1.0rem; text-align: left; }

.h4_01 { /* 濃い緑・点線下線 */ border-bottom: dotted 3px #197b30; color: #197b30; font-size: 1.8rem; margin: 0 0 20px 0; font-weight: normal; padding: 0.8rem 0 0.6rem 0.1rem; text-align: left; }

.p_01 { font-size: 1.5rem; margin-bottom: 2.4rem; line-height: 2.6rem; }

.p_01 span { color: #f26522; font-size: 1.5rem; }

.p_02 { clear: both; display: block; margin-top: 3.6rem; margin-bottom: 3.4rem; position: relative; }

.p_02::after { display: block; width: 0; height: 0; content: ""; position: absolute; bottom: 0; left: 0; right: 0; border-top: 1.8rem solid #197b30; border-right: 2.4rem solid transparent; border-bottom: 1.8rem solid transparent; border-left: 2.4rem solid transparent; margin: auto; }

.mb_0 { margin-bottom: 0; }

.p_rt { text-align: right; padding-right: 0.6rem; }
.p_rt span { font-size: 1.8rem; }

@media screen and (min-width: 768px) { h2 { color: #2f4f4f; font-size: 3.2rem; text-align: center; margin: 0 0 30px 0; font-weight: normal; }
  .h2_01 { background-color: #76aa03; color: #fff; height: 3.0rem; font-size: 2.8rem; text-align: left; margin: 0 0 40px 0; padding: 1.8rem 0 1.2rem 1.6rem; font-weight: normal; }
  .h2_02 { /* 下線緑と縁取りに弱めグラデのグレー背景 */ border-left: solid 1px #e6e6e6; border-top: solid 1px #e6e6e6; border-right: solid 1px #e6e6e6; border-bottom: solid 3px #80b330; background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#EFEFEF)); background: linear-gradient(#ffffff 0%, #EFEFEF 100%); -webkit-box-shadow: 0 -1px 0 white inset; box-shadow: 0 -1px 0 white inset; color: #666; font-size: 2.0rem; margin: 0 0 15px 0; font-weight: normal; padding: 1.0rem 0 0.8rem 1.2rem; text-align: left; }
  h3 { border: solid 2px #7c5e40; color: #7c5e40; font-size: 2.8rem; margin: 0 0 20px 0; font-weight: normal; padding: 1.2rem 0 1.0rem 1.0rem; text-align: left; }
  .h3_01 { /* 茶・薄茶・白・グレー影 */ border: 0 !important; /* 上のh3が効いているので */ -webkit-box-shadow: 0 2px #764f29, 0 4px #a59b7f, 0 6px #fff, 0 8px rgba(0, 0, 0, 0.1); box-shadow: 0 2px #764f29, 0 4px #a59b7f, 0 6px #fff, 0 8px rgba(0, 0, 0, 0.1); color: #764f29; font-size: 2.0rem; margin: 0 0 20px 0; font-weight: normal; padding: 1.2rem 0 0.6rem 0; text-align: left; }
  .h4_basic { /* 濃い緑・薄緑の下線 */ -webkit-box-shadow: 0 3px #197b30, 0 6px #a3d39c; box-shadow: 0 3px #197b30, 0 6px #a3d39c; color: #197b30; font-size: 2.6rem; margin: 0 0 20px 0; font-weight: normal; padding: 0.8rem 0 0.6rem 1.0rem; text-align: left; }
  .h4_01 { /* 濃い緑・点線下線 */ border-bottom: dotted 3px #197b30; color: #197b30; font-size: 1.9rem; margin: 0 0 20px 0; font-weight: normal; padding: 0.8rem 0 0.6rem 0.1rem; text-align: left; }
  .p_01 { font-size: 1.6rem; margin-bottom: 1.4rem; line-height: 2.6rem; }
  .p_01 span { color: #f26522; font-size: 1.6rem; }
  .p_02 { /* 下のとセットで下向き▼を表している */ clear: both; display: block; margin-top: 6.2rem; margin-bottom: 3.4rem; position: relative; }
  .p_02::after { display: block; width: 0; height: 0; content: ""; position: absolute; bottom: 0; left: 0; right: 0; border-top: 2.6rem solid #197b30; border-right: 3.0rem solid transparent; border-bottom: 2.6rem solid transparent; border-left: 3.0rem solid transparent; margin: auto; }
  .mb_0 { margin-bottom: 0; }
  .p_rt { text-align: right; padding-right: 1.4rem; }
  .p_rt span { font-size: 2.3rem; } }
/* -----------------------------------------------------------
　ヘッダ
----------------------------------------------------------- */
header { width: 96%; margin: 0 auto 15px auto; }

.head_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; }

.head_frame_info1 { -webkit-box-ordinal-group: 4; -ms-flex-order: 3; order: 3; text-align: center; margin: 13px 0 0 0; }
.head_frame_info1 p.head_frame_tel { color: #ffffff; background-color: #573b32; font-size: 1.5rem; padding: 5px 10px; }
.head_frame_info1 p.head_frame_telno { color: #583c32; font-size: 2.5rem; margin: 2px 0 0 0; }
.head_frame_info1 p.head_frame_address { font-size: 1.5rem; margin: 5px 0 0 0; color: #573b32; }
.head_frame_info1 p.head_frame_reservation { color: #583c32; background-color: #f9b900; /*display: inline-block;*/ font-size: 1.5rem; padding: 5px 60px; margin-top: 0.2rem; }
.head_frame_info1 a { color: #573b32; text-decoration: none; }

.head_frame_logo { -webkit-box-ordinal-group: 2; -ms-flex-order: 1; order: 1; display: block; margin: 10px 0 0 0; }
.head_frame_logo img { width: 100%; height: auto; }

.head_frame_info2 { -webkit-box-ordinal-group: 3; -ms-flex-order: 2; order: 2; color: #76aa03; text-align: center; margin: 13px 0 0 0; font-size: 1.6rem; }
.head_frame_info2 span { font-size: 2.3rem; font-weight: bold; }

.head_frame_logo_pc { display: none; }

@media screen and (min-width: 768px) { .head_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; width: 1000px; margin: 0 auto; height: 270px; /*
background: url(../images/logo.png) no-repeat;
background-position: center center;
*/ }
  .head_frame_info1 { -webkit-box-ordinal-group: 2; -ms-flex-order: 1; order: 1; text-align: left; margin: 13px 0 0 0; display: block; width: 320px; }
  .head_frame_info1 p.head_frame_tel { color: #ffffff; background-color: #573b32; display: inline-block; font-size: 1.9rem; padding: 8px 0 5px 0; width: 335px; -webkit-box-sizing: border-box; box-sizing: border-box; text-align: center; }
  .head_frame_info1 p.head_frame_telno { color: #583c32; font-size: 2.9rem; margin: 2px 0 0 0; }
  .head_frame_info1 p.head_frame_address { font-size: 1.9rem; margin: 5px 0 0 0; color: #583c32; }
  .head_frame_info1 p.head_frame_reservation { color: #583c32; background-color: #f9b900; display: inline-block; font-size: 1.8rem; padding: 5px 0 3px 0; width: 335px; -webkit-box-sizing: border-box; box-sizing: border-box; text-align: center; }
  .head_frame_info1 a { color: #573b32; text-decoration: none; }
  .head_frame_logo { display: none; }
  .head_frame_info2 { -webkit-box-ordinal-group: 4; -ms-flex-order: 3; order: 3; color: #76aa03; text-align: center; margin: 13px 0 0 0; font-size: 1.8rem; width: 300px; height: 89px; 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; }
  .head_frame_info2 span { font-size: 2.6rem; font-weight: bold; }
  .head_frame_info2 p { border: #76aa03 3px solid; padding: 12px 5px 0px 5px; }
  .head_frame_info2 p.park { padding: 20px 5px 0px 5px; }
  .head_frame_logo_pc { display: block; text-align: center; margin: -167px 0 0 0; position: relative; top: -50px; } }
/* -----------------------------------------------------------
　ハンバーガーメニュー
----------------------------------------------------------- */
/*ハンバーガーアイコン*/
.nav_icon_frame { position: absolute; cursor: pointer; right: 4%; top: 10px; z-index: 99999; background-color: #2f4f4f; padding: 12px 0 0 0; -webkit-box-sizing: border-box; box-sizing: border-box; width: 40px; -webkit-box-shadow: 0 0 0 4px #2f4f4f; box-shadow: 0 0 0 4px #2f4f4f; }

.nav__icon { width: 40px; height: 28px; }

.nav__icon span { background: #ffffff; position: absolute; left: 0; right: 0; width: 30px; height: 3px; border-radius: 4px; text-align: center; margin: 0 auto; }

.nav__icon span:nth-of-type(1) { top: 4px; }

.nav__icon span:nth-of-type(2) { top: 12px; }

.nav__icon span:nth-of-type(3) { top: 20px; }

.nav__icon.active span:nth-of-type(1) { -webkit-transform: translateY(8px) rotate(-45deg); transform: translateY(8px) rotate(-45deg); }

.nav__icon.active span:nth-of-type(2) { display: none; }

.nav__icon.active span:nth-of-type(3) { -webkit-transform: translateY(-8px) rotate(45deg); transform: translateY(-8px) rotate(45deg); }

.nav__icon p { font-size: 12px; margin: 14px 0 0 0; text-align: center; color: #ffffff; font-weight: bold; }

.nav__icon, .nav__icon span { display: inline-block; -webkit-transition: all .4s; transition: all .4s; -webkit-box-sizing: border-box; box-sizing: border-box; z-index: 999; }

.drawr { display: none; position: absolute; top: 20vw; right: 0; left: 0; width: 96%; padding: 0; margin: 0 auto 0 auto; height: auto; z-index: 999999; }

.openNav { display: block; }

/*ハンバーガーナビ*/
.main_nav_sp { display: block; width: 100%; height: auto; margin: 0 0 0 20%; }

.main_nav_sp nav { width: 100%; margin: 0 auto; }

.main_nav_sp ul { 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; width: 100%; -webkit-box-sizing: border-box; box-sizing: border-box; }

.main_nav_sp ul li { width: 100%; text-align: center; font-weight: normal; font-size: 4.8vw; letter-spacing: 0.05em; line-height: 140%; list-style-type: none; -webkit-box-sizing: border-box; box-sizing: border-box; padding: 0 0 0 0.5em; background-color: #2f4f4f; border-bottom: #cccccc 1px solid; }

.main_nav_sp ul li:first-child { border-top: #cccccc 1px solid; }

.main_nav_sp ul li a { color: #ffffff; text-decoration: none; width: 100%; display: block; padding: 10px 0; text-shadow: none; -webkit-box-sizing: border-box; box-sizing: border-box; }

.main_nav_sp ul li.orange1 { background-color: #f18d00; border-bottom: #ffffff 1px solid; }

.main_nav_sp ul li.orange1 a { color: #ffffff; }

.main_nav_sp ul li.orange2 { background-color: #f6b860; border-bottom: #ffffff 1px solid; }

.main_nav_sp ul li.orange2 a { color: #330101; }

@media screen and (min-width: 768px) { .main_nav_sp { display: none; } }
/* ----------------------------------------------------------- グローバルナビ
----------------------------------------------------------- */
.main_nav_pc { display: none; }

@media screen and (min-width: 768px) { .main_nav_pc { width: 100%; background-color: #2f4f4f; height: 68px; display: block; }
  .main_nav_pc ul.main_nav { width: 1000px; margin: 0 auto; 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; list-style-type: none; border-bottom: #f9b900 3px solid; height: 65px; }
  .main_nav_pc ul.main_nav li { width: 200px; display: block; text-align: center; -webkit-box-sizing: border-box; box-sizing: border-box; font-size: 2.1rem; height: 34px; overflow: hidden; box-sizing: border-box; margin: 15px 0 0 0; }
  .main_nav_pc ul.main_nav li span { display: block; margin: 0 0 0 0; height: 34px; border-left: #c8c8c8 2px solid; -webkit-box-sizing: border-box; box-sizing: border-box; width: 200px; padding: 7px 0 0 0; }
  .main_nav_pc ul.main_nav li a { color: #ffffff; text-decoration: none; display: block; height: 34px; padding: 0 0 0 0; }
  .main_nav_pc ul.main_nav li a:hover { opacity: 0.6; }
  .main_nav_pc ul.main_nav li:last-child span { border-right: #c8c8c8 2px solid; } }
/* ----------------------------------------------------------- キービジュアル
----------------------------------------------------------- */
.key_visual { text-align: center; position: relative; }
.key_visual .slider li img { width: 100%; margin: 0 auto; }
.key_visual .key_info { width: 100%; margin: 0 auto; }
.key_visual .key_info img { position: absolute; width: 30%; height: auto; right: 2vw; bottom: 2vw; z-index: 100; }
.key_visual .sp_none { display: none; }

@media screen and (min-width: 768px) { .key_visual { padding: 0 0 30px 0; text-align: center; position: relative; margin: 0 auto; }
  .key_visual .slider li img { width: 1000px; margin: 0 auto; }
  .key_visual .key_info { margin: 0 auto; position: relative; width: 1000px; }
  .key_visual .key_info img { position: absolute; right: 0; left: 0; bottom: -25px; width: 200px; height: auto; z-index: 100; }
  .key_visual .sp_none { display: block; }
  .key_visual .pc_none { display: none; } }
/* ----------------------------------------------------------- アサイド
----------------------------------------------------------- */
aside { display: none; }

@media screen and (min-width: 768px) { aside { display: block; width: 248px; }
  aside a.disease { display: block; border: #80b330 2px solid; -webkit-box-sizing: border-box; box-sizing: border-box; font-size: 2.2rem; color: #80b330; text-decoration: none; padding: 28px 14px; }
  aside ul.aside_list { margin: 26px 0 0 0; list-style-type: none; }
  aside ul.aside_list li { border: #3a975d 2px solid; font-size: 2.2rem; margin: 0 0 15px 0; width: 248px; -webkit-box-sizing: border-box; box-sizing: border-box; }
  aside ul.aside_list li a { color: #3a975d; text-decoration: none; padding: 36px 0 36px 90px; display: block; width: 100%; -webkit-box-sizing: border-box; box-sizing: border-box; }
  aside ul.aside_list li:hover { opacity: 0.6; }
  aside ul.aside_list li:nth-child(1) { background: url(../images/icon_01.jpg) no-repeat; background-position: left 10px center; }
  aside ul.aside_list li:nth-child(2) { background: url(../images/icon_02.jpg) no-repeat; background-position: left 10px center; }
  aside ul.aside_list li:nth-child(3) { background: url(../images/icon_03.jpg) no-repeat; background-position: left 10px center; }
  aside ul.aside_list li:nth-child(4) { background: url(../images/icon_04.jpg) no-repeat; background-position: left 10px center; }
  aside ul.aside_list li:nth-child(4) a { padding: 25px 0 25px 90px; } }
/* -----------------------------------------------------------
　
----------------------------------------------------------- */
iframe.google_map2 { width: 98%; height: 500px; border: #857464 1px solid; -webkit-box-sizing: border-box; box-sizing: border-box; margin: 5px auto 0 auto; }

@media screen and (min-width: 768px) { iframe.google_map2 { width: 99%; height: 300px; border: #857464 1px solid; -webkit-box-sizing: border-box; box-sizing: border-box; margin: 5px auto 0 auto; } }
/* -----------------------------------------------------------
　お知らせ
----------------------------------------------------------- */
.notice_frame { border: #a7a7a7 1px solid; background-color: #ffffff; padding: 3vw; -webkit-box-sizing: border-box; box-sizing: border-box; overflow-y: scroll; height: 78vw; width: 100%; margin: 0 0 60px 0; }
.notice_frame dl dt { margin: 0 0 10px 0; color: #2b7f24; font-size: 1.6rem; }
.notice_frame dl dd { color: #595959; margin: 0 0 10px 0; font-size: 1.5rem; line-height: 130%; }

@media screen and (min-width: 768px) { .notice_frame { border: #a7a7a7 1px solid; background-color: #ffffff; padding: 20px; -webkit-box-sizing: border-box; box-sizing: border-box; overflow-y: scroll; height: 290px; width: 720px; margin: 0 0 40px 0; }
  .notice_frame dl dt { margin: 0 0 10px 0; color: #2b7f24; font-size: 2rem; }
  .notice_frame dl dd { color: #595959; margin: 0 0 10px 0; font-size: 1.8rem; line-height: 130%; } }
/*スマホ用スライドバー*/
@media screen and (max-width: 767px) { .notice_frame::-webkit-scrollbar { width: 12px; background: #ffffff; }
  .notice_frame::-webkit-scrollbar-track { -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3); border-radius: 10px; }
  .notice_frame::-webkit-scrollbar-thumb { border-radius: 10px; -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.5); } }
/* -----------------------------------------------------------
　クリニックの特長
----------------------------------------------------------- */
.features_frame { margin: 30px 0 0 0; border-bottom: #a7a7a7 2px solid; }
.features_frame .features_box { width: 100%; height: auto; margin: 0; font-size: 1.5rem; color: #534741; padding: 15px 0; -webkit-box-sizing: border-box; box-sizing: border-box; line-height: 160%; text-align: center; border-top: #a7a7a7 3px solid; }
.features_frame .features_box span { font-size: 2.2rem; }
.features_frame .features_box small { display: inline-block; margin: 7px 0 0; font-size: 1.2rem; line-height: 1.4; }
.features_frame .features_box.box1 span { color: #864f01; }
.features_frame .features_box.box2 span { color: #c79706; }
.features_frame .features_box.box3 span { color: #659802; }
.features_frame .features_box.box4 span { color: #3a6da7; }

@media screen and (min-width: 768px) { .features_frame { border: none; }
  .features_frame .features_box { width: 720px; height: 200px; margin: 0 0 24px 0; padding: 0 30px; font-size: 1.9rem; color: #534741; line-height: 160%; text-align: left; border: none; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -ms-flex-line-pack: center; align-content: center; }
  .features_frame .features_box span { font-size: 3rem; }
  .features_frame .features_box small { display: inline-block; margin: 10px 0 0; font-size: 1.6rem; line-height: 1.4; }
  .features_frame .features_box:nth-of-type(even) { text-align: right; }
  .features_frame .features_box.box1 { background: url(../images/index_features_01.jpg) no-repeat; }
  .features_frame .features_box.box2 { background: url(../images/index_features_02.jpg) no-repeat; }
  .features_frame .features_box.box3 { background: url(../images/index_features_03.jpg) no-repeat; }
  .features_frame .features_box.box4 { background: url(../images/index_features_04.jpg) no-repeat; } }
/* -----------------------------------------------------------
　こんな症状の場合はご相談ください
----------------------------------------------------------- */
.symptom_frame { 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; margin: 70px 0 0 0; }
.symptom_frame p { width: 46%; background: url(../images/symptom_bg.jpg) no-repeat; background-size: cover; text-align: center; color: #ffffff; font-size: 1.5rem; font-weight: bold; margin: 0 0 4vw 0; -webkit-box-sizing: border-box; box-sizing: border-box; padding: 12vw 0 0 0; line-height: 130%; }
.symptom_frame figure { width: 46%; text-align: center; line-height: 130%; -webkit-box-shadow: 2px 1px 1px rgba(214, 214, 208, 0.9); box-shadow: 2px 1px 1px rgba(214, 214, 208, 0.9); margin: 0 0 4vw 0; }
.symptom_frame figure img { width: 100%; height: auto; }
.symptom_frame figure figcaption { font-size: 1.2rem; padding: 3vw 0; line-height: 130%; }

@media screen and (min-width: 768px) { .symptom_frame { 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; margin: 50px 0 0 0; }
  .symptom_frame p { width: 230px; height: 230px; background: url(../images/symptom_bg.jpg) no-repeat; background-size: 100%; text-align: center; color: #ffffff; font-size: 2.5rem; font-weight: bold; margin: 0 0 20px 0; -webkit-box-sizing: border-box; box-sizing: border-box; padding: 70px 0 0 0; line-height: 130%; }
  .symptom_frame figure { width: 230px; text-align: center; line-height: 130%; -webkit-box-shadow: 1px 1px 1px rgba(214, 214, 208, 0.9); box-shadow: 1px 1px 1px rgba(214, 214, 208, 0.9); margin: 0 0 20px 0; height: 230px; -webkit-box-sizing: border-box; box-sizing: border-box; }
  .symptom_frame figure img { width: 100%; height: auto; }
  .symptom_frame figure figcaption { font-size: 1.8rem; padding: 20px 0; line-height: 130%; }
  google_map2_wrap { margin-top: 0 0 40px; }
  iframe.google_map2 { width: 99%; height: 500px; border: #857464 1px solid; -webkit-box-sizing: border-box; box-sizing: border-box; margin: 5px auto 0 auto; } }
/* -----------------------------------------------------------
　医院概要
----------------------------------------------------------- */
.overview { width: 100%; background-color: #e0edcd; padding: 50px 2% 100px 2%; -webkit-box-sizing: border-box; box-sizing: border-box; }
.overview .clinic_name { text-align: center; margin: 0 0 50px 0; }
.overview .clinic_name img { width: 96%; height: auto; }
.overview .timetable_notice { font-size: 1.4rem; color: #534741; }
.overview .overview_title { color: #857464; font-size: 1.7rem; font-weight: bold; }

.overview_frame { width: 100%; margin: 80px auto 0 auto; -webkit-box-sizing: border-box; box-sizing: border-box; }
.overview_frame .overview_box { width: 100%; 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; }
.overview_frame .overview_box .overview_box_left { width: 100%; }
.overview_frame .overview_box .overview_box_left dl dt { color: #857464; font-size: 1.7rem; font-weight: bold; border-bottom: #857464 1px solid; padding: 0 0 3px 0; margin: 0 0 10px 0; }
.overview_frame .overview_box .overview_box_left dl dd { color: #4c4c4c; font-size: 1.5rem; margin: 0 0 50px 0; }
.overview_frame .overview_box .overview_box_left dl dd a { color: #00903b; font-size: 2.1rem; text-decoration: none; }
.overview_frame .overview_box .overview_box_left dl dd span { color: #00903b; font-size: 2.1rem; text-decoration: none; }
.overview_frame .overview_box .overview_box_right { width: 100%; }
.overview_frame .overview_box .overview_box_right .overview_access_title { color: #857464; font-size: 1.7rem; font-weight: bold; }
.overview_frame .overview_box .overview_box_right iframe.google_map { width: 99%; height: 500px; border: #857464 1px solid; -webkit-box-sizing: border-box; box-sizing: border-box; margin: 5px auto 0 auto; }

@media screen and (min-width: 768px) { .overview { width: 100%; background-color: #e0edcd; padding: 60px 0 30px 0; -webkit-box-sizing: border-box; box-sizing: border-box; margin: 0 auto; box-sizing: border-box; }
  .overview .clinic_name { text-align: center; margin: 0 auto 60px auto; width: 1000px; }
  .overview .clinic_name img { width: 588px; height: auto; }
  .overview .timetable_notice { font-size: 1.8rem; color: #534741; width: 1000px; margin: 0 auto; }
  .overview .overview_title { color: #857464; font-size: 2.2rem; font-weight: bold; width: 1000px; margin: 0 auto; }
  .overview_frame { width: 1000px; margin: 70px auto 0 auto; -webkit-box-sizing: border-box; box-sizing: border-box; }
  .overview_frame .overview_box { width: 1000px; 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; }
  .overview_frame .overview_box .overview_box_left { width: 480px; }
  .overview_frame .overview_box .overview_box_left dl dt { color: #857464; font-size: 2.2rem; font-weight: bold; border-bottom: #857464 1px solid; padding: 0 0 3px 0; margin: 0 0 10px 0; }
  .overview_frame .overview_box .overview_box_left dl dd { color: #4c4c4c; font-size: 1.8rem; margin: 0 0 75px 0; }
  .overview_frame .overview_box .overview_box_left dl dd span { color: #00903b; font-size: 3.8rem; text-decoration: none; }
  .overview_frame .overview_box .overview_box_right { width: 480px; }
  .overview_frame .overview_box .overview_box_right .overview_access_title { color: #857464; font-size: 2.2rem; font-weight: bold; }
  .overview_frame .overview_box .overview_box_right iframe.google_map { width: 100%; height: 480px; border: #857464 1px solid; -webkit-box-sizing: border-box; box-sizing: border-box; margin: 2px auto 0 auto; } }
/* -----------------------------------------------------------
　診療時間
----------------------------------------------------------- */
table.timetable { padding: 0px; margin: 10px auto 15px auto; vertical-align: middle; width: 100%; text-align: center; border-collapse: collapse; -webkit-box-sizing: border-box; box-sizing: border-box; color: #534741; border-top: #857464 1px solid; }
table.timetable tr { border-bottom: #857464 1px solid; }
table.timetable tr th { width: auto; -webkit-box-sizing: border-box; box-sizing: border-box; font-weight: normal; font-size: 1.5rem; padding: 18px 0; vertical-align: middle; color: #fff; background-color: #534741; }
table.timetable tr td { -webkit-box-sizing: border-box; box-sizing: border-box; font-weight: normal; font-size: 1.5rem; padding: 18px 0; background-color: #ffffff; vertical-align: middle; }
table.timetable tr td.time { width: 30%; -webkit-box-sizing: border-box; box-sizing: border-box; font-size: 1.2rem; }

@media screen and (min-width: 768px) { table.timetable { padding: 0px; margin: 5px auto 10px auto; vertical-align: middle; width: 1000px; text-align: center; border-collapse: collapse; -webkit-box-sizing: border-box; box-sizing: border-box; color: #534741; border-top: #857464 1px solid; }
  table.timetable tr { border-bottom: #857464 1px solid; }
  table.timetable tr th { width: auto; -webkit-box-sizing: border-box; box-sizing: border-box; font-weight: normal; font-size: 2rem; padding: 15px 0; vertical-align: middle; color: #fff; background-color: #534741; }
  table.timetable tr th.holiday { width: 130px; }
  table.timetable tr td { -webkit-box-sizing: border-box; box-sizing: border-box; font-weight: normal; font-size: 2rem; padding: 15px 0; background-color: #ffffff; vertical-align: middle; }
  table.timetable tr td.time { width: 200px; -webkit-box-sizing: border-box; box-sizing: border-box; font-size: 2rem; } }
/* -----------------------------------------------------------
　フッター
----------------------------------------------------------- */
footer { background-color: #2f4f4f; }

.footer_frame { display: none; }

.copyright { text-align: center; -webkit-box-sizing: border-box; box-sizing: border-box; margin: 0; color: #ffffff; padding: 15px 2vw; font-size: 1.4rem; }
.copyright a { color: #ffffff; text-decoration: none; padding: 5px 0; }

@media screen and (min-width: 768px) { .footer_frame { display: block; width: 1000px; height: 210px; margin: 0 auto; -webkit-box-sizing: border-box; box-sizing: border-box; }
  .footer_frame .footer_list { padding: 50px 0 0 0; }
  .footer_frame .footer_list ul { font-size: 1.5rem; list-style-type: none; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-pack: distribute; justify-content: space-around; }
  .footer_frame .footer_list ul li a { color: #ffffff; text-decoration: none; }
  .footer_frame .footer_list ul li::before { content: "|"; font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif; margin: 0 10px 0 0; color: #ffffff; }
  .footer_frame .footer_list ul li:last-child::after { content: "|"; font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif; margin: 0 0 0 10px; color: #ffffff; }
  .footer_frame .footer_list ul.footer_list_01 { width: 660px; margin: 0 auto 24px auto; }
  .footer_frame .footer_list ul.footer_list_02 { width: 530px; margin: 0 auto 24px auto; }
  .footer_frame .footer_list ul.footer_list_03 { width: 400px; margin: 0 auto; }
  .copyright { text-align: center; -webkit-box-sizing: border-box; box-sizing: border-box; margin: 0; color: #ffffff; padding: 0 0 5px 0; font-size: 1.3rem; }
  .copyright a { color: #ffffff; text-decoration: none; padding: 0; } }
@media screen and (min-width: 768px) and (max-width: 1500px) { .footer_list ul.footer_list_01 { width: 800px; margin: 0 auto 24px auto; } }
/* -----------------------------------------------------------
　ページトップへ
----------------------------------------------------------- */
#linkpagetop { float: right; }
#linkpagetop img { width: 80%; height: auto; }

#pagetop { position: fixed; bottom: 80px; right: 0px; height: 60px; text-align: center; margin: 0 2% 0 0; }
#pagetop a { display: block; color: #FFF; }

#pagetop_position { float: right; margin: 0px; padding: 0px; }

@media screen and (min-width: 768px) { #linkpagetop { float: left; }
  #linkpagetop img { width: 60px; height: auto; }
  #pagetop { position: fixed; bottom: 100px; left: 50%; margin: 0 0 0 600px; height: 105px; text-align: center; }
  #pagetop a { display: block; color: #ffffff; }
  #pagetop_position { float: right; margin: 0px; padding: 0px; } }
@media screen and (min-width: 768px) and (max-width: 1500px) { #pagetop { position: fixed; bottom: 80px; left: 90%; margin: 0 0 0 0; height: 105px; text-align: center; } }
/* -----------------------------------------------------------
　下層用　ヘッダー
----------------------------------------------------------- */
.key_visual_lower { position: relative; width: 100%; height: auto; margin: 0 0 10px; padding: 5px 0; }

.key_visual_lower .kvl_img { width: 100%; background: url(../images/keyv_lower_sp.jpg) no-repeat center center; background-size: contain; padding-top: calc(300 / 750 * 100%); -webkit-box-sizing: border-box; box-sizing: border-box; /*margin:35vw auto 0 auto;*/ }

.key_visual_lower h1.lower { color: #7c5e40; text-align: center; font-size: 2.0rem; margin: -23vw 0 0 0; border-left: none; font-weight: normal; }

@media screen and (min-width: 768px) { .key_visual_lower { position: relative; width: 100%; height: auto; margin: 0 0 10px; padding: 0; text-align: center; }
  .key_visual_lower .kvl_img { height: 260px; background: url(../images/keyv_lower.jpg) no-repeat center center; padding-top: 260px; -webkit-box-sizing: border-box; box-sizing: border-box; margin: 0 auto; }
  .key_visual_lower h1.lower { 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; color: #7c5e40; font-size: 3.0rem; margin: -150px 0 0 0; border-left: none; font-weight: normal; } }
/* --------------- アクセス --------------- */
iframe.google_map_lower { width: 720px; height: 400px; margin: 0; }

.timetable_notice_lower { font-size: 1.5rem; }

table.tb_lower { padding: 0px; margin: 10px auto 15px auto; vertical-align: middle; width: 100%; text-align: center; border-collapse: collapse; -webkit-box-sizing: border-box; box-sizing: border-box; color: #534741; border-top: #857464 1px solid; }
table.tb_lower tr { border-bottom: #857464 1px solid; }
table.tb_lower tr th { width: auto; -webkit-box-sizing: border-box; box-sizing: border-box; font-weight: normal; font-size: 1.5rem; padding: 18px 0; vertical-align: middle; color: #fff; background-color: #534741; }
table.tb_lower tr td { -webkit-box-sizing: border-box; box-sizing: border-box; font-weight: normal; font-size: 1.5rem; padding: 18px 0; background-color: #ffffff; vertical-align: middle; }
table.tb_lower tr td.time { width: 30%; -webkit-box-sizing: border-box; box-sizing: border-box; font-size: 1.2rem; }

@media screen and (min-width: 768px) { .timetable_notice_lower { font-size: 1.9rem; }
  table.tb_lower { padding: 0px; margin: 5px auto 10px auto; vertical-align: middle; width: 100%; text-align: center; border-collapse: collapse; -webkit-box-sizing: border-box; box-sizing: border-box; color: #534741; border-top: #857464 1px solid; }
  table.tb_lower tr { border-bottom: #857464 1px solid; }
  table.tb_lower tr th { width: auto; -webkit-box-sizing: border-box; box-sizing: border-box; font-weight: normal; font-size: 2rem; padding: 15px 0; vertical-align: middle; color: #fff; background-color: #534741; }
  table.tb_lower tr th.holiday { width: 13%; }
  table.tb_lower tr td { -webkit-box-sizing: border-box; box-sizing: border-box; font-weight: normal; font-size: 2rem; padding: 15px 0; background-color: #ffffff; vertical-align: middle; }
  table.tb_lower tr td.time { width: 20%; -webkit-box-sizing: border-box; box-sizing: border-box; font-size: 2rem; } }
/* --------------- 院長紹介 --------------- */
.doctor_intro { background: url(../images/doctor_name_sp.png) no-repeat; width: 252px; height: 46px; float: right; }

@media screen and (min-width: 768px) { .doctor_intro { background: url(../images/doctor_name.png) no-repeat; width: 423px; height: 27px; float: right; } }
/* --------------- 診療のご案内 --------------- */
.list-basic { list-style: none; padding-top: 1.0rem; padding-left: .2rem; padding-bottom: 2.0rem; }
.list-basic li { padding-left: 2.0rem; background: url(../images/list_basic00_pc.png) no-repeat 0 0.1em/1.2rem; font-size: 1.5rem; line-height: 1.8rem; }
.list-basic.-expanded li { margin-bottom: 1.0em; }
.list-basic span { font-size: 1.5rem; }

.list-basic02 { list-style: circle; padding-top: 1.0rem; padding-left: .2rem; padding-bottom: 2.0rem; }

.list-basic02 li { list-style: circle; padding-left: 2.0rem; font-size: 1.5rem; line-height: 1.8rem; }

.list-basic02.-expanded li { margin-bottom: 1.0em; }

.list-basic02 span { font-size: 1.5rem; }

.clearfix::after { content: ""; display: table; clear: both; }

.low-img-basic02 { display: block; width: 70%; margin: 1.8rem auto 2.0rem; }

.low-img-basic03 { /* 診療のご案内用 診療について */ display: block; width: 250px; margin: 1.8rem auto 2.0rem; }

.low-img-basic04 { /* 診療のご案内用 診療の流れ */ float: right; margin: 0 0 2.0em 1.4em; }

@media screen and (min-width: 768px) { .list-basic { margin-bottom: 2rem; }
  .list-basic li { background: url(../images/list_basic00_pc.png) no-repeat 0 0.1em/1.6rem; font-size: 1.6rem; padding-left: 2.6rem; padding-top: 0.8rem; background-position: 0 .65em; line-height: 2.2rem; }
  .list-basic.-expanded li { margin-bottom: 0.2em; }
  .list-basic span { font-size: 1.6rem; }
  .low-img-basic02 { float: right; width: 250px; margin: 0 1.6rem 2.6rem 3.0em; }
  .low-img-basic03 { /* 診療のご案内用 診療について */ float: right; width: 250px; margin: 1.6rem 0 0 3.0em; }
  .low-img-basic04 { /* 診療のご案内用 診療の流れ */ float: right; margin: 0 0 0 3.0em; } }
/* --------------- 主な対象疾患 --------------- */
.disease_list { list-style-type: none; width: 100%; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; }
.disease_list li { -ms-flex-preferred-size: 48%; flex-basis: 48%; max-width: 48%; /*ie用*/ border: #80b330 2px solid; -webkit-box-sizing: border-box; box-sizing: border-box; font-size: 1.8rem; text-align: center; margin-right: 1rem; margin-bottom: 1rem; }
.disease_list li a { height: 100%; color: #80b330; text-decoration: none; display: grid; place-items: center; width: 100%; padding: 1.0rem 0; -webkit-box-sizing: border-box; box-sizing: border-box; }

@media screen and (min-width: 768px) { .disease_list li { margin-right: 1rem; margin-bottom: 1rem; -ms-flex-preferred-size: 23%; flex-basis: 23%; max-width: 23%; /*ie用*/ }
  .disease_list li a { padding: 1.4rem 0; } }
.disease_list li:hover { opacity: 0.6; }

.disease_list li:nth-child(2n) { margin-right: 0; }

@media screen and (min-width: 768px) { .disease_list li:nth-child(2n) { margin-right: 1rem; }
  .disease_list li:nth-child(4n) { margin-right: 0; } }

/*# sourceMappingURL=style.css.map */