@charset "UTF-8";
/* Scss Document */
/* =======================================================================
 共通項目 
======================================================================= */
/*関数*/
/* ----------------------------------------------------------- 関数
----------------------------------------------------------- */
/*サイトの横幅*/
/*media screen*/
/*文字SP*/
/*文字PC*/
/*基本フォント*/
/*游明朝*/
/*基本文字色*/
/*基本背景色PC*/
/*白*/
/*青*/
/*赤*/
/*青*/
/*水色*/
/*灰色*/
/*ピンク*/
/*ピンク*/
/*水色*/
/*黒*/
/*ピンク*/
/*青*/
/*赤色*/
/*ピンク*/
/*水色*/
/*黒*/
/*灰色*/
/*水色*/
/*灰色*/
/*薄紫*/
/*薄い茶色*/
/*紫*/
/*茶色*/
/*黒(下層キービジュアル)*/
/*茶色*/
/*水色*/
/*薄茶色*/
/*特殊フォント*/
@font-face { font-family: 'urbanist_semibold'; src: url(../font/static/Urbanist-SemiBold.ttf); font-weight: normal; font-style: normal; }
/* ----------------------------------------------------------- フォントサイズ基本
----------------------------------------------------------- */
html { font-size: calc( 100vw / 32 ); overflow-y: auto; font-family: "游ゴシック Medium", "Yu Gothic Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "メイリオ", Meiryo, Arial, sans-serif; color: #010101; background-color: #ffffff; padding: 0 0 14vw 0; }

@media screen and (min-width: 768px), print { html { font-size: 62.5%; overflow-y: scroll; font-family: "游ゴシック Medium", "Yu Gothic Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "メイリオ", Meiryo, Arial, sans-serif; color: #010101; background-color: #ffffff; padding: 0; } }
/* ----------------------------------------------------------- 構成
----------------------------------------------------------- */
body { position: relative; width: 100%; margin: 0 auto; }

section { height: auto; overflow: hidden; margin: 2rem 0 0 0; }
section.first { margin: 0 0 0 0; }

.sentence { height: auto; overflow: hidden; }

.pc_none { display: block; }

.sp_none { display: none; }

.pc_none_span { display: inline; }

.sp_none_span { display: none; }

.text_bold { font-weight: bold; }

@media screen and (min-width: 768px), print { body { position: relative; z-index: 0; overflow: hidden; min-width: 1280px; }
  section { height: auto; overflow: hidden; margin: 0 0 0 0; }
  section.first { margin: 0 0 0 0; }
  .pc_none { display: none; }
  .sp_none { display: block; }
  .pc_none_span { display: none; }
  .sp_none_span { display: inline; } }
/* -----------------------------------------------------------
　枠
----------------------------------------------------------- */
.wrapper { height: auto; width: 100%; margin: 3rem 0 0 0; padding: 0; }

.wrapper_low { height: auto; width: 100%; margin: 3rem 0 3rem 0; padding: 0; }

.main { height: auto; width: 96%; margin: 3rem auto 0 auto; padding: 0; }

@media screen and (min-width: 768px), print { .wrapper { height: auto; width: 100%; margin: 80px 0 0 0; padding: 0 0 0 0; box-sizing: border-box; }
  .wrapper_low { height: auto; width: 100%; margin: 60px 0 60px 0; padding: 0 0 0 0; box-sizing: border-box; }
  .main { height: auto; width: 1100px; margin: 0 auto 0 auto; padding: 0; box-sizing: border-box; } }
/* -----------------------------------------------------------
　ヘッダ
----------------------------------------------------------- */
header .head_frame { background-color: #ffffff; width: 100%; padding: 0 0 0.5rem 0; margin: 0; height: auto; }
header .head_frame .head_logo { width: 75%; margin: 0 0 0 4%; padding: 0 0 0 0; box-sizing: border-box; }
header .head_frame .head_logo a { display: block; margin: 0; }
header .head_frame .head_logo a img { width: 100%; height: auto; margin: 2vw 0 0 0; }
header .head_frame .head_info { margin: 2vw 0 0 0; }
header .head_frame .head_info .head_dept { text-align: center; font-size: 1.6rem; margin: 0 0 0.2rem 0; }
header .head_frame .head_info .head_tel {         /* text-align: center; font-size: 3rem;
	      font-family: 'urbanist_semibold'; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-wrap: wrap; flex-wrap: wrap; margin: 0 0 0.5rem 0; i{ font-size: 2.4rem; color: $color2; } span{ color: $color1; } a{ color: $color1; text-decoration: none; } */ display: none; }
header .head_frame .head_info .head_access { text-align: center; font-size: 1.6rem; font-weight: bold; margin: 0; }
header .head_frame .head_info .head_access span { color: #D93434; }

@media screen and (min-width: 768px), print { header { width: 100%; height: 100px; border-top: #ACD1F6 8px solid; box-sizing: border-box; }
  header .head_frame { background-color: #ffffff; width: 1132px; padding: 0; margin: -8px auto 0 auto; padding: 0 16px; box-sizing: border-box; height: 100px; 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; position: relative; overflow: visible; z-index: 0; }
  header .head_frame::before { content: ""; height: 8px; width: 16px; background-color: #ffffff; position: absolute; right: 0; left: 0; border-bottom: #ACD1F6 8px solid; border-bottom-right-radius: 8px; z-index: 1; box-sizing: border-box; }
  header .head_frame::after { content: ""; height: 8px; width: 16px; background-color: #ffffff; position: absolute; right: 0; top: 0; border-bottom: #ACD1F6 8px solid; border-bottom-left-radius: 8px; z-index: 1; box-sizing: border-box; }
  header .head_frame .head_logo { width: 409px; height: 73px; margin: 16px 0 0 20px; padding: 0 0 0 0; box-sizing: border-box; }
  header .head_frame .head_logo a { display: block; margin: 0; }
  header .head_frame .head_logo a img { width: 409px; height: 73px; margin: 0 0 0 0; }
  header .head_frame .head_info { margin: 0 8px 0 0; width: 450px; height: 100px; position: relative; }
  header .head_frame .head_info .head_dept { position: absolute; top: 18px; left: 0; text-align: left; font-size: 1.8rem; margin: 0 0 0 0; }
  header .head_frame .head_info .head_tel { position: absolute; top: 45px; left: 0; text-align: left; font-size: 3.2rem; font-family: 'urbanist_semibold'; display: block; margin: 0 0 0.5rem 0; }
  header .head_frame .head_info .head_tel i { font-size: 2.6rem; color: #D93434; }
  header .head_frame .head_info .head_tel span { color: #1076DC; }
  header .head_frame .head_info .head_tel a { color: #1076DC; text-decoration: none; }
  header .head_frame .head_info .head_access { position: absolute; top: 53px; right: 0; text-align: left; font-size: 2.1rem; font-weight: bold; margin: 0; }
  header .head_frame .head_info .head_access span { color: #D93434; } }
/* -----------------------------------------------------------
　メインナビ
----------------------------------------------------------- */
.main_nav_pc { display: none; }

@media screen and (min-width: 768px), print { .main_nav_pc { display: block; height: 60px; margin: 0; padding: 0; width: 100%; box-sizing: border-box; overflow: visible; background-color: #1076DC; border-bottom: #ffffff 8px solid; }
  .main_nav_pc nav { width: 1100px; height: 54px; margin: 0 auto; padding: 0; }
  .main_nav_pc nav ul { list-style-type: none; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; width: 1100px; box-sizing: border-box; height: 54px; padding: 0; margin: 0; }
  .main_nav_pc nav ul li { display: block; text-align: center; box-sizing: border-box; height: 54px; text-align: center; font-weight: normal; margin: 0; padding: 0; width: 183.33px; }
  .main_nav_pc nav ul li a { width: 100%; text-decoration: none; text-align: center; color: #ffffff; height: 24px; box-sizing: border-box; margin: 14px 0 0 0; padding: 0 0 0 0; box-sizing: border-box; letter-spacing: 0.05em; font-size: 1.6rem; font-weight: normal; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; line-height: 120%; border-left: #ffffff 1px solid; }
  .main_nav_pc nav ul li a:hover { opacity: 0.6; transition: all 0.3s ease 0s; }
  .main_nav_pc nav ul li ul { width: 380px; height: auto; display: none; margin: 18px 0 0 0; padding: 0 0 0 0; position: relative; z-index: 9999; }
  .main_nav_pc nav ul li ul li { width: 190px; height: auto; margin: 0; border-left: none; display: none; }
  .main_nav_pc nav ul li ul li.gnav { display: block; }
  .main_nav_pc nav ul li ul li a { font-size: 1.6rem; font-weight: bold; color: #0064C8; width: 190px; height: 43px; padding: 0 0 0 10px; margin: 0; box-sizing: border-box; text-align: left; border-bottom: #50ACE8 1px solid; border-right: #50ACE8 1px solid; display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; background-color: rgba(255, 255, 255, 0.9); letter-spacing: 0; }
  .main_nav_pc nav ul li ul li a::before { font-family: "fontello"; content: "\00e80b"; color: #808080; font-size: 0.5rem; margin: 0 0.5rem 0 0; }
  .main_nav_pc nav ul li ul li a:hover { transition: all 0.3s ease 0s; opacity: 0.8; }
  .main_nav_pc nav ul li ul li:last-child a { border-right: #50ACE8 1px solid; }
  .main_nav_pc nav ul li.treatment:hover { cursor: pointer; cursor: hand; }
  .main_nav_pc nav ul li:last-child a { border-right: #ffffff 1px solid; }
  .main_nav_pc nav ul.open_nav { 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; } }
/* -----------------------------------------------------------
　キービジュアル
----------------------------------------------------------- */
.key { margin: 0; }
.key div { background-repeat: no-repeat; background-size: cover !important; height: 48vw !important; background-position: center center !important; position: relative; width: 100% !important; }
.key div .key_on { display: none; }
.key div .key_title { position: absolute; bottom: -2vw; left: 0; right: 0; width: 100%; color: #ffffff; letter-spacing: 0.1em; text-align: center; margin: 0; font-size: 2rem; font-family: 'urbanist_semibold'; font-weight: bold; }

.key_on_sp { width: 96%; margin: 1rem auto 0 auto; color: #1076DC; font-size: 1.6rem; line-height: 140%; }
.key_on_sp span { font-size: 2rem; }

.key_visual_low { display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-align-items: center; align-items: center; -webkit-flex-wrap: wrap; flex-wrap: wrap; height: 30vw; background: url("../images/key_visual_low.jpg") no-repeat; background-position: center center; background-size: cover; }
.key_visual_low h1 { color: #ffffff; font-weight: bold; font-size: 2.2rem; text-align: left; letter-spacing: 0.1em; padding: 0 0 0 1rem; box-sizing: border-box; }

@media screen and (min-width: 768px), print { .key { margin: 0 0 0 0; }
  .key div { background-repeat: no-repeat; background-size: cover !important; height: 580px !important; background: cover !important; overflow: hidden; width: 100% !important; background-position: center top !important; position: relative; }
  .key div .key_on { display: block; width: 1100px; height: 580px; margin: 0 auto; position: relative; }
  .key div .key_on strong { position: absolute; bottom: 83px; width: 1100px; height: 65px; background-color: #ffffff; color: #1076DC; font-size: 2.9rem; font-weight: bold; line-height: 140%; border-radius: 30px; text-align: center; padding: 10px 0 0 0; box-sizing: border-box; }
  .key div .key_on strong span { font-size: 3.7rem; }
  .key div .key_title { position: absolute; bottom: -16px; left: 0; right: 0; width: 100%; color: #ffffff; letter-spacing: 0.4em; text-align: center; margin: 0; font-size: 3.4rem; font-family: 'urbanist_semibold'; font-weight: bold; }
  .key_on_sp { display: none; }
  .bg-slider { background-size: cover !important; overflow: hidden; }
  .key_visual_low { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-wrap: wrap; flex-wrap: wrap; height: 170px; background: url("../images/key_visual_low.jpg") no-repeat; background-position: center center; background-size: cover; }
  .key_visual_low h1 { color: #ffffff; font-weight: bold; font-size: 3.4rem; text-align: left; letter-spacing: 0.1em; padding: 0 0 0 0; box-sizing: border-box; width: 1100px; width: 0 auto; } }
/*-----------------------------------------------------------
当院でご相談にのれる慢性の痛み
----------------------------------------------------------- */
.consultation_btn { width: 80%; margin: 0 auto 2rem auto; text-decoration: none; text-align: center; border: #1076DC 3px solid; box-sizing: border-box; border-radius: 0.8rem; color: #232323; font-size: 1.6rem; font-weight: bold; padding: 1rem 0; box-sizing: border-box; line-height: 120%; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
.consultation_btn::before { content: ""; width: 4rem; height: 3rem; background: url("../images/index_consultation.png") no-repeat; background-size: contain; margin: 0 1rem 0 0; }
.consultation_btn::after { content: ""; width: 1.6rem; height: 1.6rem; background: url("../images/index_consultation_arrow.svg") no-repeat; background-size: contain; margin: 0 0 0 1rem; }

@media screen and (min-width: 768px), print { .consultation_btn { width: 376px; height: 80px; margin: 0 auto 72px auto; text-decoration: none; text-align: center; border: #1076DC 3px solid; box-sizing: border-box; border-radius: 10px; color: #232323; font-size: 2.6rem; font-weight: bold; padding: 0 0; box-sizing: border-box; line-height: 100%; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .consultation_btn::before { content: ""; width: 74px; height: 56px; background: url("../images/index_consultation.png") no-repeat; background-size: contain; margin: 0 14px 0 0; }
  .consultation_btn::after { content: ""; width: 19px; height: 19px; background: url("../images/index_consultation_arrow.svg") no-repeat; background-size: contain; margin: 0 0 0 7px; }
  .consultation_btn:hover { opacity: 0.6; transition: 0.3s; } }
/*-----------------------------------------------------------
お知らせ
----------------------------------------------------------- */
.notice_frame { width: 100%; 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; }
.notice_frame::before { content: ""; display: block; width: 3%; background-color: #1076DC; border-top-right-radius: 0.4rem; border-bottom-right-radius: 0.4rem; }
.notice_frame::after { content: ""; display: block; width: 3%; background-color: #1076DC; border-top-left-radius: 0.4rem; border-bottom-left-radius: 0.4rem; }
.notice_frame .notice_area { width: 94%; margin: 0; }
.notice_frame .notice_area h2.notice_title { color: #D93434; text-align: center; font-size: 2.2rem; width: 50%; margin: 0 auto; padding: 1rem 0; box-sizing: border-box; position: relative; }
.notice_frame .notice_area h2.notice_title::before { content: ""; position: absolute; bottom: 0; left: 0; width: 70%; height: 80%; border-bottom: #F67A7A 4px dotted; border-left: #F67A7A 4px dotted; border-bottom-left-radius: 0.4rem; }
.notice_frame .notice_area h2.notice_title::after { content: ""; position: absolute; top: 0; right: 0; width: 70%; height: 80%; border-top: #F67A7A 4px dotted; border-right: #F67A7A 4px dotted; border-top-right-radius: 0.4rem; }
.notice_frame .notice_area h2.notice_title span { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-wrap: nowrap; flex-wrap: nowrap; }
.notice_frame .notice_area h2.notice_title span::before { font-family: "fontello"; content: "\00f111"; font-size: 1rem; color: #F5BABA; margin: 0 0.5rem 0 0; }
.notice_frame .notice_area h2.notice_title span::after { font-family: "fontello"; content: "\00f111"; font-size: 1rem; color: #F5BABA; margin: 0 0 0 0.5rem; }
.notice_frame .notice_area .notice_box { width: 96%; height: auto; margin: 0 auto; padding: 2rem 0 2rem 0; box-sizing: border-box; }
.notice_frame .notice_area .notice_box dl { height: auto; margin: 0 auto 0 auto; width: 96%; overflow-wrap: break-word; }
.notice_frame .notice_area .notice_box dl dt { color: #0064C8; margin: 2rem 0 0.8rem 0; padding: 1.8rem 0.4rem 0 2rem; font-size: 1.5rem; box-sizing: border-box; font-weight: bold; letter-spacing: 0.1em; line-height: 130%; position: relative; }
.notice_frame .notice_area .notice_box dl dt .date_tag { display: block; }
.notice_frame .notice_area .notice_box dl dt::before { position: absolute; font-family: "fontello"; content: "\00e802"; color: #D93434; display: block; width: 0; height: 0; margin: auto; left: 0; top: 1.8rem; }
.notice_frame .notice_area .notice_box dl dt.open::before { border: none; font-family: "fontello"; content: "\00e802"; color: #D93434; }
.notice_frame .notice_area .notice_box dl dt:first-child { margin: 0 0 0.8rem 0; border-top: none; padding: 1.8rem 0.4rem 0 2rem; }
.notice_frame .notice_area .notice_box dl dt.close::before { font-family: "fontello"; content: " \00e802"; color: #D93434; transform: scale(1, -1); margin: 6.1vw 0 0 0; }
.notice_frame .notice_area .notice_box dl dd { margin: 0 0 1rem 0; padding: 0 0.4rem 0 2rem; color: #010101; font-size: 1.4rem; line-height: 130%; display: none; }
.notice_frame .notice_area .notice_box dl dd.open { display: block; }

@media screen and (min-width: 768px), print { .notice_bg { /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#1076dc+0,1076dc+15,ffffff+15,ffffff+85,1076dc+85,1076dc+85,1076dc+100 */ background: #1076dc; /* Old browsers */ background: -moz-linear-gradient(left, #1076dc 0%, #1076dc 15%, white 15%, white 85%, #1076dc 85%, #1076dc 85%, #1076dc 100%); /* FF3.6-15 */ background: -webkit-linear-gradient(left, #1076dc 0%, #1076dc 15%, white 15%, white 85%, #1076dc 85%, #1076dc 85%, #1076dc 100%); /* Chrome10-25,Safari5.1-6 */ background: linear-gradient(to right, #1076dc 0%, #1076dc 15%, white 15%, white 85%, #1076dc 85%, #1076dc 85%, #1076dc 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1076dc', endColorstr='#1076dc',GradientType=1 ); /* IE6-9 */ }
  .notice_frame { width: 1400px; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; margin: 0 auto; }
  .notice_frame::before { content: ""; display: block; width: 125px; background-color: #1076DC; border-top-right-radius: 10px; border-bottom-right-radius: 10px; }
  .notice_frame::after { content: ""; display: block; width: 125px; background-color: #1076DC; border-top-left-radius: 10px; border-bottom-left-radius: 10px; }
  .notice_frame .notice_area { width: 1150px; margin: 0; background-color: #ffffff; }
  .notice_frame .notice_area h2.notice_title { color: #D93434; text-align: center; font-size: 3.3rem; width: 245px; margin: 0 auto 55px auto; padding: 20px 0; box-sizing: border-box; position: relative; }
  .notice_frame .notice_area h2.notice_title::before { content: ""; position: absolute; bottom: 0; left: 0; width: 189px; height: 61px; border-bottom: #F67A7A 3px dotted; border-left: #F67A7A 3px dotted; border-bottom-left-radius: 10px; }
  .notice_frame .notice_area h2.notice_title::after { content: ""; position: absolute; top: 0; right: 0; width: 189px; height: 61px; border-top: #F67A7A 3px dotted; border-right: #F67A7A 3px dotted; border-top-right-radius: 10px; }
  .notice_frame .notice_area h2.notice_title span { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-wrap: nowrap; flex-wrap: nowrap; }
  .notice_frame .notice_area h2.notice_title span::before { font-family: "fontello"; content: "\00f111"; font-size: 0.8rem; color: #F5BABA; margin: 0 15px 0 0; }
  .notice_frame .notice_area h2.notice_title span::after { font-family: "fontello"; content: "\00f111"; font-size: 0.8rem; color: #F5BABA; margin: 0 0 0 15px; }
  .notice_frame .notice_area .notice_box { width: 1040px; height: auto; margin: 0 auto; padding: 0; box-sizing: border-box; }
  .notice_frame .notice_area .notice_box dl { height: auto; margin: 0 auto 0 auto; width: 1040px; overflow-wrap: break-word; }
  .notice_frame .notice_area .notice_box dl dt { color: #0064C8; margin: 0 0 10px 0; padding: 5px 0 0 38px; font-size: 1.8rem; box-sizing: border-box; font-weight: bold; letter-spacing: 0.1em; line-height: 140%; position: relative; }
  .notice_frame .notice_area .notice_box dl dt span.date_tag { display: inline; margin: 0 5px 0 0; }
  .notice_frame .notice_area .notice_box dl dt::before { position: absolute; font-family: "fontello"; content: "\00e802"; color: #D93434; display: block; width: 0; height: 0; margin: auto; left: 0; top: 5px; font-size: 2.2rem; }
  .notice_frame .notice_area .notice_box dl dt.open::before { border: none; font-family: "fontello"; content: "\00e802"; color: #D93434; }
  .notice_frame .notice_area .notice_box dl dt:first-child { margin: 0 0 10px 0; border-top: none; padding: 5px 0.4rem 0 38px; }
  .notice_frame .notice_area .notice_box dl dt.close::before { font-family: "fontello"; content: "\00e802"; color: #D93434; transform: scale(1, -1); margin: 25px 0 0 0; }
  .notice_frame .notice_area .notice_box dl dd { margin: 0 0 10px 0; padding: 0 0 0 38px; color: #010101; font-size: 1.8rem; line-height: 160%; display: none; }
  .notice_frame .notice_area .notice_box dl dd.open { display: block; } }
/* -----------------------------------------------------------
　当院の特長
----------------------------------------------------------- */
.feature_frame { margin: 8rem 0 0 0; background-color: #E8F5FF; overflow: visible; position: relative; padding: 0 0 1rem 0; }
.feature_frame h2.top_title { margin: 0 auto; position: absolute; top: -1.5rem; left: 0; right: 0; }
.feature_frame .feature_area { padding: 6rem 0 0 0; box-sizing: border-box; width: 96%; margin: 0 auto 2rem auto; }
.feature_frame .feature_area .feature_box { width: 100%; margin: 0 0 4rem 0; }
.feature_frame .feature_area .feature_box figure { width: 100%; position: relative; }
.feature_frame .feature_area .feature_box figure img { width: 80%; height: auto; display: block; position: relative; z-index: 0; }
.feature_frame .feature_area .feature_box figure figcaption { background-color: rgba(0, 132, 219, 0.9); width: 85%; height: auto; border-radius: 0.5rem; padding: 1rem 0.8rem; box-sizing: border-box; color: #ffffff; font-size: 1.3rem; font-weight: bold; line-height: 150%; margin: -3vw 0 0 15%; position: relative; z-index: 1; }
.feature_frame .feature_area .feature_box figure figcaption a { font-size: 1.3rem; font-weight: normal; display: block; color: #ffffff; text-align: right; }
.feature_frame .feature_line { display: none; }

@media screen and (min-width: 768px), print { .feature_frame { margin: 140px 0 0 0; background-color: #E8F5FF; overflow: visible; position: relative; padding: 0 0 0 0; }
  .feature_frame h2.top_title { margin: 0 auto; position: absolute; top: -20px; left: 0; right: 0; }
  .feature_frame .feature_area { padding: 85px 0 0 0; box-sizing: border-box; width: 1100px; margin: 0 auto 0 auto; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; position: relative; z-index: 1; }
  .feature_frame .feature_area .feature_box { width: 540px; margin: 0 0 74px 0; }
  .feature_frame .feature_area .feature_box figure { width: 540px; position: relative; }
  .feature_frame .feature_area .feature_box figure img { width: 428px; height: auto; display: block; position: relative; z-index: 0; }
  .feature_frame .feature_area .feature_box figure figcaption { background-color: rgba(0, 132, 219, 0.9); width: 442px; height: 160px; border-radius: 12px; padding: 24px; box-sizing: border-box; color: #ffffff; font-size: 2rem; font-weight: bold; text-align: justify; line-height: 150%; margin: -16px 0 0 98px; position: relative; z-index: 1; }
  .feature_frame .feature_area .feature_box figure figcaption a { position: absolute; bottom: 15px; right: 26px; font-size: 2rem; font-weight: normal; display: block; color: #ffffff; text-align: right; }
  .feature_frame .feature_area .feature_box figure figcaption a:hover { opacity: 0.6; transition: all 0.3s ease 0s; }
  .feature_frame .feature_line { display: block; position: absolute; bottom: 0; z-index: 0; width: 100%; height: 400px; border: none; background-color: #ffffff; margin: 0; } }
/* -----------------------------------------------------------
　診療内容
----------------------------------------------------------- */
.clinic_menu_frame { background: url("../images/index_clinic_menu_bg.jpg") no-repeat; background-position: center top; background-size: cover; margin: 8rem 0 0 0; padding: 1.5rem 0 1rem 0; box-sizing: border-box; overflow: visible; position: relative; }
.clinic_menu_frame h2.top_title { margin: 0 auto 4rem auto; position: absolute; top: -1.5rem; left: 0; right: 0; }
.clinic_menu_frame .clinic_menu_area { margin: 5rem 0 0 0; }
.clinic_menu_frame .clinic_menu_area .clinic_menu_box { width: 100%; margin: 0 auto 6rem auto; }
.clinic_menu_frame .clinic_menu_area .clinic_menu_box .clinic_link { text-decoration: none; display: block; }
.clinic_menu_frame .clinic_menu_area .clinic_menu_box .clinic_link .clinic_link_icon { width: 60%; height: 57vw; background-color: #0084DB; border-radius: 50%; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: column; flex-direction: column; box-shadow: 5px 5px 8px rgba(112, 112, 112, 0.8); margin: 0 auto 2rem auto; }
.clinic_menu_frame .clinic_menu_area .clinic_menu_box .clinic_link .clinic_link_icon img { width: 60%; height: auto; }
.clinic_menu_frame .clinic_menu_area .clinic_menu_box .clinic_link .clinic_link_text { text-align: center; text-decoration: none; color: #232323; font-size: 2.4rem; font-weight: bold; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: nowrap; flex-wrap: nowrap; }
.clinic_menu_frame .clinic_menu_area .clinic_menu_box .clinic_link .clinic_link_text i { color: #E55151; font-size: 1.6rem; }
.clinic_menu_frame .clinic_menu_area .clinic_menu_box ul { list-style-type: none; width: 70%; margin: 2rem auto 0 auto; }
.clinic_menu_frame .clinic_menu_area .clinic_menu_box ul li { width: 100%; margin: 0 0 1rem 0; }
.clinic_menu_frame .clinic_menu_area .clinic_menu_box ul li a { width: 100%; height: 12vw; background: url("../images/icon_arrow.png") no-repeat; background-position: right 8% center; background-color: #ffffff; border: #EF9B9B 1px solid; text-decoration: none; color: #232323; font-size: 1.6rem; font-weight: bold; border-radius: 2rem; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: nowrap; flex-wrap: nowrap; }
.clinic_menu_frame .clinic_menu_area .clinic_menu_box p { font-size: 1.4rem; text-align: right; width: 70%; margin: 0 auto 0 auto; }

@media screen and (min-width: 768px), print { .clinic_menu_frame { background: url("../images/index_clinic_menu_bg.jpg") no-repeat; background-position: center top; background-size: cover; padding: 64px 0 0 0; height: 655px; box-sizing: border-box; margin: 100px 0 0 0; overflow: visible; position: relative; }
  .clinic_menu_frame h2.top_title { margin: 0 auto; position: absolute; top: -20px; left: 0; right: 0; }
  .clinic_menu_frame .clinic_menu_area { margin: 14px auto 0 auto; width: 886px; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: nowrap; flex-wrap: nowrap; }
  .clinic_menu_frame .clinic_menu_area .clinic_menu_box { width: 220px; margin: 0; }
  .clinic_menu_frame .clinic_menu_area .clinic_menu_box .clinic_link { text-decoration: none; display: block; }
  .clinic_menu_frame .clinic_menu_area .clinic_menu_box .clinic_link .clinic_link_icon { width: 182px; height: 182px; background-color: #0084DB; border-radius: 50%; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: column; flex-direction: column; box-shadow: 5px 5px 8px rgba(112, 112, 112, 0.8); margin: 0 auto 18px auto; }
  .clinic_menu_frame .clinic_menu_area .clinic_menu_box .clinic_link .clinic_link_icon img { width: 123px; height: auto; }
  .clinic_menu_frame .clinic_menu_area .clinic_menu_box .clinic_link .clinic_link_text { text-align: center; text-decoration: none; color: #232323; font-size: 2.6rem; font-weight: bold; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: nowrap; flex-wrap: nowrap; }
  .clinic_menu_frame .clinic_menu_area .clinic_menu_box .clinic_link .clinic_link_text i { color: #E55151; font-size: 2rem; }
  .clinic_menu_frame .clinic_menu_area .clinic_menu_box .clinic_link:hover { opacity: 0.6; transition: all 0.3s ease 0s; }
  .clinic_menu_frame .clinic_menu_area .clinic_menu_box ul { list-style-type: none; width: 220px; margin: 22px auto 0 auto; }
  .clinic_menu_frame .clinic_menu_area .clinic_menu_box ul li { width: 100%; margin: 0 0 10px 0; }
  .clinic_menu_frame .clinic_menu_area .clinic_menu_box ul li a { width: 220px; height: 42px; background: url("../images/icon_arrow.png") no-repeat; background-position: right 8% center; background-color: #ffffff; border: #EF9B9B 1px solid; text-decoration: none; color: #232323; font-size: 1.8rem; font-weight: bold; border-radius: 2rem; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: nowrap; flex-wrap: nowrap; }
  .clinic_menu_frame .clinic_menu_area .clinic_menu_box ul li a:hover { opacity: 0.6; transition: all 0.3s ease 0s; }
  .clinic_menu_frame .clinic_menu_area .clinic_menu_box p { font-size: 1.8rem; text-align: right; width: 220px; margin: 0; } }
/*----------------------------------------------------------- 医院概要
----------------------------------------------------------- */
.overview_blue_bg { margin: 6rem 0 0 0; }
.overview_blue_bg .overview_bg { width: 100%; 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; padding: 0 0 2rem 0; box-sizing: border-box; /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ffffff+0,ffffff+80,1076dc+80,1076dc+100 */ background: white; /* Old browsers */ background: -moz-linear-gradient(top, white 0%, white 80%, #1076dc 80%, #1076dc 100%); /* FF3.6-15 */ background: -webkit-linear-gradient(top, white 0%, white 80%, #1076dc 80%, #1076dc 100%); /* Chrome10-25,Safari5.1-6 */ background: linear-gradient(to bottom, white 0%, white 80%, #1076dc 80%, #1076dc 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#1076dc',GradientType=0 ); /* IE6-9 */ }
.overview_blue_bg .overview_bg::before { content: ""; display: block; width: 3%; background-color: #1076DC; border-top-right-radius: 0.4rem; }
.overview_blue_bg .overview_bg::after { content: ""; display: block; width: 3%; background-color: #1076DC; border-top-left-radius: 0.4rem; }
.overview_blue_bg .overview_bg .overview { width: 94%; margin: 0; padding: 0 2% 2rem 2%; box-sizing: border-box; background-color: #ffffff; border-bottom-left-radius: 0.5rem; border-bottom-right-radius: 0.5rem; }
.overview_blue_bg .overview_bg .overview h2.overview_title { width: 100%; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
.overview_blue_bg .overview_bg .overview h2.overview_title img { width: 80%; height: auto; display: block; margin: 0 auto; }
.overview_blue_bg .overview_bg .overview h2.overview_title::before { content: ""; border-bottom: #50ACE8 3px dotted; height: 2px; width: 7%; }
.overview_blue_bg .overview_bg .overview h2.overview_title::after { content: ""; border-bottom: #50ACE8 3px dotted; height: 2px; width: 7%; }
.overview_blue_bg .overview_bg .overview .overview_info_box .overview_info_box_left dl.overview_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.2rem; box-sizing: border-box; margin: 2rem 0 2rem 0; line-height: 160%; }
.overview_blue_bg .overview_bg .overview .overview_info_box .overview_info_box_left dl.overview_list dt { width: 25%; margin: 0 0 1rem 0; color: #E55151; }
.overview_blue_bg .overview_bg .overview .overview_info_box .overview_info_box_left dl.overview_list dt span { background-color: #D3E7FB; color: #1076DC; width: 100%; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; font-weight: bold; font-size: 1.2rem; border-radius: 0.2rem; }
.overview_blue_bg .overview_bg .overview .overview_info_box .overview_info_box_left dl.overview_list dd { width: 70%; margin: 0 0 1rem 0; color: #010101; font-size: 1.2rem; }
.overview_blue_bg .overview_bg .overview .overview_info_box .overview_info_box_left dl.overview_list dd span a { color: #010101; text-decoration: none; }
.overview_blue_bg .overview_bg .overview .overview_info_box .overview_info_box_left table.timetable { width: 100%; }
.overview_blue_bg .overview_bg .overview .overview_info_box .overview_info_box_right { margin: 2rem 0 0 0; }
.overview_blue_bg .overview_bg .overview .overview_info_box .overview_info_box_right iframe.googlemap { width: 100%; height: 500px; border-radius: 0.5rem; }
.overview_blue_bg .overview_bg .overview .overview_info_box .overview_info_box_right a { width: 60%; height: 10vw; color: #1076DC; font-size: 1.4rem; font-weight: bold; border: #1076DC 1px solid; border-radius: 2rem; margin: 1rem auto 0 auto; text-decoration: none; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: nowrap; flex-wrap: nowrap; }

@media screen and (min-width: 768px), print { .overview_blue_bg { /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#1076dc+0,1076dc+15,ffffff+15,ffffff+85,1076dc+85,1076dc+85,1076dc+100 */ background: #1076dc; /* Old browsers */ background: -moz-linear-gradient(left, #1076dc 0%, #1076dc 15%, white 15%, white 85%, #1076dc 85%, #1076dc 85%, #1076dc 100%); /* FF3.6-15 */ background: -webkit-linear-gradient(left, #1076dc 0%, #1076dc 15%, white 15%, white 85%, #1076dc 85%, #1076dc 85%, #1076dc 100%); /* Chrome10-25,Safari5.1-6 */ background: linear-gradient(to right, #1076dc 0%, #1076dc 15%, white 15%, white 85%, #1076dc 85%, #1076dc 85%, #1076dc 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1076dc', endColorstr='#1076dc',GradientType=1 ); /* IE6-9 */ margin: 125px 0 0 0; }
  .overview_blue_bg .overview_bg { width: 1400px; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; margin: 0 auto; padding: 0 0 0 0; box-sizing: border-box; /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ffffff+0,ffffff+80,1076dc+80,1076dc+100 */ background: white; /* Old browsers */ background: -moz-linear-gradient(top, white 0%, white 80%, #1076dc 80%, #1076dc 100%); /* FF3.6-15 */ background: -webkit-linear-gradient(top, white 0%, white 80%, #1076dc 80%, #1076dc 100%); /* Chrome10-25,Safari5.1-6 */ background: linear-gradient(to bottom, white 0%, white 80%, #1076dc 80%, #1076dc 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#1076dc',GradientType=0 ); /* IE6-9 */ }
  .overview_blue_bg .overview_bg::before { content: ""; display: block; width: 125px; background-color: #1076DC; border-top-right-radius: 10px; }
  .overview_blue_bg .overview_bg::after { content: ""; display: block; width: 125px; background-color: #1076DC; border-top-left-radius: 10px; }
  .overview_blue_bg .overview_bg .overview { width: 1150px; margin: 0; padding: 0 0 50px 0; box-sizing: border-box; background-color: #ffffff; border-bottom-left-radius: 10px; border-bottom-right-radius: 10px; }
  .overview_blue_bg .overview_bg .overview h2.overview_title { width: 1020px; margin: 0 auto; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .overview_blue_bg .overview_bg .overview h2.overview_title img { width: 409px; height: auto; display: block; margin: 0 auto; }
  .overview_blue_bg .overview_bg .overview h2.overview_title::before { content: ""; border-bottom: #50ACE8 3px dotted; height: 2px; width: 274px; }
  .overview_blue_bg .overview_bg .overview h2.overview_title::after { content: ""; border-bottom: #50ACE8 3px dotted; height: 2px; width: 274px; }
  .overview_blue_bg .overview_bg .overview .overview_info_box { width: 1020px; margin: 66px auto 0 auto; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .overview_blue_bg .overview_bg .overview .overview_info_box .overview_info_box_left { width: 510px; }
  .overview_blue_bg .overview_bg .overview .overview_info_box .overview_info_box_left dl.overview_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 38px 0; line-height: 160%; width: 450px; }
  .overview_blue_bg .overview_bg .overview .overview_info_box .overview_info_box_left dl.overview_list dt { width: 123px; margin: 0 0 20px 0; color: #E55151; }
  .overview_blue_bg .overview_bg .overview .overview_info_box .overview_info_box_left dl.overview_list dt span { background-color: #D3E7FB; color: #1076DC; width: 100%; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; font-weight: bold; font-size: 1.8rem; border-radius: 5px; height: 38px; }
  .overview_blue_bg .overview_bg .overview .overview_info_box .overview_info_box_left dl.overview_list dd { width: 300px; margin: 0 0 20px 0; color: #010101; font-size: 1.8rem; padding: 5px 0 0 0; box-sizing: border-box; }
  .overview_blue_bg .overview_bg .overview .overview_info_box .overview_info_box_left dl.overview_list dd sapn a { color: #010101; text-decoration: none; }
  .overview_blue_bg .overview_bg .overview .overview_info_box .overview_info_box_left table.timetable { width: 450px; margin: 0; }
  .overview_blue_bg .overview_bg .overview .overview_info_box .overview_info_box_right { width: 510px; margin: 0; }
  .overview_blue_bg .overview_bg .overview .overview_info_box .overview_info_box_right iframe.googlemap { width: 510px; height: 500px; border-radius: 10px; }
  .overview_blue_bg .overview_bg .overview .overview_info_box .overview_info_box_right a { width: 207px; height: 37px; color: #1076DC; font-size: 1.6rem; font-weight: bold; border: #1076DC 1px solid; border-radius: 2rem; margin: 16px auto 0 auto; text-decoration: none; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: nowrap; flex-wrap: nowrap; }
  .overview_blue_bg .overview_bg .overview .overview_info_box .overview_info_box_right a:hover { opacity: 0.6; transition: all 0.3s ease 0s; } }
/* -----------------------------------------------------------
　フッター
----------------------------------------------------------- */
footer { margin: 0 0 0 0; padding: 2rem 0 0 0; background-color: #1076DC; box-sizing: border-box; }
footer .footer_frame { width: 96%; margin: 0 auto; }
footer .footer_frame ul.footer_list { line-height: 130%; font-size: 1.2rem; margin: 0 0 0 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; }
footer .footer_frame ul.footer_list li { width: 48%; margin: 0 0 1.2rem 0; padding: 0 0 0 0; list-style-type: none; position: relative; box-sizing: border-box; }
footer .footer_frame ul.footer_list li a { color: #ffffff; text-decoration: none; text-align: left; display: block; font-size: 1.4rem; font-weight: bold; }
footer .footer_frame ul.footer_list li a span { display: none; }
footer .footer_frame ul.footer_list li.treatment { display: none; }
footer .footer_frame .subtitle { font-size: 1.4rem; font-weight: bold; margin: 0 0 1.4rem; border-bottom: #ffffff 1px solid; color: #ffffff; text-align: center; padding: 0 0 0.5rem 0; }
footer .copyright { margin: 0; text-align: center; padding: 1rem 0; color: #ffffff; font-size: 1.2rem; height: auto; letter-spacing: 0.05em; background-color: #0064C8; }
footer .copyright a { color: #ffffff; text-decoration: none; letter-spacing: 0.1em; }

.footer_link { position: fixed; bottom: 0; width: 100%; display: -webkit-flex; display: flex; -webkit-justify-content: space-around; justify-content: space-around; -webkit-flex-direction: row; flex-direction: row; padding: 0.5rem 0; background-color: #0064C8; z-index: 999999; }
.footer_link a.footer_tel { width: 80%; margin: 0; color: #1076DC; text-align: center; font-size: 2rem; font-weight: normal; font-family: 'urbanist_semibold'; letter-spacing: 0.1em; display: block; background-color: #ffffff; padding: 0.8rem 0; text-decoration: none; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; border-radius: 5px; }
.footer_link a.footer_tel i { color: #D93434; font-size: 1.4rem; }
.footer_link .smoothScrolls { background-color: #ffffff; width: 15%; text-align: center; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; border-radius: 5px; }
.footer_link .smoothScrolls a { width: 100%; color: #1076DC; padding: 0.8rem 0; font-weight: bold; text-decoration: none; font-size: 1.6rem; }

@media screen and (min-width: 768px), print { footer { width: 100%; height: 215px; box-sizing: border-box; padding: 0 0 0 0; margin: 0 0 0 0; overflow: hidden; position: relative; background-color: #1076DC; }
  footer .footer_frame { width: 1150px; margin: 40px auto 0 auto; }
  footer .footer_frame ul.footer_list { line-height: 130%; font-size: 1.6rem; margin: 0 0 0 0; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  footer .footer_frame ul.footer_list li { width: auto; margin: 0 24px 10px 0; padding: 0 24px 0 0; list-style-type: none; position: relative; border-right: #ffffff 1px solid; }
  footer .footer_frame ul.footer_list li a { color: #ffffff; text-decoration: none; font-weight: normal; font-size: 1.6rem; }
  footer .footer_frame ul.footer_list li a span { display: none; }
  footer .footer_frame ul.footer_list li a:hover { opacity: 0.6; transition: all 0.3s ease 0s; }
  footer .footer_frame ul.footer_list li.treatment { display: none; }
  footer .footer_frame ul.footer_list li:last-child { border-right: none; }
  footer .footer_frame .subtitle { display: none; }
  footer .copyright { margin: 0; height: 50px; text-align: center; padding: 0; color: #ffffff; font-size: 1.4rem; letter-spacing: 0.05em; background-color: #0064C8; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-wrap: wrap; flex-wrap: wrap; position: absolute; bottom: 0; width: 100%; }
  footer .copyright a { color: #ffffff; text-decoration: none; letter-spacing: 0.1em; }
  .footer_link { display: none; } }
/* -----------------------------------------------------------
　ページトップへ
----------------------------------------------------------- */
#pagetop_position { display: none; }

@media screen and (min-width: 768px), print { #pagetop_position { display: block; margin: 0; padding: 0; }
  #pagetop_position #linkpagetop a { width: 78px; height: 78px; }
  #pagetop_position #linkpagetop a img { width: 78px; height: 78px; }
  #pagetop_position #linkpagetop a:hover { opacity: 0.6; transition: all 0.3s ease 0s; }
  #pagetop { position: fixed; bottom: 110px; right: 10%; z-index: 999999; } }
@media screen and (min-width: 768px) and (max-width: 1500px) { #pagetop_position { display: block; margin: 0; padding: 0; }
  #pagetop_position #linkpagetop a { width: 78px; height: 78px; }
  #pagetop_position #linkpagetop a img { width: 78px; height: 78px; }
  #pagetop { position: fixed; bottom: 110px; right: 2%; z-index: 999999; } }
/*----------------------------------------------------------- インポート
----------------------------------------------------------- */
/*ハンバーガー*/
.drawr { display: none; position: absolute; top: 16vw; width: 100%; padding: 1rem 0 0 0; margin: 0 0 0 0; height: auto; z-index: 999999; background-color: #ffffff; }
.drawr ul.hbg { list-style-type: none; width: 96%; margin: 0 auto; }
.drawr ul.hbg li { width: 100%; background-color: #1076DC; margin: 0 0 0 0; border-bottom: #ffffff 1px solid; }
.drawr ul.hbg li a { font-size: 1.8rem; font-weight: bold; color: #ffffff; text-decoration: none; width: 100%; height: 12vw; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
.drawr ul.hbg li ul.main_nav_sub { display: none; border-top: #ffffff 1px solid; }
.drawr ul.hbg li ul.main_nav_sub li { display: none; }
.drawr ul.hbg li ul.main_nav_sub li.gnav { display: block; }
.drawr ul.hbg li ul.open_nav { display: block; }

.openNav { display: block; }

@media screen and (min-width: 768px), print { .main_nav_sp { display: none; } }
.toggle { display: none; }

.toggle-label { cursor: pointer; display: block; width: 14%; height: 10vw; padding: 0 0 0.5vw 0; user-select: none; -webkit-tap-highlight-color: transparent; }

.toggle-label:active { -webkit-tap-highlight-color: transparent; }

.toggle-label { cursor: pointer; width: 100%; }

.toggle-label .toggle-icon, .toggle-label .toggle-icon:before, .toggle-label .toggle-icon:after { position: relative; display: block; top: 50%; left: 50%; height: 3px; width: 2.6rem; background: #ffffff; content: ''; transition: all 500ms ease-in-out; }

.toggle-label .toggle-text { position: relative; display: block; top: calc(100% - 10px); height: 14px; font-size: 0.8rem; color: #ffffff; text-align: center; }

.toggle-label .toggle-text:before { position: absolute; width: 100%; left: 0; content: 'MENU'; transition: all 500ms ease-in-out; visibility: visible; opacity: 1; }

.toggle-label .toggle-text:after { position: absolute; width: 100%; left: 0; content: 'CLOSE'; transition: all 500ms ease-in-out; visibility: hidden; opacity: 0; }

.toggle-label .toggle-icon { transform: translate3d(-50%, -5px, 0); }

.toggle-label .toggle-icon:before { transform: translate3d(-50%, -11.5px, 0); }

.toggle-label .toggle-icon:after { transform: translate3d(-50%, 5px, 0); }

.toggle:checked ~ .toggle-label .toggle-icon { background-color: transparent; }

.toggle:checked ~ .toggle-label .toggle-icon:before, .toggle:checked ~ .toggle-label .toggle-icon:after { top: 0; }

.toggle:checked ~ .toggle-label .toggle-icon:before { transform: translateX(-50%) rotate(45deg); top: 1.5px; }

.toggle:checked ~ .toggle-label .toggle-icon:after { transform: translateX(-50%) translateY(-10px) rotate(-45deg); top: 8.5px; }

.toggle:checked ~ .toggle-label .toggle-text:before { visibility: hidden; opacity: 0; }

.toggle:checked ~ .toggle-label .toggle-text:after { visibility: visible; opacity: 1; }

.container { display: flex; align-items: center; justify-content: center; width: 14%; position: absolute; cursor: pointer; right: 2%; top: 2vw; padding: 0.4rem 0 0.6rem 0; background-color: #1076DC; }

/*見出し*/
h1 { margin: 0; }

h2.top_title { text-align: center; }
h2.top_title span { color: #0064C8; font-size: 2.4rem; font-weight: bold; text-align: center; letter-spacing: 0.05em; line-height: 120%; z-index: 2; padding: 0 0.8rem; margin: 0 0 0 0; box-sizing: border-box; position: relative; display: inline-block; border-left: #0064C8 1px solid; border-right: #0064C8 1px solid; }
h2.top_title span span { color: #808080; display: block; font-size: 1.3rem; font-weight: bold; padding: 0; margin: 0; border-left: none; border-right: none; }
h2.low { text-align: center; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; margin: 5rem 0 2rem 0; }
h2.low span { color: #0064C8; font-size: 2.1rem; font-weight: bold; text-align: center; letter-spacing: 0.05em; line-height: 120%; padding: 0 0.4rem; margin: 0 0 0 0; box-sizing: border-box; display: block; max-width: 90%; border-left: #0064C8 2px solid; border-right: #0064C8 2px solid; }
h2.first { margin: 0 0 2rem 0; }

h3.feature_sub_title { color: #0064C8; font-size: 2.1rem; margin: 0 0 1rem 0; display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-align-items: center; align-items: center; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
h3.feature_sub_title span { color: #232323; font-size: 1.9rem; }
h3.feature_sub_title::before { font-family: "fontello"; content: "\00e803"; font-size: 1.3rem; color: #E66565; margin: 0 0.4rem 0 0; }
h3.low { background: url("../images/icon_h3.png") no-repeat; background-position: left 1rem top 1.4rem; background-size: 5%; background-color: #1076DC; color: #ffffff; font-size: 2rem; font-weight: bold; line-height: 120%; padding: 1rem 0.8rem 1rem 3rem; border-radius: 0.4rem; box-sizing: border-box; margin: 3rem 0 1rem 0; }
h3.first { margin: 0 0 1rem 0; }

h4.low { background: url("../images/icon_h4.png") no-repeat; background-position: left 1rem top 1.4rem; background-size: 4%; background-color: #E8F5FF; color: #232323; font-size: 1.9rem; font-weight: normal; line-height: 120%; padding: 0.9rem 0.8rem 0.9rem 3rem; border-radius: 0.4rem; box-sizing: border-box; margin: 3rem 0 1rem 0; }
h4.first { margin: 0 0 1rem 0; }

h5.low { background: url("../images/icon_h5.png") no-repeat; background-position: left 1.2rem top 1.4rem; background-size: 4%; border-bottom: #A5A5A5 1px solid; color: #232323; font-size: 1.9rem; font-weight: normal; line-height: 120%; padding: 0.9rem 0.8rem 0.9rem 3rem; box-sizing: border-box; margin: 3rem 0 1rem 0; }
h5.first { margin: 0 0 1rem 0; }

p { font-size: 1.4rem; margin: 0 0 2rem 0; line-height: 140%; letter-spacing: 0.05em; }

@media screen and (min-width: 768px), print { h1 { margin: 0; }
  h2.top_title { text-align: center; }
  h2.top_title span { color: #0064C8; font-size: 3.2rem; font-weight: bold; text-align: center; letter-spacing: 0.05em; line-height: 120%; z-index: 2; padding: 0 16px; margin: 0 0 0 0; box-sizing: border-box; position: relative; display: inline-block; border-left: #0064C8 1px solid; border-right: #0064C8 1px solid; }
  h2.top_title span span { color: #808080; display: block; font-size: 1.6rem; font-weight: bold; padding: 0; margin: 0; border-left: none; border-right: none; }
  h2.low { text-align: center; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; margin: 80px 0 40px 0; }
  h2.low span { color: #0064C8; font-size: 3.2rem; font-weight: bold; text-align: center; letter-spacing: 0.05em; line-height: 110%; padding: 0 6px; margin: 0 0 0 0; box-sizing: border-box; display: block; max-width: 90%; border-left: #0064C8 2px solid; border-right: #0064C8 2px solid; }
  h2.first { margin: 0 0 40px 0; }
  h3.feature_sub_title { color: #0064C8; font-size: 2.8rem; margin: 0 0 25px 0; display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-align-items: center; align-items: center; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  h3.feature_sub_title span { color: #232323; font-size: 2.6rem; }
  h3.feature_sub_title::before { font-family: "fontello"; content: "\00e803"; font-size: 2.3rem; color: #E66565; margin: 0 10px 0 0; }
  h3.low { background: url("../images/icon_h3.png") no-repeat; background-position: left 12px top 15px; background-size: 17px; background-color: #1076DC; color: #ffffff; font-size: 2.4rem; font-weight: bold; line-height: 140%; padding: 6px 20px 6px 40px; border-radius: 4px; box-sizing: border-box; margin: 40px 0 18px 0; }
  h3.first { margin: 0 0 18px 0; }
  h4.low { background: url("../images/icon_h4.png") no-repeat; background-position: left 12px top 13px; background-size: 14px; background-color: #E8F5FF; color: #232323; font-size: 2.2rem; font-weight: normal; line-height: 140%; padding: 5px 20px 5px 40px; border-radius: 4px; box-sizing: border-box; margin: 40px 0 18px 0; }
  h4.first { margin: 0 0 18px 0; }
  h5.low { background: url("../images/icon_h5.png") no-repeat; background-position: left 18px top 13px; background-size: 9px; border-bottom: #A5A5A5 1px solid; color: #232323; font-size: 2rem; font-weight: normal; line-height: 120%; padding: 5px 20px 5px 40px; box-sizing: border-box; margin: 40px 0 18px 0; }
  h5.first { margin: 0 0 18px 0; }
  p { font-size: 1.8rem; margin: 0 0 2rem 0; line-height: 160%; letter-spacing: 0.05em; } }
/*イメージ*/
/* -----------------------------------------------------------
　イメージ
----------------------------------------------------------- */
.img_right { margin: 0 0 1rem 0; text-align: center; }
.img_right img { width: 70%; height: auto; }
.img_right figcaption { text-align: center; font-size: 1.4rem; width: 70%; margin: 1rem auto 2rem auto; }

.img_center { margin: 0 0 10px 0; text-align: center; }
.img_center img { width: 100%; height: auto; }

@media screen and (min-width: 768px), print { .img_right { float: right; margin: 0 0 20px 20px; }
  .img_right img { width: 400px; height: auto; }
  .img_right figcaption { text-align: center; font-size: 1.8rem; width: 400px; margin: 1rem 0 0 0; }
  .img_center { float: none; margin: 0 0 20px 0; text-align: center; }
  .img_center img { width: auto; height: auto; } }
/*リスト*/
/* -----------------------------------------------------------
　リスト
----------------------------------------------------------- */
/*標準*/
ul.list_normal { line-height: 130%; font-size: 1.4rem; list-style-type: disc; margin: 0 0 1rem 0; }
ul.list_normal li { margin: 0 0 1.4rem 1.8rem; padding: 0; }

/*画像●*/
ul.list_maru { padding: 0; margin: 0 0 1rem 0; }
ul.list_maru li { line-height: 130%; font-size: 1.4rem; list-style-type: none; margin: 0 0 10px 0; box-sizing: border-box; background: url(../images/maru.png) no-repeat; background-position: left 0.4rem top 0.5rem; background-size: 1rem; padding: 0 0 0 1.8rem; line-height: 140%; }
ul.list_maru li span.nontext { color: #ffffff; }
ul.list_maru li span.nontext span { display: none; }
ul.list_maru li.none { background: none; }

ul.list_maru_two { padding: 0; margin: 0; }
ul.list_maru_two li { line-height: 130%; font-size: 1.4rem; list-style-type: none; margin: 0 0 10px 0; box-sizing: border-box; background: url(../images/maru.png) no-repeat; background-position: left 0.4rem top 0.5rem; background-size: 1rem; padding: 0 0 0 1.8rem; line-height: 140%; }

ul.list_maru_three { padding: 0; margin: 0; }
ul.list_maru_three li { line-height: 130%; font-size: 1.4rem; list-style-type: none; margin: 0 0 10px 0; box-sizing: border-box; background: url(../images/maru.png) no-repeat; background-position: left 0.4rem top 0.5rem; background-size: 1rem; padding: 0 0 0 1.8rem; line-height: 140%; }

/*なし*/
ul.list_none { line-height: 160%; font-size: 1.4rem; list-style-type: none; margin: 0; }
ul.list_none li { margin: 0 0 15px 0; padding: 0 0 0 5px; }
ul.list_none li span { color: #fedc50; margin: 0 0.5rem 0 0; }

/*数値*/
ul.list_num { box-sizing: border-box; width: 100%; }
ul.list_num li { line-height: 130%; font-size: 1.4rem; list-style-type: decimal; margin: 0 0 10px 2rem; box-sizing: border-box; width: 90%; }

ul.list_num2 { box-sizing: border-box; width: 100%; }
ul.list_num2 li { line-height: 130%; font-size: 1.4rem; list-style-type: decimal; margin: 0 0 10px 2rem; box-sizing: border-box; width: 90%; }

/*概要*/
ul.list_overview { box-sizing: border-box; width: 100%; }
ul.list_overview li { line-height: 130%; font-size: 1.4rem; list-style-type: disc; margin: 0 0 10px 25px; box-sizing: border-box; width: 90%; }

/*2列*/
ul.list_normal_two { display: flex; justify-content: space-between; flex-direction: column; }
ul.list_normal_two li { box-sizing: border-box; line-height: 130%; font-size: 1.4rem; list-style-type: disc; margin: 0 0 10px 25px; }

@media screen and (min-width: 768px), print { /*標準*/
  ul.list_normal { line-height: 160%; font-size: 1.8rem; list-style-type: disc; margin: 0; }
  ul.list_normal li { margin: 0 0 1.4rem 25px; padding: 0; }
  ul.list_normal li ul { box-sizing: border-box; width: 100%; }
  ul.list_normal li ul li { line-height: 130%; font-size: 1.8rem; list-style-type: none; margin: 0 0 0.8rem 1.8rem; box-sizing: border-box; width: auto; }
  /*画像●*/
  ul.list_maru { padding: 0; }
  ul.list_maru li { line-height: 160%; font-size: 1.8rem; list-style-type: none; margin: 0 0 15px 0; box-sizing: border-box; background: url(../images/maru.png) no-repeat; background-position: left 4px top 8px; background-size: 12px; padding: 0 0 0 25px; }
  ul.list_maru li span.nontext { color: #ffffff; }
  ul.list_maru li span.nontext span { display: inline; }
  ul.list_maru li.none { background: none; }
  ul.list_maru_two { padding: 0; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  ul.list_maru_two li { width: 45%; line-height: 100%; font-size: 1.8rem; list-style-type: none; margin: 0 0 15px 0; box-sizing: border-box; background: url(../images/maru.png) no-repeat; background-position: left 4px top 8px; background-size: 12px; padding: 0 0 0 25px; line-height: 140%; }
  ul.list_maru_three { padding: 0; 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; }
  ul.list_maru_three li { width: 33%; line-height: 100%; font-size: 1.8rem; list-style-type: none; margin: 0 0 15px 0; box-sizing: border-box; background: url(../images/maru.png) no-repeat; background-position: left 4px top 8px; background-size: 12px; 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_num2 { box-sizing: border-box; width: 100%; 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_num2 li { width: 45%; line-height: 130%; font-size: 1.8rem; list-style-type: decimal; margin: 0 0 10px 25px; box-sizing: border-box; }
  /*概要*/
  ul.list_overview li { line-height: 130%; font-size: 1.8rem; list-style-type: disc; margin: 0 0 10px 25px; }
  ul.list_normal_two { display: flex; justify-content: space-between; flex-direction: row; flex-wrap: wrap; }
  ul.list_normal_two li { width: 45%; box-sizing: border-box; line-height: 130%; font-size: 1.8rem; list-style-type: disc; margin: 0 0 10px 25px; } }
/* -----------------------------------------------------------
　定義リスト
----------------------------------------------------------- */
dl.bio_list { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.4rem; box-sizing: border-box; margin: 0 0 2rem 0; line-height: 160%; }
dl.bio_list dt { width: 100%; margin: 0 0 0 0; font-weight: bold; }
dl.bio_list dt span { display: inline; text-align: left; padding: 0 0 0 0; box-sizing: border-box; }
dl.bio_list dd { width: 100%; margin: 0 0 2rem 0; }

dl.num_list { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.4rem; box-sizing: border-box; margin: 0 0 0 0; line-height: 120%; }
dl.num_list dt { width: 6%; margin: 0 0 0 0; }
dl.num_list dd { width: 94%; margin: 0 0 20px 0; }

@media screen and (min-width: 768px), print { dl.bio_list { display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.8rem; box-sizing: border-box; line-height: 160%; width: 1150px; }
  dl.bio_list dt { width: 100px; margin: 0 0 20px 0; font-weight: normal; }
  dl.bio_list dt span { display: block; text-align: center; padding: 0 35px 0 0; box-sizing: border-box; }
  dl.bio_list dd { width: 1000px; margin: 0 0 20px 0; }
  dl.num_list { display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.8rem; box-sizing: border-box; line-height: 160%; width: 1200px; margin: 0; }
  dl.num_list dt { width: 22px; margin: 0 0 20px 0; font-weight: normal; }
  dl.num_list dd { width: 1178px; margin: 0 0 20px 0; } }
/*アサイド*/
aside { display: none; }

@media screen and (min-width: 768px), print { aside { display: block; width: 270px; }
  aside p.aside_title { width: 270px; height: 54px; background-color: #0064C8; font-size: 2rem; font-weight: normal; color: #ffffff; letter-spacing: 0.2em; margin: 0 0 6px 0; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
  aside ul.aside_list { list-style-type: none; }
  aside ul.aside_list li { margin: 0 0 0 0; width: 270px; }
  aside ul.aside_list li a { width: 270px; height: 50px; margin: 0; padding: 0 0 0 50px; box-sizing: border-box; color: #010101; font-size: 2rem; background: url(../images/aside_arrow.png) no-repeat; background-position: left 18px center; border-bottom: #E66565 1px solid; text-decoration: none; display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-align-items: center; align-items: center; letter-spacing: 0.05em; }
  aside ul.aside_list li a:hover { opacity: 0.6; transition: all 0.3s ease 0s; } }
/*診療時間*/
/* -----------------------------------------------------------
　診療時間
----------------------------------------------------------- */
table.timetable { padding: 0; margin: 0 auto; vertical-align: middle; width: 100%; text-align: center; border-collapse: collapse; box-sizing: border-box; line-height: 140%; }
table.timetable tr th { box-sizing: border-box; font-weight: bold; font-size: 3.4vw; padding: 0.8rem 0; vertical-align: middle; color: #ffffff; background-color: #1076DC; width: 10%; }
table.timetable tr th:first-child { border-top-left-radius: 0.4rem; }
table.timetable tr th:last-child { border-top-right-radius: 0.4rem; }
table.timetable tr th.time { letter-spacing: 0.1em; }
table.timetable tr td { box-sizing: border-box; font-weight: normal; font-size: 3.4vw; padding: 0.8rem 0; vertical-align: middle; color: #231815; min-height: 17vw; border-bottom: #1076DC 1px solid; }
table.timetable tr td i { font-size: 4vw; color: #707070; }
table.timetable tr td.sankaku { color: #707070; }
table.timetable tr td.time { width: 30%; text-align: center; color: #010101; }
table.timetable tr td.double { color: #707070; font-weight: bold; }

.notice_time { font-size: 3.4vw; margin: 0.6rem 0 0 0; width: 100%; color: #010101; box-sizing: border-box; }
.notice_time span { font-weight: bold; }

@media screen and (min-width: 768px), print { table.timetable { padding: 0; margin: 0 auto; vertical-align: middle; width: 100%; text-align: center; border-collapse: collapse; box-sizing: border-box; line-height: 140%; }
  table.timetable tr th { box-sizing: border-box; font-weight: bold; font-size: 1.8rem; padding: 0; vertical-align: middle; color: #ffffff; background-color: #1076DC; width: 46px; min-height: 46px; height: 46px; box-sizing: border-box; }
  table.timetable tr th:first-child { border-top-left-radius: 5px; }
  table.timetable tr th:last-child { border-top-right-radius: 5px; }
  table.timetable tr th.time { letter-spacing: 0.1em; }
  table.timetable tr td { box-sizing: border-box; font-weight: normal; font-size: 1.8rem; padding: 0; vertical-align: middle; color: #D93434; min-height: 48px; height: 48px; box-sizing: border-box; border-bottom: #1076DC 1px solid; }
  table.timetable tr td i { font-size: 1.4rem; color: #707070; }
  table.timetable tr td.sankaku { color: #707070; }
  table.timetable tr td.time { width: 130px; text-align: center; color: #010101; font-size: 1.8rem; }
  table.timetable tr td.double { color: #707070; font-weight: bold; }
  .notice_time { font-size: 1.8rem; margin: 12px 0 0 0; width: 100%; color: #010101; padding: 0; box-sizing: border-box; line-height: 160%; }
  .notice_time span { font-weight: bold; }
  .low_timetable .notice_time br.ajs { display: none; } }
/*下層*/
/*矢印*/
.arrow { width: 0; height: 0; border-left: 60px solid transparent; border-right: 60px solid transparent; border-top: 30px solid #D93434; text-align: center; display: block; margin: 30px auto; }

.text_bold { font-weight: bold; }

.link_text { color: #1076DC; }

.red_text { color: #D93434; }

.underline_text { text-decoration: underline; }

.tac { text-align: center; }

.emphasis { background-color: #E8F5FF; border: #0084DB 1px solid; padding: 1rem; box-sizing: border-box; margin: 0 0 2rem 0; }
.emphasis p { margin: 0; }

.emphasis_pink { background-color: #0084DB; padding: 1rem; box-sizing: border-box; margin: 0 0 2rem 0; }
.emphasis_pink .mb0 { margin: 0; }

.low_tel a { color: #1076DC; font-size: 2rem; font-weight: bold; text-decoration: none; }
.low_tel span { color: #1076DC; font-size: 2rem; font-weight: bold; text-decoration: none; }

@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 #D93434; text-align: center; display: block; margin: 30px auto; }
  .text_bold { font-weight: bold; }
  .link_text { color: #1076DC; }
  .link_text:hover { opacity: 0.6; transition: all 0.3s ease 0s; }
  .red_text { color: #D93434; }
  .underline_text { text-decoration: underline; }
  .tac { text-align: center; }
  .emphasis { background-color: #E8F5FF; border: #0084DB 1px solid; padding: 20px; box-sizing: border-box; margin: 0 0 30px 0; }
  .emphasis .mb0 { margin: 0; }
  .emphasis_pink { background-color: #0084DB; padding: 20px; box-sizing: border-box; margin: 0 0 30px 0; }
  .emphasis_pink p { margin: 0; }
  .tow_box { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; width: 1150px; }
  .tow_box section { width: 550px; } }
/* -----------------------------------------------------------
　院長紹介
----------------------------------------------------------- */
figure.doctor_img { margin: 0 0 1rem 0; text-align: center; }
figure.doctor_img img { width: 100%; height: auto; }

.doctor_name { text-align: right; font-size: 1.4rem; line-height: 160%; }
.doctor_name span { font-size: 1.8rem; }

@media screen and (min-width: 768px), print { figure.doctor_img { margin: 0 0 0 20px; text-align: left; float: right; }
  figure.doctor_img img { width: 400px; height: auto; }
  .doctor_name { text-align: right; font-size: 1.8rem; }
  .doctor_name span { font-size: 2.6rem; } }
/*----------------------------------------------------------- 診療時間・アクセス
----------------------------------------------------------- */
dl.access_info { 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.2rem; box-sizing: border-box; margin: 2rem 0 2rem 0; line-height: 160%; }
dl.access_info dt { width: 25%; margin: 0 0 1rem 0; color: #E55151; }
dl.access_info dt span { background-color: #D3E7FB; color: #1076DC; width: 100%; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; font-weight: bold; font-size: 1.2rem; border-radius: 0.2rem; }
dl.access_info dd { width: 70%; margin: 0 0 1rem 0; color: #010101; font-size: 1.2rem; }
dl.access_info dd span.tel { color: #1076DC; font-weight: bold; }
dl.access_info dd span.tel a { color: #1076DC; text-decoration: none; font-weight: bold; }

iframe.accessmap { width: 100%; height: 500px; margin: 0; }

@media screen and (min-width: 768px), print { dl.access_info { 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 38px 0; line-height: 160%; width: 1150px; }
  dl.access_info dt { width: 123px; margin: 0 0 20px 0; color: #E55151; }
  dl.access_info dt span { background-color: #D3E7FB; color: #1076DC; width: 100%; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; font-weight: bold; font-size: 1.8rem; border-radius: 5px; height: 38px; }
  dl.access_info dd { width: 1007px; margin: 0 0 20px 0; color: #010101; font-size: 1.8rem; padding: 5px 0 0 0; box-sizing: border-box; }
  dl.access_info dd span.tel { color: #1076DC; font-weight: bold; }
  dl.access_info dd span.tel a { color: #1076DC; text-decoration: none; font-weight: bold; }
  iframe.accessmap { width: 100%; height: 500px; margin: 0; } }
/* -----------------------------------------------------------
　初めての方へ
----------------------------------------------------------- */
a.low_bana { display: block; text-decoration: none; width: 70%; margin: 1rem auto; background-color: #1076DC; color: #ffffff; font-size: 1.6rem; text-align: center; padding: 1rem 0; }

@media screen and (min-width: 768px), print { a.low_bana { display: block; text-decoration: none; width: 400px; margin: 1rem auto; background-color: #1076DC; color: #ffffff; font-size: 2rem; text-align: center; padding: 2rem 0; }
  a.low_bana:hover { opacity: 0.6; } }
/* -----------------------------------------------------------
　クリニック紹介
----------------------------------------------------------- */
.machine_frame { width: 100%; margin: 0; }
.machine_frame figure { margin: 0 0 4rem 0; }
.machine_frame figure img { width: 80%; display: block; margin: 0 auto 1rem auto; }
.machine_frame figure figcaption { font-size: 1.6rem; color: #010101; text-align: center; }

.slider-pro p.sp-layer { text-align: center; font-size: 2.4rem !important; }

@media screen and (min-width: 768px), print { .machine_frame { width: 100%; margin: 0; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .machine_frame figure { width: 550px; margin: 0 0 60px 0; }
  .machine_frame figure img { width: 550px; display: block; margin: 0 0 20px 0; }
  .machine_frame figure figcaption { font-size: 2.6rem; color: #010101; text-align: center; }
  .slider-pro p.sp-layer { text-align: center; font-size: 2.6rem !important; } }
/* -----------------------------------------------------------
　下層
----------------------------------------------------------- */
a.link_btn { text-decoration: none; font-size: 1.4rem; color: #ffffff; background-color: #D93434; display: inline-block; text-align: center; padding: 0.4rem 2rem; box-sizing: border-box; border-radius: 2rem; }
a.link_btn::before { font-family: "fontello"; content: "\00e80c"; font-size: 1rem; margin: 0 0.5rem 0 0; }

ul.list_link { list-style-type: none; }
ul.list_link li { margin: 0 0 1rem 0; }
ul.list_link li a { text-decoration: none; font-size: 1.4rem; color: #ffffff; background-color: #D93434; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; padding: 0.8rem 0; box-sizing: border-box; border-radius: 2rem; }
ul.list_link li a::before { font-family: "fontello"; content: "\00e80c"; font-size: 1rem; margin: 0 0.5rem 0 0; }

dl.title_box { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.4rem; box-sizing: border-box; margin: 0 0 2rem 0; line-height: 160%; }
dl.title_box dt { width: 100%; margin: 0; background-color: #EFE5D9; padding: 1rem; box-sizing: border-box; border-left: #D93434 1px solid; border-right: #D93434 1px solid; border-bottom: #D93434 1px solid; }
dl.title_box dt:first-child { border-top: #D93434 1px solid; }
dl.title_box dd { width: 100%; margin: 0; padding: 1rem; box-sizing: border-box; border-left: #D93434 1px solid; border-right: #D93434 1px solid; border-bottom: #D93434 1px solid; }

@media screen and (min-width: 768px), print { a.link_btn { text-decoration: none; font-size: 1.8rem; color: #ffffff; background-color: #D93434; display: inline-block; text-align: center; padding: 10px 30px; box-sizing: border-box; border-radius: 3rem; width: auto; }
  a.link_btn::before { font-family: "fontello"; content: "\00e80c"; font-size: 1rem; margin: 0 0.5rem 0 0; }
  a.link_btn:hover { opacity: 0.6; transition: all 0.3s ease 0s; }
  ul.list_link { list-style-type: none; 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; }
  ul.list_link li { margin: 0 1.6% 20px 1.6%; width: 30%; }
  ul.list_link li a { text-decoration: none; font-size: 1.8rem; color: #ffffff; background-color: #D93434; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; padding: 15px 0; box-sizing: border-box; border-radius: 3rem; }
  ul.list_link li a::before { font-family: "fontello"; content: "\00e80c"; font-size: 1rem; margin: 0 0.5rem 0 0; }
  ul.list_link li a:hover { opacity: 0.6; transition: all 0.3s ease 0s; }
  dl.title_box { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.8rem; box-sizing: border-box; margin: 0 0 20px 0; line-height: 160%; }
  dl.title_box dt { width: 100%; margin: 0; background-color: #EFE5D9; padding: 15px; box-sizing: border-box; border-left: #D93434 1px solid; border-right: #D93434 1px solid; border-bottom: #D93434 1px solid; }
  dl.title_box dt:first-child { border-top: #D93434 1px solid; }
  dl.title_box dd { width: 100%; margin: 0; padding: 15px; box-sizing: border-box; border-left: #D93434 1px solid; border-right: #D93434 1px solid; border-bottom: #D93434 1px solid; } }
/* -----------------------------------------------------------
　汎用テーブル
----------------------------------------------------------- */
table.low_table { width: 100%; border-collapse: collapse; color: #010101; font-size: 1.4rem; margin: 0 0 2rem 0; line-height: 140%; }
table.low_table caption { caption-side: bottom; text-align: left; margin: 0.5rem 0 0 0; }
table.low_table tr th { width: 30%; padding: 0.5rem; border: #0084DB 1px solid; background-color: #E8F5FF; box-sizing: border-box; text-align: center; vertical-align: middle; font-weight: normal; }
table.low_table tr td { width: 70%; padding: 0.5rem; border: #0084DB 1px solid; box-sizing: border-box; text-align: left; vertical-align: middle; }

@media screen and (min-width: 768px), print { table.low_table { width: 100%; border-collapse: collapse; color: #010101; font-size: 1.8rem; margin: 0 0 20px 0; line-height: 160%; }
  table.low_table caption { caption-side: bottom; text-align: left; margin: 10px 0 0 0; }
  table.low_table tr th { width: 30%; padding: 20px; border: #0084DB 1px solid; background-color: #E8F5FF; box-sizing: border-box; text-align: center; vertical-align: middle; font-weight: normal; }
  table.low_table tr td { width: 70%; padding: 20px; border: #0084DB 1px solid; box-sizing: border-box; text-align: left; vertical-align: middle; } }
