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

 共通項目

======================================================================= */
/*関数*/
/* -----------------------------------------------------------
 関数
----------------------------------------------------------- */
/*サイトの横幅*/
/*media screen*/
/*文字SP*/
/*文字PC*/
/*基本フォント*/
/*游明朝*/
/*◇◆◇◆◇◆揃え◇◆◇◆◇◆*/
p, ul, dl {
  text-align: justify;
}

/*◇◆◇◆◇◆基本色◇◆◇◆◇◆*/
/*基本文字色*/
/*基本背景色*/
/*白*/
/*黒*/
/*赤*/
/*◇◆◇◆◇◆ハンバーガー色◇◆◇◆◇◆*/
/*ハンバーガー棒と文字*/
/*ハンバーガー背景*/
/*ハンバーガーdrawr背景*/
/*ハンバーガーdrawrテキスト*/
/*ハンバーガーdrawrサブ背景*/
/*ハンバーガーdrawrサブテキスト*/
/*ハンバーガーdrawrボーダー*/
/*ハンバーガーdrawrボーダー*/
/*◇◆◇◆◇◆お知らせ色◇◆◇◆◇◆*/
/*お知らせタイトル*/
/*お知らせサブタイトル*/
/*お知らせ文字*/
/*お知らせボーダー*/
/*お知らせアイコン*/
/*お知らせ背景*/
/*◇◆◇◆◇◆フッターPC◇◆◇◆◇◆*/
/*フッター背景色*/
/*フッターテキスト*/
/*フッターボーダー*/
/*◇◆◇◆◇◆フッターリンクSP◇◆◇◆◇◆*/
/*フッターリンク背景色*/
/*フッターリンクテキスト*/
/*フッターリンクボーダー*/
/*◇◆◇◆◇◆コピーライト◇◆◇◆◇◆*/
/*コピーライト背景色*/
/*コピーライトテキスト*/
/*◇◆◇◆◇◆リンク系◇◆◇◆◇◆*/
/*リンクカラー*/
/*リンクカラーホバー*/
/*◇◆◇◆◇◆ホバー速度◇◆◇◆◇◆*/
/*◇◆◇◆◇◆診療時間テーブル◇◆◇◆◇◆*/
/*th背景*/
/*th文字*/
/*thボーダー*/
/*td背景*/
/*td文字*/
/*thボーダー*/
/*◇◆◇◆◇◆汎用テーブル系◇◆◇◆◇◆*/
/*th背景*/
/*th文字*/
/*thボーダー*/
/*td背景*/
/*td文字*/
/*tdボーダー*/
/*◇◆◇◆◇◆ホバー速度◇◆◇◆◇◆*/
/*◇◆◇◆◇◆影◇◆◇◆◇◆*/
/*◇◆◇◆◇◆フロー◇◆◇◆◇◆*/
/*◇◆◇◆◇◆矢印◇◆◇◆◇◆*/
/*青*/
/*青*/
/*水色*/
/*灰色*/
/*水色*/
/*水色*/
/*水色*/
/*薄い紫*/
/*水色*/
/*灰色*/
/*水色*/
/*灰色*/
/*オレンジ*/
/*青*/
/*水色*/
/*灰色*/
/*茶色*/
/*仕様変更後のカラー*/
/*青*/
/*茶色*/
/*茶色*/
/*黒*/
/*茶色*/
/*茶色*/
/*茶色*/
/*フォント*/
/* -----------------------------------------------------------
 特殊フォント読込
----------------------------------------------------------- */
@font-face {
  font-family: "zen_maru_gothic_regular";
  src: url(../font/ZenMaruGothic-Regular.ttf);
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "zen_maru_gothic_Medium";
  src: url(../font/ZenMaruGothic-Medium.ttf);
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "zen_maru_gothic_bold";
  src: url(../font/ZenMaruGothic-Bold.ttf);
  font-weight: bold;
  font-style: normal;
}
@font-face {
  font-family: "afacadflux_regular";
  src: url(../font/AfacadFlux-Regular.ttf);
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "afacadflux_Medium";
  src: url(../font/AfacadFlux-Medium.ttf);
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "afacadflux_bold";
  src: url(../font/AfacadFlux-Bold.ttf);
  font-weight: bold;
  font-style: normal;
}
/*共通モジュール*/
/* Scss Document */
/* =======================================================================

 共通項目

======================================================================= */
/*関数*/
/*関数*/
/* ----------------------------------------------------------------------------------
モジュール　_module.scss
---------------------------------------------------------------------------------- */
/* clearfix -------------------------------------- */
.cf::before,
.cf::after {
  content: "";
  display: block;
}

.cf::after {
  clear: both;
}

/* float -------------------------------------- */
.fl_l {
  float: left;
}

.fl_r {
  float: right;
}

/* txt -------------------------------------- */
.txt_c {
  text-align: center;
}

.txt_l {
  text-align: left;
}

.txt_r {
  text-align: right;
}

.bold {
  font-weight: bold;
}

/* img -------------------------------------- */
.img_c {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 1rem auto;
}

.img_l, .img_r {
  display: block;
  max-width: 80%;
  height: auto;
  margin: 1rem auto;
}

@media screen and (min-width: 768px), print {
  .img_l {
    float: left;
    margin: 0 2rem 2rem 0;
  }
  .img_r {
    float: right;
    margin: 0 0 2rem 2rem;
  }
}
/* PC・SP　表示・非表示 -------------------------------------- */
.sp_n {
  display: none;
}

@media screen and (min-width: 768px), print {
  .sp_n {
    display: block;
  }
  .pc_n {
    display: none;
  }
}
/*ハンバーガー*/
/* Scss Document */
/* =======================================================================

 共通項目

======================================================================= */
/*関数*/
/*関数*/
.main_nav_sp {
  width: 100%;
}
.main_nav_sp .drawr {
  display: none;
  position: fixed;
  top: 0;
  width: 100%;
  padding: 0 0 2rem 0;
  margin: 0 0 0 0;
  z-index: 99999999;
  background-color: #ffffff;
  overflow-x: hidden;
  overflow: auto;
  height: 100%;
  overflow-y: scroll;
  -ms-overflow-style: none; /* IE, Edge 対応 */
  scrollbar-width: none; /* Firefox 対応 */
}
.main_nav_sp .drawr::-webkit-scrollbar {
  display: none;
}
.main_nav_sp .drawr ul.hbg {
  list-style-type: none;
  border-top: #2A2A2A 1px solid;
  width: 96%;
  margin: 20vw auto 20vw auto;
}
.main_nav_sp .drawr ul.hbg li {
  width: 100%;
  text-align: center;
}
.main_nav_sp .drawr ul.hbg li.treatment:hover {
  cursor: pointer;
  cursor: hand;
}
.main_nav_sp .drawr ul.hbg li a {
  color: #2A2A2A;
  font-family: "zen_maru_gothic_Medium";
  font-weight: normal;
  font-size: 1.4rem;
  text-decoration: none;
  padding: 0.5rem 0;
  border-bottom: #2A2A2A 1px solid;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  letter-spacing: 0.05em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  line-height: 140%;
}
.main_nav_sp .drawr ul.hbg li ul.main_nav_sub, .main_nav_sp .drawr ul.hbg li .main_nav_sub2 {
  display: none;
  width: 100%;
  list-style-type: none;
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.main_nav_sp .drawr ul.hbg li ul.main_nav_sub.open_nav, .main_nav_sp .drawr ul.hbg li .main_nav_sub2.open_nav {
  display: block;
}
.main_nav_sp .drawr ul.hbg li ul.main_nav_sub li, .main_nav_sp .drawr ul.hbg li .main_nav_sub2 li {
  width: 50%;
}
.main_nav_sp .drawr ul.hbg li ul.main_nav_sub li a, .main_nav_sp .drawr ul.hbg li .main_nav_sub2 li a {
  background-color: #0068B7;
  color: #FFFFFF;
  font-size: 1.2rem;
  text-align: center;
  border-left: #FFFFFF 1px solid;
  border-right: #FFFFFF 1px solid;
  border-bottom: #FFFFFF 2px solid;
}
.main_nav_sp .drawr ul.hbg li ul.main_nav_sub li a::after, .main_nav_sp .drawr ul.hbg li .main_nav_sub2 li a::after {
  content: "" !important;
}
.main_nav_sp .drawr ul.hbg li ul.main_nav_sub li.long, .main_nav_sp .drawr ul.hbg li .main_nav_sub2 li.long {
  width: 100%;
}
.main_nav_sp .drawr ul.hbg li.treatment_hbg a::after, .main_nav_sp .drawr ul.hbg li.introductiont_hbg a::after {
  font-family: "fontello";
  content: "\e80e";
  font-size: 0.8rem;
  margin: 0 0 0 0.5rem;
}
.main_nav_sp .drawr ul.hbg li.introductiont_hbg ul li a {
  background-color: #676767;
}
.main_nav_sp .drawr ul.hbg li.is-open a::after {
  font-family: "fontello";
  content: "\e817";
  font-size: 0.8rem;
  margin: 0 0 0 0.5rem;
}

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

.toggle-label {
  cursor: pointer;
  display: block;
  width: 14%;
  height: 10vw;
  padding: 0 0 0.5vw 0;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          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: 28px;
  background: #ffffff;
  content: "";
  -webkit-transition: all 500ms ease-in-out;
  transition: all 500ms ease-in-out;
}

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

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

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

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

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

.toggle-label .toggle-icon:after {
  -webkit-transform: translate3d(-50%, 5px, 0);
          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 {
  -webkit-transform: translateX(-50%) rotate(45deg);
          transform: translateX(-50%) rotate(45deg);
  top: 1.5px;
}

.toggle:checked ~ .toggle-label .toggle-icon:after {
  -webkit-transform: translateX(-50%) translateY(-10px) rotate(-45deg);
          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: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 15%;
  max-width: 15%;
  position: fixed;
  cursor: pointer;
  right: 0;
  top: 0;
  z-index: 99999999999;
  padding: 0 0 0.6rem 0;
  background-color: #0068B7;
  height: 14vw;
}

/*見出し*/
/* Scss Document */
/* =======================================================================

 共通項目

======================================================================= */
/*関数*/
/*関数*/
h1 {
  margin: 0;
}

h2.top_title {
  background: url("../img/index_h2_bg.svg") no-repeat;
  background-size: 45%;
  background-position: left top;
  padding: 1.6rem 0 1rem 2rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-family: "zen_maru_gothic_bold";
  font-weight: bold;
  font-size: 1.6rem;
  color: #676767;
  margin: 0 0 0 1rem;
  text-align: left;
  position: relative;
  z-index: 2;
}
h2.top_title span {
  color: #0068B7;
  font-family: "zen_maru_gothic_Medium";
  font-weight: normal;
  font-size: 2.8rem;
  margin: 0 1rem 0 0;
}
h2.top_title em {
  color: #0068B7;
  font-style: normal;
  font-size: 2.2rem;
}
h2.top_title::after {
  position: absolute;
  top: 3.5rem;
  right: 2rem;
  content: "";
  display: block;
  width: 15%;
  height: 2px;
  background-image: linear-gradient(to right, #0068B7 2px, transparent 2px);
  background-size: 6px 2px;
  background-repeat: repeat-x;
  background-position: left top;
  z-index: 2;
}
h2.top_title.treatment_title::after {
  width: 10%;
}
h2.top_title.features_title::after {
  width: 10%;
}
h2.low {
  color: #0068B7;
  font-family: "zen_maru_gothic_bold";
  font-weight: bold;
  font-size: 2.4rem;
  text-align: center;
  letter-spacing: 0.05em;
  line-height: 120%;
  padding: 0 0 0 0;
  margin: 4rem 0 4.2rem 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
}
h2.low::after {
  position: absolute;
  bottom: -1.8rem;
  right: 0;
  left: 0;
  margin: 0 auto;
  content: "";
  display: block;
  width: 30%;
  height: 0.4rem;
  background: url("../img/h2_line.svg") no-repeat;
  background-size: contain;
  background-position: center top;
}
h2.bring_title {
  font-size: 2.2rem;
}
h2.first {
  margin: 0 0 4.2rem 0;
}
h2.concept {
  color: #ffffff;
  background-color: #4A9ED5;
  font-family: "zen_maru_gothic_Medium";
  font-weight: normal;
  font-size: 1.8rem;
  padding: 0.8rem 1rem 0.8rem 0.8rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  margin: 0 0 0 0;
  line-height: 120%;
  position: relative;
}

h3.low {
  color: #0068B7;
  background-color: #C9E9FF;
  font-family: "zen_maru_gothic_Medium";
  font-weight: normal;
  font-size: 2rem;
  padding: 0.8rem 1rem 0.8rem 2.8rem;
  border-radius: 0.4rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 2rem 0 1.2rem 0;
  line-height: 120%;
  position: relative;
}
h3.low::before {
  position: absolute;
  top: calc(50% - 0.5rem);
  left: 1rem;
  content: "";
  display: block;
  width: 1rem;
  height: 1rem;
  background: url("../img/icon_h3.svg") no-repeat;
  background-size: contain;
  background-position: center;
}
h3.first {
  margin: 0 0 1.2rem 0;
}

h4.low {
  color: #676767;
  font-family: "zen_maru_gothic_Medium";
  font-weight: normal;
  font-size: 1.9rem;
  padding: 0.8rem 1rem 0.8rem 2.8rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-bottom: #D1D1D1 3px solid;
  margin: 2rem 0 1rem 0;
  line-height: 120%;
  position: relative;
}
h4.low::before {
  position: absolute;
  top: calc(50% - 0.4rem);
  left: 1.1rem;
  content: "";
  display: block;
  width: 0.8rem;
  height: 0.8rem;
  background: url("../img/icon_h4.svg") no-repeat;
  background-size: contain;
  background-position: center;
}
h4.first {
  margin: 0 0 1rem 0;
}

h5.low {
  color: #4A9ED5;
  font-family: "zen_maru_gothic_Medium";
  font-weight: normal;
  font-size: 1.8rem;
  padding: 0.8rem 1rem 0.8rem 2.8rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-bottom: #ABD3EF 2px solid;
  margin: 2rem 0 1rem 0;
  line-height: 120%;
  position: relative;
}
h5.low::before {
  position: absolute;
  top: calc(50% - 0.3rem);
  left: 1.1rem;
  content: "";
  display: block;
  width: 0.6rem;
  height: 0.6rem;
  background: url("../img/icon_h5.svg") no-repeat;
  background-size: contain;
  background-position: center;
}
h5.first {
  margin: 0 0 1rem 0;
}

p {
  font-size: 1.4rem;
  margin: 0 0 2rem 0;
  line-height: 140%;
  letter-spacing: 0;
  text-align: justify;
}
p.ajs {
  margin: 0 0 1rem 0;
}

@media screen and (min-width: 768px), print {
  h1 {
    margin: 0;
  }
  h2.top_title {
    background: url("../img/index_h2_bg.svg") no-repeat;
    background-size: 387px;
    background-position: left top;
    padding: 68px 0 58px 98px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    font-family: "zen_maru_gothic_bold";
    font-weight: bold;
    font-size: 3rem;
    letter-spacing: 0.2rem;
    color: #676767;
    width: 1266px;
    margin: 0 0 0 0;
    text-align: left;
    position: relative;
  }
  h2.top_title span {
    color: #0068B7;
    font-family: "zen_maru_gothic_Medium";
    font-weight: normal;
    font-size: 7rem;
    margin: 0 9px 0 0;
    letter-spacing: 0.3rem;
  }
  h2.top_title em {
    color: #0068B7;
    font-style: normal;
    font-size: 3.8rem;
  }
  h2.top_title::after {
    position: absolute;
    top: 123px;
    right: 39px;
    content: "";
    display: block;
    width: 607px;
    height: 2px;
    background-image: linear-gradient(to right, #0068B7 2px, transparent 2px);
    background-size: 6px 2px;
    background-repeat: repeat-x;
    background-position: left top;
  }
  h2.top_title.treatment_title {
    margin: 0 auto 0 auto;
  }
  h2.top_title.treatment_title::after {
    width: 551px;
  }
  h2.top_title.features_title {
    margin: 0 auto 0 auto;
  }
  h2.top_title.features_title::after {
    width: 551px;
  }
  h2.low {
    color: #0068B7;
    font-family: "zen_maru_gothic_bold";
    font-weight: bold;
    font-size: 3.8rem;
    text-align: center;
    letter-spacing: 0.05em;
    line-height: 120%;
    padding: 0 0 0 0;
    margin: 100px 0 72px 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    position: relative;
  }
  h2.low::after {
    position: absolute;
    bottom: -33px;
    right: 0;
    left: 0;
    margin: 0 auto;
    content: "";
    display: block;
    width: 204px;
    height: 8px;
    background: url("../img/h2_line.svg") no-repeat;
    background-size: contain;
    background-position: center top;
  }
  h2.bring_title {
    font-size: 2.8rem;
  }
  h2.first {
    margin: 0 0 72px 0;
  }
  h2.concept {
    color: #ffffff;
    background-color: #4A9ED5;
    font-family: "zen_maru_gothic_Medium";
    font-weight: normal;
    font-size: 3.2rem;
    padding: 0.8rem 1rem 0.8rem 2.8rem;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    margin: 0 0 0 0;
    line-height: 120%;
    position: relative;
  }
  h3.low {
    color: #0068B7;
    background-color: #C9E9FF;
    font-family: "zen_maru_gothic_Medium";
    font-weight: normal;
    font-size: 2.4rem;
    padding: 10px 0 10px 28px;
    border-radius: 0.4rem;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin: 40px 0 20px 0;
    line-height: 120%;
    position: relative;
  }
  h3.low::before {
    position: absolute;
    top: calc(50% - 4px);
    left: 13px;
    content: "";
    display: block;
    width: 8px;
    height: 8px;
    background: url("../img/icon_h3.svg") no-repeat;
    background-size: contain;
    background-position: center;
  }
  h3.first {
    margin: 0 0 20px 0;
  }
  h4.low {
    color: #676767;
    font-family: "zen_maru_gothic_Medium";
    font-weight: normal;
    font-size: 2.4rem;
    padding: 10px 0 10px 28px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    border-bottom: #D1D1D1 3px solid;
    margin: 30px 0 20px 0;
    line-height: 120%;
    position: relative;
  }
  h4.low::before {
    position: absolute;
    top: calc(50% - 3px);
    left: 13px;
    content: "";
    display: block;
    width: 6px;
    height: 6px;
    background: url("../img/icon_h4.svg") no-repeat;
    background-size: contain;
    background-position: center;
  }
  h4.first {
    margin: 0 0 20px 0;
  }
  h5.low {
    color: #4A9ED5;
    font-family: "zen_maru_gothic_Medium";
    font-weight: normal;
    font-size: 2.2rem;
    padding: 10px 0 6px 28px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    border-bottom: #ABD3EF 2px solid;
    margin: 20px 0 20px 0;
    line-height: 120%;
    position: relative;
  }
  h5.low::before {
    position: absolute;
    top: calc(50% - 2px);
    left: 13px;
    content: "";
    display: block;
    width: 4px;
    height: 4px;
    background: url("../img/icon_h5.svg") no-repeat;
    background-size: contain;
    background-position: center;
  }
  h5.first {
    margin: 0 0 20px 0;
  }
  p {
    font-size: 1.8rem;
    margin: 0 0 30px 0;
    line-height: 160%;
    letter-spacing: 0;
    text-align: justify;
  }
  p.ajs {
    margin: 0 0 10px 0;
  }
}
/*診療時間表*/
/* Scss Document */
/* =======================================================================

 共通項目

======================================================================= */
/*関数*/
/*関数*/
table.timetable {
  padding: 0;
  margin: 0 auto;
  vertical-align: middle;
  width: 100%;
  text-align: center;
  border-collapse: separate;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  line-height: 140%;
  font-family: "zen_maru_gothic_Medium";
  font-weight: normal;
  border-top-left-radius: 0.5rem;
  border-top-right-radius: 0.5rem;
}
table.timetable tr th {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-weight: normal;
  font-size: 1.2rem;
  padding: 0.8rem 0;
  vertical-align: middle;
  color: #ffffff;
  background-color: #0068B7;
  width: 10%;
}
table.timetable tr th.time {
  letter-spacing: 0.1em;
}
table.timetable tr td {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-weight: normal;
  font-size: 1.2rem;
  padding: 0.8rem 0;
  vertical-align: middle;
  color: #676767;
  background-color: #ffffff;
  border-bottom: #0068B7 1px solid;
}
table.timetable tr td.time {
  width: 30%;
  text-align: center;
  color: #2a2a2a;
}
table.timetable tr:first-child th:first-child {
  border-top-left-radius: 0.5rem;
}
table.timetable tr:first-child th:last-child {
  border-top-right-radius: 0.5rem;
}
table.timetable caption {
  caption-side: bottom;
  font-size: 1.2rem;
  margin: 0.6rem 0 0 0;
  width: 100%;
  color: #2a2a2a;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: left;
}
table.timetable caption span {
  color: #676767;
}

@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;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    line-height: 140%;
    font-family: "zen_maru_gothic_Medium";
    font-weight: normal;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
  }
  table.timetable tr th {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    font-weight: normal;
    font-size: 1.6rem;
    padding: 0;
    vertical-align: middle;
    color: #ffffff;
    background-color: #0068B7;
    width: 10%;
    height: 51px;
    box-sizing: border-box;
  }
  table.timetable tr th.time {
    width: 30%;
    letter-spacing: 0.1em;
  }
  table.timetable tr td {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    font-weight: normal;
    font-size: 1.6rem;
    padding: 0;
    vertical-align: middle;
    color: #676767;
    background-color: #ffffff;
    height: 52px;
    box-sizing: border-box;
    border-bottom: #0068B7 1px solid;
  }
  table.timetable tr td.time {
    text-align: center;
    color: #2a2a2a;
    font-size: 2rem;
  }
  table.timetable tr:first-child th:first-child {
    border-top-left-radius: 0.5rem;
  }
  table.timetable tr:first-child th:last-child {
    border-top-right-radius: 0.5rem;
  }
  table.timetable caption {
    caption-side: bottom;
    font-size: 1.8rem;
    margin: 12px 0 0 0;
    width: 100%;
    color: #2a2a2a;
    padding: 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    line-height: 160%;
    text-align: left;
  }
}
/*テーブル*/
/* Scss Document */
/* =======================================================================

 共通項目

======================================================================= */
/*関数*/
/*関数*/
/* -----------------------------------------------------------
　汎用テーブル
----------------------------------------------------------- */
table.low_table {
  width: 100%;
  border-collapse: collapse;
  font-size: 1.4rem;
  margin: 0 0 2rem 0;
}
table.low_table caption {
  caption-side: bottom;
  text-align: left;
  margin: 0.5rem 0 0 0;
}
table.low_table tr th {
  width: 40%;
  padding: 1rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: left;
  vertical-align: middle;
  font-weight: normal;
  color: #0068B7;
  border: #40B2FF 1px solid;
  background-color: #E2F3FF;
}
table.low_table tr td {
  width: 60%;
  padding: 1rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: left;
  vertical-align: middle;
  font-weight: normal;
  color: #2A2A2A;
  border: #40B2FF 1px solid;
  background-color: #ffffff;
}

@media screen and (min-width: 768px), print {
  table.low_table {
    width: 100%;
    border-collapse: collapse;
    font-size: 1.8rem;
    margin: 0 0 20px 0;
  }
  table.low_table caption {
    caption-side: bottom;
    text-align: left;
    margin: 10px 0 0 0;
  }
  table.low_table tr th {
    width: 40%;
    padding: 20px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    text-align: left;
    vertical-align: middle;
    font-weight: normal;
    color: #0068B7;
    border: #40B2FF 1px solid;
    background-color: #E2F3FF;
  }
  table.low_table tr td {
    width: 60%;
    padding: 20px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    text-align: left;
    vertical-align: middle;
    font-weight: normal;
    color: #2A2A2A;
    border: #40B2FF 1px solid;
    background-color: #ffffff;
  }
}
/* -----------------------------------------------------------
　テーブル横スライド
----------------------------------------------------------- */
table.low_table_slide {
  width: 1000px;
  border-collapse: collapse;
  font-size: 1.4rem;
  margin: 0 0 2rem 0;
  line-height: 140%;
}
table.low_table_slide caption {
  caption-side: bottom;
  text-align: left;
  margin: 0.5rem 0 0 0;
}
table.low_table_slide tr th {
  width: 40%;
  padding: 1rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: left;
  vertical-align: middle;
  font-weight: normal;
  color: #0068B7;
  border: #40B2FF 1px solid;
  background-color: #E2F3FF;
}
table.low_table_slide tr td {
  width: 60%;
  padding: 1rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: left;
  vertical-align: middle;
  font-weight: normal;
  color: #2A2A2A;
  border: #40B2FF 1px solid;
  background-color: #ffffff;
}

/*横スライドテーブル用*/
.js-scrollable {
  margin: 0 0 2rem 0;
}

@media screen and (min-width: 768px), print {
  table.low_table_slide {
    width: 100%;
    border-collapse: collapse;
    font-size: 1.8rem;
    margin: 0 0 20px 0;
    line-height: 160%;
  }
  table.low_table_slide caption {
    caption-side: bottom;
    text-align: left;
    margin: 10px 0 0 0;
  }
  table.low_table_slide tr th {
    width: 40%;
    padding: 20px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    text-align: left;
    vertical-align: middle;
    font-weight: normal;
    color: #0068B7;
    border: #40B2FF 1px solid;
    background-color: #E2F3FF;
  }
  table.low_table_slide tr td {
    width: 60%;
    padding: 20px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    text-align: left;
    vertical-align: middle;
    font-weight: normal;
    color: #2A2A2A;
    border: #40B2FF 1px solid;
    background-color: #ffffff;
  }
  /*横スライドテーブル用*/
  .js-scrollable {
    margin: 0 0 20px 0;
  }
}
/* -----------------------------------------------------------
　SPは縦並び、PCは横並びバージョン
----------------------------------------------------------- */
table.low_table_spblock {
  width: 100%;
  border-collapse: collapse;
  font-size: 1.4rem;
  margin: 0 0 2rem 0;
}
table.low_table_spblock caption {
  caption-side: bottom;
  text-align: left;
  margin: 0.5rem 0 0 0;
}
table.low_table_spblock tr th {
  width: 100%;
  padding: 1rem 0.5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: left;
  vertical-align: middle;
  font-weight: normal;
  line-height: 140%;
  display: block;
  color: #0068B7;
  background-color: #E2F3FF;
  border-bottom: #40B2FF 1px solid;
  border-left: #40B2FF 1px solid;
  border-right: #40B2FF 1px solid;
}
table.low_table_spblock tr td {
  width: 100%;
  padding: 1rem 0.5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: left;
  vertical-align: middle;
  font-weight: normal;
  line-height: 140%;
  display: block;
  color: #2A2A2A;
  background-color: #ffffff;
  border-bottom: #40B2FF 1px solid;
  border-left: #40B2FF 1px solid;
  border-right: #40B2FF 1px solid;
}
table.low_table_spblock tr td span {
  color: #0068B7;
  font-weight: bold;
}
table.low_table_spblock tr td span a {
  color: #0068B7;
  font-weight: bold;
  text-decoration: none;
}
table.low_table_spblock tr:first-child th {
  border-top: #40B2FF 1px solid;
}

@media screen and (min-width: 768px), print {
  table.low_table_spblock {
    width: 100%;
    border-collapse: collapse;
    font-size: 1.8rem;
    margin: 0 0 20px 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  table.low_table_spblock caption {
    caption-side: bottom;
    text-align: left;
    margin: 10px 0 0 0;
  }
  table.low_table_spblock tr th {
    width: 30%;
    padding: 20px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    text-align: left;
    vertical-align: middle;
    font-weight: normal;
    line-height: 140%;
    display: table-cell;
    color: #0068B7;
    background-color: #E2F3FF;
    border-bottom: #40B2FF 1px solid;
    border-left: #40B2FF 1px solid;
    border-right: #40B2FF 1px solid;
  }
  table.low_table_spblock tr td {
    width: 70%;
    padding: 20px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    text-align: left;
    vertical-align: middle;
    font-weight: normal;
    line-height: 140%;
    display: table-cell;
    color: #2A2A2A;
    background-color: #ffffff;
    border-bottom: #40B2FF 1px solid;
    border-left: #40B2FF 1px solid;
    border-right: #40B2FF 1px solid;
  }
  table.low_table_spblock tr td span {
    color: #0068B7;
    font-weight: bold;
  }
  table.low_table_spblock tr td span a {
    color: #0068B7;
    font-weight: bold;
    text-decoration: none;
  }
  table.low_table_spblock tr:first-child th {
    border-top: #40B2FF 1px solid;
  }
  table.low_table_spblock tr:first-child td {
    border-top: #40B2FF 1px solid;
  }
}
/*テーブル線上下のみ*/
/* Scss Document */
/* =======================================================================

 共通項目

======================================================================= */
/*関数*/
/*関数*/
/* -----------------------------------------------------------
　汎用テーブル
----------------------------------------------------------- */
table.low_table2 {
  width: 100%;
  border-collapse: collapse;
  font-size: 1.4rem;
  margin: 0 0 2rem 0;
}
table.low_table2 caption {
  caption-side: bottom;
  text-align: left;
  margin: 0.5rem 0 0 0;
}
table.low_table2 tr th {
  width: 40%;
  padding: 1rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: left;
  vertical-align: middle;
  font-weight: normal;
  color: #0068B7;
  border-bottom: #40B2FF 1px solid;
  background-color: #E2F3FF;
}
table.low_table2 tr td {
  width: 60%;
  padding: 1rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: left;
  vertical-align: middle;
  font-weight: normal;
  color: #2A2A2A;
  border-bottom: #40B2FF 1px solid;
  background-color: #ffffff;
}
table.low_table2 tr:first-child th {
  border-top: #40B2FF 1px solid;
}
table.low_table2 tr:first-child td {
  border-top: #40B2FF 1px solid;
}

@media screen and (min-width: 768px), print {
  table.low_table2 {
    width: 100%;
    border-collapse: collapse;
    font-size: 1.8rem;
    margin: 0 0 20px 0;
  }
  table.low_table2 caption {
    caption-side: bottom;
    text-align: left;
    margin: 10px 0 0 0;
  }
  table.low_table2 tr th {
    width: 40%;
    padding: 20px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    text-align: left;
    vertical-align: middle;
    font-weight: normal;
    color: #0068B7;
    border-bottom: #40B2FF 1px solid;
    background-color: #E2F3FF;
  }
  table.low_table2 tr td {
    width: 60%;
    padding: 20px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    text-align: left;
    vertical-align: middle;
    font-weight: normal;
    color: #2A2A2A;
    border-bottom: #40B2FF 1px solid;
    background-color: #ffffff;
  }
  table.low_table2 tr:first-child th {
    border-top: #40B2FF 1px solid;
  }
  table.low_table2 tr:first-child td {
    border-top: #40B2FF 1px solid;
  }
}
/* -----------------------------------------------------------
　テーブル横スライド
----------------------------------------------------------- */
table.low_table_slide2 {
  width: 1000px;
  border-collapse: collapse;
  font-size: 1.4rem;
  margin: 0 0 2rem 0;
  line-height: 140%;
}
table.low_table_slide2 caption {
  caption-side: bottom;
  text-align: left;
  margin: 0.5rem 0 0 0;
}
table.low_table_slide2 tr th {
  width: 40%;
  padding: 1rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: left;
  vertical-align: middle;
  font-weight: normal;
  color: #0068B7;
  border-bottom: #40B2FF 1px solid;
  background-color: #E2F3FF;
}
table.low_table_slide2 tr td {
  width: 60%;
  padding: 1rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: left;
  vertical-align: middle;
  font-weight: normal;
  color: #2A2A2A;
  border-bottom: #40B2FF 1px solid;
  background-color: #ffffff;
}
table.low_table_slide2 tr:first-child th {
  border-top: #40B2FF 1px solid;
}
table.low_table_slide2 tr:first-child td {
  border-top: #40B2FF 1px solid;
}

/*横スライドテーブル用*/
.js-scrollable {
  margin: 0 0 2rem 0;
}

@media screen and (min-width: 768px), print {
  table.low_table_slide2 {
    width: 100%;
    border-collapse: collapse;
    font-size: 1.8rem;
    margin: 0 0 20px 0;
    line-height: 160%;
  }
  table.low_table_slide2 caption {
    caption-side: bottom;
    text-align: left;
    margin: 10px 0 0 0;
  }
  table.low_table_slide2 tr th {
    width: 40%;
    padding: 20px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    text-align: left;
    vertical-align: middle;
    font-weight: normal;
    color: #0068B7;
    border-bottom: #40B2FF 1px solid;
    background-color: #E2F3FF;
  }
  table.low_table_slide2 tr td {
    width: 60%;
    padding: 20px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    text-align: left;
    vertical-align: middle;
    font-weight: normal;
    color: #2A2A2A;
    border-bottom: #40B2FF 1px solid;
    background-color: #ffffff;
  }
  table.low_table_slide2 tr:first-child th {
    border-top: #40B2FF 1px solid;
  }
  table.low_table_slide2 tr:first-child td {
    border-top: #40B2FF 1px solid;
  }
  /*横スライドテーブル用*/
  .js-scrollable {
    margin: 0 0 20px 0;
  }
}
/* -----------------------------------------------------------
　SPは縦並び、PCは横並びバージョン
----------------------------------------------------------- */
table.low_table_spblock2 {
  width: 100%;
  border-collapse: collapse;
  font-size: 1.4rem;
  margin: 0 0 2rem 0;
}
table.low_table_spblock2 caption {
  caption-side: bottom;
  text-align: left;
  margin: 0.5rem 0 0 0;
}
table.low_table_spblock2 tr th {
  width: 100%;
  padding: 1rem 0.5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: left;
  vertical-align: middle;
  font-weight: normal;
  line-height: 140%;
  display: block;
  color: #0068B7;
  background-color: #E2F3FF;
  border-bottom: #40B2FF 1px solid;
}
table.low_table_spblock2 tr td {
  width: 100%;
  padding: 1rem 0.5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: left;
  vertical-align: middle;
  font-weight: normal;
  line-height: 140%;
  display: block;
  color: #2A2A2A;
  background-color: #ffffff;
  border-bottom: #40B2FF 1px solid;
}
table.low_table_spblock2 tr td span {
  color: #0068B7;
  font-weight: bold;
}
table.low_table_spblock2 tr td span a {
  color: #0068B7;
  font-weight: bold;
  text-decoration: none;
}
table.low_table_spblock2 tr:first-child th {
  border-top: #40B2FF 1px solid;
}

@media screen and (min-width: 768px), print {
  table.low_table_spblock2 {
    width: 100%;
    border-collapse: collapse;
    font-size: 1.8rem;
    margin: 0 0 20px 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  table.low_table_spblock2 caption {
    caption-side: bottom;
    text-align: left;
    margin: 10px 0 0 0;
  }
  table.low_table_spblock2 tr th {
    width: 30%;
    padding: 20px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    text-align: left;
    vertical-align: middle;
    font-weight: normal;
    line-height: 140%;
    display: table-cell;
    color: #0068B7;
    background-color: #E2F3FF;
    border-bottom: #40B2FF 1px solid;
  }
  table.low_table_spblock2 tr td {
    width: 70%;
    padding: 20px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    text-align: left;
    vertical-align: middle;
    font-weight: normal;
    line-height: 140%;
    display: table-cell;
    color: #2A2A2A;
    background-color: #ffffff;
    border-bottom: #40B2FF 1px solid;
  }
  table.low_table_spblock2 tr td span {
    color: #0068B7;
    font-weight: bold;
  }
  table.low_table_spblock2 tr td span a {
    color: #0068B7;
    font-weight: bold;
    text-decoration: none;
  }
  table.low_table_spblock2 tr:first-child th {
    border-top: #40B2FF 1px solid;
  }
  table.low_table_spblock2 tr:first-child td {
    border-top: #40B2FF 1px solid;
  }
}
/*テーブル丸角*/
/* Scss Document */
/* =======================================================================

 共通項目

======================================================================= */
/*関数*/
/*関数*/
/* -----------------------------------------------------------
　汎用テーブル
----------------------------------------------------------- */
table.low_table3 {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  color: #2a2a2a;
  font-size: 1.4rem;
  margin: 0 0 2rem 0;
  border-radius: 0.7rem;
  border-top: #40B2FF 1px solid;
}
table.low_table3 caption {
  caption-side: bottom;
  text-align: left;
  margin: 0.5rem 0 0 0;
}
table.low_table3 tr th {
  width: 30%;
  padding: 1rem;
  border-bottom: #40B2FF 1px solid;
  border-left: #40B2FF 1px solid;
  border-right: #40B2FF 1px solid;
  background-color: #E2F3FF;
  color: #0068B7;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: center;
  vertical-align: middle;
  font-weight: normal;
}
table.low_table3 tr td {
  width: 70%;
  padding: 1rem;
  border-bottom: #40B2FF 1px solid;
  border-right: #40B2FF 1px solid;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: left;
  vertical-align: middle;
  color: #2A2A2A;
  background-color: #ffffff;
}
table.low_table3 tr:first-child th {
  border-top-left-radius: 0.7rem;
}
table.low_table3 tr:first-child td {
  border-top-right-radius: 0.7rem;
}
table.low_table3 tr:last-child th {
  border-bottom-left-radius: 0.7rem;
  border-bottom: #40B2FF 1px solid;
}
table.low_table3 tr:last-child td {
  border-bottom-right-radius: 0.7rem;
}

@media screen and (min-width: 768px), print {
  table.low_table3 {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    color: #2a2a2a;
    font-size: 1.8rem;
    margin: 0 0 20px 0;
    border-radius: 10px;
    border-top: #40B2FF 1px solid;
  }
  table.low_table3 caption {
    caption-side: bottom;
    text-align: left;
    margin: 0.5rem 0 0 0;
  }
  table.low_table3 tr th {
    width: 30%;
    padding: 20px;
    border-bottom: #40B2FF 1px solid;
    border-left: #40B2FF 1px solid;
    border-right: #40B2FF 1px solid;
    background-color: #E2F3FF;
    color: #0068B7;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    text-align: center;
    vertical-align: middle;
    font-weight: normal;
  }
  table.low_table3 tr td {
    width: 70%;
    padding: 20px;
    border-bottom: #40B2FF 1px solid;
    border-right: #40B2FF 1px solid;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    text-align: left;
    vertical-align: middle;
    color: #2A2A2A;
    background-color: #ffffff;
  }
  table.low_table3 tr:first-child th {
    border-top-left-radius: 10px;
  }
  table.low_table3 tr:first-child td {
    border-top-right-radius: 10px;
  }
  table.low_table3 tr:last-child th {
    border-bottom-left-radius: 10px;
    border-bottom: #40B2FF 1px solid;
  }
  table.low_table3 tr:last-child td {
    border-bottom-right-radius: 10px;
  }
}
/* -----------------------------------------------------------
　テーブルサブタイトル
----------------------------------------------------------- */
table.low_table_subtitle3 {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  color: #2a2a2a;
  font-size: 1.4rem;
  margin: 0 0 2rem 0;
  border-radius: 0.7rem;
  border-top: #40B2FF 1px solid;
}
table.low_table_subtitle3 caption {
  caption-side: bottom;
  text-align: left;
  margin: 1rem 0 0 0;
}
table.low_table_subtitle3 tr th {
  width: 100%;
  border-bottom: #40B2FF 1px solid;
  border-left: #40B2FF 1px solid;
  border-right: #40B2FF 1px solid;
  background-color: #E2F3FF;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  vertical-align: middle;
  font-weight: normal;
}
table.low_table_subtitle3 tr th .sub_title {
  background-color: #4A9ED5;
  color: #ffffff;
  margin: 0;
  padding: 1rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: center;
}
table.low_table_subtitle3 tr th .sub_title.st_top {
  border-top-left-radius: 0.7rem;
  border-top-right-radius: 0.7rem;
}
table.low_table_subtitle3 tr th .sub_text {
  background-color: #C9E9FF;
  color: #2a2a2a;
  margin: 0;
  padding: 1rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: left;
}
table.low_table_subtitle3 tr td {
  width: 100%;
  padding: 0.5rem;
  border-bottom: #40B2FF 1px solid;
  border-left: #40B2FF 1px solid;
  border-right: #40B2FF 1px solid;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: left;
  vertical-align: middle;
  color: #2A2A2A;
  background-color: #ffffff;
}
table.low_table_subtitle3 tr:first-child th {
  border-top-left-radius: 0.7rem;
  border-top-right-radius: 0.7rem;
}
table.low_table_subtitle3 tr:last-child th {
  border-bottom-left-radius: 0.7rem;
}
table.low_table_subtitle3 tr:last-child td {
  border-bottom-right-radius: 0.7rem;
}

@media screen and (min-width: 768px), print {
  table.low_table_subtitle3 {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    color: #2a2a2a;
    font-size: 1.8rem;
    margin: 0 0 20px 0;
    border-radius: 10px;
    border-top: #40B2FF 1px solid;
  }
  table.low_table_subtitle3 caption {
    caption-side: bottom;
    text-align: left;
    margin: 16px 0 0 0;
  }
  table.low_table_subtitle3 tr th {
    width: 100%;
    border-bottom: #40B2FF 1px solid;
    border-left: #40B2FF 1px solid;
    border-right: #40B2FF 1px solid;
    background-color: #E2F3FF;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    vertical-align: middle;
    font-weight: normal;
  }
  table.low_table_subtitle3 tr th .sub_title {
    background-color: #4A9ED5;
    color: #ffffff;
    margin: 0;
    padding: 20px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    text-align: center;
  }
  table.low_table_subtitle3 tr th .sub_title.st_top {
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
  }
  table.low_table_subtitle3 tr th .sub_text {
    background-color: #C9E9FF;
    color: #2a2a2a;
    margin: 0;
    padding: 20px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    text-align: left;
  }
  table.low_table_subtitle3 tr td {
    width: 100%;
    padding: 20px;
    border-bottom: #40B2FF 1px solid;
    border-left: #40B2FF 1px solid;
    border-right: #40B2FF 1px solid;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    text-align: left;
    vertical-align: middle;
    color: #2A2A2A;
    background-color: #ffffff;
  }
  table.low_table_subtitle3 tr:first-child th {
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
  }
  table.low_table_subtitle3 tr:last-child th {
    border-bottom-left-radius: 0.7rem;
  }
  table.low_table_subtitle3 tr:last-child td {
    border-bottom-right-radius: 0.7rem;
  }
}
/* -----------------------------------------------------------
　テーブル横スライド
----------------------------------------------------------- */
table.low_table_slide3 {
  width: 1200px;
  border-collapse: separate;
  border-spacing: 0;
  color: #2a2a2a;
  font-size: 1.4rem;
  font-weight: normal;
  margin: 0 0 0 0;
  line-height: 140%;
  border-radius: 0.7rem;
  border-top: #4A9ED5 1px solid;
}
table.low_table_slide3 caption {
  caption-side: bottom;
  text-align: left;
  margin: 0.5rem 0 0 0;
}
table.low_table_slide3 tr th {
  width: auto;
  padding: 1rem;
  border-bottom: #40B2FF 1px solid;
  border-left: #40B2FF 1px solid;
  border-right: #40B2FF 1px solid;
  background-color: #E2F3FF;
  color: #0068B7;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: center;
  vertical-align: middle;
  font-weight: normal;
}
table.low_table_slide3 tr td {
  width: auto;
  padding: 1rem;
  border-bottom: #40B2FF 1px solid;
  border-right: #40B2FF 1px solid;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: left;
  vertical-align: middle;
  color: #2A2A2A;
  background-color: #ffffff;
}
table.low_table_slide3 tr:first-child th {
  border-top-left-radius: 0.7rem;
}
table.low_table_slide3 tr:first-child td {
  border-top-right-radius: 0.7rem;
}
table.low_table_slide3 tr:last-child th {
  border-bottom-left-radius: 0.7rem;
  border-bottom: #40B2FF 1px solid;
}
table.low_table_slide3 tr:last-child td {
  border-bottom-right-radius: 0.7rem;
}

/*横スライドテーブル用*/
.js-scrollable {
  margin: 0 0 2rem 0;
}

@media screen and (min-width: 768px), print {
  table.low_table_slide3 {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    color: #2a2a2a;
    font-size: 1.8rem;
    font-weight: normal;
    margin: 0 0 0 0;
    line-height: 160%;
    border-radius: 0.7rem;
    border-top: #40B2FF 1px solid;
  }
  table.low_table_slide3 caption {
    caption-side: bottom;
    text-align: left;
    margin: 10px 0 0 0;
    line-height: 160%;
  }
  table.low_table_slide3 tr th {
    width: auto;
    padding: 20px;
    border-bottom: #40B2FF 1px solid;
    border-left: #40B2FF 1px solid;
    border-right: #40B2FF 1px solid;
    background-color: #E2F3FF;
    color: #0068B7;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    text-align: center;
    vertical-align: middle;
    font-weight: normal;
  }
  table.low_table_slide3 tr td {
    width: auto;
    padding: 20px;
    border-bottom: #40B2FF 1px solid;
    border-right: #40B2FF 1px solid;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    text-align: left;
    vertical-align: middle;
    color: #2A2A2A;
    background-color: #ffffff;
  }
  table.low_table_slide3 tr:first-child th {
    border-top-left-radius: 10px;
  }
  table.low_table_slide3 tr:first-child td {
    border-top-right-radius: 10px;
  }
  table.low_table_slide3 tr:last-child th {
    border-bottom-left-radius: 10px;
    border-bottom: #40B2FF 1px solid;
  }
  table.low_table_slide3 tr:last-child td {
    border-bottom-right-radius: 10px;
  }
  /*横スライドテーブル用*/
  .js-scrollable {
    margin: 0 0 20px 0;
  }
}
/* -----------------------------------------------------------
　SPは縦並び、PCは横並びバージョン
----------------------------------------------------------- */
table.low_table_spblock3 {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  color: #2a2a2a;
  font-size: 1.4rem;
  margin: 0 0 2rem 0;
  border-radius: 0.7rem;
}
table.low_table_spblock3 caption {
  caption-side: bottom;
  text-align: left;
  margin: 0.5rem 0 0 0;
}
table.low_table_spblock3 tr th {
  width: 100%;
  padding: 1rem 0.5rem;
  border-bottom: #40B2FF 1px solid;
  border-left: #40B2FF 1px solid;
  border-right: #40B2FF 1px solid;
  background-color: #E2F3FF;
  color: #0068B7;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: left;
  vertical-align: middle;
  font-weight: normal;
  line-height: 140%;
  display: block;
}
table.low_table_spblock3 tr td {
  width: 100%;
  padding: 1rem 0.5rem;
  border-bottom: #4A9ED5 1px solid;
  border-left: #40B2FF 1px solid;
  border-right: #40B2FF 1px solid;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: left;
  vertical-align: middle;
  line-height: 140%;
  display: block;
  color: #2A2A2A;
  background-color: #ffffff;
}
table.low_table_spblock3 tr td span {
  color: #0068B7;
  font-size: 2.2rem;
  font-weight: bold;
}
table.low_table_spblock3 tr td span a {
  color: #0068B7;
  text-decoration: none;
}
table.low_table_spblock3 tr:first-child th {
  border-top: #40B2FF 1px solid;
  border-top-left-radius: 0.7rem;
  border-top-right-radius: 0.7rem;
}
table.low_table_spblock3 tr:last-child td {
  border-bottom-left-radius: 0.7rem;
  border-bottom-right-radius: 0.7rem;
}

@media screen and (min-width: 768px), print {
  table.low_table_spblock3 {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    color: #2a2a2a;
    font-size: 1.8rem;
    margin: 0 0 20px 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    border-radius: 10px;
  }
  table.low_table_spblock3 caption {
    caption-side: bottom;
    text-align: left;
    margin: 10px 0 0 0;
  }
  table.low_table_spblock3 tr th {
    width: 30%;
    padding: 20px;
    border-bottom: #40B2FF 1px solid;
    border-left: #40B2FF 1px solid;
    border-right: none;
    background-color: #E2F3FF;
    color: #0068B7;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    text-align: center;
    vertical-align: middle;
    font-weight: normal;
    line-height: 140%;
    display: table-cell;
  }
  table.low_table_spblock3 tr td {
    width: 70%;
    padding: 20px;
    border-bottom: #40B2FF 1px solid;
    border-left: #40B2FF 1px solid;
    border-right: #40B2FF 1px solid;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    text-align: left;
    vertical-align: middle;
    line-height: 140%;
    display: table-cell;
    color: #2A2A2A;
    background-color: #ffffff;
  }
  table.low_table_spblock3 tr td span {
    color: #4A9ED5;
    font-size: 3rem;
    font-weight: bold;
  }
  table.low_table_spblock3 tr td span a {
    color: #4A9ED5;
    text-decoration: none;
  }
  table.low_table_spblock3 tr:first-child th {
    border-top: #40B2FF 1px solid;
    border-top-left-radius: 10px;
    border-top-right-radius: 0;
  }
  table.low_table_spblock3 tr:first-child td {
    border-top: #40B2FF 1px solid;
    border-top-right-radius: 10px;
  }
  table.low_table_spblock3 tr:last-child th {
    border-bottom-left-radius: 10px;
    border-bottom: #40B2FF 1px solid;
  }
  table.low_table_spblock3 tr:last-child td {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 10px;
  }
}
/*画像*/
/* Scss Document */
/* =======================================================================

 共通項目

======================================================================= */
/*関数*/
/*関数*/
.img_right {
  margin: 0 0 1rem 0;
  text-align: center;
}
.img_right img {
  width: 70%;
  height: auto;
}

.img_left {
  margin: 0 0 1rem 0;
  text-align: center;
}
.img_left img {
  width: 70%;
  height: auto;
}

.img_right2 {
  margin: 0 0 1rem 0;
  text-align: center;
}
.img_right2 img {
  width: 70%;
  height: auto;
}

.img_center {
  margin: 0 0 1rem 0;
  text-align: center;
}
.img_center img {
  width: 50%;
  height: auto;
}

.img_center2 {
  margin: 0 0 1rem 0;
  text-align: center;
}
.img_center2 img {
  width: 70%;
  height: auto;
  display: block;
  margin: 0 auto 0 auto;
}
.img_center2.ajs img {
  width: 20%;
}

.img_center3 {
  margin: 0 0 1rem 0;
}
.img_center3 img {
  width: 100%;
  height: auto;
}

.img_center4 {
  margin: 0 0 0 0;
}
.img_center4 img {
  width: 70%;
  height: auto;
  display: block;
  margin: 1rem auto 1rem auto;
}

.img_two {
  margin: 0 0 0 0;
  text-align: center;
}
.img_two img {
  width: 70%;
  height: auto;
  display: block;
  margin: 0 auto 2rem auto;
}

.machine_box {
  width: 96%;
  margin: 0 auto 0 auto;
}
.machine_box figure {
  width: 100%;
  margin: 0 0 4rem 0;
}
.machine_box figure img {
  width: 70%;
  height: auto;
  display: block;
  margin: 0 auto 2rem auto;
}
.machine_box figure figcaption {
  text-align: center;
  font-size: 1.4rem;
  margin: 0 0 2rem 0;
  line-height: 140%;
  letter-spacing: 0;
}

@media screen and (min-width: 768px), print {
  .img_right {
    float: right;
    margin: 0 0 20px 20px;
  }
  .img_right img {
    width: 400px;
    height: auto;
  }
  .img_left {
    float: left;
    margin: 0 20px 20px 0;
  }
  .img_left img {
    width: 400px;
    height: auto;
  }
  .img_right2 {
    float: right;
    margin: 0 0 20px 20px;
  }
  .img_right2 img {
    width: 200px;
    height: auto;
  }
  .img_center {
    float: none;
    margin: 0 0 20px 0;
    text-align: center;
  }
  .img_center img {
    width: auto;
    height: auto;
  }
  .img_center2 {
    margin: 0 0 20px 0;
    text-align: center;
  }
  .img_center2 img {
    width: 400px;
    height: auto;
    display: block;
    margin: 0 auto 0 auto;
  }
  .img_center2.ajs img {
    width: 108px;
    height: auto;
    display: block;
    margin: 0 auto 0 auto;
  }
  .img_center3 {
    margin: 0 0 20px 0;
    text-align: center;
  }
  .img_center3 img {
    width: 800px;
    height: auto;
    display: block;
    margin: 0 auto 0 auto;
  }
  .img_center4 {
    margin: 0 0 0 0;
  }
  .img_center4 img {
    width: 400px;
    height: auto;
    display: block;
    margin: 30px auto 30px auto;
  }
  .img_two {
    width: 900px;
    margin: 0 auto 30px auto;
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .img_two img {
    width: 400px;
    height: auto;
    display: block;
    margin: 0 0 0 0;
  }
  .machine_box {
    width: 100%;
    margin: 0 0 20px 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .machine_box figure {
    width: 30%;
    margin: 0 0 0 0;
  }
  .machine_box figure img {
    width: 100%;
    height: auto;
    display: block;
    margin: 0 0 20px 0;
  }
  .machine_box figure figcaption {
    text-align: center;
    font-size: 1.8rem;
    margin: 0 0 0 0;
    line-height: 140%;
    letter-spacing: 0;
  }
  .machine_box figure.noimage figcaption {
    margin: 240.44px 0 0 0;
  }
}
/*リスト*/
/* Scss Document */
/* =======================================================================

 共通項目

======================================================================= */
/*関数*/
/*関数*/
/* -----------------------------------------------------------
　リスト
----------------------------------------------------------- */
/*標準 disc*/
ul.list_normal {
  list-style-type: disc;
  line-height: 140%;
  letter-spacing: 0.05em;
  font-size: 1.4rem;
  margin: 0 0 2rem 0;
}
ul.list_normal li {
  margin: 0 0 1rem 1.8rem;
  padding: 0;
}

/*標準2列 disc*/
ul.list_normal_two {
  list-style-type: disc;
  line-height: 140%;
  letter-spacing: 0.05em;
  font-size: 1.4rem;
  margin: 0 0 2rem 0;
}
ul.list_normal_two li {
  margin: 0 0 1rem 1.8rem;
  padding: 0;
}

/*標準3列 disc*/
ul.list_normal_three {
  list-style-type: disc;
  line-height: 140%;
  letter-spacing: 0.05em;
  font-size: 1.4rem;
  margin: 0 0 2rem 0;
}
ul.list_normal_three li {
  margin: 0 0 1rem 1.8rem;
  padding: 0;
}

/*標準 maru*/
ul.list_maru {
  list-style-type: none;
  line-height: 140%;
  letter-spacing: 0.05em;
  font-size: 1.4rem;
  margin: 0 0 2rem 0;
}
ul.list_maru li {
  background: url(../img/maru.svg) no-repeat;
  background-position: left 0.2rem top 0.5rem;
  background-size: 1rem;
  margin: 0 0 1rem 0;
  padding: 0 0 0 1.8rem;
}

/*標準2列 maru*/
ul.list_maru_two {
  list-style-type: none;
  line-height: 140%;
  letter-spacing: 0.05em;
  font-size: 1.4rem;
  margin: 0 0 2rem 0;
}
ul.list_maru_two li {
  background: url(../img/maru.svg) no-repeat;
  background-position: left 0.2rem top 0.5rem;
  background-size: 1rem;
  margin: 0 0 1rem 0;
  padding: 0 0 0 1.8rem;
}

/*標準3列 maru*/
ul.list_maru_three {
  list-style-type: none;
  line-height: 140%;
  letter-spacing: 0.05em;
  font-size: 1.4rem;
  margin: 0 0 2rem 0;
}
ul.list_maru_three li {
  background: url(../img/maru.svg) no-repeat;
  background-position: left 0.2rem top 0.5rem;
  background-size: 1rem;
  margin: 0 0 1rem 0;
  padding: 0 0 0 1.8rem;
}

/*標準 check*/
ul.list_check {
  list-style-type: none;
  line-height: 140%;
  letter-spacing: 0.05em;
  font-size: 1.4rem;
  margin: 0 0 2rem 0;
}
ul.list_check li {
  margin: 0 0 1rem 0;
  padding: 0 0 0 1.8rem;
  position: relative;
}
ul.list_check li::before {
  font-family: "fontello";
  content: "찃";
  position: absolute;
  top: 0.2rem;
  left: 0;
  color: #4A9ED5;
}

@media screen and (min-width: 768px), print {
  ul.list_normal {
    list-style-type: disc;
    line-height: 140%;
    letter-spacing: 0.05em;
    font-size: 1.8rem;
    margin: 0 0 20px 0;
  }
  ul.list_normal li {
    margin: 0 0 10px 25px;
    padding: 0;
  }
  /*標準2列 disc*/
  ul.list_normal_two {
    list-style-type: disc;
    line-height: 140%;
    letter-spacing: 0.05em;
    font-size: 1.8rem;
    margin: 0 0 20px 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  ul.list_normal_two li {
    width: 45%;
    margin: 0 0 10px 25px;
    padding: 0;
  }
  /*標準3列 disc*/
  ul.list_normal_three {
    list-style-type: disc;
    line-height: 140%;
    letter-spacing: 0.05em;
    font-size: 1.8rem;
    margin: 0 0 20px 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  ul.list_normal_three li {
    width: 30%;
    margin: 0 0 10px 25px;
    padding: 0;
  }
  /*標準 maru*/
  ul.list_maru {
    list-style-type: none;
    line-height: 140%;
    letter-spacing: 0.05em;
    font-size: 1.8rem;
    margin: 0 0 20px 0;
  }
  ul.list_maru li {
    background: url(../img/maru.svg) no-repeat;
    background-position: left top 5px;
    background-size: 15.84px;
    margin: 0 0 10px 0;
    padding: 0 0 0 25px;
  }
  /*標準2列 maru*/
  ul.list_maru_two {
    list-style-type: none;
    line-height: 140%;
    letter-spacing: 0.05em;
    font-size: 1.8rem;
    margin: 0 0 20px 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  ul.list_maru_two li {
    width: 45%;
    background: url(../img/maru.svg) no-repeat;
    background-position: left top 5px;
    background-size: 15.84px;
    margin: 0 0 10px 0;
    padding: 0 0 0 25px;
  }
  /*標準3列 maru*/
  ul.list_maru_three {
    list-style-type: none;
    line-height: 140%;
    letter-spacing: 0.05em;
    font-size: 1.8rem;
    margin: 0 0 20px 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  ul.list_maru_three li {
    width: 30%;
    background: url(../img/maru.svg) no-repeat;
    background-position: left top 5px;
    background-size: 15.84px;
    margin: 0 0 10px 0;
    padding: 0 0 0 25px;
  }
  /*標準 check*/
  ul.list_check {
    list-style-type: none;
    line-height: 140%;
    letter-spacing: 0.05em;
    font-size: 1.8rem;
    margin: 0 0 20px 0;
  }
  ul.list_check li {
    margin: 0 0 1rem 0;
    padding: 0 0 0 2.5rem;
    position: relative;
  }
  ul.list_check li::before {
    font-family: "fontello";
    content: "찃";
    position: absolute;
    top: 0.2rem;
    left: 0;
    color: #4A9ED5;
  }
}
/* -----------------------------------------------------------
　定義リスト
----------------------------------------------------------- */
/*略歴*/
dl.bio_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  font-size: 1.4rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0 0 2rem 0;
  line-height: 160%;
  width: 100%;
}
dl.bio_list dt {
  width: 18%;
  margin: 0 0 1rem 0;
}
dl.bio_list dd {
  width: 82%;
  margin: 0 0 1rem 0;
}
dl.bio_list.mb0 {
  margin: 0 0 0 0;
}

/*数字*/
dl.num_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  font-size: 1.4rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0 0 2rem 0;
  line-height: 160%;
  width: 100%;
}
dl.num_list dt {
  width: 6%;
  margin: 0 0 1rem 0;
}
dl.num_list dd {
  width: 94%;
  margin: 0 0 1rem 0;
}

/*数字*/
dl.num_list2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  font-size: 1.4rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0 0 2rem 0;
  line-height: 160%;
  width: 100%;
}
dl.num_list2 dt {
  width: 10%;
  margin: 0 0 1rem 0;
  color: #ffffff;
  background: #0068B7;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
dl.num_list2 dd {
  width: 90%;
  margin: 0 0 1rem 0;
  color: #2a2a2a;
  background-color: #E2F3FF;
  padding: 0.5rem 1rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/*タイトルボックス*/
dl.title_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  font-size: 1.4rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0 0 2rem 0;
  line-height: 160%;
}
dl.title_box dt {
  width: 100%;
  margin: 0;
  background-color: #E2F3FF;
  color: #0068B7;
  padding: 1rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-left: #40B2FF 1px solid;
  border-right: #40B2FF 1px solid;
  border-bottom: #40B2FF 1px solid;
}
dl.title_box dt:first-child {
  border-top: #40B2FF 1px solid;
}
dl.title_box dd {
  width: 100%;
  margin: 0;
  padding: 1rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-left: #40B2FF 1px solid;
  border-right: #40B2FF 1px solid;
  border-bottom: #40B2FF 1px solid;
}

@media screen and (min-width: 768px), print {
  /*略歴*/
  dl.bio_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    font-size: 1.8rem;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin: 0 0 0 0;
    line-height: 160%;
    width: 528px;
  }
  dl.bio_list dt {
    width: 70px;
    margin: 0 0 10px 0;
  }
  dl.bio_list dd {
    width: 458px;
    margin: 0 0 10px 0;
  }
  dl.bio_list.mb0 {
    margin: 0 0 0 0;
  }
  /*数字*/
  dl.num_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    font-size: 1.8rem;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin: 0 0 20px 0;
    line-height: 160%;
    width: 1100px;
  }
  dl.num_list dt {
    width: 25px;
    margin: 0 0 10px 0;
  }
  dl.num_list dd {
    width: 1075px;
    margin: 0 0 10px 0;
  }
  /*数字*/
  dl.num_list2 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    font-size: 1.8rem;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin: 0 0 20px 0;
    line-height: 160%;
    width: 1100px;
  }
  dl.num_list2 dt {
    width: 50px;
    margin: 0 0 10px 0;
    color: #ffffff;
    background: #0068B7;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  dl.num_list2 dd {
    width: 1050px;
    margin: 0 0 10px 0;
    color: #2a2a2a;
    background-color: #E2F3FF;
    padding: 20px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  /*タイトルボックス*/
  dl.title_box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    font-size: 1.8rem;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin: 0 0 20px 0;
    line-height: 160%;
  }
  dl.title_box dt {
    width: 100%;
    margin: 0;
    background-color: #E2F3FF;
    color: #0068B7;
    padding: 15px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    border-left: #40B2FF 1px solid;
    border-right: #40B2FF 1px solid;
    border-bottom: #40B2FF 1px solid;
  }
  dl.title_box dt:first-child {
    border-top: #40B2FF 1px solid;
  }
  dl.title_box dd {
    width: 100%;
    margin: 0;
    padding: 15px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    border-left: #40B2FF 1px solid;
    border-right: #40B2FF 1px solid;
    border-bottom: #40B2FF 1px solid;
  }
}
/* -----------------------------------------------------------
　コンセプト
----------------------------------------------------------- */
ul.concept_list {
  list-style-type: none;
  width: 100%;
  margin: 0 0 1rem 0;
  border: #4A9ED5 1px solid;
  padding: 1rem 1rem 0.5rem 1rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 1.4rem;
  line-height: 140%;
}
ul.concept_list li {
  margin: 0 0 1rem 0;
  border-bottom: #4A9ED5 2px dotted;
  padding: 0 0 1rem 2rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
}
ul.concept_list li::before {
  font-family: "fontello";
  content: "찃";
  position: absolute;
  top: calc(50% - 1.2rem);
  left: 0;
  color: #4A9ED5;
}
ul.concept_list li:last-child {
  margin: 0;
  border-bottom: none;
  padding: 0 0 1rem 2rem;
}

@media screen and (min-width: 768px), print {
  ul.concept_list {
    list-style-type: none;
    width: 100%;
    margin: 0 0 2rem 0;
    border: #4A9ED5 1px solid;
    padding: 2rem;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    font-size: 1.8rem;
  }
  ul.concept_list li {
    margin: 0 0 2rem 0;
    border-bottom: #4A9ED5 2px dotted;
    padding: 0 0 2rem 3rem;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    position: relative;
  }
  ul.concept_list li::before {
    font-family: "fontello";
    content: "찃";
    position: absolute;
    top: 0.4rem;
    left: 0;
    color: #4A9ED5;
  }
  ul.concept_list li:last-child {
    margin: 0;
    border-bottom: none;
    padding: 0 0 0 3rem;
  }
}
/*汎用*/
/* Scss Document */
/* =======================================================================

 共通項目

======================================================================= */
/*関数*/
/*関数*/
/* -----------------------------------------------------------
　汎用
----------------------------------------------------------- */
/*矢印*/
.arrow {
  width: 0;
  height: 0;
  border: none;
  border-left: 2.6rem solid transparent;
  border-right: 2.6rem solid transparent;
  border-top: 2.4rem solid #89BAE1;
  text-align: center;
  display: block;
  margin: 2rem auto;
}

/*強調*/
.emphasis {
  background-color: #D5EBFF;
  padding: 1rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0 0 2rem 0;
}
.emphasis p.mb_none {
  margin: 0;
}
.emphasis ul.mb_none {
  margin: 0;
}
.emphasis.ajs {
  width: 100%;
}

/*二列*/
/*下層電話*/
.low_tel {
  margin: 0 0 1rem 0;
}
.low_tel span a {
  text-decoration: none;
  color: #2a2a2a;
}

.text_bold {
  font-weight: bold;
}

.text_red {
  color: #ff0000;
}

.text_underline {
  text-decoration: underline;
}

.large_center {
  text-align: center;
  font-size: 1.7rem;
}

@media screen and (min-width: 768px), print {
  /*矢印*/
  .arrow {
    width: 0;
    height: 0;
    border: none;
    border-left: 37px solid transparent;
    border-right: 37px solid transparent;
    border-top: 30px solid #89BAE1;
    text-align: center;
    display: block;
    margin: 30px auto;
  }
  /*二列*/
  .two_box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: 1100px;
  }
  .two_box section {
    width: 48%;
  }
  /*強調*/
  .emphasis {
    background-color: #D5EBFF;
    padding: 20px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin: 0 0 20px 0;
  }
  .emphasis p.mb_none {
    margin: 0;
  }
  .emphasis ul.mb_none {
    margin: 0;
  }
  .emphasis.ajs {
    width: 600px;
  }
  /*下層電話*/
  .low_tel {
    margin: 0 0 20px 0;
  }
  .low_tel span a {
    text-decoration: none;
    color: #2a2a2a;
  }
  .text_bold {
    font-weight: bold;
  }
  .text_red {
    color: #ff0000;
  }
  .text_underline {
    text-decoration: underline;
  }
  .large_center {
    text-align: center;
    font-size: 3rem;
  }
}
/* -----------------------------------------------------------
　ぱんくず
----------------------------------------------------------- */
ul.pankuzu_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style-type: none;
  width: 96%;
  margin: 2rem auto 1rem auto;
}
ul.pankuzu_list li::after {
  content: "＞";
  font-size: 1.4rem;
  color: #2a2a2a;
  margin: 0 0.5rem;
}
ul.pankuzu_list li a {
  font-size: 1.4rem;
  color: #2a2a2a;
  text-decoration: none;
}
ul.pankuzu_list li:last-child:after {
  content: "";
  margin: 0;
}

@media screen and (min-width: 768px), print {
  ul.pankuzu_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    list-style-type: none;
    width: 1100px;
    margin: 20px auto 0 auto;
  }
  ul.pankuzu_list li::after {
    content: "＞";
    font-size: 1.8rem;
    color: #2a2a2a;
    margin: 0 10px;
  }
  ul.pankuzu_list li a {
    font-size: 1.8rem;
    color: #2a2a2a;
    text-decoration: none;
  }
  ul.pankuzu_list li:last-child:after {
    content: "";
    margin: 0;
  }
}
/* -----------------------------------------------------------
　ライトボックス
----------------------------------------------------------- */
.lightbox {
  z-index: 9999999 !important;
}

.lightbox_frame {
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.lightbox_frame .img_box {
  width: 48%;
  margin: 0 0 2rem 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.lightbox_frame .img_box a {
  text-decoration: none;
  width: 100%;
}
.lightbox_frame .img_box a img {
  width: 100%;
}
.lightbox_frame .img_box a span {
  display: block;
  text-align: center;
  color: #2a2a2a;
  font-size: 1.4rem;
  margin: 1.5rem 0 0 0;
  font-weight: bold;
}

.lightbox_frame2 {
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.lightbox_frame2 .img_box {
  width: 48%;
  margin: 0 0 2rem 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.lightbox_frame2 .img_box a {
  text-decoration: none;
  width: 100%;
}
.lightbox_frame2 .img_box a img {
  width: 100%;
}

@media screen and (min-width: 768px), print {
  .lightbox {
    z-index: 9999999 !important;
  }
  .lightbox_frame {
    width: 100%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .lightbox_frame .img_box {
    width: 380px;
    margin: 0 0 60px 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .lightbox_frame .img_box a {
    text-decoration: none;
    width: 380px;
  }
  .lightbox_frame .img_box a img {
    width: 380px;
  }
  .lightbox_frame .img_box a span {
    display: block;
    text-align: center;
    color: #2a2a2a;
    font-size: 2rem;
    margin: 30px 0 0 0;
    font-weight: bold;
  }
  .lightbox_frame2 {
    width: 100%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .lightbox_frame2 .img_box {
    width: 380px;
    margin: 0 0 60px 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .lightbox_frame2 .img_box a {
    text-decoration: none;
    width: 380px;
  }
  .lightbox_frame2 .img_box a img {
    width: 380px;
  }
}
/* -----------------------------------------------------------
　バナー
----------------------------------------------------------- */
.banner_01 {
  width: 96%;
  margin: 0 auto 2rem auto;
  border: #0068B7 2px solid;
  border-radius: 1rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  background-color: #4A9ED5;
  padding: 1rem;
  text-decoration: none;
  color: #2a2a2a;
}
.banner_01 img {
  width: 70%;
  display: block;
  margin: 0 auto 1rem auto;
}
.banner_01 .banner_title {
  display: block;
  text-align: center;
  font-size: 2rem;
  font-weight: bold;
  color: #2a2a2a;
  margin: 0 0 1rem 0;
}
.banner_01 .banner_text {
  display: block;
  text-align: left;
  font-size: 1.4rem;
  font-weight: normal;
  color: #2a2a2a;
  margin: 0 0 1rem 0;
  line-height: 140%;
}
.banner_01 ul {
  color: #2a2a2a;
}

@media screen and (min-width: 768px), print {
  .banner_01 {
    width: 800px;
    height: 300px;
    margin: 0 auto 40px auto;
    border: #0068B7 2px solid;
    border-radius: 1rem;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: block;
    background-color: #4A9ED5;
    padding: 20px;
    text-decoration: none;
    color: #2a2a2a;
    position: relative;
  }
  .banner_01 img {
    position: absolute;
    top: 20px;
    left: 20px;
    width: 200px;
    display: block;
    margin: 0;
  }
  .banner_01 .banner_title {
    position: absolute;
    top: 20px;
    left: 240px;
    display: block;
    text-align: left;
    font-size: 3rem;
    font-weight: bold;
    color: #2a2a2a;
    margin: 0 0 0 0;
  }
  .banner_01 .banner_text {
    position: absolute;
    top: 80px;
    left: 240px;
    display: block;
    text-align: left;
    font-size: 1.6rem;
    font-weight: normal;
    color: #2a2a2a;
    margin: 0 0 1rem 0;
    line-height: 160%;
    width: 500px;
  }
  .banner_01 ul {
    position: absolute;
    top: 80px;
    left: 240px;
  }
}
/* -----------------------------------------------------------
　リンク、ボタン
----------------------------------------------------------- */
.low_link_text {
  color: #0068B7;
}

.low_button {
  background-color: #0068B7;
  width: auto;
  height: auto;
  margin: 0 0 2rem 0;
  text-align: left;
  text-decoration: none;
  padding: 1rem 2.5rem 1rem 2.5rem;
  line-height: 120%;
  display: inline-block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 3rem;
}
.low_button span {
  font-family: "zen_maru_gothic_Medium";
  font-size: 1.4rem;
  font-weight: normal;
  color: #ffffff;
}
.low_button span::after {
  content: "";
  display: inline-block;
  width: 4.2rem;
  height: 1.4rem;
  background: url("../img/low_button_arrow.svg") no-repeat;
  background-size: contain;
  margin: 0 0 0 0.3rem;
}

@media screen and (min-width: 768px), print {
  .low_link_text {
    color: #0068B7;
    -webkit-transition: 0.5s;
    transition: 0.5s;
  }
  .low_link_text:hover {
    color: #FF9900;
    -webkit-transition: 0.5s;
    transition: 0.5s;
  }
  .low_button {
    background-color: #0068B7;
    width: auto;
    height: auto;
    margin: 0 0 30px 0;
    text-align: left;
    text-decoration: none;
    padding: 10px 34px 10px 34px;
    line-height: 120%;
    display: inline-block;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    border-radius: 3rem;
    -webkit-transition: 0.5s;
    transition: 0.5s;
  }
  .low_button span {
    font-family: "zen_maru_gothic_Medium";
    font-size: 1.8rem;
    font-weight: normal;
    color: #ffffff;
  }
  .low_button span::after {
    content: "";
    display: inline-block;
    width: 49.667px;
    height: 18.939px;
    background: url("../img/low_button_arrow.svg") no-repeat;
    background-size: contain;
    margin: 0 0 0 5px;
  }
  .low_button:hover {
    background-color: #FFCC00;
    -webkit-transition: 0.5s;
    transition: 0.5s;
  }
  .low_button:hover span {
    color: #ffffff;
    -webkit-transition: 0.5s;
    transition: 0.5s;
  }
  .low_button:hover span::after {
    content: "";
    display: inline-block;
    width: 49.667px;
    height: 18.939px;
    background: url("../img/low_button_arrow_hover.svg") no-repeat;
    background-size: contain;
    margin: 0 0 0 5px;
  }
}
/*下層*/
/* Scss Document */
/* =======================================================================

 共通項目

======================================================================= */
/*関数*/
/*関数*/
/* -----------------------------------------------------------
　院長紹介
----------------------------------------------------------- */
.img_doctor {
  margin: 0 0 1rem 0;
  text-align: center;
}
.img_doctor img {
  width: 70%;
  height: auto;
}

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

@media screen and (min-width: 768px), print {
  .img_doctor {
    float: right;
    margin: 0 0 20px 20px;
    text-align: right;
  }
  .img_doctor img {
    width: 400px;
    height: auto;
  }
  .doctor_name {
    text-align: right;
  }
  .doctor_name span {
    font-size: 2.2rem;
  }
}
/* -----------------------------------------------------------
　医院紹介
----------------------------------------------------------- */
/*
.machine_box{
  width: 96%;
  margin:4rem auto 0 auto;
  figure{
    width: 100%;
    margin: 0 0 4rem 0;    
    figcaption{
      text-align: center;
      font-weight: normal;
      margin: 0 0 0.5rem 0;
      font-size: 1.6rem;
    }
    img{
      width: 100%;
      margin: 0 0 1rem 0;
    }
  }
}

.machine_box2{
  width: 96%;
  margin:4rem auto 0 auto;  
  section{
    width: 100%;
    margin: 0 0 4rem 0;
    h3{
    margin: 0 0 1rem 0; 
    }
    img{
      width: 100%;
      margin: 0 0 1rem 0;
    }
  }
}
*/
/*スライダー*/
.slider-pro {
  margin: 0 auto 2rem auto !important;
}
.slider-pro p.sp-layer {
  font-size: 2.4rem !important;
}

@media screen and (min-width: 768px), print {
  /*  
  .machine_box{
    width: 100%;
    margin: 80px 0 20px 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;  
    figure{
      width: 48%;
      margin: 0 0 40px 0;    
      figcaption{
        text-align: center;
        font-weight: normal;
        margin: 0 0 10px 0;
        font-size: 2.2rem;
      }
      img{
        width: 100%;
        margin: 0 0 20px 0;
      }
    }
  }

  .machine_box2{
    width: 100%;
    margin: 80px 0 20px 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;   
    section{
      width: 48%;
      margin: 0 0 40px 0;  
      h3{
      margin: 0 0 20px 0; 
      }
      img{
        width: 100%;
        margin: 0 0 20px 0;
      }
    }
  } 
  */
  /*スライダー*/
  .slider-pro {
    margin: 0 auto 30px auto !important;
  }
  .slider-pro p.sp-layer {
    font-size: 2rem !important;
  }
}
/* -----------------------------------------------------------
　初めての方へ(流れ)
----------------------------------------------------------- */
.flow_box {
  border: #ABD3EF 2px solid;
  border-radius: 0.8rem;
  padding: 2rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0 0 2rem 0;
  position: relative;
}
.flow_box::after {
  content: "";
  width: 96%;
  height: 96%;
  position: absolute;
  top: 2%;
  left: 0;
  right: 0;
  margin: 0 auto;
  z-index: 1;
  display: block;
  border: #ABD3EF 3px dotted;
  border-radius: 0.8rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.flow_box .flow_title {
  font-family: "zen_maru_gothic_Medium";
  font-weight: normal;
  font-size: 1.8rem;
  color: #2a2a2a;
  margin: 0 0 1rem 0;
}
.flow_box ul {
  position: relative;
  z-index: 2;
  margin: 0;
}

@media screen and (min-width: 768px), print {
  .flow_box {
    border: #ABD3EF 2px solid;
    border-radius: 8px;
    padding: 30px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin: 0 0 2rem 0;
    position: relative;
  }
  .flow_box::after {
    content: "";
    width: 1080px;
    height: calc(100% - 16px);
    position: absolute;
    top: 8px;
    left: 0;
    right: 0;
    margin: 0 auto;
    z-index: 1;
    display: block;
    border: #ABD3EF 2px dotted;
    border-radius: 8px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .flow_box .flow_title {
    font-family: "zen_maru_gothic_Medium";
    font-weight: normal;
    font-size: 1.8rem;
    color: #2a2a2a;
    margin: 0 0 1rem 0;
  }
  .flow_box ul {
    position: relative;
    z-index: 2;
    margin: 0;
  }
}
/* -----------------------------------------------------------
　アクセス・診療時間
----------------------------------------------------------- */
.access_box ul.access_list {
  list-style-type: none;
  font-family: "zen_maru_gothic_Medium";
  font-weight: normal;
  font-size: 1.2rem;
  line-height: 160%;
  margin: 0 0 2rem 0;
}
.access_box ul.access_list li {
  margin: 0 0 0.5rem 0;
  padding: 0 0 0 1.5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.access_box ul.access_list li:nth-child(1) {
  background: url("../img/icon_maru1.svg") no-repeat;
  background-size: 1rem;
  background-position: left center;
}
.access_box ul.access_list li:nth-child(2) {
  background: url("../img/icon_maru2.svg") no-repeat;
  background-size: 1rem;
  background-position: left center;
}
.access_box ul.access_list li:nth-child(3) {
  background: url("../img/icon_maru3.svg") no-repeat;
  background-size: 1rem;
  background-position: left center;
}
.access_box .img_map {
  width: 100%;
}
.access_box .img_map img {
  width: 100%;
  height: auto;
  display: block;
  margin: 0 0 2rem 0;
}

.img_parking_box .img_parking {
  width: 100%;
}
.img_parking_box .img_parking img {
  width: 100%;
  height: auto;
  display: block;
  margin: 0 0 2rem 0;
}

iframe.accessmap {
  width: 96%;
  height: 500px;
  display: block;
  margin: 0 auto 2rem auto;
}

@media screen and (min-width: 768px), print {
  .access_box {
    width: 1100px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .access_box ul.access_list {
    width: 400px;
    list-style-type: none;
    font-family: "zen_maru_gothic_Medium";
    font-weight: normal;
    font-size: 1.8rem;
    line-height: 160%;
    margin: 0;
  }
  .access_box ul.access_list li {
    margin: 0 0 10px 0;
    padding: 0 0 0 19px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .access_box ul.access_list li:nth-child(1) {
    background: url("../img/icon_maru1.svg") no-repeat;
    background-size: 12.5px;
    background-position: left center;
  }
  .access_box ul.access_list li:nth-child(2) {
    background: url("../img/icon_maru2.svg") no-repeat;
    background-size: 12.5px;
    background-position: left center;
  }
  .access_box ul.access_list li:nth-child(3) {
    background: url("../img/icon_maru3.svg") no-repeat;
    background-size: 12.5px;
    background-position: left center;
  }
  .access_box .img_map {
    width: 600px;
  }
  .access_box .img_map img {
    width: 600px;
    height: auto;
    display: block;
    margin: 0 0 30px 0;
  }
  .img_parking_box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .img_parking_box .img_parking {
    width: 600px;
  }
  .img_parking_box .img_parking img {
    width: 600px;
    height: auto;
    display: block;
    margin: 0 0 30px 0;
  }
  iframe.accessmap {
    width: 100%;
    height: 591px;
    display: block;
    margin: 0 0 30px 0;
  }
}
/* -----------------------------------------------------------
　ファースト
----------------------------------------------------------- */
.reservation_box_bg {
  width: 100%;
  background: #E2F3FF;
  padding: 2rem 1rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.reservation_box_bg .reservation_box {
  background: #ffffff;
  padding: 3rem 1rem 1rem 1rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.reservation_box_bg .reservation_box .lreservation_tel {
  text-align: center;
  color: #0068B7;
  font-size: 2.6rem;
}
.reservation_box_bg .reservation_box .lreservation_tel span {
  color: #0068B7;
}
.reservation_box_bg .reservation_box .lreservation_tel span a {
  text-decoration: none;
  color: #0068B7;
}

.bring_box_bg {
  width: 100%;
  background: #E2F3FF;
  padding: 2rem 1rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 2rem 0 0 0;
}
.bring_box_bg .bring_box {
  background: #ffffff;
  padding: 3rem 1rem 1rem 1rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.bring_box_bg .bring_box .lreservation_tel {
  text-align: center;
  color: #0068B7;
  font-size: 2.6rem;
}
.bring_box_bg .bring_box .lreservation_tel span {
  color: #0068B7;
}
.bring_box_bg .bring_box .lreservation_tel span a {
  text-decoration: none;
  color: #0068B7;
}

@media screen and (min-width: 768px), print {
  .reservation_box_bg {
    width: 100%;
    background: #E2F3FF;
    padding: 6rem 8rem;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .reservation_box_bg .reservation_box {
    background: #ffffff;
    padding: 3rem 3rem 3rem 3rem;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .reservation_box_bg .reservation_box p {
    text-align: center;
  }
  .reservation_box_bg .reservation_box .lreservation_tel {
    text-align: center;
    color: #0068B7;
    font-size: 4.6rem;
  }
  .reservation_box_bg .reservation_box .lreservation_tel span {
    color: #0068B7;
  }
  .reservation_box_bg .reservation_box .lreservation_tel span a {
    text-decoration: none;
    color: #0068B7;
  }
  .bring_box_bg {
    width: 55%;
    background: #E2F3FF;
    padding: 3rem 4rem;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .bring_box_bg .bring_box {
    background: #ffffff;
    padding: 2rem;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .bring_box_bg .bring_box p {
    text-align: center;
  }
  .bring_box_bg .bring_box .lreservation_tel {
    text-align: center;
    color: #0068B7;
    font-size: 4.6rem;
  }
  .bring_box_bg .bring_box .lreservation_tel span {
    color: #0068B7;
  }
  .bring_box_bg .bring_box .lreservation_tel span a {
    text-decoration: none;
    color: #0068B7;
  }
}
/*アニメーション用*/
/*
@use "animation.scss" as *;
*/
/* -----------------------------------------------------------
 フォントサイズ基本
----------------------------------------------------------- */
html {
  font-size: 3.125vw;
  overflow-y: auto;
  font-family: "zen_maru_gothic_Medium", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "メイリオ", Meiryo, Arial, sans-serif;
  color: #2a2a2a;
  background-color: #ffffff;
  padding: 0 0 13vw 0;
  /*ページ内リンク用*/
  scroll-behavior: smooth;
}

@media screen and (min-width: 768px), print {
  html {
    font-size: 62.5%;
    overflow-y: scroll;
    font-family: "zen_maru_gothic_Medium", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "メイリオ", Meiryo, Arial, sans-serif;
    color: #2a2a2a;
    background-color: #ffffff;
    padding: 0;
    /*ページ内リンク用*/
    scroll-behavior: smooth;
    /*スクロール後の余白設定*/
    scroll-padding-top: 180px;
  }
}
/* -----------------------------------------------------------
 構成
----------------------------------------------------------- */
body {
  position: relative;
  width: 100%;
  margin: 0;
  -webkit-text-size-adjust: 100%;
}

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

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

.pc_none {
  display: block;
}

.sp_none {
  display: none;
}

.pc_none_span {
  display: inline;
}

.sp_none_span {
  display: none;
}

@media screen and (min-width: 768px), print {
  body {
    position: relative;
    z-index: 0;
    overflow: hidden;
    min-width: 1280px;
    -webkit-text-size-adjust: 100%;
  }
  section {
    height: auto;
    overflow: hidden;
    margin: 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: 0;
  padding: 0;
}

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

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

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

@media screen and (min-width: 768px), print {
  .wrapper {
    height: auto;
    width: 100%;
    margin: 0;
    padding: 0;
  }
  .wrapper_low {
    height: auto;
    width: 100%;
    margin: 0;
    padding: 0;
  }
  .main {
    height: auto;
    width: 100%;
    margin: 0 auto 0 auto;
    padding: 0;
  }
  .main_low {
    height: auto;
    width: 1100px;
    margin: 50px auto 100px auto;
    padding: 0;
  }
}
/* -----------------------------------------------------------
　ヘッダー
----------------------------------------------------------- */
header.header {
  padding: 2vw 0 0 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  z-index: 9999999;
}
header.header .header_box {
  /*ロゴとハンバーガー*/
}
header.header .header_box .header_top {
  width: 100%;
  height: 14vw;
  margin: 0;
  position: relative;
  z-index: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  /*ハンバーガー*/
}
header.header .header_box .header_top .container {
  width: 15%;
}
header.header .header_box .header_top {
  /*ロゴ*/
}
header.header .header_box .header_top .head_logo {
  width: 80%;
  margin: 0 0 0 2%;
}
header.header .header_box .header_top .head_logo a {
  display: block;
  width: 100%;
  text-decoration: none;
}
header.header .header_box .header_top .head_logo a img {
  width: 95%;
  height: auto;
}
header.header .header_box {
  /*ヘッダー情報*/
}
header.header .header_box .header_info {
  display: none;
}

@media screen and (min-width: 768px), print {
  header.header {
    padding: 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    position: relative;
    z-index: 9999;
    width: 100%;
    height: 96px;
  }
  header.header .header_box {
    width: 1100px;
    height: 96px;
    margin: 0 auto;
    position: relative;
    /*ロゴとハンバーガー*/
  }
  header.header .header_box .header_top {
    width: 384.13px;
    height: auto;
    margin: 0;
    position: absolute;
    top: 19px;
    left: 0;
    z-index: 0;
    display: block;
    /*ハンバーガー*/
  }
  header.header .header_box .header_top .container {
    display: none;
  }
  header.header .header_box .header_top {
    /*ロゴ*/
  }
  header.header .header_box .header_top .head_logo {
    width: 384.13px;
    margin: 0;
  }
  header.header .header_box .header_top .head_logo a {
    display: block;
    width: 384.13px;
    text-decoration: none;
  }
  header.header .header_box .header_top .head_logo a img {
    width: 384.13px;
    height: auto;
  }
  header.header .header_box {
    /*ヘッダー情報*/
  }
  header.header .header_box .header_info {
    margin: 0;
    width: auto;
    height: auto;
    position: absolute;
    top: 34px;
    right: 30px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    /*住所*/
  }
  header.header .header_box .header_info .header_address {
    margin: 13px 14px 0 0;
    text-align: left;
    font-size: 1.6rem;
    font-weight: normal;
    color: #2a2a2a;
    line-height: 100%;
    letter-spacing: 0.03em;
  }
  header.header .header_box .header_info {
    /*電話番号*/
  }
  header.header .header_box .header_info .header_tel {
    margin: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    font-family: "zen_maru_gothic_Medium";
    font-weight: normal;
    font-size: 2.8rem;
    text-decoration: none;
    color: #40B2FF;
    line-height: 100%;
    letter-spacing: 0.01em;
  }
  header.header .header_box .header_info .header_tel i {
    font-size: 2.4rem;
  }
}
/* -----------------------------------------------------------
　グローバルナビ
----------------------------------------------------------- */
nav.main_nav_pc {
  display: none;
}

@media screen and (min-width: 768px), print {
  nav.main_nav_pc {
    display: block;
    width: 100%;
    height: 80px;
    margin: 0;
    position: relative;
    z-index: 999999;
  }
  nav.main_nav_pc ul {
    width: 1100px;
    height: 80px;
    margin: 0 auto;
    padding: 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    list-style-type: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  nav.main_nav_pc ul li {
    display: block;
    width: 157.1428571429px;
    height: 80px;
    margin: 0;
    padding: 0;
    position: relative;
  }
  nav.main_nav_pc ul li::before {
    content: "";
    width: 2px;
    height: 80px;
    display: block;
    background: url("../img/gline.svg") no-repeat;
    background-position: left top;
    background-size: 2px;
    position: absolute;
    top: 0;
    left: 0;
  }
  nav.main_nav_pc ul li.home a::before {
    content: "";
    display: block;
    width: 27.8px;
    height: 27px;
    background: url("../img/icon_02.svg") no-repeat;
    background-size: contain;
    margin: 0 0 13px 0;
  }
  nav.main_nav_pc ul li.first a::before {
    content: "";
    display: block;
    width: 21.43px;
    height: 28.03px;
    background: url("../img/icon_03.svg") no-repeat;
    background-size: contain;
    margin: 0 0 11px 0;
  }
  nav.main_nav_pc ul li.treatment a::before {
    content: "";
    display: block;
    width: 24px;
    height: 30.33px;
    background: url("../img/icon_04.svg") no-repeat;
    background-size: contain;
    margin: 0 0 12px 0;
  }
  nav.main_nav_pc ul li.introduction a::before {
    content: "";
    display: block;
    width: 36px;
    height: 33.86px;
    background: url("../img/icon_05.svg") no-repeat;
    background-size: contain;
    margin: 0 0 14px 0;
  }
  nav.main_nav_pc ul li.access a::before {
    content: "";
    display: block;
    width: 32px;
    height: 29.7px;
    background: url("../img/icon_06.svg") no-repeat;
    background-size: contain;
    margin: 0 0 16px 0;
  }
  nav.main_nav_pc ul li.price a::before {
    content: "";
    display: block;
    width: 29px;
    height: 28.74px;
    background: url("../img/icon_07.svg") no-repeat;
    background-size: contain;
    margin: 0 0 14px 0;
  }
  nav.main_nav_pc ul li.recruit a::before {
    content: "";
    display: block;
    width: 32px;
    height: 31.65px;
    background: url("../img/icon_08.svg") no-repeat;
    background-size: contain;
    margin: 0 0 10px 0;
  }
  nav.main_nav_pc ul li.treatment a span::after, nav.main_nav_pc ul li.introduction a span::after {
    font-family: "fontello";
    content: "\e80e";
    margin: 0 0 0 5px;
  }
  nav.main_nav_pc ul li.treatment ul li a span::after, nav.main_nav_pc ul li.introduction ul li a span::after {
    content: "";
    margin: 0;
  }
  nav.main_nav_pc ul li.treatment:hover, nav.main_nav_pc ul li.introduction:hover {
    cursor: pointer;
    cursor: hand;
  }
  nav.main_nav_pc ul li:last-child::after {
    content: "";
    width: 2px;
    height: 80px;
    display: block;
    background: url("../img/gline.svg") no-repeat;
    background-position: left top;
    background-size: 2px;
    position: absolute;
    top: 0;
    right: 0;
  }
  nav.main_nav_pc ul li.open_treatment a span::after {
    font-family: "fontello";
    content: "\e817";
    margin: 0 0 0 5px;
  }
  nav.main_nav_pc ul li a {
    width: 100%;
    height: 80px;
    text-decoration: none;
    text-align: center;
    color: #2a2a2a;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin: 0;
    padding: 0 0 14px 0;
    letter-spacing: 0;
    font-family: "zen_maru_gothic_Medium";
    font-weight: normal;
    font-size: 1.6rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  nav.main_nav_pc ul li a span {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  nav.main_nav_pc ul li a:hover {
    opacity: 0.6;
    -webkit-transition: 0.5s;
    transition: 0.5s;
  }
  nav.main_nav_pc ul li .sub_nav_box {
    display: none;
    width: 428px;
  }
  nav.main_nav_pc ul li .sub_nav_box ul {
    width: 428px;
    height: auto;
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    position: relative;
    z-index: 9999;
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  nav.main_nav_pc ul li .sub_nav_box ul li {
    display: block;
    width: 214px;
    height: 37px;
    margin: 0;
    padding: 0;
  }
  nav.main_nav_pc ul li .sub_nav_box ul li a {
    width: 100%;
    height: 37px;
    text-decoration: none;
    color: #2a2a2a;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin: 0;
    padding: 0 0 0 25px;
    letter-spacing: 0.05em;
    background-color: #0068B7;
    color: #ffffff;
    font-size: 1.8rem;
    font-weight: normal;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    border-right: #ffffff 1px solid;
    border-bottom: #ffffff 1px solid;
    position: relative;
  }
  nav.main_nav_pc ul li .sub_nav_box ul li a::before {
    display: none;
  }
  nav.main_nav_pc ul li .sub_nav_box ul li a::after {
    position: absolute;
    top: calc(50% - 3.5px);
    left: 13px;
    content: "";
    display: block;
    width: 6px;
    height: 7px;
    background: url("../img/icon_arrow_02.svg") no-repeat;
    background-size: contain;
    background-position: center;
  }
  nav.main_nav_pc ul li .sub_nav_box ul li a {
    -webkit-transition: 0.5s;
    transition: 0.5s;
  }
  nav.main_nav_pc ul li .sub_nav_box ul li a:hover {
    opacity: 0.6;
    -webkit-transition: 0.5s;
    transition: 0.5s;
    cursor: pointer;
    cursor: hand;
  }
  nav.main_nav_pc ul li .sub_nav_box ul li.sports a {
    letter-spacing: 0;
  }
  nav.main_nav_pc ul li .sub_nav_box ul li.long {
    width: 428px;
  }
  nav.main_nav_pc ul li .sub_nav_box ul li::before {
    display: none;
  }
  nav.main_nav_pc ul li .sub_nav_box ul li::after {
    display: none;
  }
  nav.main_nav_pc ul li .sub_nav_box ul li span {
    font-size: 1.6rem;
  }
  nav.main_nav_pc ul li .sub_nav_box ul li span br {
    display: none;
  }
  nav.main_nav_pc ul li .sub_nav_box2 {
    display: none;
    width: 157.14px;
  }
  nav.main_nav_pc ul li .sub_nav_box2 ul {
    width: 157.14px;
    height: auto;
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    position: relative;
    z-index: 9999;
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  nav.main_nav_pc ul li .sub_nav_box2 ul li {
    display: block;
    width: 157.14px;
    height: 37px;
    margin: 0;
    padding: 0;
  }
  nav.main_nav_pc ul li .sub_nav_box2 ul li a {
    width: 100%;
    height: 37px;
    text-decoration: none;
    background-color: #676767;
    color: #ffffff;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin: 0;
    padding: 0 0 0 25px;
    letter-spacing: 0.05em;
    font-family: "zen_maru_gothic_Medium";
    font-size: 1.8rem;
    font-weight: normal;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    border-right: #ffffff 1px solid;
    border-bottom: #ffffff 1px solid;
    position: relative;
  }
  nav.main_nav_pc ul li .sub_nav_box2 ul li a::before {
    display: none;
  }
  nav.main_nav_pc ul li .sub_nav_box2 ul li a::after {
    position: absolute;
    top: calc(50% - 3.5px);
    left: 13px;
    content: "";
    display: block;
    width: 6px;
    height: 7px;
    background: url("../img/icon_arrow_02.svg") no-repeat;
    background-size: contain;
    background-position: center;
  }
  nav.main_nav_pc ul li .sub_nav_box2 ul li::before {
    display: none;
  }
  nav.main_nav_pc ul li .sub_nav_box2 ul li::after {
    display: none;
  }
  .nav_add {
    position: fixed !important;
    top: 0;
    z-index: 9999999999;
    background-color: #ffffff;
  }
}
/* -----------------------------------------------------------
　キービジュアル
----------------------------------------------------------- */
/*トップキービジュアル*/
.key_visual {
  position: relative;
  width: 100%;
  height: 80vw;
  margin: -16vw 0 0 0;
}
.key_visual .key {
  position: relative;
  top: 0;
  left: 0;
  z-index: 1;
  /*大枠*/
}
.key_visual .key .key_bg {
  width: 100%;
  height: 80vw;
}
.key_visual .key .key_01 {
  background: url("../img/key_visual_01.jpg") no-repeat;
  background-size: cover;
  background-position: center top;
}
.key_visual .key .key_02 {
  background: url("../img/key_visual_02.jpg") no-repeat;
  background-size: cover;
  background-position: center top;
}
.key_visual .key .key_03 {
  background: url("../img/key_visual_03.jpg") no-repeat;
  background-size: cover;
  background-position: center top;
}
.key_visual .key .key_04 {
  background: url("../img/key_visual_04.jpg") no-repeat;
  background-size: cover;
  background-position: center top;
}
.key_visual .key_contents {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 80vw;
}
.key_visual .key_contents .key_text_box {
  position: absolute;
  bottom: 14vw;
  right: 0;
  z-index: 2;
  width: 60%;
}
.key_visual .key_contents .key_text_box .key_text_jp {
  font-family: "zen_maru_gothic_bold";
  font-weight: bold;
  font-size: 1.4rem;
  margin: 0 0 0 0;
  border-left: #0068B7 3px solid;
  padding: 0 0 0 0.5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #0068B7;
  letter-spacing: 0.1em;
  text-shadow: 0 0 0.6rem #ffffff, 0 0 0.6rem #ffffff, 0 0 0.6rem #ffffff, 0 0 0.6rem #ffffff, 0 0 0.6rem #ffffff;
}
.key_visual .key_contents .key_text_box .key_text_en {
  font-size: 1.2rem;
  margin: 0 0 0 0;
  border-left: #ffffff 3px solid;
  padding: 0 0 0 0.5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #ffffff;
  letter-spacing: 0.1em;
}

.slick-dots {
  margin: -8vw auto 0 auto !important;
}

ul.slick-dots li button::before {
  font-size: 0.6rem;
  color: #ffffff;
}
ul.slick-dots li.slick-active button::before {
  color: #4A9ED5;
}

/*下層キービジュアル*/
.key_visual_low {
  width: 100%;
  height: 40vw;
  background: url("../img/key_visual_low.jpg") no-repeat;
  background-position: center top;
  background-size: cover;
  margin: -16vw 0 0 0;
}
.key_visual_low h1 {
  width: 100%;
  height: 40vw;
  font-family: "zen_maru_gothic_Medium";
  font-weight: normal;
  font-size: 2rem;
  text-align: left;
  color: #676767;
  line-height: 130%;
  letter-spacing: 0.1em;
  padding: 0 0 6vw 2%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

@media screen and (min-width: 768px), print {
  /*トップキービジュアル*/
  .key_visual {
    position: relative;
    width: 100%;
    height: 867px;
    margin: -176px 0 0 0;
  }
  .key_visual .key {
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100% !important;
    height: 867px;
    margin: 0 auto;
    overflow: hidden;
    /*大枠*/
  }
  .key_visual .key .key_bg {
    width: 100%;
    height: 867px;
  }
  .key_visual .key .key_01 {
    background: url("../img/key_visual_01.jpg") no-repeat;
    background-size: cover;
    background-position: center top;
  }
  .key_visual .key .key_02 {
    background: url("../img/key_visual_02.jpg") no-repeat;
    background-size: cover;
    background-position: center top;
  }
  .key_visual .key .key_03 {
    background: url("../img/key_visual_03.jpg") no-repeat;
    background-size: cover;
    background-position: center top;
  }
  .key_visual .key .key_04 {
    background: url("../img/key_visual_04.jpg") no-repeat;
    background-size: cover;
    background-position: center top;
  }
  .key_visual .key_contents {
    position: absolute;
    top: 160px;
    left: 0;
    right: 0;
    z-index: 9999;
    width: 1100px;
    height: 707px;
    margin: 0 auto;
  }
  .key_visual .key_contents .key_text_box {
    position: absolute;
    bottom: 132px;
    right: 0;
    z-index: 2;
    width: 532px;
  }
  .key_visual .key_contents .key_text_box .key_text_jp {
    width: 532xp;
    height: 133px;
    font-family: "zen_maru_gothic_bold";
    font-weight: bold;
    font-size: 5rem;
    margin: 0 0 0 0;
    border-left: #0068B7 4px solid;
    padding: 0 0 0 32px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    color: #0068B7;
    letter-spacing: -0.01em;
    text-shadow: 0 0 7px #ffffff, 0 0 7px #ffffff, 0 0 7px #ffffff, 0 0 7px #ffffff, 0 0 7px #ffffff, 0 0 7px #ffffff, 0 0 7px #ffffff, 0 0 7px #ffffff;
    line-height: 130%;
  }
  .key_visual .key_contents .key_text_box .key_text_en {
    width: 532xp;
    height: 52px;
    font-size: 4rem;
    margin: 0 0 0 0;
    border-left: #ffffff 4px solid;
    padding: 6px 0 0 32px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    color: #ffffff;
    letter-spacing: 0.1em;
    line-height: 100%;
  }
  .slick-dots {
    margin: -66px auto 0 auto !important;
  }
  ul.slick-dots {
    width: 90px;
  }
  ul.slick-dots li button::before {
    font-size: 1.2rem;
    color: #ffffff;
  }
  ul.slick-dots li.slick-active button::before {
    color: #4A9ED5;
  }
  /*下層キービジュアル*/
  .key_visual_low {
    width: 100%;
    height: 338px;
    background: url("../img/key_visual_low.jpg") no-repeat;
    background-position: center top;
    background-size: cover;
    margin: -176px 0 0 0;
  }
  .key_visual_low h1 {
    width: 1100px;
    height: 338px;
    font-family: "zen_maru_gothic_Medium";
    font-weight: normal;
    font-size: 4.4rem;
    text-align: left;
    color: #676767;
    line-height: 160%;
    letter-spacing: 0.1em;
    padding: 0 0 42px 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
/* -----------------------------------------------------------
トップ情報
----------------------------------------------------------- */
.info_box {
  width: 100%;
}
.info_box .info_box_left dl.info_box_list {
  width: 96%;
  margin: 2rem auto 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  font-family: "zen_maru_gothic_Medium";
  font-weight: normal;
  font-size: 1.2rem;
  line-height: 160%;
}
.info_box .info_box_left dl.info_box_list dt {
  width: 25%;
  margin: 0 0 1rem 0;
  color: #2a2a2a;
}
.info_box .info_box_left dl.info_box_list dt span {
  background-color: #0068B7;
  color: #ffffff;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.2rem 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 0.3rem;
}
.info_box .info_box_left dl.info_box_list dt.tel {
  margin: 0.5rem 0 1rem 0;
}
.info_box .info_box_left dl.info_box_list dt.tel span a {
  text-decoration: none;
  color: #2a2a2a;
}
.info_box .info_box_left dl.info_box_list dd {
  width: 73%;
  margin: 0 0 1rem 0;
  padding: 0.2rem 0 0 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #2a2a2a;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.info_box .info_box_left dl.info_box_list dd span {
  color: #0068B7;
  font-size: 1.4rem;
}
.info_box .info_box_left dl.info_box_list dd span a {
  color: #0068B7;
  text-decoration: none;
}
.info_box .info_box_left dl.info_box_list dd.info_tel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 0;
}
.info_box .info_box_left dl.info_box_list dd.info_tel a {
  text-decoration: none;
}
.info_box .info_box_left dl.info_box_list dd a.btn {
  text-decoration: none;
  border: #ABD3EF 0.2rem solid;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 0.5em;
  width: 10rem;
  height: 3rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0 0 0 1rem;
}
.info_box .info_box_left dl.info_box_list dd a.btn span {
  color: #0072BC;
  font-family: "zen_maru_gothic_Medium";
  font-weight: normal;
  font-size: 1.2rem;
  line-height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.info_box .info_box_left dl.info_box_list dd a.btn span::after {
  content: "";
  display: block;
  width: 3rem;
  height: 1rem;
  background: url("../img/icon_arrow_03.svg") no-repeat;
  background-size: contain;
  background-position: center center;
  margin: 0 0 0 1rem;
}
.info_box .info_box_right table.timetable {
  width: 96%;
}

@media screen and (min-width: 768px), print {
  .info_box {
    width: 1100px;
    margin: 33px auto 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .info_box .info_box_left {
    width: 550px;
  }
  .info_box .info_box_left dl.info_box_list {
    width: 100%;
    margin: 0 0 0 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    font-family: "zen_maru_gothic_Medium";
    font-weight: normal;
    font-size: 1.8rem;
    line-height: 160%;
  }
  .info_box .info_box_left dl.info_box_list dt {
    width: 150px;
    margin: 0 0 22px 0;
    color: #2a2a2a;
  }
  .info_box .info_box_left dl.info_box_list dt span {
    background-color: #0068B7;
    color: #ffffff;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 4px 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    border-radius: 5px;
  }
  .info_box .info_box_left dl.info_box_list dd {
    width: 378px;
    margin: 0 0 22px 0;
    padding: 4px 0 0 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    color: #2a2a2a;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .info_box .info_box_left dl.info_box_list dd span {
    color: #0068B7;
    font-size: 2.8rem;
  }
  .info_box .info_box_left dl.info_box_list dd span a {
    color: #0068B7;
    text-decoration: none;
  }
  .info_box .info_box_left dl.info_box_list dd.info_tel {
    padding: 6px 0 0 0;
  }
  .info_box .info_box_left dl.info_box_list dd a.btn {
    text-decoration: none;
    border: #ABD3EF 0.2rem solid;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    border-radius: 5px;
    width: 145px;
    height: 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: 0 0 0 40px;
    -webkit-transition: 0.5s;
    transition: 0.5s;
  }
  .info_box .info_box_left dl.info_box_list dd a.btn span {
    color: #0072BC;
    font-family: "zen_maru_gothic_Medium";
    font-weight: normal;
    font-size: 1.8rem;
    line-height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .info_box .info_box_left dl.info_box_list dd a.btn span::after {
    content: "";
    display: block;
    width: 41px;
    height: 4.8px;
    background: url("../img/icon_arrow_03.svg") no-repeat;
    background-size: contain;
    background-position: center center;
    margin: 0 0 0 10px;
  }
  .info_box .info_box_left dl.info_box_list dd a.btn:hover {
    opacity: 0.6;
    -webkit-transition: 0.5s;
    transition: 0.5s;
  }
  .info_box .info_box_right {
    width: 480px;
  }
  .info_box .info_box_right table.timetable {
    width: 100%;
  }
}
/* -----------------------------------------------------------
　お知らせ
----------------------------------------------------------- */
.notice_bg {
  width: 100%;
  background-color: #ffffff;
  padding: 4rem 0 2rem 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.notice_bg .notice_frame h2.notice_title {
  background: url("../img/index_notice_title.svg") no-repeat;
  background-size: 45%;
  background-position: left top;
  padding: 2rem 0 1rem 3rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-family: "zen_maru_gothic_bold";
  font-weight: normal;
  font-size: 2.6rem;
  color: #0068B7;
  margin: 0 0 0 1rem;
  line-height: 110%;
}
.notice_bg .notice_frame h2.notice_title span {
  display: block;
  font-size: 1.6rem;
  color: #2a2a2a;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.notice_bg .notice_frame h2.notice_title span::after {
  content: "";
  display: block;
  width: 40%;
  height: 0.1rem;
  border-bottom: #0068B7 0.2rem dotted;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0.5rem 0 0 2rem;
}
.notice_bg .notice_frame .notice_sub_title {
  font-family: "zen_maru_gothic_Medium";
  font-weight: normal;
  font-size: 2.8rem;
  color: #ffffff;
  text-align: right;
  margin: 0 1rem 2rem 0;
}
.notice_bg .notice_frame .notice_box {
  width: 96%;
  height: auto;
  margin: 0 auto 0 auto;
  padding: 0.7rem 0 0.7rem 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #ffffff;
  border-radius: 1rem;
  border: #ABD3EF 2px solid;
}
.notice_bg .notice_frame .notice_box .medico-info-list {
  margin: 0 auto 0 auto;
  width: 96%;
  overflow-x: hidden;
  overflow-wrap: break-word;
  padding: 0 1rem 1.5rem 1rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 0.8rem;
  background-color: #ffffff;
  border: #ABD3EF 3px dotted;
}
.notice_bg .notice_frame .notice_box .medico-info-list .accordion-container {
  height: 80vw;
  overflow-y: scroll;
  margin: 1rem 0 0 0;
  /* スクロールバー1 */
}
.notice_bg .notice_frame .notice_box .medico-info-list .accordion-container::-webkit-scrollbar {
  width: 0.6rem; /* 横幅設定 */
}
.notice_bg .notice_frame .notice_box .medico-info-list .accordion-container::-webkit-scrollbar-thumb {
  background: #0068B7; /* ハンドルの色 */
}
.notice_bg .notice_frame .notice_box .medico-info-list .accordion-container::-webkit-scrollbar-track {
  background: #D1D1D1; /* 背景色 */
}
.notice_bg .notice_frame .notice_box .medico-info-list .accordion-container .accordion-item .accordion-header {
  width: 96%;
  color: #0068B7;
  margin: 0 0 0 0;
  padding: 1rem 0 1rem 2.5rem;
  font-family: "zenmarugothic_medium";
  font-weight: normal;
  font-size: 1.5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  letter-spacing: 0.1em;
  line-height: 120%;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  background-image: linear-gradient(to right, #0068B7 3px, transparent 3px);
  background-size: 8px 3px;
  background-repeat: repeat-x;
  background-position: left top;
}
.notice_bg .notice_frame .notice_box .medico-info-list .accordion-container .accordion-item .accordion-header .accordion-date {
  display: inline;
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  color: #2A2A2A;
  font-size: 1.2rem;
  margin: 0.5rem 0 0 0;
  border-top: #2A2A2A 1px solid;
  border-bottom: #2A2A2A 1px solid;
  width: 50%;
  padding: 0 0 0.1rem 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.notice_bg .notice_frame .notice_box .medico-info-list .accordion-container .accordion-item .accordion-header .accordion-title {
  display: block;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
.notice_bg .notice_frame .notice_box .medico-info-list .accordion-container .accordion-item .accordion-header::marker {
  display: none !important;
  height: 0 !important;
  width: 0 !important;
  margin: 0 !important;
  color: #ffffff;
}
.notice_bg .notice_frame .notice_box .medico-info-list .accordion-container .accordion-item .accordion-header::before {
  display: block;
  content: "";
  width: 1.8rem;
  height: 1.8rem;
  background: url("../img/icon_arrow_up.svg") no-repeat;
  background-size: contain;
  background-position: center center;
  position: absolute;
  left: 0;
  top: 1.2rem;
}
.notice_bg .notice_frame .notice_box .medico-info-list .accordion-container .accordion-item:first-of-type .accordion-header {
  background: none;
}
.notice_bg .notice_frame .notice_box .medico-info-list .accordion-container .accordion-item .accordion-content .content-inner p {
  margin: 0 0 1rem 0;
  padding: 0 1rem 0 2.5rem;
  color: #2A2A2A;
  font-family: "zen_maru_gothic_Medium", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "メイリオ", Meiryo, Arial, sans-serif;
  font-weight: normal;
  font-size: 1.4rem;
  line-height: 140%;
}
.notice_bg .notice_frame .notice_box .medico-info-list .accordion-container .accordion-item .accordion-content .content-inner p a {
  color: #2a2a2a;
}
.notice_bg .notice_frame .notice_box .medico-info-list .accordion-container .accordion-item.open .accordion-header::before {
  content: "";
  -webkit-transform: rotateX(180deg);
          transform: rotateX(180deg);
}

@media screen and (min-width: 768px), print {
  .notice_bg {
    width: 100%;
    background-color: #ffffff;
    padding: 63px 0 50px 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .notice_bg .notice_frame {
    width: 1161px;
    margin: 0 auto 0 auto;
    position: relative;
    overflow: visible;
  }
  .notice_bg .notice_frame h2.notice_title {
    background: url("../img/index_notice_title.svg") no-repeat;
    background-size: 387px;
    background-position: left top;
    padding: 45px 0 0 100px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    font-family: "zen_maru_gothic_bold";
    font-weight: normal;
    font-size: 7rem;
    letter-spacing: 0.23rem;
    color: #0068B7;
    margin: 0 0 0 -72px;
    height: 164px;
    width: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .notice_bg .notice_frame h2.notice_title span {
    display: block;
    font-size: 3rem;
    color: #2a2a2a;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    letter-spacing: 0.1rem;
    margin: 31px 0 0 16px;
  }
  .notice_bg .notice_frame h2.notice_title span::after {
    content: "";
    display: block;
    width: 215px;
    height: 2px;
    border-bottom: #0068B7 0.2rem dotted;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin: 5px 0 0 34px;
  }
  .notice_bg .notice_frame .notice_sub_title {
    font-family: "zen_maru_gothic_Medium";
    font-weight: normal;
    font-size: 7rem;
    color: #ffffff;
    text-align: right;
    margin: -116px 25px 14px 0;
  }
  .notice_bg .notice_frame .notice_box {
    width: 1100px;
    height: 342px;
    margin: 0 auto 0 auto;
    padding: 7px 0 7px 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    background-color: #ffffff;
    border-radius: 10px;
    border: #ABD3EF 2px solid;
  }
  .notice_bg .notice_frame .notice_box .medico-info-list {
    margin: 0 auto 0 auto;
    width: 1086px;
    overflow-x: hidden;
    overflow-wrap: break-word;
    padding: 0 27px 26px 32px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    border-radius: 5px;
    background-color: #ffffff;
    border: #ABD3EF 3px dotted;
  }
  .notice_bg .notice_frame .notice_box .medico-info-list .accordion-container {
    width: 1031px;
    height: 263px;
    overflow-y: scroll;
    margin: 32px 0 0 0;
    /* スクロールバー1 */
  }
  .notice_bg .notice_frame .notice_box .medico-info-list .accordion-container::-webkit-scrollbar {
    width: 0.6rem; /* 横幅設定 */
  }
  .notice_bg .notice_frame .notice_box .medico-info-list .accordion-container::-webkit-scrollbar-thumb {
    background: #0068B7; /* ハンドルの色 */
  }
  .notice_bg .notice_frame .notice_box .medico-info-list .accordion-container::-webkit-scrollbar-track {
    background: #D1D1D1; /* 背景色 */
  }
  .notice_bg .notice_frame .notice_box .medico-info-list .accordion-container .accordion-item .accordion-header {
    width: 1025px;
    color: #0068B7;
    margin: 0 0 0 0;
    padding: 38px 0 16px 35px;
    font-family: "zenmarugothic_medium";
    font-weight: normal;
    font-size: 2rem;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    letter-spacing: 0.1em;
    line-height: 120%;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    background-image: linear-gradient(to right, #0068B7 3px, transparent 3px);
    background-size: 8px 3px;
    background-repeat: repeat-x;
    background-position: left top;
  }
  .notice_bg .notice_frame .notice_box .medico-info-list .accordion-container .accordion-item .accordion-header .accordion-date {
    display: inline;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    color: #2A2A2A;
    font-size: 1.3rem;
    letter-spacing: 0.05em;
    margin: 0 0 0 0;
    border-top: #2A2A2A 1px solid;
    border-bottom: #2A2A2A 1px solid;
    width: auto;
    padding: 0 0 1px 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .notice_bg .notice_frame .notice_box .medico-info-list .accordion-container .accordion-item .accordion-header .accordion-title {
    display: block;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .notice_bg .notice_frame .notice_box .medico-info-list .accordion-container .accordion-item .accordion-header::marker {
    display: none !important;
    height: 0 !important;
    width: 0 !important;
    margin: 0 !important;
    color: #ffffff;
  }
  .notice_bg .notice_frame .notice_box .medico-info-list .accordion-container .accordion-item .accordion-header::before {
    display: block;
    content: "";
    width: 24px;
    height: 24px;
    background: url("../img/icon_arrow_up.svg") no-repeat;
    background-size: contain;
    background-position: center center;
    position: absolute;
    left: 2px;
    top: 39px;
  }
  .notice_bg .notice_frame .notice_box .medico-info-list .accordion-container .accordion-item .accordion-header {
    -webkit-transition: 0.5s;
    transition: 0.5s;
  }
  .notice_bg .notice_frame .notice_box .medico-info-list .accordion-container .accordion-item .accordion-header:hover {
    opacity: 0.6;
    -webkit-transition: 0.5s;
    transition: 0.5s;
    cursor: pointer;
    cursor: hand;
  }
  .notice_bg .notice_frame .notice_box .medico-info-list .accordion-container .accordion-item:first-of-type .accordion-header {
    padding: 0 0 16px 35px;
  }
  .notice_bg .notice_frame .notice_box .medico-info-list .accordion-container .accordion-item:first-of-type .accordion-header::before {
    top: 0;
  }
  .notice_bg .notice_frame .notice_box .medico-info-list .accordion-container .accordion-item .accordion-content .content-inner p {
    margin: 0 0 30px 0;
    padding: 0 16px 0 35px;
    color: #2A2A2A;
    font-family: "zen_maru_gothic_Medium", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "メイリオ", Meiryo, Arial, sans-serif;
    font-weight: normal;
    font-size: 1.6rem;
    line-height: 160%;
  }
  .notice_bg .notice_frame .notice_box .medico-info-list .accordion-container .accordion-item .accordion-content .content-inner p a {
    color: #2a2a2a;
  }
  .notice_bg .notice_frame .notice_box .medico-info-list .accordion-container .accordion-item.open .accordion-header::before {
    content: "";
    -webkit-transform: rotateX(180deg);
            transform: rotateX(180deg);
  }
}
/* -----------------------------------------------------------
ごあいさつ
----------------------------------------------------------- */
.greeting_bg {
  width: 100%;
  padding: 4rem 0 4rem 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.greeting_bg .greeting_frame {
  width: 96%;
  margin: 0 auto 0 auto;
}
.greeting_bg .greeting_frame .greeting_box {
  margin: 2rem 0 0 0;
}
.greeting_bg .greeting_frame .greeting_box figure img {
  width: 70%;
  height: auto;
  display: block;
  margin: 0 auto 0 auto;
}
.greeting_bg .greeting_frame .greeting_box .greeting_text {
  width: 90%;
  margin: 2rem auto 0 auto;
}
.greeting_bg .greeting_frame .greeting_box .greeting_text .doctor_info .doctor_link {
  width: 100%;
  height: 20vw;
  display: block;
  text-decoration: none;
  color: #0068B7;
  font-family: "zen_maru_gothic_Medium";
  font-weight: normal;
  font-size: 1.4rem;
  text-align: right;
  background: url("../img/index_greeting_link_bg.svg") no-repeat;
  background-size: contain;
  padding: 8vw 10% 0 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.greeting_bg .greeting_frame .greeting_box .greeting_text .doctor_info .doctor_name {
  width: 14rem;
  height: 14rem;
  background-color: #0068B7;
  border-radius: 50%;
  position: relative;
  margin: 2rem auto 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.greeting_bg .greeting_frame .greeting_box .greeting_text .doctor_info .doctor_name p {
  font-family: "zen_maru_gothic_Medium";
  font-weight: normal;
  font-size: 1.4rem;
  color: #ffffff;
  margin: 0;
}
.greeting_bg .greeting_frame .greeting_box .greeting_text .doctor_info .doctor_name p span.size1 {
  font-size: 1.4rem;
}
.greeting_bg .greeting_frame .greeting_box .greeting_text .doctor_info .doctor_name p span.size2 {
  font-size: 1.8rem;
}
.greeting_bg .greeting_frame .greeting_box .greeting_text .doctor_info .doctor_name p span.size3 {
  font-size: 1.7rem;
}
.greeting_bg .greeting_frame .greeting_box .greeting_text .doctor_info .doctor_name::before {
  content: "";
  width: 13.4rem;
  height: 13.4rem;
  border: #87D1F1 2px dotted;
  border-radius: 50%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: absolute;
  top: 0.3rem;
  left: 0;
  right: 0;
  margin: 0 auto;
}

@media screen and (min-width: 768px), print {
  .greeting_bg {
    width: 100%;
    padding: 50px 0 31px 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .greeting_bg .greeting_frame {
    width: 1266px;
    margin: 0 auto 0 auto;
  }
  .greeting_bg .greeting_frame .greeting_box {
    width: 1100px;
    margin: 14px auto 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .greeting_bg .greeting_frame .greeting_box figure {
    width: 426px;
  }
  .greeting_bg .greeting_frame .greeting_box figure img {
    width: 75%;
    height: auto;
    display: block;
    margin: 18px 0 0 61px;
  }
  .greeting_bg .greeting_frame .greeting_box .greeting_text {
    width: 597px;
    margin: 0 0 0 0;
  }
  .greeting_bg .greeting_frame .greeting_box .greeting_text .gt {
    font-family: "zen_maru_gothic_Medium";
    font-weight: normal;
    font-size: 1.6rem;
    line-height: 192%;
    margin: 10px 0 25px 0;
    width: 555px;
  }
  .greeting_bg .greeting_frame .greeting_box .greeting_text .doctor_info {
    width: 597px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .greeting_bg .greeting_frame .greeting_box .greeting_text .doctor_info .doctor_link {
    width: 331.888px;
    height: 90.653px;
    display: block;
    text-decoration: none;
    color: #0068B7;
    font-family: "zen_maru_gothic_Medium";
    font-weight: normal;
    font-size: 1.8rem;
    text-align: right;
    background: url("../img/index_greeting_link_bg.svg") no-repeat;
    background-size: contain;
    padding: 44px 35px 0 0;
    -webkit-transition: 0.5s;
    transition: 0.5s;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .greeting_bg .greeting_frame .greeting_box .greeting_text .doctor_info .doctor_link:hover {
    opacity: 0.6;
    -webkit-transition: 0.5s;
    transition: 0.5s;
  }
  .greeting_bg .greeting_frame .greeting_box .greeting_text .doctor_info .doctor_name {
    width: 173px;
    height: 173px;
    background-color: #0068B7;
    border-radius: 50%;
    position: relative;
    margin: -7px 0 0 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .greeting_bg .greeting_frame .greeting_box .greeting_text .doctor_info .doctor_name p {
    font-family: "zen_maru_gothic_Medium";
    font-weight: normal;
    font-size: 1.4rem;
    color: #ffffff;
    margin: -16px 0 0 11px;
  }
  .greeting_bg .greeting_frame .greeting_box .greeting_text .doctor_info .doctor_name p span.size1 {
    font-size: 1.6rem;
  }
  .greeting_bg .greeting_frame .greeting_box .greeting_text .doctor_info .doctor_name p span.size2 {
    font-size: 2.4rem;
  }
  .greeting_bg .greeting_frame .greeting_box .greeting_text .doctor_info .doctor_name p span.size3 {
    font-size: 2.2rem;
  }
  .greeting_bg .greeting_frame .greeting_box .greeting_text .doctor_info .doctor_name::before {
    content: "";
    width: 163px;
    height: 163px;
    border: #87D1F1 2px dotted;
    border-radius: 50%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    position: absolute;
    top: 5px;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
}
/* -----------------------------------------------------------
当院の特長
----------------------------------------------------------- */
.features_bg {
  width: 100%;
  background-color: #ffffff;
  padding: 3rem 0 4rem 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.features_bg .features_frame {
  position: relative;
  z-index: 2;
}
.features_bg .features_frame .features_box_bg {
  width: 100%;
  position: relative;
  overflow: visible;
  padding: 2rem 0 0 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /*f01*/
}
.features_bg .features_frame .features_box_bg .features_bg_01_01 {
  width: 30%;
  position: absolute;
  top: -5vw;
  right: -4rem;
  z-index: 1;
}
.features_bg .features_frame .features_box_bg .features_bg_01_02 {
  width: 200%;
  position: absolute;
  top: 23vw;
  left: -20%;
  z-index: 1;
}
.features_bg .features_frame .features_box_bg {
  /*f02*/
}
.features_bg .features_frame .features_box_bg .features_bg_02_01 {
  width: 50%;
  position: absolute;
  top: 36vw;
  left: -3rem;
  z-index: 1;
}
.features_bg .features_frame .features_box_bg .features_bg_02_02 {
  width: 200%;
  position: absolute;
  top: 18vw;
  right: -20%;
  z-index: 1;
}
.features_bg .features_frame .features_box_bg {
  /*f03*/
}
.features_bg .features_frame .features_box_bg .features_bg_03_01 {
  width: 30%;
  position: absolute;
  top: 40vw;
  right: -1rem;
  z-index: 1;
}
.features_bg .features_frame .features_box_bg .features_bg_03_02 {
  width: 200%;
  position: absolute;
  top: 24vw;
  left: -20%;
  z-index: 1;
}
.features_bg .features_frame .features_box_bg {
  /*f04*/
}
.features_bg .features_frame .features_box_bg .features_bg_04_01 {
  width: 40%;
  position: absolute;
  top: 32vw;
  left: -6rem;
  z-index: 1;
}
.features_bg .features_frame .features_box_bg .features_bg_04_02 {
  width: 200%;
  position: absolute;
  top: 18vw;
  right: -20%;
  z-index: 1;
}
.features_bg .features_frame .features_box_bg {
  /*f03*/
}
.features_bg .features_frame .features_box_bg .features_bg_05_01 {
  width: 60%;
  position: absolute;
  top: 40vw;
  right: -2rem;
  z-index: 1;
}
.features_bg .features_frame .features_box_bg .features_bg_05_02 {
  width: 200%;
  position: absolute;
  top: 24vw;
  left: -20%;
  z-index: 1;
}
.features_bg .features_frame .features_box_bg .features_box {
  width: 90%;
  margin: 2rem auto 0 auto;
  position: relative;
  z-index: 2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.features_bg .features_frame .features_box_bg .features_box .features_img {
  width: 100%;
  padding: 0 0 2rem 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  margin: -4rem 0 0 0;
}
.features_bg .features_frame .features_box_bg .features_box .features_img figure img {
  width: 70%;
  height: auto;
  display: block;
  margin: 0 auto;
  border-radius: 0.8rem;
}
.features_bg .features_frame .features_box_bg .features_box .features_content {
  border-radius: 1rem;
  padding: 1rem 1rem 5rem 1rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow: visible;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
.features_bg .features_frame .features_box_bg .features_box .features_content h3.features_title {
  font-family: "zen_maru_gothic_bold";
  font-weight: bold;
  font-size: 1.6rem;
  line-height: 140%;
  color: #0068B7;
  margin: 2rem 0 2rem 0;
  padding: 0 0 0 1rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: url("../img/index_features_line.svg") no-repeat;
  background-position: left center;
  background-size: 0.22rem;
}
.features_bg .features_frame .features_box_bg .features_box .features_content h3.features_title span {
  margin: 0 0 0 -1rem;
}
.features_bg .features_frame .features_box_bg .features_box .features_content .features_no {
  width: 8rem;
  height: 8rem;
  float: right;
  margin: -11.5rem 0 0 0;
}
.features_bg .features_frame .features_box_bg .features_box .features_content .features_no img {
  width: 100%;
}
.features_bg .features_frame .features_box_bg .features_box .features_content .features_no.no2 {
  margin: -14rem 0 0 0;
}
.features_bg .features_frame .features_box_bg .features_box .features_content .features_no.no3 {
  margin: -13.3rem 0 0 0;
}
.features_bg .features_frame .features_box_bg .features_box .features_content .features_no.no5 {
  margin: -13.3rem 0 0 0;
}
.features_bg .features_frame .features_box_bg .features_box .features_content .features_text {
  margin: 0 0 1rem 0;
}
.features_bg .features_frame .features_box_bg .features_box .features_content .features_link {
  width: 80%;
  height: 20vw;
  display: block;
  text-decoration: none;
  color: #0068B7;
  font-family: "zen_maru_gothic_Medium";
  font-weight: normal;
  font-size: 1.4rem;
  text-align: right;
  background: url("../img/index_features_link_bg.svg") no-repeat;
  background-size: contain;
  padding: 8vw 14% 0 0;
  margin: 0 0 0 20%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.features_bg .features_frame .features_box_bg .features_box .features_content.fc_blue {
  background-color: #D9F0FF;
}
.features_bg .features_frame .features_box_bg .features_box .features_content.fc_gray {
  background-color: #E9E9E9;
}
.features_bg .features_frame .features_box_bg.fbg01 {
  padding: 1rem 0 0 0;
}

@media screen and (min-width: 768px), print {
  .features_bg {
    width: 100%;
    background-color: #ffffff;
    padding: 68px 0 105px 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    overflow: visible;
  }
  .features_bg .features_frame {
    position: relative;
    z-index: 2;
    overflow: visible;
  }
  .features_bg .features_frame .features_box_bg {
    width: 100%;
    height: 525px;
    position: relative;
    overflow: visible;
    padding: 0 0 0 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin: 0 0 112px 0;
  }
  .features_bg .features_frame .features_box_bg.fbg01 {
    /*padding: 1rem 0 0 0;*/
    z-index: 5;
  }
  .features_bg .features_frame .features_box_bg.fbg02 {
    /*margin:80px 0 0 0;*/
    z-index: 4;
  }
  .features_bg .features_frame .features_box_bg.fbg03 {
    margin: -95px 0 68px 0;
    z-index: 3;
  }
  .features_bg .features_frame .features_box_bg.fbg04 {
    /*margin:52px 0 0 0;*/
    margin: 0 0 0 0;
    z-index: 2;
  }
  .features_bg .features_frame .features_box_bg.fbg05 {
    margin: -14px 0 0 0;
    z-index: 1;
  }
  .features_bg .features_frame .features_box_bg {
    /*f01*/
  }
  .features_bg .features_frame .features_box_bg .features_bg_01_01 {
    width: 315.226px;
    position: absolute;
    top: -205px;
    right: -70px;
    z-index: 1;
  }
  .features_bg .features_frame .features_box_bg .features_bg_01_02 {
    width: 1201px;
    position: absolute;
    top: -54px;
    left: -52px;
    z-index: 1;
  }
  .features_bg .features_frame .features_box_bg {
    /*f02*/
  }
  .features_bg .features_frame .features_box_bg .features_bg_02_01 {
    width: 632.85px;
    position: absolute;
    top: 151px;
    left: -123px;
    z-index: 1;
  }
  .features_bg .features_frame .features_box_bg .features_bg_02_02 {
    width: 1201px;
    position: absolute;
    top: -112px;
    right: -48px;
    z-index: 1;
  }
  .features_bg .features_frame .features_box_bg {
    /*f03*/
  }
  .features_bg .features_frame .features_box_bg .features_bg_03_01 {
    width: 248px;
    position: absolute;
    top: 348px;
    right: 237px;
    z-index: 1;
  }
  .features_bg .features_frame .features_box_bg .features_bg_03_02 {
    width: 1201px;
    position: absolute;
    top: 48px;
    left: -45px;
    z-index: 1;
  }
  .features_bg .features_frame .features_box_bg {
    /*f04*/
  }
  .features_bg .features_frame .features_box_bg .features_bg_04_01 {
    width: 299.85px;
    position: absolute;
    top: 291px;
    left: 8px;
    z-index: 1;
  }
  .features_bg .features_frame .features_box_bg .features_bg_04_02 {
    width: 1201px;
    position: absolute;
    top: -128px;
    right: -48px;
    z-index: 1;
  }
  .features_bg .features_frame .features_box_bg {
    /*f05*/
  }
  .features_bg .features_frame .features_box_bg .features_bg_05_01 {
    width: 795px;
    position: absolute;
    top: 270px;
    right: 22px;
    z-index: 1;
  }
  .features_bg .features_frame .features_box_bg .features_bg_05_02 {
    width: 1201px;
    position: absolute;
    top: 62px;
    left: -42px;
    z-index: 1;
  }
  .features_bg .features_frame .features_box_bg .features_box {
    width: 1100px;
    margin: 26px auto 0 auto;
    position: relative;
    z-index: 2;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .features_bg .features_frame .features_box_bg .features_box .features_img {
    width: 456px;
    padding: 0 0 0 0;
    margin: 0 0 0 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    position: relative;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .features_bg .features_frame .features_box_bg .features_box .features_img figure {
    position: absolute;
    top: -158px;
    z-index: 3;
  }
  .features_bg .features_frame .features_box_bg .features_box .features_img figure img {
    width: 100%;
    height: auto;
    display: block;
    margin: 0 0 0 0;
    border-radius: 10px;
  }
  .features_bg .features_frame .features_box_bg .features_box .features_img figure.fi02 {
    top: -267px;
  }
  .features_bg .features_frame .features_box_bg .features_box .features_img figure.fi03 {
    top: -170px;
  }
  .features_bg .features_frame .features_box_bg .features_box .features_img figure.fi04 {
    top: -265px;
  }
  .features_bg .features_frame .features_box_bg .features_box .features_img figure.fi05 {
    top: -165px;
  }
  .features_bg .features_frame .features_box_bg .features_box .features_content {
    width: 600px;
    height: 456px;
    background-color: transparent;
    border-radius: 0;
    padding: 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    overflow: visible;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    position: relative;
    z-index: 2;
  }
  .features_bg .features_frame .features_box_bg .features_box .features_content h3.features_title {
    font-family: "zen_maru_gothic_bold";
    font-weight: bold;
    font-size: 3rem;
    line-height: 130%;
    letter-spacing: 0.06em;
    color: #0068B7;
    margin: 46px 0 16px 2px;
    padding: 19px 0 19px 22px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    background: url("../img/index_features_line.svg") no-repeat;
    background-position: left center;
    background-size: 4px;
    position: relative;
    z-index: 3;
  }
  .features_bg .features_frame .features_box_bg .features_box .features_content h3.features_title span {
    margin: 0 0 0 -2rem;
  }
  .features_bg .features_frame .features_box_bg .features_box .features_content .features_no {
    width: 187px;
    height: 187px;
    float: right;
    margin: -238px 12px 0 0;
    position: absolute;
    z-index: 3;
  }
  .features_bg .features_frame .features_box_bg .features_box .features_content .features_no img {
    width: 100%;
  }
  .features_bg .features_frame .features_box_bg .features_box .features_content .features_no.no1 {
    margin: 0;
    left: 401px;
    top: -97px;
  }
  .features_bg .features_frame .features_box_bg .features_box .features_content .features_no.no2 {
    margin: 0;
    left: 415px;
    top: -104px;
  }
  .features_bg .features_frame .features_box_bg .features_box .features_content .features_no.no3 {
    margin: 0;
    left: 402px;
    top: -92px;
  }
  .features_bg .features_frame .features_box_bg .features_box .features_content .features_no.no4 {
    margin: 0;
    left: 415px;
    top: -104px;
  }
  .features_bg .features_frame .features_box_bg .features_box .features_content .features_no.no5 {
    margin: 0;
    left: 401px;
    top: -91px;
  }
  .features_bg .features_frame .features_box_bg .features_box .features_content .features_text {
    font-family: "zen_maru_gothic_Medium";
    font-weight: normal;
    font-size: 1.6rem;
    line-height: 175%;
    letter-spacing: 0;
    text-align: justify;
    position: relative;
    z-index: 3;
  }
  .features_bg .features_frame .features_box_bg .features_box .features_content .features_link {
    width: 255.39px;
    height: 89.15px;
    display: block;
    text-decoration: none;
    color: #0068B7;
    font-family: "zen_maru_gothic_Medium";
    font-weight: normal;
    font-size: 1.8rem;
    text-align: right;
    background: url("../img/index_features_link_bg.svg") no-repeat;
    background-size: contain;
    padding: 38px 37px 0 0;
    -webkit-transition: 0.5s;
    transition: 0.5s;
    margin: 0 0 0 308.61px;
    position: relative;
    z-index: 3;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .features_bg .features_frame .features_box_bg .features_box .features_content .features_link:hover {
    opacity: 0.6;
    -webkit-transition: 0.5s;
    transition: 0.5s;
  }
  .features_bg .features_frame .features_box_bg .features_box .features_content .features_link.fl02 {
    margin: 37px 0 0 308.61px;
  }
  .features_bg .features_frame .features_box_bg .features_box .features_content .features_link.fl03 {
    margin: 22px 0 0 308.61px;
  }
  .features_bg .features_frame .features_box_bg .features_box .features_content .features_link.fl04 {
    margin: 26px 0 0 308.61px;
  }
  .features_bg .features_frame .features_box_bg .features_box .features_content.fc_blue {
    background-color: #D9F0FF;
  }
  .features_bg .features_frame .features_box_bg .features_box .features_content.fc_blue::before {
    content: "";
    display: block;
    background-color: #D9F0FF;
    width: 100%;
    height: 456px;
    position: absolute;
    top: 0;
    left: -600px;
    z-index: 1;
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
  }
  .features_bg .features_frame .features_box_bg .features_box .features_content.fc_blue::after {
    content: "";
    display: block;
    background-color: #D9F0FF;
    width: 100px;
    height: 456px;
    position: absolute;
    top: 0;
    right: -100px;
    z-index: 1;
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
  }
  .features_bg .features_frame .features_box_bg .features_box .features_content.fc_gray {
    background-color: #E9E9E9;
  }
  .features_bg .features_frame .features_box_bg .features_box .features_content.fc_gray::after {
    content: "";
    display: block;
    background-color: #E9E9E9;
    width: 100%;
    height: 456px;
    position: absolute;
    top: 0;
    left: -100px;
  }
  .features_bg .features_frame .features_box_bg .features_box .features_content.fc_gray::before {
    content: "";
    display: block;
    background-color: #E9E9E9;
    width: 100%;
    height: 456px;
    position: absolute;
    top: 0;
    right: -400px;
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
  }
  .features_bg .features_frame .features_box_bg .features_box.fbright .features_img {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
  .features_bg .features_frame .features_box_bg .features_box.fbright .features_content {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .features_bg .features_frame .features_box_bg .features_box.fbleft .features_img {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .features_bg .features_frame .features_box_bg .features_box.fbleft .features_img {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    margin: -40px 0 0 0;
  }
  .features_bg .features_frame .features_box_bg .features_box.fbleft .features_content {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
  .features_bg .features_frame .features_box_bg .features_box.fbleft .features_content h3.features_title {
    margin: 36px 0 16px 2px;
    padding: 19px 0 19px 22px;
  }
  .features_bg .features_frame .features_box_bg .features_box.fbleft .features_content .features_text {
    margin: -16px 0 11px 0;
  }
  .features_bg .features_frame .features_box_bg .features_box.fb03 .features_content h3.features_title {
    margin: 36px 0 16px 2px;
    padding: 19px 0 19px 22px;
  }
  .features_bg .features_frame .features_box_bg .features_box.fb03 .features_content .features_text {
    margin: -24px 0 11px 0;
  }
  .features_bg .features_frame .features_box_bg .features_box.fb04 .features_content h3.features_title {
    margin: 44px 0 16px 2px;
    padding: 19px 0 19px 22px;
  }
  .features_bg .features_frame .features_box_bg .features_box.fb04 .features_content .features_text {
    margin: 0 0 11px 0;
  }
  .features_bg .features_frame .features_box_bg .features_box.fb05 .features_content h3.features_title {
    margin: 37px 0 0 2px;
    padding: 19px 0 11px 22px;
  }
  .features_bg .features_frame .features_box_bg .features_box.fb05 .features_content .features_text {
    margin: 0 0 11px 0;
  }
}
/* -----------------------------------------------------------
　診療内容
----------------------------------------------------------- */
.treatment_bg {
  background-color: #F3F3F3;
  padding: 4rem 0 2rem 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  position: relative;
}
.treatment_bg .treatment_bg_tl {
  width: 30%;
  position: absolute;
  top: 10vw;
  left: 0;
  z-index: 1;
}
.treatment_bg .treatment_bg_tr {
  width: 30%;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
}
.treatment_bg .treatment_bg_bl {
  width: 30%;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1;
}
.treatment_bg .treatment_bg_br {
  width: 30%;
  position: absolute;
  bottom: 10vw;
  right: 0;
  z-index: 1;
}
.treatment_bg .treatment_bg_c {
  width: 30%;
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  margin: 0 auto;
  z-index: 1;
}
.treatment_bg ul.treatment_list {
  width: 96%;
  list-style-type: none;
  margin: 2rem auto 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  position: relative;
  z-index: 2;
}
.treatment_bg ul.treatment_list li {
  width: 48%;
  margin: 0 0 4rem 0;
}
.treatment_bg ul.treatment_list li a {
  text-decoration: none;
  list-style-type: none;
  background-color: #ffffff;
  text-align: none;
  width: 100%;
  height: 50vw;
  border-radius: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  position: relative;
  overflow: visible;
  padding: 2rem 0 0 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.treatment_bg ul.treatment_list li a .text {
  font-family: "zen_maru_gothic_Medium";
  font-weight: normal;
  font-size: 1.2rem;
  text-align: center;
  color: #2a2a2a;
}
.treatment_bg ul.treatment_list li a .text::before {
  content: "";
  width: 8rem;
  height: 8rem;
  display: block;
  margin: 0 auto 1rem auto;
}
.treatment_bg ul.treatment_list li a .link {
  width: 80%;
  height: 10vw;
  background-color: #A7A7A7;
  color: #ffffff;
  font-family: "zen_maru_gothic_Medium";
  font-weight: normal;
  font-size: 1.2rem;
  border-radius: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  position: absolute;
  bottom: -5vw;
  left: 0;
  right: 0;
  z-index: 4;
  margin: 0 auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0 0 0 1rem;
}
.treatment_bg ul.treatment_list li a .link::before {
  position: absolute;
  top: calc(50% - 0.6rem);
  right: 0.8rem;
  content: "";
  display: block;
  width: 1.2rem;
  height: 1.2rem;
  background: url("../img/icon_arrow_01.svg") no-repeat;
  background-size: contain;
  background-position: center;
}
.treatment_bg ul.treatment_list li a::before {
  content: "";
  width: 96%;
  height: 48vw;
  position: absolute;
  top: 1vw;
  left: 0;
  right: 0;
  z-index: 2;
  margin: 0 auto;
  border: #C9E9FF 2px solid;
  border-radius: 0.8rem;
}
.treatment_bg ul.treatment_list li a::after {
  content: "";
  width: 86%;
  height: 0.6rem;
  display: block;
  position: absolute;
  bottom: 0.8vw;
  left: 0;
  right: 0;
  z-index: 3;
  margin: 0 auto;
  background-color: #ffffff;
}
.treatment_bg ul.treatment_list li.root a .text::before {
  background: url("../img/index_clinic_menu_01.svg") no-repeat;
  background-size: contain;
  background-position: center center;
}
.treatment_bg ul.treatment_list li.canal a .text::before {
  background: url("../img/index_clinic_menu_01.svg") no-repeat;
  background-size: contain;
  background-position: center center;
}
.treatment_bg ul.treatment_list li.perio a .text::before {
  background: url("../img/index_clinic_menu_13.svg") no-repeat;
  background-size: contain;
  background-position: center center;
}
.treatment_bg ul.treatment_list li.pediatric_dentistry a .text::before {
  background: url("../img/index_clinic_menu_03.svg") no-repeat;
  background-size: contain;
  background-position: center center;
}
.treatment_bg ul.treatment_list li.orthodontic a .text::before {
  background: url("../img/index_clinic_menu_04.svg") no-repeat;
  background-size: contain;
  background-position: center center;
}
.treatment_bg ul.treatment_list li.dental_surgery a .text::before {
  background: url("../img/index_clinic_menu_05.svg") no-repeat;
  background-size: contain;
  background-position: center center;
}
.treatment_bg ul.treatment_list li.implant a .text::before {
  background: url("../img/index_clinic_menu_06.svg") no-repeat;
  background-size: contain;
  background-position: center center;
}
.treatment_bg ul.treatment_list li.preventive a .text::before {
  background: url("../img/index_clinic_menu_07.svg") no-repeat;
  background-size: contain;
  background-position: center center;
}
.treatment_bg ul.treatment_list li.cosmetic a .text::before {
  background: url("../img/index_clinic_menu_08.svg") no-repeat;
  background-size: contain;
  background-position: center center;
}
.treatment_bg ul.treatment_list li.whitening a .text::before {
  background: url("../img/index_clinic_menu_09.svg") no-repeat;
  background-size: contain;
  background-position: center center;
}
.treatment_bg ul.treatment_list li.denture a .text::before {
  background: url("../img/index_clinic_menu_10.svg") no-repeat;
  background-size: contain;
  background-position: center center;
}
.treatment_bg ul.treatment_list li.visit a .text::before {
  background: url("../img/index_clinic_menu_11.svg") no-repeat;
  background-size: contain;
  background-position: center center;
}
.treatment_bg ul.treatment_list li.bite a .text::before {
  background: url("../img/index_clinic_menu_12.svg") no-repeat;
  background-size: contain;
  background-position: center center;
}

@media screen and (min-width: 768px), print {
  .treatment_bg {
    background-color: #F3F3F3;
    padding: 100px 0 110px 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    position: relative;
  }
  .treatment_bg .treatment_bg_tl {
    width: 363px;
    position: absolute;
    top: 73px;
    left: 0;
    z-index: 1;
  }
  .treatment_bg .treatment_bg_tr {
    width: 378px;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1;
  }
  .treatment_bg .treatment_bg_bl {
    width: 424px;
    position: absolute;
    bottom: 222px;
    left: 0;
    z-index: 1;
  }
  .treatment_bg .treatment_bg_br {
    width: 444px;
    position: absolute;
    bottom: 246px;
    right: 0;
    z-index: 1;
  }
  .treatment_bg .treatment_bg_c {
    width: 563px;
    position: absolute;
    bottom: 0;
    right: 0;
    left: 0;
    margin: 0 auto;
    z-index: 1;
  }
  .treatment_bg ul.treatment_list {
    width: 1100px;
    list-style-type: none;
    margin: 24px auto 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    position: relative;
    z-index: 2;
  }
  .treatment_bg ul.treatment_list li {
    width: 242px;
    margin: 0 0 70px 0;
  }
  .treatment_bg ul.treatment_list li a {
    text-decoration: none;
    list-style-type: none;
    background-color: #ffffff;
    text-align: none;
    width: 100%;
    height: 312px;
    border-radius: 10px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    position: relative;
    overflow: visible;
    padding: 38px 0 0 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .treatment_bg ul.treatment_list li a .text {
    font-family: "zen_maru_gothic_Medium";
    font-weight: normal;
    font-size: 1.8rem;
    text-align: center;
    color: #2a2a2a;
  }
  .treatment_bg ul.treatment_list li a .text::before {
    content: "";
    width: 168px;
    height: 168px;
    display: block;
    margin: 0 auto 18px auto;
  }
  .treatment_bg ul.treatment_list li a .link {
    width: 164px;
    height: 40px;
    background-color: #A7A7A7;
    color: #ffffff;
    font-family: "zen_maru_gothic_Medium";
    font-weight: normal;
    font-size: 1.6rem;
    border-radius: 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    position: absolute;
    bottom: -20px;
    left: 0;
    right: 0;
    z-index: 4;
    margin: 0 auto;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 0 0 0 18px;
  }
  .treatment_bg ul.treatment_list li a .link::before {
    position: absolute;
    top: calc(50% - 9px);
    right: 12px;
    content: "";
    display: block;
    width: 18px;
    height: 18px;
    background: url("../img/icon_arrow_01.svg") no-repeat;
    background-size: contain;
    background-position: center;
  }
  .treatment_bg ul.treatment_list li a::before {
    content: "";
    width: 232px;
    height: 302px;
    position: absolute;
    top: 5px;
    left: 0;
    right: 0;
    z-index: 2;
    margin: 0 auto;
    border: #C9E9FF 2px solid;
    border-radius: 5px;
  }
  .treatment_bg ul.treatment_list li a::after {
    content: "";
    width: 178px;
    height: 4px;
    display: block;
    position: absolute;
    bottom: 4px;
    left: 0;
    right: 0;
    z-index: 3;
    margin: 0 auto;
    background-color: #ffffff;
  }
  .treatment_bg ul.treatment_list li a {
    -webkit-transition: 0.5s;
    transition: 0.5s;
  }
  .treatment_bg ul.treatment_list li a:hover {
    opacity: 0.6;
    -webkit-transition: 0.5s;
    transition: 0.5s;
  }
  .treatment_bg ul.treatment_list li.root a .text::before {
    background: url("../img/index_clinic_menu_01.svg") no-repeat;
    background-size: contain;
    background-position: center center;
  }
  .treatment_bg ul.treatment_list li.canal a .text::before {
    background: url("../img/index_clinic_menu_13.svg") no-repeat;
    background-size: contain;
    background-position: center center;
  }
  .treatment_bg ul.treatment_list li.perio a .text::before {
    background: url("../img/index_clinic_menu_02.svg") no-repeat;
    background-size: contain;
    background-position: center center;
  }
  .treatment_bg ul.treatment_list li.pediatric_dentistry a .text::before {
    background: url("../img/index_clinic_menu_03.svg") no-repeat;
    background-size: contain;
    background-position: center center;
  }
  .treatment_bg ul.treatment_list li.orthodontic a .text::before {
    background: url("../img/index_clinic_menu_04.svg") no-repeat;
    background-size: contain;
    background-position: center center;
  }
  .treatment_bg ul.treatment_list li.dental_surgery a .text::before {
    background: url("../img/index_clinic_menu_05.svg") no-repeat;
    background-size: contain;
    background-position: center center;
  }
  .treatment_bg ul.treatment_list li.implant a .text::before {
    background: url("../img/index_clinic_menu_06.svg") no-repeat;
    background-size: contain;
    background-position: center center;
  }
  .treatment_bg ul.treatment_list li.preventive a .text::before {
    background: url("../img/index_clinic_menu_07.svg") no-repeat;
    background-size: contain;
    background-position: center center;
  }
  .treatment_bg ul.treatment_list li.cosmetic a .text::before {
    background: url("../img/index_clinic_menu_08.svg") no-repeat;
    background-size: contain;
    background-position: center center;
  }
  .treatment_bg ul.treatment_list li.whitening a .text::before {
    background: url("../img/index_clinic_menu_09.svg") no-repeat;
    background-size: contain;
    background-position: center center;
  }
  .treatment_bg ul.treatment_list li.denture a .text::before {
    background: url("../img/index_clinic_menu_10.svg") no-repeat;
    background-size: contain;
    background-position: center center;
  }
  .treatment_bg ul.treatment_list li.visit a .text::before {
    background: url("../img/index_clinic_menu_11.svg") no-repeat;
    background-size: contain;
    background-position: center center;
  }
  .treatment_bg ul.treatment_list li.bite a .text::before {
    background: url("../img/index_clinic_menu_12.svg") no-repeat;
    background-size: contain;
    background-position: center center;
  }
}
/* -----------------------------------------------------------
　画像ループ
----------------------------------------------------------- */
.loop_css {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row nowrap;
          flex-flow: row nowrap;
  width: 100%;
  overflow: hidden;
  margin: 4rem 0;
}
.loop_css ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row nowrap;
          flex-flow: row nowrap;
  width: 4125px;
  margin: 0;
  padding: 0;
}
.loop_css ul li {
  display: inline-block;
  width: 50vw;
  min-width: 250px;
  margin: 0 0 0 0;
  list-style: none;
  text-align: center;
}
.loop_css ul li a {
  display: block;
}
.loop_css ul li img {
  display: block;
  width: 100%;
  height: auto;
}
.loop_css ul:first-child {
  -webkit-animation: loop 120s -60s linear infinite;
  animation: loop 120s -60s linear infinite;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  will-change: transform;
}

.loop_css ul + ul {
  -webkit-animation: loop2 120s linear infinite;
  animation: loop2 120s linear infinite;
}

.loop_css:hover ul {
  -webkit-animation-play-state: paused;
          animation-play-state: paused;
}

@-webkit-keyframes loop {
  0% {
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
  }
  to {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
  }
}
@keyframes loop {
  0% {
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
  }
  to {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
  }
}
@-webkit-keyframes loop2 {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-200%);
    transform: translateX(-200%);
  }
}
@keyframes loop2 {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-200%);
    transform: translateX(-200%);
  }
}
.loop_js {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 3600px;
  height: 150px;
  overflow: hidden;
}

.loop_js > * {
  width: 33.333333%;
  height: auto;
}

@media screen and (min-width: 768px), print {
  .loop_css {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap;
    width: 100%;
    overflow: hidden;
    margin: 104px 0;
  }
  .loop_css ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap;
    width: 2000px;
    margin: 0;
    padding: 0;
  }
  .loop_css ul li {
    display: inline-block;
    width: 50vw;
    min-width: 250px;
    margin: 0 0 0 0;
    list-style: none;
    text-align: center;
  }
  .loop_css ul li a {
    display: block;
  }
  .loop_css ul li img {
    display: block;
    width: 100%;
    height: auto;
  }
  .loop_css ul:first-child {
    -webkit-animation: loop 120s -60s linear infinite;
    animation: loop 120s -60s linear infinite;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    will-change: transform;
  }
  .loop_css ul + ul {
    -webkit-animation: loop2 120s linear infinite;
    animation: loop2 120s linear infinite;
  }
  .loop_css:hover ul {
    -webkit-animation-play-state: paused;
            animation-play-state: paused;
  }
  @-webkit-keyframes loop {
    0% {
      -webkit-transform: translateX(100%);
      transform: translateX(100%);
    }
    to {
      -webkit-transform: translateX(-100%);
      transform: translateX(-100%);
    }
  }
  @keyframes loop {
    0% {
      -webkit-transform: translateX(100%);
      transform: translateX(100%);
    }
    to {
      -webkit-transform: translateX(-100%);
      transform: translateX(-100%);
    }
  }
  @-webkit-keyframes loop2 {
    0% {
      -webkit-transform: translateX(0);
      transform: translateX(0);
    }
    to {
      -webkit-transform: translateX(-200%);
      transform: translateX(-200%);
    }
  }
  @keyframes loop2 {
    0% {
      -webkit-transform: translateX(0);
      transform: translateX(0);
    }
    to {
      -webkit-transform: translateX(-200%);
      transform: translateX(-200%);
    }
  }
  .loop_js {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 2550px;
    height: 190px;
    overflow: hidden;
  }
  .loop_js > * {
    width: 33.333333%;
    height: auto;
  }
}
/* -----------------------------------------------------------
　地図
----------------------------------------------------------- */
iframe.googlemap {
  width: 100%;
  height: 500px;
  display: block;
  margin: 0;
}

@media screen and (min-width: 768px), print {
  iframe.googlemap {
    width: 100%;
    height: 591px;
    display: block;
    margin: 0;
  }
}
/* -----------------------------------------------------------
　医院概要
----------------------------------------------------------- */
.overview {
  width: 100%;
  background-color: #A7A7A7;
  padding: 4rem 0 0 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.overview .overview_box {
  width: 96%;
  margin: 0 auto;
  padding: 2rem 0 2rem 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.overview .overview_box .overview_info .overview_logo {
  width: 80%;
  margin: 0 auto;
  display: block;
}
.overview .overview_box .overview_info .overview_logo img {
  width: 100%;
}
.overview .overview_box .overview_info .header_tel {
  font-family: "zen_maru_gothic_Medium";
  font-weight: normal;
  font-size: 2.2rem;
  text-align: center;
  color: #ffffff;
  margin: 1rem 0;
}
.overview .overview_box .overview_info .header_tel span a {
  color: #ffffff;
  text-decoration: none;
}
.overview .overview_box .overview_info_box {
  /*左側*/
}
.overview .overview_box .overview_info_box .overview_info_box_left {
  width: 100%;
}
.overview .overview_box .overview_info_box .overview_info_box_left dl.overview_list {
  width: 96%;
  margin: 2rem auto 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  font-family: "zen_maru_gothic_Medium";
  font-weight: normal;
  font-size: 1.2rem;
  line-height: 160%;
}
.overview .overview_box .overview_info_box .overview_info_box_left dl.overview_list dt {
  width: 25%;
  margin: 0 0 1rem 0;
  color: #ffffff;
}
.overview .overview_box .overview_info_box .overview_info_box_left dl.overview_list dt span {
  background-color: #ffffff;
  color: #0068B7;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.2rem 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 0.3rem;
}
.overview .overview_box .overview_info_box .overview_info_box_left dl.overview_list dd {
  width: 73%;
  margin: 0 0 1rem 0;
  padding: 0.2rem 0 0 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #ffffff;
}
.overview .overview_box .overview_info_box .overview_info_box_left dl.overview_list dd ul.overview_access_list {
  list-style-type: none;
  font-family: "zen_maru_gothic_Medium";
  font-weight: normal;
  font-size: 1.2rem;
  line-height: 160%;
  margin: 0;
}
.overview .overview_box .overview_info_box .overview_info_box_left dl.overview_list dd ul.overview_access_list li {
  margin: 0 0 0.5rem 0;
  padding: 0 0 0 1.5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.overview .overview_box .overview_info_box .overview_info_box_left dl.overview_list dd ul.overview_access_list li:nth-child(1) {
  background: url("../img/icon_maru4.svg") no-repeat;
  background-size: 1rem;
  background-position: left center;
}
.overview .overview_box .overview_info_box .overview_info_box_left dl.overview_list dd ul.overview_access_list li:nth-child(2) {
  background: url("../img/icon_maru5.svg") no-repeat;
  background-size: 1rem;
  background-position: left center;
}
.overview .overview_box .overview_info_box .overview_info_box_left dl.overview_list dd ul.overview_access_list li:nth-child(3) {
  background: url("../img/icon_maru6.svg") no-repeat;
  background-size: 1rem;
  background-position: left center;
}
.overview .overview_box .overview_info_box .overview_info_box_left dl.overview_list dd .btn {
  width: 55%;
  height: 8vw;
  background-color: #E2F3FF;
  color: #2a2a2a;
  font-family: "zen_maru_gothic_Medium";
  font-weight: normal;
  font-size: 1.2rem;
  border-radius: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: -0.5rem 0 0 1rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0 0 0 1rem;
  text-decoration: none;
  position: relative;
}
.overview .overview_box .overview_info_box .overview_info_box_left dl.overview_list dd .btn::before {
  position: absolute;
  top: calc(50% - 0.6rem);
  right: 0.8rem;
  content: "";
  display: block;
  width: 1.2rem;
  height: 1.2rem;
  background: url("../img/icon_arrow_right.svg") no-repeat;
  background-size: contain;
  background-position: center;
}
.overview .overview_box .overview_info_box .overview_info_box_left dl.overview_list dd.parking {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.overview .overview_box .overview_info_box .overview_info_box_left .overview_timetable {
  width: 96%;
  margin: 0 auto;
}
.overview .overview_box .overview_info_box .overview_info_box_left .overview_timetable table.timetable caption {
  color: #ffffff;
}
.overview .overview_box .overview_info_box .overview_info_box_left .overview_timetable table.timetable caption span {
  color: #ffffff;
}
.overview .overview_box .overview_info_box {
  /*右側*/
}
.overview .overview_box .overview_info_box .overview_info_box_right {
  margin: 2rem 0 0 0;
}
.overview .overview_box .overview_info_box .overview_info_box_right img {
  width: 96%;
  height: auto;
  display: block;
  margin: 0 auto;
  border: #0068B7 1px solid;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 0.5rem;
}

@media screen and (min-width: 768px), print {
  .overview {
    width: 100%;
    height: 914px;
    background-color: #A7A7A7;
    padding: 40px 0 0 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .overview .overview_box {
    width: 1100px;
    height: 799px;
    margin: 0 auto;
    padding: 64px 0 0 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .overview .overview_box .overview_info {
    width: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: 0 0 0 0;
  }
  .overview .overview_box .overview_info .overview_logo {
    width: 452px;
    margin: 0 auto;
    display: block;
  }
  .overview .overview_box .overview_info .overview_logo img {
    width: 100%;
  }
  .overview .overview_box .overview_info .header_tel {
    font-family: "zen_maru_gothic_Medium";
    font-weight: normal;
    font-size: 3.8rem;
    text-align: center;
    color: #ffffff;
    margin: 16px 0 0 28px;
    line-height: 100%;
    letter-spacing: 0.04em;
  }
  .overview .overview_box .overview_info .header_tel i {
    font-size: 3.2rem;
    margin: 0 -5px 0 0;
  }
  .overview .overview_box .overview_info .header_tel span a {
    color: #ffffff;
    text-decoration: none;
  }
  .overview .overview_box .overview_info_box {
    width: 1100px;
    margin: 18px auto 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    /*左側*/
  }
  .overview .overview_box .overview_info_box .overview_info_box_left {
    width: 550px;
  }
  .overview .overview_box .overview_info_box .overview_info_box_left dl.overview_list {
    width: 480px;
    margin: 0 0 0 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    font-family: "zen_maru_gothic_Medium";
    font-weight: normal;
    font-size: 1.8rem;
    line-height: 160%;
  }
  .overview .overview_box .overview_info_box .overview_info_box_left dl.overview_list dt {
    width: 150px;
    margin: 0 0 22px 0;
    color: #ffffff;
  }
  .overview .overview_box .overview_info_box .overview_info_box_left dl.overview_list dt span {
    background-color: #ffffff;
    color: #0068B7;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 4px 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    border-radius: 5px;
  }
  .overview .overview_box .overview_info_box .overview_info_box_left dl.overview_list dd {
    width: 308px;
    margin: 0 0 22px 0;
    padding: 4px 0 0 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    color: #ffffff;
  }
  .overview .overview_box .overview_info_box .overview_info_box_left dl.overview_list dd ul.overview_access_list {
    list-style-type: none;
    font-family: "zen_maru_gothic_Medium";
    font-weight: normal;
    font-size: 1.8rem;
    line-height: 160%;
    margin: 0;
  }
  .overview .overview_box .overview_info_box .overview_info_box_left dl.overview_list dd ul.overview_access_list li {
    margin: 0 0 10px 0;
    padding: 0 0 0 19px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .overview .overview_box .overview_info_box .overview_info_box_left dl.overview_list dd ul.overview_access_list li:nth-child(1) {
    background: url("../img/icon_maru4.svg") no-repeat;
    background-size: 12.5px;
    background-position: left center;
  }
  .overview .overview_box .overview_info_box .overview_info_box_left dl.overview_list dd ul.overview_access_list li:nth-child(2) {
    background: url("../img/icon_maru5.svg") no-repeat;
    background-size: 12.5px;
    background-position: left center;
  }
  .overview .overview_box .overview_info_box .overview_info_box_left dl.overview_list dd ul.overview_access_list li:nth-child(3) {
    background: url("../img/icon_maru6.svg") no-repeat;
    background-size: 12.5px;
    background-position: left center;
  }
  .overview .overview_box .overview_info_box .overview_info_box_left dl.overview_list dd .btn {
    width: 164px;
    height: 34px;
    background-color: #E2F3FF;
    color: #2a2a2a;
    font-family: "zen_maru_gothic_Medium";
    font-weight: normal;
    font-size: 1.6rem;
    border-radius: 2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: -3px 0 0 10px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 0 0 0 1rem;
    text-decoration: none;
    position: relative;
    -webkit-transition: 0.5s;
    transition: 0.5s;
  }
  .overview .overview_box .overview_info_box .overview_info_box_left dl.overview_list dd .btn::before {
    position: absolute;
    top: calc(50% - 9px);
    right: 0.8rem;
    content: "";
    display: block;
    width: 18px;
    height: 18px;
    background: url("../img/icon_arrow_right.svg") no-repeat;
    background-size: contain;
    background-position: center;
  }
  .overview .overview_box .overview_info_box .overview_info_box_left dl.overview_list dd .btn:hover {
    opacity: 0.6;
    -webkit-transition: 0.5s;
    transition: 0.5s;
  }
  .overview .overview_box .overview_info_box .overview_info_box_left dl.overview_list dd.parking {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .overview .overview_box .overview_info_box .overview_info_box_left .overview_timetable {
    width: 100%;
    margin: 20px 0 0 0;
  }
  .overview .overview_box .overview_info_box .overview_info_box_left .overview_timetable table.timetable caption {
    color: #ffffff;
  }
  .overview .overview_box .overview_info_box .overview_info_box_left .overview_timetable table.timetable caption span {
    color: #ffffff;
  }
  .overview .overview_box .overview_info_box {
    /*右側*/
  }
  .overview .overview_box .overview_info_box .overview_info_box_right {
    margin: 0 0 0 0;
    width: 490px;
  }
  .overview .overview_box .overview_info_box .overview_info_box_right img {
    width: 100%;
    height: auto;
    display: block;
    margin: 0;
    border: #0068B7 1px solid;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    border-radius: 5px;
  }
}
/* -----------------------------------------------------------
　フッター
----------------------------------------------------------- */
footer .footer_frame {
  display: none;
}
footer .footer_name {
  width: 100%;
  background-color: #A7A7A7;
  text-align: center;
  margin: 0;
  padding: 2rem 0 0 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  overflow: hidden;
}
footer .footer_name span {
  color: #ffffff;
  font-family: "zen_maru_gothic_Medium";
  font-weight: normal;
  font-size: 2.2rem;
  line-height: 100%;
  letter-spacing: 0.2rem;
  margin: 0 0 -0.2rem 0;
  display: block;
}
footer .copyright {
  margin: 0;
  padding: 1rem 0;
  text-align: center;
  color: #2a2a2a;
  font-family: "zen_maru_gothic_Medium";
  font-size: 1.2rem;
  height: auto;
  width: 100%;
  letter-spacing: 0.05em;
  background-color: #ffffff;
}
footer .copyright a {
  color: #2a2a2a;
  font-family: "zen_maru_gothic_Medium";
  text-decoration: none;
  letter-spacing: 0.1em;
}

.footer_link {
  position: fixed;
  bottom: 0;
  width: 100%;
  height: 13vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  z-index: 999999;
  border-top: #ffffff 1px solid;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.footer_link a.footer_tel {
  width: 55%;
  margin: 0;
  color: #ffffff;
  background-color: #0068B7;
  text-align: center;
  font-family: "zen_maru_gothic_Medium", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "メイリオ", Meiryo, Arial, sans-serif;
  font-weight: normal;
  font-size: 1.4rem;
  letter-spacing: 0.1em;
  border-right: #ffffff 1px solid;
  text-decoration: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.footer_link a.footer_access {
  width: 30%;
  margin: 0;
  color: #ffffff;
  background-color: #0068B7;
  text-align: center;
  font-family: "zen_maru_gothic_Medium", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "メイリオ", Meiryo, Arial, sans-serif;
  font-weight: normal;
  font-size: 1.4rem;
  letter-spacing: 0.1em;
  border-right: #ffffff 1px solid;
  text-decoration: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.footer_link .smoothScrolls {
  color: #ffffff;
  background-color: #0068B7;
  width: 15%;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.footer_link .smoothScrolls a {
  width: 100%;
  color: #ffffff;
  font-weight: bold;
  text-decoration: none;
  font-size: 1.6rem;
}

@media screen and (min-width: 768px), print {
  footer {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    background-color: #A7A7A7;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    height: 396px;
    overflow: hidden;
    position: relative;
  }
  footer .footer_frame {
    display: block;
    width: 1100px;
    height: 246px;
    margin: 0 auto 0 auto;
    background-color: #A7A7A7;
    padding: 43px 0 0 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  footer .footer_frame ul.footer_list {
    line-height: 130%;
    font-family: "zen_maru_gothic_Medium";
    font-size: 1.8rem;
    margin: 0 0 0 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  footer .footer_frame ul.footer_list li {
    width: auto;
    height: 18px;
    margin: 0 28px 20px 0;
    padding: 0 28px 0 0;
    list-style-type: none;
    position: relative;
    border-right: #ffffff 1px solid;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    line-height: 100%;
  }
  footer .footer_frame ul.footer_list li a {
    color: #ffffff;
    text-decoration: none;
    font-family: "zen_maru_gothic_Medium";
    font-weight: normal;
    font-size: 1.6rem;
    position: relative;
    line-height: 100%;
  }
  footer .footer_frame ul.footer_list li a::before {
    position: absolute;
    content: "";
    -webkit-transition: 0.5s;
    transition: 0.5s;
    opacity: 0;
    top: 25%;
    bottom: 25%;
    left: 0;
    right: 0;
    border-bottom: 2px solid #ffffff;
  }
  footer .footer_frame ul.footer_list li a:hover::before {
    -webkit-transition: 0.5s;
    transition: 0.5s;
    opacity: 1;
    top: 0;
    bottom: -3px;
  }
  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 ul.footer_list.list_black li a {
    color: #ffffff;
  }
  footer .footer_frame ul.footer_list.list_black li a::before {
    border-bottom: 2px solid #ffffff;
  }
  footer .footer_frame .footer_line {
    width: 1010px;
    margin: 20px auto 28px auto;
    border: none;
    border-bottom: #ffffff 2px dotted;
  }
  footer .footer_name {
    width: 1100px;
    height: 100px;
    background-color: #A7A7A7;
    text-align: center;
    width: 1100px;
    margin: 0 auto 0 auto;
    padding: 18px 0 0 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    position: relative;
    overflow: hidden;
  }
  footer .footer_name span {
    color: #ffffff;
    font-family: "zen_maru_gothic_Medium";
    font-weight: normal;
    font-size: 8rem;
    line-height: 100%;
    letter-spacing: 1.5rem;
    margin: 0 0 0 0;
    display: block;
  }
  footer .copyright {
    margin: 0;
    padding: 0;
    text-align: center;
    color: #2a2a2a;
    font-size: 1.4rem;
    height: 56px;
    width: 100%;
    letter-spacing: 0.05em;
    background-color: #ffffff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    position: absolute;
    bottom: 0;
    left: 0;
  }
  footer .copyright a {
    color: #2a2a2a;
    text-decoration: none;
    letter-spacing: 0.1em;
    position: relative;
  }
  footer .copyright a::before {
    position: absolute;
    content: "";
    -webkit-transition: 0.5s;
    transition: 0.5s;
    opacity: 0;
    top: 25%;
    bottom: 25%;
    left: 0;
    right: 0;
    border-bottom: 1px solid #2a2a2a;
  }
  footer .copyright a:hover::before {
    -webkit-transition: 0.5s;
    transition: 0.5s;
    opacity: 1;
    top: 0;
    bottom: -2px;
  }
  .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: 110px;
    height: 110px;
  }
  #pagetop_position #linkpagetop a img {
    width: 110px;
    height: 110px;
    border-radius: 50%;
    -webkit-box-shadow: 10px 10px 20px rgba(120, 120, 120, 0.5);
            box-shadow: 10px 10px 20px rgba(120, 120, 120, 0.5);
    -webkit-transition: 0.5s;
    transition: 0.5s;
  }
  #pagetop_position #linkpagetop a img:hover {
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px);
    -webkit-transition: 0.5s;
    transition: 0.5s;
  }
  #pagetop {
    position: fixed;
    bottom: 40px;
    right: 11%;
    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: 110px;
    height: 110px;
  }
  #pagetop_position #linkpagetop a img {
    width: 110px;
    height: 110px;
  }
  #pagetop {
    position: fixed;
    bottom: 340px;
    right: 2%;
    z-index: 999999;
  }
}
/*# sourceMappingURL=style.css.map */