@charset "UTF-8";
/* Scss Document */
/* ======================================================================= 共通項目 
======================================================================= */
/*関数*/
/* ----------------------------------------------------------- 関数
----------------------------------------------------------- */
/*サイトの横幅*/
/*media screen*/
/*文字SP*/
/*文字PC*/
/*基本文字家族*/
/*基本文字色*/
/*基本背景色PC*/
/* ----------------------------------------------------------- フォントサイズ基本
----------------------------------------------------------- */
html { font-size: calc( 100vw / 32 ); overflow-y: auto; font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴシック", "Hiragino Sans", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "sans-serif"; color: #222222; background-color: #FFFFFF; }

@media print, screen and (min-width: 768px) { html { font-size: 62.5%; overflow-y: scroll; font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴシック", "Hiragino Sans", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "sans-serif"; color: #222222; background-color: #FFFFFF; } }
/* ----------------------------------------------------------- 構成
----------------------------------------------------------- */
body { position: relative; width: 100%; margin: 0 auto; text-size-adjust: none; -webkit-text-size-adjust: none; }

section { height: auto; overflow: hidden; margin: 0; }
section.low { margin: 4rem 0 0 0; }

.sentence { height: auto; overflow: hidden; }

.pc_none { display: block; }

.sp_none { display: none; }

.bold { font-weight: bold; }

.red { color: #FF0000; }

.txt_r { text-align: right; }

.txt_c { text-align: center; }

@media print, screen and (min-width: 768px) { body { position: relative; z-index: 0; box-sizing: border-box; min-width: 1300px; }
  section { height: auto; overflow: hidden; margin: 0; }
  section.low { margin: 60px 0 0 0; }
  .pc_none { display: none; }
  .sp_none { display: block; } }
/* -----------------------------------------------------------
　枠
----------------------------------------------------------- */
article { height: auto; overflow: hidden; width: 100%; margin: 0; padding: 0; background-color: #FFFFFF; position: relative; }

.wrapper { height: auto; width: 100%; margin: 0; padding: 0; background: #f9f7f5; }

.main { width: 90%; margin: 0 auto; padding: 1rem 0 0 0; }

@media print, screen and (min-width: 768px) { article { height: auto; overflow: hidden; width: 100%; margin: 0 auto; padding: 0; }
  .wrapper { height: auto; width: 100%; margin: 0 auto; padding: 40px 0 0 0; }
  .main { width: 1200px; margin: 0 auto; padding: 0; } }
/* -----------------------------------------------------------
　ヘッダ
----------------------------------------------------------- */
header .head_frame { width: 100%; margin: 0; padding: 0; background-color: #FFFFFF; }
header .head_frame .header_info { width: 90%; margin: 0 auto; padding: 1rem 0 0 0; }
header .head_frame .header_info .head_logo img { width: 80%; height: auto; margin: 0; display: block; }
header .head_frame .header_info .head_address { margin: 0; padding: 1rem 0 0 0; text-align: center; }
header .head_frame .header_info .head_address p { padding: 0; margin: 0; font-size: 1.2rem; color: #333333; line-height: 1.3; }
header .head_frame .header_info .head_address p.h_address { padding: 0; margin: 0 0 1rem 0; border-bottom: 1px #cccccc solid; }
header .head_frame .header_info .head_phone { margin: 0; padding: 1rem 0 0 0; display: flex; justify-content: center; }
header .head_frame .header_info .head_phone p { margin: 0; font-family: "Lato", sans-serif; font-weight: bold; line-height: inherit; }
header .head_frame .header_info .head_phone p.h_tel { font-size: 1.6rem; color: #926431; margin: 0 0 1rem 0; }
header .head_frame .header_info .head_phone p.h_tel .tel a { color: #926431; }
header .head_frame .header_info .head_phone p.h_fax { font-size: 1.6rem; color: #553e36; }
header .key_on { width: 100%; height: auto; background-position: center top; background-size: cover; background-repeat: no-repeat; display: flex; padding: 0; }
header .key_on .key_visual { width: 100%; margin: 0 auto; display: flex; justify-content: center; }
header .key_on .key_visual .contents .info_box { width: 100%; height: auto; position: relative; margin: 10rem 0 0 0; background: rgba(255, 255, 255, 0.8); border-radius: 10px; text-align: center; padding: 1rem; box-sizing: border-box; }
header .key_on .key_visual .contents .info_box p { margin: 0; line-height: inherit; }
header .key_on .key_visual .contents .info_box p.open { font-size: 1.7rem; color: #926431; font-weight: bold; text-shadow: white 2px 0px 2px, white -2px 0px 2px, white 0px -2px 2px, white -2px 0px 2px, white 2px 2px 2px, white -2px 2px 2px, white 2px -2px 2px, white -2px -2px 2px, white 1px 2px 2px, white -1px 2px 2px, white 1px -2px 2px, white -1px -2px 2px, white 2px 1px 2px, white -2px 1px 2px, white 2px -1px 2px, white -2px -1px 2px, white 1px 1px 2px, white -1px 1px 2px, white 1px -1px 2px, white -1px -1px 2px; }
header .key_on .key_visual .contents .info_box p.event { font-size: 1.4rem; color: #555555; font-weight: bold; background: #FFFFFF; border-radius: 30px; border: 1px #555555 solid; width: auto; height: auto; display: block; margin: 1.0rem auto 0; box-sizing: border-box; padding: .4rem 1rem; }
header .key_on .key_visual .contents a.bnr_staff { text-decoration: none; }
header .key_on .key_visual .contents a.bnr_staff figure { margin: 1rem auto; padding: 0; }
header .key_on .key_visual .contents a.bnr_staff figure img { width: 90%; display: block; margin: 0 auto; }
header .message { width: 100%; height: auto; padding: 1.6rem 1rem; background: url("../images/bg_message.gif") repeat; box-sizing: border-box; }
header .message p { font-size: 1.3rem; color: #FFFFFF; text-align: center; font-weight: bold; margin: 0; line-height: 1.6; }
header .key_visual_low { background: url("../images/key_visual_low.gif") repeat; background-size: cover; background-position: center; overflow: hidden; width: 100%; height: auto; margin: 0; padding: 0; }
header .key_visual_low h1 { font-size: 2.2rem; font-weight: normal; padding: 3rem 1rem; text-align: center; color: #333333; }

@media print, screen and (min-width: 768px) { header .head_frame { width: 100%; margin: 0; padding: 14px 0 20px; background-color: #FFFFFF; }
  header .head_frame .header_info { display: -webkit-flex; display: flex; align-items: flex-start; justify-content: space-between; width: 1200px; margin: 0 auto; padding: 0; }
  header .head_frame .header_info .head_logo img { width: 548px; height: auto; margin: 0; display: block; }
  header .head_frame .header_info .head_address { margin: 0; padding: 14px 0 0 0; text-align: left; }
  header .head_frame .header_info .head_address p { padding: 0; margin: 0; font-size: 1.4rem; color: #333333; line-height: 1.4; }
  header .head_frame .header_info .head_address p.h_address { padding: 0 0 14px 0; margin: 0 0 10px 0; border-bottom: 1px #cccccc solid; }
  header .head_frame .header_info .head_phone { margin: 0; padding: 10px 0 0 0; text-align: left; display: block; }
  header .head_frame .header_info .head_phone p { margin: 0; font-family: "Lato", sans-serif; font-weight: bold; line-height: inherit; }
  header .head_frame .header_info .head_phone p.h_tel { font-size: 3rem; color: #926431; margin: 0 0 12px 0; }
  header .head_frame .header_info .head_phone p.h_fax { font-size: 2.4rem; color: #553e36; }
  header .key_on { width: 100%; height: 600px; background-position: center; background-size: auto; background-repeat: no-repeat; display: flex; padding: 0; }
  header .key_on .key_visual { width: 1200px; margin: 0 auto; display: flex; justify-content: center; }
  header .key_on .key_visual .contents .info_box { width: 700px; height: auto; position: relative; margin: 170px 0 0 0; background: rgba(255, 255, 255, 0.8); border-radius: 10px; text-align: center; padding: 30px 0; box-sizing: border-box; }
  header .key_on .key_visual .contents .info_box p { margin: 0; line-height: inherit; }
  header .key_on .key_visual .contents .info_box p.open { font-size: 3.6rem; color: #926431; font-weight: bold; text-shadow: white 2px 0px 2px, white -2px 0px 2px, white 0px -2px 2px, white -2px 0px 2px, white 2px 2px 2px, white -2px 2px 2px, white 2px -2px 2px, white -2px -2px 2px, white 1px 2px 2px, white -1px 2px 2px, white 1px -2px 2px, white -1px -2px 2px, white 2px 1px 2px, white -2px 1px 2px, white 2px -1px 2px, white -2px -1px 2px, white 1px 1px 2px, white -1px 1px 2px, white 1px -1px 2px, white -1px -1px 2px; }
  header .key_on .key_visual .contents .info_box p.event { font-size: 2.4rem; color: #555555; font-weight: bold; background: #FFFFFF; border-radius: 30px; border: 1px #555555 solid; width: 610px; height: 50px; display: block; margin: 20px auto 0; box-sizing: border-box; padding: 12px 0 0 0; }
  header .key_on .key_visual .contents a.bnr_staff { text-decoration: none; }
  header .key_on .key_visual .contents a.bnr_staff figure { margin: 16px 0 0 0; padding: 0; }
  header .key_on .key_visual .contents a.bnr_staff figure img { width: auto; }
  header .key_on .key_visual .contents a.bnr_staff figure img:hover { opacity: 0.8; }
  header .message { width: 100%; height: auto; padding: 28px 0; background: url("../images/bg_message.gif") repeat; }
  header .message p { font-size: 1.8rem; color: #FFFFFF; text-align: center; font-weight: bold; margin: 0; line-height: 1.75; }
  header .key_visual_low { background: url("../images/key_visual_low.gif") repeat; background-size: auto; background-position: center top; width: 100%; height: 200px; display: flex; justify-content: center; align-items: center; }
  header .key_visual_low h1 { width: 1200px; font-size: 3.2rem; color: #333333; font-weight: bold; padding: 0; margin: 0; text-align: center; } }
/* -----------------------------------------------------------
　WEB予約はこちら
----------------------------------------------------------- */
.side-menu { display: none; }

@media print, screen and (min-width: 768px) { .side-menu { display: block; position: fixed; top: 220px; right: 0; left: inherit; z-index: 999; }
  .side-menu a { background-color: #f7b400; display: block; border-radius: 14px 0 0 14px; width: 60px; height: 280px; display: flex; justify-content: center; align-items: center; box-sizing: border-box; }
  .side-menu a p { -ms-writing-mode: tb-rl; writing-mode: vertical-rl; color: #FFFFFF; font-weight: bold; font-size: 2.4rem; margin: 0; }
  .side-menu a:hover { background: #be9245; } }
/* -----------------------------------------------------------
　コロナ対策バナー
----------------------------------------------------------- */
a.bnr_corona { text-decoration: none; display: block; margin: 1rem auto 3rem; text-align: center; }
a.bnr_corona img { width: 100%; }

@media print, screen and (min-width: 768px) { a.bnr_corona { text-decoration: none; display: block; margin: 0 auto 50px; text-align: center; }
  a.bnr_corona:hover { opacity: 0.8; }
  a.bnr_corona img { width: auto; } }
/* -----------------------------------------------------------
　メインナビ
----------------------------------------------------------- */
.main_nav_pc { display: none; }

@media print, screen and (min-width: 768px) { .main_nav_pc { display: block; margin: 0; width: 100%; height: 54px; box-sizing: border-box; background: #553e36; }
  .main_nav_pc nav ul { width: 1200px; margin: 0 auto; padding: 0; list-style-type: none; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-flex-direction: row; flex-direction: row; align-items: center; box-sizing: border-box; }
  .main_nav_pc nav ul li { text-align: center; display: flex; align-items: center; box-sizing: border-box; }
  .main_nav_pc nav ul li span { height: 20px; border-right: 1px #FFFFFF solid; padding: 0 30px; margin: 17px 0; box-sizing: border-box; display: block; white-space: nowrap; }
  .main_nav_pc nav ul li:last-of-type span { border-right: 0; }
  .main_nav_pc nav ul li.treatment { position: relative; }
  .main_nav_pc nav ul li a { text-decoration: none; font-size: 1.8rem; width: 100%; height: auto; box-sizing: border-box; color: #FFFFFF; }
  .main_nav_pc nav ul li ul { width: 240px; margin: 0; display: none; z-index: 999; height: 0; padding: 0; position: absolute; top: 54px; left: 0; }
  .main_nav_pc nav ul li ul li { width: 100%; height: 64px; padding: 0 20px; margin: 0; box-sizing: border-box; background-color: rgba(43, 140, 202, 0.85); border-bottom: #FFFFFF .1rem solid; border-left: 0; display: flex; align-items: center; }
  .main_nav_pc nav ul li ul li:last-of-type { border-bottom: 0; }
  .main_nav_pc nav ul li ul li a { border-left: none; padding: 0; height: auto; box-sizing: border-box; font-size: 1.6rem; color: #FFFFFF; text-align: left; }
  .main_nav_pc nav ul li ul li:hover { background: #be9245; }
  .main_nav_pc nav ul li ul li:hover a { color: #FFFFFF !important; }
  .main_nav_pc nav ul li ul.open_nav { display: block; } }
/* -----------------------------------------------------------
　診療時間
----------------------------------------------------------- */
.table_wrapper { width: 100%; }
.table_wrapper table.timetable { padding: 0; vertical-align: middle; width: 100%; margin: 0; text-align: center; border-collapse: collapse; box-sizing: border-box; }
.table_wrapper table.timetable tr { margin: 0; padding: 0; vertical-align: middle; border-bottom: #cccccc 1px solid; }
.table_wrapper table.timetable tr th { padding: 1rem 0; text-align: center; color: #222222; font-size: 1.2rem; vertical-align: middle; box-sizing: border-box; height: auto; }
.table_wrapper table.timetable tr td { text-align: center; padding: 1rem 0; font-size: 1.2rem; vertical-align: middle; box-sizing: border-box; width: 10%; height: auto; color: #926431; }
.table_wrapper table.timetable tr td.time { font-size: 1.2rem; white-space: nowrap; width: 30%; color: #222222; }
.table_wrapper p.notice_time { font-size: 1.2rem; margin: .6rem 0 0 0; text-align: left; }

@media print, screen and (min-width: 768px) { .table_wrapper { width: 100%; }
  .table_wrapper table.timetable { padding: 0; vertical-align: middle; width: 100%; margin: 0; text-align: center; border-collapse: collapse; box-sizing: border-box; }
  .table_wrapper table.timetable tr { margin: 0; padding: 0; vertical-align: middle; }
  .table_wrapper table.timetable tr th { padding: 0; text-align: center; color: #222222; font-size: 1.8rem; vertical-align: middle; box-sizing: border-box; height: 50px; }
  .table_wrapper table.timetable tr td { text-align: center; padding: 0; font-size: 1.8rem; vertical-align: middle; box-sizing: border-box; width: 128px; height: 50px; }
  .table_wrapper table.timetable tr td.time { font-size: 1.8rem; white-space: nowrap; width: 214px; }
  .table_wrapper p.notice_time { font-size: 1.8rem; margin: 8px 0 0 0; text-align: left; } }
/* -----------------------------------------------------------
　お知らせ/カレンダー
----------------------------------------------------------- */
.flex_wrapper { margin: 0 0 3rem 0; }

@media print, screen and (min-width: 768px) { .flex_wrapper { display: flex; justify-content: space-between; margin: 0; } }
/* -----------------------------------------------------------
　お知らせ
----------------------------------------------------------- */
.notice_wrapper { width: 100%; margin: 0; padding: 0 0 3rem 0; }
.notice_wrapper .notice_frame { padding: 0; box-sizing: border-box; height: auto; width: 100%; margin: 0; padding: 1.8rem 0 0 0; box-sizing: border-box; border-top: 1px #cccccc solid; }
.notice_wrapper .notice_frame dl { padding: 0; margin: 0; box-sizing: border-box; }
.notice_wrapper .notice_frame dl dt { color: #666666; font-size: 1.4rem; font-weight: bold; margin: 0 0 1rem 0; padding: 0 1.2rem; box-sizing: border-box; }
.notice_wrapper .notice_frame dl dd { margin: 0 0 2rem 0; padding: 0 1.8rem; box-sizing: border-box; border-bottom: 1px #cccccc solid; }
.notice_wrapper .notice_frame dl dd p { font-size: 1.4rem; color: #333333; margin: 0; padding: 0 0 1.4rem 0; box-sizing: border-box; line-height: 1.4; }

@media print, screen and (min-width: 768px) { .notice_wrapper { width: 736px; margin: 0 auto 0 0; padding: 0 0 80px 0; }
  .notice_wrapper .notice_frame { padding: 0; box-sizing: border-box; min-height: 410px; height: auto; width: 100%; margin: 0 0 0 auto; padding: 30px 0 0 0; box-sizing: border-box; border-top: 1px #cccccc solid; }
  .notice_wrapper .notice_frame dl { padding: 0; margin: 0; box-sizing: border-box; }
  .notice_wrapper .notice_frame dl dt { color: #666666; font-size: 1.8rem; font-weight: bold; margin: 0 0 10px 0; padding: 0 40px; box-sizing: border-box; }
  .notice_wrapper .notice_frame dl dd { margin: 0 0 30px 0; padding: 0 40px; box-sizing: border-box; border-bottom: 1px #cccccc solid; }
  .notice_wrapper .notice_frame dl dd p { font-size: 1.8rem; color: #333333; margin: 0; padding: 0 0 18px 0; box-sizing: border-box; line-height: 1.6; } }
/*スマホ用スライドバー*/
@media print, screen and (max-width: 767px) { .notice_frame::-webkit-scrollbar { width: 12px; background: #ffffff; }
  .notice_frame::-webkit-scrollbar-track { -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3); border-radius: 3px; }
  .notice_frame::-webkit-scrollbar-thumb { border-radius: 3px; -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.5); } }
/* -----------------------------------------------------------
　診療カレンダー
----------------------------------------------------------- */
.calendar_wrapper .tabcal ul { display: flex; list-style: none; margin: 0; padding: 0; height: 3rem; box-sizing: border-box; }
.calendar_wrapper .tabcal ul li { background: #FFFFFF; }
.calendar_wrapper .tabcal ul li a { display: block; text-decoration: none !important; font-size: 1.4rem; font-weight: bold; padding: 0.9rem 1.1rem; outline: none; color: #222222; }
.calendar_wrapper .tabcal ul li.ui-tabs-active.ui-state-active { background: #553e36; }
.calendar_wrapper .tabcal ul li.ui-tabs-active.ui-state-active a { color: #FFFFFF; }
.calendar_wrapper .tabcal ul li.tab2 { margin: 0 0 0 .21rem; }
.calendar_wrapper .tabcal .month { height: 2.8rem; background: #553e36; display: flex; justify-content: center; align-items: center; }
.calendar_wrapper .tabcal .month a { color: #FFFFFF; font-size: 1.4rem; font-weight: bold; }
.calendar_wrapper .tabcal .caledit { font-size: 1.4rem; border-spacing: .6rem; border-collapse: collapse; margin: 0; }
.calendar_wrapper .tabcal .caledit tr { border-bottom: 1px #cccccc solid; }
.calendar_wrapper .tabcal .caledit .month { display: none; }
.calendar_wrapper .tabcal .caledit .week { background: #926431; height: 2.2rem; color: #FFFFFF; }
.calendar_wrapper .tabcal .caledit td { height: 26px; box-sizing: border-box; }
.calendar_wrapper .summary { display: flex; justify-content: flex-start; margin: 1rem 0 0 0; }
.calendar_wrapper .summary p { margin: 0; }
.calendar_wrapper .summary p span { font-size: 1.4rem; }
.calendar_wrapper .summary p span.kyuushin { margin: 0 0 0 1rem; }
.calendar_wrapper .summary p span.kyuushin::before { content: ""; width: 1.4rem; height: 1.4rem; background-color: #9c9c9c; display: inline-block; }
.calendar_wrapper .summary p span.pm_kyuushin::before { content: ""; width: 1.4rem; height: 1.4rem; background-color: #e8d0aa; display: inline-block; }

@media print, screen and (min-width: 768px) { .calendar_wrapper { padding: 0 0 80px 0; width: 424px; margin: 0 0 0 auto; }
  .calendar_wrapper .tabcal ul { height: 38px; }
  .calendar_wrapper .tabcal ul li a { font-size: 1.8rem; padding: 0.9rem 1.1rem; }
  .calendar_wrapper .tabcal ul li.tab2 { margin: 0 0 0 5px; }
  .calendar_wrapper .tabcal .month { height: 34px; }
  .calendar_wrapper .tabcal .month a { font-size: 1.8rem; }
  .calendar_wrapper .tabcal .week { height: 28px; }
  .calendar_wrapper .tabcal .caledit { font-size: 1.8rem; }
  .calendar_wrapper .summary { display: flex; justify-content: flex-start; margin: 10px 0 0 0; }
  .calendar_wrapper .summary p { margin: 0; }
  .calendar_wrapper .summary p span { font-size: 1.8rem; }
  .calendar_wrapper .summary p span.kyuushin { margin: 0 0 0 12px; }
  .calendar_wrapper .summary p span.kyuushin::before { content: ""; width: 14px; height: 14px; display: inline-block; }
  .calendar_wrapper .summary p span.pm_kyuushin::before { content: ""; width: 14px; height: 14px; display: inline-block; } }
/* -----------------------------------------------------------
　診療のご案内
----------------------------------------------------------- */
.treatment_wrapper { background: url("../images/bg_treatment.jpg") no-repeat center top; background-size: cover; width: 100%; height: auto; padding: 3rem 0; box-sizing: border-box; }
.treatment_wrapper ul.treatment { width: 90%; margin: 1.8rem auto 0; padding: 0; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; list-style: none; }
.treatment_wrapper ul.treatment li { width: 48%; height: 5rem; margin: 0 0 1.2rem 0; background: #553e36; border-radius: 10px; position: relative; display: flex; justify-content: center; align-items: center; }
.treatment_wrapper ul.treatment li a { color: #FFFFFF; font-size: 1.4rem; font-weight: bold; }
.treatment_wrapper ul.treatment li::after { content: '>'; color: #FFFFFF; font-size: 1.6rem; font-weight: bold; position: absolute; right: .6rem; top: 1.6rem; }
.treatment_wrapper a.bnr_treat { text-decoration: none; margin: 2rem auto 0; text-align: center; display: flex; justify-content: center; align-items: center; background: url("../images/bnr_treatment.png") no-repeat; background-size: contain; width: 90%; height: 7.2rem; }
.treatment_wrapper a.bnr_treat p { font-size: 1.5rem; font-weight: bold; color: #553e36; margin: 0; text-shadow: white 2px 0px 2px, white -2px 0px 2px, white 0px -2px 2px, white -2px 0px 2px, white 2px 2px 2px, white -2px 2px 2px, white 2px -2px 2px, white -2px -2px 2px, white 1px 2px 2px, white -1px 2px 2px, white 1px -2px 2px, white -1px -2px 2px, white 2px 1px 2px, white -2px 1px 2px, white 2px -1px 2px, white -2px -1px 2px, white 1px 1px 2px, white -1px 1px 2px, white 1px -1px 2px, white -1px -1px 2px; }

@media print, screen and (min-width: 768px) { .treatment_wrapper { padding: 60px 0 80px; }
  .treatment_wrapper ul.treatment { width: 1200px; margin: 36px auto 0; display: flex; justify-content: flex-start; align-items: center; flex-wrap: wrap; list-style: none; }
  .treatment_wrapper ul.treatment li { width: 288px; height: 90px; margin: 0 16px 20px 0; background: #553e36; border-radius: 10px; position: relative; display: flex; justify-content: center; align-items: center; }
  .treatment_wrapper ul.treatment li a { color: #FFFFFF; font-size: 2rem; font-weight: bold; }
  .treatment_wrapper ul.treatment li::after { content: '>'; color: #FFFFFF; font-size: 2rem; font-weight: bold; position: absolute; right: 18px; top: 36px; }
  .treatment_wrapper ul.treatment li:nth-of-type(4n) { margin: 0 0 20px 0; }
  .treatment_wrapper ul.treatment li:hover { background: #be9245; }
  .treatment_wrapper a.bnr_treat { text-decoration: none; margin: 40px auto 0; text-align: center; display: flex; justify-content: center; align-items: center; background: url("../images/bnr_treatment.png") no-repeat; width: 800px; height: 200px; }
  .treatment_wrapper a.bnr_treat:hover { opacity: 0.8; }
  .treatment_wrapper a.bnr_treat p { font-size: 3rem; font-weight: bold; color: #553e36; margin: 0; text-shadow: white 2px 0px 2px, white -2px 0px 2px, white 0px -2px 2px, white -2px 0px 2px, white 2px 2px 2px, white -2px 2px 2px, white 2px -2px 2px, white -2px -2px 2px, white 1px 2px 2px, white -1px 2px 2px, white 1px -2px 2px, white -1px -2px 2px, white 2px 1px 2px, white -2px 1px 2px, white 2px -1px 2px, white -2px -1px 2px, white 1px 1px 2px, white -1px 1px 2px, white 1px -1px 2px, white -1px -1px 2px; } }
/* -----------------------------------------------------------
　診療のご案内
----------------------------------------------------------- */
.feature_wrapper { background: #f9f7f5; width: 100%; height: auto; padding: 3rem 0; box-sizing: border-box; }
.feature_wrapper ul.feature { width: 100%; margin: 2rem auto 0; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; list-style: none; padding: 0; }
.feature_wrapper ul.feature li { width: 90%; height: auto; margin: 0 auto 2.8rem; }
.feature_wrapper ul.feature li figure { padding: 0; }
.feature_wrapper ul.feature li figure img { width: 100%; }
.feature_wrapper ul.feature li p { margin: 1.2rem 0 0 0; color: #333333; font-size: 1.6rem; }

@media print, screen and (min-width: 768px) { .feature_wrapper { padding: 60px 0; }
  .feature_wrapper ul.feature { width: 1200px; margin: 36px auto 0; display: flex; justify-content: space-between; align-items: baseline; flex-wrap: wrap; list-style: none; }
  .feature_wrapper ul.feature li { width: 332px; height: auto; margin: 0 0 40px 0; }
  .feature_wrapper ul.feature li figure { padding: 0; margin: 0; }
  .feature_wrapper ul.feature li figure img { width: auto; }
  .feature_wrapper ul.feature li p { margin: 18px 0 0 0; color: #333333; font-size: 1.8rem; } }
/* -----------------------------------------------------------
　ごあいさつ
----------------------------------------------------------- */
.greeting_wrapper { width: 100%; height: auto; padding: 3rem 0; box-sizing: border-box; background: url("../images/bg_greeting.jpg") no-repeat center top; background-size: cover; }
.greeting_wrapper .greeting { width: 90%; margin: 1.8rem auto 0; }
.greeting_wrapper .greeting .txt_box { width: 100%; margin: 0 auto; }
.greeting_wrapper .greeting .txt_box p { color: #333333; font-size: 1.4rem; line-height: 1.85; letter-spacing: 0.4px; }

@media print, screen and (min-width: 768px) { .greeting_wrapper { padding: 60px 0; }
  .greeting_wrapper .greeting { width: 1200px; margin: 30px auto 0; }
  .greeting_wrapper .greeting .txt_box { width: 1080px; margin: 0 auto; }
  .greeting_wrapper .greeting .txt_box p { color: #333333; font-size: 1.8rem; line-height: 1.85; letter-spacing: 0.4px; } }
/* -----------------------------------------------------------
　医院概要
----------------------------------------------------------- */
.overview_bg { width: 100%; margin: 0; padding: 3rem 0 2rem; background: #f7f3ec; }
.overview_bg .overview { padding: 0; margin: 0 auto 2rem; width: 90%; }
.overview_bg .overview .overview_frame { display: flex; justify-content: space-between; width: 90%; margin: 0 auto; flex-wrap: wrap; }
.overview_bg .overview .overview_frame .ov_left { width: 100%; padding: 0; box-sizing: border-box; }
.overview_bg .overview .overview_frame .ov_left figure { margin: 0 0 2rem 0; padding: 0; }
.overview_bg .overview .overview_frame .ov_left figure img { width: 100%; }
.overview_bg .overview .overview_frame .ov_left dl { font-size: 0; width: 100%; margin: 0 0 10px 0; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
.overview_bg .overview .overview_frame .ov_left dl dt, .overview_bg .overview .overview_frame .ov_left dl dd { margin: 0 0 1rem 0; font-size: 1.4rem; display: -webkit-flex; display: flex; align-items: center; box-sizing: border-box; }
.overview_bg .overview .overview_frame .ov_left dl dt { justify-content: center; width: 30%; height: 2rem; color: #FFFFFF; font-weight: bold; background: #595959; border-radius: 6px; }
.overview_bg .overview .overview_frame .ov_left dl dd { color: #333333; line-height: 1.4; width: 70%; height: auto; padding: 0 0 0 1rem; }
.overview_bg .overview .overview_frame .ov_left dl dd span.tel a { text-decoration: none; color: #333333; }
.overview_bg .overview .overview_frame .ov_right { width: 100%; padding: 0; margin: 3rem 0 0 0; }
.overview_bg .overview .overview_frame .ov_right figure { margin: 0; padding: 0; }
.overview_bg .overview .overview_frame .ov_right figure img { width: 100%; margin: 0; }
.overview_bg .overview .overview_frame .ov_right a.gmap { width: 100%; height: 3rem; margin: 1rem auto 0; background: #553e36; border-radius: 10px; position: relative; display: flex; justify-content: center; align-items: center; color: #FFFFFF; font-size: 1.6rem; font-weight: bold; }
.overview_bg .overview .overview_frame .ov_right a.gmap::after { content: '>'; color: #FFFFFF; font-size: 1.6rem; font-weight: bold; position: absolute; right: .8rem; top: .6rem; }

@media print, screen and (min-width: 768px) { .overview_bg { width: 100%; margin: 0 auto; padding: 40px 0 0 0; }
  .overview_bg .overview { padding: 0 0 60px 0; margin: 0 auto; width: 1200px; }
  .overview_bg .overview .overview_frame { display: flex; justify-content: space-between; width: 1200px; margin: 0 auto; flex-wrap: nowrap; }
  .overview_bg .overview .overview_frame .ov_left { width: 50%; padding: 0 20px 0 0; box-sizing: border-box; }
  .overview_bg .overview .overview_frame .ov_left figure { margin: 0 0 40px 0; padding: 0; }
  .overview_bg .overview .overview_frame .ov_left figure img { width: 100%; }
  .overview_bg .overview .overview_frame .ov_left dl { font-size: 0; width: 100%; margin: 0 0 10px 0; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .overview_bg .overview .overview_frame .ov_left dl dt, .overview_bg .overview .overview_frame .ov_left dl dd { margin: 0 0 14px 0; font-size: 1.8rem; display: -webkit-flex; display: flex; align-items: center; box-sizing: border-box; }
  .overview_bg .overview .overview_frame .ov_left dl dt { justify-content: center; width: 100px; height: 36px; color: #FFFFFF; font-weight: bold; background: #595959; border-radius: 8px; }
  .overview_bg .overview .overview_frame .ov_left dl dd { color: #333333; line-height: 1.4; width: 470px; height: auto; padding: 0 0 0 20px; }
  .overview_bg .overview .overview_frame .ov_right { width: 50%; padding: 0 0 0 20px; margin: 0; }
  .overview_bg .overview .overview_frame .ov_right figure { margin: 0; padding: 0; }
  .overview_bg .overview .overview_frame .ov_right figure img { width: 580px; margin: 0 0 0 auto; }
  .overview_bg .overview .overview_frame .ov_right a.gmap { width: 300px; height: 60px; margin: 18px auto 0; background: #553e36; border-radius: 10px; position: relative; display: flex; justify-content: center; align-items: center; color: #FFFFFF; font-size: 2rem; font-weight: bold; }
  .overview_bg .overview .overview_frame .ov_right a.gmap::after { content: '>'; color: #FFFFFF; font-size: 2rem; font-weight: bold; position: absolute; right: 16px; top: 18px; }
  .overview_bg .overview .overview_frame .ov_right a.gmap:hover { background: #be9245; } }
/* -----------------------------------------------------------
　フッター
----------------------------------------------------------- */
footer { margin-bottom: 3.3rem; }
footer .footer_wrapper { display: none; }
footer .global-nav { position: fixed; left: 0; bottom: 0; }
footer .nav-list { display: table; table-layout: fixed; width: 100%; border-collapse: collapse; padding: 0; margin: 0; list-style: none; text-align: center; background-color: #926431; border-top: 1px #FFFFFF solid; }
footer .nav-item { display: table-cell; border-left: .1rem #FFFFFF solid; padding: 1.2rem 0px; white-space: nowrap; }
footer .nav-item:first-child { border-left: 0; }
footer .nav-item span.tel::before { content: 'tel.'; font-size: 1.8rem; margin: 0 .4rem 0 0; display: inline-block; color: #FFFFFF; vertical-align: -2px; }
footer .nav-item span.top::before { font-family: fontello; content: '\0f005'; font-size: 1.8rem; margin: 0 .4rem 0 0; display: inline-block; color: #FFFFFF; vertical-align: -2px; }
footer .nav-item a { text-decoration: none; color: #FFFFFF; font-size: 1.4rem; }
footer .phone { width: 50%; }
footer .reserve { width: 30%; }
footer .tpage { width: 20%; }
footer .copyright { text-align: center; background-color: #595959; height: auto; margin: 0; padding: .8rem 0 2rem; }
footer .copyright a { text-decoration: none; font-size: 1.1rem; color: #FFFFFF; }

@media print, screen and (min-width: 768px) { footer { margin-bottom: 0; background-color: #FFFFFF; width: 100%; height: auto; padding: 0; margin: 0; box-sizing: border-box; }
  footer nav.global-nav { display: none; }
  footer .footer_wrapper { width: 1200px; margin: 0 auto; padding: 30px 0 16px; display: block; }
  footer .footer_wrapper .footer_frame { display: block; width: auto; height: auto; margin: 0; padding: 0; box-sizing: border-box; }
  footer .footer_wrapper .footer_frame ul { text-align: center; }
  footer .footer_wrapper .footer_frame ul.global { margin: 0 0 16px 0; }
  footer .footer_wrapper .footer_frame ul li { display: inline-block; padding: 0 8px; border-right: 1px #333333 solid; margin: 0; }
  footer .footer_wrapper .footer_frame ul li:last-child { border-right: 0; }
  footer .footer_wrapper .footer_frame ul li a { color: #333333; font-size: 1.4rem; text-decoration: none; }
  footer .footer_wrapper .footer_frame ul li a:hover { text-decoration: underline; }
  footer .footer_wrapper .footer_frame ul li br { display: none; }
  footer .copyright { height: auto; display: flex; justify-content: center; align-items: center; margin: 0; padding: 18px 0; border-bottom: 0; }
  footer .copyright a { text-decoration: none; font-size: 1.4rem; margin: 0; color: #FFFFFF; } }
/* -----------------------------------------------------------
　ページトップへ
----------------------------------------------------------- */
#linkpagetop { float: right; }

#linkpagetop img { width: 80%; height: auto; }

#pagetop { position: fixed; bottom: 13vw; right: 0px; height: 12vw; text-align: right; margin: 0 2% 0 0; }

#pagetop a { display: block; }

#pagetop_position { float: right; margin: 0px; padding: 0px; display: none; }

@media print, screen and (min-width: 768px) { #linkpagetop { float: left; }
  #linkpagetop img { width: 70px; height: auto; }
  #pagetop { position: fixed; bottom: 56px; left: 50%; margin: 0 0 0 560px; height: 70px; text-align: center; }
  #pagetop a { display: block; color: #ffffff; }
  #pagetop_position { float: right; margin: 0px; padding: 0px; display: block; } }
@media print, screen and (min-width: 768px) and (max-width: 1500px) { #pagetop { position: fixed; bottom: 40px; left: 90%; margin: 0 0 0 0; height: 80px; text-align: center; } }
/*----------------------------------------------------------- インポート
----------------------------------------------------------- */
/*ハンバーガー*/
.drawr { display: none; position: absolute; top: 19vw; width: 100%; padding: 0; margin: 0 auto; height: auto; z-index: 999999; background-color: #926431; opacity: 0.9; }
.drawr p { color: #926431; font-size: 1.4rem; text-align: center; padding: 1.8rem 0; background-color: #ffffff; margin: 0; }
.drawr ul.hbg { list-style: none; padding: 0; }
.drawr ul.hbg li { text-align: center; width: 100% !important; border-bottom: #ffffff 1px dashed; }
.drawr ul.hbg li.treatment { display: none; }
.drawr ul.hbg li a { color: #ffffff; font-size: 1.4rem; text-decoration: none; padding: 1.6rem 0; display: block; }
.drawr ul.hbg li a br { display: none; }
.drawr ul.hbg li a i { display: none; }
.drawr ul.hbg li:last-child { border-bottom: 0; }

.openNav { display: block; }

/*ハンバーガーナビ*/
.main_nav_sp { display: block; width: 100%; height: auto; margin: 0; }
.main_nav_sp ul.gnav { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-flex-direction: column; flex-direction: column; width: 100%; box-sizing: border-box; margin: 0 auto; }
.main_nav_sp ul.gnav li { width: 100%; font-weight: normal; font-size: 1.6rem; letter-spacing: 0.05em; line-height: 140%; list-style-type: none; box-sizing: border-box; padding: 0; border-bottom: #ffffff 1px solid; text-align: center; }
.main_nav_sp ul.gnav li a { color: #ffffff; text-decoration: none; width: 100%; display: block; padding: 1rem 0; text-shadow: none; box-sizing: border-box; }

.toggle { display: none; }

.toggle-label { box-sizing: border-box; cursor: pointer; display: block; width: 100%; height: 4.0rem; padding: 0; user-select: none; -webkit-tap-highlight-color: transparent; }

.toggle-label:active { -webkit-tap-highlight-color: transparent; }

.toggle-label .toggle-icon, .toggle-label .toggle-icon:before, .toggle-label .toggle-icon:after { position: relative; display: block; top: 50%; left: 50%; height: 4px; width: 3.6rem; background: #ffffff; content: ''; transition: all 300ms ease-in-out; }

.toggle-label .toggle-text { position: relative; display: block; top: calc(100% - .8rem); font-size: 1.0rem; 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: 5rem; height: 5rem; position: absolute; cursor: pointer; top: .8rem; right: .8rem; padding: 0 0 .6rem 0; background-color: #f7b400; border-radius: 0; box-sizing: border-box; }

a { text-decoration: none; }
a .map_viewer { display: flex; align-items: center; justify-content: center; width: 5rem; height: 5rem; position: absolute; cursor: pointer; top: 5.6rem; right: 0; color: #FFFFFF; padding: 0; background-color: #555555; border-radius: 0; box-sizing: border-box; }

@media print, screen and (min-width: 768px) { .main_nav_sp { display: none; } }
/*アサイド*/
/* -----------------------------------------------------------
　アサイド
----------------------------------------------------------- */
/*SP*/
aside { display: none; }

@media print, screen and (min-width: 768px) { aside { display: inline; width: 26rem; height: auto; margin: 0; /*メニュー下のバナー*/ }
  aside div ul { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-flex-direction: column; flex-direction: column; list-style-type: none; }
  aside div ul li { box-sizing: border-box; text-align: left; margin: 0 auto; width: 100%; padding: 0 .8rem; display: flex; justify-content: center; align-items: center; height: 7rem; border-radius: .4rem; margin: 0 0 1rem 0; background-color: #FFFFFF; }
  aside div ul li a { width: 100%; display: -webkit-flex; display: flex; align-items: center; text-decoration: none; font-size: 2.2rem; font-weight: bold; box-sizing: border-box; }
  aside div ul li:nth-of-type(-n+2) { border: .2rem #fd8960 solid; }
  aside div ul li:nth-of-type(-n+2) a { color: #fd8960; }
  aside div ul li:nth-child(n + 3):not(:nth-child(n + 5)) { border: .2rem #fd828c solid; }
  aside div ul li:nth-child(n + 3):not(:nth-child(n + 5)) a { color: #fd828c; }
  aside div ul li:nth-child(n + 5):not(:nth-child(n + 7)) { border: .2rem #f385c9 solid; }
  aside div ul li:nth-child(n + 5):not(:nth-child(n + 7)) a { color: #f385c9; }
  aside .banner { margin: 0; }
  aside .banner a { text-decoration: none; }
  aside .banner a figure { margin: 4rem auto 0; text-align: center; }
  aside .banner a figure:hover { opacity: 0.7; } }
/*イメージ*/
/* -----------------------------------------------------------
　イメージ
----------------------------------------------------------- */
.img_right { margin: 0 0 1.6rem 0; text-align: center; }
.img_right img { width: 90%; height: auto; }

.img_doctor { margin: 0 0 2rem 0; text-align: center; }
.img_doctor img { width: 70%; height: auto; }

.img_center { margin: 0 0 10px 0; text-align: center; }
.img_center img { width: 100%; height: auto; }

/*画像右*/
.img_right_frame { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-flex-direction: column; flex-direction: column; margin: 0 0 1rem 0; }
.img_right_frame div.right { order: 1; width: 100%; text-align: center; }
.img_right_frame div.right img { width: 80%; height: auto; margin: 0 0 1rem 0; }
.img_right_frame div.left { order: 2; width: 100%; }
.img_right_frame div.left .doctor_name { text-align: right; }

/*画像左*/
.img_left_frame { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-flex-direction: column; flex-direction: column; margin: 0 0 1rem 0; }
.img_left_frame div.left { order: 1; width: 100%; text-align: center; }
.img_left_frame div.left img { width: 80%; height: auto; margin: 0 0 1rem 0; }
.img_left_frame div.right { order: 2; width: 100%; line-height: 120%; }

/*二つ*/
.img_two { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-flex-direction: column; flex-direction: column; }
.img_two img { width: 70%; margin: 0 auto 20px auto; display: block; }

.top_doctor_name { font-size: 1.5rem; text-align: right; }
.top_doctor_name span { font-size: 1.8rem; }

.doctor_name2 { text-align: right; }

@media print, screen and (min-width: 768px) { .img_right { float: right; margin: 0 0 10px 30px; }
  .img_right img { width: 350px; height: auto; }
  .img_doctor { float: right; margin: 0 0 80px 30px; }
  .img_doctor img { width: 300px; height: auto; }
  .img_center { float: none; margin: 0 0 10px 10px; text-align: center; }
  .img_center img { width: auto; height: auto; }
  .img_staff img { width: 350px; }
  /*画像右*/
  .img_right_frame { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; margin: 0 0 3rem 0; }
  .img_right_frame div.right { order: 2; width: 350px; text-align: center; }
  .img_right_frame div.right img { width: 350px; height: auto; margin: 0; }
  .img_right_frame div.left { order: 1; width: 445px; line-height: 120%; }
  .img_right_frame div.left .doctor_name { text-align: right; }
  /*画像左*/
  .img_left_frame { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; margin: 0 0 0 0; }
  .img_left_frame div.left { order: 1; width: 350px; text-align: left; }
  .img_left_frame div.left img { width: 350px; height: auto; margin: 10px 0; }
  .img_left_frame div.right { order: 2; width: 445px; line-height: 120%; }
  /*二つ*/
  .img_two { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; }
  .img_two img { width: 540px; margin: 0 auto 20px auto; display: block; }
  .top_doctor_name { font-size: 1.8rem; text-align: right; }
  .top_doctor_name span { font-size: 2.2rem; } }
/*リスト*/
/* -----------------------------------------------------------
　リスト
----------------------------------------------------------- */
/*標準*/
ul.list_normal { line-height: 1.6; font-size: 1.4rem; list-style: none; margin: 0; padding: 0; }
ul.list_normal li { margin: 0 0 1rem 1.8rem; padding: 0; text-indent: -1.5rem; }
ul.list_normal li::before { content: '●'; color: #c0c0c0; margin: 0 .3rem 0 0; }

/*画像●*/
ul.list_maru { padding: 0; margin: 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.gif) no-repeat; background-position: left top 0.6rem; background-size: 1rem; padding: 0 0 0 1.8rem; line-height: 140%; }
ul.list_maru li ul { margin: 0.8rem 0 0 0; }
ul.list_maru li ul li { background: none; list-style-type: disc; margin: 0 0 10px 2rem; padding: 0 0 0 0; }

ul.list_maru_two { padding: 0; margin: 0; }
ul.list_maru_two li { line-height: 130%; font-size: 1.4rem; list-style-type: none; margin: 0 0 10px 0; box-sizing: border-box; background: url(../images/maru.gif) no-repeat; background-position: left top 0.6rem; background-size: 1rem; padding: 0 0 0 1.8rem; line-height: 140%; }

/*なし*/
ul.list_none { line-height: 160%; font-size: 1.4rem; list-style-type: none; margin: 0; }
ul.list_none li { margin: 0 0 15px 0; 		/* padding-left: 1.3em; text-indent: -1.3em;		
		*/ }
ul.list_none li span { color: #fedc50; margin: 0 0.5rem 0 0; }
ul.list_none li br:nth-child(2) { display: none; }

/*数値*/
ul.list_num { box-sizing: border-box; width: 100%; padding: 0; margin: 0; }
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 print, screen and (min-width: 768px) { ul.list_normal { line-height: 1.6; font-size: 1.4rem; list-style: none; margin: 0; padding: 0; }
  ul.list_normal li { margin: 0 0 15px 25px; padding: 0; text-indent: -21px; }
  ul.list_normal li::before { content: '●'; color: #c0c0c0; margin: 0 3px 0 0; font-size: 1.4rem; vertical-align: 1.0px; }
  /*画像●*/
  ul.list_maru { padding: 0; }
  ul.list_maru li { line-height: 100%; font-size: 1.8rem; list-style-type: none; margin: 0 0 15px 0; box-sizing: border-box; background: url(../images/maru.gif) no-repeat; background-position: left top 3px; background-size: 1.5rem; padding: 0 0 0 25px; line-height: 140%; }
  ul.list_maru li ul { margin: 0.8rem 0 0 0; }
  ul.list_maru li ul li { background: none; list-style-type: disc; margin: 0 0 10px 2.6rem; padding: 0 0 0 0; }
  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.gif) no-repeat; background-position: left top 3px; background-size: 1.5rem; 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: 1.2; }
dl.bio_list dt { width: 100%; margin: 0; font-weight: bold; }
dl.bio_list dd { width: 100%; margin: 0 0 2rem 0; }

dl.book_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.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 print, screen and (min-width: 768px) { dl.bio_list { display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.8rem; box-sizing: border-box; line-height: 1.6; width: 100%; }
  dl.bio_list dt { width: 10%; margin: 0 0 20px 0; font-weight: normal; }
  dl.bio_list dd { width: 90%; margin: 0 0 20px 0; }
  dl.book_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.8rem; 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; } }
/*見出し*/
h1, h2, h3, h4, h5 { margin: 0; clear: both; }

h2.top { color: #333333; font-size: 2.2rem; font-weight: normal; text-align: center; margin: 0 auto 2rem; padding: 0; display: block; }
h2.top span { line-height: normal; }
h2.top::after { display: block; margin: .4rem auto 0; font-size: 1.4rem; font-weight: bold; color: #f7b400; font-family: "Lato", sans-serif; }
h2.notice::after { content: '- News & Calender -'; }
h2.treat::after { content: '- Treatment -'; }
h2.features::after { content: '- Features -'; }
h2.greet::after { content: '- Greeting -'; }
h2.low { margin: 0 auto 2rem; }
h2.low::after { content: ''; width: 4rem; height: .2rem; background: #f7b400; }

h3 { clear: both; color: #FFFFFF; font-weight: normal; font-size: 2.0rem; padding: 0; margin: 3.2rem 0 1.8rem 0; background: #553e36; border-radius: 6px; padding: .6rem 1rem; height: auto; width: 100%; box-sizing: border-box; display: flex; align-items: center; }

h4 { clear: both; color: #FFFFFF; font-weight: normal; font-size: 1.8rem; padding: 0; margin: 3rem 0 1.6rem 0; background: #be9245; border-radius: 6px; padding: .4rem 1rem; height: auto; width: 100%; box-sizing: border-box; display: flex; align-items: center; }

h5 { color: #553e36; font-size: 1.6rem; padding: 0; margin: 26px 0 12px 0; font-weight: bold; }

p { font-size: 1.4rem; margin: 0 0 2rem 0; line-height: 1.4; }

@media print, screen and (min-width: 768px) { h2.top { color: #333333; font-size: 3.2rem; font-weight: normal; text-align: center; margin: 0 auto 28px; padding: 0; display: block; }
  h2.top::after { display: block; margin: 6px auto 0; font-size: 1.6rem; font-weight: bold; color: #f7b400; font-family: "Lato", sans-serif; }
  h2.low { margin: 0 auto 40px; }
  h2.low::after { content: ''; width: 60px; height: 2px; background: #f7b400; }
  h3 { color: #FFFFFF; font-weight: normal; font-size: 2.8rem; padding: 0; margin: 50px 0 20px 0; background: #553e36; border-radius: 6px; padding: 0 0 0 16px; height: 50px; width: 100%; box-sizing: border-box; display: flex; align-items: center; }
  h4 { color: #FFFFFF; font-weight: normal; font-size: 2.4rem; padding: 0; margin: 30px 0 20px 0; background: #be9245; border-radius: 6px; padding: 0 0 0 16px; height: 50px; width: 100%; box-sizing: border-box; display: flex; align-items: center; }
  h5 { color: #553e36; font-size: 2.0rem; padding: 0; margin: 26px 0 12px 0; font-weight: bold; }
  p { font-size: 1.8rem; margin: 0 0 2rem 0; line-height: 1.6; } }
/*下層*/
/* 下層共通 */
.low .mb0 { margin-bottom: 0 !important; }
.low .mt30 { margin-top: 3rem !important; }
.low .wrapper { padding: 3rem 0 6rem; }
.low figure img.machine { display: block; margin: 0 auto 2rem; width: 80%; }
.low .main p { line-height: 1.6; }
.low .main p.txt_right { display: block; text-align: right; }
.low p.g_txt { font-size: 1.8rem; color: #926431; margin: 0 0 .6rem 0; font-weight: bold; }
.low p.m0 { margin: 0; }
.low ul li { font-size: 1.4rem; }
.low ul.about { width: 96%; margin: 0 auto; list-style: disc; list-style-position: inside; }
.low ul.about li { font-size: 1.4rem; }
.low ul.certificate { margin: 0 0 1.8rem 0; }
.low ul.certificate li { line-height: 2; padding-left: 1.6em; text-indent: -1.6em; }
.low ul.certificate li:before { content: ""; width: 10px; height: 10px; display: inline-block; background-color: #555555; border-radius: 50%; position: relative; top: -1px; margin-right: 15px; }
.low ul.hospital { border: 0.1rem #926431 solid; box-sizing: border-box; padding: 2rem 1rem; }
.low ul.hospital li { padding: 0 0 1rem 0; padding-left: 1.4rem; text-indent: -1.5rem; line-height: 1.4; }
.low ul.hospital li:last-of-type { margin: 0; }
.low ul.anchor { width: 100%; display: flex; justify-content: space-between; flex-wrap: wrap; list-style: none; padding: 0; margin: 0 0 2.4rem 0; }
.low ul.anchor li { width: 49%; padding: 1rem 0; margin: 0 0 1.2rem 0; box-sizing: border-box; border: 1px #222222 solid; display: flex; justify-content: center; align-items: center; }
.low ul.anchor li a { text-decoration: none; color: #222222; }
.low dl.smp { font-size: 1.3rem; display: block; margin: 0; clear: both; }
.low dl.smp dt, .low dl.smp dd { width: 100%; padding: 1rem; box-sizing: border-box; margin: 0; }
.low dl.smp dt { color: #553e36; font-weight: bold; background-color: #f5f5f5; display: flex; justify-content: center; align-items: center; border-top: 0.1rem #553e36 solid; border-bottom: 0.1rem #553e36 solid; }
.low dl.smp dd { color: #333333; background: #FFFFFF; }
.low dl.smp dd:last-of-type { border-bottom: 0.1rem #553e36 solid; }
.low dl.smp dd.tel a { text-decoration: none; color: #926431; font-size: 2rem; }
.low table.tbl_list th, .low table.tbl_list td { font-size: 1.4rem; font-weight: normal; padding: 1rem; }
.low table.tbl_list th { white-space: nowrap; }
.low table.tbl_list2 { margin: 0 0 1.2rem 0; box-sizing: border-box; width: 99%; }
.low table.tbl_list2 tr { width: 100%; box-sizing: border-box; }
.low table.tbl_list2 th, .low table.tbl_list2 td { font-size: 1.4rem; font-weight: normal; padding: 1rem; border-bottom: .1rem #999999 solid; border-left: .1rem #999999 solid; box-sizing: border-box; }
.low table.tbl_list2 th:first-of-type, .low table.tbl_list2 td:first-of-type { border-top: .1rem #999999 solid; }
.low table.tbl_list2 th p, .low table.tbl_list2 td p { margin: 0; }
.low table.tbl_list2 th { background-color: #926431; color: #FFFFFF; font-weight: bold; }
.low table.tbl_list2 th:first-of-type { width: 35%; }
.low table.tbl_list2 th:nth-of-type(2) { width: 65%; }
.low table.tbl_list2 td { border-right: .1rem #999999 solid; }
.low table.tbl_list2 td:first-of-type { width: 35%; }
.low table.tbl_list2 td:nth-of-type(2) { width: 65%; }
.low .blue_box { background-color: #e0f6fc; padding: 2rem 1rem; margin: 0 0 2rem 0; }
.low .blue_box p { margin: 0; font-size: 1.4rem; }
.low .flow_box { border: 3px #be9245 solid; width: 95%; box-sizing: border-box; padding: 2rem; font-size: 1.4rem; margin: 0 0 1.4rem 0; }
.low .flow_center { text-align: center; font-size: 1.4rem; margin: 0 0 1rem 0; color: #926431; }
.low .clinic_map { display: block; }
.low .clinic_map figure { width: 100%; }
.low .clinic_map figure img { width: 100%; }
.low .clinic_map figure figcaption { text-align: center; font-size: 1.6rem; color: #fff; background-color: #f7b400; padding: .8rem 0; margin: 1.2rem 0 .8rem; }
.low iframe { width: 100%; height: 25rem; border: 0; }
.low .btn_flex { display: block; }
.low a.arrow { background: #926431; border: 2px #553e36 solid; padding: 1.2rem 2rem; width: 90%; margin: 0 auto 1.6rem; color: #FFFFFF; font-size: 1.4rem; border-radius: 10px; display: flex; justify-content: center; align-items: center; box-sizing: border-box; }

@media print, screen and (min-width: 768px) { .low .wrapper { padding: 60px 0 100px; margin: 0; }
  .low figure img.machine { display: block; margin: 0 auto 2rem; width: 60%; }
  .low ul li { font-size: 1.8rem; }
  .low ul.about { width: 100%; margin: 0; }
  .low ul.about li { font-size: 1.8rem; }
  .low ul.certificate { margin: 0 0 2.8rem 0; }
  .low ul.certificate li a:hover { opacity: 0.8; }
  .low ul.hospital { border: 0.1rem #926431 solid; box-sizing: border-box; padding: 2rem; }
  .low ul.hospital li { padding: 0 0 1rem 0; padding-left: 1.4rem; text-indent: -1.5rem; line-height: 1.4; }
  .low ul.hospital li:last-of-type { margin: 0; }
  .low ul.anchor { width: 1200px; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; list-style: none; padding: 0; margin: 0 0 30px 0; }
  .low ul.anchor li { width: 24%; padding: 10px 0; margin: 0 0 12px 0; box-sizing: border-box; border: 1px #222222 solid; display: flex; justify-content: center; align-items: center; }
  .low ul.anchor li a { text-decoration: none; color: #222222; }
  .low ul.anchor li:hover { background: #f7b400; color: #FFFFFF; }
  .low dl.smp { font-size: 1.8rem; display: flex; flex-wrap: wrap; margin: 0; }
  .low dl.smp dt, .low dl.smp dd { padding: 2rem 0; box-sizing: border-box; margin: 0; }
  .low dl.smp dt { color: #553e36; font-weight: bold; background-color: #f5f5f5; width: 30%; display: flex; justify-content: center; align-items: center; border-top: 0; }
  .low dl.smp dt:first-of-type { border-top: 0.1rem #553e36 solid; }
  .low dl.smp dd { color: #333333; width: 70%; border-bottom: 0.1rem #553e36 solid; padding: 2rem; border-left: 0; background: #FFFFFF; }
  .low dl.smp dd:first-of-type { border-top: 0.1rem #553e36 solid; }
  .low table.tbl_list th, .low table.tbl_list td { font-size: 1.8rem; font-weight: normal; padding: 1rem; }
  .low table.tbl_list2 { margin: 0 0 1.2rem 0; box-sizing: border-box; }
  .low table.tbl_list2 th, .low table.tbl_list2 td { font-size: 1.8rem; font-weight: normal; padding: 1rem; border-bottom: .1rem #999999 solid; border-left: .1rem #999999 solid; box-sizing: border-box; }
  .low table.tbl_list2 th:last-of-type, .low table.tbl_list2 td:last-of-type { border-right: .1rem #999999 solid; }
  .low table.tbl_list2 th:first-of-type, .low table.tbl_list2 td:first-of-type { text-align: center; }
  .low table.tbl_list2 th { background-color: #926431; color: #FFFFFF; font-weight: bold; }
  .low table.tbl_list2 th:first-of-type { width: 30%; border-right: .1rem #999999 solid; }
  .low table.tbl_list2 td { border-right: .1rem #999999 solid; }
  .low .main p { line-height: 1.8; }
  .low .main p.txt_right { display: block; text-align: right; }
  .low .main p.g_txt { font-size: 2rem; color: #926431; margin: 0 0 1.2rem 0; clear: both; }
  .low .blue_box { background-color: #e0f6fc; padding: 20px; }
  .low .blue_box p { margin: 0; font-size: 1.8rem; }
  .low .flow_box { border: 3px #be9245 solid; width: 100%; box-sizing: border-box; padding: 30px; font-size: 1.8rem; margin: 0 0 15px 0; min-height: 350px; }
  .low .flow_center { text-align: center; font-size: 2rem; margin: 0 0 12px 0; color: #926431; }
  .low .clinic_map { display: flex; flex-wrap: nowrap; justify-content: space-around; }
  .low .clinic_map figure { width: auto; }
  .low .clinic_map figure figcaption { text-align: center; font-size: 1.6rem; color: #fff; background-color: #f7b400; padding: .8rem 0; margin: 0 0 1.2rem 0; }
  .low iframe { width: 100%; height: 500px; }
  .low .btn_flex { display: flex; justify-content: space-between; }
  .low a.arrow { background: #926431; border: 3px #553e36 solid; padding: 2rem 0; width: 45%; margin: 0 auto; color: #FFFFFF; font-size: 1.8rem; border-radius: 10px; display: flex; justify-content: center; align-items: center; }
  .low a.arrow:hover { opacity: 0.8; } }
/* 医師紹介 */
.doctor .doc .name { font-size: 1.5rem; text-align: center; margin: 0 auto; border-bottom: dashed 2px #f7b400; }

@media print, screen and (min-width: 768px) { .doctor .doc .name { font-size: 2.2rem; text-align: left; } }
/* クリニック紹介 */
.clinic ul.device { display: block; padding: 0; margin: 0; }
.clinic ul.device li { width: 100%; list-style: none; }
.clinic ul.device li img { display: block; max-width: 100%; height: auto; margin: 0 auto .6rem; }
.clinic ul.device li p { font-size: 1.2rem; margin: 1rem auto 3rem; text-align: left; width: 100%; }
.clinic ul.device li p.tit { font-size: 1.6rem; text-align: center; font-weight: bold; color: #222222; margin: 0 0 .6rem 0; }

@media print, screen and (min-width: 768px) { .clinic ul.device { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .clinic ul.device li { width: 48%; margin: 0 0 30px 0; }
  .clinic ul.device li p { font-size: 1.6rem; margin: 10px auto 0; text-align: left; width: 90%; }
  .clinic ul.device li p.tit { font-size: 2rem; text-align: center; font-weight: bold; color: #222222; margin: 0 0 10px 0; width: auto; } }
/* 初めての方へ */
.first dl.flow { width: 96%; margin: 0 auto; border-bottom: 0; }
.first dl.flow dt { background-color: #926431; color: #FFFFFF; border-radius: .6rem; padding: .2rem 0 .2rem 1rem; }
.first dl.flow dt, .first dl.flow dd { font-size: 1.4rem; line-height: 1.4; width: 100%; border-top: 0; border-bottom: 0; border-right: 0; border-left: 0; text-align: left; }
.first .arrow { font-weight: bold; margin: 1rem 0; text-align: center; color: #666666; }

@media print, screen and (min-width: 768px) { .first dl.flow { width: 100%; margin: 2rem 0 0 0; }
  .first dl.flow dt, .first dl.flow dd { font-size: 1.8rem; line-height: 1.6; width: 100%; text-align: left; } }
/* アクセス */
.access figure { margin: 0; padding: 0; }
.access figure img { width: 100%; margin: 0; }
.access a.gmap { width: 100%; height: 3rem; margin: 1rem auto 0; background: #553e36; border-radius: 10px; position: relative; display: flex; justify-content: center; align-items: center; color: #FFFFFF; font-size: 1.6rem; font-weight: bold; }
.access a.gmap::after { content: '>'; color: #FFFFFF; font-size: 1.6rem; font-weight: bold; position: absolute; right: .8rem; top: .6rem; }

@media print, screen and (min-width: 768px) { .access figure { margin: 0; padding: 0; }
  .access figure img { width: 580px; margin: 0 auto; display: block; }
  .access a.gmap { width: 300px; height: 60px; margin: 18px auto 0; background: #553e36; border-radius: 10px; position: relative; display: flex; justify-content: center; align-items: center; color: #FFFFFF; font-size: 2rem; font-weight: bold; }
  .access a.gmap::after { content: '>'; color: #FFFFFF; font-size: 2rem; font-weight: bold; position: absolute; right: 16px; top: 18px; }
  .access a.gmap:hover { background: #be9245; } }

/*# sourceMappingURL=style.css.map */
