@charset "UTF-8";
/* Scss Document */
/* =======================================================================

 共通項目
 
======================================================================= */
/*関数*/
/* -----------------------------------------------------------
 関数
----------------------------------------------------------- */
/*サイトの横幅*/
/*media screen*/
/*文字SP*/
/*文字PC*/
/*基本フォント*/
/*游明朝*/
/*基本文字色*/
/*基本背景色PC*/
/*白*/
/*緑*/
/*緑2*/
/*Gナビ・アサイド*/
/*Gナビホバー*/
/*薄い緑*/
/*灰色*/
/*緑3*/
/*赤茶色*/
/*ピンク*/
/*緑4*/
/*緑5*/
/*緑6*/
/*緑*/
/*灰色*/
/*灰色2*/
/*緑*/
/*赤*/
/*紺色3*/
/*薄紫*/
/*金*/
/*紫*/
/*茶色*/
/*黒(下層キービジュアル)*/
/*茶色*/
/*水色*/
/*薄茶色*/
/*オレンジ色*/
/*オレンジ色*/
/*緑*/
/* -----------------------------------------------------------
 フォントサイズ基本
----------------------------------------------------------- */
html {
  font-size: calc( 100vw / 32 );
  overflow-y: auto;
  font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "メイリオ", Meiryo, Arial, sans-serif;
  color: #333333;
  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: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "メイリオ", Meiryo, Arial, sans-serif;
    color: #333333;
    background-color: #ffffff;
    padding: 0; } }
/* -----------------------------------------------------------
 特殊フォント読込
----------------------------------------------------------- */
@font-face {
  font-family: 'roboto';
  src: url(../font/Roboto-Regular.ttf);
  font-weight: normal;
  font-style: normal; }
@font-face {
  font-family: 'roboto_bold';
  src: url(../font/Roboto-Bold.ttf);
  font-weight: bold;
  font-style: normal; }
/* -----------------------------------------------------------
 構成
----------------------------------------------------------- */
body {
  position: relative;
  width: 100%;
  margin: 0 auto; }

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

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

.pc_none {
  display: block; }

.sp_none {
  display: none; }

.pc_none_span {
  display: inline; }

.sp_none_span {
  display: none; }

.text_bold {
  font-weight: bold; }

@media screen and (min-width: 768px), print {
  body {
    position: relative;
    z-index: 0;
    overflow: hidden;
    min-width: 1280px; }

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

  .pc_none {
    display: none; }

  .sp_none {
    display: block; }

  .pc_none_span {
    display: none; }

  .sp_none_span {
    display: inline; } }
/* -----------------------------------------------------------
　枠
----------------------------------------------------------- */
article {
  height: auto;
  width: 100%;
  margin: 0;
  padding: 0;
  background-color: #ffffff; }

.wrapper {
  height: auto;
  width: 100%;
  margin: 2rem 0 0 0;
  padding: 0; }

.main {
  height: auto;
  width: 100%;
  margin: 0;
  padding: 2rem 0; }

.main_low {
  height: auto;
  width: 96%;
  margin: 0 auto;
  padding: 2rem 0; }

@media screen and (min-width: 768px), print {
  article {
    height: auto;
    width: 100%;
    margin: 0;
    padding: 0;
    background-color: #ffffff; }

  .wrapper {
    height: auto;
    width: 1200px;
    margin: 60px auto 0 auto;
    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; }

  .main {
    height: auto;
    width: 800px;
    margin: 0;
    padding: 0 10px;
    box-sizing: border-box;
    background-color: #ffffff; }

  .main_low {
    height: auto;
    width: 800px;
    margin: 0 0 60px 0;
    padding: 0;
    box-sizing: border-box; } }
/* -----------------------------------------------------------
　ヘッダ
----------------------------------------------------------- */
header {
  display: block;
  margin: 0 0 0 0;
  padding: 0;
  height: 40vw; }
  header .head_frame {
    width: 96%;
    padding: 0;
    margin: 0 auto; }
    header .head_frame .head_logo {
      width: 60%;
      margin: 0 auto 0 auto; }
      header .head_frame .head_logo a img {
        width: 100%;
        margin: 2vw 0 0 0; }
    header .head_frame .head_tel {
      font-weight: bold;
      line-height: 100%;
      text-align: center;
      margin: 2rem auto 0 auto;
      background-color: #549b6a;
      width: 70%;
      height: 12vw;
      border-radius: 2rem;
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: center;
      justify-content: center;
      -webkit-align-items: center;
      align-items: center;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap; }
      header .head_frame .head_tel i {
        color: #ffffff;
        font-size: 2.2rem;
        margin: 0; }
      header .head_frame .head_tel span {
        color: #ffffff;
        font-size: 2.2rem;
        font-family: 'roboto';
        font-weight: normal; }
      header .head_frame .head_tel a {
        color: #ffffff;
        font-size: 2.2rem;
        font-family: 'roboto';
        font-weight: normal;
        text-decoration: none; }

@media screen and (min-width: 768px), print {
  header {
    display: block;
    margin: 0;
    padding: 0;
    height: 110px; }
    header .head_frame {
      width: 1200px;
      padding: 0;
      margin: 0 auto;
      position: relative; }
      header .head_frame .head_logo {
        position: absolute;
        top: 12px;
        left: 10px;
        width: 340px;
        margin: 0; }
        header .head_frame .head_logo a img {
          width: 340px;
          margin: 0; }
      header .head_frame .head_tel {
        position: absolute;
        top: 20px;
        right: 10px;
        font-weight: bold;
        line-height: 100%;
        text-align: center;
        margin: 0;
        background-color: #549b6a;
        width: 235px;
        height: 40px;
        border-radius: 2rem;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: center;
        justify-content: center;
        -webkit-align-items: center;
        align-items: center;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap; }
        header .head_frame .head_tel i {
          color: #ffffff;
          font-size: 2.4rem;
          margin: 0; }
        header .head_frame .head_tel span {
          color: #ffffff;
          font-size: 2.4rem;
          font-family: 'roboto';
          font-weight: normal; }
        header .head_frame .head_tel a {
          color: #ffffff;
          font-size: 2.2rem;
          font-family: 'roboto';
          font-weight: normal;
          text-decoration: none; } }
/* -----------------------------------------------------------
　メインナビ
----------------------------------------------------------- */
.main_nav_pc {
  display: none; }

@media screen and (min-width: 768px), print {
  .main_nav_pc {
    display: block;
    position: absolute;
    top: 75px;
    right: 10px; }
    .main_nav_pc nav {
      width: auto;
      margin: 0;
      padding: 0; }
      .main_nav_pc nav ul {
        list-style-type: none;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-end;
        justify-content: flex-end;
        -webkit-align-items: center;
        align-items: center;
        -webkit-flex-direction: row;
        flex-direction: row;
        width: auto;
        padding: 0;
        margin: 0; }
        .main_nav_pc nav ul li {
          display: block;
          text-align: center;
          box-sizing: border-box;
          font-weight: normal;
          margin: 0 0 0 35px; }
          .main_nav_pc nav ul li a {
            font-size: 1.8rem;
            font-weight: bold;
            color: #42361b;
            text-decoration: none; }
            .main_nav_pc nav ul li a:hover {
              color: #81bd26;
              transition: all 0.3s ease 0s; } }
/* -----------------------------------------------------------
　キービジュアル
----------------------------------------------------------- */
.key_visual {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center top;
  height: 50vw; }
  .key_visual .key_on {
    width: 100%;
    height: 50vw;
    position: relative; }
    .key_visual .key_on p {
      background-color: #81bd26;
      color: #ffffff;
      font-size: 1rem;
      display: inline-block;
      padding: 0.4rem;
      box-sizing: border-box;
      margin: 0; }
      .key_visual .key_on p.key_on_text1 {
        position: absolute;
        bottom: 10vw;
        left: 2%; }
      .key_visual .key_on p.key_on_text2 {
        position: absolute;
        bottom: 2vw;
        left: 2%; }

.key_visual_low {
  background: url(../images/key_visual_low.jpg) no-repeat;
  background-size: cover;
  background-position: center center;
  width: 100%;
  height: 30vw; }
  .key_visual_low h1 {
    width: 100%;
    height: 30vw;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    color: #549b6a;
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "メイリオ", Meiryo, Arial, sans-serif;
    font-weight: bold;
    font-size: 2.2rem;
    text-align: center;
    letter-spacing: 0.1em;
    padding: 0;
    white-space: nowrap; }

@media screen and (min-width: 768px), print {
  .key_visual {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center top;
    height: 700px; }
    .key_visual .key_on {
      width: 1200px;
      height: 700px;
      position: relative;
      margin: 0 auto; }
      .key_visual .key_on p {
        background-color: #81bd26;
        color: #ffffff;
        font-size: 2rem;
        display: inline-block;
        padding: 10px 24px;
        box-sizing: border-box;
        margin: 0; }
        .key_visual .key_on p.key_on_text1 {
          position: absolute;
          bottom: 114px;
          left: 12px; }
        .key_visual .key_on p.key_on_text2 {
          position: absolute;
          bottom: 46px;
          left: 12px; }

  .key_visual_low {
    background: url(../images/key_visual_low.jpg) no-repeat;
    background-size: cover;
    background-position: center center;
    width: 100%;
    height: 183px; }
    .key_visual_low h1 {
      width: 100%;
      height: 183px;
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: center;
      justify-content: center;
      -webkit-align-items: center;
      align-items: center;
      color: #549b6a;
      font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "メイリオ", Meiryo, Arial, sans-serif;
      font-weight: bold;
      font-size: 3.4rem;
      text-align: center;
      letter-spacing: 0.1em;
      padding: 0;
      white-space: nowrap; } }
/*-----------------------------------------------------------
お知らせ
----------------------------------------------------------- */
.notice_frame {
  width: 96%;
  margin: 0 auto;
  box-sizing: border-box;
  overflow: hidden;
  padding: 2rem 0;
  height: auto;
  border: #cccccc 1px solid;
  border-radius: 0.8rem; }
  .notice_frame .notice_area {
    width: 96%;
    margin: 0 auto 0 auto;
    padding: 0 0 2rem 0; }
    .notice_frame .notice_area dl {
      min-height: 80vw;
      height: auto;
      margin: 0 auto 0 auto;
      width: 96%; }
      .notice_frame .notice_area dl dt {
        color: #549b6a;
        margin: 2rem 0 0.4rem 0;
        padding: 2rem 0.4rem 0 2rem;
        font-size: 1.5rem;
        box-sizing: border-box;
        font-weight: bold;
        letter-spacing: 0.1em;
        line-height: 140%;
        position: relative;
        border-top: #cccccc 1px solid;
        overflow-wrap: break-word; }
        .notice_frame .notice_area dl dt::before {
          position: absolute;
          font-family: "fontello";
          content: "\00e8ee";
          color: #8ecd5f;
          display: block;
          width: 0;
          height: 0;
          margin: auto;
          left: 0;
          top: 2rem; }
        .notice_frame .notice_area dl dt.open::before {
          border: none;
          font-family: "fontello";
          content: "\00e8ef";
          color: #8ecd5f; }
        .notice_frame .notice_area dl dt:first-child {
          margin: 0 0 0.4rem 0;
          border-top: none;
          padding: 2rem 0.4rem 0 2rem; }
        .notice_frame .notice_area dl dt.close::before {
          font-family: "fontello";
          content: "\00e8ef";
          color: #8ecd5f; }
      .notice_frame .notice_area dl dd {
        margin: 0 0 1rem 0;
        padding: 0 0.4rem 0 2rem;
        color: #333333;
        font-size: 1.4rem;
        line-height: 160%;
        display: none;
        overflow-wrap: break-word; }
        .notice_frame .notice_area dl dd.open {
          display: block; }

@media screen and (min-width: 768px), print {
  .notice_frame {
    width: 100%;
    margin: 0;
    box-sizing: border-box;
    overflow: hidden;
    padding: 22px 0;
    height: auto;
    border: #cccccc 1px solid;
    border-radius: 0.8rem; }
    .notice_frame .notice_area {
      width: 670px;
      margin: 0 auto 0 auto;
      padding: 0 0 0 0; }
      .notice_frame .notice_area dl {
        min-height: auto;
        height: auto;
        margin: 0;
        width: 100%; }
        .notice_frame .notice_area dl dt {
          color: #549b6a;
          margin: 15px 0 15px 0;
          padding: 15px 0 0 22px;
          font-size: 2rem;
          box-sizing: border-box;
          font-weight: bold;
          letter-spacing: 0.1em;
          line-height: 140%;
          position: relative;
          border-top: #cccccc 1px solid;
          overflow-wrap: break-word; }
          .notice_frame .notice_area dl dt::before {
            position: absolute;
            font-family: "fontello";
            content: "\00e8ee";
            color: #8ecd5f;
            display: block;
            width: 0;
            height: 0;
            margin: auto;
            left: 0;
            top: 15px;
            font-size: 1.6rem; }
          .notice_frame .notice_area dl dt.open::before {
            border: none;
            font-family: "fontello";
            content: "\00e8ef";
            color: #8ecd5f; }
          .notice_frame .notice_area dl dt:first-child {
            margin: 0 0 0.4rem 0;
            border-top: none;
            padding: 16px 0.4rem 0 22px; }
          .notice_frame .notice_area dl dt.close::before {
            font-family: "fontello";
            content: "\00e8ef";
            color: #8ecd5f; }
        .notice_frame .notice_area dl dd {
          margin: 0 0 15px 0;
          padding: 0 0 0 22px;
          color: #333333;
          font-size: 1.8rem;
          line-height: 160%;
          display: none;
          overflow-wrap: break-word; }
          .notice_frame .notice_area dl dd.open {
            display: block; } }
/* -----------------------------------------------------------
　カレンダー
----------------------------------------------------------- */
.calendar_frame {
  width: 96%;
  margin: 2rem auto 0 auto;
  padding: 2rem 0; }
  .calendar_frame ul.calendar_notice {
    list-style-type: none;
    margin: 1rem 0 0 0; }
    .calendar_frame ul.calendar_notice li {
      font-size: 1.4rem;
      margin: 0 0 1rem 0;
      color: color8; }
      .calendar_frame ul.calendar_notice li.cal1 i {
        color: #ffffff;
        text-shadow: 1px 1px 0 #cccccc, -1px 1px 0 #cccccc, 1px -1px 0 #cccccc, -1px -1px 0 #cccccc; }
      .calendar_frame ul.calendar_notice li.cal2 i {
        color: #f1ffdb;
        text-shadow: 1px 1px 0 #cccccc, -1px 1px 0 #cccccc, 1px -1px 0 #cccccc, -1px -1px 0 #cccccc; }
      .calendar_frame ul.calendar_notice li.cal3 i {
        color: #ffdde0;
        text-shadow: 1px 1px 0 #cccccc, -1px 1px 0 #cccccc, 1px -1px 0 #cccccc, -1px -1px 0 #cccccc; }

@media screen and (min-width: 768px), print {
  .calendar_frame {
    width: 100%;
    margin: 44px auto 0 auto;
    padding: 0; }
    .calendar_frame ul.calendar_notice {
      list-style-type: none;
      margin: 15px 0 0 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: nowrap;
      flex-wrap: nowrap; }
      .calendar_frame ul.calendar_notice li {
        font-size: 1.8rem;
        margin: 0 25px 0 0;
        color: color8; }
        .calendar_frame ul.calendar_notice li.cal1 i {
          color: #ffffff;
          text-shadow: 1px 1px 0 #cccccc, -1px 1px 0 #cccccc, 1px -1px 0 #cccccc, -1px -1px 0 #cccccc; }
        .calendar_frame ul.calendar_notice li.cal2 i {
          color: #f1ffdb;
          text-shadow: 1px 1px 0 #cccccc, -1px 1px 0 #cccccc, 1px -1px 0 #cccccc, -1px -1px 0 #cccccc; }
        .calendar_frame ul.calendar_notice li.cal3 i {
          color: #ffdde0;
          text-shadow: 1px 1px 0 #cccccc, -1px 1px 0 #cccccc, 1px -1px 0 #cccccc, -1px -1px 0 #cccccc; } }
/* -----------------------------------------------------------
　当院の特長
----------------------------------------------------------- */
.feature_frame {
  width: 96%;
  margin: 2rem auto 0 auto; }
  .feature_frame .feature_area .feature_box {
    margin: 0 0 6rem 0; }
    .feature_frame .feature_area .feature_box figure {
      position: relative;
      height: 41vw;
      margin: 4rem 0 1.5rem 0; }
      .feature_frame .feature_area .feature_box figure img {
        width: 100%;
        position: absolute;
        top: 0;
        z-index: 0; }
      .feature_frame .feature_area .feature_box figure figcaption {
        position: absolute;
        top: -2.5rem;
        left: 2%;
        z-index: 1;
        color: #81bd26;
        font-family: 'roboto_bold';
        font-size: 5rem;
        text-shadow: 2px 0px 2px #ffffff,2px 0px 2px #ffffff, -2px 0px 2px #ffffff,-2px 0px 2px #ffffff; }
    .feature_frame .feature_area .feature_box .feature_title {
      color: #418c58;
      font-size: 1.7rem;
      font-weight: bold;
      margin: 0 0 1rem 0; }
    .feature_frame .feature_area .feature_box .feature_text {
      font-size: 1.4rem; }
  .feature_frame .feature_area .lastfb {
    margin: 0; }

@media screen and (min-width: 768px), print {
  .feature_frame {
    width: 100%;
    margin: 40px 0 0 0; }
    .feature_frame .feature_area {
      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: 12px 0 0 0; }
      .feature_frame .feature_area .feature_box {
        margin: 0 0 30px 0;
        width: 360px; }
        .feature_frame .feature_area .feature_box figure {
          position: relative;
          height: 165px;
          margin: 20px 0 16px 0; }
          .feature_frame .feature_area .feature_box figure img {
            width: 360px;
            position: absolute;
            top: 0;
            z-index: 0; }
          .feature_frame .feature_area .feature_box figure figcaption {
            position: absolute;
            top: -28px;
            left: 10px;
            z-index: 1;
            color: #81bd26;
            letter-spacing: 0.1em;
            font-family: 'roboto_bold';
            font-size: 7.2rem;
            text-shadow: 2px 0px 2px #ffffff,2px 0px 2px #ffffff, -2px 0px 2px #ffffff,-2px 0px 2px #ffffff; }
        .feature_frame .feature_area .feature_box .feature_title {
          color: #418c58;
          font-size: 2.2rem;
          font-weight: bold;
          margin: 0 0 4px 0; }
        .feature_frame .feature_area .feature_box .feature_text {
          font-size: 1.6rem; }
      .feature_frame .feature_area .lastfb {
        margin: 0; } }
/* -----------------------------------------------------------
　大人からこどもまで診察いたします
----------------------------------------------------------- */
.medical_examination_frame {
  background: url("../images/index_01.jpg") no-repeat;
  background-size: 120%;
  background-position: center bottom;
  background-color: #fafafa;
  height: 110vw;
  margin: 1rem 0 0 0;
  padding: 3rem 0 0 0;
  box-sizing: border-box; }
  .medical_examination_frame .medical_examination_text {
    width: 85%;
    margin: 1rem auto 0 auto;
    font-size: 1.4rem; }

@media screen and (min-width: 768px), print {
  .medical_examination_frame {
    background: url("../images/index_01.jpg") no-repeat;
    background-size: 100%;
    background-position: center bottom;
    background-color: #fafafa;
    height: 470px;
    margin: 58px 0 0 0;
    padding: 34px 0 0 0;
    box-sizing: border-box; }
    .medical_examination_frame .medical_examination_text {
      width: 576px;
      margin: 27px auto 0 auto;
      font-size: 1.6rem;
      line-height: 170%; } }
/* -----------------------------------------------------------
　こんな症状でお悩みなら
----------------------------------------------------------- */
.trouble_frame {
  margin: 5rem auto 0 auto;
  width: 96%; }
  .trouble_frame dl.trouble_list {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 2rem 0 0 0; }
    .trouble_frame dl.trouble_list dt {
      background-color: #81bd26;
      color: #ffffff;
      font-size: 2rem;
      width: 100%;
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: center;
      justify-content: center;
      -webkit-align-items: center;
      align-items: center;
      padding: 1rem;
      box-sizing: border-box;
      line-height: 140%;
      margin: 0;
      border-top-left-radius: 0.6rem;
      border-top-right-radius: 0.6rem;
      letter-spacing: 0.2em; }
    .trouble_frame dl.trouble_list dd {
      background-color: #f1fcd4;
      color: #333333;
      font-size: 1.4rem;
      width: 100%;
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: center;
      justify-content: center;
      -webkit-align-items: center;
      align-items: center;
      padding: 1rem;
      box-sizing: border-box;
      line-height: 140%;
      margin: 0 0 2rem 0;
      border-bottom-left-radius: 0.6rem;
      border-bottom-right-radius: 0.6rem; }

ul.trouble_list2 {
  width: 100%;
  list-style-type: none; }
  ul.trouble_list2 li {
    margin: 0 0 2rem 0; }
    ul.trouble_list2 li a {
      width: 100%;
      height: 40vw;
      display: block;
      background-color: #f1fcd4;
      border-radius: 0.4rem;
      border-bottom: #d3ddb9 5px solid;
      box-sizing: border-box;
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: space-around;
      justify-content: center;
      -webkit-align-items: center;
      align-items: center;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap;
      text-decoration: none; }
      ul.trouble_list2 li a span.icon {
        background-color: #549b6a;
        color: #ffffff;
        width: 26%;
        height: 24vw;
        border-radius: 50%;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: center;
        justify-content: center;
        -webkit-align-items: center;
        align-items: center;
        margin: 0 10% 0 0; }
        ul.trouble_list2 li a span.icon i {
          font-size: 5rem; }
      ul.trouble_list2 li a p {
        text-align: center;
        font-size: 1.6rem;
        color: #333333;
        margin: 1rem 0 0 0;
        width: 40%;
        font-weight: bold; }
        ul.trouble_list2 li a p span {
          display: block;
          color: #549b6a;
          font-size: 1rem;
          font-weight: normal; }

@media screen and (min-width: 768px), print {
  .trouble_frame {
    margin: 65px auto 0 auto;
    width: 100%; }
    .trouble_frame dl.trouble_list {
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: space-between;
      justify-content: space-between;
      -webkit-flex-direction: row;
      flex-direction: row;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap;
      margin: 28px 0 28px 0; }
      .trouble_frame dl.trouble_list dt {
        background-color: #81bd26;
        color: #ffffff;
        font-size: 2.6rem;
        width: 198px;
        height: 100px;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: center;
        justify-content: center;
        -webkit-align-items: center;
        align-items: center;
        padding: 0;
        box-sizing: border-box;
        line-height: 140%;
        margin: 0 0 15px 0;
        border-top-left-radius: 0.6rem;
        border-top-right-radius: 0;
        border-bottom-left-radius: 0.6rem;
        letter-spacing: 0.2em; }
      .trouble_frame dl.trouble_list dd {
        background-color: #f1fcd4;
        color: #333333;
        font-size: 1.6rem;
        width: 582px;
        height: 100px;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        -webkit-align-items: center;
        align-items: center;
        padding: 0 24px;
        box-sizing: border-box;
        line-height: 160%;
        margin: 0 0 15px 0;
        border-bottom-left-radius: 0;
        border-bottom-right-radius: 0.6rem;
        border-top-right-radius: 0;
        box-sizing: border-box; }

  ul.trouble_list2 {
    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;
    list-style-type: none;
    margin: 0 0 30px 0; }
    ul.trouble_list2 li {
      margin: 0 0 28px 0;
      width: 374px; }
      ul.trouble_list2 li a {
        width: 374px;
        height: 154px;
        display: block;
        background-color: #f1fcd4;
        border-radius: 6px;
        border-bottom: #d3ddb9 5px solid;
        box-sizing: border-box;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: space-around;
        justify-content: center;
        -webkit-align-items: center;
        align-items: center;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        text-decoration: none; }
        ul.trouble_list2 li a span.icon {
          background-color: #549b6a;
          color: #ffffff;
          width: 104px;
          height: 104px;
          border-radius: 50%;
          display: -webkit-flex;
          display: flex;
          -webkit-justify-content: center;
          justify-content: center;
          -webkit-align-items: center;
          align-items: center;
          margin: 0 0 0 15px; }
          ul.trouble_list2 li a span.icon i {
            font-size: 7rem; }
        ul.trouble_list2 li a p {
          text-align: center;
          font-size: 2.4rem;
          color: #333333;
          margin: 15px 0 0 15px;
          width: 180px;
          font-weight: bold;
          line-height: 140%; }
          ul.trouble_list2 li a p span {
            display: block;
            color: #549b6a;
            font-size: 1.4rem;
            font-weight: normal; }
        ul.trouble_list2 li a:hover {
          transition: all 0.3s ease 0s;
          background-color: #549b6a; }
          ul.trouble_list2 li a:hover span.icon {
            border: #ffffff 1px solid; }
          ul.trouble_list2 li a:hover p {
            color: #ffffff; }
            ul.trouble_list2 li a:hover p span {
              color: #ffffff; } }
/* -----------------------------------------------------------
　アクセス
----------------------------------------------------------- */
.access_frame {
  background: url("../images/index_02.jpg") no-repeat;
  background-position: center top;
  background-size: cover;
  padding: 2rem 0;
  box-sizing: border-box;
  width: 100%;
  height: auto; }
  .access_frame .access_area {
    margin: 4rem 0 0 0; }
    .access_frame .access_area .access_box {
      background-color: #ffffff;
      border-radius: 0.5rem;
      overflow: visible;
      position: relative;
      width: 96%;
      height: auto;
      margin: 0 auto 4rem auto;
      padding: 13vw 1rem 2rem 1rem;
      box-sizing: border-box; }
      .access_frame .access_area .access_box .access_icon {
        width: 14%;
        height: 13vw;
        border-radius: 50%;
        background-color: #c9e1a3;
        color: #549b6a;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: center;
        justify-content: center;
        -webkit-align-items: center;
        align-items: center;
        position: absolute;
        top: -6.5vw;
        left: 0;
        right: 0;
        margin: 0 auto; }
        .access_frame .access_area .access_box .access_icon i {
          font-size: 2.5rem; }
      .access_frame .access_area .access_box .access_title {
        text-align: center;
        color: #549b6a;
        font-size: 2rem;
        font-weight: bold;
        margin: 0 0 1rem 0; }
      .access_frame .access_area .access_box .access_text {
        text-align: center;
        margin: 0; }
    .access_frame .access_area .box2 {
      margin: 0 auto 0 auto; }

@media screen and (min-width: 768px), print {
  .access_frame {
    background: url("../images/index_02.jpg") no-repeat;
    background-position: center top;
    background-size: cover;
    padding: 40px 0;
    box-sizing: border-box;
    width: 100%;
    height: 334px; }
    .access_frame .access_area {
      margin: 24px auto 0 auto;
      width: 1180px;
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: space-between;
      justify-content: space-between;
      -webkit-flex-direction: row;
      flex-direction: row;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap; }
      .access_frame .access_area .access_box {
        background-color: #ffffff;
        border-radius: 0.5rem;
        overflow: visible;
        position: relative;
        width: 570px;
        height: 165px;
        margin: 0;
        padding: 50px 0 0 0;
        box-sizing: border-box; }
        .access_frame .access_area .access_box .access_icon {
          width: 64px;
          height: 64px;
          border-radius: 50%;
          background-color: #c9e1a3;
          color: #549b6a;
          display: -webkit-flex;
          display: flex;
          -webkit-justify-content: center;
          justify-content: center;
          -webkit-align-items: center;
          align-items: center;
          position: absolute;
          top: -24px;
          left: 0;
          right: 0;
          margin: 0 auto; }
          .access_frame .access_area .access_box .access_icon i {
            font-size: 3.5rem; }
        .access_frame .access_area .access_box .access_title {
          text-align: center;
          color: #549b6a;
          font-size: 2.4rem;
          font-weight: bold;
          margin: 0 0 2px 0; }
        .access_frame .access_area .access_box .access_text {
          text-align: center;
          margin: 0;
          font-size: 1.8rem; }
      .access_frame .access_area .box2 {
        margin: 0; } }
/*-----------------------------------------------------------
 医院概要
----------------------------------------------------------- */
.overview {
  width: 100%;
  padding: 2rem 0;
  margin: 0;
  background-color: #f1fcd4; }
  .overview .overview_frame .overview_left h2.overview_title {
    text-align: center; }
    .overview .overview_frame .overview_left h2.overview_title img {
      width: 80%;
      display: block;
      margin: 0 auto; }
  .overview .overview_frame .overview_left .overview_tel {
    font-weight: bold;
    line-height: 100%;
    text-align: center;
    margin: 1rem auto 0 auto;
    background-color: #549b6a;
    width: 80%;
    height: 12vw;
    border-radius: 2rem;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap; }
    .overview .overview_frame .overview_left .overview_tel i {
      color: #ffffff;
      font-size: 2.2rem;
      margin: 0; }
    .overview .overview_frame .overview_left .overview_tel span {
      color: #ffffff;
      font-size: 2.2rem;
      font-family: 'roboto';
      font-weight: normal; }
    .overview .overview_frame .overview_left .overview_tel a {
      color: #ffffff;
      font-size: 2.2rem;
      font-family: 'roboto';
      font-weight: normal;
      text-decoration: none; }
  .overview .overview_frame .overview_left .overview_address {
    text-align: center;
    margin: 1rem 0 1rem 0; }
  .overview .overview_frame .overview_left dl {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    color: #ffffff;
    margin: 0 auto 1rem auto;
    line-height: 140%;
    width: 96%; }
    .overview .overview_frame .overview_left dl dt {
      width: 27%;
      margin: 0 0 1.5rem 0;
      padding: 0.4rem 0;
      background-color: #81bd26;
      color: #f1ffdb;
      font-size: 1.1rem;
      text-align: center;
      display: block;
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: center;
      justify-content: center;
      -webkit-align-items: center;
      align-items: center;
      height: 9vw; }
    .overview .overview_frame .overview_left dl dd {
      width: 68%;
      margin: 0 0 1.5rem 0;
      font-size: 1.1rem;
      line-height: 140%;
      padding: 1rem 0 0 0;
      box-sizing: border-box;
      color: #333333;
      display: block;
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: flex-start;
      justify-content: flex-start;
      -webkit-align-items: center;
      align-items: center;
      height: 9vw;
      line-height: 140%; }
  .overview .overview_frame .overview_left table.timetable {
    width: 96%; }
  .overview .overview_frame .overview_left .notice_time {
    width: 96%;
    margin: 4px auto 0 auto; }
  .overview .overview_frame .overview_right {
    margin: 2rem 0 0 0; }
    .overview .overview_frame .overview_right iframe.googlemap {
      width: 96%;
      height: 500px;
      border: none;
      display: block;
      margin: 0 auto; }

@media screen and (min-width: 768px), print {
  .overview {
    width: 100%;
    padding: 60px 0;
    margin: 0;
    background-color: #f1fcd4; }
    .overview .overview_frame {
      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: 1180px;
      margin: 0 auto; }
      .overview .overview_frame .overview_left {
        width: 550px; }
        .overview .overview_frame .overview_left h2.overview_title {
          text-align: center; }
          .overview .overview_frame .overview_left h2.overview_title img {
            width: 357px;
            display: block;
            margin: 0 auto; }
        .overview .overview_frame .overview_left .overview_tel {
          font-weight: bold;
          line-height: 100%;
          text-align: center;
          margin: 10px auto 0 auto;
          background-color: #549b6a;
          width: 450px;
          height: 64px;
          border-radius: 3rem;
          display: -webkit-flex;
          display: flex;
          -webkit-justify-content: center;
          justify-content: center;
          -webkit-align-items: center;
          align-items: center;
          -webkit-flex-wrap: wrap;
          flex-wrap: wrap; }
          .overview .overview_frame .overview_left .overview_tel i {
            color: #ffffff;
            font-size: 3rem;
            margin: 0; }
          .overview .overview_frame .overview_left .overview_tel span {
            color: #ffffff;
            font-size: 3rem;
            font-family: 'roboto';
            font-weight: normal; }
          .overview .overview_frame .overview_left .overview_tel a {
            color: #ffffff;
            font-size: 3rem;
            font-family: 'roboto';
            font-weight: normal;
            text-decoration: none; }
        .overview .overview_frame .overview_left .overview_address {
          text-align: center;
          margin: 16px 0 18px 0; }
        .overview .overview_frame .overview_left dl {
          display: -webkit-flex;
          display: flex;
          -webkit-justify-content: space-between;
          justify-content: space-between;
          -webkit-flex-direction: row;
          flex-direction: row;
          -webkit-flex-wrap: wrap;
          flex-wrap: wrap;
          color: #ffffff;
          margin: 0 auto 22px auto;
          line-height: 140%;
          width: 450px; }
          .overview .overview_frame .overview_left dl dt {
            width: 120px;
            margin: 0 0 10px 0;
            padding: 0;
            background-color: #81bd26;
            color: #f1ffdb;
            font-size: 1.6rem;
            text-align: center;
            display: block;
            display: -webkit-flex;
            display: flex;
            -webkit-justify-content: center;
            justify-content: center;
            -webkit-align-items: center;
            align-items: center;
            height: 34px; }
          .overview .overview_frame .overview_left dl dd {
            width: 312px;
            margin: 0 0 10px 0;
            font-size: 1.6rem;
            line-height: 140%;
            padding: 8px 0 0 0;
            box-sizing: border-box;
            color: #333333;
            display: block;
            display: -webkit-flex;
            display: flex;
            -webkit-justify-content: flex-start;
            justify-content: flex-start;
            -webkit-align-items: center;
            align-items: center;
            height: 34px;
            line-height: 140%; }
        .overview .overview_frame .overview_left table.timetable {
          width: 450px; }
        .overview .overview_frame .overview_left .notice_time {
          width: 450px;
          margin: 2px auto 0 auto; }
      .overview .overview_frame .overview_right {
        width: 590px;
        margin: 0; }
        .overview .overview_frame .overview_right iframe.googlemap {
          width: 590px;
          height: 578px;
          border: none;
          display: block;
          margin: 0; } }
/* -----------------------------------------------------------
　フッター
----------------------------------------------------------- */
footer {
  background-color: #ffffff; }
  footer .footer_frame {
    margin: 2rem auto 0 auto;
    width: 96%; }
    footer .footer_frame ul.footer_list {
      list-style-type: none;
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: space-between;
      justify-content: space-between;
      -webkit-flex-direction: row;
      flex-direction: row;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap;
      width: 100%;
      margin: 0 0 0 0; }
      footer .footer_frame ul.footer_list li {
        width: 45%;
        display: block;
        margin: 0 0 1rem 0; }
        footer .footer_frame ul.footer_list li a {
          color: #333333;
          font-size: 1.2rem;
          display: block;
          width: 100%;
          text-align: center;
          text-decoration: none; }
        footer .footer_frame ul.footer_list li.home {
          display: none; }
    footer .footer_frame p {
      background-color: #81bd26;
      color: #ffffff;
      text-align: center;
      font-size: 1.2rem;
      padding: 0.4rem 0;
      margin: 0 auto 1rem auto;
      width: 96%;
      border-radius: 0.5rem; }
  footer .copyright {
    margin: 0;
    text-align: center;
    padding: 1rem 0;
    color: #ffffff;
    font-size: 1.2rem;
    height: auto;
    letter-spacing: 0.05em;
    background-color: #81bd26; }
    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: #81bd26;
  z-index: 999999; }
  .footer_link a.footer_tel {
    width: 70%;
    margin: 0;
    color: #81bd26;
    text-align: center;
    font-size: 1.6rem;
    font-weight: normal;
    letter-spacing: 0.1em;
    display: block;
    background-color: #ffffff;
    padding: 1rem 0;
    text-decoration: none;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    border-radius: 5px; }
  .footer_link .smoothScrolls {
    background-color: #ffffff;
    width: 25%;
    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: #81bd26;
      padding: 0.8rem 0;
      font-weight: normal;
      text-decoration: none;
      font-size: 1.6rem; }

@media screen and (min-width: 768px), print {
  footer {
    width: 100%;
    height: 190px;
    box-sizing: border-box;
    padding: 0;
    margin: 0;
    overflow: hidden; }
    footer .footer_frame {
      margin: 0 auto;
      width: 1200px;
      height: 140px;
      padding: 30px 0 0 0;
      box-sizing: border-box; }
      footer .footer_frame ul.footer_list {
        list-style-type: none;
        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;
        width: 100%;
        margin: 0 auto;
        width: 1200px; }
        footer .footer_frame ul.footer_list li {
          width: auto;
          display: block;
          margin: 0 12px 16px 0;
          padding: 0 12px 0 0;
          border-right: #333333 1px solid; }
          footer .footer_frame ul.footer_list li a {
            color: #333333;
            font-size: 1.6rem;
            display: block;
            width: 100%;
            text-align: center;
            text-decoration: 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.home {
            display: none; }
          footer .footer_frame ul.footer_list li:last-child {
            border-right: none; }
      footer .footer_frame p {
        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: #81bd26;
      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; }
      footer .copyright a {
        color: #ffffff;
        text-decoration: none;
        letter-spacing: 0.1em; }

  .footer_link {
    display: none; } }
/* -----------------------------------------------------------
　ページトップへ
----------------------------------------------------------- */
#pagetop_position {
  display: none; }

@media screen and (min-width: 768px), print {
  #pagetop_position {
    display: block;
    margin: 0;
    padding: 0; }

  #linkpagetop img {
    width: 50px;
    height: auto;
    display: block; }

  #pagetop {
    position: fixed;
    bottom: 98px;
    right: 0;
    z-index: 999999;
    left: 50%;
    margin: 0 0 0 600px; } }
@media screen and (min-width: 768px) and (max-width: 1500px) {
  #pagetop_position {
    display: block; }

  #pagetop {
    position: fixed;
    bottom: 98px;
    left: 93%;
    margin: 0 0 0 0;
    text-align: center; } }
/*-----------------------------------------------------------
 インポート
----------------------------------------------------------- */
/*ハンバーガー*/
.drawr {
  display: none;
  position: absolute;
  top: 22vw;
  width: 100%;
  padding: 0;
  margin: 0 auto;
  height: auto;
  z-index: 999999;
  border-top: #549b6a 1px solid;
  background-color: #f1ffdb; }
  .drawr ul.hbg {
    list-style-type: none;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap; }
    .drawr ul.hbg li {
      width: 50%;
      text-align: center; }
      .drawr ul.hbg li a {
        background-color: #f1ffdb;
        color: #42361b;
        font-size: 1.4rem;
        text-decoration: none;
        padding: 1rem 0;
        border-bottom: #81bd26 1px dotted;
        box-sizing: border-box;
        letter-spacing: 0.05em;
        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;
        line-height: 140%; }
      .drawr ul.hbg li:nth-child(odd) a {
        border-right: #81bd26 1px dotted; }
  .drawr p.subtitle {
    background-color: #81bd26;
    color: #ffffff;
    text-align: center;
    margin: 0;
    padding: 0.6rem 0;
    box-sizing: border-box; }

.openNav {
  display: block; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.container {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 14%;
  position: absolute;
  cursor: pointer;
  right: 2%;
  top: 2vw;
  padding: 0 0 0.6rem 0;
  background-color: #81bd26;
  border: #81bd26 1px solid;
  z-index: 99999; }

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

h2.top_title {
  color: #42361b;
  font-size: 2.4rem;
  font-weight: normal;
  text-align: center;
  line-height: 120%; }
  h2.top_title::after {
    content: url("../images/h2_line.png");
    display: block;
    margin: -2vw 0 0 0; }
h2.low {
  color: #42361b;
  font-size: 2.4rem;
  font-weight: normal;
  text-align: center;
  line-height: 120%;
  margin: 4rem 0 1rem 0; }
  h2.low::after {
    content: url("../images/h2_line.png");
    display: block;
    margin: -2vw 0 0 0; }
h2.first {
  margin: 0 0 1rem 0; }

h3.low {
  color: #ffffff;
  background-color: #81bd26;
  border-radius: 0.5rem;
  box-sizing: border-box;
  font-weight: normal;
  font-size: 2rem;
  line-height: 120%;
  padding: 0.8rem;
  margin: 2rem 0 1rem 0; }
h3.first {
  margin: 0 0 1rem 0; }

h4 {
  color: #333333;
  box-sizing: border-box;
  font-weight: normal;
  font-size: 1.9rem;
  line-height: 120%;
  border-bottom: #dddddd 1px dashed;
  padding: 0 0 0.6rem 0;
  margin: 2rem 0 1rem 0; }
  h4 span {
    display: block;
    border-left: #549b6a 5px solid;
    padding: 0 0 0 0.4rem;
    box-sizing: border-box; }
  h4.first {
    margin: 0 0 1rem 0; }

h5 {
  color: #333333;
  font-size: 1.8rem;
  font-weight: normal;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 2rem 0 1rem 0; }
  h5 i {
    width: 8%;
    color: #549b6a; }
  h5 span {
    width: 92%; }
  h5.first {
    margin: 0 0 1rem 0; }

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

@media screen and (min-width: 768px), print {
  h1 {
    margin: 0; }

  h2.top_title {
    color: #42361b;
    font-size: 3rem;
    font-weight: normal;
    text-align: center;
    line-height: 120%; }
    h2.top_title::after {
      content: url("../images/h2_line.png");
      display: block;
      margin: -12px 0 0 0; }
  h2.low {
    color: #42361b;
    font-size: 3rem;
    font-weight: normal;
    text-align: center;
    line-height: 120%;
    margin: 80px 0 18px 0; }
    h2.low::after {
      content: url("../images/h2_line.png");
      display: block;
      margin: -12px 0 0 0; }
  h2.first {
    margin: 0 0 18px 0; }

  h3.low {
    color: #ffffff;
    background-color: #81bd26;
    border-radius: 0.5rem;
    box-sizing: border-box;
    font-weight: normal;
    font-size: 2.4rem;
    line-height: 120%;
    padding: 12px 16px;
    margin: 50px 0 18px 0; }
  h3.first {
    margin: 0 0 18px 0; }

  h4 {
    color: #333333;
    box-sizing: border-box;
    font-weight: normal;
    font-size: 2.2rem;
    line-height: 120%;
    border-bottom: #dddddd 1px dashed;
    padding: 0 0 7px 0;
    margin: 30px 0 18px 0; }
    h4 span {
      display: block;
      border-left: #549b6a 5px solid;
      padding: 0 0 0 16px;
      box-sizing: border-box; }
    h4.first {
      margin: 0 0 18px 0; }

  h5 {
    color: #333333;
    font-size: 1.8rem;
    font-weight: normal;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    -webkit-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 30px 0 18px 0; }
    h5 i {
      width: 25px;
      color: #549b6a; }
    h5 span {
      width: 775px; }
    h5.first {
      margin: 0 0 18px 0; }

  p {
    font-size: 1.6rem;
    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_center {
  margin: 0 0 1rem 0;
  text-align: center; }
  .img_center img {
    width: 100%;
    height: auto; }

/*二つ*/
.img_two {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-flex-direction: column;
  flex-direction: column; }
  .img_two img {
    width: 70%;
    margin: 0 auto 20px auto;
    display: block; }

@media screen and (min-width: 768px), print {
  .img_right {
    float: right;
    margin: 0 0 20px 10px; }
    .img_right img {
      width: 330px;
      height: auto; }

  .img_center {
    float: none;
    margin: 0 0 20px 0;
    text-align: center; }
    .img_center img {
      width: auto;
      height: auto; }

  /*二つ*/
  .img_two {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-direction: row;
    flex-direction: row; }
    .img_two img {
      width: 540px;
      margin: 0 auto 20px auto;
      display: block; } }
/*リスト*/
/* -----------------------------------------------------------
　リスト
----------------------------------------------------------- */
/*標準*/
ul.list_normal {
  line-height: 130%;
  font-size: 1.4rem;
  list-style-type: disc;
  margin: 0 0 1rem 0; }
  ul.list_normal li {
    margin: 0 0 1.4rem 1.8rem;
    padding: 0; }

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

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 1rem 0;
    box-sizing: border-box;
    background: url(../images/maru.png) no-repeat;
    background-position: left top 0.4rem;
    background-size: 1rem;
    padding: 0 0 0 1.8rem;
    line-height: 140%; }
    ul.list_maru_two li a {
      color: #81bd26;
      text-decoration: none; }
    ul.list_maru_two li span {
      color: #81bd26; }

/*なし*/
ul.list_none {
  line-height: 160%;
  font-size: 1.4rem;
  list-style-type: none;
  margin: 0; }
  ul.list_none li {
    margin: 0 0 1rem 0;
    padding: 0 0 0 0.5rem; }
    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 1rem 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 1rem 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 1rem 25px; }

@media screen and (min-width: 768px), print {
  /*標準*/
  ul.list_normal {
    line-height: 160%;
    font-size: 1.6rem;
    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.6rem;
          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.6rem;
      list-style-type: none;
      margin: 0 0 15px 0;
      box-sizing: border-box;
      background: url(../images/maru.png) no-repeat;
      background-position: left top 5px;
      background-size: 12px;
      padding: 0 0 0 25px; }
      ul.list_maru li ul {
        margin: 2rem 0 0 0; }
        ul.list_maru li ul li {
          background: none;
          list-style-type: none;
          margin: 0 0 10px 0;
          padding: 0 0 0 0;
          line-height: 160%; }
      ul.list_maru li a {
        color: #81bd26;
        text-decoration: underline; }
      ul.list_maru li span {
        color: #81bd26; }

  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.6rem;
      list-style-type: none;
      margin: 0 0 15px 0;
      box-sizing: border-box;
      background: url(../images/maru.png) no-repeat;
      background-position: left top 5px;
      background-size: 12px;
      padding: 0 0 0 25px;
      line-height: 140%; }
      ul.list_maru_two li a {
        color: #81bd26;
        text-decoration: underline; }
      ul.list_maru_two li span {
        color: #81bd26; }

  /*なし*/
  ul.list_none {
    line-height: 160%;
    font-size: 1.6rem;
    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.6rem;
      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.6rem;
    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.6rem;
      list-style-type: disc;
      margin: 0 0 10px 25px; } }
/* -----------------------------------------------------------
　定義リスト
----------------------------------------------------------- */
dl.bio_list {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  font-size: 1.4rem;
  box-sizing: border-box;
  margin: 0 0 2rem 0;
  line-height: 160%; }
  dl.bio_list dt {
    width: 100%;
    margin: 0 0 0 0;
    font-weight: bold; }
    dl.bio_list dt span {
      display: inline;
      text-align: left;
      padding: 0 0 0 0;
      box-sizing: border-box; }
  dl.bio_list dd {
    width: 100%;
    margin: 0 0 2rem 0; }

dl.num_list {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  font-size: 1.4rem;
  box-sizing: border-box;
  margin: 0 0 20px 0;
  line-height: 120%; }
  dl.num_list dt {
    width: 8%;
    margin: 0 0 0 0; }
  dl.num_list dd {
    width: 90%;
    margin: 0 0 20px 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: #e8fbcb;
    padding: 1rem;
    box-sizing: border-box;
    border: #cccccc 1px solid; }
  dl.title_box dd {
    width: 100%;
    margin: 0;
    padding: 1rem;
    box-sizing: border-box;
    border-left: #cccccc 1px solid;
    border-right: #cccccc 1px solid;
    border-bottom: #cccccc 1px solid; }

@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.6rem;
    box-sizing: border-box;
    line-height: 160%;
    width: 800px; }
    dl.bio_list dt {
      width: 140px;
      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: 660px;
      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.6rem;
    box-sizing: border-box;
    line-height: 160%;
    width: 600px; }
    dl.num_list dt {
      width: 35px;
      margin: 0 0 20px 0;
      font-weight: normal; }
    dl.num_list dd {
      width: 565px;
      margin: 0 0 20px 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.6rem;
    box-sizing: border-box;
    margin: 0 0 20px 0;
    line-height: 160%; }
    dl.title_box dt {
      width: 100%;
      margin: 0;
      background-color: #e8fbcb;
      padding: 15px;
      box-sizing: border-box;
      border: #cccccc 1px solid; }
    dl.title_box dd {
      width: 100%;
      margin: 0;
      padding: 15px;
      box-sizing: border-box;
      border-left: #cccccc 1px solid;
      border-right: #cccccc 1px solid;
      border-bottom: #cccccc 1px solid; } }
/*アサイド*/
aside {
  display: none; }

@media screen and (min-width: 768px), print {
  aside {
    display: block;
    width: 320px;
    margin: 0 0 60px 0; }
    aside p.aside_title {
      width: 320px;
      height: 50px;
      background-color: #81bd26;
      font-size: 2.4rem;
      font-weight: normal;
      color: #ffffff;
      letter-spacing: 0.2em;
      margin: 0;
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: center;
      justify-content: center;
      -webkit-align-items: center;
      align-items: center;
      border-top-left-radius: 8px;
      border-top-right-radius: 8px; }
    aside ul.aside_list {
      list-style-type: none; }
      aside ul.aside_list li {
        margin: 0 0 0 0;
        width: 320px; }
        aside ul.aside_list li a {
          width: 320px;
          height: 50px;
          margin: 0;
          padding: 0 0 0 42px;
          box-sizing: border-box;
          color: #42361b;
          font-size: 2rem;
          background: url(../images/aside_arrow.png) no-repeat;
          background-position: left 24px center;
          background-color: #f1ffdb;
          border-bottom: #81bd26 1px dotted;
          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 {
            background: url(../images/aside_arrow2.png) no-repeat;
            background-position: left 24px center;
            background-color: #81bd26;
            color: #ffffff;
            transition: all 0.3s ease 0s; } }
/*診療時間*/
/* -----------------------------------------------------------
　診療時間
----------------------------------------------------------- */
table.timetable {
  padding: 0;
  margin: 0 auto;
  vertical-align: middle;
  width: 100%;
  text-align: center;
  border-collapse: separate;
  box-sizing: border-box;
  line-height: 140%; }
  table.timetable tr th {
    box-sizing: border-box;
    font-weight: normal;
    font-size: 3.4vw;
    padding: 0.8rem 0;
    vertical-align: middle;
    color: #ffffff;
    background-color: #81bd26;
    width: 10%;
    border-right: #ffffff 1px solid; }
    table.timetable tr th:first-child {
      border-top-left-radius: 5px; }
    table.timetable tr th:last-child {
      border-top-right-radius: 5px;
      border-right: #81bd26 1px solid; }
  table.timetable tr td {
    box-sizing: border-box;
    font-weight: normal;
    font-size: 3.4vw;
    padding: 0.8rem 0;
    vertical-align: middle;
    background-color: #ffffff;
    border-left: #549b6a 1px solid;
    border-bottom: #549b6a 1px solid;
    color: #549b6a; }
    table.timetable tr td:last-child {
      border-right: #549b6a 1px solid; }
    table.timetable tr td.bblr {
      border-bottom-left-radius: 5px; }
    table.timetable tr td.bbrr {
      border-bottom-right-radius: 5px; }
    table.timetable tr td.time {
      width: 28%;
      text-align: center;
      color: #333333; }

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

@media screen and (min-width: 768px), print {
  table.timetable {
    padding: 0;
    margin: 0 auto;
    vertical-align: middle;
    width: 100%;
    text-align: center;
    border-collapse: separate;
    box-sizing: border-box;
    line-height: 140%;
    border-top-right-radius: 5px; }
    table.timetable tr th {
      box-sizing: border-box;
      font-weight: normal;
      font-size: 1.6rem;
      padding: 13px 0;
      vertical-align: middle;
      color: #ffffff;
      background-color: #81bd26;
      width: auto;
      border-right: #ffffff 1px solid; }
      table.timetable tr th:first-child {
        border-top-left-radius: 5px; }
      table.timetable tr th:last-child {
        border-top-right-radius: 5px;
        border-right: #81bd26 1px solid; }
    table.timetable tr td {
      box-sizing: border-box;
      font-weight: normal;
      font-size: 1.6rem;
      padding: 12px 0;
      vertical-align: middle;
      background-color: #ffffff;
      border-left: #549b6a 1px solid;
      border-bottom: #549b6a 1px solid;
      color: #549b6a; }
      table.timetable tr td:last-child {
        border-right: #549b6a 1px solid; }
      table.timetable tr td.time {
        width: 118px;
        text-align: center;
        color: #333333; }
      table.timetable tr td.bblr {
        border-bottom-left-radius: 5px; }
      table.timetable tr td.bbrr {
        border-bottom-right-radius: 5px; }

  .notice_time {
    font-size: 1.6rem;
    margin: 2px 0 0 0;
    width: 100%;
    color: #333333;
    padding: 0;
    box-sizing: border-box;
    line-height: 140%; } }
/*下層*/
/*矢印*/
.arrow {
  width: 0;
  height: 0;
  border-left: 60px solid transparent;
  border-right: 60px solid transparent;
  border-top: 30px solid #81bd26;
  text-align: center;
  display: block;
  margin: 30px auto; }

.arrow2 {
  width: 0;
  height: 0;
  border-left: 60px solid transparent;
  border-right: 60px solid transparent;
  border-top: 30px solid #42361b;
  text-align: center;
  display: block;
  margin: 30px auto; }

.text_bold {
  font-weight: bold; }

.link_text {
  color: #549b6a; }

.red_text {
  color: #ff0000; }

.underline_text {
  text-decoration: underline; }

.emphasis {
  background-color: #ffdde0;
  padding: 1rem;
  box-sizing: border-box;
  margin: 0 0 2rem 0; }
  .emphasis p {
    margin: 0; }

@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 #81bd26;
    text-align: center;
    display: block;
    margin: 30px auto; }

  .arrow2 {
    width: 0;
    height: 0;
    border-left: 60px solid transparent;
    border-right: 60px solid transparent;
    border-top: 30px solid #42361b;
    text-align: center;
    display: block;
    margin: 30px auto; }

  .text_bold {
    font-weight: bold; }

  .link_text {
    color: #549b6a; }
    .link_text:hover {
      opacity: 0.6; }

  .red_text {
    color: #ff0000; }

  .underline_text {
    text-decoration: underline; }

  .emphasis {
    background-color: #ffdde0;
    padding: 20px;
    box-sizing: border-box;
    margin: 0 0 30px 0; }
    .emphasis p {
      margin: 0; }

  .two_box {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap; }
    .two_box section {
      width: 45%; } }
/* -----------------------------------------------------------
　院長紹介
----------------------------------------------------------- */
figure.doctor_img {
  margin: 0 0 1rem 0;
  text-align: center; }
  figure.doctor_img img {
    width: 70%;
    height: auto; }

.doctor_name {
  text-align: right; }
  .doctor_name span {
    font-size: 1.8rem; }

@media screen and (min-width: 768px), print {
  figure.doctor_img {
    float: right;
    margin: 0 0 0 20px;
    text-align: right; }
    figure.doctor_img img {
      width: 400px;
      height: auto; }

  .doctor_text {
    width: 580px;
    text-align: justify; }

  .doctor_name {
    text-align: right; }
    .doctor_name span {
      font-size: 2.2rem; } }
/*-----------------------------------------------------------
 診療時間・アクセス
----------------------------------------------------------- */
iframe.accessmap {
  width: 98%;
  height: 500px;
  margin: 0 auto; }

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;
  color: #ffffff;
  margin: 0 auto 1rem auto;
  line-height: 140%;
  width: 96%; }
  dl.access_info dt {
    width: 27%;
    margin: 0 0 1.5rem 0;
    padding: 0.4rem 0;
    background-color: #81bd26;
    color: #f1ffdb;
    font-size: 1.1rem;
    text-align: center;
    display: block;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    height: 9vw; }
  dl.access_info dd {
    width: 68%;
    margin: 0 0 1.5rem 0;
    font-size: 1.1rem;
    line-height: 140%;
    padding: 1rem 0 0 0;
    box-sizing: border-box;
    color: #333333;
    display: block;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    -webkit-align-items: center;
    align-items: center;
    height: 9vw;
    line-height: 140%; }
    dl.access_info dd.access_tel span {
      color: #333333; }
    dl.access_info dd.access_tel a {
      color: #333333;
      text-decoration: none; }

figure.access_root {
  margin: 0 0 2rem 0; }
  figure.access_root img {
    width: 100%; }
  figure.access_root figcaption {
    color: #333333;
    font-size: 1.4rem;
    background-color: #e8fbcb;
    padding: 0.6rem;
    box-sizing: border-box;
    line-height: 130%;
    margin: -2px 0 0 0; }

.parking img {
  width: 100%;
  margin: 0 0 2rem 0; }

@media screen and (min-width: 768px), print {
  iframe.accessmap {
    width: 100%;
    height: 500px;
    margin: 0; }

  .accessmap_link {
    width: 340px;
    display: block;
    color: #81bd26;
    text-align: center;
    text-decoration: none;
    font-size: 1.6rem;
    padding: 8px 0;
    border: #81bd26 1px solid;
    margin: 24px auto 0 auto;
    border-radius: 2rem; }
    .accessmap_link i {
      margin: 0 0 0 5px; }
    .accessmap_link:hover {
      opacity: 0.6;
      transition: all 0.3s ease 0s; }

  .access_tel span {
    color: #333333; }
  .access_tel a {
    color: #333333;
    text-decoration: none; }

  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;
    color: #ffffff;
    margin: 0 auto 22px auto;
    line-height: 140%;
    width: 800px; }
    dl.access_info dt {
      width: 120px;
      margin: 0 0 10px 0;
      padding: 0;
      background-color: #81bd26;
      color: #f1ffdb;
      font-size: 1.6rem;
      text-align: center;
      display: block;
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: center;
      justify-content: center;
      -webkit-align-items: center;
      align-items: center;
      height: 34px; }
    dl.access_info dd {
      width: 665px;
      margin: 0 0 10px 0;
      font-size: 1.6rem;
      line-height: 140%;
      padding: 8px 0 0 0;
      box-sizing: border-box;
      color: #333333;
      display: block;
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: flex-start;
      justify-content: flex-start;
      -webkit-align-items: center;
      align-items: center;
      height: 34px;
      line-height: 140%; }

  figure.access_root {
    margin: 0 0 2rem 0; }
    figure.access_root img {
      width: 100%; }
    figure.access_root figcaption {
      color: #333333;
      font-size: 1.6rem;
      background-color: #e8fbcb;
      padding: 1rem;
      box-sizing: border-box;
      line-height: 130%;
      margin: -2px 0 0 0; }

  .parking {
    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; }
    .parking img {
      width: 380px;
      margin: 0;
      display: block; } }
/* -----------------------------------------------------------
　初めての方へ
----------------------------------------------------------- */
/*テーブル*/
table.low_timetable {
  padding: 0px;
  width: 100%;
  margin: 0 auto 1rem auto;
  border-collapse: collapse;
  box-sizing: border-box;
  line-height: 140%;
  font-size: 1.4rem; }
  table.low_timetable tr th {
    background-color: #f1ffdb;
    vertical-align: middle;
    text-align: center;
    width: auto;
    padding: 0.8rem;
    border: #333333 1px solid;
    width: 20%;
    font-weight: normal;
    color: #ffffff; }
  table.low_timetable tr td {
    vertical-align: middle;
    text-align: left;
    border: #333333 1px solid;
    padding: 0.8rem;
    background-color: #ffffff;
    width: 80%;
    color: #333333; }

@media screen and (min-width: 768px), print {
  /*テーブル*/
  table.low_timetable {
    padding: 0px;
    width: 50%;
    margin: 0 0 1rem 0;
    border-collapse: collapse;
    box-sizing: border-box;
    line-height: 140%;
    font-size: 1.6rem; }
    table.low_timetable tr th {
      background-color: #f1ffdb;
      vertical-align: middle;
      text-align: center;
      width: auto;
      padding: 15px;
      border: #333333 1px solid;
      width: 30%;
      font-weight: normal;
      color: #ffffff; }
    table.low_timetable tr td {
      vertical-align: middle;
      text-align: left;
      border: #333333 1px solid;
      padding: 15px;
      background-color: #ffffff;
      width: 70%;
      color: #333333; } }
/* -----------------------------------------------------------
　クリニック紹介
----------------------------------------------------------- */
.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 {
      text-align: center;
      font-size: 1.4rem; }

@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: 48%;
      margin: 0 0 60px 0; }
      .machine_frame figure img {
        width: 400px;
        display: block;
        margin: 0 auto 1rem auto; }
      .machine_frame figure figcaption {
        text-align: center;
        font-size: 1.6rem; } }
/* -----------------------------------------------------------
　下層
----------------------------------------------------------- */
/*テーブル*/
table.low_table {
  padding: 0px;
  width: 100%;
  margin: 0 auto 1rem auto;
  border-collapse: collapse;
  box-sizing: border-box;
  line-height: 140%;
  font-size: 1.4rem; }
  table.low_table tr th {
    background-color: #ffdde0;
    vertical-align: middle;
    text-align: center;
    width: auto;
    padding: 0.8rem;
    border: #333333 1px solid;
    width: 50%;
    font-weight: normal;
    color: #333333; }
  table.low_table tr td {
    vertical-align: middle;
    text-align: left;
    border: #333333 1px solid;
    padding: 0.8rem;
    background-color: #ffffff;
    width: 50%;
    color: #333333; }

table.price_table {
  vertical-align: middle;
  width: 100%;
  border-collapse: collapse;
  box-sizing: border-box;
  border: #333333 1px solid;
  font-size: 1.4rem;
  line-height: 130%; }
  table.price_table tr {
    border-bottom: #333333 1px solid; }
    table.price_table tr th {
      width: 40%;
      padding: 0.6rem;
      box-sizing: border-box;
      border-right: #333333 1px solid;
      text-align: left;
      font-weight: normal;
      vertical-align: middle; }
    table.price_table tr td {
      width: 60%;
      padding: 0.6rem;
      box-sizing: border-box;
      text-align: left;
      vertical-align: middle;
      text-align: right; }

.two_img_list figure {
  width: 90%;
  margin: 0 auto 4rem auto; }
  .two_img_list figure img {
    width: 100%; }

@media screen and (min-width: 768px), print {
  /*テーブル*/
  table.low_table {
    padding: 0px;
    width: 100%;
    margin: 0 auto 1rem auto;
    border-collapse: collapse;
    box-sizing: border-box;
    line-height: 140%;
    font-size: 1.6rem; }
    table.low_table tr th {
      background-color: #ffdde0;
      vertical-align: middle;
      text-align: center;
      width: auto;
      padding: 14px;
      border: #333333 1px solid;
      width: 50%;
      font-weight: normal;
      color: #333333; }
    table.low_table tr td {
      vertical-align: middle;
      text-align: left;
      border: #333333 1px solid;
      padding: 14px;
      background-color: #ffffff;
      width: 50%;
      color: #333333; }

  table.price_table {
    vertical-align: middle;
    width: 80%;
    border-collapse: collapse;
    box-sizing: border-box;
    border: #333333 1px solid;
    font-size: 1.8rem;
    line-height: 130%; }
    table.price_table tr {
      border-bottom: #333333 1px solid; }
      table.price_table tr th {
        width: 40%;
        padding: 1rem;
        box-sizing: border-box;
        border-right: #333333 1px solid;
        text-align: left;
        font-weight: normal;
        vertical-align: middle; }
      table.price_table tr td {
        width: 60%;
        padding: 1rem;
        box-sizing: border-box;
        text-align: left;
        vertical-align: middle;
        text-align: right; }

  .two_img_list {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap; }
    .two_img_list figure {
      width: 400px;
      margin: 0 0 60px 0; }
      .two_img_list figure img {
        width: 100%; } }
/* -----------------------------------------------------------
　禁煙
----------------------------------------------------------- */
table.num_table {
  padding: 0;
  margin: 0 auto;
  vertical-align: middle;
  width: 96%;
  border-collapse: collapse;
  box-sizing: border-box;
  line-height: 140%;
  background-color: #ffffff;
  font-size: 1.4rem; }
  table.num_table tr th {
    width: 10%;
    background-color: #ffdde0;
    color: #333333;
    vertical-align: middle;
    padding: 0.6rem 0;
    font-weight: normal;
    border: #3e3e82 1px solid;
    box-sizing: border-box; }
  table.num_table tr td {
    width: 90%;
    padding: 0.6rem;
    box-sizing: border-box;
    border: #3e3e82 1px solid; }

@media screen and (min-width: 768px), print {
  table.num_table {
    padding: 0;
    margin: 0 auto 4rem auto;
    vertical-align: middle;
    width: 1100px;
    border-collapse: collapse;
    box-sizing: border-box;
    line-height: 140%;
    background-color: #ffffff;
    font-size: 1.8rem; }
    table.num_table tr th {
      width: 80px;
      background-color: #ffdde0;
      color: #333333;
      vertical-align: middle;
      padding: 2rem 0;
      font-weight: normal;
      border: #3e3e82 1px solid;
      box-sizing: border-box; }
    table.num_table tr td {
      width: 1120px;
      padding: 2rem;
      box-sizing: border-box;
      border: #3e3e82 1px solid; } }
/* -----------------------------------------------------------
　自費診療
----------------------------------------------------------- */
ul.private_link {
  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 0 2rem 0; }
  ul.private_link li {
    list-style-type: none;
    margin: 0 0 1rem 0;
    width: 48%; }
    ul.private_link li a {
      font-size: 1.4rem;
      color: #333333;
      text-decoration: none; }
      ul.private_link li a i {
        color: #8ecd5f; }

@media screen and (min-width: 768px), print {
  ul.private_link {
    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;
    margin: 0 0 40px 0; }
    ul.private_link li {
      list-style-type: none;
      margin: 0 0 0 0;
      width: 220px; }
      ul.private_link li a {
        font-size: 1.6rem;
        color: #333333;
        text-decoration: none; }
        ul.private_link li a i {
          color: #8ecd5f; }
        ul.private_link li a:hover {
          opacity: 0.6;
          transition: all 0.3s ease 0s; } }
