@charset "UTF-8";
/* Scss Document */
/* =======================================================================
 共通項目 
======================================================================= */
/*関数*/
/* ----------------------------------------------------------- 関数
----------------------------------------------------------- */
/*サイトの横幅*/
/*media screen*/
/*文字SP*/
/*文字PC*/
/*基本フォント*/
/*游明朝*/
/*基本文字色 キャッチ本文h2*/
/*基本背景色PC*/
/*白*/
/*メイン緑*/
/*メイン緑2*/
/*アクセントカラー赤*/
/*web予約ボタンなど 青*/
/*特長ラインなど 水色*/
/*予防接種英語など オレンジ*/
/*背景など ベージュ*/
/*背景など 薄いグリーン*/
/*gnav背景 薄いグリーン*/
/*gnavホバー 薄いグリーン*/
/*グリーン*/
/*グリーン2*/
/*グリーン3*/
/*グリーン4*/
/*グリーン5*/
/*グリーン6*/
/*影*/
/*灰色*/
/*グリーン7*/
/*灰色*/
/*グリーン*/
/*茶色*/
/*黒(下層キービジュアル)*/
/*茶色*/
/*水色*/
/*薄茶色*/
/*オレンジ色*/
/*オレンジ色*/
/* ----------------------------------------------------------- 特殊フォント読込
----------------------------------------------------------- */
@font-face { font-family: 'motoyalmaru'; src: url(../font/KosugiMaru-Regular.ttf); font-weight: normal; font-style: normal; }
@font-face { font-family: 'quicksand'; src: url(../font/Quicksand-VariableFont_wght.ttf); font-weight: bold; font-style: normal; }
/* ----------------------------------------------------------- フォントサイズ基本
----------------------------------------------------------- */
html { font-size: calc( 100vw / 32 ); overflow-y: auto; font-family: "游ゴシック Medium", "Yu Gothic Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "メイリオ", Meiryo, Arial, sans-serif; color: #5f4c3f; background-color: #ffffff; padding: 0 0 14vw 0; }

@media screen and (min-width: 768px), print { html { font-size: 62.5%; overflow-y: scroll; font-family: "游ゴシック Medium", "Yu Gothic Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "メイリオ", Meiryo, Arial, sans-serif; color: #5f4c3f; background-color: #ffffff; padding: 0; } }
/* ----------------------------------------------------------- 構成
----------------------------------------------------------- */
body { position: relative; width: 100%; margin: 0 auto; }

section { height: auto; overflow: hidden; margin: 2rem 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: 0 0 0 0; }
  section.first { margin: 0 0 0 0; }
  .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; padding: 0; background-color: #ffffff; }
article.low { background: url("../images/index_bana_bg.png") repeat-x; background-position: left bottom; background-color: #fbfcf1; }

.wrapper { height: auto; width: 100%; margin: 0; padding: 0; }

.main { height: auto; width: 96%; margin: 0 auto; padding: 2rem 0; }

.main_low { height: auto; width: 96%; margin: 0 auto; padding: 2rem 0 10rem 0; }

@media screen and (min-width: 768px), print { article { height: auto; width: 100%; margin: 0; padding: 0; background-color: #ffffff; }
  article.low { background: url("../images/index_bana_bg.png") repeat-x; background-position: left bottom; background-color: #fbfcf1; }
  .wrapper { height: auto; width: 100%; margin: 0; padding: 0; }
  .main { height: auto; width: 876px; margin: 0; padding: 6px 38px 46px 38px; box-sizing: border-box; background-color: #ffffff; }
  .main_low { height: auto; width: 1200px; margin: 0 auto; padding: 62px 0 130px 0; } }
/* -----------------------------------------------------------
　ヘッダ
----------------------------------------------------------- */
header { display: block; margin: 0 0 0 0; height: auto; padding: 0 0 0 0; width: 100%; height: 92vw; position: relative; z-index: 1; background-color: #fbfcf1; }
header .head_frame { position: absolute; top: 0; width: 100%; height: 48vw; margin: 0 0 0 0; background-color: #ffffff; }
header .head_frame .head_logo { width: 78%; margin: 0 0 0 2%; }
header .head_frame .head_logo a img { width: 100%; margin: 2vw 0 0 0; }
header .head_frame .head_dept { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; margin: 1rem auto 0 auto; width: 96%; }
header .head_frame .head_dept p { width: 30%; font-size: 1rem; text-align: center; padding: 0.4rem 0; margin: 0; border-radius: 1rem; color: #ffffff; }
header .head_frame .head_dept p.hd1 { background-color: #52aa6b; }
header .head_frame .head_dept p.hd2 { background-color: #84ca5c; }
header .head_frame .head_dept p.hd3 { background-color: #feae58; }
header .head_frame .head_access { width: 60%; margin: 1rem auto 0 auto; padding: 0.4rem 0; color: #5f4c3f; font-size: 1.4rem; text-align: center; border-top: #5f4c3f 2px dotted; border-bottom: #5f4c3f 2px dotted; background-color: #ffffff; }
header .head_frame .head_access i { color: #84ca5c; }
header .head_frame .head_info_tel { display: none; /*
background-color: $color2;
color: $color0;
font-size: 2rem;
font-family: 'quicksand';
width: 70%;
height: 10vw;
margin:1rem auto 0 auto;
border-radius: 2rem;
display: -webkit-flex;
display: flex;
-webkit-justify-content: center;
justify-content: center;
-webkit-align-items: center;
align-items: center;
-webkit-flex-wrap: wrap;
flex-wrap: wrap;
a{ color: $color0; text-decoration: none;
}
*/ }
header .head_frame .head_info_web { display: none; /*
background-color: $color4;
color: $color0;
font-size: 2rem;
font-weight: bold;
width: 50%;
height: 10vw;
margin:1rem auto 0 auto;
border-radius: 2rem;
display: -webkit-flex;
display: flex;
-webkit-justify-content: center;
justify-content: center;
-webkit-align-items: center;
align-items: center;
-webkit-flex-wrap: wrap;
flex-wrap: wrap;
text-decoration: none;
*/ }
header .key_visual { position: absolute; bottom: 0; z-index: 0; background: url("../images/key_visual_01.jpg"); background-repeat: no-repeat; background-position: center top !important; background-size: cover !important; width: 100%; height: 40vw; }
header .key_visual_box div { /*top:48vw !important;
height: 48vw !important;*/ /*height: 46vw  !important;
margin: -7vw 0 0 0 !important;*/ background-size: cover !important; width: 100% !important; height: 46vw !important; }
header .key_visual_box div .key_visual_on { width: 100%; height: 70vw; }
header .key_visual_box div .key_visual_on .key_catch_copy { position: absolute; right: 2%; top: 0.5rem; font-size: 0.8rem; font-family: 'motoyalmaru'; color: #5f4c3f; -ms-writing-mode: tb-rl; -webkit-writing-mode: vertical-rl; writing-mode: vertical-rl; white-space: nowrap; text-shadow: 2px 0px 2px #ffffff, 2px 0px 2px #ffffff, -2px 0px 2px #ffffff, -2px 0px 2px #ffffff, 0px 2px 2px #ffffff, 0px 2px 2px #ffffff, 0px -2px 2px #ffffff, 0px -2px 2px #ffffff; }
header .key_visual_box div .key_visual_on .key_open { position: absolute; left: 2%; bottom: 0.5rem; width: 28%; height: 28vw; border-radius: 50%; text-align: center; background-color: rgba(230, 0, 18, 0.8); border: rgba(253, 108, 118, 0.8) 5px solid; color: #ffffff; font-family: 'motoyalmaru'; font-weight: normal; font-size: 1.2rem; line-height: 160%; margin: 0; padding: 6.5vw 0 0 0; box-sizing: border-box; }
header .key_visual_box div .key_visual_on .key_open span { font-size: 1rem; }

/*下層*/
header.low { display: block; margin: 0 0 0 0; height: auto; padding: 0 0 0 0; width: 100%; height: 80vw; position: relative; z-index: 1; background-color: #fbfcf1; }
header.low .head_frame { position: absolute; top: 0; width: 100%; height: 44vw; margin: 0 0 0 0; background-color: #ebfbdb; }
header.low .head_frame .head_logo { width: 78%; margin: 0 0 0 2%; }
header.low .head_frame .head_logo a img { width: 100%; margin: 2vw 0 0 0; }
header.low .head_frame .head_dept { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; margin: 1rem auto 0 auto; width: 96%; }
header.low .head_frame .head_dept p { width: 30%; font-size: 1rem; text-align: center; padding: 0.4rem 0; margin: 0; border-radius: 1rem; color: #ffffff; }
header.low .head_frame .head_dept p.hd1 { background-color: #52aa6b; }
header.low .head_frame .head_dept p.hd2 { background-color: #84ca5c; }
header.low .head_frame .head_dept p.hd3 { background-color: #feae58; }
header.low .head_frame .head_access { width: 60%; margin: 1rem auto 0 auto; padding: 0.4rem 0; color: #5f4c3f; font-size: 1.4rem; text-align: center; border-top: #5f4c3f 2px dotted; border-bottom: #5f4c3f 2px dotted; background-color: #ebfbdb; }
header.low .head_frame .head_access i { color: #84ca5c; }
header.low .head_frame .head_info_tel { display: none; }
header.low .head_frame .head_info_web { display: none; }
header.low .key_visual_box_low .key_visual_low { position: absolute; bottom: 0; z-index: 0; background: url("../images/keyvisual_low.png"); background-repeat: no-repeat; background-position: center top; background-size: cover; width: 100%; height: 37vw; }
header.low .key_visual_box_low .key_visual_low h1 { width: 100%; height: 37vw; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; color: #489d60; font-weight: normal; font-size: 2.2rem; font-family: 'motoyalmaru'; text-align: center; letter-spacing: 0.1em; padding: 0; }

@media screen and (min-width: 768px), print { header { display: block; margin: 0 0 0 0; height: auto; padding: 0 0 0 0; width: 100%; height: 940px; position: relative; z-index: 1; background-color: #fbfcf1; }
  header .head_frame { position: absolute; top: 0; left: 0; right: 0; width: 1200px; height: 115px; margin: 0 auto; display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; background-color: transparent; z-index: 99999999999; }
  header .head_frame .head_logo { width: 420px; margin: 0 0 0 9px; }
  header .head_frame .head_logo a img { width: 420px; margin: 17px 0 0 0; }
  header .head_frame .head_dept { display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-flex-direction: column; flex-direction: column; -webkit-align-items: flex-start; align-items: flex-start; -webkit-flex-wrap: wrap; flex-wrap: wrap; margin: 25px 0 0 12px; width: 96px; }
  header .head_frame .head_dept p { width: 96px; font-size: 1.4rem; text-align: center; padding: 0 0 0 0; margin: 0 0 2px 0; border-radius: 1rem; color: #ffffff; height: 19px; }
  header .head_frame .head_dept p.hd1 { background-color: #52aa6b; }
  header .head_frame .head_dept p.hd2 { background-color: #84ca5c; }
  header .head_frame .head_dept p.hd3 { background-color: #feae58; }
  header .head_frame .head_access { width: 198px; height: 45px; margin: 31px 0 0 20px; padding: 0; color: #5f4c3f; font-size: 1.7rem; font-weight: bold; text-align: center; border-top: #5f4c3f 2px dotted; border-bottom: #5f4c3f 2px dotted; background-color: #ffffff; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  header .head_frame .head_access i { color: #84ca5c; margin: 0 0 0 -4px; }
  header .head_frame .head_info_tel { background-color: #84ca5c; color: #ffffff; font-size: 2.2rem; font-family: 'quicksand'; width: 222px; height: 45px; margin: 30px 0 0 15px; border-radius: 3rem; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  header .head_frame .head_info_tel a { color: #ffffff; text-decoration: none; }
  header .head_frame .head_info_web { background-color: #83bdf3; color: #ffffff; font-size: 1.8rem; font-weight: bold; width: 190px; height: 45px; margin: 30px 0 0 10px; border-radius: 3rem; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-wrap: wrap; flex-wrap: wrap; text-decoration: none; letter-spacing: 0.1em; }
  header .key_visual { position: absolute; bottom: 0; z-index: 0; background: url("../images/key_visual_01.jpg"); background-repeat: no-repeat; background-position: center top !important; background-size: cover !important; width: 100%; height: 940px; }
  header .key_visual_box div { background-size: cover !important; top: 0 !important; height: 940px !important; }
  header .key_visual_box div .key_visual_on { width: 1200px !important; /*height: 815px;*/ height: 940px !important; margin: 0 auto 0 auto; position: relative; }
  header .key_visual_box div .key_visual_on .key_catch_copy { position: absolute; right: 48px; top: 240px; font-size: 3rem; font-family: 'motoyalmaru'; color: #5f4c3f; -ms-writing-mode: tb-rl; -webkit-writing-mode: vertical-rl; writing-mode: vertical-rl; text-shadow: 4px 0px 4px #ffffff, 4px 0px 4px #ffffff, -4px 0px 4px #ffffff, -4px 0px 4px #ffffff, 0px 4px 4px #ffffff, 0px 4px 4px #ffffff, 0px -4px 4px #ffffff, 0px -4px 4px #ffffff; }
  header .key_visual_box div .key_visual_on .key_open { position: absolute; left: 2%; bottom: 0.5rem; width: 228px; height: 228px; border-radius: 50%; text-align: center; background-color: rgba(230, 0, 18, 0.8); border: rgba(253, 108, 118, 0.8) 10px solid; color: #ffffff; font-family: 'motoyalmaru'; font-weight: normal; font-size: 3.6rem; line-height: 125%; margin: 0; padding: 60px 0 0 0; box-sizing: border-box; }
  header .key_visual_box div .key_visual_on .key_open span { font-size: 2.4rem; }
  /*下層*/
  header.low { display: block; margin: 0 0 0 0; height: auto; padding: 0 0 0 0; width: 100%; height: 310px; position: relative; z-index: 1; background-color: #ebfbdb; }
  header.low .head_frame { position: absolute; top: 0; left: 0; right: 0; width: 1200px; height: 103px; margin: 0 auto; display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; background-color: #ebfbdb; z-index: 99999999999; }
  header.low .head_frame .head_logo { width: 420px; margin: 0 0 0 9px; }
  header.low .head_frame .head_logo a img { width: 420px; margin: 17px 0 0 0; }
  header.low .head_frame .head_dept { display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-flex-direction: column; flex-direction: column; -webkit-align-items: flex-start; align-items: flex-start; -webkit-flex-wrap: wrap; flex-wrap: wrap; margin: 25px 0 0 12px; width: 96px; }
  header.low .head_frame .head_dept p { width: 96px; font-size: 1.4rem; text-align: center; padding: 0 0 0 0; margin: 0 0 2px 0; border-radius: 1rem; color: #ffffff; height: 19px; }
  header.low .head_frame .head_dept p.hd1 { background-color: #52aa6b; }
  header.low .head_frame .head_dept p.hd2 { background-color: #84ca5c; }
  header.low .head_frame .head_dept p.hd3 { background-color: #feae58; }
  header.low .head_frame .head_access { width: 198px; height: 45px; margin: 31px 0 0 20px; padding: 0; color: #5f4c3f; font-size: 1.7rem; font-weight: bold; text-align: center; border-top: #5f4c3f 2px dotted; border-bottom: #5f4c3f 2px dotted; background-color: #ebfbdb; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  header.low .head_frame .head_access i { color: #84ca5c; margin: 0 0 0 -4px; }
  header.low .head_frame .head_info_tel { background-color: #84ca5c; color: #ffffff; font-size: 2.2rem; font-family: 'quicksand'; width: 222px; height: 45px; margin: 30px 0 0 15px; border-radius: 3rem; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  header.low .head_frame .head_info_tel a { color: #ffffff; text-decoration: none; }
  header.low .head_frame .head_info_web { background-color: #83bdf3; color: #ffffff; font-size: 1.8rem; font-weight: bold; width: 190px; height: 45px; margin: 30px 0 0 10px; border-radius: 3rem; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-wrap: wrap; flex-wrap: wrap; text-decoration: none; letter-spacing: 0.1em; }
  header.low .key_visual_box_low .key_visual_low { position: absolute; bottom: 0px; z-index: 0; background: url("../images/keyvisual_low.png"); background-repeat: no-repeat; background-position: center top; background-size: cover; background-color: #fbfcf1; width: 100%; height: 310px; }
  header.low .key_visual_box_low .key_visual_low h1 { width: 100%; height: 310px; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; color: #489d60; font-weight: normal; font-size: 4rem; font-family: 'motoyalmaru'; text-align: center; letter-spacing: 0.1em; padding: 40px 0 0 0; } }
/* -----------------------------------------------------------
　メインナビ
----------------------------------------------------------- */
.main_nav_pc { display: none; }

@media screen and (min-width: 768px), print { .main_nav_pc { display: block; height: 95px; margin: 0; padding: 24px 0 0 0; width: 100%; overflow: visible; background-color: #fbfcf1; }
  .main_nav_pc nav { width: 1180px; height: 95px; margin: 0 auto; padding: 0; }
  .main_nav_pc nav ul { list-style-type: none; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; width: auto; box-sizing: border-box; height: 95px; padding: 0; margin: 0; }
  .main_nav_pc nav ul li { display: block; text-align: center; box-sizing: border-box; width: 196.66px; height: 95px; text-align: center; font-weight: normal; margin: 0 0 0 0; border-left: #5f4c3f 1px dashed; }
  .main_nav_pc nav ul li a { text-decoration: none; color: #5f4c3f; height: 95px; width: 100%; box-sizing: border-box; margin: 0; padding: 0; letter-spacing: 0.05em; font-size: 1.6rem; font-weight: bold; display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-align-items: center; align-items: center; -webkit-flex-direction: column; flex-direction: column; }
  .main_nav_pc nav ul li a img { width: 41px; margin: 0 0 8px 0; }
  .main_nav_pc nav ul li a span.jp { font-size: 1.6rem; font-weight: bold; color: #5f4c3f; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: nowrap; flex-wrap: nowrap; }
  .main_nav_pc nav ul li a span.jp i { font-size: 1rem; }
  .main_nav_pc nav ul li a span.eng { font-size: 1.4rem; color: #feae58; margin: 10px 0 0 0; }
  .main_nav_pc nav ul li a:hover { background-color: #dff4be; transition: all 0.3s ease 0s; }
  .main_nav_pc nav ul li ul { width: 196.66px; height: auto; display: none; margin: 15px 0 0 0; padding: 0 0 0 0; position: relative; z-index: 99999; border-radius: 8px; }
  .main_nav_pc nav ul li ul li { display: block; text-align: center; box-sizing: border-box; width: 196.66px; height: 40px; text-align: left; font-weight: normal; margin: 0 0 0 0; border-left: none; box-sizing: border-box; }
  .main_nav_pc nav ul li ul li a { color: #5f4c3f; height: 40px; width: 100%; box-sizing: border-box; margin: 0; padding: 0 0 0 0; letter-spacing: 0.05em; font-size: 1.5rem; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; background-color: #dff4be; box-sizing: border-box; border-bottom: #5f4c3f 1px dashed; text-align: center; }
  .main_nav_pc nav ul li ul li a:hover { background-color: #bee286; transition: all 0.3s ease 0s; }
  .main_nav_pc nav ul li ul li:first-child a { border-top-left-radius: 8px; border-top-right-radius: 8px; }
  .main_nav_pc nav ul li ul li:last-child { border-right: none; }
  .main_nav_pc nav ul li ul li:last-child a { border-bottom: none; border-bottom-left-radius: 8px; border-bottom-right-radius: 8px; }
  .main_nav_pc nav ul li:last-child { border-right: #5f4c3f 1px dashed; }
  .main_nav_pc nav ul li.medical a span.eng { margin: 8px 0 0 0; }
  .main_nav_pc nav ul li.medical a:hover { cursor: pointer; }
  .main_nav_pc nav ul li.doctor a span.eng { margin: 8px 0 0 0; }
  .main_nav_pc nav ul li.doctor a:hover { cursor: pointer; }
  .main_nav_pc nav ul.open_nav { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-flex-direction: column; flex-direction: column; -webkit-flex-wrap: wrap; flex-wrap: wrap; } }
/*-----------------------------------------------------------
お知らせ
----------------------------------------------------------- */
.notice_frame { width: 100%; margin: 0 0 0 0; padding: 2rem 0 2rem 0; box-sizing: border-box; overflow: visible; height: auto; background: url("../images/index_notice_bg.png") repeat-x; background-position: left bottom; background-size: 50%; background-color: #fbfcf1; }
.notice_frame a.bana_web { width: 90%; margin: 0 auto 2rem auto; display: block; }
.notice_frame a.bana_web img { width: 100%; }
.notice_frame .bana_web_text { width: 90%; margin: 0 auto 2rem auto; }
.notice_frame figure.bana_corona { width: 90%; margin: 0 auto 2rem auto; display: block; }
.notice_frame figure.bana_corona img { width: 100%; }
.notice_frame a.bana_recruit { text-decoration: none; background: url("../images/bana_recruit.jpg") no-repeat; background-color: #dff4be; background-position: left center; background-size: 55%; width: 90%; height: 17vw; margin: 0 auto 2rem auto; border: #c0df8f 3px solid; border-radius: 0.5rem; box-sizing: border-box; display: -webkit-flex; display: flex; -webkit-justify-content: flex-end; justify-content: flex-end; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
.notice_frame a.bana_recruit span { color: #5f4c3f; font-family: 'motoyalmaru'; font-size: 1.6rem; font-weight: normal; text-align: center; margin: 0 5% 0 0; line-height: 120%; }
.notice_frame .notice_box { width: 96%; margin: 0 auto; position: relative; z-index: 0; }
.notice_frame .notice_box .notice_area { margin: 0 0 0 0; padding: 0 0 2rem 0; position: relative; }
.notice_frame .notice_box .notice_area dl { height: auto; margin: 2rem auto 0 auto; width: 96%; overflow-wrap: break-word; }
.notice_frame .notice_box .notice_area dl dt { color: #5f4c3f; margin: 1rem 0 0.4rem 0; padding: 1rem 0.4rem 0 2rem; font-size: 1.5rem; box-sizing: border-box; font-weight: bold; letter-spacing: 0.1em; line-height: 140%; position: relative; }
.notice_frame .notice_box .notice_area dl dt::before { position: absolute; font-family: "fontello"; content: "\00e8e3"; color: #84ca5c; display: block; width: 0; height: 0; margin: auto; left: 0; top: 1rem; font-size: 1.2rem; }
.notice_frame .notice_box .notice_area dl dt.open::before { border: none; font-family: "fontello"; content: "\00e8e3"; color: #84ca5c; }
.notice_frame .notice_box .notice_area dl dt.close::before { font-family: "fontello"; content: "\00e822"; color: #84ca5c; }
.notice_frame .notice_box .notice_area dl dt.date a { /*text-decoration: none;*/ color: #5f4c3f; }
.notice_frame .notice_box .notice_area dl dt:first-child { padding: 1rem 0.4rem 0 2rem; border-top: none; }
.notice_frame .notice_box .notice_area dl dd { margin: 0 0 1rem 0; padding: 0 0.4rem 0 2rem; color: #5f4c3f; font-size: 1.4rem; line-height: 160%; display: none; }
.notice_frame .notice_box .notice_area dl dd.open { display: block; }
.notice_frame .notice_box .notice_area dl dd a { color: #52aa6b; }

@media screen and (min-width: 768px), print { .notice_frame { width: 100%; margin: 0 0 0 0; padding: 44px 0 77px 0; box-sizing: border-box; overflow: visible; height: auto; background: url("../images/index_notice_bg.png") repeat-x; background-position: left bottom; background-size: 482px; background-color: #fbfcf1; }
  .notice_frame a.bana_web { width: 760px; margin: 0 auto 43px auto; display: block; }
  .notice_frame a.bana_web img { width: 760px; }
  .notice_frame a.bana_web:hover { opacity: 0.8; transition: all 0.3s ease 0s; }
  .notice_frame .bana_web_text { width: 760px; margin: 0 auto 43px auto; }
  .notice_frame figure.bana_corona { width: 760px; margin: 0 auto 43px auto; display: block; }
  .notice_frame figure.bana_corona img { width: 760px; }
  .notice_frame a.bana_recruit { text-decoration: none; background: url("../images/bana_recruit.jpg") no-repeat; background-color: #dff4be; background-position: left center; background-size: 285px; width: 760px; height: 100px; margin: 0 auto 63px auto; border: #c0df8f 3px solid; border-radius: 10px; box-sizing: border-box; display: -webkit-flex; display: flex; -webkit-justify-content: flex-end; justify-content: flex-end; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .notice_frame a.bana_recruit span { color: #5f4c3f; font-family: 'motoyalmaru'; font-size: 3rem; font-weight: normal; text-align: center; margin: 0 112px 0 0; line-height: 120%; }
  .notice_frame a.bana_recruit span br { display: none; }
  .notice_frame a.bana_recruit:hover { opacity: 0.8; transition: all 0.3s ease 0s; }
  .notice_frame .notice_box { width: 1000px; margin: 0 auto; position: relative; z-index: 0; }
  .notice_frame .notice_box .notice_area { margin: 0 0 0 0; padding: 0 0 20px 0; position: relative; }
  .notice_frame .notice_box .notice_area dl { height: auto; margin: 0; width: 1000px; overflow-wrap: break-word; }
  .notice_frame .notice_box .notice_area dl dt { color: #5f4c3f; margin: 15px 0 8px 0; padding: 15px 0 0 25px; font-size: 1.8rem; box-sizing: border-box; font-weight: bold; letter-spacing: 0.1em; line-height: 140%; position: relative; }
  .notice_frame .notice_box .notice_area dl dt::before { position: absolute; font-family: "fontello"; content: "\00e8e3"; color: #84ca5c; display: block; width: 0; height: 0; margin: auto; left: 0; top: 15px; font-size: 1.8rem; }
  .notice_frame .notice_box .notice_area dl dt.open::before { border: none; font-family: "fontello"; content: "\00e8e3"; color: #84ca5c; }
  .notice_frame .notice_box .notice_area dl dt.close::before { font-family: "fontello"; content: "\00e822"; color: #84ca5c; }
  .notice_frame .notice_box .notice_area dl dt:first-child { padding: 15px 0 0 25px; }
  .notice_frame .notice_box .notice_area dl dd { margin: 0 0 32px 0; padding: 0 0 0 0; color: #5f4c3f; font-size: 1.6rem; line-height: 160%; display: none; }
  .notice_frame .notice_box .notice_area dl dd.open { display: block; }
  .notice_frame .notice_box .notice_area dl dd a { color: #52aa6b; } }
/*-----------------------------------------------------------
クリニックの特長
----------------------------------------------------------- */
.features_frame { margin: 0; padding: 4rem 0 0 0; background: url("../images/index_features_bg.png"); background-position: left bottom; background-repeat: repeat-x; }
.features_frame .features_area { width: 96%; margin: 2rem auto 0 auto; }
.features_frame .features_area .features_box { margin: 0 0 4rem 0; }
.features_frame .features_area .features_box .f_img { width: 100%; height: 45vw; position: relative; }
.features_frame .features_area .features_box .f_img span { width: 16%; height: 15vw; border-radius: 50%; background-color: #e60012; color: #ffffff; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: column; flex-direction: column; font-size: 2rem; font-family: 'quicksand'; font-weight: normal; position: absolute; top: 1rem; left: 1rem; letter-spacing: 0.1em; }
.features_frame .features_area .features_box .f1 { background: url("../images/index_feature_01.png") no-repeat; background-size: cover; }
.features_frame .features_area .features_box .f2 { background: url("../images/index_feature_02.png") no-repeat; background-size: cover; }
.features_frame .features_area .features_box .f3 { background: url("../images/index_feature_03.png") no-repeat; background-size: cover; }
.features_frame .features_area .features_box .f4 { background: url("../images/index_feature_04.png") no-repeat; background-size: cover; }
.features_frame .features_area .features_box .features_title { text-align: center; margin: 1rem 0; font-size: 1.8rem; font-weight: bold; color: #5f4c3f; letter-spacing: 0.1em; }
.features_frame .features_area .features_box .features_title span { background: linear-gradient(transparent 70%, #c3e2fd 30%); }
.features_frame .features_area .features_box .features_text { width: 96%; margin: 0 auto; letter-spacing: 0.1em; }

@media screen and (min-width: 768px), print { .features_frame { margin: 0; padding: 38px 0 68px 0; background: url("../images/index_features_bg.png"); background-position: left bottom; background-repeat: repeat-x; }
  .features_frame .features_area { width: 1180px; margin: 60px auto 0 auto; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .features_frame .features_area .features_box { margin: 0 0 60px 0; width: 550px; }
  .features_frame .features_area .features_box .f_img { width: 550px; height: 269px; position: relative; }
  .features_frame .features_area .features_box .f_img span { width: 76px; height: 76px; border-radius: 50%; background-color: #e60012; color: #ffffff; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: column; flex-direction: column; font-size: 3.2rem; font-family: 'quicksand'; font-weight: normal; position: absolute; top: 17px; left: 26px; letter-spacing: 0.05em; }
  .features_frame .features_area .features_box .f1 { background: url("../images/index_feature_01.png") no-repeat; background-size: cover; }
  .features_frame .features_area .features_box .f2 { background: url("../images/index_feature_02.png") no-repeat; background-size: cover; }
  .features_frame .features_area .features_box .f3 { background: url("../images/index_feature_03.png") no-repeat; background-size: cover; }
  .features_frame .features_area .features_box .f4 { background: url("../images/index_feature_04.png") no-repeat; background-size: cover; }
  .features_frame .features_area .features_box .features_title { text-align: center; margin: 20px 0 14px 0; font-size: 2.6rem; font-weight: bold; color: #5f4c3f; letter-spacing: 0.1em; }
  .features_frame .features_area .features_box .features_title span { background: linear-gradient(transparent 70%, #c3e2fd 30%); }
  .features_frame .features_area .features_box .features_text { width: 96%; margin: 0 auto; font-size: 1.8rem; letter-spacing: 0.1em; } }
/*-----------------------------------------------------------
診療内容
----------------------------------------------------------- */
.medical_frame { background: url("../images/index_medical_bg.png"); background-position: left bottom; background-repeat: repeat-x; background-color: #ebfbdb; padding: 2rem 0; margin: 0; }
.medical_frame .medical_img { display: none; }
.medical_frame .medical_box { width: 96%; margin: 2rem auto 2rem auto; display: -webkit-flex; display: flex; -webkit-justify-content: space-around; justify-content: space-around; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
.medical_frame .medical_box a.medical_item { width: 45%; height: 43vw; border-radius: 50%; text-align: center; color: #ffffff; font-weight: bold; font-size: 1.2rem; line-height: 160%; margin: 0 0 2rem 0; padding: 2.5vw 0 0 0; box-sizing: border-box; text-decoration: none; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: column; flex-direction: column; }
.medical_frame .medical_box a.medical_item img { width: 45%; margin: 0 0 0.8rem 0; }
.medical_frame .medical_box a.medical_item.green1 { background-color: #61c37d; border: #a0e2b3 1rem solid; }
.medical_frame .medical_box a.medical_item.green2 { background-color: #8dd961; border: #bbf29c 1rem solid; }
.medical_frame .medical_box .trouble_box { width: 70%; position: relative; height: 43vw; }
.medical_frame .medical_box .trouble_box p.trouble { width: 67%; height: 43vw; border-radius: 50%; text-align: center; color: #ffffff; font-weight: bold; font-size: 1.2rem; line-height: 160%; margin: 0 auto 2rem auto; padding: 2.5vw 0 0 0; box-sizing: border-box; text-decoration: none; background-color: #61c37d; border: #a0e2b3 1rem solid; line-height: 120%; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: column; flex-direction: column; }
.medical_frame .medical_box .trouble_box p.trouble img { width: 45%; margin: 0 0 0.8rem 0; }
.medical_frame .medical_box .trouble_box .trouble_link { position: relative; top: -49vw; left: 0; right: 0; width: 100%; height: 43vw; margin: 0 auto; opacity: 0; }
.medical_frame .medical_box .trouble_box .trouble_link a { color: #56b672; background-color: #ffffff; text-decoration: none; border-radius: 1rem; font-size: 1rem; padding: 0.5rem; box-sizing: border-box; width: 37%; text-align: center; }
.medical_frame .medical_box .trouble_box .trouble_link a.tl1 { position: absolute; top: 0; left: 0; }
.medical_frame .medical_box .trouble_box .trouble_link a.tl2 { position: absolute; top: 0; right: 0; }
.medical_frame .medical_box .trouble_box .trouble_link a.tl3 { position: absolute; top: 15vw; left: 0; }
.medical_frame .medical_box .trouble_box .trouble_link a.tl4 { position: absolute; top: 15vw; right: 0; }
.medical_frame .medical_box .trouble_box .trouble_link a.tl5 { position: absolute; bottom: 5vw; right: 0; left: 0; width: 50%; margin: 0 auto; }
.medical_frame .medical_box .trouble_box .trouble_link:hover { opacity: 1; transform: translate(0, 5vw); transition: all 1000ms; }
.medical_frame .medical_box .open_trouble .trouble_link { opacity: 1; transform: translate(0, 5vw); transition: all 1000ms; }

@media screen and (min-width: 768px), print { .medical_frame { background: url("../images/index_medical_bg.png"); background-position: left bottom; background-repeat: repeat-x; background-color: #ebfbdb; padding: 32px 0 100px 0; margin: 0; position: relative; }
  .medical_frame .medical_img { display: block; width: 1080px; height: 80px; margin: 0 auto; position: absolute; top: 70px; left: 0; right: 0; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .medical_frame .medical_box { width: 800px; margin: 50px auto 0 auto; display: -webkit-flex; display: flex; -webkit-justify-content: space-around; justify-content: space-around; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .medical_frame .medical_box a.medical_item { width: 206px; height: 206px; border-radius: 50%; text-align: center; color: #ffffff; font-weight: bold; font-size: 1.8rem; line-height: 160%; margin: 0 0 50px 0; padding: 20px 0 0 0; box-sizing: border-box; text-decoration: none; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: column; flex-direction: column; }
  .medical_frame .medical_box a.medical_item img { width: 71px; margin: 0 0 5px 0; }
  .medical_frame .medical_box a.medical_item.green1 { background-color: #61c37d; border: #a0e2b3 15px solid; }
  .medical_frame .medical_box a.medical_item.green2 { background-color: #8dd961; border: #bbf29c 15px solid; }
  .medical_frame .medical_box a.medical_item.mifour { margin: 0 0 0 145px; }
  .medical_frame .medical_box a.medical_item:hover { opacity: 0.6; transition: all 0.3s ease 0s; }
  .medical_frame .medical_box .trouble_box { width: 296px; position: relative; height: 214px; margin: 0 110px 0 0; }
  .medical_frame .medical_box .trouble_box p.trouble { width: 206px; height: 206px; border-radius: 50%; text-align: center; color: #ffffff; font-weight: bold; font-size: 1.8rem; line-height: 160%; margin: 0 auto 2rem auto; padding: 5px 0 0 0; box-sizing: border-box; text-decoration: none; background-color: #61c37d; border: #a0e2b3 15px solid; line-height: 120%; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: column; flex-direction: column; }
  .medical_frame .medical_box .trouble_box p.trouble img { width: 71px; margin: 0 0 10px 0; }
  .medical_frame .medical_box .trouble_box .trouble_link { position: relative; top: -206px; left: 0; right: 0; width: 296px; height: 214px; margin: 0 auto; opacity: 0; }
  .medical_frame .medical_box .trouble_box .trouble_link a { color: #56b672; background-color: #ffffff; text-decoration: none; border-radius: 2rem; font-size: 1.5rem; padding: 8px 0; box-sizing: border-box; width: 100px; text-align: center; }
  .medical_frame .medical_box .trouble_box .trouble_link a.tl1 { position: absolute; top: -10px; left: 0; }
  .medical_frame .medical_box .trouble_box .trouble_link a.tl2 { position: absolute; top: -10px; right: 0; }
  .medical_frame .medical_box .trouble_box .trouble_link a.tl3 { position: absolute; top: 50px; left: 0; }
  .medical_frame .medical_box .trouble_box .trouble_link a.tl4 { position: absolute; top: 50px; right: 0; }
  .medical_frame .medical_box .trouble_box .trouble_link a.tl5 { position: absolute; bottom: 40px; right: 0; left: 0; width: 50%; margin: 0 auto; }
  .medical_frame .medical_box .trouble_box .trouble_link a:hover { opacity: 0.8; transition: all 0.3s ease 0s; }
  .medical_frame .medical_box .trouble_box .trouble_link:hover { opacity: 1; transform: translate(0, 23px); transition: all 1000ms; } }
/*----------------------------------------------------------- お子さんが「病気かな？」と思ったら
----------------------------------------------------------- */
.sick_frame { margin: 0; padding: 2rem 0 10rem 0; background: url("../images/index_sick_bg.png") repeat-x; background-position: left bottom; position: relative; }
.sick_frame .sick_box { margin: 2rem 0 0 0; }
.sick_frame .sick_box figure img { width: 80%; display: block; margin: 0 auto; }
.sick_frame .sick_box .sick_text { width: 80%; margin: 2rem auto 0 auto; }
.sick_frame .sick_box .sick_text p { text-align: justify; }
.sick_frame .sick_box .sick_text a.sick_link { width: 100%; height: 10vw; color: #ffffff; background-color: #55ab6d; border-radius: 2rem; font-size: 1.2rem; letter-spacing: 0.1em; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-wrap: wrap; flex-wrap: wrap; text-decoration: none; }
.sick_frame figure.sick_fukurou { position: absolute; bottom: 8vw; right: 2%; }

@media screen and (min-width: 768px), print { .sick_frame { margin: 0; padding: 54px 0 130px 0; background: url("../images/index_sick_bg.png") repeat-x; background-position: left bottom; position: relative; }
  .sick_frame .sick_box { margin: 32px auto 0 auto; width: 1180px; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .sick_frame .sick_box figure { width: 540px; }
  .sick_frame .sick_box figure img { width: 478px; display: block; margin: 0 0 0 16px; }
  .sick_frame .sick_box .sick_text { width: 640px; margin: 60px 0 0 0; }
  .sick_frame .sick_box .sick_text p { text-align: left; font-size: 1.8rem; line-height: 200%; margin: 0 0 50px 0; }
  .sick_frame .sick_box .sick_text a.sick_link { width: 350px; height: 50px; color: #ffffff; background-color: #55ab6d; border-radius: 3rem; font-size: 1.8rem; letter-spacing: 0.1em; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-wrap: wrap; flex-wrap: wrap; text-decoration: none; }
  .sick_frame .sick_box .sick_text a.sick_link:hover { opacity: 0.8; transition: all 0.3s ease 0s; }
  .sick_frame figure.sick_fukurou { width: 1180px; margin: 0 auto; position: absolute; bottom: 55px; right: 0; left: 0; text-align: right; }
  .sick_frame figure.sick_fukurou img { margin: 0 80px 0 0; } }
/*-----------------------------------------------------------
ごあいさつ
----------------------------------------------------------- */
.greeting_frame { padding: 1rem 0 5rem 0; margin: 0; background: url("../images/index_greeting_bg.png") repeat-x; background-position: left bottom; background-color: #fbfcf1; }
.greeting_frame .greeting_bg .greeting_box { width: 96%; margin: 2rem auto 0 auto; }
.greeting_frame .greeting_bg .greeting_box .greeting_text { line-height: 200%; text-shadow: 4px 0px 4px #f7f9e2, 4px 0px 4px #f7f9e2, -4px 0px 4px #f7f9e2, -4px 0px 4px #f7f9e2, 0px 4px 4px #f7f9e2, 0px 4px 4px #f7f9e2, 0px -4px 4px #f7f9e2, 0px -4px 4px #f7f9e2; }
.greeting_frame .greeting_bg .greeting_box .greeing_name { float: right; text-align: left; line-height: 200%; text-shadow: 4px 0px 4px #f7f9e2, 4px 0px 4px #f7f9e2, -4px 0px 4px #f7f9e2, -4px 0px 4px #f7f9e2, 0px 4px 4px #f7f9e2, 0px 4px 4px #f7f9e2, 0px -4px 4px #f7f9e2, 0px -4px 4px #f7f9e2; }
.greeting_frame .greeting_bg .greeting_box .greeing_name span { font-size: 1.6rem; }
.greeting_frame .greeting_bg .greeting_box .greeing_name span span { font-size: 1.2rem; }
.greeting_frame .greeting_bg .greeting_box a.greeting_link { width: 60%; height: 10vw; color: #ffffff; background-color: #55ab6d; border-radius: 2rem; font-size: 1.2rem; letter-spacing: 0.1em; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-wrap: wrap; flex-wrap: wrap; text-decoration: none; margin: 0 auto; }

@media screen and (min-width: 768px), print { .greeting_frame { padding: 30px 0 105px 0; margin: 0; background: url("../images/index_greeting_bg.png") repeat-x; background-position: left bottom; background-color: #fbfcf1; }
  .greeting_frame .greeting_bg { width: 1620px; min-height: 350px; background: url("../images/decoration_04.png"), url("../images/decoration_05.png"); background-repeat: no-repeat,no-repeat; background-position: left bottom,right bottom; margin: 0 auto; }
  .greeting_frame .greeting_bg .greeting_box { width: 900px; height: 330px; margin: 38px auto 0 auto; overflow: hidden; position: relative; }
  .greeting_frame .greeting_bg .greeting_box .greeting_text { font-size: 1.6rem; line-height: 220%; text-shadow: 4px 0px 4px #f7f9e2, 4px 0px 4px #f7f9e2, -4px 0px 4px #f7f9e2, -4px 0px 4px #f7f9e2, 0px 4px 4px #f7f9e2, 0px 4px 4px #f7f9e2, 0px -4px 4px #f7f9e2, 0px -4px 4px #f7f9e2; }
  .greeting_frame .greeting_bg .greeting_box .greeing_name { font-size: 1.6rem; float: none; text-align: left; line-height: 200%; margin: 0 0 0 0; position: absolute; bottom: 0; right: 0; text-shadow: 4px 0px 4px #f7f9e2, 4px 0px 4px #f7f9e2, -4px 0px 4px #f7f9e2, -4px 0px 4px #f7f9e2, 0px 4px 4px #f7f9e2, 0px 4px 4px #f7f9e2, 0px -4px 4px #f7f9e2, 0px -4px 4px #f7f9e2; }
  .greeting_frame .greeting_bg .greeting_box .greeing_name span { font-size: 1.8rem; }
  .greeting_frame .greeting_bg .greeting_box .greeing_name span span { font-size: 1.4rem; }
  .greeting_frame .greeting_bg .greeting_box a.greeting_link { position: absolute; bottom: 0; left: 0; overflow: hidden; width: 240px; height: 50px; color: #ffffff; background-color: #55ab6d; border-radius: 3rem; font-size: 1.6rem; letter-spacing: 0.1em; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-wrap: wrap; flex-wrap: wrap; text-decoration: none; margin: 0 0 0 0; }
  .greeting_frame .greeting_bg .greeting_box a.greeting_link:hover { opacity: 0.8; transition: all 0.3s ease 0s; } }
/*-----------------------------------------------------------
ロゴの由来
----------------------------------------------------------- */
.simbol_frame { padding: 1rem 0 5rem 0; margin: 0; background: url("../images/index_simbol_bg.png") repeat-x; background-position: left bottom; position: relative; }
.simbol_frame figure.fimblo_img { margin: 2rem 0 0 0; }
.simbol_frame figure.fimblo_img img { width: 80%; max-width: 404px; display: block; margin: 0 auto; }
.simbol_frame .simbol_box { width: 96%; margin: 2rem auto 0 auto; background: url("../images/decoration_07.png"), url("../images/decoration_06.png"); background-position: left top,right bottom; background-repeat: no-repeat,no-repeat; }
.simbol_frame .simbol_box p { width: 80%; margin: 0 auto; line-height: 200%; padding: 2rem 0; }
.simbol_frame .simbol_risu { position: absolute; display: block; bottom: 0; right: 0; left: 0; width: 125px; margin: 0 auto; }

@media screen and (min-width: 768px), print { .simbol_frame { padding: 20px 0 150px 0; margin: 0; background: url("../images/index_simbol_bg.png") repeat-x; background-position: left bottom; position: relative; }
  .simbol_frame figure.fimblo_img { margin: 36px 0 0 0; }
  .simbol_frame figure.fimblo_img img { width: 404px; max-width: 404px; display: block; margin: 0 auto; }
  .simbol_frame .simbol_box { width: 1180px; margin: 8px auto 0 auto; background: url("../images/decoration_07.png"), url("../images/decoration_06.png"); background-position: left top,right bottom; background-repeat: no-repeat,no-repeat; }
  .simbol_frame .simbol_box p { width: 1000px; margin: 0 auto; line-height: 200%; padding: 42px 0 0 0; }
  .simbol_frame .simbol_risu { position: absolute; display: block; bottom: 0; right: 0; left: 0; width: 125px; margin: 0 auto; } }
/*----------------------------------------------------------- バナー
----------------------------------------------------------- */
.bana_frame { margin: 0; padding: 2rem 0 4rem 0; background: url("../images/index_bana_bg.png") repeat-x; background-position: left bottom; background-color: #fbfcf1; }
.bana_frame .bana_box { width: 80%; margin: 0 auto; }
.bana_frame .bana_box a { display: block; width: 100%; margin: 0 0 2rem 0; }
.bana_frame .bana_box a img { width: 100%; }

@media screen and (min-width: 768px), print { .bana_frame { margin: 0; padding: 30px 0 120px 0; background: url("../images/index_bana_bg.png") repeat-x; background-position: left bottom; background-color: #fbfcf1; }
  .bana_frame .bana_box { width: 1180px; margin: 0 auto; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .bana_frame .bana_box a { display: block; width: 575px; margin: 0 0 0 0; }
  .bana_frame .bana_box a img { width: 575px; }
  .bana_frame .bana_box a:hover { opacity: 0.8; transition: all 0.3s ease 0s; } }
/*----------------------------------------------------------- 医院概要
----------------------------------------------------------- */
.overview { width: 100%; padding: 1rem 0 3rem 0; margin: 0 0 0 0; background-color: #ebfbdb; overflow: visible; }
.overview .overview_frame { width: 96%; margin: 0 auto; }
.overview .overview_frame .overview_left h2.overview_title { text-align: center; }
.overview .overview_frame .overview_left h2.overview_title img { width: 90%; max-width: 384px; display: block; margin: 0 auto; }
.overview .overview_frame .overview_left .overview_address { margin: 1rem 0 0 0; }
.overview .overview_frame .overview_left .overview_tel { display: block; text-decoration: none; background-color: #84ca5c; color: #ffffff; text-align: center; font-size: 2rem; font-family: 'quicksand'; padding: 0.4rem 0 0.6rem 0; box-sizing: border-box; border-radius: 3rem; margin: 1rem auto 0 auto; width: 90%; }
.overview .overview_frame .overview_left .overview_tel .tel_telxt { font-size: 1.2rem; font-family: "游ゴシック Medium", "Yu Gothic Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "メイリオ", Meiryo, Arial, sans-serif; }
.overview .overview_frame .overview_right { margin: 2rem 0 0 0; }
.overview .overview_frame .overview_right dl { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; margin: 2rem 0 1rem 0; line-height: 140%; width: 100%; }
.overview .overview_frame .overview_right dl dt { width: 25%; min-height: 14vw; margin: 0; padding: 0; font-size: 1.2rem; color: #ffffff; background-color: #84ca5c; border-bottom: #ffffff 1px solid; box-sizing: border-box; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
.overview .overview_frame .overview_right dl dd { width: 75%; min-height: 14vw; margin: 0 0 0 0; padding: 0 0 0 0.5rem; font-size: 1.2rem; line-height: 140%; box-sizing: border-box; color: #5f4c3f; border-bottom: #dddddd 1px solid; background-color: #ffffff; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: flex-start; align-items: flex-start; -webkit-flex-direction: column; flex-direction: column; }
.overview .overview_frame .overview_right dl dd span { font-size: 1rem; }
.overview .overview_frame .overview_right dl dd ul { padding: 0; margin: 0; }
.overview .overview_frame .overview_right dl dd ul li { line-height: 130%; font-size: 1.2rem; list-style-type: none; margin: 0 0 0.5rem 0; 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%; }

iframe.googlemap { width: 100%; height: 500px; }

@media screen and (min-width: 768px), print { .overview { width: 100%; padding: 0 0 40px 0; margin: 0 0 0 0; background-color: #ebfbdb; overflow: visible; }
  .overview .overview_frame { width: 1120px; margin: 0 auto; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .overview .overview_frame .overview_left { width: 560px; }
  .overview .overview_frame .overview_left h2.overview_title { text-align: center; }
  .overview .overview_frame .overview_left h2.overview_title img { width: 384px; max-width: 384px; display: block; margin: 0 auto; }
  .overview .overview_frame .overview_left .overview_address { margin: 26px 0 0 0; font-size: 1.5rem; letter-spacing: 0; text-align: center; }
  .overview .overview_frame .overview_left .overview_tel { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-wrap: wrap; flex-wrap: wrap; text-decoration: none; background-color: #84ca5c; color: #ffffff; text-align: center; font-size: 3.2rem; font-family: 'quicksand'; padding: 0.4rem 0 0.6rem 0; box-sizing: border-box; border-radius: 3rem; margin: 22px auto 0 auto; width: 518px; height: 60px; pointer-events: none; }
  .overview .overview_frame .overview_left .overview_tel br { display: none; }
  .overview .overview_frame .overview_left .overview_tel .tel_telxt { font-size: 1.6rem; font-family: "游ゴシック Medium", "Yu Gothic Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "メイリオ", Meiryo, Arial, sans-serif; margin: 0 1rem 0 0; }
  .overview .overview_frame .overview_right { width: 520px; margin: 0; }
  .overview .overview_frame .overview_right dl { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; margin: 0; line-height: 140%; width: 520px; margin: 0 0 30px 0; }
  .overview .overview_frame .overview_right dl dt { width: 110px; min-height: 45px; margin: 0; padding: 0; font-size: 1.6rem; color: #ffffff; background-color: #84ca5c; border-bottom: #ffffff 1px solid; box-sizing: border-box; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
  .overview .overview_frame .overview_right dl dt.access { min-height: 58px; }
  .overview .overview_frame .overview_right dl dd { width: 410px; min-height: 45px; margin: 0 0 0 0; padding: 5px 0 5px 18px; font-size: 1.6rem; line-height: 100%; box-sizing: border-box; color: #5f4c3f; border-bottom: #dddddd 1px solid; background-color: #ffffff; display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; }
  .overview .overview_frame .overview_right dl dd span { font-size: 1.5rem; margin: 0 0 0 0.4rem; }
  .overview .overview_frame .overview_right dl dd ul { padding: 0; margin: 0; }
  .overview .overview_frame .overview_right dl dd ul li { line-height: 130%; font-size: 1.6rem; list-style-type: none; margin: 0 0 0 0; box-sizing: border-box; background: url(../images/maru.png) no-repeat; background-position: left top 5px; background-size: 10px; padding: 0 0 0 20px; line-height: 140%; }
  iframe.googlemap { width: 100%; height: 460px; } }
/* -----------------------------------------------------------
　フッター
----------------------------------------------------------- */
footer { background-color: #ffffff; }
footer ul.footer_bana_link { margin: 2rem 0 0 0; list-style-type: none; }
footer ul.footer_bana_link li { text-align: center; }
footer ul.footer_bana_link li a { display: block; text-decoration: none; }
footer ul.footer_bana_link li a.bana { width: 70%; margin: 0 auto; }
footer ul.footer_bana_link li a.bana img { width: 100%; }
footer ul.footer_bana_link li a.bana2 { width: 70%; height: 16vw; margin: 2rem auto; background-color: #feae58; color: #ffffff; font-family: 'motoyalmaru'; font-size: 2.2rem; letter-spacing: 0.1em; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
footer .footer_frame { margin: 2rem auto 0 auto; width: 96%; }
footer .footer_frame ul.footer_list { list-style-type: none; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; width: 100%; margin: 0 0 0 0; }
footer .footer_frame ul.footer_list li { width: 48%; display: block; margin: 0 0 1rem 0; }
footer .footer_frame ul.footer_list li a { color: #5f4c3f; font-size: 1rem; display: block; width: 100%; text-align: left; text-decoration: none; line-height: 130%; padding: 0 0 0 0; }
footer .footer_frame ul.footer_list li a img { display: none; }
footer .footer_frame ul.footer_list li a span.eng { display: none; }
footer .footer_frame ul.footer_list li a i { display: none; }
footer .footer_frame ul.footer_list li.doctor { display: none; }
footer .footer_frame ul.footer_list li.medical { display: none; }
footer .footer_frame .ff_subtitle { font-size: 1rem; margin: 1rem 0 1rem 0; border-bottom: #5f4c3f 1px dotted; }
footer .copyright { margin: 0; text-align: center; padding: 1rem 0; color: #ffffff; font-size: 1.2rem; height: auto; letter-spacing: 0.05em; background-color: #84ca5c; }
footer .copyright a { color: #ffffff; text-decoration: none; letter-spacing: 0.1em; }

.footer_link { position: fixed; bottom: 0; width: 100%; display: -webkit-flex; display: flex; -webkit-justify-content: space-around; justify-content: space-around; -webkit-flex-direction: row; flex-direction: row; z-index: 999999; height: 14vw; }
.footer_link a.footer_tel { width: 42%; margin: 0; color: #ffffff; text-align: center; font-size: 1.2rem; font-weight: normal; letter-spacing: 0.1em; display: block; background-color: #52aa6b; border-right: #ffffff 1px solid; padding: 1rem 0; text-decoration: none; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
.footer_link a.footer_inquiry { width: 42%; margin: 0; color: #ffffff; text-align: center; font-size: 1.2rem; font-weight: normal; letter-spacing: 0.1em; display: block; background-color: #52aa6b; border-right: #ffffff 1px solid; padding: 1rem 0; text-decoration: none; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
.footer_link .smoothScrolls { background-color: #52aa6b; width: 16%; text-align: center; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
.footer_link .smoothScrolls a { width: 100%; color: #ffffff; padding: 0.8rem 0; font-weight: normal; text-decoration: none; font-size: 1.2rem; }

@media screen and (min-width: 768px), print { footer { background-color: #ffffff; height: 336px; padding: 36px 0 0 0; box-sizing: border-box; }
  footer ul.footer_bana_link { list-style-type: none; margin: 0 auto; width: 600px; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  footer ul.footer_bana_link li { text-align: center; }
  footer ul.footer_bana_link li a { display: block; text-decoration: none; }
  footer ul.footer_bana_link li a:hover { opacity: 0.6; transition: all 0.3s ease 0s; }
  footer ul.footer_bana_link li a.bana { width: 183px; margin: 0 auto; }
  footer ul.footer_bana_link li a.bana img { width: 183px; }
  footer ul.footer_bana_link li a.bana2 { width: 183px; height: 48px; margin: 0; background-color: #feae58; color: #ffffff; font-family: 'motoyalmaru'; font-size: 2.6rem; letter-spacing: 0.1em; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
  footer .footer_frame { margin: 36px auto 0 auto; width: 1200px; }
  footer .footer_frame ul.footer_list { list-style-type: none; display: -webkit-flex; display: flex; -webkit-justify-content: nowrap; justify-content: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: nowrap; flex-wrap: nowrap; width: 100%; margin: 0 0 12px 0; }
  footer .footer_frame ul.footer_list li { width: auto; display: block; margin: 0 13px 0 0; border-right: #5f4c3f 1px solid; padding: 0 13px 0 0; }
  footer .footer_frame ul.footer_list li a { color: #5f4c3f; font-size: 1.6rem; display: block; width: 100%; text-align: left; text-decoration: none; line-height: 130%; padding: 0 0 0 0; }
  footer .footer_frame ul.footer_list li a img { display: none; }
  footer .footer_frame ul.footer_list li a span.eng { display: none; }
  footer .footer_frame ul.footer_list li a i { display: none; }
  footer .footer_frame ul.footer_list li a br { display: none; }
  footer .footer_frame ul.footer_list li.doctor { display: none; }
  footer .footer_frame ul.footer_list li.medical { display: none; }
  footer .footer_frame .ff_subtitle { display: none; }
  footer .copyright { margin: 34px 0 0 0; text-align: center; padding: 0; color: #ffffff; font-size: 1.4rem; height: auto; letter-spacing: 0.05em; background-color: #84ca5c; height: 60px; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
  footer .copyright a { color: #ffffff; text-decoration: none; letter-spacing: 0.1em; }
  .footer_link { display: none; } }
/* -----------------------------------------------------------
　ページトップへ
----------------------------------------------------------- */
#pagetop_position { display: none; }

@media screen and (min-width: 768px), print { #pagetop_position { display: block; margin: 0; padding: 0; }
  #linkpagetop a { width: 60px; height: 60px; background-color: #52aa6b; border-radius: 50%; color: #ffffff; font-size: 1.5rem; font-weight: bold; padding: 0 0 0 0; box-sizing: border-box; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: column; flex-direction: column; }
  #linkpagetop a:hover { opacity: 0.6; transition: all 0.3s ease 0s; }
  #pagetop { position: fixed; bottom: 105px; right: 0; z-index: 999999; left: 50%; margin: 0 0 0 600px; } }
@media screen and (min-width: 768px) and (max-width: 1500px) { #pagetop_position { display: block; }
  #pagetop { position: fixed; bottom: 105px; right: 0; z-index: 999999; left: auto; right: 1%; margin: 0 0 0 0; z-index: 999999; } }
/* -----------------------------------------------------------
　フェードイン
----------------------------------------------------------- */
.fadein { opacity: 0; transform: translate(0, 50px); transition: all 1000ms; }

.fadein.scrollin { opacity: 1; transform: translate(0, 0); }

.fadein_right { opacity: 0; transform: translate(0, 50px); transition: all 1000ms; }

.fadein_left { opacity: 0; transform: translate(0, 50px); transition: all 1000ms; }

.fadein_right.scrollin_right { opacity: 1; transform: translate(0, 0); }

.fadein_left.scrollin_left { opacity: 1; transform: translate(0, 0); }

.poyon { animation: poyon 1.1s linear 0s 1; }

.scale { animation: scale 1.1s linear 0s 1; }

@keyframes poyon { 0% { transform: scale(0.8, 1.4) translate(0%, -100%); }
  10% { transform: scale(0.8, 1.4) translate(0%, -15%); }
  20% { transform: scale(1.4, 0.6) translate(0%, 30%); }
  30% { transform: scale(0.9, 1.1) translate(0%, -10%); }
  40% { transform: scale(0.95, 1.2) translate(0%, -30%); }
  50% { transform: scale(0.95, 1.2) translate(0%, -10%); }
  60% { transform: scale(1.1, 0.9) translate(0%, 5%); }
  70% { transform: scale(1, 1) translate(0%, 0%); }
  100% { transform: scale(1, 1) translate(0%, 0%); } }
@keyframes scale { 0% { transform: scale(1, 1); }
  10% { transform: scale(0.8, 0.8); }
  20% { transform: scale(0.6, 0.6); }
  30% { transform: scale(0.4, 0.4); }
  40% { transform: scale(0.6, 0.6); }
  50% { transform: scale(0.8, 0.8); }
  60% { transform: scale(1, 1); }
  70% { transform: scale(1, 1); }
  100% { transform: scale(1, 1); } }
@media screen and (min-width: 768px), print { .fadein { opacity: 0; transform: translate(0, 50px); transition: all 1000ms; }
  .fadein.scrollin { opacity: 1; transform: translate(0, 0); }
  .fadein_right { opacity: 0; transform: translate(50px, 0); transition: all 1000ms; }
  .fadein_left { opacity: 0; transform: translate(-50px, 0); transition: all 1000ms; }
  .fadein_right.scrollin_right { opacity: 1; transform: translate(0, 0); }
  .fadein_left.scrollin_left { opacity: 1; transform: translate(0, 0); }
  .delay_01 { transition-delay: 0; }
  .delay_02 { transition-delay: 0.5s; }
  .delay_03 { transition-delay: 1s; }
  .poyon { animation: poyon 1.1s linear 0s 1; }
  .scale { animation: scale 1.1s linear 0s 1; }
  @keyframes poyon { 0% { transform: scale(0.8, 1.4) translate(0%, -100%); }
    10% { transform: scale(0.8, 1.4) translate(0%, -15%); }
    20% { transform: scale(1.4, 0.6) translate(0%, 30%); }
    30% { transform: scale(0.9, 1.1) translate(0%, -10%); }
    40% { transform: scale(0.95, 1.2) translate(0%, -30%); }
    50% { transform: scale(0.95, 1.2) translate(0%, -10%); }
    60% { transform: scale(1.1, 0.9) translate(0%, 5%); }
    70% { transform: scale(1, 1) translate(0%, 0%); }
    100% { transform: scale(1, 1) translate(0%, 0%); } }
  @keyframes scale { 0% { transform: scale(1, 1); }
    10% { transform: scale(0.8, 0.8); }
    20% { transform: scale(0.6, 0.6); }
    30% { transform: scale(0.4, 0.4); }
    40% { transform: scale(0.6, 0.6); }
    50% { transform: scale(0.8, 0.8); }
    60% { transform: scale(1, 1); }
    70% { transform: scale(1, 1); }
    100% { transform: scale(1, 1); } } }
/*----------------------------------------------------------- インポート
----------------------------------------------------------- */
/*ハンバーガー*/
.drawr { display: none; position: absolute; top: 21vw; width: 100%; padding: 0; margin: 0 auto; height: auto; z-index: 999999; border-top: #5f4c3f 1px dotted; background-color: #ffffff; }
.drawr ul.hbg { list-style-type: none; }
.drawr ul.hbg li { width: 100%; text-align: center; border-bottom: #5f4c3f 1px dotted; }
.drawr ul.hbg li a { color: #5f4c3f; font-size: 1.3rem; text-decoration: none; padding: 1rem; box-sizing: border-box; letter-spacing: 0.05em; line-height: 140%; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; box-sizing: border-box; }
.drawr ul.hbg li a img { display: none; }
.drawr ul.hbg li a span.eng { display: none; }
.drawr ul.hbg li ul { display: none; }
.drawr ul.hbg li ul.open_nav { display: block; }
.drawr ul.hbg li ul li { width: 100%; border-top: #5f4c3f 1px dotted; border-bottom: none; }
.drawr ul.hbg li ul li a { display: block; background-color: #dff4be; color: #5f4c3f; }
.drawr ul.hbg li ul li a br { display: none; }
.drawr ul.hbg li.treatment { width: 100%; border-right: none; border-bottom: #5f4c3f 1px solid; border-top: #5f4c3f 1px solid; }

.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: 14%; height: 12vw; padding: 0 0 4px 0; user-select: none; -webkit-tap-highlight-color: transparent; }

.toggle-label:active { -webkit-tap-highlight-color: transparent; }

.toggle-label { cursor: pointer; width: 100%; }

.toggle-label .toggle-icon, .toggle-label .toggle-icon:before, .toggle-label .toggle-icon:after { position: relative; display: block; top: 50%; left: 50%; height: 3px; width: 42px; background: #ffffff; content: ''; transition: all 500ms ease-in-out; }

.toggle-label .toggle-text { position: relative; display: block; top: calc(100% - 10px); height: 14px; font-size: 12px; color: #ffffff; text-align: center; }

.toggle-label .toggle-text:before { position: absolute; width: 100%; left: 0; content: 'MENU'; transition: all 500ms ease-in-out; visibility: visible; opacity: 1; }

.toggle-label .toggle-text:after { position: absolute; width: 100%; left: 0; content: 'CLOSE'; transition: all 500ms ease-in-out; visibility: hidden; opacity: 0; }

.toggle-label .toggle-icon { transform: translate3d(-50%, -5px, 0); }

.toggle-label .toggle-icon:before { transform: translate3d(-50%, -11.5px, 0); }

.toggle-label .toggle-icon:after { transform: translate3d(-50%, 5px, 0); }

.toggle:checked ~ .toggle-label .toggle-icon { background-color: transparent; }

.toggle:checked ~ .toggle-label .toggle-icon:before, .toggle:checked ~ .toggle-label .toggle-icon:after { top: 0; }

.toggle:checked ~ .toggle-label .toggle-icon:before { transform: translateX(-50%) rotate(45deg); top: 1.5px; }

.toggle:checked ~ .toggle-label .toggle-icon:after { transform: translateX(-50%) translateY(-10px) rotate(-45deg); top: 8.5px; }

.toggle:checked ~ .toggle-label .toggle-text:before { visibility: hidden; opacity: 0; }

.toggle:checked ~ .toggle-label .toggle-text:after { visibility: visible; opacity: 1; }

.container { display: flex; align-items: center; justify-content: center; width: 14%; position: absolute; cursor: pointer; right: 2%; top: 2vw; padding: 0 0 0.6rem 0; background-color: #52aa6b; border: #52aa6b 1px solid; z-index: 99999; }

/*見出し*/
h1 { margin: 0; }

h2.top_title { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: flex-start; align-items: flex-start; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
h2.top_title span { font-family: 'motoyalmaru'; font-size: 2.2rem; font-weight: normal; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: column; flex-direction: column; -webkit-flex-wrap: wrap; flex-wrap: wrap; margin: 0 0.6rem; text-align: center; line-height: 140%; }
h2.top_title span span { font-family: 'quicksand'; font-size: 1rem; font-weight: normal; display: block; margin: -0.2rem 0 0 0; letter-spacing: 0.1em; }
h2.low { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: flex-start; align-items: flex-start; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; margin: 4rem 0 2rem 0; }
h2.low span { font-family: 'motoyalmaru'; font-size: 2.2rem; font-weight: normal; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: column; flex-direction: column; -webkit-flex-wrap: wrap; flex-wrap: wrap; margin: 0 0.6rem; text-align: center; line-height: 140%; }
h2.first { margin: 0 0 2rem 0; }

h3.low { font-size: 1.9rem; font-family: "游ゴシック Medium", "Yu Gothic Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "メイリオ", Meiryo, Arial, sans-serif; font-weight: normal; color: #ffffff; background: url("../images/h3bg.png") no-repeat; background-size: 6%; background-position: left 0.4rem top 0.8rem; background-color: #84ca5c; padding: 0.6rem 0.8rem 0.6rem 2.6rem; box-sizing: border-box; line-height: 120%; border-radius: 0.5rem; margin: 2rem 0 1rem 0; }
h3.first { margin: 1.5rem 0 1rem 0; }

h4 { font-size: 1.8rem; font-family: "游ゴシック Medium", "Yu Gothic Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "メイリオ", Meiryo, Arial, sans-serif; font-weight: normal; color: #5f4c3f; position: relative; border-bottom: 4px solid #eeeeee; padding: 0 0 0.4rem 0; margin: 2rem 0 1rem 0; }
h4::before { content: ""; position: absolute; left: 0; bottom: -4px; width: 10%; height: inherit; border-bottom: 4px solid #84ca5c; }
h4.first { margin: 0 0 1rem 0; }

h5 { color: #5f4c3f; font-size: 1.7rem; font-weight: bold; display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; margin: 2rem 0 1rem 0; }
h5 i { width: 6%; color: #84ca5c; margin: 0 2% 0 0; }
h5 span { width: 92%; }
h5.first { margin: 0 0 1rem 0; }

p { font-size: 1.4rem; margin: 0 0 2rem 0; line-height: 140%; letter-spacing: 0.05em; }

@media screen and (min-width: 768px), print { h1 { margin: 0; }
  h2.top_title { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: flex-start; align-items: flex-start; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  h2.top_title span { font-family: 'motoyalmaru'; font-size: 3.6rem; font-weight: normal; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: column; flex-direction: column; -webkit-flex-wrap: wrap; flex-wrap: wrap; margin: 0 24px; text-align: center; line-height: 140%; }
  h2.top_title span span { font-family: 'quicksand'; font-size: 1.6rem; font-weight: normal; display: block; margin: -4px 0 0 0; letter-spacing: 0.1em; }
  h2.low { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: flex-start; align-items: flex-start; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; margin: 100px 0 40px 0; }
  h2.low span { font-family: 'motoyalmaru'; font-size: 3.6rem; font-weight: normal; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: column; flex-direction: column; -webkit-flex-wrap: wrap; flex-wrap: wrap; margin: 0 24px; text-align: center; line-height: 140%; }
  h2.low span span { font-family: 'quicksand'; font-size: 1.6rem; font-weight: normal; display: block; margin: -4px 0 0 0; letter-spacing: 0.1em; }
  h2.first { margin: 0 0 40px 0; }
  h3.low { font-size: 2.7rem; font-family: "游ゴシック Medium", "Yu Gothic Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "メイリオ", Meiryo, Arial, sans-serif; font-weight: normal; color: #ffffff; background: url("../images/h3bg.png") no-repeat; background-size: 29px; background-position: left 12px top 12px; background-color: #84ca5c; padding: 9px 9px 9px 52px; box-sizing: border-box; line-height: 140%; border-radius: 0.5rem; margin: 50px 0 30px 0; }
  h3.first { margin: 40px 0 20px 0; }
  h4 { font-size: 2.2rem; font-family: "游ゴシック Medium", "Yu Gothic Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "メイリオ", Meiryo, Arial, sans-serif; font-weight: normal; color: #5f4c3f; position: relative; border-bottom: 4px solid #eeeeee; padding: 0 0 8px 0; margin: 50px 0 25px 0; }
  h4::before { content: ""; position: absolute; left: 0; bottom: -4px; width: 40px; height: inherit; border-bottom: 4px solid #84ca5c; }
  h4.first { margin: 0 0 25px 0; }
  h5 { color: #5f4c3f; font-size: 1.8rem; font-weight: normal; display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; margin: 30px 0 18px 0; }
  h5 i { width: 20px; color: #84ca5c; margin: 0 0 0 0; font-size: 1.6rem; }
  h5 span { width: 1175px; }
  h5.first { margin: 0 0 18px 0; }
  p { font-size: 1.8rem; margin: 0 0 2rem 0; line-height: 160%; letter-spacing: 0.05em; } }
/*イメージ*/
/* -----------------------------------------------------------
　イメージ
----------------------------------------------------------- */
.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_two { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-flex-direction: column; flex-direction: column; }
.img_two img { width: 70%; margin: 0 auto 20px auto; display: block; }

@media screen and (min-width: 768px), print { .img_right { float: right; margin: 0 0 10px 10px; }
  .img_right img { width: 450px; height: auto; }
  .img_center { float: none; margin: 0 0 10px 0; text-align: center; }
  .img_center img { width: auto; height: auto; }
  /*二つ*/
  .img_two { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; }
  .img_two img { width: 540px; margin: 0 auto 20px auto; display: block; } }
/*リスト*/
/* -----------------------------------------------------------
　リスト
----------------------------------------------------------- */
/*標準*/
ul.list_normal { line-height: 130%; font-size: 1.4rem; list-style-type: disc; margin: 0 0 1rem 0; }
ul.list_normal li { margin: 0 0 1.4rem 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 10px 0; box-sizing: border-box; background: url(../images/maru.png) no-repeat; background-position: left top 0.6rem; background-size: 0.8rem; padding: 0 0 0 1.8rem; line-height: 140%; }

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; box-sizing: border-box; background: url(../images/maru.png) no-repeat; background-position: left top 0.6rem; background-size: 0.8rem; padding: 0 0 0 1.8rem; line-height: 140%; }
ul.list_maru_two li a { color: #52aa6b; }
ul.list_maru_two li a { color: #fbfcf1; text-decoration: none; }
ul.list_maru_two li span { color: #fbfcf1; }

/*なし*/
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 { box-sizing: border-box; width: 100%; }
ul.list_num li { line-height: 130%; font-size: 1.4rem; list-style-type: decimal; margin: 0 0 10px 2rem; box-sizing: border-box; width: 90%; }

/*概要*/
ul.list_overview { box-sizing: border-box; width: 100%; }
ul.list_overview li { line-height: 130%; font-size: 1.4rem; list-style-type: disc; margin: 0 0 10px 25px; box-sizing: border-box; width: 90%; }

/*2列*/
ul.list_normal_two { display: flex; justify-content: space-between; flex-direction: column; }
ul.list_normal_two li { box-sizing: border-box; line-height: 130%; font-size: 1.4rem; list-style-type: disc; margin: 0 0 10px 25px; }

@media screen and (min-width: 768px), print { /*標準*/
  ul.list_normal { line-height: 160%; font-size: 1.8rem; list-style-type: disc; margin: 0; }
  ul.list_normal li { margin: 0 0 1.4rem 25px; padding: 0; }
  ul.list_normal li ul { box-sizing: border-box; width: 100%; }
  ul.list_normal li ul li { line-height: 130%; font-size: 1.8rem; list-style-type: none; margin: 0 0 0.8rem 1.8rem; box-sizing: border-box; width: auto; }
  /*画像●*/
  ul.list_maru { padding: 0; }
  ul.list_maru li { line-height: 160%; font-size: 1.8rem; list-style-type: none; margin: 0 0 15px 0; box-sizing: border-box; background: url(../images/maru.png) no-repeat; background-position: left top 7px; background-size: 10px; padding: 0 0 0 25px; }
  ul.list_maru_two { padding: 0; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  ul.list_maru_two li { width: 45%; line-height: 100%; font-size: 1.8rem; list-style-type: none; margin: 0 0 15px 0; box-sizing: border-box; background: url(../images/maru.png) no-repeat; background-position: left top 7px; 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 { 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; 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: flex; justify-content: space-between; flex-direction: row; flex-wrap: wrap; }
  ul.list_normal_two li { width: 45%; box-sizing: border-box; line-height: 130%; font-size: 1.8rem; list-style-type: disc; margin: 0 0 10px 25px; } }
/* -----------------------------------------------------------
　定義リスト
----------------------------------------------------------- */
dl.bio_list { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.4rem; box-sizing: border-box; margin: 0 0 2rem 0; line-height: 160%; }
dl.bio_list dt { width: 100%; margin: 0 0 0 0; font-weight: bold; }
dl.bio_list dt span { display: inline; text-align: left; padding: 0 0 0 0; box-sizing: border-box; }
dl.bio_list dd { width: 100%; margin: 0 0 2rem 0; }

dl.num_list { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.4rem; box-sizing: border-box; margin: 0 0 20px 0; line-height: 120%; }
dl.num_list dt { width: 7%; margin: 0 0 0 0; }
dl.num_list dt span { width: 100%; height: 6.5vw; background-color: #84ca5c; color: #ffffff; border-radius: 50%; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
dl.num_list dd { width: 90%; margin: 0 0 20px 0; }

dl.check_list { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.4rem; box-sizing: border-box; margin: 0 0 20px 0; line-height: 120%; }
dl.check_list dt { width: 7%; margin: 0 0 0 0; }
dl.check_list dd { width: 90%; margin: 0 0 20px 0; }

@media screen and (min-width: 768px), print { dl.bio_list { display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.8rem; box-sizing: border-box; line-height: 160%; width: 1200px; }
  dl.bio_list dt { width: 100px; margin: 0 0 20px 0; font-weight: normal; }
  dl.bio_list dt span { display: block; text-align: center; padding: 0 35px 0 0; box-sizing: border-box; }
  dl.bio_list dd { width: 1000px; margin: 0 0 20px 0; }
  dl.num_list { display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.8rem; box-sizing: border-box; line-height: 160%; width: 1200px; }
  dl.num_list dt { width: 35px; margin: 0 0 20px 0; font-weight: normal; }
  dl.num_list dt span { width: 25px; height: 25px; background-color: #84ca5c; color: #ffffff; border-radius: 50%; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
  dl.num_list dd { width: 1165px; margin: 0 0 20px 0; }
  dl.check_list { display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.8rem; box-sizing: border-box; line-height: 160%; width: 1200px; }
  dl.check_list dt { width: 35px; margin: 0 0 20px 0; font-weight: normal; }
  dl.check_list dd { width: 1165px; margin: 0 0 20px 0; } }
/*アサイド*/
aside { display: none; }

@media screen and (min-width: 768px), print { aside { display: block; width: 270px; }
  aside p.aside_title { width: 270px; height: 54px; background-color: #e60012; font-size: 2rem; font-weight: normal; color: #ffffff; letter-spacing: 0.2em; margin: 0 0 6px 0; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
  aside ul.aside_list { list-style-type: none; }
  aside ul.aside_list li { margin: 0 0 0 0; width: 270px; }
  aside ul.aside_list li a { width: 270px; height: 50px; margin: 0; padding: 0 0 0 50px; box-sizing: border-box; color: #5f4c3f; font-size: 2rem; background: url(../images/aside_arrow.png) no-repeat; background-position: left 18px center; border-bottom: #bee286 1px solid; text-decoration: none; display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-align-items: center; align-items: center; letter-spacing: 0.05em; }
  aside ul.aside_list li a:hover { opacity: 0.6; transition: all 0.3s ease 0s; } }
/*診療時間*/
/* -----------------------------------------------------------
　診療時間
----------------------------------------------------------- */
table.timetable { padding: 0; margin: 0 auto; vertical-align: middle; width: 100%; text-align: center; border-collapse: collapse; box-sizing: border-box; line-height: 140%; }
table.timetable tr th { box-sizing: border-box; font-weight: normal; font-size: 3.4vw; padding: 0.8rem 0; vertical-align: middle; color: #ffffff; background-color: #55ab6d; width: 8%; }
table.timetable tr td { box-sizing: border-box; font-weight: normal; font-size: 3.4vw; padding: 0.8rem 0; vertical-align: middle; color: #5f4c3f; background-color: #ffffff; border-bottom: #dddddd 1px solid; }
table.timetable tr td.time { width: 25%; text-align: center; color: #5f4c3f; box-sizing: border-box; }
table.timetable tr td i.icon-circle-1 { color: #55ab6d; }
table.timetable tr td i.icon-clover { color: #84ca5c; }

.notice_time { font-size: 3.4vw; margin: 0.6rem 0 0 0; width: 100%; color: #5f4c3f; box-sizing: border-box; }
.notice_time i { color: #84ca5c; }

@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; box-sizing: border-box; line-height: 140%; }
  table.timetable tr th { box-sizing: border-box; font-weight: normal; font-size: 1.6rem; padding: 14px 0; vertical-align: middle; color: #ffffff; background-color: #55ab6d; width: 10%; }
  table.timetable tr td { box-sizing: border-box; font-weight: normal; font-size: 1.6rem; padding: 12px 0; vertical-align: middle; color: #5f4c3f; background-color: #ffffff; border-bottom: #dddddd 1px solid; }
  table.timetable tr td.time { width: 25%; text-align: center; color: #5f4c3f; box-sizing: border-box; font-size: 1.4rem; }
  table.timetable tr td i.icon-circle-1 { color: #55ab6d; }
  table.timetable tr td i.icon-clover { color: #84ca5c; font-size: 2.4rem; }
  .notice_time { font-size: 1.6rem; margin: 8px 0 0 0; padding: 0 0 0 0; width: 100%; color: #5f4c3f; box-sizing: border-box; }
  .notice_time i { color: #84ca5c; font-size: 2.4rem; } }
/*下層*/
/*矢印*/
.arrow { width: 0; height: 0; border-left: 60px solid transparent; border-right: 60px solid transparent; border-top: 30px solid #84ca5c; text-align: center; display: block; margin: 30px auto; }

.arrow2 { width: 0; height: 0; border-left: 60px solid transparent; border-right: 60px solid transparent; border-top: 30px solid #52aa6b; text-align: center; display: block; margin: 30px auto; }

.text_bold { font-weight: bold; }

.link_text { color: #52aa6b; }

.red_text { color: #e60012; }

.underline_text { text-decoration: underline; }

.emphasis { background-color: #dff4be; padding: 1rem; box-sizing: border-box; margin: 0 0 2rem 0; }
.emphasis p { margin: 0; }

a.link_box { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; color: #ffffff; background-color: #55ab6d; padding: 1rem; border-radius: 2rem; text-decoration: none; font-size: 1.4rem; }

@media screen and (min-width: 768px), print { /*矢印*/
  .arrow { width: 0; height: 0; border-left: 60px solid transparent; border-right: 60px solid transparent; border-top: 30px solid #84ca5c; text-align: center; display: block; margin: 30px auto; }
  .arrow2 { width: 0; height: 0; border-left: 60px solid transparent; border-right: 60px solid transparent; border-top: 30px solid #52aa6b; text-align: center; display: block; margin: 30px auto; }
  .text_bold { font-weight: bold; }
  .link_text { color: #52aa6b; }
  .link_text:hover { opacity: 0.6; }
  .red_text { color: #e60012; }
  .underline_text { text-decoration: underline; }
  .emphasis { background-color: #dff4be; padding: 20px; box-sizing: border-box; margin: 0 0 30px 0; }
  .emphasis p { margin: 0; }
  .two_box { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .two_box section { width: 550px; }
  a.link_box { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; display: inline-block; color: #ffffff; background-color: #55ab6d; padding: 1rem 2rem; border-radius: 3rem; text-decoration: none; font-size: 1.8rem; }
  a.link_box:hover { opacity: 0.6; transition: all 0.3s ease 0s; } }
/* -----------------------------------------------------------
　院長紹介
----------------------------------------------------------- */
figure.doctor_img { margin: 0 0 2rem 0; text-align: center; }
figure.doctor_img img { width: 70%; height: auto; }
figure.doctor_img figcaption { margin: 0.5rem 0 0 0; font-size: 1.2rem; text-align: center; }

.doctor_name { float: right; text-align: left; line-height: 160%; }
.doctor_name span { font-size: 1.8rem; }
.doctor_name span span.furi { font-size: 1.2rem; }

.doctor_twoimg figure { width: 80%; margin: 0 auto 4rem auto; }
.doctor_twoimg figure img { width: 100%; }
.doctor_twoimg figure figcaption { font-size: 1.4rem; margin: 0.4rem 0 0 0; line-height: 120%; }

@media screen and (min-width: 768px), print { figure.doctor_img { float: right; margin: 0 0 10px 20px; text-align: right; }
  figure.doctor_img img { width: 400px; height: auto; }
  figure.doctor_img figcaption { margin: 1rem 0 0 0; font-size: 1.4rem; text-align: center; }
  .doctor_name { float: right; text-align: left; line-height: 160%; }
  .doctor_name span { font-size: 2.2rem; }
  .doctor_name span span.furi { font-size: 1.6rem; }
  .doctor_twoimg { width: 1200px; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; margin: 60px 0 60px 0; }
  .doctor_twoimg figure { width: 550px; margin: 0; }
  .doctor_twoimg figure img { width: 550px; }
  .doctor_twoimg figure figcaption { font-size: 1.8rem; margin: 10px 0 0 0; line-height: 120%; } }
/*----------------------------------------------------------- 診療時間・アクセス
----------------------------------------------------------- */
dl.access_list { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; margin: 2rem 0 1rem 0; line-height: 140%; width: 100%; }
dl.access_list dt { width: 25%; min-height: 16vw; margin: 0; padding: 0.8rem 0; font-size: 1.2rem; color: #ffffff; background-color: #84ca5c; border-bottom: #ffffff 1px solid; box-sizing: border-box; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
dl.access_list dd { width: 75%; min-height: 16vw; margin: 0 0 0 0; padding: 0.8rem; font-size: 1.2rem; line-height: 140%; box-sizing: border-box; color: #5f4c3f; border-bottom: #dddddd 1px solid; border-right: #dddddd 1px solid; background-color: #ffffff; display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-align-items: center; align-items: center; }
dl.access_list dd.top { border-top: #dddddd 1px solid; }
dl.access_list dd.actel span { color: #52aa6b; font-weight: bold; font-size: 2rem; }
dl.access_list dd.actel a { color: #52aa6b; font-weight: bold; font-size: 1.8rem; }

iframe.accessmap { width: 98%; height: 500px; margin: 0 auto; }

.access_tel i { color: #52aa6b; font-weight: bold; font-size: 2rem; }
.access_tel span { color: #52aa6b; font-weight: bold; font-size: 2rem; }
.access_tel a { color: #52aa6b; font-weight: bold; font-size: 2rem; }

@media screen and (min-width: 768px), print { dl.access_list { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; margin: 0; line-height: 140%; width: 1200px; margin: 0 0 30px 0; }
  dl.access_list dt { width: 200px; min-height: 45px; margin: 0; padding: 15px; font-size: 1.8rem; color: #ffffff; background-color: #84ca5c; border-bottom: #ffffff 1px solid; box-sizing: border-box; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
  dl.access_list dt.access { min-height: 58px; }
  dl.access_list dd { width: 1000px; min-height: 45px; margin: 0 0 0 0; padding: 15px 0 15px 15px; font-size: 1.8rem; line-height: 100%; box-sizing: border-box; color: #5f4c3f; border-right: #dddddd 1px solid; border-bottom: #dddddd 1px solid; background-color: #ffffff; display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-align-items: center; align-items: center; }
  dl.access_list dd.top { border-top: #dddddd 1px solid; }
  dl.access_list dd.actel span { color: #52aa6b; font-weight: bold; font-size: 2rem; }
  dl.access_list dd.actel a { color: #52aa6b; font-weight: bold; font-size: 2.2rem; }
  iframe.accessmap { width: 100%; height: 500px; margin: 0; } }
/* -----------------------------------------------------------
　初めての方へ
----------------------------------------------------------- */
a.low_bana { display: block; text-decoration: none; width: 70%; margin: 1rem auto; background-color: #52aa6b; color: #ffffff; font-size: 1.6rem; text-align: center; padding: 1rem 0; }

@media screen and (min-width: 768px), print { a.low_bana { display: block; text-decoration: none; width: 400px; margin: 1rem auto; background-color: #52aa6b; color: #ffffff; font-size: 2rem; text-align: center; padding: 2rem 0; }
  a.low_bana:hover { opacity: 0.6; } }
/* -----------------------------------------------------------
　クリニック紹介
----------------------------------------------------------- */
.machine_frame { width: 100%; margin: 0; }
.machine_frame .machine_box { margin: 0 0 3rem 0; }
.machine_frame .machine_box .machine_title { font-size: 1.8rem; font-family: 'Kosugimaru'; color: #ffffff; background-color: #84ca5c; border-radius: 0.5rem; padding: 0.6rem 0.8rem; box-sizing: border-box; margin: 2rem 0 1rem 0; }
.machine_frame .machine_box img { width: 80%; display: block; margin: 0 auto 1rem auto; }
.machine_frame .machine_box .machine_text { text-align: justify; width: 80%; margin: 0 auto; }

.machine_box_back img { width: 80%; display: block; margin: 0 auto 1rem auto; }

.machine_frame2 { width: 96%; margin: 0 auto; border: #52aa6b 2px solid; border-radius: 0.5rem; }
.machine_frame2 .machine_box { margin: 0 0 3rem 0; padding: 0 1rem; box-sizing: border-box; }
.machine_frame2 .machine_box .machine_title { font-size: 1.7rem; font-family: 'Kosugimaru'; color: #fbfcf1; background-color: #eeeeee; border-bottom: #fbfcf1 1px solid; border-radius: 0.5rem; padding: 0.6rem 0.8rem; box-sizing: border-box; margin: 2rem 0 1rem 0; }
.machine_frame2 .machine_box img { width: 80%; display: block; margin: 0 auto 1rem auto; }
.machine_frame2 .machine_box .machine_text { text-align: justify; width: 80%; margin: 0 auto; }

@media screen and (min-width: 768px), print { .machine_frame { width: 100%; margin: 0; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .machine_frame .machine_box { margin: 0 0 2rem 0; width: 500px; }
  .machine_frame .machine_box .machine_title { font-size: 2.2rem; font-family: 'Kosugimaru'; color: #ffffff; background-color: #84ca5c; border-radius: 0.5rem; padding: 10px 14px; box-sizing: border-box; margin: 50px 0 1rem 0; }
  .machine_frame .machine_box img { width: 500px; display: block; margin: 0 auto 1rem auto; }
  .machine_frame .machine_box .machine_text { text-align: justify; width: 500px; margin: 0 auto; }
  .machine_frame2 { width: 96%; margin: 0 auto; border: #52aa6b 2px solid; border-radius: 1rem; display: -webkit-flex; display: flex; -webkit-justify-content: space-around; justify-content: space-around; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .machine_frame2 .machine_box { margin: 0 0 3rem 0; padding: 0 1rem; box-sizing: border-box; width: 450px; }
  .machine_frame2 .machine_box .machine_title { font-size: 1.8rem; font-family: 'Kosugimaru'; color: #fbfcf1; background-color: #eeeeee; border-radius: 0.5rem; padding: 10px 14px; box-sizing: border-box; margin: 30px 0 20px 0; text-align: center; }
  .machine_frame2 .machine_box img { width: 400px; display: block; margin: 0 auto 1rem auto; }
  .machine_frame2 .machine_box .machine_text { text-align: justify; width: 80%; margin: 0 auto; }
  .machine_box_back img { width: 400px; display: block; margin: 0 auto 1rem auto; } }
/* -----------------------------------------------------------
　下層
----------------------------------------------------------- */
/*テーブル*/
table.low_table { padding: 0px; width: 100%; margin: 0 auto 1rem auto; border-collapse: collapse; box-sizing: border-box; line-height: 140%; font-size: 1.4rem; }
table.low_table tr th { background-color: #dff4be; vertical-align: middle; text-align: center; width: auto; padding: 0.8rem; border: #5f4c3f 1px solid; width: 50%; font-weight: normal; color: #5f4c3f; }
table.low_table tr td { vertical-align: middle; text-align: left; border: #5f4c3f 1px solid; padding: 0.8rem; background-color: #ffffff; width: 50%; color: #5f4c3f; }

table.price_table { vertical-align: middle; width: 100%; border-collapse: collapse; box-sizing: border-box; border: #5f4c3f 1px solid; font-size: 1.4rem; }
table.price_table tr { border-bottom: #5f4c3f 1px solid; }
table.price_table tr th { width: 70%; padding: 0.6rem; box-sizing: border-box; border-right: #5f4c3f 1px solid; text-align: left; font-weight: normal; vertical-align: middle; }
table.price_table tr td { width: 30%; padding: 0.6rem; box-sizing: border-box; text-align: left; vertical-align: middle; text-align: right; }

.two_img_list figure { width: 90%; margin: 0 auto 4rem auto; }
.two_img_list figure img { width: 100%; }

.img_check { margin: 0 0 1rem 0; text-align: center; display: block; }
.img_check img { width: 100%; height: auto; }

.text_check { color: #52aa6b; }

.btnlink { display: block; width: 50%; max-width: 183px; }

@media screen and (min-width: 768px), print { /*テーブル*/
  table.low_table { padding: 0px; width: 100%; margin: 0 auto 1rem auto; border-collapse: collapse; box-sizing: border-box; line-height: 140%; font-size: 1.8rem; }
  table.low_table tr th { background-color: #dff4be; vertical-align: middle; text-align: center; width: auto; padding: 14px; border: #5f4c3f 1px solid; width: 50%; font-weight: normal; color: #5f4c3f; }
  table.low_table tr td { vertical-align: middle; text-align: left; border: #5f4c3f 1px solid; padding: 14px; background-color: #ffffff; width: 50%; color: #5f4c3f; }
  table.price_table { vertical-align: middle; width: 100%; border-collapse: collapse; box-sizing: border-box; border: #5f4c3f 1px solid; font-size: 1.8rem; }
  table.price_table tr { border-bottom: #5f4c3f 1px solid; }
  table.price_table tr th { width: 70%; padding: 1rem; box-sizing: border-box; border-right: #5f4c3f 1px solid; text-align: left; font-weight: normal; vertical-align: middle; }
  table.price_table tr td { width: 30%; padding: 1rem; box-sizing: border-box; text-align: left; vertical-align: middle; text-align: right; }
  .two_img_list { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .two_img_list figure { width: 400px; margin: 0 0 60px 0; }
  .two_img_list figure img { width: 100%; }
  .img_check { margin: 0 0 30px 0; text-align: center; display: block; }
  .img_check img { width: auto; height: auto; }
  .text_check { color: #52aa6b; display: block; text-align: center; }
  .text_check:hover { opacity: 0.6; transition: all 0.3s ease 0s; }
  .btnlink { display: block; width: 183px; max-width: 183px; }
  .btnlink:hover { opacity: 0.6; transition: all 0.3s ease 0s; } }

/*# sourceMappingURL=style.css.map */
