@charset "UTF-8";
/* Scss Document */
/* =======================================================================
 共通項目 
======================================================================= */
/* ----------------------------------------------------------- 関数
----------------------------------------------------------- */
/*基本フォント*/
/*基本文字色*/
/*基本背景色*/
/*media screen*/
/* ----------------------------------------------------------- フォントサイズ基本
----------------------------------------------------------- */
html { font-size: calc( 100vw / 32 ); overflow-y: auto; font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; color: #434343; background: url(../images/headre_bg.png) repeat-x; background-position: top; background-color: #fdfff5; }

@media screen and (min-width: 768px), print { html { font-size: 62.5%; overflow-y: scroll; font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; color: #434343; background: url(../images/headre_bg.png) repeat-x; background-position: top; background-color: #fdfff5; } }
/* ----------------------------------------------------------- 構成
----------------------------------------------------------- */
body { position: relative; width: 100%; margin: 0 auto; }

section { height: auto; overflow: hidden; margin: 40px 0 0 0; }
section.first { margin: 0 0 0 0; }

.sentence { height: auto; overflow: hidden; }

.pc_none { display: block; }

.sp_none { display: none; }

@media screen and (min-width: 768px), print { body { position: relative; z-index: 0; }
  section { height: auto; overflow: hidden; margin: 40px 0 0 0; }
  section.first { margin: 0 0 0 0; }
  .pc_none { display: none; }
  .sp_none { display: block; } }
/* -----------------------------------------------------------
　テキスト
----------------------------------------------------------- */
.txt_c { text-align: center !important; }

.txt_l { text-align: left !important; }

.txt_r { text-align: right !important; }

.bold { font-weight: bold; }

/* -----------------------------------------------------------
　枠
----------------------------------------------------------- */
article { height: auto; overflow: hidden; width: 100%; margin: 20px auto 0 auto; padding: 0 0 0 0; }

.wrapper { height: auto; width: 100%; margin: 0 auto; }

.main { width: 96%; margin: 20px auto 0 auto; }

@media screen and (min-width: 768px), print { article { height: auto; overflow: hidden; width: 100%; margin: 0 auto; padding: 0 0 0 0; }
  .wrapper { height: auto; overflow: hidden; width: 100%; margin: 0 auto; padding: 0 0 0 0; }
  .main { width: 1000px; margin: 0 auto; padding: 0; } }
/* -----------------------------------------------------------
　見出し
----------------------------------------------------------- */
h2.top { margin: 30px 0 15px 0; text-align: center; }
h2.top span { color: #326c0c; font-size: 1.7rem; }
h2.top span span { color: #898989; font-size: 1.3rem; font-weight: normal; line-height: 140%; }
h2.first { margin: 0 0 15px 0; }
h2.overview { color: #ffffff; font-size: 1.7rem; font-weight: normal; margin: 0; }
h2.overview span { color: #ffffff; font-weight: normal; font-size: 1.3rem; line-height: 160%; }
h2.low { background-color: #fbea5f; text-align: center; padding: 0.2rem 0; margin: 2rem 0 0.5rem 0; }
h2.low span { color: #326c0c; font-size: 1.7rem; font-weight: normal; display: block; padding: 0.5rem 0; border-top: #ffffff 2px dotted; border-bottom: #ffffff 2px dotted; }

h3 { background-color: #ebffaa; text-align: center; padding: 0.2rem 0; margin: 2rem 0 0.5rem 0; }
h3 span { color: #11942c; font-size: 1.5rem; font-weight: normal; display: block; padding: 0.5rem 0; border-top: #11942c 1px dotted; border-bottom: #11942c 1px dotted; }

h4 { color: #434343; text-align: center; font-size: 1.4rem; font-weight: normal; border-top: #434343 1px dotted; border-bottom: #434343 1px dotted; padding: 0.5rem 0; margin: 2rem 0 0.5rem 0; }

h5 { color: #11942c; font-size: 1.4rem; font-weight: normal; margin: 2rem 0 1.5rem 0; }

p { color: #666666; font-size: 1.5rem; line-height: 150%; margin: 0 0 20px 0; }

.ind { text-indent: -1em; padding-left: 1em; }

@media screen and (min-width: 768px), print { h2.top { margin: 30px 0 5px 0; text-align: center; height: 70px; }
  h2.top span { color: #326c0c; font-size: 2.6rem; background-color: #fdfff5; padding: 0 20px; display: inline-block; }
  h2.top span span { color: #898989; font-size: 1.3rem; font-weight: normal; line-height: 160%; display: inline; }
  h2.first { margin: 0 0 5px 0; }
  h2.yellow { background: url(../images/yellow_ten.png) repeat-x; background-position: left center; }
  h2.green { position: relative; }
  h2.green span { background-color: transparent; }
  h2.green::before { position: absolute; top: 50%; left: 0; z-index: 1; content: ""; background: url(../images/green_ten.png.gif) repeat-x; width: 40%; height: 4px; }
  h2.green::after { position: absolute; top: 50%; left: 60%; z-index: 1; content: ""; background: url(../images/green_ten.png.gif) repeat-x; width: 40%; height: 4px; }
  h2.overview { color: #ffffff; font-size: 2.4rem; font-weight: normal; margin: 0; }
  h2.overview span { color: #ffffff; font-weight: normal; font-size: 1.2rem; line-height: 160%; background-color: transparent; }
  h2.low { background-color: #fbea5f; text-align: center; padding: 0.8rem 0; margin: 30px 0 26px 0; }
  h2.low span { color: #326c0c; font-size: 2.6rem; font-weight: normal; display: block; padding: 0.5rem 0; border-top: #ffffff 2px dotted; border-bottom: #ffffff 2px dotted; }
  h3 { background-color: #ebffaa; text-align: center; padding: 0.4rem 0; margin: 20px 0 26px 0; }
  h3 span { color: #11942c; font-size: 2.4rem; font-weight: normal; display: block; padding: 0.8rem 0; border-top: #11942c 1px dotted; border-bottom: #11942c 1px dotted; }
  h4 { color: #434343; text-align: center; font-size: 2rem; font-weight: normal; border-top: #434343 1px dotted; border-bottom: #434343 1px dotted; padding: 0.8rem 0; margin: 20px 0 26px 0; }
  h5 { color: #11942c; font-size: 2rem; font-weight: normal; margin: 20px 0; }
  p { color: #666666; font-size: 1.7rem; line-height: 150%; margin: 0 0 20px 0; } }
/* -----------------------------------------------------------
　色
----------------------------------------------------------- */
.link_text { color: #3e2b1f; }

.bold_text { color: #3e2b1f; font-weight: bold; }

.red_text { color: red; }

.tel_frame a { color: #666666; }

/* -----------------------------------------------------------
　イメージ
----------------------------------------------------------- */
.img_right { margin: 0 0 10px 0; text-align: center; }
.img_right img { width: 70%; height: auto; }

.img_center { margin: 0 0 10px 0; text-align: center; }
.img_center img { width: 70%; height: auto; }

.tow_img { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; }
.tow_img img { display: block; width: 80%; height: auto; margin: 0 auto 1rem auto; text-align: center; }

.img_doctor { margin: 0 0 10px 0; text-align: center; }
.img_doctor img { width: 70%; height: auto; }

.img_bnr { margin: 0 0 10px 0; text-align: center; }
.img_bnr img { width: auto; height: auto; }

@media screen and (min-width: 768px) { .img_right { float: right; margin: 0 0 10px 10px; }
  .img_right img { width: 300px; height: auto; }
  .img_center { margin: 0 0 10px 0; text-align: center; }
  .img_center img { width: 400px; height: auto; }
  .tow_img { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-pack: distribute; justify-content: space-around; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; }
  .tow_img img { display: block; width: 400px; height: auto; margin: 0 0 1rem 0; }
  .img_doctor { float: right; margin: 0 0 10px 10px; }
  .img_doctor img { width: auto; height: auto; }
  .img_bnr { margin: 0 0 10px 0; text-align: center; }
  .img_bnr img { width: auto; height: auto; } }
/* -----------------------------------------------------------
　リスト
----------------------------------------------------------- */
ul.list_normal { -webkit-box-sizing: border-box; box-sizing: border-box; width: 100%; }
ul.list_normal li { line-height: 130%; font-size: 1.6rem; list-style-type: disc; margin: 0 0 10px 25px; -webkit-box-sizing: border-box; box-sizing: border-box; width: 90%; }

ul.list_num { -webkit-box-sizing: border-box; box-sizing: border-box; width: 100%; }
ul.list_num li { line-height: 130%; font-size: 1.6rem; list-style-type: decimal; margin: 0 0 10px 25px; -webkit-box-sizing: border-box; box-sizing: border-box; width: 90%; }

ul.list_normal_two { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; }
ul.list_normal_two li { -webkit-box-sizing: border-box; box-sizing: border-box; line-height: 130%; font-size: 1.6rem; list-style-type: disc; margin: 0 0 10px 25px; }

ul.list_maru li { line-height: 130%; font-size: 1.6rem; list-style-type: none; margin: 0 0 10px 0; -webkit-box-sizing: border-box; box-sizing: border-box; background: url(../images/maru.gif) no-repeat; background-position: left top 0.4rem; padding: 0 0 0 5%; }

.list_frame { background-color: #fbf4dd; padding: 15px; margin: 0 0 20px 0; }

@media screen and (min-width: 768px) { ul.list_normal li { line-height: 130%; font-size: 1.6rem; list-style-type: disc; margin: 0 0 10px 25px; }
  ul.list_num { -webkit-box-sizing: border-box; box-sizing: border-box; width: 100%; }
  ul.list_num li { line-height: 130%; font-size: 1.6rem; list-style-type: decimal; margin: 0 0 10px 25px; -webkit-box-sizing: border-box; box-sizing: border-box; width: 90%; }
  ul.list_normal_two { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  ul.list_normal_two li { width: 45%; -webkit-box-sizing: border-box; box-sizing: border-box; line-height: 130%; font-size: 1.6rem; list-style-type: disc; margin: 0 0 10px 25px; }
  ul.list_maru li { line-height: 130%; font-size: 1.6rem; list-style-type: none; margin: 0 0 10px 0; -webkit-box-sizing: border-box; box-sizing: border-box; background: url(../images/maru.gif) no-repeat; background-position: left top 4px; padding: 0 0 0 20px; }
  .list_frame { background-color: #fbf4dd; padding: 15px; margin: 0 0 20px 0; } }
/* -----------------------------------------------------------
　汎用ボタン
----------------------------------------------------------- */
.btn_detail { background: url("../images/arrow.png") no-repeat; background-size: 2%; background-position: right 4% top 45%; background-color: #1da639; color: #FFF; width: auto; max-width: 90%; height: auto; margin: 0 auto; padding: 1.2rem 2.5rem 1.2rem 1.0rem; -webkit-box-sizing: border-box; box-sizing: border-box; text-align: center; text-decoration: none; font-size: 1.4rem; font-weight: bold; border-radius: 2rem; line-height: 100%; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -ms-flex-wrap: wrap; flex-wrap: wrap; }

@media screen and (min-width: 768px), print { .btn_detail { background: url("../images/arrow.png") no-repeat; background-size: 8px; background-position: right 4% top 48%; background-color: #1da639; color: #FFF; width: auto; max-width: 300px; height: auto; margin: 0 auto; text-align: center; text-decoration: none; font-size: 1.8rem; font-weight: bold; padding: 20px 30px 20px 25px; -webkit-box-sizing: border-box; box-sizing: border-box; border-radius: 3rem; line-height: 100%; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -ms-flex-wrap: wrap; flex-wrap: wrap; border: #1da639 1px solid; }
  .btn_detail:hover { background: url("../images/arrow2.png") no-repeat; background-size: 8px; background-position: right 4% top 48%; border: #1da639 1px solid; background-color: #FFF; color: #1da639; -webkit-transition: all 0.3s ease 0s; transition: all 0.3s ease 0s; } }
/* -----------------------------------------------------------
　ヘッダ
----------------------------------------------------------- */
header .head_frame { width: 100%; margin: 0 auto; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-sizing: border-box; box-sizing: border-box; padding: 0 4% 20px 4%; /*ロゴ*/ /*情報*/ }
header .head_frame figure.head_frame_logo { width: 75%; display: block; margin: 20px 0 0 0; }
header .head_frame figure.head_frame_logo img { width: 100%; height: auto; }
header .head_frame .h_inf { width: 90%; margin: 15px auto 0 auto; height: auto; color: #064f25; }
header .head_frame .h_inf .h_tel { font-size: 2.4rem; margin: 0 0 5px 0; }
header .head_frame .h_inf .h_tel i { color: #1da639; font-size: 2.4rem; vertical-align: middle; }
header .head_frame .h_inf .h_tel a { color: #064f25; text-decoration: none; }
header .head_frame .h_inf .h_address { font-size: 1.2rem; color: #020202; }
header .head_frame .h_inf .h_address i { color: #1da639; font-size: 2.4rem; vertical-align: middle; }
header .head_frame .header_receptionist { text-align: center; margin: 15px 0 0 0; }
header .head_frame .header_receptionist img { width: 70%; max-width: 231px; }
header .head_frame .header_flow { text-align: center; margin: 15px 0 0 0; }
header .head_frame .header_flow img { width: 70%; max-width: 231px; }
header .head_frame .txt { font-weight: bold; text-decoration: none !important; padding: 0; display: inline-block; font-size: 1.4rem; }

@media screen and (min-width: 768px), print { header .head_frame { width: 1000px; height: 111px; margin: 43px auto 0 auto; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -webkit-box-sizing: border-box; box-sizing: border-box; padding: 0; /*ロゴ*/ /*情報*/ }
  header .head_frame figure.head_frame_logo { width: 383px; display: block; margin: 0 0 0 0; }
  header .head_frame figure.head_frame_logo img { width: 355px; height: auto; }
  header .head_frame .h_inf { width: 386px; margin: 15px auto 0 auto; height: auto; color: #064f25; }
  header .head_frame .h_inf .h_tel { font-size: 3rem; margin: 0 0 5px 0; line-height: 100%; }
  header .head_frame .h_inf .h_tel i { color: #1da639; font-size: 2.4rem; vertical-align: middle; }
  header .head_frame .h_inf .h_tel a { color: #064f25; text-decoration: none; }
  header .head_frame .h_inf .h_address { font-size: 1.4rem; color: #020202; }
  header .head_frame .h_inf .h_address i { color: #1da639; font-size: 2.4rem; }
  header .head_frame .header_receptionist { width: 170px; text-align: center; margin: 15px 5px 0 0; }
  header .head_frame .header_receptionist img { width: 170px; max-width: 170px; }
  header .head_frame .header_receptionist:hover { opacity: 0.6; }
  header .head_frame .header_flow { width: 170px; text-align: center; margin: 15px 0 0 0; }
  header .head_frame .header_flow img { width: 170px; max-width: 170px; }
  header .head_frame .header_flow:hover { opacity: 0.6; } }
/* -----------------------------------------------------------
　ハンバーガーメニュー
----------------------------------------------------------- */
/*ハンバーガーアイコン*/
.nav_icon_frame { position: absolute; cursor: pointer; right: 2%; top: 10px; z-index: 99999; padding: 12px 0 0 0; -webkit-box-sizing: border-box; box-sizing: border-box; width: 60px; }

.nav__icon { width: 60px; height: 28px; }

.nav__icon span { background: #1b1b1b; position: absolute; left: 0; right: 0; width: 50px; height: 3px; border-radius: 4px; text-align: center; margin: 0 auto; }

.nav__icon span:nth-of-type(1) { top: 4px; }

.nav__icon span:nth-of-type(2) { top: 16px; }

.nav__icon span:nth-of-type(3) { top: 28px; }

.nav__icon.active span:nth-of-type(1) { -webkit-transform: translateY(12px) rotate(-45deg); transform: translateY(12px) rotate(-45deg); }

.nav__icon.active span:nth-of-type(2) { display: none; }

.nav__icon.active span:nth-of-type(3) { -webkit-transform: translateY(-12px) rotate(45deg); transform: translateY(-12px) rotate(45deg); }

.nav__icon p { font-size: 14px; margin: 28px 0 0 0; text-align: center; color: #1b1b1b; font-weight: bold; }

.nav__icon, .nav__icon span { display: inline-block; -webkit-transition: all .4s; transition: all .4s; -webkit-box-sizing: border-box; box-sizing: border-box; z-index: 999; }

.drawr { display: none; position: absolute; top: 20vw; right: 0; width: 65%; padding: 0; margin: 0 auto 0 auto; height: auto; z-index: 999999; background-color: rgba(40, 95, 62, 0.9); }

.openNav { display: block; }

/*ハンバーガーナビ*/
.main_nav_sp { display: block; width: 100%; height: auto; margin: 0 0 0 20%; }

.main_nav_sp nav { width: 100%; margin: 0 auto; }

.main_nav_sp ul { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; width: 100%; -webkit-box-sizing: border-box; box-sizing: border-box; padding: 4vw 5vw; box-sizing: border-box; }
.main_nav_sp ul li { width: 100%; text-align: left; font-weight: normal; font-size: 4.6vw; letter-spacing: 0.05em; line-height: 140%; list-style-type: none; -webkit-box-sizing: border-box; box-sizing: border-box; padding: 0 0 0 0; border-bottom: #ffffff 1px solid; }
.main_nav_sp ul li:first-child { border-top: #ffffff 1px solid; }
.main_nav_sp ul li a { color: #ffffff; text-decoration: none; width: 100%; display: block; padding: 10px 0; text-shadow: none; -webkit-box-sizing: border-box; box-sizing: border-box; }
.main_nav_sp ul li a span { font-size: 3vw; vertical-align: middle; }

@media screen and (min-width: 768px) { .main_nav_sp { display: none; } }
/* ----------------------------------------------------------- グローバルナビ
----------------------------------------------------------- */
/*PC*/
.main_nav_pc { display: none; }

@media screen and (min-width: 768px), print { /*PC*/
  .main_nav_pc { display: block; width: 1000px; margin: 0 auto; height: 62px; }
  .main_nav_pc ul.main_nav { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; z-index: 99999; position: relative; }
  .main_nav_pc ul.main_nav li { width: 142.9px; text-align: center; -webkit-box-sizing: border-box; box-sizing: border-box; border-left: #ffe931 3px solid; height: 62px; }
  .main_nav_pc ul.main_nav li:last-child { border-right: #ffe931 3px solid; }
  .main_nav_pc ul.main_nav li a { text-decoration: none; display: block; width: 100%; height: 62px; color: #0b681e; font-size: 1.6rem; line-height: 130%; }
  .main_nav_pc ul.main_nav li a span { color: #898989; font-size: 1rem; }
  .main_nav_pc ul.main_nav li a:hover { opacity: 0.6; }
  .main_nav_pc ul.main_nav li ul.main_nav_sub { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -ms-flex-wrap: wrap; flex-wrap: wrap; width: 570px; height: auto; display: none; z-index: 999999999; margin: 30px 0 0 0; border-top: #0b681e 1px solid; }
  .main_nav_pc ul.main_nav li ul.main_nav_sub.open_nav { display: -webkit-box; display: -ms-flexbox; display: flex; }
  .main_nav_pc ul.main_nav li ul.main_nav_sub li { border: none; width: 190px; height: 60px; padding: 0 5px; -webkit-box-sizing: border-box; box-sizing: border-box; border-bottom: #0b681e 1px solid; border-left: #0b681e 1px solid; background-color: #fdfff5; }
  .main_nav_pc ul.main_nav li ul.main_nav_sub li a { height: 60px; width: 100%; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; color: #0b681e; text-decoration: none; }
  .main_nav_pc ul.main_nav li ul.main_nav_sub li a span { font-size: 1.1rem; line-height: 1.15; color: red; }
  .main_nav_pc ul.main_nav li ul.main_nav_sub li i { display: none; }
  .main_nav_pc ul.main_nav li ul.main_nav_sub li:nth-child(3) { border-right: #0b681e 1px solid; }
  .main_nav_pc ul.main_nav li ul.main_nav_sub li:nth-child(6) { border-right: #0b681e 1px solid; }
  .main_nav_pc ul.main_nav li ul.main_nav_sub li:nth-child(9) { border-right: #0b681e 1px solid; }
  .main_nav_pc ul.main_nav li ul.main_nav_sub li:nth-child(12) { border-right: #0b681e 1px solid; }
  .main_nav_pc ul.main_nav li ul.main_nav_sub li:last-child { border-right: #0b681e 1px solid; /*width: 191px;*/ } }
/* -----------------------------------------------------------
　スライダー(キービジュアル)
----------------------------------------------------------- */
.key_visual_top { border-top: #1da639 5px solid; }
.key_visual_top .swiper-container .swiper-wrapper .swiper-slide img { width: 100%; margin: 0 0 -4px 0; }
.key_visual_top .key_visual_on { background-color: #1da639; color: #ffffff; font-size: 1.5rem; text-align: center; padding: 20px 2%; }
.key_visual_top .key_visual_on span { font-size: 1.55rem; font-weight: bold; }

.key_visual_low { width: 100%; margin: 0 auto; height: 20vw; background: url(../images/key_low.jpg) no-repeat; background-position: center center; background-size: cover; overflow: hidden; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; text-align: center; border-top: #179631 5px solid; }
.key_visual_low h1 { color: #ffffff; font-size: 2.1rem; font-weight: normal; }

@media screen and (min-width: 768px), print { .key_visual_top { border-top: #1da639 5px solid; /*margin: 37px 0 0 0;*/ margin: 2vw 0 0 0; position: relative; /*padding:0 0 90px 0;*/ padding: 0 0 6.5vw 0; overflow: hidden; }
  .key_visual_top .swiper-container { position: relative; z-index: 0; overflow: visible; }
  .key_visual_top .swiper-container .swiper-wrapper .swiper-slide img { width: 100%; }
  .key_visual_top .key_visual_on { background-color: transparent; background: url(../images/key_on.png) no-repeat; background-size: 100%; color: #ffffff; font-size: 1.3vw; text-align: center; padding: 30px 2% 10px; width: 37%; height: 136px; margin: 0 auto; position: absolute; bottom: -110px; left: 0; right: 0; z-index: 1; overflow: visible; }
  .key_visual_top .key_visual_on span { font-size: 1.8vw; font-weight: bold; }
  .key_visual_low { width: 100%; margin: 38px auto 0 auto; height: 145px; background: url(../images/key_low.jpg) no-repeat; background-position: center center; background-size: contain; background-color: #1da639; overflow: hidden; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; text-align: center; border-top: #179631 5px solid; }
  .key_visual_low h1 { color: #ffffff; font-size: 4rem; font-weight: normal; } }
/* -----------------------------------------------------------
　お知らせ
----------------------------------------------------------- */
.notice_frame { border: #999999 1px solid; background-color: #ffffff; padding: 3vw; -webkit-box-sizing: border-box; box-sizing: border-box; overflow-y: scroll; height: 360px; width: 100%; margin: 0 0 20px 0; }
.notice_frame dl dt { margin: 0; color: #0b681e; font-size: 1.4rem; line-height: 120%; border-left: #1da639 4px solid; padding: 0 0 0 10px; -webkit-box-sizing: border-box; box-sizing: border-box; }
.notice_frame dl dd { color: #434343; margin: 0 0 40px 0; font-size: 1.4rem; line-height: 120%; border-left: #1da639 4px solid; padding: 0 0 0 10px; }

@media screen and (min-width: 768px), print { .notice_outside { height: 220px; overflow: hidden; margin: 0 0 20px 0; }
  .notice_frame { border: #999999 1px solid; background-color: #ffffff; padding: 20px 12px; -webkit-box-sizing: border-box; box-sizing: border-box; overflow-y: scroll; height: 220px; width: 100%; margin: 0 0 20px 0; }
  .notice_frame dl dt { margin: 0; color: #0b681e; font-size: 1.7rem; line-height: 120%; border-left: #1da639 4px solid; padding: 0 0 0 10px; -webkit-box-sizing: border-box; box-sizing: border-box; }
  .notice_frame dl dd { color: #434343; margin: 0 0 10px 0; font-size: 1.7rem; line-height: 130%; border-left: #1da639 4px solid; padding: 0 0 0 10px; } }
/*スマホ用スライドバー*/
@media screen and (max-width: 768px) { .notice_frame::-webkit-scrollbar { width: 12px; background: #ffffff; }
  .notice_frame::-webkit-scrollbar-track { -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3); border-radius: 10px; }
  .notice_frame::-webkit-scrollbar-thumb { border-radius: 10px; -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.5); } }
/* -----------------------------------------------------------
　目的別問診票
----------------------------------------------------------- */
.medical_questionnaire_bnr a { margin-bottom: 1.5rem; }

@media screen and (min-width: 768px), print { .medical_questionnaire_bnr { max-width: 1000px; margin: 0 auto; display: -webkit-box; display: -ms-flexbox; display: flex; padding-bottom: 6rem; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -ms-flex-wrap: wrap; flex-wrap: wrap; list-style-type: none; gap: 2rem; }
  .medical_questionnaire_bnr a { min-width: 370px; display: inline-block; margin: 0; } }
/* -----------------------------------------------------------
　診療メニュー
----------------------------------------------------------- */
.treatment_frame { background: url(../images/pattern01.gif) repeat; width: 100%; padding: 30px 0; }
.treatment_frame .treatment_inner { width: 100%; }

/*診療リスト*/
ul.treatment_list { width: 96%; margin: 0 auto; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-pack: distribute; justify-content: space-around; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -ms-flex-wrap: wrap; flex-wrap: wrap; list-style-type: none; }
ul.treatment_list li { width: 48%; border-radius: 5px; background-color: #1da639; text-align: center; -webkit-box-shadow: 0px 6px 0px -3px #2e6c08; box-shadow: 0px 6px 0px -3px #2e6c08; margin: 0 0 15px 0; }
ul.treatment_list li a { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; color: #ffffff; text-decoration: none; font-size: 1.4rem; padding: 15px 0 10px; }
ul.treatment_list li a span { height: 4.5rem; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; padding: 0 2px; }
ul.treatment_list li a span span { font-size: 1.3rem; font-weight: bold; margin: 0.3rem 0.2rem 0; background: #FCF29B; padding: 0rem 0.2rem; border-radius: 50vh; }
ul.treatment_list li a i { display: block; color: #ebffaa; font-size: 3.4rem; margin: 5px 0 0 0; }
ul.treatment_list li.blank { background-color: transparent; -webkit-box-shadow: none; box-shadow: none; }

/*バナーリスト*/
ul.bana_list { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; width: 90%; margin: 0 auto; list-style-type: none; }
ul.bana_list li { margin: 0 0 19px 0; }
ul.bana_list li img { width: 100%; }

@media screen and (min-width: 768px), print { .treatment_frame { background: url(../images/pattern01.gif) repeat; width: 100%; padding: 40px 0; margin: 0 0 35px 0; }
  .treatment_frame .treatment_inner { width: 1000px; margin: 0 auto; }
  /*診療リスト*/
  ul.treatment_list { width: 1000px; margin: 0 auto; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -ms-flex-wrap: wrap; flex-wrap: wrap; list-style-type: none; }
  ul.treatment_list li { width: 312px; border-radius: 5px; background-color: #1da639; text-align: center; -webkit-box-shadow: 0px 6px 0px -3px #2e6c08; box-shadow: 0px 6px 0px -3px #2e6c08; margin: 0 0 28px 0; line-height: 250%; }
  ul.treatment_list li a { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -webkit-box-align: center; -ms-flex-align: center; align-items: center; color: #ffffff; text-decoration: none; font-size: 1.9rem; padding: 14px 0 14px 18px; width: 312px; -webkit-box-sizing: border-box; box-sizing: border-box; }
  ul.treatment_list li a span { height: auto; display: block; text-align: left; width: 227px; margin: 0; line-height: 1.2; }
  ul.treatment_list li a span span { margin: 0; font-size: 1.2rem; padding: 0.4rem 0.2rem; }
  ul.treatment_list li a i { display: block; color: #ebffaa; font-size: 5rem; margin: 0; padding: 0; width: 85px; text-align: center; }
  ul.treatment_list li:hover { opacity: 0.6; }
  ul.treatment_list li.blank { background-color: transparent; -webkit-box-shadow: none; box-shadow: none; }
  /*バナーリスト*/
  ul.bana_list { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; width: 1000px; margin: 0 auto; list-style-type: none; }
  ul.bana_list li { width: 484px; margin: 0 0 19px 0; }
  ul.bana_list li img { width: 100%; }
  ul.bana_list li :hover { opacity: 0.85; } }
/* -----------------------------------------------------------
　みやの杜クリニックの特長
----------------------------------------------------------- */
.goodpoint_frame { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; }
.goodpoint_frame div { margin: 0 0 10px 0; }
.goodpoint_frame div figure img { width: 100%; height: auto; margin: 0 0 -4px 0; border-top-right-radius: 5px; border-top-left-radius: 5px; }
.goodpoint_frame div p { font-size: 1.4rem; padding: 20px; -webkit-box-sizing: border-box; box-sizing: border-box; line-height: 140%; border-bottom-right-radius: 5px; border-bottom-left-radius: 5px; }
.goodpoint_frame div p span { font-size: 1.9rem; display: block; margin: 0 0 5px 0; }
.goodpoint_frame div p.gp_green { color: #ffffff; background: url(../images/index_kirin01.png) no-repeat; background-color: #1f9b3c; background-position: right 20px center; background-size: 22%; }
.goodpoint_frame div p.gp_yellow { color: #434343; background: url(../images/index_kirin02.png) no-repeat; background-color: #ebffaa; background-position: right 20px center; background-size: 22%; }
.goodpoint_frame div p.gp_yellow span { color: #1f9b3c; }
.goodpoint_frame div p.gp_green_re { color: #ffffff; background: url(../images/index_kirin01.png) no-repeat; background-color: #1f9b3c; background-position: right 20px center; background-size: 22%; }
.goodpoint_frame div p.gp_yellow_re { color: #434343; background: url(../images/index_kirin02.png) no-repeat; background-color: #ebffaa; background-position: right 20px center; background-size: 22%; }
.goodpoint_frame div p.gp_yellow_re span { color: #1f9b3c; }

@media screen and (min-width: 768px), print { .goodpoint_frame { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -ms-flex-wrap: wrap; flex-wrap: wrap; margin: 20px 0 0 0; }
  .goodpoint_frame div { width: 480px; margin: 0 0 10px 0; }
  .goodpoint_frame div figure img { width: 100%; height: auto; margin: 0 0 -4px 0; border-top-right-radius: 10px; border-top-left-radius: 10px; }
  .goodpoint_frame div p { font-size: 1.7rem; padding: 20px; -webkit-box-sizing: border-box; box-sizing: border-box; line-height: 160%; border-bottom-right-radius: 10px; border-bottom-left-radius: 10px; }
  .goodpoint_frame div p span { font-size: 2.5rem; margin: 0 0 15px 0; display: block; }
  .goodpoint_frame div p.gp_green { color: #ffffff; background: url(../images/index_kirin01.png) no-repeat; background-color: #1f9b3c; background-position: right 20px center; background-size: 22%; }
  .goodpoint_frame div p.gp_yellow { color: #434343; background: url(../images/index_kirin02.png) no-repeat; background-color: #ebffaa; background-position: right 20px center; background-size: 22%; }
  .goodpoint_frame div p.gp_yellow span { color: #1f9b3c; }
  .goodpoint_frame div p.gp_green_re { color: #434343; background: url(../images/index_kirin02.png) no-repeat; background-color: #ebffaa; background-position: right 20px center; background-size: 22%; }
  .goodpoint_frame div p.gp_green_re span { color: #1f9b3c; }
  .goodpoint_frame div p.gp_yellow_re { color: #ffffff; background: url(../images/index_kirin01.png) no-repeat; background-color: #1f9b3c; background-position: right 20px center; background-size: 22%; }
  .goodpoint_frame div p.gp_yellow_re span { color: #ffffff; } }
/* -----------------------------------------------------------
　医院概要
----------------------------------------------------------- */
.overview { width: 100%; padding: 0; -webkit-box-sizing: border-box; box-sizing: border-box; }
.overview img { width: 60%; margin: 0 auto; display: block; }

.overview_frame { width: 100%; margin: -4px auto 0 auto; -webkit-box-sizing: border-box; box-sizing: border-box; padding: 15px 0 30px 0; background-color: #1da639; }
.overview_frame .icon-icon13 { display: none; }
.overview_frame .icon-icon14 { display: none; }
.overview_frame .overview_box { width: 100%; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; }
.overview_frame .overview_box .overview_box_left { width: 100%; }
.overview_frame .overview_box .overview_box_left dl { width: 90%; margin: 20px auto 0 auto; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -ms-flex-wrap: wrap; flex-wrap: wrap; }
.overview_frame .overview_box .overview_box_left dl dt { color: #ffffff; background-color: #5dbc56; font-size: 1.4rem; font-weight: normal; margin: 0 0 0 0; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; width: 25%; padding: 10px 0; -webkit-box-sizing: border-box; box-sizing: border-box; border-bottom: #1da639 1px solid; border-right: #1da639 1px solid; }
.overview_frame .overview_box .overview_box_left dl dd { color: #434343; background-color: #ffffff; font-size: 1.5rem; margin: 0 0 0 0; border-bottom: #28a7e1 1px solid; line-height: 160%; width: 75%; padding: 10px; -webkit-box-sizing: border-box; box-sizing: border-box; border-bottom: #1da639 1px solid; }
.overview_frame .overview_box .overview_box_left dl dd a { color: #434343; font-size: 1.5rem; text-decoration: none; }
.overview_frame .overview_box .overview_box_right { width: 100%; margin: 20px 0 0 0; text-align: center; }
.overview_frame .overview_box .overview_box_right iframe { width: 90%; height: 300px; margin: 0 auto; border: none; }
.overview_frame .overview_box .overview_box_right a { color: #ffffff; text-decoration: none; display: inline-block; font-size: 1.5rem; border: #ffffff 1px solid; border-radius: 15px; padding: 10px; margin: 20px 0 0 0; }

@media screen and (min-width: 768px), print { .overview { width: 100%; margin: 93px 0 0 0; padding: 0; }
  .overview img { width: 380px; margin: 0 auto; display: block; }
  .overview_frame { width: 100%; margin: 0 auto; -webkit-box-sizing: border-box; box-sizing: border-box; padding: 0 0 58px 0; position: relative; }
  .overview_frame .icon-icon13 { position: absolute; left: 0; right: 0; top: 15px; font-size: 3rem; display: block; text-align: center; margin: 0 140px 0 0; color: #58ba6c; }
  .overview_frame .icon-icon14 { position: absolute; left: 0; right: 0; top: 15px; font-size: 3rem; display: block; text-align: center; margin: 0 0 0 140px; color: #58ba6c; }
  .overview_frame .overview_box { width: 1000px; margin: 25px auto 0 auto; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; }
  .overview_frame .overview_box .overview_box_left { width: 480px; }
  .overview_frame .overview_box .overview_box_left dl { width: 100%; margin: 0; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  .overview_frame .overview_box .overview_box_left dl dt { color: #ffffff; background-color: #5dbc56; font-size: 1.7rem; font-weight: normal; margin: 0 0 0 0; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; width: 28%; padding: 13px 0; -webkit-box-sizing: border-box; box-sizing: border-box; border-bottom: #1da639 1px solid; border-right: #1da639 1px solid; }
  .overview_frame .overview_box .overview_box_left dl dt.add { padding: 5px 0; }
  .overview_frame .overview_box .overview_box_left dl dd { color: #434343; background-color: #ffffff; font-size: 1.7rem; margin: 0 0 0 0; border-bottom: #28a7e1 1px solid; line-height: 160%; width: 72%; padding: 13px 20px; -webkit-box-sizing: border-box; box-sizing: border-box; border-bottom: #1da639 1px solid; }
  .overview_frame .overview_box .overview_box_left dl dd a { color: #434343; font-size: 1.5rem; text-decoration: none; }
  .overview_frame .overview_box .overview_box_left dl dd.add { padding: 5px 16px; }
  .overview_frame .overview_box .overview_box_right { width: 480px; margin: 0; }
  .overview_frame .overview_box .overview_box_right iframe { width: 100%; height: 385px; margin: 0 auto; border: none; }
  .overview_frame .overview_box .overview_box_right a { color: #ffffff; text-decoration: none; display: inline-block; font-size: 1.6rem; border: #ffffff 1px solid; border-radius: 20px; padding: 10px 20px; margin: 10px 0 0 0; }
  .overview_frame .overview_box .overview_box_right a:hover { opacity: 0.6; } }
/* -----------------------------------------------------------
　診療時間
----------------------------------------------------------- */
table.timetable { padding: 0px; margin: 20px auto 10px auto; vertical-align: middle; width: 90%; text-align: center; border-collapse: collapse; -webkit-box-sizing: border-box; box-sizing: border-box; color: #534741; border-bottom: #dcdcdc 1px solid; }
table.timetable tr th { width: auto; -webkit-box-sizing: border-box; box-sizing: border-box; font-weight: normal; font-size: 1.5rem; padding: 5px 0; vertical-align: middle; background-color: #5dbc56; color: #ffffff; }
table.timetable tr td { -webkit-box-sizing: border-box; box-sizing: border-box; font-weight: normal; font-size: 1.5rem; padding: 18px 0; vertical-align: middle; color: #626262; background-color: #ffffff; border-bottom: #dcdcdc 1px solid; }
table.timetable tr td.time { width: 35%; -webkit-box-sizing: border-box; box-sizing: border-box; font-size: 1.2rem; }

p.timetable_notice { color: #ffffff; font-size: 1.4rem; width: 90%; margin: 0 auto; }

.access p.timetable_notice { color: #434343; font-size: 1.4rem; width: 90%; margin: 0 auto; }

@media screen and (min-width: 768px), print { table.timetable { padding: 0px; margin: 25px auto 10px auto; vertical-align: middle; width: 100%; text-align: center; border-collapse: collapse; -webkit-box-sizing: border-box; box-sizing: border-box; color: #534741; border-bottom: #dcdcdc 1px solid; }
  table.timetable tr th { width: auto; -webkit-box-sizing: border-box; box-sizing: border-box; font-weight: normal; font-size: 1.6rem; padding: 13px 0; vertical-align: middle; background-color: #5dbc56; color: #ffffff; }
  table.timetable tr td { -webkit-box-sizing: border-box; box-sizing: border-box; font-weight: normal; font-size: 1.6rem; padding: 14px 0; vertical-align: middle; color: #626262; background-color: #ffffff; border-bottom: #dcdcdc 1px solid; }
  table.timetable tr td.time { width: 28%; -webkit-box-sizing: border-box; box-sizing: border-box; font-size: 1.6rem; }
  p.timetable_notice { color: #ffffff; font-size: 1.6rem; width: 100%; margin: 0 auto; }
  .access p.timetable_notice { color: #434343; font-size: 1.6rem; width: 100%; margin: 0 auto; } }
/* -----------------------------------------------------------
　フッター
----------------------------------------------------------- */
footer { margin: 0; background-color: #ffffff; padding: 25px 0 0 0; }

.footer_frame .footer_info a { text-align: center; display: block; }
.footer_frame .footer_info a img { width: 80%; height: auto; }
.footer_frame .footer_info .f_tel { font-size: 2.4rem; margin: 15px auto 5px auto; width: 80%; overflow: hidden; }
.footer_frame .footer_info .f_tel i { color: #1da639; font-size: 2.4rem; vertical-align: middle; float: left; padding: 4px 0 0 0; }
.footer_frame .footer_info .f_tel a { color: #064f25; text-decoration: none; display: block; float: left; padding: 2px 0 0 0; }
.footer_frame .footer_info .f_address { margin: 0 auto 5px auto; width: 80%; font-size: 1.1rem; color: #020202; }
.footer_frame .footer_info .f_address i { color: #1da639; font-size: 2.4rem; vertical-align: middle; }

.footer_list1 { display: none; }

.footer_list2 { display: none; }

.copyright { text-align: center; -webkit-box-sizing: border-box; box-sizing: border-box; margin: 0; color: #434343; padding: 10px 2vw; font-size: 1.4rem; }

@media screen and (min-width: 768px), print { footer { margin: 0; background-color: #ffffff; padding: 25px 0 0 0; }
  .footer_frame { width: 1000px; margin: 0 auto; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; padding: 20px 0 36px 0; }
  .footer_frame .footer_info { width: 530px; }
  .footer_frame .footer_info a { text-align: left; display: block; }
  .footer_frame .footer_info a img { width: 355px; height: auto; }
  .footer_frame .footer_info .f_tel { font-size: 3rem; margin: 20px auto 5px auto; width: 100%; overflow: hidden; }
  .footer_frame .footer_info .f_tel i { color: #1da639; font-size: 3rem; vertical-align: middle; float: left; padding: 2px 0 0 0; }
  .footer_frame .footer_info .f_tel span { color: #064f25; text-decoration: none; display: block; float: left; padding: 4px 0 0 0; font-size: 3rem; font-weight: bold; }
  .footer_frame .footer_info .f_address { margin: 10px auto 5px auto; width: 100%; font-size: 1.8rem; color: #020202; }
  .footer_frame .footer_info .f_address i { color: #1da639; font-size: 3rem; vertical-align: middle; }
  .footer_list1 { display: block; width: 200px; }
  .footer_list1 ul { list-style-type: none; font-size: 1.5rem; }
  .footer_list1 ul li { margin: 0 0 5px 0; }
  .footer_list1 ul li a { color: #434343; text-decoration: none; }
  .footer_list1 ul li a i { color: #25a940; }
  .footer_list1 ul li a br { display: none; }
  .footer_list2 { display: block; width: 270px; }
  .footer_list2 ul { list-style-type: none; font-size: 1.5rem; }
  .footer_list2 ul li { margin: 0 0 5px 0; }
  .footer_list2 ul li a { color: #434343; text-decoration: none; }
  .footer_list2 ul li a span { display: none; }
  .footer_list2 ul li a i { color: #25a940; }
  .footer_list2 ul li a br { display: none; }
  .copyright { text-align: left; -webkit-box-sizing: border-box; box-sizing: border-box; margin: 0; color: #434343; padding: 30px 0 0 5px; font-size: 1.4rem; } }
/* -----------------------------------------------------------
　ページトップへ
----------------------------------------------------------- */
#linkpagetop { float: right; }
#linkpagetop img { width: 80%; height: auto; }

#pagetop { position: fixed; bottom: 50px; right: 0px; height: 60px; text-align: center; margin: 0 2% 0 0; }
#pagetop a { display: block; color: #FFF; }

#pagetop_position { float: right; margin: 0px; padding: 0px; }

@media screen and (min-width: 768px), print { #linkpagetop { float: left; }
  #linkpagetop img { width: 60px; height: auto; }
  #pagetop { position: fixed; bottom: 240px; left: 50%; margin: 0 0 0 600px; height: 105px; text-align: center; }
  #pagetop a { display: block; color: #ffffff; }
  #pagetop_position { float: right; margin: 0px; padding: 0px; } }
@media screen and (min-width: 768px) and (max-width: 1500px) { #pagetop { position: fixed; bottom: 70px; left: 90%; margin: 0 0 0 0; height: 105px; text-align: center; } }
/* -----------------------------------------------------------
　下層
----------------------------------------------------------- */
/*診療時間・アクセス*/
iframe.access_map { width: 100%; height: 300px; margin: 0 auto; border: none; }

.text_link { text-align: right; font-size: 1.5rem; }
.text_link a { color: #666666; }

@media screen and (min-width: 768px), print { iframe.access_map { width: 100%; height: 500px; margin: 0 auto; border: none; }
  .text_link { text-align: right; font-size: 1.7rem; }
  .text_link a { color: #666666; } }
/* -----------------------------------------------------------
　矢印
----------------------------------------------------------- */
.arrow { width: 0; height: 0; border-left: 60px solid transparent; border-right: 60px solid transparent; border-top: 30px solid #fbea5f; text-align: center; display: block; margin: 30px auto 0 auto; }

@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 #fbea5f; text-align: center; display: block; margin: 30px auto 0 auto; } }
/* -----------------------------------------------------------
　印刷用
----------------------------------------------------------- */
.gm-style img { max-width: none !important; }

/* -----------------------------------------------------------
　定義リスト
----------------------------------------------------------- */
dl.bio_list { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -ms-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.5rem; -webkit-box-sizing: border-box; box-sizing: border-box; margin: 0 0 20px 0; line-height: 120%; }
dl.bio_list dt { width: 100%; margin: 0 0 0 0; font-weight: bold; }
dl.bio_list dd { width: 100%; margin: 0 0 20px 0; }

dl.book_list { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -ms-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.5rem; -webkit-box-sizing: border-box; box-sizing: border-box; margin: 0 0 20px 0; line-height: 120%; }
dl.book_list dt { width: 100%; margin: 0 0 1rem 0; font-weight: bold; }
dl.book_list dd { width: 100%; margin: 0 0 2rem 0; }

@media screen and (min-width: 768px) { dl.bio_list { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -ms-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.7rem; -webkit-box-sizing: border-box; box-sizing: border-box; line-height: 140%; width: 1000px; }
  dl.bio_list dt { width: 140px; margin: 0 0 20px 0; font-weight: normal; }
  dl.bio_list dd { width: 860px; margin: 0 0 20px 0; }
  dl.book_list { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -ms-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.7rem; -webkit-box-sizing: border-box; box-sizing: border-box; margin: 0 0 20px 0; line-height: 120%; }
  dl.book_list dt { width: 100%; margin: 0 0 1rem 0; font-weight: bold; }
  dl.book_list dd { width: 100%; margin: 0 0 4rem 0; } }
/* -----------------------------------------------------------
　併設医院
----------------------------------------------------------- */
.juxtaposition figure { width: 80%; margin: 3rem auto 0 auto; }
.juxtaposition figure a img { width: 100%; height: auto; margin: 0 0 1.5rem 0; }

@media screen and (min-width: 768px), print { .juxtaposition figure { width: 1000px; margin: 10px auto 0 auto; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  .juxtaposition figure a { display: block; width: 313px; }
  .juxtaposition figure a img { display: block; width: 313px; height: auto; margin: 0 0 1.5rem 0; }
  .juxtaposition figure a:hover { opacity: 0.8; } }
/* ----------------------------------------------------------- 国別受けておきたい予防接種
----------------------------------------------------------- */
.world_bana { width: 100%; margin: 1rem auto; display: block; }
.world_bana img { width: 100%; height: auto; }

ul.world_link { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -ms-flex-wrap: wrap; flex-wrap: wrap; list-style-type: none; width: 100%; margin: 0 auto; }
ul.world_link li { width: 48%; text-align: center; margin: 0 0 1rem 0; }
ul.world_link li a { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; color: #ffffff; text-decoration: none; background-color: #1da639; line-height: 120%; font-size: 1.2rem; text-align: left; padding: 0.5rem; border-radius: 0.4rem; -webkit-box-shadow: 0 2px 0 -1px #2e6c08; box-shadow: 0 2px 0 -1px #2e6c08; height: 12vw; }

.emphasis { background-color: #feffc9; }

table.low_table { padding: 0px; vertical-align: middle; width: 100%; margin: 0 auto; text-align: center; border-collapse: collapse; -webkit-box-sizing: border-box; box-sizing: border-box; }
table.low_table tr { margin: 0px; padding: 0px; vertical-align: middle; }
table.low_table tr th { background-color: #1da639; padding: 1rem; text-align: center; font-weight: normal; color: #ffffff; font-size: 1.2rem; vertical-align: middle; -webkit-box-sizing: border-box; box-sizing: border-box; width: 50%; border: #ffffff 1px solid; line-height: 120%; }
table.low_table tr td { text-align: left; padding: 1rem; color: #434343; font-size: 1rem; vertical-align: middle; -webkit-box-sizing: border-box; box-sizing: border-box; border: #1da639 1px solid; }

.text_bold { font-weight: bold; }

.text_red { color: red; }

.text_underline { text-decoration: underline; }

table.low_table2 { padding: 0px; vertical-align: middle; width: 100%; margin: 0; border-collapse: collapse; -webkit-box-sizing: border-box; box-sizing: border-box; }
table.low_table2 tr { margin: 0px; padding: 0px; vertical-align: middle; }
table.low_table2 tr th { text-align: left; padding: 1rem 0.5rem; color: #434343; font-size: 1rem; vertical-align: middle; -webkit-box-sizing: border-box; box-sizing: border-box; border: #434343 1px solid; line-height: 140%; }
table.low_table2 tr td { text-align: left; padding: 1rem 0.5rem; color: #434343; font-size: 1rem; vertical-align: middle; -webkit-box-sizing: border-box; box-sizing: border-box; border: #434343 1px solid; line-height: 140%; font-size: 1rem; }
table.low_table2 tr td.low_table2_left { width: 150px; }
table.low_table2 tr td.low_table2_right { width: 350px; }
table.low_table2 tr td.sub_title { width: auto; }
table.low_table2 tr td.num { width: auto; }

table.low_table3 { padding: 0px; vertical-align: middle; width: 100%; margin: 0 auto; text-align: center; border-collapse: collapse; -webkit-box-sizing: border-box; box-sizing: border-box; }
table.low_table3 tr { margin: 0px; padding: 0px; vertical-align: middle; }
table.low_table3 tr th { background-color: #1da639; padding: 1rem; text-align: center; font-weight: normal; color: #ffffff; font-size: 1.2rem; vertical-align: middle; -webkit-box-sizing: border-box; box-sizing: border-box; width: 50%; border: #ffffff 1px solid; line-height: 120%; }
table.low_table3 tr td { text-align: left; padding: 1rem; color: #434343; font-size: 1rem; vertical-align: middle; -webkit-box-sizing: border-box; box-sizing: border-box; border: #1da639 1px solid; line-height: 1.5; }

@media screen and (min-width: 768px) { .world_bana { width: 720px; margin: 1rem auto; display: block; }
  .world_bana img { width: 720px; height: auto; }
  .world_bana:hover { opacity: 0.6; }
  ul.world_link { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-pack: distribute; justify-content: space-around; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -ms-flex-wrap: wrap; flex-wrap: wrap; list-style-type: none; width: 1000px; margin: 30px auto 0 auto; }
  ul.world_link li { width: 230px; text-align: center; margin: 0 0 20px 0; }
  ul.world_link li a { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -webkit-box-align: center; -ms-flex-align: center; align-items: center; color: #ffffff; text-decoration: none; background-color: #1da639; line-height: 120%; font-size: 1.6rem; text-align: left; padding: 14px; border-radius: 0.4rem; -webkit-box-shadow: 0 2px 0 -1px #2e6c08; box-shadow: 0 2px 0 -1px #2e6c08; -webkit-box-sizing: border-box; box-sizing: border-box; height: 60px; }
  ul.world_link li:hover { opacity: 0.6; }
  table.low_table { padding: 0px; vertical-align: middle; width: 100%; margin: 0 auto; text-align: center; border-collapse: collapse; -webkit-box-sizing: border-box; box-sizing: border-box; }
  table.low_table tr { margin: 0px; padding: 0px; vertical-align: middle; }
  table.low_table tr th { background-color: #1da639; padding: 20px; text-align: center; font-weight: normal; color: #ffffff; font-size: 1.6rem; vertical-align: middle; -webkit-box-sizing: border-box; box-sizing: border-box; width: 50%; border: #ffffff 1px solid; line-height: 120%; }
  table.low_table tr td { text-align: left; padding: 20px 10px; color: #434343; font-size: 1.6rem; vertical-align: middle; -webkit-box-sizing: border-box; box-sizing: border-box; border: #1da639 1px solid; }
  table.low_table2 { padding: 0px; vertical-align: middle; width: 1000px; margin: 0 auto; text-align: center; border-collapse: collapse; -webkit-box-sizing: border-box; box-sizing: border-box; }
  table.low_table2 tr { margin: 0px; padding: 0px; vertical-align: middle; }
  table.low_table2 tr th { padding: 20px; text-align: center; font-weight: normal; color: #434343; font-size: 1.6rem; vertical-align: middle; -webkit-box-sizing: border-box; box-sizing: border-box; width: 50%; border: #434343 1px solid; line-height: 120%; }
  table.low_table2 tr td { text-align: left; padding: 20px 10px; color: #434343; font-size: 1.6rem; vertical-align: middle; -webkit-box-sizing: border-box; box-sizing: border-box; border: #434343 1px solid; line-height: 140%; }
  table.low_table2 tr td.low_table2_left { width: 300px; }
  table.low_table2 tr td.sub_title { width: 200px; }
  table.low_table2 tr td.num { width: 100px; }
  table.low_table3 { padding: 0px; vertical-align: middle; width: 100%; margin: 0 auto; text-align: center; border-collapse: collapse; -webkit-box-sizing: border-box; box-sizing: border-box; }
  table.low_table3 tr { margin: 0px; padding: 0px; vertical-align: middle; }
  table.low_table3 tr th { background-color: #1da639; padding: 15px; text-align: center; font-weight: normal; color: #ffffff; font-size: 1.6rem; vertical-align: middle; -webkit-box-sizing: border-box; box-sizing: border-box; width: 50%; border: #ffffff 1px solid; line-height: 120%; }
  table.low_table3 tr td { text-align: left; padding: 20px 10px; color: #434343; font-size: 1.6rem; vertical-align: middle; -webkit-box-sizing: border-box; box-sizing: border-box; border: #1da639 1px solid; } }
@media screen and (max-width: 768px) { .table_scroll { overflow: auto; white-space: nowrap; }
  .table_scroll::-webkit-scrollbar { height: 5px; }
  .table_scroll::-webkit-scrollbar-track { background: #F1F1F1; }
  .table_scroll::-webkit-scrollbar-thumb { background: #BCBCBC; } }
/* -----------------------------------------------------------
　フォーム
----------------------------------------------------------- */
textarea { width: 100%; height: 10rem; }

.form_textarea { width: 100%; height: 10rem; }

.privacy_policy { padding: 3vw; -webkit-box-sizing: border-box; box-sizing: border-box; overflow-y: scroll; height: 50vw; width: 96%; margin: 3rem auto; border: #000000 1px solid; }

@media screen and (min-width: 768px) { textarea { width: 50%; height: 10rem; }
  .form_textarea { width: 50%; height: 10rem; }
  .privacy_policy { padding: 3vw; -webkit-box-sizing: border-box; box-sizing: border-box; overflow-y: scroll; height: 300px; width: 740px; margin: 3rem auto; border: #000000 1px solid; padding: 20px; } }
.box_yellow { background-color: #fbf5c6; padding: 1.5em; margin: 0 0 20px 0; }

.mb0 { margin-bottom: 0 !important; }

.mb20 { margin-bottom: 20px !important; }

.mt10 { margin-top: 10px; }

.ttl { margin-bottom: 0 !important; }
.ttl .numbers { font-weight: bold; margin-right: 1rem; }
.ttl .ttl2 { color: #196CB8; font-weight: bold; }

.txt { padding-left: 2.5rem; }

@media screen and (min-width: 768px) { .ttl { margin-bottom: 0 !important; }
  .ttl .numbers { font-weight: bold; margin-right: 1rem; }
  .ttl .ttl2 { color: #196CB8; font-weight: bold; }
  .txt { padding-left: 2.5rem; } }

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