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

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

html {
  box-sizing: border-box;
}

*, *::before, *::after {
  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;
}

.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;
}

.txt_larger {
  font-size: 150%;
}

.red {
  color: #f00;
}

.blue {
  color: #0000ff;
}

.lightblue {
  color: #28c8f0;
}

.purple {
  color: #7f4ad5;
}

.ora {
  color: #FFA314;
}

.pink {
  color: #ff94a6;
}

.green {
  color: #427652;
}

.uline {
  text-decoration: underline;
}

.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;
}

.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 {
    width: 20%;
  }
  .resize {
    width: 70%;
  }
}
.sp_n {
  display: none;
}

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

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

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

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

.mg0 {
  margin: 0 !important;
}

.mt0 {
  margin-top: 0;
}

.mb0 {
  margin-bottom: 0;
}

.m_l10 {
  margin-left: 1rem;
}

.w50 {
  width: 50%;
}

.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 .tbl_time {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  font-size: 1.4rem;
  table-layout: fixed;
  background: #fff;
  overflow: hidden;
}
.timetable_wrapper .tbl_time tr th {
  font-weight: normal;
  background: #28c8f0;
}
.timetable_wrapper .tbl_time tr th[scope=col] {
  padding: 0.6rem 0;
  font-size: 1.2rem;
  color: #fff;
}
.timetable_wrapper .tbl_time tr th[scope=col]:first-child {
  width: 25%;
}
.timetable_wrapper .tbl_time tr th.time {
  white-space: nowrap;
  font-size: 1.2rem;
  background: #d7f7ff;
  border-bottom: 0.1rem #28c8f0 solid;
}
.timetable_wrapper .tbl_time tr td {
  text-align: center;
  padding: 0.8rem 0.4rem;
  line-height: 1;
  color: #19528b;
  background: #d7f7ff;
  border-bottom: 0.1rem #28c8f0 solid;
}
.timetable_wrapper .tbl_time tr td.close {
  color: #28c8f0;
}
.timetable_wrapper .tbl_time tr:first-of-type th:first-of-type {
  border-radius: 0.6rem 0 0 0;
}
.timetable_wrapper .tbl_time tr:first-of-type th:last-of-type {
  border-radius: 0 0.6rem 0 0;
}
.timetable_wrapper .tbl_time tr:last-of-type th.time, .timetable_wrapper .tbl_time tr:last-of-type td {
  border-bottom: 0;
}
.timetable_wrapper .tbl_time tr:last-of-type th.time:first-of-type {
  border-radius: 0 0 0 0.6rem;
}
.timetable_wrapper .tbl_time tr:last-of-type td:last-of-type {
  border-radius: 0 0 0.6rem 0;
}
.timetable_wrapper p {
  margin: 0.8rem 0 0 0;
  line-height: 1.2;
  text-align: left;
  font-size: 1.2rem;
}

@media screen and (min-width: 48em), print {
  .timetable_wrapper .tbl_time {
    font-size: 1.6rem;
  }
  .timetable_wrapper .tbl_time tr th[scope=col] {
    padding: 1.05rem 0;
    font-size: 1.6rem;
  }
  .timetable_wrapper .tbl_time tr th.time {
    font-size: 1.8rem;
  }
  .timetable_wrapper .tbl_time tr td {
    padding: 1.5rem 0;
  }
  .timetable_wrapper p {
    font-size: 1.6rem;
  }
}
.gmap {
  width: 100%;
}
.gmap iframe {
  width: 100%;
  height: 100%;
  border: none;
}

.tit_01 {
  background: url(../img/keyvisual_low.png) no-repeat center top/cover;
  color: #144587;
  font-family: "Kosugi Maru", sans-serif;
  font-size: 2.2rem;
  padding: 3rem 1rem;
  margin: 0 0 3rem;
  text-align: center;
}

.tit_02 {
  color: #666;
  font-family: "Kosugi Maru", sans-serif;
  text-align: center;
  font-size: 2rem;
}
.tit_02 span {
  display: block;
  color: #28c8f0;
  font-family: "Quicksand", sans-serif;
  font-size: 1.2rem;
}
.tit_02::before {
  content: "";
  display: block;
  margin: 0 auto;
  background: url("../img/h2_icon.png") no-repeat center center/contain;
  width: 6.6rem;
  height: 2.4rem;
}

.tit_03 {
  color: #fff;
  font-weight: bold;
  font-size: 1.8rem;
  margin: 0 0 2rem;
  padding: 0 2.4rem 0 4rem;
  clear: both;
  background: #74d8f1;
  border-radius: 0.4rem;
  position: relative;
}
.tit_03::before {
  content: "";
  background: url("../img/h3_hitode.png") no-repeat center center/contain;
  position: absolute;
  top: -0.8rem;
  left: 0.2rem;
  width: 3rem;
  height: 3rem;
}

.tit_04 {
  color: #0075be;
  font-size: 1.6rem;
  font-weight: bold;
  border-bottom: solid 0.3rem #eee;
  position: relative;
  clear: both;
}
.tit_04::after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 0.3rem #0075be;
  bottom: -0.3rem;
  width: 5%;
}
.tit_04.border-none {
  border: none;
}
.tit_04.border-none::after {
  content: none;
}

.tit_05 {
  color: #0891b4;
  font-weight: bold;
  margin: 0 0 1rem;
  clear: both;
}

@media screen and (min-width: 48em), print {
  .tit_01 {
    background: url("../img/keyvisual_low.png") no-repeat center top/auto;
    font-size: 3.6rem;
    padding: 13rem 0;
    margin: 0;
  }
  .tit_02 {
    font-size: 3.8rem;
  }
  .tit_02 span {
    font-size: 1.8rem;
  }
  .tit_02::before {
    width: 16.5rem;
    height: 6rem;
  }
  .tit_03 {
    font-size: 2.6rem;
    margin: 0 0 2rem;
    padding: 0.5rem 1.8rem 0.3rem 8.2rem;
  }
  .tit_03::before {
    width: 6.8rem;
    height: 6.9rem;
    left: 0.6rem;
    top: -2.3rem;
  }
  .tit_04 {
    font-size: 2rem;
    margin: 0 0 2rem;
  }
  .tit_05 {
    font-size: 1.8rem;
  }
}
.lst_ul00 li {
  text-indent: -1.8rem;
  padding-left: 2.2rem;
  padding-bottom: 1rem;
  line-height: 1.4;
}
.lst_ul00 li::before {
  content: none !important;
}

.lst_ul01 li, .lst_ul02 li {
  text-indent: -1.8rem;
  padding-left: 2.2rem;
  padding-bottom: 1rem;
  line-height: 1.4;
}
.lst_ul01 li::before, .lst_ul02 li::before {
  content: "●";
  margin-right: 0.6rem;
  color: #0075be;
  font-size: 70%;
  vertical-align: 0.1rem;
}

.lst_ul02 {
  color: #19528b;
  font-weight: bold;
}
.lst_ul02 li {
  text-indent: -1.1rem;
  padding-left: 3rem;
}
.lst_ul02 li::before {
  font-family: fontello;
  content: "\e82c";
  display: inline-block;
  margin: 0 0.8rem 0 0;
  color: #50cae8;
  font-size: 100%;
}

.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_ol02 {
  counter-reset: my-counter;
  list-style: none;
  padding: 0;
  margin: 1rem;
}
.lst_ol02 li {
  position: relative;
  padding-left: 3rem;
  line-height: 1.4;
  margin: 0 0 2rem;
}
.lst_ol02 li:last-of-type {
  margin: 0;
}
.lst_ol02 li::before {
  content: counter(my-counter);
  counter-increment: my-counter;
  background-color: #fff;
  border: 0.1rem #0075be solid;
  border-radius: 50%;
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 2.2rem;
  width: 2.2rem;
  color: #0075be;
  font-size: 85%;
  line-height: 1;
  position: absolute;
  top: 0;
  left: 0;
}

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

.lst_dl02 dt {
  background: #e2effc;
  padding: 0.2rem 1rem;
  font-weight: bold;
  font-size: 110%;
}
.lst_dl02 dd {
  margin: 0 0 2rem;
  padding: 1rem;
}

.lst_dl04 {
  padding-left: 2.2rem;
}
.lst_dl04 dt {
  font-weight: bold;
}
.lst_dl04 dd {
  text-indent: 0;
  margin: 0 0 1rem;
}

.lst_dl05 {
  margin-top: 1rem;
  width: 100%;
}
.lst_dl05 > div {
  width: 100%;
}
.lst_dl05 dt {
  background: #e2effc;
  padding: 0.2rem 1rem;
  font-weight: bold;
  font-size: 110%;
}
.lst_dl05 dd {
  margin: 0.5rem 0 1rem;
  padding: 0.5rem;
}
.lst_dl05 dd .border {
  border: 1px solid #d1d1d1;
}
@media screen and (min-width: 48em), print {
  .lst_dl05 {
    margin-top: 2rem;
    width: 60%;
  }
  .lst_dl05 > div {
    width: 48%;
  }
  .lst_dl05 dd {
    margin: 1rem 0 1.5rem;
  }
}

@media screen and (min-width: 48em), print {
  .lst_ul00 li {
    text-indent: -1.8rem;
    padding-left: 2.4rem;
  }
  .lst_ul01 li, .lst_ul02 li {
    text-indent: -1.8rem;
    padding-left: 2.4rem;
  }
  .lst_ul02 li {
    line-height: 1.6;
    font-size: 1.8rem;
    text-indent: -1.2rem;
    padding-left: 2.4rem;
  }
  .lst_ul03 li {
    text-indent: -1.8rem;
    padding-left: 2.4rem;
  }
  .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: 10rem;
    font-weight: bold;
    clear: left;
  }
  .lst_dl01 dd {
    padding-left: 10rem;
  }
}
.flex2 > li {
  width: 100%;
  margin: 0 0 1rem;
}
@media screen and (min-width: 48em), print {
  .flex2 {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 1200px;
  }
  .flex2 > section, .flex2 > li {
    width: 48%;
    margin: 0 !important;
  }
}
.flex2.-btn {
  gap: 1em;
  justify-content: left;
}
@media screen and (min-width: 48em), print {
  .flex2.-btn li {
    width: 27.5%;
  }
}
.flex2.-btn li a {
  padding: 1.5rem;
  border-radius: 3rem;
  width: 100% !important;
}

.flex3 {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.flex3 > li {
  width: 100%;
  margin: 0 0 1rem;
}
@media screen and (min-width: 48em), print {
  .flex3 {
    margin: 2rem auto 0;
  }
  .flex3 li {
    width: 31%;
  }
}

.flex4 {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.flex4 > li {
  width: 100%;
  margin: 0 0 1rem;
}
@media screen and (min-width: 48em), print {
  .flex4 {
    margin: 2rem auto 0;
  }
  .flex4 li {
    width: 23%;
  }
}
.flex4.-sp_evenly {
  justify-content: space-evenly;
  align-items: center;
}
.flex4.-sp_evenly > span {
  width: 10%;
}

.tel {
  width: 100%;
  color: #fff;
  font-size: 1.8rem;
  font-family: "Quicksand", sans-serif;
  background: #ff9f09;
  border-radius: 2rem;
  padding: 0.4rem 0;
  text-align: center;
  line-height: 1;
}
.tel::before {
  font-family: fontello;
  content: "\e924";
  font-size: 80%;
}
.tel a {
  text-decoration: none !important;
}
.tel.trsv {
  background: #ed6c00;
  padding: 0.45rem 0 0.55rem;
}
.tel.trsv a {
  font-size: 1.6rem;
}

@media screen and (min-width: 48em), print {
  .tel {
    width: 272px;
    font-size: 2.6rem;
    border-radius: 4rem;
    padding: 2rem 1.3rem;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
  }
  .tel.trsv {
    padding: 2rem 1.3rem;
  }
}
.btn_rsv, .btn_rsv3, .btn_rsv2, .btn_rsv4 {
  color: #fff;
  text-align: center;
  border-radius: 2rem;
  padding: 0.4rem 0;
  background: #0075be;
  font-weight: bold;
  font-size: 1.7rem;
}
.btn_rsv::before, .btn_rsv3::before, .btn_rsv2::before, .btn_rsv4::before {
  font-family: fontello;
  content: "\e91f";
  font-weight: normal;
  margin: 0 1rem 0 0;
}
@media screen and (min-width: 48em), print {
  .btn_rsv, .btn_rsv3, .btn_rsv2, .btn_rsv4 {
    font-size: 2.2rem;
    border-radius: 3rem;
    padding: 0.4rem 2rem;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
  }
  .btn_rsv.-fs, .-fs.btn_rsv3, .-fs.btn_rsv2, .-fs.btn_rsv4 {
    font-size: 2rem;
  }
}

.btn_rsv2, .btn_rsv4 {
  border: 0.2rem #ff9906 solid;
  background: #fff;
  color: #ff9906;
}
@media screen and (min-width: 48em), print {
  .btn_rsv2, .btn_rsv4 {
    width: auto;
    font-size: 1.6rem;
  }
  .btn_rsv2:hover, .btn_rsv4:hover {
    background: #ff9906;
    color: #fff;
  }
}

.btn_rsv3 {
  background: #28c8f0;
}
.btn_rsv3::before {
  content: "\e927";
}

.btn_rsv4 {
  border: 0.2rem #0075be solid;
  color: #0075be;
  white-space: nowrap;
  display: block;
}
.btn_rsv4::before {
  content: "";
  margin: 0;
}
.btn_rsv4::after {
  font-family: fontello;
  content: "\f102";
  transform: rotate(90deg);
  display: inline-block;
}
@media screen and (min-width: 48em), print {
  .btn_rsv4 {
    display: -webkit-flex;
    display: flex;
  }
  .btn_rsv4:hover {
    background: #0075be;
    color: #fff;
  }
}

.btn_detail {
  color: #fff;
  text-align: center;
  border-radius: 2rem;
  padding: 0.4rem 1rem;
  background: #ff9f09;
  font-weight: bold;
  font-size: 1.4rem;
}
.btn_detail::before {
  font-family: fontello;
  content: "\e91f";
  font-weight: normal;
  margin: 0 1rem 0 0;
}
@media screen and (min-width: 48em), print {
  .btn_detail {
    font-size: 1.8rem;
    border-radius: 4rem;
    padding: 2rem 1rem;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
  }
}

.btn_tel {
  color: #fff;
  text-align: center;
  border-radius: 2rem;
  padding: 0.4rem 1rem;
  background: #ff9f09;
  font-weight: bold;
  font-size: 1.4rem;
}
.btn_tel .tel {
  display: block;
  padding: 0 0 0.4rem;
}
.btn_tel.trsv {
  background: #ed6c00;
}
.btn_tel.trsv .tel {
  background: #ed6c00;
}
@media screen and (min-width: 48em), print {
  .btn_tel {
    font-size: 1.8rem;
    border-radius: 4rem;
    padding: 2rem 1rem;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
  }
  .btn_tel .tel {
    display: inline-block;
    width: auto;
    padding: 0 0 0 1rem;
    font-size: 1.8rem;
  }
}

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

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

.box_yellow {
  background: cornsilk;
}
@media screen and (min-width: 48em), print {
  .box_yellow {
    padding: 2rem 3rem;
  }
}

.box_blue {
  background-color: lavender;
}
@media screen and (min-width: 48em), print {
  .box_blue {
    padding: 2rem 3rem;
  }
}

.box_transparent {
  background: transparent;
  width: 90%;
  padding: 0;
  margin: 5rem auto 0;
}
@media screen and (min-width: 48em), print {
  .box_transparent {
    width: 1200px;
  }
}

/*ポップアップ*/
#c-modal_bg {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  width: 100%;
  height: 100%;
  cursor: pointer;
  background: rgba(0, 0, 0, 0.6);
}

#c-modal {
  position: fixed;
  top: 50%;
  left: 50%;
  z-index: 9999;
  width: 800px;
  height: 90%;
  max-width: 90%;
  transform: translate(-50%, -50%);
  background: #ffffff;
}

#c-modal .caution-box {
  padding: 1em;
  clear: both;
  box-sizing: border-box;
  font-size: 1.6rem;
  overflow-y: scroll;
  overflow-x: hidden;
  height: 100%;
}
#c-modal .caution-box .tit_02 {
  font-size: 2rem;
}
#c-modal .caution-box ul {
  margin-bottom: 3rem;
}
#c-modal .caution-box p {
  line-height: 1.6;
}

#c-modal .visible_check {
  margin: 1em 0 0;
  text-align: center;
}

#c-modal #c-modal_close {
  display: inline-block;
  position: absolute;
  top: -40px;
  right: -5px;
  font-size: 40px;
  font-weight: bold;
  color: #fff;
  cursor: pointer;
}

@media screen and (min-width: 48em), print {
  #c-modal .caution-box .tit_02 {
    font-size: 3rem;
  }
}
.popup-modal.btn_rsv, .popup-modal.btn_rsv2, .popup-modal.btn_rsv3, .popup-modal.btn_rsv4 {
  padding: 0.5rem;
  display: inline-block;
  margin: 0 auto 3rem;
  text-align: center;
}

html {
  font-size: 3.125vw;
  /*font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic",sans-serif;*/
  font-family: "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

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

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

.main {
  font-size: 1.4rem;
  line-height: 1.6;
  padding: 0 0 6rem;
}
.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 {
    transition: 0.2s;
  }
  a:hover, button:hover {
    opacity: 0.8;
  }
  .wrap {
    width: 1200px;
    margin: auto;
  }
  .main {
    font-size: 1.6rem;
    padding: 0 0 8rem;
  }
}
@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 .sticky .wrap {
  margin: 1rem;
}
.header .sticky .wrap .logo {
  height: 7.6rem;
}
.header .sticky .wrap .logo a {
  display: block;
  width: 80%;
  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: 0.6rem 0 0;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  text-align: center;
}
.header .sticky .wrap .headR .tel_add {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
}
.header .sticky .wrap .headR .tel_add .acs {
  font-size: 1.4rem;
}
.header .sticky .wrap .headR .tel_add .acs::before {
  font-family: fontello;
  content: "\e925";
  color: #ff9f09;
}
.header .sticky .wrap .headR .tel_add .park {
  font-size: 1.4rem;
  background: #28c8f0;
  color: #fff;
  padding: 0.2rem 1rem;
  margin: 0 0 0 1rem;
}
.header .sticky .wrap .headR .tel_add .park::before {
  font-family: fontello;
  content: "\e923";
}
.header .sticky .wrap .headR .tel_add .tel {
  margin: 1rem 0 0;
  width: 48%;
}
.header .sticky .wrap .headR .tel_add .tel.trsv span {
  display: none;
}
.header .sticky .wrap .headR .tel_add .rsv {
  margin: 1rem 0 0;
  width: 100%;
}
.header .sticky .wrap .headR .tel_add .rsv .btn_rsv, .header .sticky .wrap .headR .tel_add .rsv .btn_rsv2, .header .sticky .wrap .headR .tel_add .rsv .btn_rsv3, .header .sticky .wrap .headR .tel_add .rsv .btn_rsv4 {
  display: block;
}
.header .sticky .wrap .headR .tel_add .rsv .btn_rsv::before, .header .sticky .wrap .headR .tel_add .rsv .btn_rsv2::before, .header .sticky .wrap .headR .tel_add .rsv .btn_rsv3::before, .header .sticky .wrap .headR .tel_add .rsv .btn_rsv4::before {
  content: "\e926";
}

@media screen and (min-width: 48em), print {
  .header {
    margin: 0;
  }
  .header .sticky .wrap {
    padding: 2.2rem 0;
    margin: 0 auto;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: center;
    align-items: center;
  }
  .header .sticky .wrap .logo {
    width: 56.7rem;
    height: 9.4rem;
  }
  .header .sticky .wrap .logo a {
    width: auto;
  }
  .header .sticky .wrap .headR {
    margin: 0;
    width: auto;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    -webkit-align-items: center;
    align-items: center;
    text-align: left;
  }
  .header .sticky .wrap .headR .tel_add {
    width: auto;
  }
  .header .sticky .wrap .headR .tel_add .acs {
    font-size: 1.6rem;
  }
  .header .sticky .wrap .headR .tel_add .park {
    margin: 0 0 0 0.6rem;
    font-size: 1.6rem;
    width: 13rem;
    height: 2.3rem;
    padding: 0;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
  }
  .header .sticky .wrap .headR .tel_add.link_btn {
    width: 570px;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
  }
  .header .sticky .wrap .headR .tel_add.link_btn .tel {
    width: 28rem;
    height: 5rem;
    margin: 0.8rem 0 0 0;
    order: 1;
  }
  .header .sticky .wrap .headR .tel_add.link_btn .tel.trsv {
    order: 3;
    padding: 0;
    background: transparent;
    color: #ed6c00;
    font-size: 1.8rem;
    height: auto;
  }
  .header .sticky .wrap .headR .tel_add.link_btn .tel.trsv span {
    display: inline-block;
    padding-left: 1rem;
    font-size: 2rem;
  }
  .header .sticky .wrap .headR .tel_add.link_btn .rsv {
    order: 2;
    width: auto;
  }
  .header .sticky .wrap .headR .tel_add.link_btn .rsv .btn_rsv, .header .sticky .wrap .headR .tel_add.link_btn .rsv .btn_rsv2, .header .sticky .wrap .headR .tel_add.link_btn .rsv .btn_rsv3, .header .sticky .wrap .headR .tel_add.link_btn .rsv .btn_rsv4 {
    display: -webkit-flex;
    display: flex;
    width: 28rem;
    height: 5rem;
    margin: 0;
  }
  .header .sticky .wrap .headR .tel_add.link_btn .rsv .btn_rsv::before, .header .sticky .wrap .headR .tel_add.link_btn .rsv .btn_rsv2::before, .header .sticky .wrap .headR .tel_add.link_btn .rsv .btn_rsv3::before, .header .sticky .wrap .headR .tel_add.link_btn .rsv .btn_rsv4::before {
    margin: 0 1.2rem 0 0;
  }
}
.tel_add .tel {
  line-height: 1.2;
}
.tel_add .tel [data-ruby] {
  position: relative;
}
.tel_add .tel [data-ruby]::before {
  content: attr(data-ruby);
  position: absolute;
  top: -0.6rem;
  left: 0rem;
  margin: auto;
  font-size: 0.7rem;
  letter-spacing: 1px;
  white-space: nowrap;
}

@media screen and (min-width: 48em), print {
  .tel_add .tel [data-ruby]::before {
    font-size: 1.2rem;
    letter-spacing: 2px;
  }
}
.slicknav_menu {
  position: absolute;
  top: 2.2rem;
  right: 0;
  font-size: 4.4rem;
  display: inline-block;
  background: none;
  padding: 0;
  z-index: 100;
}
.slicknav_menu .slicknav_btn {
  width: 5rem;
  height: 5rem;
  color: #0075be;
  background: #fff;
  border: 1px solid #0075be;
  text-shadow: none;
  border-radius: 0;
  text-align: center;
  line-height: 1;
  margin: 0 1rem;
  padding: 0.4rem 0 0 0;
}
.slicknav_menu .slicknav_btn.slicknav_collapsed::before {
  display: block;
  font-family: "fontello";
  content: "\e801";
  font-size: 3.8rem;
  line-height: 0.85;
}
.slicknav_menu .slicknav_btn.slicknav_collapsed::after {
  display: block;
  content: "MENU";
  font-size: 1rem;
}
.slicknav_menu .slicknav_btn.slicknav_open::before {
  display: block;
  font-family: "fontello";
  content: "\e802";
  font-size: 3.8rem;
  line-height: 0.85;
}
.slicknav_menu .slicknav_btn.slicknav_open::after {
  display: block;
  content: "CLOSE";
  font-size: 1rem;
}
.slicknav_menu .slicknav_nav {
  width: 100vw;
  background: aliceblue;
  padding: 1.6rem;
  position: absolute;
  top: 6rem;
  right: 0;
  margin: auto;
}
.slicknav_menu .slicknav_nav .gnav {
  border-top: 1px solid #0075be;
  margin: 0;
}
.slicknav_menu .slicknav_nav .gnav li {
  border-bottom: 1px solid #0075be;
}
.slicknav_menu .slicknav_nav .gnav li a {
  display: block;
  color: #333 !important;
  padding: 1rem 0;
  font-size: 1.6rem;
  position: relative;
}
.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;
  content: "▼";
  color: #0075be;
}
.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 a {
  padding: 1rem;
  background: rgba(255, 255, 255, 0.8);
}
.slicknav_menu .slicknav_nav .gnav li .subnav li a br {
  display: none;
}
.slicknav_menu .slicknav_nav .gnav li .subnav li a span {
  font-size: 80%;
}
.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;
  }
  #nav ul {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    padding: 0 0 1.6rem;
    width: 1200px;
    margin: 0 auto;
  }
  #nav ul li {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    border-right: 0.1rem #d8d8d8 dashed;
  }
  #nav ul li:last-of-type {
    margin: 0;
    border-right: 0;
  }
  #nav ul li:hover .children-1 {
    display: block;
  }
  #nav ul li a {
    width: 100%;
    display: block;
    text-align: center;
    padding: 0.4rem 0;
    font-size: 1.6rem;
    color: #333;
    font-weight: bold;
  }
  #nav ul li a.sub::after {
    font-family: fontello;
    content: "\f107";
    font-weight: normal;
    margin: 0 0 0 0.8rem;
  }
  #nav ul .children-1, #nav ul .children-2 {
    border-radius: 1rem;
  }
  #nav ul .children-1 li, #nav ul .children-2 li {
    width: 50%;
    height: auto;
    float: left;
    border-right: 0;
    background: #28c8f0;
  }
  #nav ul .children-1 li:nth-of-type(even) a, #nav ul .children-2 li:nth-of-type(even) a {
    border-right: 0;
  }
  #nav ul .children-1 li:first-of-type a, #nav ul .children-1 li:nth-of-type(2) a, #nav ul .children-2 li:first-of-type a, #nav ul .children-2 li:nth-of-type(2) a {
    border-top: 0;
  }
  #nav ul .children-1 li:first-of-type, #nav ul .children-2 li:first-of-type {
    border-radius: 1rem 0 0 0;
  }
  #nav ul .children-1 li:nth-of-type(2), #nav ul .children-2 li:nth-of-type(2) {
    border-radius: 0 1rem 0 0;
  }
  #nav ul .children-1 li:nth-last-of-type(2), #nav ul .children-2 li:nth-last-of-type(2) {
    border-radius: 0 0 0 1rem;
  }
  #nav ul .children-1 li:last-of-type, #nav ul .children-2 li:last-of-type {
    border-radius: 0 0 1rem 0;
  }
  #nav ul .children-1 li a, #nav ul .children-2 li a {
    height: auto;
    padding: 1.1rem 0;
    width: 100%;
    border-top: 0.1rem dotted #fff;
    border-right: 0.1rem dotted #fff;
    border-left: 0;
    border-bottom: 0;
    font-size: 1.8rem;
    font-weight: normal;
    color: #fff;
    margin: 0;
  }
  #nav ul .children-1 li a br, #nav ul .children-2 li a br {
    display: none;
  }
  #nav ul .children-1 li a:hover, #nav ul .children-2 li a:hover {
    background: #0075be;
    opacity: 1;
  }
  #nav ul .children-1 {
    display: none;
    position: absolute;
    z-index: 999;
    top: 2rem;
    left: -16rem;
    width: 52rem;
    padding: 1.4rem 0 0 0;
  }
  #nav ul .children-1 .subnav {
    width: 52rem;
    flex-wrap: wrap;
  }
  #nav ul .children-1 .subnav li {
    flex: auto;
  }
  #nav ul .children-1 .subnav li .children-2 {
    display: none;
    position: absolute;
    top: 0px;
    left: 110px;
    width: 100%;
  }
  #nav ul .children-1 .subnav li:hover .children-2 {
    display: block;
    background: #E6E4D7;
  }
  #nav ul .children-2 a {
    width: 100%;
  }
}
.overview {
  padding: 4rem 1rem 2rem;
  line-height: 1.6;
  background: #74d8f1;
}
.overview > .wrap {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  background: #fff;
  border-radius: 1rem;
  padding: 2rem 1rem;
}
.overview > .wrap .overviewL .box_logo .clinic_name, .overview > .wrap .overviewR .box_logo .clinic_name {
  margin: 0 0 1rem;
}
.overview > .wrap .overviewL .box_logo .clinic_name img, .overview > .wrap .overviewR .box_logo .clinic_name img {
  max-width: 100%;
  height: auto;
}
.overview > .wrap .overviewL .box_logo .address, .overview > .wrap .overviewR .box_logo .address {
  text-align: center;
}
.overview > .wrap .overviewL .box_logo .address::before, .overview > .wrap .overviewR .box_logo .address::before {
  font-family: fontello;
  content: "\e922";
  color: #ff9f09;
}
.overview > .wrap .overviewL .flex2, .overview > .wrap .overviewR .flex2 {
  width: 100%;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.overview > .wrap .overviewL .flex2 .tel, .overview > .wrap .overviewL .flex2 .btn_rsv, .overview > .wrap .overviewL .flex2 .btn_rsv2, .overview > .wrap .overviewL .flex2 .btn_rsv3, .overview > .wrap .overviewL .flex2 .btn_rsv4, .overview > .wrap .overviewR .flex2 .tel, .overview > .wrap .overviewR .flex2 .btn_rsv, .overview > .wrap .overviewR .flex2 .btn_rsv2, .overview > .wrap .overviewR .flex2 .btn_rsv3, .overview > .wrap .overviewR .flex2 .btn_rsv4 {
  width: 100%;
  padding: 0.4rem 0;
  text-align: center;
  margin: 0 0 1rem;
}
.overview > .wrap .overviewL .flex2 .btn_rsv, .overview > .wrap .overviewL .flex2 .btn_rsv2, .overview > .wrap .overviewL .flex2 .btn_rsv4, .overview > .wrap .overviewL .flex2 .btn_rsv3, .overview > .wrap .overviewR .flex2 .btn_rsv, .overview > .wrap .overviewR .flex2 .btn_rsv2, .overview > .wrap .overviewR .flex2 .btn_rsv4, .overview > .wrap .overviewR .flex2 .btn_rsv3 {
  width: 49%;
  font-size: 1.4rem;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  line-height: 1;
}
.overview > .wrap .overviewL .gaiyo, .overview > .wrap .overviewR .gaiyo {
  width: 100%;
  margin: 1rem 0 2rem;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.overview > .wrap .overviewL .gaiyo dt, .overview > .wrap .overviewR .gaiyo dt {
  width: 26%;
  color: #fff;
  background: #0075be;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  border-radius: 0.6rem;
}
.overview > .wrap .overviewL .gaiyo dd, .overview > .wrap .overviewR .gaiyo dd {
  width: 74%;
  padding: 0 0 0 1rem;
}
.overview > .wrap .overviewL .gaiyo dd span, .overview > .wrap .overviewR .gaiyo dd span {
  font-weight: bold;
}
.overview > .wrap .overviewL .gaiyo dd:first-of-type, .overview > .wrap .overviewR .gaiyo dd:first-of-type {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
}
.overview > .wrap .overviewL .gaiyo dt, .overview > .wrap .overviewL .gaiyo dd, .overview > .wrap .overviewR .gaiyo dt, .overview > .wrap .overviewR .gaiyo dd {
  margin: 0 0 1rem;
  font-size: 1.4rem;
}
.overview > .wrap .overviewL .lst_card, .overview > .wrap .overviewR .lst_card {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 0 3rem;
}
.overview > .wrap .overviewL .lst_card li img, .overview > .wrap .overviewR .lst_card li img {
  margin: 0 0.4rem 0 0;
}
.overview > .wrap .overviewL .lst_card li.flx, .overview > .wrap .overviewR .lst_card li.flx {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
}
.overview > .wrap .overviewL .lst_card li.flx span, .overview > .wrap .overviewR .lst_card li.flx span {
  font-size: 80%;
  font-weight: normal;
}
.overview > .wrap .overviewL .dr_bnr, .overview > .wrap .overviewR .dr_bnr {
  margin-top: 3rem;
}
.overview > .wrap .overviewR {
  width: 100%;
}
.overview > .wrap .overviewR iframe {
  width: 90%;
  height: 30rem;
  border-width: 0;
  display: block;
  border-radius: 0.6rem;
  border: 0.1rem #ddd solid;
  margin: 3rem auto 0;
}
.overview > .wrap .overviewR .btn_rsv4 {
  margin: 1rem auto 0;
  width: 60%;
  font-size: 1.2rem;
}

.bg_overview {
  background: url("../img/bg_overview.png") repeat-x center center;
}

@media screen and (min-width: 48em), print {
  .overview {
    padding: 6rem 0 4rem;
    background: url("../img/bg_fish_r.png"), url("../img/bg_manbo.png");
    background-repeat: no-repeat, no-repeat;
    background-position: left 1rem top 43.5rem, right 1rem top 22.5rem;
    background-color: #74d8f1;
  }
  .overview > .wrap {
    margin: 0 auto;
    width: 118rem;
    padding: 3.2rem 4.4rem 3.2rem 3.2rem;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    width: 1200px;
  }
  .overview > .wrap .overviewL .box_logo .clinic_name, .overview > .wrap .overviewR .box_logo .clinic_name {
    margin: 0 auto;
  }
  .overview > .wrap .overviewL .box_logo .clinic_name img, .overview > .wrap .overviewR .box_logo .clinic_name img {
    max-width: 53.3rem;
  }
  .overview > .wrap .overviewL .box_logo .address, .overview > .wrap .overviewR .box_logo .address {
    font-size: 1.8rem;
  }
  .overview > .wrap .overviewL .flex2 .tel, .overview > .wrap .overviewL .flex2 .btn_rsv, .overview > .wrap .overviewL .flex2 .btn_rsv2, .overview > .wrap .overviewL .flex2 .btn_rsv3, .overview > .wrap .overviewL .flex2 .btn_rsv4, .overview > .wrap .overviewR .flex2 .tel, .overview > .wrap .overviewR .flex2 .btn_rsv, .overview > .wrap .overviewR .flex2 .btn_rsv2, .overview > .wrap .overviewR .flex2 .btn_rsv3, .overview > .wrap .overviewR .flex2 .btn_rsv4 {
    width: 27.2rem;
    height: 6rem;
    margin: 0 0 1.5rem;
    font-size: 2.2rem;
  }
  .overview > .wrap .overviewL .gaiyo, .overview > .wrap .overviewR .gaiyo {
    width: 100%;
    margin: 0.5rem auto 0;
  }
  .overview > .wrap .overviewL .gaiyo dt, .overview > .wrap .overviewR .gaiyo dt {
    width: 10.5rem;
    min-height: 4rem;
  }
  .overview > .wrap .overviewL .gaiyo dd, .overview > .wrap .overviewR .gaiyo dd {
    width: 45rem;
    padding: 0 0 0 1.6rem;
  }
  .overview > .wrap .overviewL .gaiyo dd span, .overview > .wrap .overviewR .gaiyo dd span {
    font-size: 2.4rem;
  }
  .overview > .wrap .overviewL .gaiyo dt, .overview > .wrap .overviewL .gaiyo dd, .overview > .wrap .overviewR .gaiyo dt, .overview > .wrap .overviewR .gaiyo dd {
    margin: 0 0 1rem;
    font-size: 1.6rem;
  }
  .overview > .wrap .overviewL .lst_card, .overview > .wrap .overviewR .lst_card {
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    font-size: 1.4rem;
    margin: 3rem 0;
  }
  .overview > .wrap .overviewL .timetable_wrapper, .overview > .wrap .overviewR .timetable_wrapper {
    margin: 2rem 0 0 0;
  }
  .overview > .wrap .overviewL .dr_bnr, .overview > .wrap .overviewR .dr_bnr {
    float: right;
    margin-top: 5rem;
  }
  .overview > .wrap .overviewL {
    width: 55.7rem;
  }
  .overview > .wrap .overviewR {
    width: 54.5rem;
  }
  .overview > .wrap .overviewR iframe {
    width: 50.7rem;
    height: 58.4rem;
    margin: 0 0 0 auto;
  }
  .overview > .wrap .overviewR .btn_rsv4 {
    margin: 1.6rem 0 0 auto;
    width: 18rem;
    height: 3.7rem;
    font-size: 1.6rem;
  }
  .bg_overview {
    height: 17.3rem;
  }
}
.tel_up {
  width: 100%;
  background: #fff;
  padding: 0.75rem 1rem;
  visibility: hidden;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1;
  font-size: 1.4rem;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center;
}
.tel_up .tel {
  display: block;
  text-align: center;
  width: auto;
  font-size: 1.7rem;
  line-height: 1;
  margin: 0;
  white-space: nowrap;
  padding: 0.6rem;
}
.tel_up .tel::before {
  vertical-align: 0.2rem;
  margin: 0 0.4rem 0 0;
}
.tel_up .btn_rsv, .tel_up .btn_rsv2, .tel_up .btn_rsv3, .tel_up .btn_rsv4 {
  font-size: 1.7rem;
  padding: 0.6rem;
  line-height: 1;
}
.tel_up .btn_rsv::after, .tel_up .btn_rsv2::after, .tel_up .btn_rsv3::after, .tel_up .btn_rsv4::after {
  content: "";
}
.tel_up .btn_rsv::before, .tel_up .btn_rsv2::before, .tel_up .btn_rsv3::before, .tel_up .btn_rsv4::before {
  margin: 0 0.4rem 0 0;
  font-size: 80%;
}
.tel_up .pageup {
  position: fixed;
  right: 1rem;
  bottom: 5.5rem;
}
.tel_up .pageup a {
  display: block;
  width: 4rem;
  height: 4rem;
  background: url("../img/top.png") no-repeat center center/contain;
}
.tel_up .pageup a span {
  display: none;
}

@media screen and (min-width: 48em), print {
  .tel_up {
    display: block;
    width: 8rem;
    bottom: 4rem;
    right: 2rem;
    left: auto;
    cursor: pointer;
    background: none;
    padding: 0;
  }
  .tel_up .tel, .tel_up .btn_rsv, .tel_up .btn_rsv2, .tel_up .btn_rsv3, .tel_up .btn_rsv4, .tel_up .btn_tel_rsv {
    display: none;
  }
  .tel_up .pageup {
    position: relative;
    right: 0;
    bottom: 0;
  }
  .tel_up .pageup a {
    width: 8.7rem;
    height: 8.7rem;
  }
}
.footer {
  text-align: center;
  padding: 1rem 0 6rem;
  background: #0075be;
}
.footer .copy {
  display: block;
  padding: 0.6rem 1rem;
  font-size: 1.2rem;
  width: 100%;
  color: #fff;
}
.footer .tokutei {
  display: block;
  padding: 0.6rem 1rem;
  font-size: 1.2rem;
  width: 100%;
  color: #fff;
}
.footer ul {
  display: none;
}

@media screen and (min-width: 48em), print {
  .footer {
    padding: 3rem 0;
    text-align: center;
  }
  .footer ul {
    width: 1200px;
    margin: 0 auto;
    display: block;
  }
  .footer ul li {
    display: inline-block;
    font-size: 1.6rem;
    -webkit-text-size-adjust: none;
    margin: 0 0 1rem;
  }
  .footer ul li:not(:last-child)::after {
    content: "|";
    margin: 0 1rem;
    color: #fff;
  }
  .footer ul li a {
    opacity: 1;
    color: #fff;
    font-size: 1.6rem;
  }
  .footer ul li a br {
    display: none;
  }
  .footer ul li a:hover {
    text-decoration: underline;
  }
  .footer ul li.treatment {
    display: none;
  }
  .footer .copy {
    margin: 0;
    padding: 1.5rem 0;
    font-size: 1.6rem;
  }
}
body.index .main {
  padding: 0;
  margin: 0 auto;
}
@media screen and (min-width: 48em), print {
  body.index .main {
    margin: 0;
  }
}

.swiper {
  width: 100%;
  overflow: hidden;
}

.swiper-wrapper {
  z-index: -1 !important;
}

.swiper-slide img {
  height: auto;
  width: 100%;
}

.swiper-wrapper .swiper-slide {
  background: 50% 0%/165% no-repeat scroll padding-box border-box #74d8f1;
  /* top: 190.484px; */
  left: 0px;
  width: 100%;
  /* max-width: 375px; */
  min-height: 26.065375rem;
  /* min-height: 483.938px; */
  /* height: 306.562px; */
  margin: 11.7188px 0px 0px;
  backface-visibility: hidden;
}

.txt_area {
  position: absolute;
  width: 100%;
  text-align: center;
  color: white;
  top: calc(50% - 10px);
  /*  top: 60%; */
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.txt_area .txt {
  text-shadow: #fff 2px 0px 2px, #fff -2px 0px 2px, #fff 0px -2px 2px, #fff -2px 0px 2px, #fff 2px 2px 2px, #fff -2px 2px 2px, #fff 2px -2px 2px, #fff -2px -2px 2px, #fff 1px 2px 2px, #fff -1px 2px 2px, #fff 1px -2px 2px, #fff -1px -2px 2px, #fff 2px 1px 2px, #fff -2px 1px 2px, #fff 2px -1px 2px, #fff -2px -1px 2px, #fff 1px 1px 2px, #fff -1px 1px 2px, #fff 1px -1px 2px, #fff -1px -1px 2px;
  color: #144587;
  font-family: "Kosugi Maru", sans-serif;
  margin: 0;
  font-size: 1.3rem;
  text-align: center;
  line-height: 1.6;
  letter-spacing: 0.1rem;
}
.txt_area .txt.sub {
  margin: 1rem 0 0 0;
  font-size: 1rem;
}

.keycont {
  position: absolute;
  top: 60%;
  width: 100%;
}

#keyvsl {
  position: relative;
  margin: 1rem 0 0;
  /*   padding: 11.0rem 0 0 0; */
  max-width: 100%;
  /*   background: $clr_main url(../img/index_keyvsl01.jpg) no-repeat center top / 165% auto; */
}
#keyvsl .keycont {
  /* margin: 0 1.0rem; */
}
#keyvsl .keycont p {
  text-shadow: #fff 2px 0px 2px, #fff -2px 0px 2px, #fff 0px -2px 2px, #fff -2px 0px 2px, #fff 2px 2px 2px, #fff -2px 2px 2px, #fff 2px -2px 2px, #fff -2px -2px 2px, #fff 1px 2px 2px, #fff -1px 2px 2px, #fff 1px -2px 2px, #fff -1px -2px 2px, #fff 2px 1px 2px, #fff -2px 1px 2px, #fff 2px -1px 2px, #fff -2px -1px 2px, #fff 1px 1px 2px, #fff -1px 1px 2px, #fff 1px -1px 2px, #fff -1px -1px 2px;
  color: #144587;
  font-family: "Kosugi Maru", sans-serif;
  margin: 0;
  font-size: 1.3rem;
  text-align: center;
  line-height: 1.6;
  letter-spacing: 0.1rem;
}
#keyvsl .keycont p.sub {
  margin: 1rem 0 0 0;
  font-size: 1rem;
}
#keyvsl .keycont .circle_wrapper {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  width: 68%;
  margin: 1rem 0 0 auto;
}
#keyvsl .keycont .circle_wrapper li.event, #keyvsl .keycont .circle_wrapper li.open {
  width: 10rem;
  height: 10rem;
  border-radius: 50%;
  background: #28c8f0;
  /*
       @include flex;
       @include SetPrefix(justify-content, center);
       @include SetPrefix(align-items, center);
  */
  display: none;
}
#keyvsl .keycont .circle_wrapper li.event .circle, #keyvsl .keycont .circle_wrapper li.open .circle {
  width: 9rem;
  height: 9rem;
  border-radius: 50%;
  text-align: center;
  color: #fff;
  font-family: "Kosugi Maru", sans-serif;
  border: 0.2rem #fff dotted;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-align-content: center;
  align-content: center;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  font-size: 1.4rem;
}
#keyvsl .keycont .circle_wrapper li.event .circle span.w100, #keyvsl .keycont .circle_wrapper li.open .circle span.w100 {
  width: 100%;
}
#keyvsl .keycont .circle_wrapper li.event .circle span.fs22, #keyvsl .keycont .circle_wrapper li.open .circle span.fs22 {
  font-size: 1.1rem;
}
#keyvsl .keycont .circle_wrapper li.event .circle span.fs26, #keyvsl .keycont .circle_wrapper li.open .circle span.fs26 {
  font-size: 1.6rem;
}
#keyvsl .keycont .circle_wrapper li.event .circle span.fs36, #keyvsl .keycont .circle_wrapper li.open .circle span.fs36 {
  font-size: 1.8rem;
}
#keyvsl .keycont .circle_wrapper li.open {
  background: #ff9f09;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
}

@media screen and (min-width: 48em), print {
  #keyvsl {
    /*     background: url(../img/index_keyvsl01.jpg) no-repeat center top / auto; */
    margin: 0;
    /*  height: 78.3rem;
    padding: 43.0rem 0 0 0; */
  }
  #keyvsl .keycont {
    position: relative;
    z-index: 1;
    width: 1200px;
    margin: 0 auto;
    height: 100%;
  }
  #keyvsl .keycont p {
    font-size: 3.2rem;
    letter-spacing: 0.3rem;
  }
  #keyvsl .keycont p.sub {
    margin: 3rem 0 0 0;
    font-size: 2.2rem;
  }
  #keyvsl .keycont .circle_wrapper {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 38.2rem;
  }
  #keyvsl .keycont .circle_wrapper li.event, #keyvsl .keycont .circle_wrapper li.open {
    width: 18.4rem;
    height: 18.4rem;
  }
  #keyvsl .keycont .circle_wrapper li.event .circle, #keyvsl .keycont .circle_wrapper li.open .circle {
    width: 17.9rem;
    height: 17.9rem;
    font-size: 2.4rem;
  }
  #keyvsl .keycont .circle_wrapper li.event .circle span.fs22, #keyvsl .keycont .circle_wrapper li.open .circle span.fs22 {
    font-size: 2.2rem;
  }
  #keyvsl .keycont .circle_wrapper li.event .circle span.fs26, #keyvsl .keycont .circle_wrapper li.open .circle span.fs26 {
    font-size: 2.6rem;
  }
  #keyvsl .keycont .circle_wrapper li.event .circle span.fs36, #keyvsl .keycont .circle_wrapper li.open .circle span.fs36 {
    font-size: 3.6rem;
  }
  #keyvsl .keycont .circle_wrapper li.open {
    margin: 0 0 0 auto;
  }
  .swiper-wrapper .swiper-slide {
    top: initial;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    width: 100%;
    max-width: initial;
    min-height: 78.3rem;
    height: 60vh;
    backface-visibility: hidden;
  }
  .txt_area {
    top: calc(100% - 30rem);
  }
  .txt_area .txt {
    font-size: 3.2rem;
    letter-spacing: 0.3rem;
  }
}
.bnr_wrapper {
  text-align: center;
  background: #74d8f1;
  margin: -5rem 0rem;
  padding-bottom: 7rem;
  /* padding: 2.0rem 1.0rem;  */
}

@media screen and (min-width: 48em), print {
  .bnr_wrapper {
    padding-top: 5rem;
    padding-bottom: 8rem;
    /* padding: 3.0rem 0; */
  }
}
.bnr_recruit {
  text-align: center;
  background: #74d8f1;
  padding: 2rem 1rem;
}
.bnr_recruit .flex3 li {
  border: 0.3rem #fff solid;
  border-radius: 0.6rem;
  color: #fff;
  background: #19bee7;
  padding: 0.6rem 0;
}
.bnr_recruit .flex3 li a {
  text-decoration: none;
  font-family: "Kosugi Maru", sans-serif;
  width: 100%;
  display: block;
  font-size: 1.2rem;
}

@media screen and (min-width: 48em), print {
  .bnr_recruit {
    padding: 3rem 0;
  }
  .bnr_recruit .flex3 {
    width: 100rem;
    margin: 0 auto;
  }
  .bnr_recruit .flex3 li {
    padding: 1rem 0;
  }
  .bnr_recruit .flex3 li a {
    font-size: 1.8rem;
  }
}
.info {
  background: #74d8f1;
  padding: 4rem 1rem 3rem 1rem;
}
.info .innner_info {
  background: #fff;
  border-radius: 1rem;
  padding: 2rem 0;
}
.info .innner_info .h2_wrapper {
  border-radius: 50%;
  background: #c8f4ff;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  width: 11rem;
  height: 11rem;
  margin: -6rem auto 0;
}
.info .innner_info .h2_wrapper .h2_circle {
  border-radius: 50%;
  border: 0.2rem #fff dotted;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-align-content: center;
  align-content: center;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 10rem;
  height: 10rem;
}
.info .innner_info .box_info {
  margin: 2rem 1rem;
  padding: 0;
  line-height: 1.4;
  background: transparent;
}
.info .innner_info .box_info dt {
  margin-bottom: 0.4rem;
  color: #0891b4;
  font-size: 110%;
  font-weight: bold;
}
.info .innner_info .box_info dt::before {
  font-weight: normal;
  display: inline-block;
  font-family: fontello;
  content: "\e91e";
  color: #68defb;
}
.info .innner_info .box_info dt.close {
  border-bottom: 0;
}
.info .innner_info .box_info dt.close::before {
  display: inline-block;
  font-family: fontello;
  content: "\e920";
  color: #68defb;
}
.info .innner_info .box_info dd {
  margin: 0 0 2rem;
  padding: 0 0 2rem;
  border-bottom: 0.1rem #ccc dashed;
}
.info .innner_info .box_info dd:not(:nth-of-type(-n+3)) {
  display: none;
}
.info .innner_info .img_deco_l, .info .innner_info .img_deco_r {
  display: none;
}

.wave_info {
  background: url("../img/wave_info.png") repeat-x center center/contain;
  height: 2rem;
}

@media screen and (min-width: 48em), print {
  .info {
    padding: 0 0 10rem;
  }
  .info .innner_info {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    width: 100rem;
    margin: 0 auto;
    padding: 2.4rem;
    border: 0.4rem #c8f4ff solid;
    position: relative;
  }
  .info .innner_info .h2_wrapper {
    position: absolute;
    top: 2.6rem;
    left: -8rem;
    width: 26rem;
    height: 26rem;
    z-index: 5;
    margin: 0;
  }
  .info .innner_info .h2_wrapper .h2_circle {
    width: 24.6rem;
    height: 24.6rem;
  }
  .info .innner_info .box_info {
    width: 74.3rem;
    margin: 0 0 0 auto;
  }
  .info .innner_info .box_info dt {
    font-size: 2rem;
    padding: 0;
  }
  .info .innner_info .box_info dd {
    margin: 0 0 3rem;
    font-size: 1.8rem;
    padding: 0 0 3rem 0;
  }
  .info .innner_info img {
    position: absolute;
    bottom: -4rem;
  }
  .info .innner_info img.img_deco_l {
    left: -7.5rem;
    display: block;
  }
  .info .innner_info img.img_deco_r {
    right: -8rem;
    display: block;
  }
  .wave_info {
    background: url("../img/wave_info.png") repeat-x center center/auto;
    height: 3.8rem;
  }
}
.doctor_list {
  margin: 0 1rem;
}
.doctor_list div.tbl_dr_lst {
  display: none;
}
.doctor_list div.tbl_dr_lst table {
  width: 98%;
  background: #fff;
  border-collapse: collapse;
  table-layout: fixed;
  margin: 0 auto;
}
.doctor_list div.tbl_dr_lst table tr:first-of-type {
  background: #c8f4ff;
  text-align: center;
  border-top: 1px solid #dddddd;
}
.doctor_list div.tbl_dr_lst table tr.day td {
  text-align: right;
  border-bottom: 0;
}
.doctor_list div.tbl_dr_lst table tr.day td.memo {
  text-align: left;
}
.doctor_list div.tbl_dr_lst table tr.day td.over {
  color: #afafaf;
}
.doctor_list div.tbl_dr_lst table tr:not(.day):not(:first-of-type) td {
  height: 5.5rem;
}
.doctor_list div.tbl_dr_lst table tr td {
  font-size: 2vw;
  border-bottom: 1px solid #dddddd;
  border-left: 1px solid #dddddd;
  border-right: 1px solid #dddddd;
  padding: 0.2rem;
}
.doctor_list div.tbl_dr_lst table tr td.memo {
  border-top: 0;
}
.doctor_list div.tbl_dr_lst table tr td .am, .doctor_list div.tbl_dr_lst table tr td .pm {
  font-size: 80%;
  text-align: center;
  display: block;
  color: #fff;
  width: 80%;
  margin: 0.2rem auto 0;
  border-radius: 100vh;
}
.doctor_list div.tbl_dr_lst table tr td .am {
  background: #ed6c00;
}
.doctor_list div.tbl_dr_lst table tr td .pm {
  background: #0075be;
}
.doctor_list div.tbl_dr_lst:nth-of-type(-n+2) {
  display: block;
}

@media screen and (min-width: 48em), print {
  .doctor_list {
    margin: 0;
  }
  .doctor_list div.tbl_dr_lst table {
    width: 100%;
  }
  .doctor_list div.tbl_dr_lst table tr:not(.day):not(:first-of-type) td {
    height: 12rem;
  }
  .doctor_list div.tbl_dr_lst table tr td {
    font-size: 1.6rem;
    padding: 0 0.5rem;
  }
  .doctor_list div.tbl_dr_lst table tr td.memo {
    border-top: 0;
  }
  .doctor_list div.tbl_dr_lst table tr td .am, .doctor_list div.tbl_dr_lst table tr td .pm {
    font-size: 80%;
    text-align: center;
    display: inline-block;
    color: #fff;
    width: fit-content;
    padding: 0 0.8rem;
    margin: 0.5rem 0.5rem 0;
  }
}
.greeting {
  margin: 0 auto;
}
.greeting .wrap {
  margin: 0 2rem;
  padding: 0 0 3rem;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.greeting .wrap .txt {
  position: relative;
  order: 2;
}
.greeting .wrap .txt .flex2 {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.greeting .wrap .txt .flex2 li {
  width: 48%;
}
.greeting .wrap .txt .flex2 li .btn_rsv, .greeting .wrap .txt .flex2 li .btn_rsv2, .greeting .wrap .txt .flex2 li .btn_rsv3, .greeting .wrap .txt .flex2 li .btn_rsv4 {
  font-weight: normal;
  font-size: 1.4rem;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
}
.greeting .wrap .txt .flex2 li .btn_doc {
  background: #28c8f0;
}
.greeting .wrap .txt .flex2 li .btn_blg {
  background: #ff9f09;
}
.greeting .wrap .txt img.img_deco_awa {
  position: absolute;
  top: -4rem;
  left: -1.6rem;
  z-index: -1;
}
.greeting .wrap figure {
  order: 1;
  margin: 3rem auto;
}
.greeting .wrap figure img {
  width: 100%;
}

.wave_medical, .wave_zaitaku {
  background: url("../img/wave_medical.png") repeat-x center center/contain;
  height: 2rem;
}

@media screen and (min-width: 48em), print {
  .greeting {
    padding: 0 0 7.6rem;
  }
  .greeting .wrap {
    margin: 1rem auto 0;
    padding: 0 1rem;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
  .greeting .wrap .txt {
    order: 1;
    width: 72.2rem;
    margin: 4rem 0 0 0;
  }
  .greeting .wrap .txt p {
    font-size: 1.8rem;
    margin: 0 0 3rem;
  }
  .greeting .wrap .txt .flex2 {
    width: 100%;
  }
  .greeting .wrap .txt .flex2 li .btn_rsv, .greeting .wrap .txt .flex2 li .btn_rsv2, .greeting .wrap .txt .flex2 li .btn_rsv3, .greeting .wrap .txt .flex2 li .btn_rsv4 {
    font-size: 2rem;
    width: 35rem;
    height: 6rem;
  }
  .greeting .wrap .txt img.img_deco_awa {
    top: -7rem;
    left: -7.6rem;
  }
  .greeting .wrap figure {
    order: 2;
    width: 43.1rem;
    margin: 0;
  }
  .wave_medical, .wave_zaitaku {
    background: url("../img/wave_medical.png") repeat-x center center/auto;
    height: 3.8rem;
  }
}
.tre {
  margin-top: 0 !important;
  margin: 8rem 0 0 0;
  background: #c8f4ff;
  background-size: contain;
  padding: 3rem 0;
}
.tre .subnav {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 1rem;
}
.tre .subnav li {
  position: relative;
  width: 8rem;
  height: 13rem;
  margin: 0 1rem 0 0;
}
.tre .subnav li:nth-child(3n+3) {
  margin: 0;
}
.tre .subnav li a {
  text-decoration: none;
  color: #333;
  text-align: center;
  position: relative;
  display: block;
  padding: 8.5rem 0 0 0;
  font-size: 1.2rem;
}
.tre .subnav li a span::before {
  font-family: fontello;
  content: "\e91f";
  margin: 0 0.4rem 0 0;
  color: #50cae8;
}
.tre .subnav li a span span.fsdown {
  font-size: 1rem;
}
.tre .subnav li a span span.fsdown::before {
  content: "";
}
.tre .subnav li a::before {
  border-radius: 50%;
  content: "";
  background: #50cae8;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 8rem;
  height: 8rem;
}
.tre .subnav li a::after {
  font-family: fontello;
  content: "\e932";
  position: absolute;
  color: #fff;
  top: -1rem;
  left: 0;
  right: 0;
  margin: auto;
  z-index: 1;
  font-size: 6.3rem;
}
.tre .subnav li:nth-child(2) a::after {
  content: "\e930";
}
.tre .subnav li:nth-child(3) a::after {
  content: "\e92b";
}
.tre .subnav li:nth-child(4) a::after {
  content: "\e92d";
}
.tre .subnav li:nth-child(5) a::after {
  content: "\e931";
}
.tre .subnav li:nth-child(6) a::after {
  content: "\e92c";
}
.tre .subnav li:nth-child(7) a::after {
  content: "\e92e";
}
.tre .subnav li:nth-child(8) a::after {
  content: "\e935";
}
.tre .subnav li:nth-child(9) a::after {
  content: "\e92f";
}
.tre .subnav li:nth-child(10) a::after {
  content: "\e92a";
}
.tre .subnav li:nth-child(11) a::after {
  content: "\e933";
}
.tre .subnav li:nth-child(12) a::after {
  content: "\e934";
}
.tre .subnav li:nth-child(13) a::after {
  content: "\e937";
  font-size: 4em;
  margin-top: 1.2rem;
}
.tre .subnav li:nth-child(14) a::after {
  content: "\e936";
  font-size: 4em;
  margin-top: 1.2rem;
}

.wave_tre {
  background: url("../img/wave_tre.png") repeat-x center center/contain;
  height: 3.1rem;
}

@media screen and (min-width: 48em), print {
  .tre {
    margin-top: 0 !important;
    padding: 3.5rem 0 1rem;
    background: url("../img/bg_fish_l.png"), url("../img/bg_fish_r.png");
    background-repeat: no-repeat, no-repeat;
    background-position: left 1rem top 20.5rem, right 1rem top 52.5rem;
    background-color: #c8f4ff;
  }
  .tre .subnav {
    width: 118rem;
    margin: 3.6rem auto 0;
    -webkit-justify-content: left;
    justify-content: left;
    gap: 3rem;
  }
  .tre .subnav li {
    width: 17rem;
    height: auto;
    margin: 0 0 5rem;
  }
  .tre .subnav li a {
    font-size: 2rem;
    padding: 18rem 0 0 0;
    line-height: 1.2;
  }
  .tre .subnav li a span span.fsdown {
    font-size: 1.6rem;
  }
  .tre .subnav li a::before {
    width: 100%;
    height: 17rem;
  }
  .tre .subnav li a::after {
    font-size: 14rem;
    top: 0;
  }
  .tre .subnav li:nth-child(13) a::after {
    margin-top: 3.2rem;
  }
  .tre .subnav li:nth-child(14) a::after {
    margin-top: 3.2rem;
  }
  .wave_tre {
    background: url("../img/wave_tre.png") repeat-x center center/auto;
    height: 19.3rem;
  }
}
.feature {
  margin: 0 !important;
  padding: 3rem 1rem;
  background: #74d8f1;
}
.feature .tit_02 {
  color: #fff;
}
.feature .tit_02 span {
  color: #fff;
}
.feature .feature_wrapper {
  margin: 4rem auto 0;
}
.feature .feature_wrapper .box {
  position: relative;
  margin: 0 0 4rem;
  text-align: center;
}
.feature .feature_wrapper .box .num {
  border-radius: 50%;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  background: #0075be;
  color: #fff;
  font-family: "Quicksand", sans-serif;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  width: 4rem;
  height: 4rem;
  top: -1.8rem;
  font-size: 2rem;
}
.feature .feature_wrapper .box img {
  border-radius: 0.6rem;
  width: 100%;
}
.feature .feature_wrapper .box .txt {
  display: inline-block;
  background: #fff;
  border-radius: 0.6rem;
  margin: -1rem auto 0;
  width: 95%;
  padding: 2rem 2rem 5rem 2rem;
}
.feature .feature_wrapper .box .txt p {
  margin: 0 0 2rem;
  text-align: left;
}
.feature .feature_wrapper .box .txt p.tit {
  margin: 0 0 1rem;
  color: #0075be;
  font-weight: bold;
  text-align: center;
  line-height: 1;
  font-size: 1.8rem;
}
.feature .feature_wrapper .box .txt .btn_rsv, .feature .feature_wrapper .box .txt .btn_rsv3, .feature .feature_wrapper .box .txt .btn_rsv4, .feature .feature_wrapper .box .txt .btn_rsv2 {
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  width: 80%;
  font-size: 1.4rem;
}
.feature .feature_wrapper .box .txt .btn_rsv::before, .feature .feature_wrapper .box .txt .btn_rsv2::before, .feature .feature_wrapper .box .txt .btn_rsv3::before, .feature .feature_wrapper .box .txt .btn_rsv4::before {
  content: "\e926";
}
.feature .feature_wrapper .box .txt .btn_rsv2::before, .feature .feature_wrapper .box .txt .btn_rsv4::before {
  content: "\e91f";
}

.wave_features {
  background: #74d8f1 url("../img/wave_features.png") repeat-x center center/contain;
  height: 1.8rem;
}

@media screen and (min-width: 48em), print {
  .feature {
    padding: 0;
    background: url("../img/bg_awa_l.png"), url("../img/bg_awa_r.png");
    background-repeat: no-repeat, no-repeat;
    background-position: left 1rem top 25.2rem, right 1rem top 52.5rem;
    background-color: #74d8f1;
  }
  .feature .feature_wrapper {
    width: 1200px;
    padding: 0 1rem;
    margin: 6rem auto 0;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .feature .feature_wrapper .box {
    margin: 0 0 5.7rem;
    width: 36rem;
    height: 44rem;
  }
  .feature .feature_wrapper .box .num {
    font-size: 3rem;
    width: 6rem;
    height: 6rem;
    top: -3rem;
  }
  .feature .feature_wrapper .box .txt {
    width: 34rem;
    height: 25rem;
    padding: 2.2rem;
    top: 19rem;
    left: 0;
    right: 0;
    position: absolute;
  }
  .feature .feature_wrapper .box .txt p {
    font-size: 1.6rem;
    line-height: 1.45;
    margin: 0;
  }
  .feature .feature_wrapper .box .txt p.tit {
    font-size: 2.4rem;
    margin: 0 0 1.6rem;
  }
  .feature .feature_wrapper .box .txt .btn_rsv, .feature .feature_wrapper .box .txt .btn_rsv2, .feature .feature_wrapper .box .txt .btn_rsv3, .feature .feature_wrapper .box .txt .btn_rsv4 {
    font-size: 1.8rem;
  }
  .feature .feature_wrapper .box .txt .btn_rsv2, .feature .feature_wrapper .box .txt .btn_rsv4 {
    font-size: 1.6rem;
  }
  .feature .feature_wrapper .box .txt .btn_rsv, .feature .feature_wrapper .box .txt .btn_rsv3, .feature .feature_wrapper .box .txt .btn_rsv4, .feature .feature_wrapper .box .txt .btn_rsv2 {
    bottom: 1.7rem;
    width: 28.7rem;
    height: 4.2rem;
  }
  .wave_features {
    background: #74d8f1 url("../img/wave_features.png") repeat-x center center/auto;
    height: 11rem;
  }
}
/*ビューポートの幅にフィットする外枠*/
.loopWrap {
  background: #fff;
  overflow: hidden;
  margin: 2rem 0 3rem;
  /*幅からはみ出てしまうものを見えないようにする*/
}

.loopSlide {
  background: url(../img/img_slider.jpg) repeat-x;
  /*画像データ　1枚画像*/
  background-size: contain;
  height: 10.8rem;
  width: 305.1rem;
  /*画像幅（3倍にした数値）を指定 表示枚数の変更があったら数値変更*/
  -webkit-animation: slide 100s linear infinite;
  animation: slide 100s linear infinite;
  /*アニメーションの実行時間、進行速度の割合、繰り返し回数*/
}

/*画像が左から右に無限ループするような動き*/
@-webkit-keyframes slide {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  100% {
    -webkit-transform: translate3d(-1993px, 0, 0);
    transform: translate3d(-1993px, 0, 0);
    /*画像表示サイズの幅移動*/
  }
}
@keyframes slide {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  100% {
    -webkit-transform: translate3d(-1993px, 0, 0);
    transform: translate3d(-1993px, 0, 0);
    /*画像表示サイズの幅移動*/
  }
}
@media (min-width: 768px) {
  .loopWrap {
    overflow: hidden;
    margin: 0 0 6rem;
  }
  .loopSlide {
    height: 21.6rem;
    width: 610.2rem;
    background-size: auto;
    /*pc用のサイズリセット変更*/
  }
}
.zaitaku {
  margin-top: 0 !important;
  margin: 8rem 0 0 0;
  background: #c8f4ff;
  background-size: contain;
  padding: 3rem 1rem;
}
.zaitaku .tit_02 {
  color: #047996;
}
.zaitaku .tit_02 span {
  font-size: 2rem;
}
.zaitaku .tit_02 span.line_white {
  font-size: 2.2rem;
  background: linear-gradient(transparent 80%, #fff 80%);
  display: inline;
  color: #047996;
}
.zaitaku .tit_02::before {
  background: none;
  width: 0;
  height: 0;
}
.zaitaku .catch {
  background: #fff;
  text-align: center;
  border-radius: 1rem;
  border: 0.3rem #b6e9f6 solid;
  color: #047996;
  font-weight: bold;
  margin: 2rem auto;
  padding: 1rem;
}
.zaitaku .zaitaku_wrapper {
  margin: 0 0 2rem;
}
.zaitaku .zaitaku_wrapper figure {
  margin: 0 0 2rem;
  text-align: center;
}
.zaitaku .zaitaku_wrapper figure img {
  width: 90%;
}
.zaitaku .zaitaku_wrapper .lst_zaitaku li {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
}
.zaitaku .zaitaku_wrapper .lst_zaitaku li::before {
  content: "";
  display: inline-block;
  width: 5rem;
  height: 5rem;
  margin: 0 1rem 0 0;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top center;
}
.zaitaku .zaitaku_wrapper .lst_zaitaku li:first-of-type::before {
  background-image: url("../img/icon_blue.png");
}
.zaitaku .zaitaku_wrapper .lst_zaitaku li:nth-of-type(2)::before {
  background-image: url("../img/icon_orange.png");
}
.zaitaku .zaitaku_wrapper .lst_zaitaku li:last-of-type::before {
  background-image: url("../img/icon_yellow.png");
}
.zaitaku .zaitaku_wrapper .lst_btn {
  margin: 2rem 0 0 0;
}
.zaitaku .zaitaku_wrapper .lst_btn li a {
  font-weight: normal;
  width: 100%;
  display: block;
  margin: 0 0 1rem;
  text-align: left;
  padding: 0.4rem 0 0.4rem 2rem;
  font-size: 1.4rem;
}
.zaitaku .bnr_stomach {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 2rem auto 0;
}
.zaitaku .bnr_stomach .img_stomach {
  border-radius: 1rem 1rem 0 0;
  width: 100%;
}
.zaitaku .bnr_stomach .txt {
  border-radius: 0 0 1rem 1rem;
  background: #fff;
  padding: 1rem;
  width: 100%;
}
.zaitaku .bnr_stomach .txt p {
  text-align: center;
  margin: 0;
  font-size: 1.4rem;
}
.zaitaku .bnr_stomach .txt p.tit {
  color: #005f9b;
  font-family: "Kosugi Maru", sans-serif;
  font-size: 1.6rem;
  margin: 0 0 1rem;
}
.zaitaku .bnr_stomach .txt p.tit span {
  background: linear-gradient(transparent 80%, #c4e8ff 80%);
}
.zaitaku .bnr_stomach .txt .btn_rsv, .zaitaku .bnr_stomach .txt .btn_rsv2, .zaitaku .bnr_stomach .txt .btn_rsv3, .zaitaku .bnr_stomach .txt .btn_rsv4 {
  font-weight: normal;
  font-size: 1.2rem;
  margin: 0.8rem auto 0;
  display: block;
  width: 70%;
}
.zaitaku .bnr_other {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 2rem auto 0;
}
.zaitaku .bnr_other .img_other {
  border-radius: 1rem 1rem 0 0;
  width: 100%;
}
.zaitaku .bnr_other .txt {
  border-radius: 0 0 1rem 1rem;
  background: #fff;
  padding: 1rem;
  width: 100%;
}
.zaitaku .bnr_other .txt p {
  text-align: center;
  margin: 0;
  font-size: 1.4rem;
  position: relative;
  font-family: "Kosugi maru", serif;
}
.zaitaku .bnr_other .txt p.tit {
  text-align: left !important;
  font-family: "Kosugi Maru", sans-serif;
  font-size: 1.4rem;
  margin: 0 0 0 1rem;
}
.zaitaku .bnr_other .txt p.tit span {
  color: #049e9f;
  font-size: 1.6rem;
}
.zaitaku .bnr_other .txt p.tit::after {
  content: "";
  background: url(../img/index_bnrArea01_bg03.svg) no-repeat center/contain;
  display: block;
  width: 5rem;
  height: 3rem;
  position: absolute;
  top: -0.5rem;
  right: 0;
}
.zaitaku .bnr_other .txt p.clinic {
  text-align: center;
}
.zaitaku .bnr_other .txt p.clinic span {
  font-size: 2.2rem;
}
.zaitaku .bnr_other .txt .btn_link {
  font-family: "Kosugi maru", serif;
  font-weight: normal;
  font-size: 1.2rem;
  margin: 0.8rem auto 0;
  display: block;
  width: 100%;
  background: #ff8c27;
  color: #fff;
  border-radius: 3rem;
  padding: 0.4rem 2rem;
  justify-content: center;
  align-items: center;
  text-align: center;
}
.zaitaku .bnr_other .txt .btn_link::before {
  font-family: fontello;
  content: "\e91f";
  font-weight: normal;
  margin: 0 1rem 0 0;
}

.wave_zaitaku {
  position: relative;
}
.wave_zaitaku::before {
  content: "";
  background: url("../img/h2_yadokari.png") no-repeat center center/contain;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  height: 3rem;
}

.wave_overview {
  background: #c8f4ff url("../img/wave_overview.png") repeat-x center center/contain;
  height: 2rem;
}

@media screen and (min-width: 48em), print {
  .zaitaku {
    margin-top: 0 !important;
    padding: 3.5rem 0 7rem;
    background: url("../img/bg_fish_l.png"), url("../img/bg_fish_r.png");
    background-repeat: no-repeat, no-repeat;
    background-position: left 1rem top 27.5rem, right 1rem top 72.5rem;
    background-color: #c8f4ff;
  }
  .zaitaku .tit_02 {
    font-size: 3.2rem;
  }
  .zaitaku .tit_02 span.line_white {
    font-size: 3.6rem;
  }
  .zaitaku .catch {
    font-size: 2rem;
    border: 0.6rem #b6e9f6 solid;
    width: 80rem;
    height: 9.3rem;
    padding: 1rem 0 0 0;
    margin: 3rem auto;
  }
  .zaitaku .zaitaku_wrapper {
    width: 1200px;
    margin: 0 auto;
    padding: 0 1rem;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
  }
  .zaitaku .zaitaku_wrapper figure {
    margin: 0 2.2rem 0 0;
  }
  .zaitaku .zaitaku_wrapper figure img {
    width: auto;
  }
  .zaitaku .zaitaku_wrapper .lst_zaitaku li {
    font-size: 1.8rem;
    padding-left: 0;
    /*text-indent: -6.2rem;*/
    margin: 0 0 1.8rem;
  }
  .zaitaku .zaitaku_wrapper .lst_zaitaku li::before {
    width: 5rem;
    height: 5rem;
    margin: 0 1.4rem 0 0;
    background-position: center center;
  }
  .zaitaku .zaitaku_wrapper .lst_btn {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 76rem;
    margin: 4rem 0 0 0;
  }
  .zaitaku .zaitaku_wrapper .lst_btn li {
    margin: 0 0 1.4rem;
  }
  .zaitaku .zaitaku_wrapper .lst_btn li a {
    font-size: 1.8rem;
    width: 24.4rem;
    height: 5rem;
    text-align: center;
    margin: auto;
    padding: 0.4rem 2rem;
    display: -webkit-flex;
    display: flex;
  }
  .zaitaku .img_c {
    margin: 2rem auto 4rem;
  }
  .zaitaku .bnr_stomach {
    width: 80rem;
    height: 19rem;
    margin: 0 auto;
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
  }
  .zaitaku .bnr_stomach .img_stomach {
    border-radius: 1rem 0 0 1rem;
    width: auto;
  }
  .zaitaku .bnr_stomach .txt {
    border-radius: 0 1rem 1rem 0;
    width: 49.7rem;
    padding: 1rem 0;
  }
  .zaitaku .bnr_stomach .txt p {
    font-size: 1.8rem;
  }
  .zaitaku .bnr_stomach .txt p.tit {
    text-align: center;
    font-size: 2.2rem;
    margin: 0 0 1rem;
    line-height: 1.4;
  }
  .zaitaku .bnr_stomach .txt .btn_rsv, .zaitaku .bnr_stomach .txt .btn_rsv2, .zaitaku .bnr_stomach .txt .btn_rsv3, .zaitaku .bnr_stomach .txt .btn_rsv4 {
    width: 20rem;
    height: 4rem;
    margin: 0 auto;
    font-size: 1.6rem;
    display: -webkit-flex;
    display: flex;
  }
  .zaitaku .bnr_other {
    width: 80rem;
    height: 19rem;
    margin: 0 auto;
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
  }
  .zaitaku .bnr_other .img_other {
    border-radius: 1rem 0 0 1rem;
    width: auto;
  }
  .zaitaku .bnr_other .txt {
    border-radius: 0 1rem 1rem 0;
    width: 49.7rem;
    padding: 1rem 0;
  }
  .zaitaku .bnr_other .txt p {
    font-size: 1.8rem;
    text-align: center;
  }
  .zaitaku .bnr_other .txt p.tit {
    /*text-align: center;*/
    font-size: 1.8rem;
    margin: 1rem 0 0 6.5rem;
    line-height: 1.4;
  }
  .zaitaku .bnr_other .txt p.tit span {
    font-size: 2.2rem;
  }
  .zaitaku .bnr_other .txt p.tit::after {
    width: 7rem;
    height: 5rem;
    top: -1.5rem;
    right: 5rem;
  }
  .zaitaku .bnr_other .txt p.clinic {
    text-align: center;
  }
  .zaitaku .bnr_other .txt p.clinic span {
    font-size: 3.5rem;
  }
  .zaitaku .bnr_other .txt p.last {
    /*margin-bottom: 0.5rem;*/
  }
  .zaitaku .bnr_other .txt .btn_link {
    width: 80%;
    height: 4rem;
    margin: 0 auto;
    font-size: 1.6rem;
    background: #ff8c27;
    display: -webkit-flex;
    display: flex;
  }
  .wave_zaitaku::before {
    width: 6rem;
    height: 5.2rem;
  }
  .wave_overview {
    height: 3.8rem;
    background: #c8f4ff url("../img/wave_overview.png") repeat-x center center/auto;
  }
}
body:not(.index) .main {
  margin: 0 1rem;
}
@media screen and (min-width: 48em), print {
  body:not(.index) .main {
    margin: 10rem auto 0;
  }
  body:not(.index) .main .img_r {
    max-width: 35%;
  }
}
body:not(.index) .main .mt40_sp {
  margin-top: 4rem !important;
}
@media screen and (min-width: 48em), print {
  body:not(.index) .main .mt40_sp {
    margin-top: 0 !important;
  }
}
body:not(.index) .main .tit_02 {
  margin: 0 0 2rem;
}
@media screen and (min-width: 48em), print {
  body:not(.index) .main .tit_02 {
    margin: 0 0 4rem;
  }
}
body:not(.index) .main .btn_detail, body:not(.index) .main .btn_rsv, body:not(.index) .main .btn_rsv2, body:not(.index) .main .btn_rsv3, body:not(.index) .main .btn_rsv4, body:not(.index) .main .btn_tel {
  width: 60%;
  margin: 1rem auto;
  display: block;
}
@media screen and (min-width: 48em), print {
  body:not(.index) .main .btn_detail, body:not(.index) .main .btn_rsv, body:not(.index) .main .btn_rsv2, body:not(.index) .main .btn_rsv3, body:not(.index) .main .btn_rsv4, body:not(.index) .main .btn_tel {
    font-size: 1.8rem;
    padding: 2rem 1.3rem;
    width: 30%;
    margin: 0 auto;
    border-radius: 4rem;
    margin: 0 0 2rem;
  }
}
body:not(.index) .main .btn_detail.-w75, body:not(.index) .main .btn_rsv.-w75, body:not(.index) .main .-w75.btn_rsv2, body:not(.index) .main .-w75.btn_rsv3, body:not(.index) .main .-w75.btn_rsv4, body:not(.index) .main .btn_tel.-w75 {
  width: 75%;
}
body:not(.index) .main .flex2 .btn_detail, body:not(.index) .main .flex2 .btn_tel, body:not(.index) .main .flex3 .btn_detail, body:not(.index) .main .flex3 .btn_tel, body:not(.index) .main .flex4 .btn_detail, body:not(.index) .main .flex4 .btn_tel {
  width: 100%;
  display: block;
  margin: 0;
}
@media screen and (min-width: 48em), print {
  body:not(.index) .main .flex2 .box_clr, body:not(.index) .main .flex3 .box_clr, body:not(.index) .main .flex4 .box_clr {
    width: 48%;
  }
}
body:not(.index) .bar {
  background: #c8f4ff;
  padding: 0.2rem 0.8rem;
  width: 100%;
  color: #fff;
}
body:not(.index) .ans {
  background: #50cae8;
  padding: 0.2rem 0.6rem;
  color: #fff;
  margin: 0 0.6rem 0 0;
}
@media screen and (min-width: 48em), print {
  body:not(.index) .flex_flow {
    width: 100%;
    margin: 0;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: center;
    align-items: center;
  }
}

#clinicslide01 img, #clinicslide01 p, #clinicslide02 img, #clinicslide02 p, #home_medical_care01 img, #home_medical_care01 p {
  display: none;
}

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

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

.device .photo img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto 2rem;
}
.device .photo img.tate {
  max-width: 65%;
}

@media screen and (min-width: 48em), print {
  .device {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .device .tit_03 {
    width: 100%;
  }
  .device .txt {
    width: 40%;
  }
  .device .photo {
    width: 55%;
  }
  .device .photo img {
    max-width: 100%;
  }
  .device .photo img.tate {
    width: 40%;
  }
}
.tel_inline .tel {
  display: inline-block;
  font-size: 1.8rem;
}
.tel_inline .tel::before {
  content: "";
}
@media screen and (min-width: 48em), print {
  .tel_inline .tel {
    font-size: 2rem;
  }
}

.flow {
  width: 100%;
}
.flow dt {
  font-weight: bold;
}
.flow dd {
  margin: 0 0 6rem;
  position: relative;
}
.flow dd .btn_rsv, .flow dd .btn_rsv2, .flow dd .btn_rsv3, .flow dd .btn_rsv4 {
  display: inline-block;
  padding: 0 3rem;
  margin: 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 #0075be;
  border-right: 3rem solid transparent;
  border-bottom: 1rem solid transparent;
  border-left: 3rem solid transparent;
  margin: auto;
}

.access .main .tel {
  font-size: 120%;
  color: #333;
  background: none;
  padding: 0;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
}
.access .gmap {
  height: 30rem;
  margin: 2rem 0;
}

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

.tbl_list tr th, .tbl_list tr td {
  text-align: left;
}

@media screen and (min-width: 48em), print {
  .tbl_price tr th, .tbl_list tr th, .tbl_price tr td, .tbl_list tr td {
    display: table-cell;
    padding: 2rem;
  }
  .tbl_price tr th, .tbl_list tr th {
    width: 65%;
    border-bottom: 1px solid #ccc;
  }
  .tbl_price tr:not(:last-child) td, .tbl_list tr:not(:last-child) td {
    border-bottom: 1px solid #ccc;
  }
  .tbl_price.-w45 tr th, .-w45.tbl_list tr th {
    width: 45%;
  }
  .tbl_list tr th {
    width: 40%;
  }
}
.privacy_policy dt {
  text-align: center;
  padding: 0.6rem 0.4rem;
}
.privacy_policy dt span {
  background-color: #CC0000;
  border-radius: 3px;
  color: #fff;
  font-size: 50%;
  padding: 0rem 0.4rem;
  margin-left: 0.4rem;
  display: inline-block;
  letter-spacing: 0.04rem;
  transform: translateY(-1px);
}
.privacy_policy dd {
  height: 30rem;
  overflow-y: scroll;
  background-color: #F6F7F9;
  box-shadow: 0px 0px 10px -6px rgba(0, 0, 0, 0.6) inset;
  margin-top: 1rem;
}
.privacy_policy dd .privacy_tit {
  text-align: center;
  font-weight: bold;
  line-height: 1.25;
}
.privacy_policy dd .privacy_ol > li {
  counter-increment: number 1;
  margin-bottom: 1.5rem;
}
.privacy_policy dd .privacy_ol > li span {
  display: block;
  margin-bottom: 0.1rem;
}
.privacy_policy dd .privacy_ol > li span::before {
  content: counter(number) ".";
  letter-spacing: 0.1rem;
  margin-right: 0.4rem;
}
.privacy_policy dd .privacy_ul {
  margin-top: 0.5rem;
}
.privacy_policy dd .privacy_ul li {
  text-indent: -1.8rem;
  padding-left: 2.2rem;
  line-height: 1.4;
  margin-bottom: 0.6rem;
}
.privacy_policy dd .privacy_ul li::before {
  content: "●";
  margin-right: 0.6rem;
  color: #333;
  font-size: 50%;
}
@media screen and (min-width: 48em), print {
  .privacy_policy dt {
    padding: 0.8rem 1rem;
  }
  .privacy_policy dd {
    padding: 1rem 5rem;
  }
}

.form-btn {
  margin: 0;
  padding: 0;
  list-style: none;
}
.form-btn.disabled {
  cursor: not-allowed;
}
.form-btn .btn_rsv3 {
  transition: filter 0.25s, color 0.15s 0.15s ease;
  pointer-events: auto;
}
.form-btn .btn_rsv3[aria-disabled=true] {
  filter: saturate(0) contrast(0.3) brightness(130%);
  pointer-events: none;
}
.form-btn .btn_rsv3:hover {
  transition: color 0.15s 0.06s ease;
}
@media screen and (min-width: 48em), print {
  .form-btn {
    margin: 2rem auto 0;
  }
  .form-btn .btn_rsv3 {
    margin: 0 auto !important;
  }
}

.vaccination .btn_detail {
  width: 100% !important;
  padding-left: 3.5rem;
  text-indent: -2.3rem;
  text-align: left;
}

@media screen and (min-width: 48em), print {
  .vaccination .btn_detail {
    width: 60% !important;
    padding-left: 0;
    text-indent: 0;
    text-align: center;
  }
}
@media screen and (min-width: 48em), print {
  .box_male {
    width: 50%;
    margin: auto;
  }
  .box_male .btn_detail {
    width: 100% !important;
  }
}
.notice {
  color: red;
  font-size: 1.8rem;
  font-weight: bold;
  text-align: center;
  margin-bottom: 1.5rem;
}

@media screen and (min-width: 48em), print {
  .notice {
    font-size: 2.4rem;
  }
  .notice p {
    margin: 0;
  }
}/*# sourceMappingURL=style.css.map */