@charset "UTF-8";
.footer a {
  display: inline-block;
}

a[href*=dummy] {
  pointer-events: none;
}

/* _reset.scss　出力 */
html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

*, *::before, *::after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
}

ol, ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

h1, h2, h3, h4, h5, h6 {
  margin: 0;
  padding: 0;
  font-weight: normal;
  font-size: inherit;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

/* _aside.scss　出力 */
@media screen and (min-width: 48em), print {
  aside {
    background: transparent;
    padding: 0;
    margin: 0;
  }
  aside div.aside_wrapper {
    width: 100%;
  }
  aside div.aside_wrapper ul {
    list-style-type: none;
    margin: 4rem 0 0 0;
  }
  aside div.aside_wrapper ul li {
    background: #7FB473;
    border-radius: 1.8rem;
    margin: 0 0 2.4rem;
  }
  aside div.aside_wrapper ul li a {
    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;
    text-align: center;
    line-height: 1.2;
    width: 100%;
    height: 9rem;
    color: #fff;
    text-decoration: none !important;
    font-size: 2.4rem;
  }
  aside div.aside_wrapper ul li a.internal span::before {
    content: "\e8ef";
  }
  aside div.aside_wrapper ul li a.pediatrics span::before {
    content: "\e8e8";
  }
  aside div.aside_wrapper ul li a.gastro span::before {
    content: "\e8f3";
  }
  aside div.aside_wrapper ul li a.surgery span::before {
    content: "\e8f0";
  }
  aside div.aside_wrapper ul li a.derma span::before {
    content: "\e8f1";
  }
  aside div.aside_wrapper ul li a.vaccination span::before {
    content: "\e8ec";
  }
  aside div.aside_wrapper ul li a.checkup span::before {
    content: "\e8ed";
  }
}
/* _module.scss　出力 */
.cf::before,
.cf::after {
  content: "";
  display: block;
}

.cf::after {
  clear: both;
}

.fl_l {
  float: left;
}

.fl_r {
  float: right;
}

.txt_c {
  text-align: center;
}

.txt_l {
  text-align: left;
}

.txt_r {
  text-align: right;
}

.bold {
  font-weight: bold;
}

.larger {
  font-size: 125%;
}

.red {
  color: #f00;
}

.blue {
  color: #00f;
}

.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;
  border-radius: 2rem;
}

.tate {
  max-width: 60%;
}

@media screen and (min-width: 48em), print {
  .img_l {
    float: left;
    margin: 0 3rem 3rem 0;
  }
  .img_r {
    float: right;
    margin: 0 0 3rem 3rem;
  }
  .tate {
    max-width: 27rem;
  }
  .mini {
    width: 70%;
  }
  .small {
    max-width: 35rem;
  }
}
.sp_n {
  display: none !important;
}

@media screen and (min-width: 48em), print {
  .sp_n {
    display: block !important;
  }
  .pc_n {
    display: none !important;
  }
}
.mt40 {
  margin-top: 4rem !important;
}

.mt30 {
  margin-top: 3rem !important;
}

.mt20 {
  margin-top: 2rem !important;
}

.mt10 {
  margin-top: 1rem !important;
}

.mg0 {
  margin: 0 !important;
}

.mb05 {
  margin-bottom: 0.5rem !important;
}

.main > section ~ section, .flex2 > section ~ section {
  margin-top: 4rem;
}

.main > section section ~ section, .flex2 > section section ~ section {
  margin-top: 3rem;
}

.main > section > section section ~ section, .flex2 > section > section section ~ section {
  margin-top: 2rem;
}

.main > section > section > section section ~ section, .flex2 > section > section > section section ~ section {
  margin-top: 2rem;
}

@media screen and (min-width: 48em), print {
  .mt40 {
    margin-top: 8rem !important;
  }
  .mt30 {
    margin-top: 6rem !important;
  }
  .mt20 {
    margin-top: 4rem !important;
  }
  .mt10 {
    margin-top: 2rem !important;
  }
  .main > section ~ section, .flex2 > section ~ section {
    margin-top: 8rem;
  }
  .main > section section ~ section, .flex2 > section section ~ section {
    margin-top: 6rem;
  }
  .main > section > section section ~ section, .flex2 > section > section section ~ section {
    margin-top: 4rem;
  }
  .main > section > section > section section ~ section, .flex2 > section > section > section section ~ section {
    margin-top: 2rem;
  }
}
.timetable_wrapper {
  background: #fff;
  padding: 0 0 1rem;
  border-radius: 1rem;
}
.timetable_wrapper .tbl_time {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  font-size: 1.2rem;
  table-layout: fixed;
  overflow: hidden;
}
.timetable_wrapper .tbl_time tr th[scope=col] {
  padding: 0.8rem 0;
  border-bottom: 0.1rem #CCCCCC solid;
}
.timetable_wrapper .tbl_time tr th[scope=col]:first-child {
  width: 30%;
}
.timetable_wrapper .tbl_time tr th[scope=col]:last-child {
  white-space: nowrap;
}
.timetable_wrapper .tbl_time tr th.time {
  white-space: nowrap;
  text-align: center;
  background: #fff;
  line-height: 1;
  border-bottom: 0.1rem #CCCCCC solid;
  font-weight: normal;
}
.timetable_wrapper .tbl_time tr td {
  text-align: center;
  font-weight: normal;
  padding: 1rem 0;
  line-height: 1;
  color: #1EC2B7;
  border-bottom: 0.1rem #CCCCCC solid;
}
.timetable_wrapper p.notice {
  margin: 0.4rem 0 0 0.6rem;
  font-size: 1.1rem;
  text-align: left;
  line-height: 1.4;
}
.timetable_wrapper p.notice span {
  color: #1EC2B7;
}

@media screen and (min-width: 48em), print {
  .timetable_wrapper {
    padding: 0 0 2.1rem;
    border-radius: 2rem;
  }
  .timetable_wrapper .tbl_time {
    font-size: 1.8rem;
  }
  .timetable_wrapper .tbl_time tr th[scope=col] {
    padding: 2rem 0;
  }
  .timetable_wrapper .tbl_time tr th[scope=col]:first-child {
    width: 13.8rem;
  }
  .timetable_wrapper .tbl_time tr td {
    padding: 2.05rem 0;
  }
  .timetable_wrapper p.notice {
    font-size: 1.8rem;
    margin: 1rem 0 0 1rem;
  }
}
.gmap {
  width: 100%;
}
.gmap iframe {
  width: 100%;
  height: 100%;
  border: none;
}

.tit_01 {
  font-size: 2.6rem;
  text-align: center;
  padding: 1rem;
  margin: 1rem auto 0;
  width: 95%;
  height: 11rem;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  letter-spacing: 0.2rem;
  text-shadow: 0 0 1px #999, 0 0 4px #999, 0 0 8px #999, 0 0 12px #999, 0 0 16px #999;
  color: #fff;
  background: url("../img/tit_01.png") no-repeat center top/contain;
  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;
}

.tit_02, .tit_02_low {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  color: #575757;
  text-align: center;
  margin: 0 0 2rem;
  font-size: 2.4rem;
}
.tit_02 span, .tit_02_low span {
  display: block;
  font-size: 1.2rem;
  color: #5ED3CB;
}

.tit_03 {
  font-size: 2.2rem;
  margin: 0 0 2rem;
  color: #575757;
  text-align: center;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  border-radius: 1rem;
  line-height: 1;
}

.tit_02_low {
  line-height: 1;
}
.tit_02_low::after {
  content: "";
  display: block;
  background: url("../img/icon_h2.png") no-repeat center center/contain;
  width: 6.05rem;
  height: 0.6rem;
  margin: 0.8rem auto 0;
}

.tit_03_low {
  font-size: 2.2rem;
  margin: 0 0 2rem;
  padding: 0.3rem 1.4rem;
  color: #fff;
  background: #5ED3CB;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  border-radius: 1rem;
  line-height: 1;
}

.tit_04 {
  font-size: 2rem;
  margin: 0 0 2rem;
  color: #5ED3CB;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  border-bottom: 0.1rem #5ED3CB solid;
}

.tit_05 {
  font-size: 1.8rem;
  margin: 0 0 2rem;
  color: #5ED3CB;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
}
.tit_05::before {
  display: inline-block;
  content: "";
  background: #5ED3CB;
  border-radius: 0.8rem;
  vertical-align: middle;
  margin: 0 0.7rem 0 0;
  width: 0.8rem;
  height: 0.3rem;
}

.tit_06 {
  font-size: 1.8rem;
  margin: 0 0 2rem;
  color: #5ED3CB;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
}

@media screen and (min-width: 48em), print {
  .tit_01 {
    font-size: 4.8rem;
    letter-spacing: 0.6rem;
    margin: 0 auto;
    width: 120rem;
    height: 40rem;
    background: url("../img/tit_01.png") no-repeat center top/auto;
  }
  .tit_02, .tit_02_low {
    margin: 0 0 3rem;
    font-size: 4.8rem;
  }
  .tit_02 span, .tit_02_low span {
    font-size: 1.8rem;
  }
  .tit_03 {
    font-size: 3.6rem;
  }
  .tit_02_low {
    margin: 0 0 4rem;
  }
  .tit_02_low::after {
    width: 12.1rem;
    height: 1.1rem;
    margin: 2rem auto 0;
  }
  .tit_03_low {
    font-size: 3.6rem;
    padding: 1.2rem 1.8rem;
  }
  .tit_04 {
    font-size: 3rem;
  }
  .tit_05 {
    font-size: 2.4rem;
  }
  .tit_05::before {
    margin: 0 1.4rem 0 0;
    width: 1.6rem;
    height: 0.6rem;
  }
  .tit_06 {
    font-size: 2rem;
  }
}
.lst_ul01 li, .lst_ul02 li {
  text-indent: -1.4rem;
  padding-left: 2rem;
  padding-bottom: 1rem;
  line-height: 1.4;
  font-size: 1.4rem;
}
.lst_ul01 li::before, .lst_ul02 li::before {
  content: "●";
  margin-right: 0.4rem;
  color: #FEB6B6;
  vertical-align: 0.1rem;
  font-size: 60%;
}
.lst_ul01 li:last-of-type, .lst_ul02 li:last-of-type {
  padding-bottom: 0;
}
@media screen and (min-width: 48em), print {
  .lst_ul01 li, .lst_ul02 li {
    font-size: 1.8rem;
    text-indent: -1.8rem;
    padding-left: 2rem;
  }
  .lst_ul01 li::before, .lst_ul02 li::before {
    vertical-align: 0.25rem;
  }
}

.lst_ul02 {
  padding: 1.3rem 1.3rem 0 1.3rem;
}

.lst_ol01 {
  margin: 1rem 0 1rem 2.6rem;
}
.lst_ol01 li {
  line-height: 1.4;
  counter-increment: number 1;
  text-indent: -1rem;
  padding: 0 0 1rem 0;
}
.lst_ol01 li::before {
  display: inline-block;
  content: counter(number) ".";
  margin-right: 0.8rem;
  font-family: "Lato", sans-serif;
  color: #333;
  font-weight: bold;
}

.lst_dl01 dt {
  font-weight: bold;
}
.lst_dl01 dd {
  margin: 0 0 1rem;
}

.lst_dl02 dt {
  background: #E7F8F7;
  padding: 0.2rem 0.8rem;
  font-weight: bold;
}
.lst_dl02 dd {
  margin: 0 0 2rem;
  padding: 0.8rem;
}

.lst_flow > li {
  border-radius: 1rem;
  background-color: #F7F7F7;
  margin: 0 0 4rem;
  position: relative;
  padding: 1rem;
}
.lst_flow > li:not(:last-child)::after {
  display: block;
  width: 0;
  height: 0;
  content: "";
  position: absolute;
  bottom: -4rem;
  left: 0;
  right: 0;
  border-top: 2rem solid #1EC2B7;
  border-right: 3rem solid transparent;
  border-bottom: 1rem solid transparent;
  border-left: 3rem solid transparent;
  margin: auto;
}

@media screen and (min-width: 48em), print {
  .lst_ol01 {
    margin: 1rem 0 1rem 3rem;
  }
  .lst_ol01 li {
    text-indent: -1.2rem;
    padding: 0 0 1.4rem 0;
  }
  .lst_dl01 dt {
    float: left;
    width: 15rem;
    font-weight: bold;
    clear: left;
  }
  .lst_dl01 dd {
    padding-left: 15rem;
  }
  .lst_dl02 dt {
    padding: 0.4rem 1rem;
  }
  .lst_dl02 dd {
    padding: 1rem;
  }
  .lst_flow > li {
    margin: 0 0 6rem;
    padding: 2rem;
    border-radius: 2rem;
  }
}
@media screen and (min-width: 48em) and (min-width: 48em), print {
  .lst_flow > li:not(:last-child)::after {
    bottom: -5rem;
  }
}
.flex3 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.flex3 > li {
  width: 100%;
  margin: 0 0 2rem;
}

@media screen and (min-width: 48em), print {
  .flex2 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .flex2 > section, .flex2 > li {
    width: 48%;
    margin: 0 !important;
  }
  .flex3 li {
    width: 31%;
    margin: 0;
  }
}
.tel {
  line-height: 1;
  color: #1EC2B7;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
}
.tel::before {
  font-family: fontello;
  content: "\e802";
  margin: 0 0.4rem 0 0;
  display: inline-block;
  font-size: 80%;
}
.tel a {
  text-decoration: none !important;
}
@media screen and (min-width: 48em), print {
  .tel::before {
    margin: 0 1.04rem 0 0;
  }
}

.btn_rsv, .btn_online {
  background: #FE0000;
  text-align: center;
  color: #fff;
  border-radius: 0.6rem;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-size: 1.4rem;
  width: 60%;
  height: auto;
  padding: 0.8rem 0;
  line-height: 1;
  display: block;
  margin: 0 auto 0.8rem;
}
.btn_rsv::before, .btn_online::before {
  font-family: fontello;
  content: "\e800";
  margin: 0 0.4rem 0 0;
  display: inline-block;
}
@media screen and (min-width: 48em), print {
  .btn_rsv, .btn_online {
    font-size: 1.8rem;
    width: 20rem;
    padding: 1rem 0;
    margin: 0;
  }
  .btn_rsv::before, .btn_online::before {
    margin: 0 0.4rem 0 0;
  }
  .btn_rsv:hover, .btn_online:hover {
    opacity: 0.7;
  }
}

.btn_online {
  background: #1971AF;
}
.btn_online::before {
  content: url("../img/icon_telemedicine.svg");
  width: 2rem;
  height: 2rem;
  vertical-align: -0.4rem;
}

.btn_link {
  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;
  background: #1EC2B7;
  border-radius: 1rem;
  text-align: center;
  padding: 0.4rem 0;
  font-family: "Zen Maru Gothic", sans-serif;
  color: #fff;
  width: 80%;
  margin: 0 auto;
  line-height: 1rem;
  position: relative;
}
.btn_link::after {
  display: inline-block;
  font-family: fontello;
  content: "\f006";
  font-size: 100%;
  position: absolute;
  top: 1.6rem;
  right: 1rem;
}
@media screen and (min-width: 48em), print {
  .btn_link {
    font-size: 2.4rem;
    border-radius: 2rem;
  }
  .btn_link::after {
    top: 4.6rem;
    right: 2rem;
  }
}

.btn_detail {
  display: table;
  padding: 0.8rem 3rem 0.6rem;
  font-size: 1.6rem;
  border-radius: 1.6rem;
  text-decoration: none !important;
  background: #189A91;
  color: #fff;
  margin: 2rem auto 0;
}
.btn_detail::before {
  font-family: "fontello";
  content: "\f006";
  margin: 0 0.4rem 0 0;
}
@media screen and (min-width: 48em), print {
  .btn_detail {
    width: 35rem;
    height: 7rem;
    padding: 0.3rem 0 0 0;
    font-size: 2.4rem;
    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;
    margin: 2rem auto 0;
  }
  .btn_detail::before {
    margin: 0 0.83rem 0 0;
  }
}

.btn_txt {
  color: #575757;
  text-decoration: underline;
}
@media screen and (min-width: 48em), print {
  .btn_txt:hover {
    color: #564327;
    text-decoration: underline !important;
  }
}

.anc li .btn_detail::after {
  content: "▼";
}

@media screen and (min-width: 48em), print {
  .anc {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .anc li {
    margin: 0 2rem 2rem 0;
  }
  .anc li .btn_detail::after {
    content: "▼";
  }
}
.box_white, .box_yellow, .box_blue {
  padding: 1rem;
  background: #fff;
  border-radius: 2rem;
}
@media screen and (min-width: 48em), print {
  .box_white, .box_yellow, .box_blue {
    padding: 2.4rem;
  }
}

.box_blue {
  background-color: #E7F8F7;
}

.box_yellow {
  background-color: #F7F7F7;
}

.slide-bottom {
  opacity: 0;
  -webkit-transform: translateY(50px);
          transform: translateY(50px);
  -webkit-transition: all 2s 0s ease-out;
  transition: all 2s 0s ease-out;
}

/* _common.scss　出力 */
html {
  font-size: 3.125vw;
  font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}

body {
  background: #fff;
  color: #333;
}

a {
  color: inherit;
  text-decoration: none;
}

aside {
  display: none;
}

.wrapper {
  margin: 0 auto 2rem;
}

.main {
  font-size: 1.4rem;
  line-height: 1.6;
  padding: 0;
  margin: 0;
}
.main a:not([href=tel]) {
  text-decoration: underline;
}
.main a[class*=btn_] {
  text-decoration: none;
}

@media screen and (min-width: 48em), print {
  :target::before {
    /*
     content: "";
     display: block;
     height: 20.0rem;
     margin: -20.0rem 0 0;
    */
  }
  html {
    font-size: 62.5%;
  }
  body {
    min-width: calc(1200px + 40px);
  }
  a, button {
    -webkit-transition: 0.2s;
    transition: 0.2s;
  }
  a:hover, button:hover {
    opacity: 0.8;
  }
  .wrap {
    width: 1200px;
    margin: auto;
  }
  .wrapper {
    width: 100%;
    margin: 0 auto 5rem;
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .main {
    width: 100%;
    font-size: 1.8rem;
    padding: 0;
    margin: 0;
  }
  aside {
    display: block;
    width: 24rem;
  }
}
@font-face {
  font-family: "fontello";
  src: url("fontello/font/fontello.eot");
  src: url("fontello/font/fontello.eot#iefix") format("embedded-opentype"), url("fontello/font/fontello.woff2") format("woff2"), url("fontello/font/fontello.woff") format("woff"), url("fontello/font/fontello.ttf") format("truetype"), url("fontello/font/fontello.svg#fontello") format("svg");
}
.header {
  background: #fff;
  padding: 2rem 0;
}
.header .sticky .wrap {
  margin: 0 1rem;
}
.header .sticky .wrap .logo {
  height: 3.2rem;
}
.header .sticky .wrap .logo a {
  display: block;
  width: 100%;
  height: 100%;
  background: url(../img/logo.svg) no-repeat left center/contain;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
}
.header .sticky .wrap .headR {
  margin: 1.2rem 0 0 0;
}
.header .sticky .wrap .headR .acs {
  background: #E7F8F7;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  border-radius: 0.4rem;
  outline: 0.1rem solid #fff;
  outline-offset: -0.4rem;
  text-align: center;
  padding: 0.8rem 0;
  font-size: 1.4rem;
  margin: 0 0 0.6rem;
}
.header .sticky .wrap .headR .acs span {
  color: #1EC2B7;
}
.header .sticky .wrap .headR .tel_add {
  text-align: center;
}
.header .sticky .wrap .headR .tel_add .tel {
  font-size: 2.6rem;
}
.header .sticky .wrap .headR .tel_add .add {
  margin: 0.6rem 0 0 0;
  font-size: 1.4rem;
}
.header .sticky .wrap .headR .tel_add .add::before {
  display: inline-block;
  font-family: fontello;
  content: "\f031";
  color: #1EC2B7;
  font-weight: normal;
  margin: 0 0.4rem 0 0;
}

@media screen and (min-width: 48em), print {
  .header {
    background: #fff;
    margin: 0;
    padding: 0;
    height: auto;
    position: relative;
  }
  .header .sticky .wrap {
    width: 1200px;
    margin: 0 auto;
    padding: 2rem 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-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .header .sticky .wrap .logo {
    width: 52rem;
    height: 7rem;
  }
  .header .sticky .wrap .headR {
    margin: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .header .sticky .wrap .headR .acs {
    font-size: 2rem;
    padding: 1.7rem 0 0 0;
    line-height: 1.5;
    width: 14rem;
    height: 9rem;
    margin: 0 2rem;
    border-radius: 1rem;
  }
  .header .sticky .wrap .headR .tel_add {
    text-align: right;
  }
  .header .sticky .wrap .headR .tel_add .tel {
    font-size: 3.6rem;
  }
  .header .sticky .wrap .headR .tel_add .add {
    margin: 2rem 0 0 0;
    font-size: 1.8rem;
  }
  .header .sticky .wrap .headR .tel_add .add::before {
    margin: 0 0.98rem 0 0;
  }
}
.fixed_rsv_btn {
  display: block;
}
.fixed_rsv_btn .fixed_rsv, .fixed_rsv_btn .fixed_rsv_re, .fixed_rsv_btn .fixed_online {
  display: none;
}
@media screen and (min-width: 48em), print {
  .fixed_rsv_btn .fixed_rsv, .fixed_rsv_btn .fixed_rsv_re, .fixed_rsv_btn .fixed_online {
    color: #fff;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 1.8rem;
    font-weight: 700;
    background: #FE0000;
    border-radius: 3rem 0 0 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;
    z-index: 999;
    position: fixed;
    top: 11rem;
    right: 0;
    width: 6rem;
    height: 14rem;
    text-align: center;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
  }
  .fixed_rsv_btn .fixed_rsv_re {
    background: #FE72BE;
    top: 28rem;
    height: 21rem;
  }
  .fixed_rsv_btn .fixed_online {
    background: #1971AF;
    top: 26rem;
    height: 20rem;
  }
}

.slicknav_menu {
  position: absolute;
  top: 0;
  right: 0;
  font-size: 4.4rem;
  display: inline-block;
  background: none;
  padding: 0;
  z-index: 100;
}
.slicknav_menu .slicknav_btn {
  width: 5rem;
  height: 5.5rem;
  color: #fff;
  background: #1EC2B7;
  text-shadow: none;
  border-radius: 0;
  text-align: center;
  line-height: 1;
  margin: 0 1rem;
  padding: 0.4rem 0 0 0;
  z-index: 999;
}
.slicknav_menu .slicknav_btn.slicknav_collapsed::before {
  display: block;
  font-family: "fontello";
  content: "\e807";
  line-height: 1;
  font-size: 3rem;
  margin: 0.3rem 0 0 0;
}
.slicknav_menu .slicknav_btn.slicknav_collapsed::after {
  display: block;
  content: "MENU";
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: 1.1rem;
  margin: 0.2rem 0 0 0;
}
.slicknav_menu .slicknav_btn.slicknav_open::before {
  display: block;
  font-family: "fontello";
  content: "\e806";
  line-height: 1;
  font-size: 3rem;
  margin: 0.3rem 0 0 0;
}
.slicknav_menu .slicknav_btn.slicknav_open::after {
  display: block;
  content: "CLOSE";
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: 1.1rem;
  margin: 0.2rem 0 0 0;
}
.slicknav_menu .slicknav_nav {
  width: 100vw;
  background: #189A91;
  padding: 7rem 1.6rem 1.6rem 1.6rem;
  position: absolute;
  top: 0;
  right: 0;
  margin: auto;
}
.slicknav_menu .slicknav_nav .gnav {
  margin: 0;
}
.slicknav_menu .slicknav_nav .gnav li a {
  display: block;
  color: #fff !important;
  padding: 1rem 0;
  font-size: 1.4rem;
  font-family: "Zen Maru Gothic", sans-serif;
  position: relative;
}
.slicknav_menu .slicknav_nav .gnav li a span {
  display: inline-block;
  font-size: 1.2rem;
  margin: 0 0 0 0rem;
}
.slicknav_menu .slicknav_nav .gnav li a.sub {
  background: none;
  border: none;
}
.slicknav_menu .slicknav_nav .gnav li a.sub::after {
  position: absolute;
  right: 1rem;
  top: 1.5rem;
  font-size: 1rem;
  content: "▼";
  color: #fff;
}
.slicknav_menu .slicknav_nav .gnav li a:hover {
  color: inherit;
  background: none;
}
.slicknav_menu .slicknav_nav .gnav li.slicknav_parent a.slicknav_item {
  padding: 0;
}
.slicknav_menu .slicknav_nav .gnav li.slicknav_parent ul li:last-child {
  border: none;
}
.slicknav_menu .slicknav_nav .gnav li.slicknav_open > a.slicknav_item .sub::after {
  content: "▲";
}
.slicknav_menu .slicknav_nav .gnav li .subnav li {
  border: none;
}
.slicknav_menu .slicknav_nav .gnav li .subnav li.nav4 {
  display: none;
}
.slicknav_menu .slicknav_nav .gnav li .subnav li a {
  padding: 1rem;
  background: rgba(255, 255, 255, 0.8);
  color: #575757 !important;
}
.slicknav_menu .slicknav_nav .gnav li .subnav li a span {
  display: block;
}
.slicknav_menu .slicknav_nav .gnav li .subnav li a br {
  display: none;
}
.slicknav_menu .slicknav_icon, .slicknav_menu .slicknav_icon-bar, .slicknav_menu .slicknav_arrow, .slicknav_menu .slicknav_row:after {
  display: none !important;
}

#nav {
  display: none;
}

@media screen and (min-width: 48em), print {
  .slicknav_menu {
    display: none;
  }
  #nav {
    display: block;
    width: 100%;
    padding: 0;
    margin: 2.6rem 0 2.3rem;
  }
  #nav ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 1200px;
    margin: 0 auto;
    height: 3.7rem;
    background: #fff;
  }
  #nav ul li {
    position: relative;
    height: 100%;
  }
  #nav ul li:not(#nav ul li:last-of-type) {
    margin: 0 4.3rem 0 0;
  }
  #nav ul li:hover .children-1 {
    display: block;
  }
  #nav ul li a {
    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-line-pack: center;
        align-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    font-family: "Zen Maru Gothic", sans-serif;
    font-weight: 700;
    text-align: center;
    font-size: 2rem;
    color: #333;
    width: 100%;
    height: 100%;
    padding: 0 0 0.6rem;
    border-bottom: 0.2rem transparent solid;
  }
  #nav ul li a span br {
    display: none;
  }
  #nav ul li a:hover {
    border-bottom: 0.2rem #1EC2B7 solid;
  }
  #nav ul .children-1 li, #nav ul .children-2 li {
    width: 100%;
    height: auto;
    background: rgba(30, 194, 183, 0.8);
  }
  #nav ul .children-1 li.nav4, #nav ul .children-2 li.nav4 {
    display: none;
  }
  #nav ul .children-1 li a, #nav ul .children-2 li a {
    font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
    display: block;
    height: auto;
    padding: 1.5rem 0;
    width: 100%;
    margin: 0;
    font-size: 1.6rem;
    font-weight: bold;
    color: #fff;
    text-align: center;
    white-space: nowrap;
  }
  #nav ul .children-1 li:not(:last-child), #nav ul .children-2 li:not(:last-child) {
    border-bottom: 0.1rem #fff solid;
  }
  #nav ul .children-1 {
    display: none;
    position: absolute;
    background: transparent;
    z-index: 999;
    top: 0;
    left: -6.7rem;
    margin: auto;
    padding: 3.8rem 0 0 0;
    width: 26rem;
  }
  #nav ul .children-1 li .children-2 {
    display: none;
    position: absolute;
    top: 0px;
    left: 110px;
    width: 100%;
  }
  #nav ul .children-1 li:hover .children-2 {
    display: block;
    background: #E6E4D7;
  }
  #nav ul .children-2 a {
    width: 100%;
  }
  .index #nav .home,
  .greeting #nav .greeting,
  .clinic #nav .clinic,
  .first #nav .first,
  .access #nav .access {
    border-bottom: 0.2rem #1EC2B7 solid;
  }
}
.overview {
  padding: 3rem 1rem 1rem;
  font-size: 1.4rem;
  width: 100%;
  background: #F9F9F9;
}
.overview > .wrap {
  margin: 0;
}
.overview > .wrap .clinic_name {
  text-align: center;
  width: 90%;
  margin: 0 auto 1rem;
}
.overview > .wrap .clinic_name img {
  width: 100%;
}
.overview > .wrap .overviewR {
  margin: 2.8rem 0 0 0;
}
.overview > .wrap .overviewL p.phone, .overview > .wrap .overviewR p.phone {
  font-size: 2.6rem;
  margin: 0 0 1rem;
  padding: 1rem 0;
  background: #fff;
  border-radius: 1rem;
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.overview > .wrap .overviewL .gaiyo, .overview > .wrap .overviewR .gaiyo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 1.8rem 0;
}
.overview > .wrap .overviewL .gaiyo dt, .overview > .wrap .overviewL .gaiyo dd, .overview > .wrap .overviewR .gaiyo dt, .overview > .wrap .overviewR .gaiyo dd {
  line-height: 1.5;
  font-size: 1.4rem;
  padding: 1.6rem 0 0 0;
  margin: 0 0 1.6rem;
}
.overview > .wrap .overviewL .gaiyo dt, .overview > .wrap .overviewR .gaiyo dt {
  width: 25%;
  border-top: 0.1rem #5ED3CB solid;
  text-align: center;
}
.overview > .wrap .overviewL .gaiyo dd, .overview > .wrap .overviewR .gaiyo dd {
  width: 75%;
  border-top: 0.1rem #CCCCCC solid;
}
.overview > .wrap .overviewL .gaiyo dd .acs, .overview > .wrap .overviewR .gaiyo dd .acs {
  display: block;
  margin: 0 0 1rem;
}
.overview iframe {
  border: 0;
  width: 100%;
  height: 30rem;
}

@media screen and (min-width: 48em), print {
  .overview {
    padding: 6rem 0 0 0;
  }
  .overview > .wrap {
    width: 1200px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    height: auto;
    margin: 0 auto;
  }
  .overview > .wrap .clinic_name {
    margin: 0 0 4.32rem;
    width: 100%;
    text-align: left;
  }
  .overview > .wrap .clinic_name img {
    width: 57rem;
  }
  .overview > .wrap .overviewL, .overview > .wrap .overviewR {
    width: 57rem;
    margin: 0;
  }
  .overview > .wrap .overviewL p.phone, .overview > .wrap .overviewR p.phone {
    width: 100%;
    height: 8rem;
    font-size: 3.6rem;
    margin: 0 0 2rem;
    padding: 0;
    border-radius: 2rem;
  }
  .overview > .wrap .overviewL .gaiyo, .overview > .wrap .overviewR .gaiyo {
    width: 100%;
    margin: 0;
  }
  .overview > .wrap .overviewL .gaiyo dt, .overview > .wrap .overviewL .gaiyo dd, .overview > .wrap .overviewR .gaiyo dt, .overview > .wrap .overviewR .gaiyo dd {
    font-size: 1.8rem;
    padding: 2.8rem 0 0 0;
    margin: 0 0 2.8rem;
  }
  .overview > .wrap .overviewL .gaiyo dt, .overview > .wrap .overviewR .gaiyo dt {
    width: 10rem;
  }
  .overview > .wrap .overviewL .gaiyo dd, .overview > .wrap .overviewR .gaiyo dd {
    width: 47rem;
    padding: 2.8rem 3rem 0;
  }
  .overview > .wrap .overviewL .gaiyo dd .acs, .overview > .wrap .overviewR .gaiyo dd .acs {
    margin: 0 0 2.8rem;
  }
  .overview iframe {
    width: 100%;
    height: 40rem;
  }
}
.tel_up {
  width: 100%;
  background: #fff;
  padding: 0.4rem 1rem 0;
  /*visibility: hidden;*/
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 9999;
  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;
}
.tel_up .phone {
  width: 45%;
  white-space: nowrap;
  text-align: center;
  font-size: 1.5rem;
  line-height: 1;
  padding: 0;
  color: #1EC2B7;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
}
.tel_up .phone::before {
  font-family: fontello;
  content: "\e802";
  margin: 0 0.4rem 0 0;
  display: inline-block;
  font-size: 80%;
}
.tel_up .phone a {
  text-decoration: none !important;
}
.tel_up .btn_rsv, .tel_up .btn_rsv_re, .tel_up .btn_online {
  width: 40%;
  white-space: nowrap;
  margin: 0;
  font-size: 1.2rem;
  padding: 1.6rem 1rem;
}
.tel_up .btn_rsv::before, .tel_up .btn_rsv_re::before, .tel_up .btn_online::before {
  display: none;
}
.tel_up .btn_rsv_re {
  background: #FE72BE;
}
.tel_up .btn_online {
  background: #1971AF;
}
.tel_up .pageup a {
  display: block;
  width: 3.5rem;
  height: 3.5rem;
  font-size: 2.4rem;
  text-align: center;
  padding: 0.4rem 0 0 0;
  line-height: 1;
  background: #1EC2B7;
  border-radius: 50%;
  border: 0.1rem #fff solid;
}
.tel_up .pageup a::before {
  font-family: "fontello";
  content: "\f005";
  font-weight: normal;
  color: #fff;
}
.tel_up .pageup a span {
  display: none;
}

@media screen and (min-width: 48em), print {
  .tel_up {
    display: block;
    width: 8rem;
    bottom: 14rem;
    right: 2rem;
    left: auto;
    cursor: pointer;
    background: none;
    padding: 0;
  }
  .tel_up .tel, .tel_up .phone, .tel_up .btn_rsv, .tel_up .btn_rsv_re, .tel_up .btn_online {
    display: none;
  }
  .tel_up .pageup a {
    width: 6rem;
    height: 6rem;
    font-size: 4rem;
    padding: 0.8rem 0 0 0;
  }
}
.footer {
  text-align: center;
  padding: 0;
  width: 100%;
}
.footer .bnr {
  margin: 2rem auto 1rem;
}
.footer .bnr a {
  margin: 0 0 1rem;
}
.footer .copy {
  display: block;
  padding: 1rem 1rem 5.4rem;
  font-size: 1.2rem;
  background: #F9F9F9;
}
.footer .copy a::before {
  content: "©";
  margin: 0 0.2rem 0 0;
}
.footer .footer_wrapper {
  display: none;
}

@media screen and (min-width: 48em), print {
  .footer {
    margin: 3rem 0 0 0;
  }
  .footer .bnr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: 78.6rem;
    margin: 0 auto 3rem;
  }
  .footer .bnr a {
    margin: 0;
  }
  .footer .footer_wrapper {
    width: 1200px;
    margin: 0 auto;
    padding: 0 0 2.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;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .footer .footer_wrapper .footer_nav {
    margin: 0;
  }
  .footer .footer_wrapper .footer_nav ul.glo, .footer .footer_wrapper .footer_nav ul.sub {
    width: 1200px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .footer .footer_wrapper .footer_nav ul.glo li, .footer .footer_wrapper .footer_nav ul.sub li {
    display: inline-block;
    -webkit-text-size-adjust: none;
    padding: 0;
    margin: 0;
  }
  .footer .footer_wrapper .footer_nav ul.glo li:not(:last-child)::after, .footer .footer_wrapper .footer_nav ul.sub li:not(:last-child)::after {
    content: "|";
    margin: 0 1rem;
    color: #333;
    font-size: 1.8rem;
  }
  .footer .footer_wrapper .footer_nav ul.glo li.treatment, .footer .footer_wrapper .footer_nav ul.sub li.treatment {
    display: none;
  }
  .footer .footer_wrapper .footer_nav ul.glo li a, .footer .footer_wrapper .footer_nav ul.sub li a {
    color: #333;
    font-size: 1.8rem;
    opacity: 1;
  }
  .footer .footer_wrapper .footer_nav ul.glo li a br, .footer .footer_wrapper .footer_nav ul.sub li a br {
    display: none;
  }
  .footer .footer_wrapper .footer_nav ul.glo li a:hover, .footer .footer_wrapper .footer_nav ul.sub li a:hover {
    text-decoration: underline;
  }
  .footer .footer_wrapper .footer_nav ul.glo li .subnav, .footer .footer_wrapper .footer_nav ul.sub li .subnav {
    display: none;
  }
  .footer .footer_wrapper .footer_nav ul.sub {
    margin: 0 auto;
  }
  .footer .footer_wrapper .footer_nav ul.sub li.nav4 {
    display: none;
  }
  .footer .footer_wrapper .footer_nav ul.sub li {
    margin: 1rem 0 0 0;
  }
  .footer .copy {
    padding: 3rem 0;
    font-size: 1.8rem;
    margin: 0 auto;
  }
}
/* _top.scss　出力 */
body.index header > div:nth-of-type(2) {
  z-index: 0 !important;
}
.bg_header {
  background: url("../img/bg_wave.png") no-repeat center top;
}
.bg_header > div {
  z-index: 0 !important;
}
.bg_header #keyvsl {
  margin: 0;
  padding: 0;
  width: 100%;
  background: url(../img/index_keyvsl01.png) no-repeat center top/110%;
  height: 25rem;
}
.bg_header #keyvsl .inner_kv {
  position: relative;
  height: 100%;
  padding: 25rem 1rem 0 1rem;
}
.bg_header #keyvsl .inner_kv p.catch {
  margin: 0;
  font-size: 1.6rem;
  line-height: 1.4;
  letter-spacing: 0.2rem;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  color: #fff;
  text-align: center;
  text-shadow: 0 0 1px #999, 0 0 2px #999, 0 0 4px #999, 0 0 8px #999, 0 0 16px #999;
}
.bg_header #keyvsl .inner_kv .box_circle {
  display: none;
  position: absolute;
  width: 17rem;
  height: auto;
  bottom: 0.8rem;
  right: 1rem;
}
.bg_header #keyvsl .inner_kv .box_circle .open, .bg_header #keyvsl .inner_kv .box_circle .event {
  border-radius: 50%;
  position: absolute;
  text-align: center;
}
.bg_header #keyvsl .inner_kv .box_circle .event {
  display: none;
  background: rgba(94, 211, 203, 0.8);
  bottom: 0;
  left: 0;
  color: #fff;
  z-index: 5;
  width: 8.8rem;
  height: 8.8rem;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-size: 1.2rem;
  padding: 1.4rem 0 0 0;
}
.bg_header #keyvsl .inner_kv .box_circle .event span {
  font-size: 1rem;
}
.bg_header #keyvsl .inner_kv .box_circle .event span.fs24 {
  font-size: 1.3rem;
}
.bg_header #keyvsl .inner_kv .box_circle .open {
  background: rgba(30, 194, 183, 0.8);
  bottom: 0;
  right: 0;
  color: #fff;
  width: 9rem;
  height: 9rem;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-size: 1.4rem;
  line-height: 1.4;
  padding: 1.2rem 0 0 0;
}

@media screen and (min-width: 48em), print {
  .bg_header {
    background: url("../img/bg_wave.png") repeat-x center top 30rem;
  }
  .bg_header #keyvsl {
    background: url(../img/index_keyvsl01.png) no-repeat right top/auto;
    overflow: hidden;
    width: 1200px;
    height: 72rem;
    margin: 0 auto;
    overflow: inherit;
  }
  .bg_header #keyvsl .inner_kv {
    width: 100%;
    margin: 0;
    padding: 0;
    position: relative;
  }
  .bg_header #keyvsl .inner_kv p.catch {
    font-size: 3.6rem;
    line-height: 1.7;
    letter-spacing: 0.5rem;
    margin: 0;
    position: absolute;
    top: 48rem;
    left: 0;
    text-align: left;
    text-shadow: 0 0 1px #999, 0 0 6px #999, 0 0 12px #999, 0 0 18px #999, 0 0 24px #999;
  }
  .bg_header #keyvsl .inner_kv .box_circle {
    width: 50rem;
    height: 28rem;
    bottom: -4rem;
    right: 2rem;
  }
  .bg_header #keyvsl .inner_kv .box_circle .event {
    width: 24rem;
    height: 24rem;
    font-size: 3rem;
    line-height: 1.4;
    padding: 3rem 0 0 0;
    letter-spacing: 0.3rem;
  }
  .bg_header #keyvsl .inner_kv .box_circle .event span {
    font-size: 2.4rem;
    letter-spacing: 0;
  }
  .bg_header #keyvsl .inner_kv .box_circle .event span.fs24 {
    font-size: 2.8rem;
  }
  .bg_header #keyvsl .inner_kv .box_circle .open {
    width: 28rem;
    height: 28rem;
    font-size: 3.6rem;
    line-height: 1.6;
    padding: 5.2rem 0 0 0;
    letter-spacing: 0.3rem;
  }
}
.info {
  margin: 0;
  padding: 8rem 1rem 3rem;
  background: url("../img/bg_wave.png") no-repeat center top -4rem/cover, #F7F7F7;
}
.info .info_wrapper .tit_02_info {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  color: #575757;
  font-size: 2.2rem;
  margin: 0;
}
.info .info_wrapper .tit_02_info span {
  color: #1EC2B7;
  font-size: 1.2rem;
  margin: 0 0 0 0.8rem;
}
.info .info_wrapper dl {
  margin: 1rem auto 0;
  line-height: 1.4;
  background: #fff;
  border-radius: 2rem;
  padding: 2rem 1rem;
}
.info .info_wrapper dl dt {
  font-size: 1.4rem;
  padding: 0;
  color: #1EC2B7;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  margin: 0 0 0.8rem;
  word-break: break-all;
}
.info .info_wrapper dl dt .tit::before {
  font-family: fontello;
  font-weight: normal;
  margin: 0 0.6rem 0 0;
  font-size: 1.1rem;
  display: inline-block;
  text-align: center;
  vertical-align: 0.1rem;
}
.info .info_wrapper dl dt:not(.close) .tit::before {
  content: "\f004";
}
.info .info_wrapper dl dt.close .tit::before {
  content: "\f005";
}
.info .info_wrapper dl dd {
  font-size: 1.4rem;
  padding: 0 1rem 1rem;
  margin: 0 0 0.6rem;
  word-break: break-all;
}
.info .info_wrapper dl dd .link_text {
  display: block;
  color: #F0FBFA;
  margin: 0.6rem 0 0 0;
  text-decoration: underline;
}

@media screen and (min-width: 48em), print {
  .info {
    margin: 0;
    width: 100%;
    padding: 6rem 0;
    background: url("../img/bg_wave.png"), #F7F7F7;
    background-repeat: no-repeat;
    background-position: center bottom;
  }
  .info .info_wrapper {
    width: 1200px;
    margin: 0 auto;
  }
  .info .info_wrapper .tit_02_info {
    font-size: 4.8rem;
    letter-spacing: 0.4rem;
  }
  .info .info_wrapper .tit_02_info span {
    font-size: 1.8rem;
    margin: 0 0 0 2rem;
    letter-spacing: 0.1rem;
  }
  .info .info_wrapper dl {
    width: 100%;
    min-height: 40rem;
    margin: 3rem 0 0 0;
    padding: 6rem 6rem 3.2rem 6rem;
  }
  .info .info_wrapper dl dt {
    font-size: 2rem;
    margin: 0 0 1.2rem;
    padding: 0;
  }
  .info .info_wrapper dl dt .tit::before {
    font-size: 1.4rem;
    margin: 0 1rem 0 0;
  }
  .info .info_wrapper dl dt:not(.close)::before {
    padding: 0.3rem 0 0 0;
  }
  .info .info_wrapper dl dd {
    font-size: 1.8rem;
    padding: 0 0 2.9rem;
    margin: 0 auto 0.8rem 0;
  }
}
.tre {
  margin-top: 0 !important;
  margin: 0;
  padding: 0 1rem;
}
.tre .inner ul, .tre .std .inner3 ul, .std .tre .inner3 ul, .tre .inner2 ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0 auto 2rem;
}
.tre .inner ul li, .tre .std .inner3 ul li, .std .tre .inner3 ul li, .tre .inner2 ul li {
  text-align: center;
  border-radius: 2rem;
  background: #fff;
  width: 13rem;
  height: 13rem;
  margin: 0 0 1.4rem;
  -webkit-box-shadow: 0 0 0.8rem #eee;
          box-shadow: 0 0 0.8rem #eee;
}
.tre .inner ul li:nth-child(4), .tre .std .inner3 ul li:nth-child(4), .std .tre .inner3 ul li:nth-child(4), .tre .inner2 ul li:nth-child(4) {
  display: none;
}
.tre .inner ul li a, .tre .std .inner3 ul li a, .std .tre .inner3 ul li a, .tre .inner2 ul li a {
  display: block;
  width: 100%;
  height: 100%;
  text-decoration: none !important;
  font-family: "Zen Maru Gothic", sans-serif;
  color: #333;
  padding: 1.5rem 0 0 0;
}
.tre .inner ul li a span, .tre .std .inner3 ul li a span, .std .tre .inner3 ul li a span, .tre .inner2 ul li a span {
  position: relative;
  display: block;
  margin: 1.5rem 0 0 0;
}
.tre .inner ul li a span::after, .tre .std .inner3 ul li a span::after, .std .tre .inner3 ul li a span::after, .tre .inner2 ul li a span::after {
  font-family: fontello;
  content: "\f006";
  color: #1EC2B7;
  font-weight: normal;
  position: absolute;
  right: 1rem;
  bottom: -0.2rem;
}
.tre .inner ul li a::before, .tre .std .inner3 ul li a::before, .std .tre .inner3 ul li a::before, .tre .inner2 ul li a::before {
  display: block;
  content: "";
  height: 6rem;
  margin: 0 auto;
}
.tre .inner ul li a.general::before, .tre .std .inner3 ul li a.general::before, .std .tre .inner3 ul li a.general::before, .tre .inner2 ul li a.general::before {
  background: url("../img/menu_general.svg") no-repeat center center/contain;
}
.tre .inner ul li a.internal::before, .tre .std .inner3 ul li a.internal::before, .std .tre .inner3 ul li a.internal::before, .tre .inner2 ul li a.internal::before {
  background: url("../img/menu_internal.svg") no-repeat center center/contain;
}
.tre .inner ul li a.ortho::before, .tre .std .inner3 ul li a.ortho::before, .std .tre .inner3 ul li a.ortho::before, .tre .inner2 ul li a.ortho::before {
  background: url("../img/menu_ortho.svg") no-repeat center center/contain;
}
.tre .inner ul li a.infection::before, .tre .std .inner3 ul li a.infection::before, .std .tre .inner3 ul li a.infection::before, .tre .inner2 ul li a.infection::before {
  background: url("../img/menu_infection.svg") no-repeat center center/contain;
}
.tre .inner ul li a.urology::before, .tre .std .inner3 ul li a.urology::before, .std .tre .inner3 ul li a.urology::before, .tre .inner2 ul li a.urology::before {
  background: url("../img/menu_urology.svg") no-repeat center center/contain;
}
.tre .inner ul li a.venerealdisease::before, .tre .std .inner3 ul li a.venerealdisease::before, .std .tre .inner3 ul li a.venerealdisease::before, .tre .inner2 ul li a.venerealdisease::before {
  background: url("../img/menu_venerealdisease.svg") no-repeat center center/contain;
}
.tre .inner2 {
  background: #F0FBFA;
  border-radius: 1rem;
  padding: 6rem 0 2rem;
  margin: -5.5rem 0 0 0;
}
.tre .inner2 ul {
  margin: 0 auto 2rem;
}
.tre .inner2 ul li {
  -webkit-box-shadow: none;
          box-shadow: none;
  border: 0.3rem #BEEDEA solid;
}
.tre .inner2 ul li a.sas span, .tre .inner2 ul li a.visit span, .tre .inner2 ul li a.travel span {
  line-height: 1.1;
  margin: 1.4rem 0 0 0;
}
.tre .inner2 ul li a.sas span::after, .tre .inner2 ul li a.visit span::after, .tre .inner2 ul li a.travel span::after {
  bottom: 0.5rem;
}
.tre .inner2 ul li a.diabetes::before {
  background: url("../img/menu_diabetes.svg") no-repeat center center/contain;
}
.tre .inner2 ul li a.high_blood_pressure::before {
  background: url("../img/menu_high_blood_pressure.svg") no-repeat center center/contain;
}
.tre .inner2 ul li a.lipid_disorder::before {
  background: url("../img/menu_lipid_disorder.svg") no-repeat center center/contain;
}
.tre .inner2 ul li a.gout::before {
  background: url("../img/menu_gout.svg") no-repeat center center/contain;
}
.tre .inner2 ul li a.sas::before {
  background: url("../img/menu_sas.svg") no-repeat center center/contain;
}
.tre .inner2 ul li a.private::before {
  background: url("../img/menu_private.svg") no-repeat center center/contain;
}
.tre .inner2 ul li a.vaccination::before {
  background: url("../img/menu_vaccination.svg") no-repeat center center/contain;
}
.tre .inner2 ul li a.visit::before {
  background: url("../img/menu_visit.svg") no-repeat center center/contain;
}
.tre .inner2 ul li a.travel::before {
  background: url("../img/menu_travel.svg") no-repeat center center/contain;
}
.tre .inner2 .btn_wrapper .btn_link {
  height: 4rem;
  margin: 0 auto 1rem;
}

@media screen and (min-width: 48em), print {
  .tre {
    margin: 8rem auto 12rem;
    width: 1200px;
    padding: 6rem 0 0 0;
  }
  .tre .inner ul, .tre .std .inner3 ul, .std .tre .inner3 ul, .tre .inner2 ul {
    margin: 5rem auto;
    width: 90rem; /*3列2段の時*/
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-gap: 3.5rem;
    gap: 3.5rem;
  }
  .tre .inner ul li, .tre .std .inner3 ul li, .std .tre .inner3 ul li, .tre .inner2 ul li {
    width: 21.6rem;
    height: 21.6rem;
    margin: 0 0; /*0 0 3rem*/
    -webkit-box-shadow: 0 0 3rem #eee;
            box-shadow: 0 0 3rem #eee;
  }
  .tre .inner ul li a, .tre .std .inner3 ul li a, .std .tre .inner3 ul li a, .tre .inner2 ul li a {
    font-size: 2.4rem;
    padding: 2.5rem 0 0 0;
  }
  .tre .inner ul li a span, .tre .std .inner3 ul li a span, .std .tre .inner3 ul li a span, .tre .inner2 ul li a span {
    margin: 2.5rem 0 0 0;
  }
  .tre .inner ul li a span::after, .tre .std .inner3 ul li a span::after, .std .tre .inner3 ul li a span::after, .tre .inner2 ul li a span::after {
    right: 2rem;
  }
  .tre .inner ul li a::before, .tre .std .inner3 ul li a::before, .std .tre .inner3 ul li a::before, .tre .inner2 ul li a::before {
    width: 8.24rem;
    height: 10.2rem;
    margin: 0 auto;
  }
  .tre .inner ul li.nav2 a::before, .tre .std .inner3 ul li.nav2 a::before, .std .tre .inner3 ul li.nav2 a::before, .tre .inner2 ul li.nav2 a::before {
    width: 9.978rem;
  }
  .tre .inner ul li.nav3 a::before, .tre .std .inner3 ul li.nav3 a::before, .std .tre .inner3 ul li.nav3 a::before, .tre .inner2 ul li.nav3 a::before {
    width: 11.2rem;
  }
  .tre .inner ul li.nav4 a::before, .tre .std .inner3 ul li.nav4 a::before, .std .tre .inner3 ul li.nav4 a::before, .tre .inner2 ul li.nav4 a::before {
    width: 8.182rem;
  }
  .tre .inner2 {
    padding: 11rem 0 6rem;
    margin: -9rem 0 0 0;
    border-radius: 3rem;
  }
  .tre .inner2 ul {
    width: 115.4rem;
    margin: 0 auto;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .tre .inner2 ul li {
    margin: 0 3rem 4rem 0;
    border: 0.6rem #BEEDEA solid;
  }
  .tre .inner2 ul li:nth-child(4n) {
    margin: 0 0 4rem;
  }
  .tre .inner2 ul li a.sas span::after, .tre .inner2 ul li a.visit span::after {
    bottom: 1rem;
  }
  .tre .inner2 .btn_wrapper {
    width: 108rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin: 1rem auto 0;
  }
  .tre .inner2 .btn_wrapper .btn_link {
    width: 51rem;
    height: 10rem;
    margin: 0;
  }
}
.consultation {
  margin-bottom: 8rem;
  padding: 0 1rem;
}
@media screen and (min-width: 48em), print {
  .consultation {
    width: 1200px;
    margin: 8rem auto 20rem;
  }
}
.consultation .tab-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 2rem 0 0;
}
@media screen and (min-width: 48em), print {
  .consultation .tab-wrap {
    margin: 3rem 0 0;
  }
}
.consultation .tab-wrap::after {
  content: "";
  width: 100%;
  height: 3px;
  background: #5ED3CB;
  display: block;
  -webkit-box-ordinal-group: 0;
      -ms-flex-order: -1;
          order: -1;
}
.consultation .tab-wrap .tab-label {
  color: White;
  background: #CCCCCC;
  font-weight: bold;
  white-space: nowrap;
  text-align: center;
  padding: 1rem 0;
  -webkit-box-ordinal-group: 0;
      -ms-flex-order: -1;
          order: -1;
  position: relative;
  z-index: 1;
  cursor: pointer;
  border-radius: 1rem 1rem 0 0;
}
@media screen and (min-width: 48em), print {
  .consultation .tab-wrap .tab-label {
    border-radius: 2rem 2rem 0 0;
    font-size: 2.2rem;
  }
}
.consultation .tab-wrap .tab-label {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.consultation .tab-wrap .tab-label:not(:last-of-type) {
  margin-right: 0.5rem;
}
@media screen and (min-width: 48em), print {
  .consultation .tab-wrap .tab-label:not(:last-of-type) {
    margin-right: 1rem;
  }
}
.consultation .tab-wrap .tab-content {
  width: 100%;
  height: 0;
  overflow: hidden;
  opacity: 0;
  border-radius: 0 0 1rem 1rem;
}
@media screen and (min-width: 48em), print {
  .consultation .tab-wrap .tab-content {
    border-radius: 0 0 2rem 2rem;
  }
}
.consultation .tab-wrap .tab-switch {
  /* アクティブなタブ */
}
.consultation .tab-wrap .tab-switch:checked + .tab-label {
  background: #5ED3CB;
}
.consultation .tab-wrap .tab-switch:checked + .tab-label + .tab-content {
  height: auto;
  overflow: auto;
  padding: 2rem 1.5rem;
  opacity: 1;
  -webkit-transition: 0.5s opacity;
  transition: 0.5s opacity;
  -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 3px rgba(0, 0, 0, 0.2);
}
@media screen and (min-width: 48em), print {
  .consultation .tab-wrap .tab-switch:checked + .tab-label + .tab-content {
    padding: 2.5rem 2rem;
  }
}
.consultation .tab-wrap .tab-switch {
  /* ラジオボタン非表示 */
  display: none;
}

.std {
  margin: 0;
  padding: 0 1rem 8rem 1rem;
}
.std .inner ul, .std .inner3 ul, .std .inner2 ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0 auto 2rem;
}
.std .inner ul li, .std .inner3 ul li, .std .inner2 ul li {
  text-align: center;
  border-radius: 1rem;
  background: #fff;
  width: 14rem;
  height: auto;
  margin: 0 0 1.4rem;
  -webkit-box-shadow: 0 0 0.8rem #eee;
          box-shadow: 0 0 0.8rem #eee;
}
.std .inner ul li a, .std .inner3 ul li a, .std .inner2 ul li a {
  display: block;
  width: 100%;
  height: 100%;
  text-decoration: none !important;
  font-family: "Zen Maru Gothic", sans-serif;
  color: #333;
  padding: 1rem 0;
}
.std .inner ul li a span, .std .inner3 ul li a span, .std .inner2 ul li a span {
  position: relative;
  display: block;
  margin: 0;
}
.std .inner2 {
  padding: 6rem 0 2rem;
  margin: -5.5rem 0 0 0;
}
.std .inner2 ul {
  margin: 0 auto 2rem;
}
.std .inner2 ul li {
  -webkit-box-shadow: none;
          box-shadow: none;
  border: 0.3rem #BEEDEA solid;
  background: #F0FBFA;
}
.std .inner2 .btn_wrapper .btn_link {
  height: 4rem;
  margin: 0 auto 1rem;
}
.std .inner3 {
  padding: 6rem 0 2rem;
  margin: -5.5rem 0 0 0;
}
.std .inner3 ul {
  margin: 0 auto 0;
}
.std .inner3 ul li {
  width: 100%;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  -webkit-box-shadow: none;
          box-shadow: none;
  border: 0.3rem #BEEDEA solid;
  background: #F0FBFA;
  padding: 0.5rem;
}
.std .inner3 ul li span {
  font-size: 1.4rem;
  font-family: "Zen Maru Gothic", sans-serif;
  text-align: center;
  vertical-align: 0.1rem;
}
.std .inner3 ul li span::before {
  color: #1EC2B7;
  margin: 0 0.6rem 0 0;
  display: inline-block;
  font-family: fontello;
  content: "\e808";
}
.std .inner3 ul li span.active::before {
  content: "\e809";
}
.std .inner3 ul li > div {
  text-align: left;
  padding: 1rem 0 0;
}
.std .inner3 ul li > div a {
  display: inline;
  padding: 0;
}
.std .inner3 .btn_wrapper .btn_link {
  height: 4rem;
  margin: 0 auto 1rem;
}

@media screen and (min-width: 48em), print {
  .std {
    margin: 8rem auto 12rem;
    width: 1200px;
    padding: 6rem 0 0 0;
  }
  .std .inner ul, .std .inner2 ul, .std .inner3 ul {
    margin: 5rem auto;
    width: 95.4rem;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .std .inner ul li, .std .inner2 ul li, .std .inner3 ul li {
    width: 21.6rem;
    height: auto;
    margin: 0;
    -webkit-box-shadow: 0 0 3rem #eee;
            box-shadow: 0 0 3rem #eee;
  }
  .std .inner ul li a, .std .inner2 ul li a, .std .inner3 ul li a {
    font-size: 2rem;
    padding: 1.5rem 0;
  }
  .std .inner ul li a span, .std .inner2 ul li a span, .std .inner3 ul li a span {
    margin: 0 auto;
  }
  .std .inner ul li a::before, .std .inner2 ul li a::before, .std .inner3 ul li a::before {
    width: 8.24rem;
    height: 10.2rem;
    margin: 0 auto;
  }
  .std .inner2 {
    padding: 11rem 0 6rem;
    margin: -9rem 0 0 0;
    border-radius: 3rem;
  }
  .std .inner2 ul {
    margin: 0 auto;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .std .inner2 ul li {
    border-radius: 2rem;
    margin: 0 3rem 4rem 0;
    border: 0.6rem #BEEDEA solid;
  }
  .std .inner2 ul li:nth-child(4n) {
    margin: 0 0 4rem;
  }
  .std .inner2 .btn_wrapper {
    width: 108rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin: 1rem auto 0;
  }
  .std .inner2 .btn_wrapper .btn_link {
    width: 51rem;
    height: 10rem;
    margin: 0;
  }
  .std .inner3 {
    padding: 11rem 0 6rem;
    margin: -9rem 0 0 0;
    border-radius: 3rem;
  }
  .std .inner3 ul {
    margin: 0 auto;
    width: 48%;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .std .inner3 ul li {
    width: 100%;
    border-radius: 2rem;
    margin: 0 0 4rem 0;
    padding: 1rem;
    border: 0.6rem #BEEDEA solid;
  }
  .std .inner3 ul li span {
    font-size: 2rem;
  }
  .std .inner3 ul li span::before {
    margin: 0 0.8rem 0 0;
  }
  .std .inner3 ul li > div {
    padding: 1.2rem 0 0;
  }
  .std .inner3 ul li > div a {
    font-size: 1.8rem;
  }
}
.sastop {
  margin: -8rem 0 0 0 !important;
  padding: 0;
  background: #F0FBFA;
}
.sastop .cont {
  padding: 4rem 0;
  margin: -2.6rem 0 0 0;
}
.sastop .cont .inner, .sastop .cont .tre .inner2, .tre .sastop .cont .inner2, .sastop .cont .std .inner2, .std .sastop .cont .inner2, .sastop .cont .std .inner3, .std .sastop .cont .inner3 {
  padding: 0 1rem;
}
.sastop .cont .inner .flexSas li, .sastop .cont .tre .inner2 .flexSas li, .tre .sastop .cont .inner2 .flexSas li, .sastop .cont .std .inner2 .flexSas li, .std .sastop .cont .inner2 .flexSas li, .sastop .cont .std .inner3 .flexSas li, .std .sastop .cont .inner3 .flexSas li {
  background: #fff;
  border-radius: 1rem;
  padding: 2rem;
  width: 80%;
  margin: 0 auto;
}
.sastop .cont .inner .flexSas li:not(:last-child), .sastop .cont .tre .inner2 .flexSas li:not(:last-child), .tre .sastop .cont .inner2 .flexSas li:not(:last-child), .sastop .cont .std .inner2 .flexSas li:not(:last-child), .std .sastop .cont .inner2 .flexSas li:not(:last-child), .sastop .cont .std .inner3 .flexSas li:not(:last-child), .std .sastop .cont .inner3 .flexSas li:not(:last-child) {
  margin: 0 auto 2rem;
}
.sastop .cont .inner .flexSas li .step, .sastop .cont .tre .inner2 .flexSas li .step, .tre .sastop .cont .inner2 .flexSas li .step, .sastop .cont .std .inner2 .flexSas li .step, .std .sastop .cont .inner2 .flexSas li .step, .sastop .cont .std .inner3 .flexSas li .step, .std .sastop .cont .inner3 .flexSas li .step {
  margin: 0 auto;
  border-radius: 50%;
  background: #1EC2B7;
  font-family: "Zen Maru Gothic", sans-serif;
  color: #fff;
  font-weight: 700;
  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-line-pack: center;
      align-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  text-align: center;
  line-height: 1;
  width: 6rem;
  height: 6rem;
  font-size: 1.4rem;
}
.sastop .cont .inner .flexSas li .step span, .sastop .cont .tre .inner2 .flexSas li .step span, .tre .sastop .cont .inner2 .flexSas li .step span, .sastop .cont .std .inner2 .flexSas li .step span, .std .sastop .cont .inner2 .flexSas li .step span, .sastop .cont .std .inner3 .flexSas li .step span, .std .sastop .cont .inner3 .flexSas li .step span {
  width: 100%;
  font-size: 3rem;
}
.sastop .cont .inner .flexSas li img, .sastop .cont .tre .inner2 .flexSas li img, .tre .sastop .cont .inner2 .flexSas li img, .sastop .cont .std .inner2 .flexSas li img, .std .sastop .cont .inner2 .flexSas li img, .sastop .cont .std .inner3 .flexSas li img, .std .sastop .cont .inner3 .flexSas li img {
  margin: 2rem auto 0;
  display: block;
  width: 50%;
}
.sastop .cont .inner .flexSas li p, .sastop .cont .tre .inner2 .flexSas li p, .tre .sastop .cont .inner2 .flexSas li p, .sastop .cont .std .inner2 .flexSas li p, .std .sastop .cont .inner2 .flexSas li p, .sastop .cont .std .inner3 .flexSas li p, .std .sastop .cont .inner3 .flexSas li p {
  margin: 0;
}
.sastop .cont .inner .flexSas li p.tit, .sastop .cont .tre .inner2 .flexSas li p.tit, .tre .sastop .cont .inner2 .flexSas li p.tit, .sastop .cont .std .inner2 .flexSas li p.tit, .std .sastop .cont .inner2 .flexSas li p.tit, .sastop .cont .std .inner3 .flexSas li p.tit, .std .sastop .cont .inner3 .flexSas li p.tit {
  color: #1EC2B7;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  text-align: center;
  line-height: 1.3;
  font-size: 1.8rem;
  margin: 1.4rem 0;
}
.sastop .cont .inner .flexSas li p.txt, .sastop .cont .tre .inner2 .flexSas li p.txt, .tre .sastop .cont .inner2 .flexSas li p.txt, .sastop .cont .std .inner2 .flexSas li p.txt, .std .sastop .cont .inner2 .flexSas li p.txt, .sastop .cont .std .inner3 .flexSas li p.txt, .std .sastop .cont .inner3 .flexSas li p.txt {
  font-size: 1.4rem;
}
.sastop .cont .inner .btn_link, .sastop .cont .tre .inner2 .btn_link, .tre .sastop .cont .inner2 .btn_link, .sastop .cont .std .inner2 .btn_link, .std .sastop .cont .inner2 .btn_link, .sastop .cont .std .inner3 .btn_link, .std .sastop .cont .inner3 .btn_link {
  height: 4rem;
}
.sastop .cont .inner .btn_link::after, .sastop .cont .tre .inner2 .btn_link::after, .tre .sastop .cont .inner2 .btn_link::after, .sastop .cont .std .inner2 .btn_link::after, .std .sastop .cont .inner2 .btn_link::after, .sastop .cont .std .inner3 .btn_link::after, .std .sastop .cont .inner3 .btn_link::after {
  top: 1.6rem;
}

@media screen and (min-width: 48em), print {
  .sastop {
    margin: 0 !important;
    padding: 0 0 15rem;
    width: 100%;
  }
  .sastop .cont {
    width: 100%;
  }
  .sastop .cont {
    padding: 8rem 0 0 0;
    margin: 0;
  }
  .sastop .cont .inner, .sastop .cont .tre .inner2, .tre .sastop .cont .inner2, .sastop .cont .std .inner2, .std .sastop .cont .inner2, .sastop .cont .std .inner3, .std .sastop .cont .inner3 {
    width: 1200px;
    margin: 0 auto;
    padding: 0;
  }
  .sastop .cont .inner .flexSas, .sastop .cont .tre .inner2 .flexSas, .tre .sastop .cont .inner2 .flexSas, .sastop .cont .std .inner2 .flexSas, .std .sastop .cont .inner2 .flexSas, .sastop .cont .std .inner3 .flexSas, .std .sastop .cont .inner3 .flexSas {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin: 3rem 0 0 0;
    width: 100%;
  }
  .sastop .cont .inner .flexSas li, .sastop .cont .tre .inner2 .flexSas li, .tre .sastop .cont .inner2 .flexSas li, .sastop .cont .std .inner2 .flexSas li, .std .sastop .cont .inner2 .flexSas li, .sastop .cont .std .inner3 .flexSas li, .std .sastop .cont .inner3 .flexSas li {
    width: 28.8rem;
    height: 58rem;
    padding: 2rem 3rem 0;
    margin: 0 !important;
  }
  .sastop .cont .inner .flexSas li .step, .sastop .cont .tre .inner2 .flexSas li .step, .tre .sastop .cont .inner2 .flexSas li .step, .sastop .cont .std .inner2 .flexSas li .step, .std .sastop .cont .inner2 .flexSas li .step, .sastop .cont .std .inner3 .flexSas li .step, .std .sastop .cont .inner3 .flexSas li .step {
    width: 8rem;
    height: 8rem;
    font-size: 1.8rem;
  }
  .sastop .cont .inner .flexSas li .step span, .sastop .cont .tre .inner2 .flexSas li .step span, .tre .sastop .cont .inner2 .flexSas li .step span, .sastop .cont .std .inner2 .flexSas li .step span, .std .sastop .cont .inner2 .flexSas li .step span, .sastop .cont .std .inner3 .flexSas li .step span, .std .sastop .cont .inner3 .flexSas li .step span {
    font-size: 4rem;
  }
  .sastop .cont .inner .flexSas li img, .sastop .cont .tre .inner2 .flexSas li img, .tre .sastop .cont .inner2 .flexSas li img, .sastop .cont .std .inner2 .flexSas li img, .std .sastop .cont .inner2 .flexSas li img, .sastop .cont .std .inner3 .flexSas li img, .std .sastop .cont .inner3 .flexSas li img {
    margin: 3.4rem auto 0;
    min-height: 13.4rem;
    width: auto;
  }
  .sastop .cont .inner .flexSas li p.tit, .sastop .cont .tre .inner2 .flexSas li p.tit, .tre .sastop .cont .inner2 .flexSas li p.tit, .sastop .cont .std .inner2 .flexSas li p.tit, .std .sastop .cont .inner2 .flexSas li p.tit, .sastop .cont .std .inner3 .flexSas li p.tit, .std .sastop .cont .inner3 .flexSas li p.tit {
    font-size: 2.4rem;
    height: 8.1rem;
    margin: 2rem 0 0 0;
  }
  .sastop .cont .inner .flexSas li p.txt, .sastop .cont .tre .inner2 .flexSas li p.txt, .tre .sastop .cont .inner2 .flexSas li p.txt, .sastop .cont .std .inner2 .flexSas li p.txt, .std .sastop .cont .inner2 .flexSas li p.txt, .sastop .cont .std .inner3 .flexSas li p.txt, .std .sastop .cont .inner3 .flexSas li p.txt {
    font-size: 1.8rem;
  }
  .sastop .cont .inner .btn_link, .sastop .cont .tre .inner2 .btn_link, .tre .sastop .cont .inner2 .btn_link, .sastop .cont .std .inner2 .btn_link, .std .sastop .cont .inner2 .btn_link, .sastop .cont .std .inner3 .btn_link, .std .sastop .cont .inner3 .btn_link {
    width: 42rem;
    height: 4rem;
  }
  .sastop .cont .inner .btn_link::after, .sastop .cont .tre .inner2 .btn_link::after, .tre .sastop .cont .inner2 .btn_link::after, .sastop .cont .std .inner2 .btn_link::after, .std .sastop .cont .inner2 .btn_link::after, .sastop .cont .std .inner3 .btn_link::after, .std .sastop .cont .inner3 .btn_link::after {
    top: 1.8rem;
  }
}
.about {
  margin: -5rem 0 0 0 !important;
  padding: 0;
}
.about figure {
  margin: 0;
}
.about .cont {
  background: url("../img/bg_about.png") no-repeat center top -4rem/cover;
  padding: 6rem 0 13rem;
  margin: -2.6rem 0 0 0;
}
.about .cont .inner, .about .cont .tre .inner2, .tre .about .cont .inner2, .about .cont .std .inner2, .std .about .cont .inner2, .about .cont .std .inner3, .std .about .cont .inner3 {
  padding: 0 1rem;
}
.about .cont .inner .tit_02, .about .cont .tre .inner2 .tit_02, .tre .about .cont .inner2 .tit_02, .about .cont .std .inner2 .tit_02, .std .about .cont .inner2 .tit_02, .about .cont .std .inner3 .tit_02, .std .about .cont .inner3 .tit_02 {
  color: #fff;
}
.about .cont .inner .tit_02 span, .about .cont .tre .inner2 .tit_02 span, .tre .about .cont .inner2 .tit_02 span, .about .cont .std .inner2 .tit_02 span, .std .about .cont .inner2 .tit_02 span, .about .cont .std .inner3 .tit_02 span, .std .about .cont .inner3 .tit_02 span {
  color: #fff;
}
.about .cont .inner p, .about .cont .tre .inner2 p, .tre .about .cont .inner2 p, .about .cont .std .inner2 p, .std .about .cont .inner2 p, .about .cont .std .inner3 p, .std .about .cont .inner3 p {
  margin: 0;
  color: #fff;
}
.about .cont .inner .btn_link, .about .cont .tre .inner2 .btn_link, .tre .about .cont .inner2 .btn_link, .about .cont .std .inner2 .btn_link, .std .about .cont .inner2 .btn_link, .about .cont .std .inner3 .btn_link, .std .about .cont .inner3 .btn_link {
  height: 4rem;
  border-radius: 3rem;
  background: #fff;
  color: #1EC2B7;
  margin: 2rem auto 0;
  font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}

@media screen and (min-width: 48em), print {
  .about {
    margin: -10rem 0 0 0 !important;
    padding: 0;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .about figure, .about .cont {
    width: 50%;
    height: 73.9rem;
  }
  .about figure img {
    height: 100%;
    margin: 0 0 0 auto;
    display: block;
  }
  .about .cont {
    padding: 14rem 0 0 0;
    margin: 0;
    background: url("../img/bg_about.png") no-repeat left top/auto;
  }
  .about .cont .inner, .about .cont .tre .inner2, .tre .about .cont .inner2, .about .cont .std .inner2, .std .about .cont .inner2, .about .cont .std .inner3, .std .about .cont .inner3 {
    width: 54rem;
    margin: 0 0 0 6rem;
    padding: 0;
  }
  .about .cont .inner p, .about .cont .tre .inner2 p, .tre .about .cont .inner2 p, .about .cont .std .inner2 p, .std .about .cont .inner2 p, .about .cont .std .inner3 p, .std .about .cont .inner3 p {
    margin: 5rem 0 0 0;
  }
  .about .cont .inner .btn_link, .about .cont .tre .inner2 .btn_link, .tre .about .cont .inner2 .btn_link, .about .cont .std .inner2 .btn_link, .std .about .cont .inner2 .btn_link, .about .cont .std .inner3 .btn_link, .std .about .cont .inner3 .btn_link {
    width: 28rem;
    height: 6rem;
    margin: 4.4rem auto 0;
    font-size: 1.8rem;
  }
  .about .cont .inner .btn_link::after, .about .cont .tre .inner2 .btn_link::after, .tre .about .cont .inner2 .btn_link::after, .about .cont .std .inner2 .btn_link::after, .std .about .cont .inner2 .btn_link::after, .about .cont .std .inner3 .btn_link::after, .std .about .cont .inner3 .btn_link::after {
    top: 2.5rem;
  }
}
.feature {
  margin: 0 !important;
  padding: 0 0 2rem;
}
.feature ul {
  padding: 0 1rem;
}
.feature ul li {
  margin: 0 0 2rem;
  position: relative;
}
.feature ul li img {
  width: 100%;
}
.feature ul li p {
  margin: 0;
}
.feature ul li p.tit {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  text-align: center;
  font-size: 1.6rem;
  margin: -1rem 0 1rem;
}
.feature ul li p.num {
  position: absolute;
  top: 1.4rem;
  left: 2.4rem;
  color: #1EC2B7;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  line-height: 1;
  font-size: 1.4rem;
}
.feature ul li p.num span {
  display: block;
  font-size: 3.4rem;
}
.feature ul li .btn_link {
  font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
  height: 4rem;
  margin: 1rem auto 0;
  border-radius: 3rem;
}
.feature ul.flex2 {
  text-align: center;
}
.feature ul.flex2 li {
  padding: 0;
  margin: 0 0 2rem;
}
.feature ul.flex2 li a img {
  width: 70%;
}

@media screen and (min-width: 48em), print {
  .feature {
    margin: 5rem 0 0 0 !important;
    padding: 0;
    width: 100%;
    overflow: hidden;
  }
  .feature ul {
    padding: 0;
    margin: 5rem auto 0;
    width: 1200px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .feature ul li {
    width: 33.3333333333%;
    height: auto;
    margin: 0 0 4.7rem;
    padding: 0 1.8rem;
  }
  .feature ul li p {
    letter-spacing: 0.1rem;
  }
  .feature ul li p.tit {
    font-size: 2.6rem;
    margin: -2rem 0 2rem;
  }
  .feature ul li p.num {
    font-size: 2.4rem;
    top: 2.4rem;
    left: 4.8rem;
  }
  .feature ul li p.num span {
    font-size: 6rem;
    margin: -0.6rem 0 0 0;
  }
  .feature ul li .btn_link {
    width: 28rem;
    height: 6rem;
    font-size: 1.8rem;
    margin: 3rem auto 0;
  }
  .feature ul li .btn_link::after {
    top: 2.5rem;
  }
  .feature ul li:nth-of-type(4), .feature ul li:last-of-type {
    margin: 0;
  }
  .feature ul.flex2 {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .feature ul.flex2 li {
    padding: 0;
    width: 25%;
  }
  .feature ul.flex2 li a img {
    width: 90%;
  }
  .feature ul.bnr_big {
    margin: 3rem auto;
  }
  .feature ul.bnr_big li {
    width: 45.4545454545%;
  }
}
/* _lower.scss　出力 */
body:not(.index) .header {
  padding: 2rem 0 0 0;
  background: url("../img/bg_wave.png") no-repeat center top 19rem/auto;
}
body:not(.index) .wrapper {
  padding: 0;
  background: #f7f7f7;
  background: -webkit-gradient(linear, left top, left bottom, from(#f7f7f7), to(#ffffff));
  background: linear-gradient(to bottom, #f7f7f7 0%, #ffffff 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f7f7f7', endColorstr='#ffffff',GradientType=0 );
}
body:not(.index) .main {
  width: 100%;
  padding: 0 1rem;
  margin: 2rem auto 0;
}
body:not(.index) .nfd {
  margin: 0;
  padding: 3rem 1rem;
}
@media screen and (min-width: 48em), print {
  body:not(.index) .header {
    padding: 0;
    background: url("../img/bg_wave.png") repeat-x center top 50rem/auto;
  }
  body:not(.index) .wrapper {
    padding: 0;
    display: block;
  }
  body:not(.index) .main {
    width: 1200px;
    margin: 4rem auto 0;
    padding: 0;
    line-height: 2;
  }
}
body:not(.index) .btn_link {
  width: 90%;
  margin: 0 auto 1.2rem;
  padding: 1.4rem 0;
}
@media screen and (min-width: 48em), print {
  body:not(.index) .btn_link {
    width: 100%;
    padding: 2rem 0;
    margin: 0 0 2rem;
  }
  body:not(.index) .btn_link::after {
    top: 2.2rem;
  }
}

.arrow {
  width: 0;
  height: 0;
  border-left: 6rem solid transparent;
  border-right: 6rem solid transparent;
  border-top: 3rem solid #00b9d5;
  text-align: center;
  display: block;
  margin: 3rem auto;
}

.block {
  display: block;
  font-weight: bold;
}

.flex_btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.flex_btn li {
  width: 100%;
}
@media screen and (min-width: 48em), print {
  .flex_btn li {
    width: auto;
  }
  .flex_btn li:first-child {
    margin: 0 1rem 0 0;
  }
}

.img_dr {
  max-width: 60%;
}

#greeting_book {
  margin: 0 auto;
  padding: 0 0 15%;
}

#greeting_book .book_in {
  margin: 0 auto;
  padding: 0;
}

#greeting_book .book_in .box {
  padding: 0;
}

#greeting_book .book_in .box.box89 {
  width: 100%;
  margin: 5% 0 0;
}

#greeting_book .book_in .box.box20 {
  width: 100%;
  margin: 3% 0 10%;
  text-align: center;
}

#greeting_book .book_in .box p {
  margin: 3% 0 0;
  padding: 0;
  font-size: 3.4vw;
  line-height: 170%;
  text-align: left;
}

#greeting_book .book_in .box p strong {
  color: #FF3F00;
}

#greeting_book .book_in .box dl {
  width: 100%;
  margin: 5% 0 0;
  padding: 0;
  font-size: 3.4vw;
  line-height: 170%;
  text-align: left;
  border-bottom: 1px solid #E3E3E3;
  overflow: hidden;
}

#greeting_book .book_in .box dl dt {
  width: 15%;
  margin: 0;
  padding: 1% 0 1% 3%;
  font-weight: bold;
  float: left;
}

#greeting_book .book_in .box dl dd {
  width: 100%;
  margin: 0;
  padding: 1% 0 1% 20%;
  border-top: 1px solid #E3E3E3;
}

#greeting_book .book_in .box .book_img {
  width: 100%;
  margin: 5% auto 0;
  padding: 0;
}

#greeting_book .book_in .box .book_img img {
  width: 50%;
  height: auto;
}

#greeting_book .book_in .box .book_btn {
  margin: 2% 0 0;
  padding: 0;
}

#greeting_book .book_in .box .book_btn a {
  display: inline-block;
  width: 60%;
  margin: 0 auto;
  padding: 2% 0 1.5%;
  font-size: 3.6vw;
  line-height: 140%;
  font-weight: bold;
  color: #0892CF;
  text-decoration: none;
  background: #fff;
  border: 2px solid #0892CF;
  border-radius: 5px;
  position: relative;
}

#greeting_book .book_in .box .book_btn a::before {
  position: absolute;
  content: "";
  display: block;
  width: 3.5%;
  height: 0;
  margin: auto;
  padding: 0 0 2.5%;
  border-top: 2px solid #0892CF;
  border-right: 2px solid #0892CF;
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
  left: 3%;
}

#greeting_book .book_in .box.box50 {
  width: 100%;
  margin: 5% 0 0;
}

#greeting_book .book_in .box .short_book {
  margin: 0;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

#greeting_book .book_in .box .short_book p {
  width: 72%;
}

#greeting_book .book_in .box .book_img_s {
  width: 23%;
  margin: 3% 0 0;
  padding: 0;
}

#greeting_book .book_in .box .book_img_s img {
  width: 100%;
  height: auto;
}

@media screen and (min-width: 48em), print {
  .img_dr {
    max-width: 23.3rem;
  }
  #greeting_book {
    margin: 0 auto;
    padding: 0 0 115px;
  }
  #greeting_book .book_in {
    margin: 0 auto;
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  #greeting_book .book_in .box {
    margin: 0 0 65px;
    padding: 0;
  }
  #greeting_book .book_in .box.box89 {
    width: 890px;
    text-align: left;
    margin: 3% 0 0;
  }
  #greeting_book .book_in .box.box20 {
    width: 200px;
    margin: 3% 0 0;
  }
  #greeting_book .book_in .box.box50 {
    width: 570px;
  }
  #greeting_book .book_in .box p {
    margin: 15px 0 0;
    padding: 0;
    font-size: 16px;
    line-height: 170%;
    text-align: left;
  }
  #greeting_book .book_in .box p strong {
    color: #FF3F00;
  }
  #greeting_book .book_in .box dl {
    width: 600px;
    margin: 25px 0 0;
    padding: 0;
    font-size: 15px;
    line-height: 170%;
    border-bottom: 1px solid #E3E3E3;
    overflow: hidden;
  }
  #greeting_book .book_in .box dl dt {
    width: 70px;
    margin: 0;
    padding: 5px 0 4px 20px;
    font-weight: bold;
    float: left;
  }
  #greeting_book .book_in .box dl dd {
    width: 100%;
    margin: 0;
    padding: 5px 0 4px 105px;
    border-top: 1px solid #E3E3E3;
  }
  #greeting_book .book_in .box .book_img {
    margin: 0;
    padding: 0;
  }
  #greeting_book .book_in .box .book_img img {
    width: 100%;
    height: auto;
  }
  #greeting_book .book_in .box .book_btn {
    margin: 10px 0 0;
    padding: 0;
  }
  #greeting_book .book_in .box .book_btn a {
    display: inline-block;
    width: 100%;
    margin: 0;
    padding: 10px 0 8px;
    font-size: 16px;
    line-height: 140%;
    font-weight: bold;
    color: #0892CF;
    text-decoration: none;
    text-align: center;
    background: #fff;
    border: 2px solid #0892CF;
    border-radius: 5px;
    position: relative;
    -webkit-transition: 0.2s linear;
    transition: 0.2s linear;
  }
  #greeting_book .book_in .box .book_btn a::before {
    position: absolute;
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    margin: auto;
    padding: 0;
    border-top: 3px solid #0892CF;
    border-right: 3px solid #0892CF;
    top: 50%;
    -webkit-transform: translateY(-50%) rotate(45deg);
    transform: translateY(-50%) rotate(45deg);
    left: 5%;
    -webkit-transition: 0.2s linear;
    transition: 0.2s linear;
  }
  #greeting_book .book_in .box .book_btn a:hover {
    color: #fff;
    background: #0892CF;
  }
  #greeting_book .book_in .box .book_btn a:hover::before {
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
  }
  #greeting_book .book_in .box .short_book {
    margin: 0;
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  #greeting_book .book_in .box .short_book p {
    width: 380px;
  }
  #greeting_book .book_in .box .book_img_s {
    width: 120px;
    margin: 15px 0 0;
    padding: 0;
  }
  #greeting_book .book_in .box .book_img_s img {
    width: 100%;
    height: auto;
  }
}
@media screen and (min-width: 48em), print {
  .antismoking .main .btn_link {
    width: 40rem;
  }
}
#clinicslide01 img, #clinicslide01 p, #clinicslide02 img, #clinicslide02 p {
  display: none;
}

.sp-layer.sp-black.sp-padding {
  text-align: left;
  font-size: 2.4rem;
}

.sp-selected-thumbnail {
  border: 2px solid #E7F8F7;
}

.machine_flex .equip {
  margin: 0 0 3rem;
}
.machine_flex .equip p {
  margin: 0;
}
@media screen and (min-width: 48em), print {
  .machine_flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .machine_flex .equip {
    width: 48%;
    margin: 0 0 3rem;
  }
  .machine_flex .equip img {
    margin: 0 0 1rem;
  }
  .machine_flex .equip p {
    font-size: 1.6rem;
  }
}

.flow dt {
  font-family: "Zen Maru Gothic", sans-serif;
  border-bottom: 0.1rem #1EC2B7 solid;
  color: #1EC2B7;
}
.flow dd {
  margin: 0 0 6rem;
  position: relative;
  padding: 1rem;
}
@media screen and (min-width: 48em), print {
  .flow dd {
    margin: 0 0 10rem;
  }
}
.flow dd:not(:last-child)::after {
  display: block;
  width: 0;
  height: 0;
  content: "";
  position: absolute;
  bottom: -5rem;
  left: 0;
  right: 0;
  border-top: 2rem solid #1EC2B7;
  border-right: 3rem solid transparent;
  border-bottom: 1rem solid transparent;
  border-left: 3rem solid transparent;
  margin: auto;
}

.access .main .tel {
  font-size: 150%;
}
.access .main iframe {
  width: 100%;
  border: 0;
  height: 25rem;
}

@media screen and (min-width: 48em), print {
  .access .main iframe {
    height: 40rem;
    margin: 0;
  }
}
.tbl_price, .tbl_lst {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}
.tbl_price tr th, .tbl_lst tr th {
  display: block;
  padding: 0.4rem 1rem;
  text-align: left;
  background: #E7F8F7;
  font-weight: normal;
  border: 1px solid #ccc;
  border-bottom: none;
}
.tbl_price tr td, .tbl_lst tr td {
  display: block;
  padding: 1rem;
  border: 1px solid #ccc;
  text-align: right;
  background: #fff;
}
.tbl_price tr:not(:last-child) td, .tbl_lst tr:not(:last-child) td {
  border-bottom: none;
}
.tbl_price.num, .num.tbl_lst {
  counter-reset: number 0;
}
.tbl_price.num tr th, .num.tbl_lst tr th {
  counter-increment: number 1;
}
.tbl_price.num tr th::before, .num.tbl_lst tr th::before {
  display: inline-block;
  content: counter(number) ".";
  margin-right: 0.4rem;
}

.tbl_lst tr th, .tbl_lst tr td {
  display: table-cell;
  word-break: break-all;
}
.tbl_lst tr th {
  text-align: center;
  background: #DEF6FC;
}
.tbl_lst tr td {
  text-align: center;
}
.tbl_lst tr td.go {
  background: #BEEDEA;
}

.txt_l tr td {
  text-align: left;
}

@media screen and (min-width: 48em), print {
  .tbl_price tr th, .tbl_lst tr th, .tbl_price tr td, .tbl_lst tr td {
    display: table-cell;
    padding: 1rem;
  }
  .tbl_price tr th, .tbl_lst tr th {
    width: 65%;
    border-bottom: 1px solid #ccc;
  }
  .tbl_price tr:not(:last-child) td, .tbl_lst tr:not(:last-child) td {
    border-bottom: 1px solid #ccc;
  }
  .tbl_lst tr th {
    width: 15%;
  }
}
nav {
  margin: 0 1rem;
}
nav .breadcrumb {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 1.2rem;
  font-family: "Zen Maru Gothic", sans-serif;
  margin: 0;
  padding: 1rem 0;
  color: #333;
}
nav .breadcrumb li:not(:last-child)::after {
  display: inline-block;
  font-family: "fontello";
  content: "\f006";
  color: #333;
  font-size: 80%;
  margin: 0 0.4rem;
  vertical-align: 0.1rem;
}
nav .breadcrumb li a {
  text-decoration: none;
  color: #5ED3CB;
  text-decoration: underline;
  font-weight: 500;
}

@media screen and (min-width: 48em), print {
  nav {
    width: 1200px;
    margin: 0 auto;
    padding: 1.8rem 0 0 0;
  }
  nav .breadcrumb {
    font-size: 1.8rem;
    padding: 0;
  }
  nav .breadcrumb li:not(:last-child)::after {
    margin: 0 0.8rem;
  }
}
.std {
  margin: 0;
  padding: 0 1rem 0rem 1rem;
}
.std .inner ul, .std .inner3 ul, .std .inner2 ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0 auto 2rem;
}
.std .inner ul li, .std .inner3 ul li, .std .inner2 ul li {
  text-align: center;
  border-radius: 1rem;
  background: #fff;
  width: 14rem;
  height: auto;
  margin: 0 0 1.4rem;
  -webkit-box-shadow: 0 0 0.8rem #eee;
          box-shadow: 0 0 0.8rem #eee;
}
.std .inner ul li a, .std .inner3 ul li a, .std .inner2 ul li a {
  display: block;
  width: 100%;
  height: 100%;
  text-decoration: none !important;
  font-family: "Zen Maru Gothic", sans-serif;
  color: #333;
  padding: 1rem 0;
}
.std .inner ul li a span, .std .inner3 ul li a span, .std .inner2 ul li a span {
  position: relative;
  display: block;
  margin: 0;
}
.std .inner2 {
  padding: 6rem 0 2rem;
  margin: -5.5rem 0 0 0;
}
.std .inner2 ul {
  margin: 0 auto 2rem;
}
.std .inner2 ul li {
  -webkit-box-shadow: none;
          box-shadow: none;
  border: 0.3rem #BEEDEA solid;
  background: #F0FBFA;
}
.std .inner2 .btn_wrapper .btn_link {
  height: 4rem;
  margin: 0 auto 1rem;
}
.std .inner3 {
  padding: 6rem 0 2rem;
  margin: -5.5rem 0 0 0;
}
.std .inner3 ul {
  margin: 0 auto 0;
}
.std .inner3 ul li {
  width: 100%;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  -webkit-box-shadow: none;
          box-shadow: none;
  border: 0.3rem #BEEDEA solid;
  background: #F0FBFA;
  padding: 0.5rem;
}
.std .inner3 ul li span {
  font-size: 1.4rem;
  font-family: "Zen Maru Gothic", sans-serif;
  text-align: center;
  vertical-align: 0.1rem;
}
.std .inner3 ul li span::before {
  color: #1EC2B7;
  margin: 0 0.6rem 0 0;
  display: inline-block;
  font-family: fontello;
  content: "\e808";
}
.std .inner3 ul li span.active::before {
  content: "\e809";
}
.std .inner3 ul li > div {
  text-align: left;
  padding: 1rem 0 0;
}
.std .inner3 ul li > div a {
  display: inline;
  padding: 0;
}
.std .inner3 .btn_wrapper .btn_link {
  height: 4rem;
  margin: 0 auto 1rem;
}

@media screen and (min-width: 48em), print {
  .std {
    margin: 4rem auto 4rem;
    width: 1200px;
    padding: 6rem 0 0 0;
  }
  .std .inner ul, .std .inner2 ul, .std .inner3 ul {
    margin: 5rem auto;
    width: 95.4rem;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .std .inner ul li, .std .inner2 ul li, .std .inner3 ul li {
    width: 21.6rem;
    height: auto;
    margin: 0;
    -webkit-box-shadow: 0 0 3rem #eee;
            box-shadow: 0 0 3rem #eee;
  }
  .std .inner ul li a, .std .inner2 ul li a, .std .inner3 ul li a {
    font-size: 2rem;
    padding: 1.5rem 0;
  }
  .std .inner ul li a span, .std .inner2 ul li a span, .std .inner3 ul li a span {
    margin: 0 auto;
  }
  .std .inner ul li a::before, .std .inner2 ul li a::before, .std .inner3 ul li a::before {
    width: 8.24rem;
    height: 10.2rem;
    margin: 0 auto;
  }
  .std .inner2 {
    padding: 11rem 0 6rem;
    margin: -9rem 0 0 0;
    border-radius: 3rem;
  }
  .std .inner2 ul {
    margin: 0 auto;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .std .inner2 ul li {
    border-radius: 2rem;
    margin: 0 3rem 4rem 0;
    border: 0.6rem #BEEDEA solid;
  }
  .std .inner2 ul li:nth-child(4n) {
    margin: 0 0 4rem;
  }
  .std .inner2 .btn_wrapper {
    width: 108rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin: 1rem auto 0;
  }
  .std .inner2 .btn_wrapper .btn_link {
    width: 51rem;
    height: 10rem;
    margin: 0;
  }
  .std .inner3 {
    padding: 11rem 0 6rem;
    margin: -9rem 0 0 0;
    border-radius: 3rem;
  }
  .std .inner3 ul {
    margin: 0 auto;
    width: 48%;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .std .inner3 ul li {
    width: 100%;
    border-radius: 2rem;
    margin: 0 0 4rem 0;
    padding: 1rem;
    border: 0.6rem #BEEDEA solid;
  }
  .std .inner3 ul li span {
    font-size: 2rem;
  }
  .std .inner3 ul li span::before {
    margin: 0 0.8rem 0 0;
  }
  .std .inner3 ul li > div {
    padding: 1.2rem 0 0;
  }
  .std .inner3 ul li > div a {
    font-size: 1.8rem;
  }
}
/*# sourceMappingURL=style.css.map */