@charset "UTF-8";
/*********************************************************
全体
*********************************************************/
* {
  box-sizing: border-box;
}

body {
  color: #464646;
  font-family: Avenir, "Helvetica neue", Helvetica, "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  -webkit-text-size-adjust: 100%;
  line-height: 1.5;
}

li {
  list-style: none;
}

img {
  height: auto;
  max-width: 100%;
  vertical-align: bottom;
}

button,
input[type=submit],
input[type=reset] {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

span {
  font-weight: inherit;
}

.dib {
  display: inline-block;
}

/*********************************************************
全体
*********************************************************/
* {
  box-sizing: border-box;
}

body {
  color: #464646;
  font-family: Avenir, "Helvetica neue", Helvetica, "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  -webkit-text-size-adjust: 100%;
  line-height: 1.5;
}

li {
  list-style: none;
}

img {
  height: auto;
  max-width: 100%;
  vertical-align: bottom;
}

button,
input[type=submit],
input[type=reset] {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

span {
  font-weight: inherit;
}

.dib {
  display: inline-block;
}

/*********************************************************
全体
*********************************************************/
* {
  box-sizing: border-box;
}

body {
  color: #464646;
  font-family: Avenir, "Helvetica neue", Helvetica, "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  -webkit-text-size-adjust: 100%;
  line-height: 1.5;
}

li {
  list-style: none;
}

img {
  height: auto;
  max-width: 100%;
  vertical-align: bottom;
}

button,
input[type=submit],
input[type=reset] {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

span {
  font-weight: inherit;
}

.dib {
  display: inline-block;
}

/*********************************************************
全体
*********************************************************/
* {
  box-sizing: border-box;
}

body {
  color: #464646;
  font-family: Avenir, "Helvetica neue", Helvetica, "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  -webkit-text-size-adjust: 100%;
  line-height: 1.5;
}

li {
  list-style: none;
}

img {
  height: auto;
  max-width: 100%;
  vertical-align: bottom;
}

button,
input[type=submit],
input[type=reset] {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

span {
  font-weight: inherit;
}

.dib {
  display: inline-block;
}

/*********************************************************
ヘッダー
*********************************************************/
/*-----------------------
header
-----------------------*/
.header {
  background-image: url(image.php?id=003);
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  z-index: 100;
}

.header a:hover {
  opacity: 0.8;
}

.header__ttl {
  background: #6CBEDE;
}

.header__ttl h1 {
  color: #fff;
  font-size: 14px;
  padding-top: 5px;
  padding-bottom: 5px;
  box-sizing: border-box;
  margin-right: auto;
  margin-left: auto;
  max-width: 1000px;
}

@media (max-width: 1024px) {
  .header__ttl h1 {
    padding-right: 2%;
    padding-left: 2%;
  }
}
@media (max-width: 480px) {
  .header__ttl h1 {
    text-align: center;
  }
}
.header__contents {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 15px;
  box-sizing: border-box;
  margin-right: auto;
  margin-left: auto;
  max-width: 1000px;
}

@media (max-width: 1024px) {
  .header__contents {
    padding-right: 2%;
    padding-left: 2%;
  }
}
@media (max-width: 480px) {
  .header__contents {
    padding-bottom: 8px;
  }
}
.header__box01 {
  display: flex;
  flex-direction: column-reverse;
  flex-wrap: wrap;
}

@media (max-width: 1024px) {
  .header__box01 {
    display: block;
    text-align: right;
  }
}
@media (max-width: 480px) {
  .header__box01 {
    margin-right: 10px;
  }
}
/*-----------------------
header-contact
-----------------------*/
.header-contact {
  display: flex;
  align-items: center;
}

.header__reserve {
  display: inline-block;
  font-size: 14px;
  margin: 0 0 10px 40px;
  padding: 10px 0 0 35px;
  position: relative;
  z-index: 1;
}

@media (max-width: 1024px) {
  .header__reserve {
    background: #6CBEDE;
    border-radius: 15px;
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    margin: 10px 0 0 0;
    padding: 5px 15px;
  }
}
@media (max-width: 480px) {
  .header__reserve {
    font-size: 12px;
    padding: 2.5px 10px;
  }
}
@media (max-width: 380px) {
  .header__reserve {
    display: none;
  }
}
.header__reserve::before, .header__reserve::after {
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  position: absolute;
  top: 0;
  z-index: -1;
}

.header__reserve::before {
  left: 0;
  background-image: url(image.php?id=004);
  height: 40px;
  width: 40px;
}

@media (max-width: 1024px) {
  .header__reserve::before {
    top: -10px;
    left: -10px;
  }
}
.header__reserve::after {
  left: 180px;
  background-image: url(image.php?id=005);
  height: 20px;
  width: 20px;
}

@media (max-width: 1024px) {
  .header__reserve::after {
    right: 0;
    left: auto;
  }
}
.header__logo img {
  width: 300px;
}

/*-----------------------
header-tel
-----------------------*/
.header-tel {
  display: flex;
}

.header-tel__container {
  margin-right: 15px;
}

@media (max-width: 1024px) {
  .header-tel__container {
    margin-right: 5px;
  }
}
.header-tel__pc {
  display: flex;
  align-items: center;
}

@media (max-width: 1024px) {
  .header-tel__pc {
    display: none;
  }
}
.header-tel__ttl {
  background: #92D7E7;
  border-radius: 10px;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 60px;
  line-height: 1;
  margin-right: 5px;
  padding: 15px;
  position: relative;
  text-align: center;
  width: 60px;
}

.header-tel__ttl:before {
  border: 1px dashed #fff;
  border-radius: 10px;
  box-sizing: border-box;
  content: "";
  height: 50px;
  position: absolute;
  top: 5px;
  left: 5px;
  width: 50px;
}

.-beauty .header-tel__ttl {
  background: #ffafc7;
}

.header-tel__ttl p {
  font-size: 14px;
  font-weight: bold;
  line-height: 1;
}

.header-tel__ttl span {
  display: block;
}

.header-tel__box {
  border-radius: 15px;
  box-shadow: 3px 3px 8px #ccc;
  padding: 5px 10px;
}

.header-tel__txt {
  font-size: 12px;
  text-align: center;
}

.header-tel__num {
  color: #5a9fba;
  font-size: 24px;
  font-weight: bold;
  text-shadow: 0 4px 0 #c6dee7;
}

.header-tel__num img {
  display: inline-block;
  margin-right: 5px;
  vertical-align: middle;
  width: 15px;
}

.-beauty .header-tel__num {
  color: #DE6C8E;
  text-shadow: 0 4px 0 #f1bfce;
}

#modalopen {
  cursor: pointer;
}

.header-tel__sp a {
  text-decoration: none;
}

.header-tel__sp .header-tel__ttl {
  display: block;
  font-size: 13px;
  font-weight: bold;
  margin-right: 0;
  padding: 10px;
  position: relative;
  text-align: center;
  white-space: nowrap;
}

.header-tel__btntxt {
  line-height: 1.2;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.header-tel__sp .header-tel__icon {
  display: block;
  margin: 0 auto 3px;
  width: 15px;
}

@media (min-width: 1025px) {
  .header-tel__sp {
    display: none;
  }
}
/*-----------------------
header-reserve
-----------------------*/
@media (max-width: 1024px) {
  .header-reserve__pc {
    display: none;
  }
}
@media (min-width: 1025px) {
  .header-reserve__sp {
    display: none;
  }
}
@media (max-width: 1024px) {
  .header-reserve__sp {
    margin-right: 5px;
    width: 60px;
    height: 60px;
  }
}
@media (min-width: 1025px) {
  .header-reserve__spmenu {
    display: none;
  }
}
.header-reserve__ttl {
  background: #FFD267;
  border-radius: 10px;
  color: #fff;
  font-size: 13px;
  font-weight: bold;
  height: 60px;
  line-height: 1;
  padding: 10px;
  position: relative;
  text-align: center;
  width: 60px;
}

.header-reserve__ttl:before {
  border: 1px dashed #fff;
  border-radius: 10px;
  box-sizing: border-box;
  content: "";
  height: 50px;
  position: absolute;
  top: 5px;
  left: 5px;
  width: 50px;
}

.header-reserve__icon {
  display: block;
  margin: 0 auto 3px;
  width: 28px;
}

/*-----------------------
spmenu-btn
-----------------------*/
.spmenu-btn {
  box-sizing: border-box;
  background: #89b74f;
  border-radius: 10px;
  color: #fff;
  font-size: 13px;
  font-weight: bold;
  height: 60px;
  line-height: 1;
  padding: 10px;
  position: relative;
  text-align: center;
  width: 60px;
}

.spmenu-btn:before {
  border: 1px dashed #fff;
  border-radius: 10px;
  box-sizing: border-box;
  content: "";
  height: 50px;
  position: absolute;
  top: 5px;
  left: 5px;
  width: 50px;
}

.spmenu-btn p {
  display: block;
  position: absolute;
  width: 30px;
  border-bottom: solid 3px #fff;
  transition: 0.35s ease-in-out;
  left: 14px;
}

.spmenu-btn p:nth-child(1) {
  top: 14px;
}

.spmenu-btn p:nth-child(2) {
  top: 24px;
}

.spmenu-btn p:nth-child(3) {
  top: 34px;
}

.spmenu-btn.active p:nth-child(1) {
  top: 24px;
  left: 14px;
  transform: rotate(-45deg);
}

.spmenu-btn.active p:nth-child(2), .spmenu-btn.active p:nth-child(3) {
  top: 24px;
  transform: rotate(45deg);
}

.spmenu-btn span {
  display: block;
  padding: 30px 0 0 0;
  color: #fff;
  font-size: 14px;
}

/*-----------------------
mv
-----------------------*/
.mv {
  text-align: center;
}

.mv img {
  vertical-align: bottom;
}

/*-----------------------
popup-tel
-----------------------*/
.popup-tel {
  display: none;
}

/*********************************************************
電話予約モーダルウィンドウ
*********************************************************/
.overlay {
  background-color: rgba(0, 0, 0, 0.8);
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 101;
}

.modal {
  background: rgba(255, 255, 255, 0.5);
  padding: 15px;
  box-sizing: border-box;
  margin-right: auto;
  margin-left: auto;
  max-width: 1000px;
  border-radius: 5px;
  color: #fff;
  display: none;
  overflow: auto;
  padding: 15px;
  position: fixed;
  top: 50%;
  left: 50%;
  text-align: center;
  transform: translate(-50%, -50%);
  width: 95%;
  z-index: 102;
}

@media (max-width: 1024px) {
  .modal {
    padding-right: 2%;
    padding-left: 2%;
  }
}
@media (max-width: 768px) {
  .modal {
    height: auto;
  }
}
@media (max-width: 700px) {
  .modal {
    padding-top: 70px;
  }
}
.modal__inner {
  position: relative;
}

.modal__close {
  background-color: #6CBEDE;
  border-radius: 50%;
  color: #eaeaea;
  cursor: pointer;
  position: absolute;
  top: 0;
  right: 0;
  width: 50px;
  height: 50px;
}

@media (max-width: 700px) {
  .modal__close {
    top: -60px;
  }
}
.modal__close::before, .modal__close::after {
  background: #fff;
  border-radius: 2px;
  content: "";
  position: absolute;
  top: 45%;
  left: 25%;
  width: 25px;
  height: 5px;
}

.modal__close::before {
  transform: rotate(40deg);
}

.modal__close::after {
  transform: rotate(-40deg);
}

@media (min-width: 701px) {
  .modal__wrapper {
    display: flex;
    justify-content: space-between;
    padding-top: 80px;
  }
}
@media (min-width: 701px) {
  .modal__container {
    width: 48%;
  }
}
@media (max-width: 700px) {
  .modal__container:last-child {
    margin-top: 15px;
  }
}
.modal__container a {
  background: #92D7E7;
  border-radius: 10px;
  color: #fff;
  display: flex;
  align-items: center;
  line-height: 1;
  margin-left: auto;
  margin-right: auto;
  padding: 20px 30px;
  position: relative;
  text-align: center;
  text-decoration: none;
  width: 90%;
  max-width: 250px;
}

.modal__container a::before {
  border: 1px dashed #fff;
  border-radius: 10px;
  box-sizing: border-box;
  content: "";
  position: absolute;
  top: 10px;
  left: 10px;
  width: calc(100% - 20px);
  height: calc(100% - 20px);
}

.modal__container.-beauty a {
  background: #ffafc7;
}

.modal__icon {
  height: 40px;
  margin-right: 20px;
}

.modal__ttl {
  font-size: 16px;
  font-weight: bold;
  line-height: 1.3;
  text-align: left;
}

/*********************************************************
ナビゲーション
*********************************************************/
/*-----------------------
gnav
-----------------------*/
.gnav {
  background: #6CBEDE;
}

@media (max-width: 1024px) {
  .gnav {
    display: none;
  }
}
.gnav__list {
  display: flex;
}

@media (min-width: 1025px) {
  .gnav__list {
    box-sizing: border-box;
    margin-right: auto;
    margin-left: auto;
    max-width: 1000px;
  }
}
@media (min-width: 1025px) and (max-width: 1024px) {
  .gnav__list {
    padding-right: 2%;
    padding-left: 2%;
  }
}
@media (max-width: 1024px) {
  .gnav__list {
    flex-wrap: wrap;
  }
}
.gnav__item {
  border-right: 1px solid #fff;
  line-height: 1.3;
  text-align: center;
}

@media (min-width: 1025px) {
  .gnav__item {
    flex: 1;
  }
}
@media (max-width: 1024px) {
  .gnav__item {
    border-right: none;
    border-left: 1px solid #fff;
    width: 33.3%;
  }
}
@media (max-width: 480px) {
  .gnav__item {
    border-bottom: 1px solid #fff;
    font-size: 14px;
    width: 50%;
  }
}
.gnav__item:first-child {
  border-left: 1px solid #fff;
}

@media (max-width: 1024px) {
  .gnav__item:nth-child(3n) {
    border-right: 1px solid #fff;
  }
}
@media (max-width: 1024px) {
  .gnav__item:nth-child(n+4) {
    border-top: 1px solid #fff;
  }
}
.gnav__item a {
  color: #fff;
  display: block;
  padding: 20px 0;
  text-decoration: none;
}

.gnav__item a:hover {
  background: #42acd5;
}

/*-----------------------
gnav-sp
-----------------------*/
.gnav-sp {
  display: none;
}

@media (max-width: 1024px) {
  .gnav-sp {
    background: #fff;
    position: absolute;
    top: 0;
    left: 0;
    transform: translateY(-100%);
    transition: all 0.5s;
    width: 100%;
    z-index: 99;
  }
  .gnav-sp.active {
    display: block;
    transform: translateY(150px);
  }
}
@media (max-width: 1024px) and (max-width: 480px) {
  .gnav-sp.active {
    transform: translateY(110px);
  }
}
@media (max-width: 1024px) {
  .gnav-sp__menu {
    padding: 20px;
    box-sizing: border-box;
    background: rgba(0, 0, 0, 0.2);
  }
  .gnav-sp__menu p:nth-of-type(n+2) {
    margin: 10px 0 0 0;
  }
  .gnav-sp__text_1 {
    display: block;
    padding: 10px;
    background: #fff;
    color: #000;
    font-size: 20px;
    font-weight: bold;
    text-decoration: none;
  }
  .gnav-sp__text_2 a {
    position: relative;
    display: block;
    padding: 15px 50px;
    background: #fff;
    border-style: solid;
    border-color: #d3d3d3;
    border-width: 1px 0 0 0;
    color: #000;
    font-size: 20px;
    font-weight: normal;
    text-decoration: none;
  }
  .gnav-sp__text_2 a::before {
    color: #89B74F;
    content: "\f152";
    font-family: "Font Awesome 5 Free";
    position: absolute;
    top: 50%;
    left: 10px;
    transform: translate(0, -50%);
    font-size: 20px;
  }
}
/*********************************************************
メイン
*********************************************************/
/*-----------------------
main
-----------------------*/
.main {
  margin-top: 25px;
  margin-bottom: 100px;
  box-sizing: border-box;
  margin-right: auto;
  margin-left: auto;
  max-width: 1000px;
}

@media (max-width: 1024px) {
  .main {
    padding-right: 2%;
    padding-left: 2%;
  }
}
.main::after {
  clear: both;
  content: "";
  display: table;
}

/*********************************************************
コンテンツ
*********************************************************/
/*-----------------------
content
-----------------------*/
@media (min-width: 1025px) {
  .content {
    float: right;
    width: 74%;
  }
}
/*********************************************************
サイドナビ
*********************************************************/
/*-----------------------
sub
-----------------------*/
@media (min-width: 1025px) {
  .sub {
    float: left;
    width: 22%;
  }
}
.sub a:hover {
  opacity: 0.8;
}

.side-nav__contents {
  margin-top: 20px;
}

@media (max-width: 1024px) {
  .side-nav__contents:not(:nth-last-child(-n+3)) {
    display: none;
  }
}
.side-nav__contents:first-child {
  margin-top: 0;
}

/*-----------------------
snav-list
-----------------------*/
.snav-list {
  border-color: #128E16;
  border-style: solid;
  border-radius: 10px;
  border-width: 2px;
  overflow: hidden;
}

.snav-list.-color02 {
  border-color: #12608E;
}

.snav-list.-color03 {
  border-color: #AE2553;
}

.snav-list.-color04 {
  border-color: #8E1212;
}

.snav-list__ttl {
  font-size: 18px;
  font-weight: bold;
  padding: 12px 0;
  text-align: center;
}

.-color04 .snav-list__ttl {
  font-size: 16px;
}

.snav-list__txt {
  border-bottom: 2px solid #fff;
}

.snav-list__txt:last-child {
  border-bottom: none;
}

.snav-list__link {
  background: #c3d941;
  color: #fff;
  display: block;
  padding: 10px 10px 10px 40px;
  position: relative;
  text-decoration: none;
}

.snav-list__link::before, .snav-list__link::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.snav-list__link::before {
  left: 7px;
  background: #EF4123;
  border-radius: 50%;
  height: 23px;
  width: 23px;
}

.snav-list__link::after {
  left: 16px;
  border-color: transparent transparent transparent #fff;
  border-width: 4px 0 4px 6px;
  border-style: solid;
  height: 0;
  width: 0;
}

.-color02 .snav-list__link {
  background: #6CBEDE;
}

.-color02 .snav-list__link::before {
  background: #FDC702;
}

.-color03 .snav-list__link {
  background: #F48FB1;
}

.-color03 .snav-list__link::before {
  background: #6CBEDE;
}

.-color04 .snav-list__link {
  background: #FDC702;
}

.-color04 .snav-list__link::before {
  background: #00CED1;
}

/*********************************************************
index.html
*********************************************************/
/*-----------------------
top-banner
-----------------------*/
.top-banner__img {
  text-align: center;
}

.top-banner__img:nth-child(n+2) {
  margin-top: 20px;
}

/*-----------------------
top-menu
-----------------------*/
.top-menu {
  margin-top: 40px;
}

.top-menu__ttl {
  background-image: url(image.php?id=062);
  background-position: 0 8px;
  background-repeat: no-repeat;
  background-size: 22px 22px;
  font-size: 26px;
  font-weight: bold;
  padding-left: 36px;
}

.top-menu__ttl span {
  border-bottom: 1px solid #333;
}

.top-menu__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  text-align: center;
}

.top-menu__item {
  box-sizing: border-box;
  margin-top: 15px;
  padding: 0 10px;
  width: 33.3%;
}

.top-menu__item:last-child {
  padding: 0;
  width: 100%;
}

.top-menu__item a:hover {
  opacity: 0.8;
}

/*-----------------------
top-contents
-----------------------*/
.top-contents {
  margin-top: 80px;
}

.top-contents__ttl {
  font-size: 30px;
  font-weight: bold;
  line-height: 1.3;
  padding-left: 30px;
  position: relative;
  z-index: 1;
}

@media (max-width: 768px) {
  .top-contents__ttl {
    font-size: 25px;
  }
}
.top-contents__ttl::before {
  background: #6CBEDE;
  border-radius: 50%;
  content: "";
  height: 100px;
  position: absolute;
  top: -40px;
  left: 0;
  width: 100px;
  z-index: -1;
}

.top-contents__ttl strong {
  color: #6CBEDE;
}

.top-contents__ttl strong span {
  display: inline-block;
  font-size: 250%;
  line-height: 1;
  transform: rotate(8deg);
}

.top-contents__ttl02 {
  border-left: 8px solid #6CBEDE;
  font-size: 30px;
  font-weight: bold;
  line-height: 1.3;
  padding: 5px 0 5px 15px;
}

@media (max-width: 768px) {
  .top-contents__ttl02 {
    font-size: 25px;
  }
}
.top-content__ttl03 {
  border-bottom: 3px solid #6CBEDE;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.3;
  margin: 0 auto;
  padding-left: 110px;
  position: relative;
  width: 95%;
}

@media (max-width: 768px) {
  .top-content__ttl03 {
    font-size: 18px;
  }
}
@media (max-width: 480px) {
  .top-content__ttl03 {
    padding-left: 0;
    text-align: center;
  }
}
.top-content__ttl03 strong {
  color: #6CBEDE;
  font-size: 130%;
}

.top-content__point {
  background: #6CBEDE;
  border-radius: 10px;
  color: #fff;
  display: inline-block;
  font-size: 24px;
  padding: 10px 5px;
  position: absolute;
  bottom: -3px;
  left: -10px;
  text-align: center;
  white-space: nowrap;
  width: 110px;
}

@media (max-width: 768px) {
  .top-content__point {
    font-size: 20px;
  }
}
@media (max-width: 480px) {
  .top-content__point {
    display: block;
    margin-bottom: 10px;
    position: static;
  }
}
/*-----------------------
tc01-check
-----------------------*/
.tc01-check {
  margin-top: 30px;
}

.tc01-check__wrap {
  background-image: url(image.php?id=028);
  background-repeat: no-repeat;
  background-position: right 0 top 0;
  background-size: contain;
}

@media (max-width: 480px) {
  .tc01-check__wrap {
    background-image: url(image.php?id=067);
  }
}
.tc01-check__list {
  padding: 50px 0;
}

.tc01-check__item {
  line-height: 1;
  margin-top: 1em;
  padding-left: 14px;
  position: relative;
}

@media (max-width: 480px) {
  .tc01-check__item {
    padding-left: 18px;
  }
}
.tc01-check__item:first-child {
  margin-top: 0;
}

.tc01-check__item::before {
  content: "";
  background-image: url(image.php?id=064);
  background-repeat: no-repeat;
  background-size: contain;
  height: 18px;
  position: absolute;
  top: 0;
  left: 0;
  width: 16px;
}

.tc01-check__item p {
  border-bottom: 1px dotted #582B05;
  display: inline;
  padding: 0 10px;
}

@media (max-width: 480px) {
  .tc01-check__item p {
    font-size: 15px;
    line-height: 18px;
    padding: 0;
  }
}
.tc01-check__banner {
  margin: 50px auto 0;
  max-width: 730px;
}

@media (min-width: 481px) {
  .tc01-check__banner .pcnone {
    display: none;
  }
}
@media (max-width: 480px) {
  .tc01-check__banner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .tc01-check__banner li {
    width: 48%;
  }
}
.tc01-check__banner li:not(:first-child) {
  margin-top: 20px;
}

@media (max-width: 480px) {
  .tc01-check__banner li:not(:first-child) {
    margin-top: 0;
  }
  .tc01-check__banner li:nth-child(n+3) {
    margin-top: 20px;
  }
}
.tc01-check__banner a:hover {
  opacity: 0.8;
}

/*-----------------------
top-contents-box
-----------------------*/
.top-contents-box {
  display: flex;
  align-items: center;
}

@media (max-width: 768px) {
  .top-contents-box {
    display: block;
  }
}
.top-contents-box.-re {
  flex-direction: row-reverse;
}

.top-contents-box__img {
  margin-right: 15px;
}

@media (min-width: 769px) {
  .top-contents-box__img {
    width: 40%;
  }
}
@media (max-width: 768px) {
  .top-contents-box__img {
    margin-right: 0;
  }
}
.-re .top-contents-box__img {
  margin-right: 0;
  margin-left: 15px;
}

.top-contents-box__img img {
  border: 7px solid #fff;
  box-shadow: 0 0 7px #999;
  display: block;
  width: 537px;
}

@media (max-width: 768px) {
  .top-contents-box__img img {
    margin: 0 auto;
  }
}
.top-contents-box__txt {
  font-size: 18px;
}

@media (min-width: 769px) {
  .top-contents-box__txt {
    width: 60%;
  }
}
@media (max-width: 768px) {
  .top-contents-box__txt {
    margin-top: 10px;
  }
}
.top-contents-box__txt strong {
  color: #6CBEDE;
}

/*-----------------------
top-news
-----------------------*/
/* top-news */
.top-news {
  border: 1px solid #6CBEDE;
  margin-top: 30px;
}

.top-news__wrapper {
  display: flex;
}

@media (max-width: 768px) {
  .top-news__wrapper {
    display: block;
  }
}
.top-news__ttl {
  background: #6CBEDE;
  color: #fff;
  display: flex;
  align-items: center;
  font-size: 36px;
  font-weight: bold;
  padding: 0 30px;
  white-space: nowrap;
}

@media (max-width: 768px) {
  .top-news__ttl {
    display: block;
    padding: 10px 0;
    text-align: center;
  }
}
.top-news__contents {
  flex: 1;
  overflow: hidden;
}

.top-news__more {
  text-align: right;
}

.top-news__more a {
  color: #6CBEDE;
  font-size: 18px;
  font-weight: bold;
  padding-right: 30px;
  position: relative;
  text-decoration: none;
}

.top-news__more a:hover {
  opacity: 0.8;
}

.top-news__more a::before {
  content: "｜";
}

.top-news__more a::after {
  content: "";
  margin-top: -6px;
  position: absolute;
  top: 50%;
  right: 10px;
  border-color: transparent transparent transparent #6CBEDE;
  border-width: 6px 0 6px 12px;
  border-style: solid;
  height: 0;
  width: 0;
}

/* top-new-list */
.top-new-list {
  padding: 10px 10px 10px 30px;
}

@media (max-width: 480px) {
  .top-new-list {
    padding: 3%;
  }
}
.top-new-list__item {
  display: flex;
  align-items: center;
  margin-bottom: 10px;
  padding-left: 30px;
  position: relative;
}

@media (max-width: 480px) {
  .top-new-list__item {
    display: block;
    padding-left: 0;
  }
}
.top-new-list__item:last-child {
  margin-bottom: 0;
}

.top-new-list__item::before {
  content: "";
  margin-top: -4px;
  position: absolute;
  top: 50%;
  left: 0;
  border-color: transparent transparent transparent #000;
  border-width: 4px 0 4px 8px;
  border-style: solid;
  height: 0;
  width: 0;
}

@media (max-width: 480px) {
  .top-new-list__item::before {
    display: none;
  }
}
@media (max-width: 480px) {
  .top-new-list__date {
    display: inline-block;
  }
}
.top-new-list__cat {
  background: #2680eb;
  border-radius: 10px;
  color: #fff;
  font-size: 12px;
  font-weight: bold;
  margin: 0 30px;
  padding: 3px 0;
  text-align: center;
  white-space: nowrap;
  width: 80px;
  max-width: 80px;
  min-width: 80px;
}

@media (max-width: 480px) {
  .top-new-list__cat {
    display: inline-block;
    font-size: 12px;
    margin: 0 0 0 40px;
  }
}
.-blog .top-new-list__cat {
  background: #a3eb26;
}

.top-new-list__ttl {
  overflow: hidden;
}

.top-new-list__ttl a {
  color: #333;
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.top-new-list__ttl a:hover {
  text-decoration: none;
}

@media (max-width: 480px) {
  .top-new-list__ttl {
    display: block;
    font-size: 18px;
    font-weight: bold;
    margin-top: 5px;
  }
}
/*-----------------------
tc02
-----------------------*/
.tc02 .top-contents-box {
  margin-top: 60px;
}

/* tc02-list */
.tc02-list {
  margin-top: 30px;
}

.tc02-list__item {
  position: relative;
  margin-top: 3px;
}

@media (max-width: 480px) {
  .tc02-list__item {
    margin-top: 60px;
  }
}
.tc02-list__item:first-child {
  margin-top: 0;
}

@media (max-width: 480px) {
  .tc02-list__item:first-child {
    margin-top: 60px;
  }
}
.tc02-list__num {
  background: #fff;
  border: 1px solid #6CBEDE;
  border-radius: 50%;
  font-size: 48px;
  font-weight: bold;
  height: 80px;
  line-height: 80px;
  margin-top: -40px;
  position: absolute;
  top: 50%;
  left: 0;
  text-align: center;
  width: 80px;
}

@media (max-width: 480px) {
  .tc02-list__num {
    top: 0;
    left: 50%;
    margin-left: -40px;
  }
}
.tc02-list__txt {
  background: #6CBEDE;
  border-radius: 10px;
  font-size: 18px;
  font-weight: bold;
  margin-left: auto;
  padding: 20px 10px 20px 60px;
  width: 95%;
}

@media (max-width: 480px) {
  .tc02-list__txt {
    padding: 50px 10px 20px;
    width: 100%;
  }
}
/*-----------------------
tc03
-----------------------*/
.tc03 .top-contents-box {
  margin-top: 30px;
}

/*-----------------------
tc04
-----------------------*/
.tc04 .top-contents__ttl::before {
  top: -10px;
}

.tc04 .top-contents-box {
  margin-top: 20px;
}

@media (min-width: 769px) {
  .tc04 .top-contents-box__img {
    max-width: 250px;
    min-width: 250px;
    width: 250px;
  }
}
.tc04-list__item {
  margin-top: 40px;
}

.tc04-list__item:first-child {
  margin-top: 60px;
}

/*-----------------------
tc05
-----------------------*/
@media (min-width: 1025px) {
  .tc05 .swiper-container {
    overflow: visible;
  }
  .tc05 .swiper-wrapper {
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .tc05 .swiper-slide {
    width: 32%;
  }
  .tc05 .swiper-slide:nth-child(n+4) {
    margin-top: 2%;
  }
  .tc05-button-prev,
  .tc05-button-next {
    display: none;
  }
}
@media (max-width: 1024px) {
  .tc05__slide {
    margin-right: auto;
    margin-left: auto;
    max-width: 400px;
  }
}
.tc05-list {
  margin-top: 50px;
}

@media (max-width: 1024px) {
  .tc05-list__item {
    padding: 0 40px;
  }
}
.tc05-list__link {
  background: #eee;
  color: #000;
  display: block;
  min-height: 300px;
  overflow: hidden;
  position: relative;
}

.tc05-list__link:hover {
  opacity: 0.8;
}

.tc05-list__link img {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 100%;
}

.tc05-list__txt01 {
  background: #6CBEDE;
  color: #fff;
  font-size: 12px;
  padding: 5px;
  position: absolute;
  top: 10px;
  left: 0;
}

.tc05-list__txt02 {
  background: rgba(255, 255, 255, 0.8);
  font-size: 14px;
  overflow: hidden;
  padding: 10px;
  position: absolute;
  bottom: 0;
  left: 0;
  text-align: center;
  text-overflow: ellipsis;
  white-space: nowrap;
  width: 100%;
}

.tc05-button-prev,
.tc05-button-next {
  background-repeat: no-repeat;
  background-size: contain;
  cursor: pointer;
  height: 40px;
  margin-top: -20px;
  position: absolute;
  top: 50%;
  width: 40px;
  z-index: 10;
}

.tc05-button-prev {
  left: 0;
  background-image: url(image.php?id=065);
}

.tc05-button-next {
  right: 0;
  background-image: url(image.php?id=066);
}

/*-----------------------
tc06
-----------------------*/
.tc06-list {
  background-image: url(image.php?id=044);
  background-position: bottom right;
  background-repeat: no-repeat;
  background-size: cover;
  margin-top: 40px;
  padding: 3%;
}

@media (max-width: 480px) {
  .tc06-list {
    background-image: url(image.php?id=068);
    padding-bottom: 55%;
  }
}
.tc06__item {
  display: flex;
  align-items: center;
  font-weight: bold;
  text-shadow: 1px 1px 0 #fff, -1px -1px 0 #fff, 1px -1px #fff, -1px 1px #fff;
}

.tc06__num {
  font-size: 36px;
  margin-right: 5px;
}

.tc06__txt {
  font-size: 18px;
  font-weight: bold;
}

.tc06__txt span {
  border-bottom: 3px dotted #fff;
  display: inline-block;
}

/*-----------------------
tc07
-----------------------*/
.tc07-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 40px;
}

@media (max-width: 768px) {
  .tc07-list {
    display: block;
  }
}
.tc07-list.-re {
  flex-direction: row-reverse;
}

.tc07-list__item {
  margin-top: 40px;
  position: relative;
  width: 28%;
}

@media (max-width: 768px) {
  .tc07-list__item {
    text-align: center;
    width: 100%;
  }
}
@media (max-width: 768px) {
  .tc07-list__item::after {
    content: "";
    margin-left: -8px;
    position: absolute;
    bottom: -30px;
    left: 50%;
    border-color: #FDC702 transparent transparent transparent;
    border-width: 22px 13px 0 13px;
    border-style: solid;
    height: 0;
    width: 0;
  }
}
@media (min-width: 769px) {
  .tc07-list__item:nth-child(2)::before, .tc07-list__item:nth-child(2)::after {
    content: "";
    position: absolute;
    top: 50%;
    border-color: transparent transparent transparent #FDC702;
    border-width: 10px 0 10px 16px;
    border-style: solid;
    height: 0;
    width: 0;
  }
  .-re .tc07-list__item:nth-child(2)::before, .-re .tc07-list__item:nth-child(2)::after {
    transform: rotate(180deg);
  }
}
@media (min-width: 769px) {
  .tc07-list__item:nth-child(2)::before {
    left: -17%;
  }
}
@media (min-width: 769px) {
  .tc07-list__item:nth-child(2)::after {
    right: -17%;
  }
}
@media (min-width: 769px) {
  .-re .tc07-list__item:first-child::before {
    content: "";
    margin-left: -8px;
    position: absolute;
    top: -28px;
    left: 50%;
    border-color: #FDC702 transparent transparent transparent;
    border-width: 16px 10px 0 10px;
    border-style: solid;
    height: 0;
    width: 0;
  }
}
.-re .tc07-list__item:last-child::after {
  display: none;
}

.tc07-list__ttl {
  font-size: 24px;
  font-weight: bold;
}

@media (max-width: 768px) {
  .tc07-list__ttl {
    -moz-text-align-last: left;
    text-align-last: left;
  }
}
.tc07-list__num {
  background: #6CBEDE;
  border-radius: 8px;
  color: #fff;
  display: inline-block;
  margin-right: 10px;
  padding: 5px 12px;
}

.tc07-list__img {
  margin-top: 10px;
}

.tc07-list__img img {
  box-shadow: 4px 4px 3px #ddd;
}

@media (max-width: 768px) {
  .tc07-list__img img {
    max-width: none;
    width: 100%;
  }
}
.tc07-list__txt {
  margin-top: 10px;
}

/*-----------------------
tc08
-----------------------*/
.tc08__youtube {
  margin-top: 30px;
  padding-bottom: 40%;
  position: relative;
}

.tc08__youtube iframe {
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

/*-----------------------
tc09
-----------------------*/
.tc09__img {
  display: block;
  margin-top: 30px;
}

/*-----------------------
tc10
-----------------------*/
.tc10 .top-contents__ttl::before {
  top: -10px;
}

/* qa-list */
.qa-list {
  border: 3px solid #6CBEDE;
  border-radius: 10px;
  margin-top: 20px;
  padding: 20px;
}

.qa-list:first-of-type {
  margin-top: 40px;
}

.qa-list__q,
.qa-list__a {
  position: relative;
}

@media (max-width: 768px) {
  .qa-list__q::after {
    content: "";
    cursor: pointer;
    margin-top: -7.5px;
    position: absolute;
    top: 50%;
    right: 0;
    border-color: #464646 transparent transparent transparent;
    border-width: 15px 10px 0 10px;
    border-style: solid;
    height: 0;
    width: 0;
  }
}
.qa-list__q.open::after {
  transform: rotate(180deg);
}

.qa-list__a {
  border-top: 3px dashed #6CBEDE;
  margin-top: 15px;
  padding-top: 15px;
}

@media (max-width: 768px) {
  .qa-list__a {
    display: none;
  }
}
.qa-list__icon {
  font-size: 30px;
  font-weight: bold;
  line-height: 1;
  position: absolute;
  top: 0;
  left: 0;
}

.qa-list__a .qa-list__icon {
  top: 15px;
}

.qa-list__content {
  display: block;
  font-size: 20px;
  margin-left: 40px;
}

@media (max-width: 768px) {
  .qa-list__content {
    margin-right: 20px;
  }
}
/*-----------------------
tc11
-----------------------*/
/* tc11-box */
.tc11-box {
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
  margin-top: 30px;
}

@media (max-width: 768px) {
  .tc11-box {
    display: block;
  }
}
.tc11-box__txt {
  font-size: 18px;
  width: 51%;
}

@media (max-width: 768px) {
  .tc11-box__txt {
    margin-top: 10px;
    width: 100%;
  }
}
.tc11-box__img {
  width: 45%;
}

@media (max-width: 768px) {
  .tc11-box__img {
    text-align: center;
    width: 100%;
  }
}
/* tc11-profile */
.tc11-profile {
  background: #c5e1ec;
  margin-top: 15px;
  padding: 15px;
}

.tc11-profile__inner {
  border: 2px dashed #fff;
  padding: 20px;
}

.tc11-profile__list:not(:first-child) {
  margin-top: 20px;
}

.tc11-profile__ttl {
  background: #6CBEDE;
  color: #fff;
  display: inline-block;
  font-size: 25px;
  font-weight: bold;
  line-height: 1;
  margin-bottom: 10px;
  padding: 5px 10px;
}

.tc11-profile__txt {
  color: #707070;
  font-size: 20px;
  margin-left: 2em;
  text-indent: -1em;
}

@media (max-width: 480px) {
  .tc11-profile__txt {
    margin-left: 1em;
  }
}
/*-----------------------
tc12
-----------------------*/
/* tc12-banner */
.tc12-banner {
  display: flex;
  justify-content: space-between;
  margin-top: 40px;
}

@media (max-width: 768px) {
  .tc12-banner {
    display: block;
  }
}
.tc12-banner__inner {
  width: 48%;
}

@media (max-width: 768px) {
  .tc12-banner__inner {
    margin: 0 auto;
    max-width: 400px;
    width: 100%;
  }
}
@media (max-width: 768px) {
  .tc12-banner__inner:last-child {
    margin-top: 15px;
  }
}
.tc12-banner__link {
  text-decoration: none;
}

.tc12-banner__container {
  background-image: url(image.php?id=006);
  background-repeat: no-repeat;
  background-position: left 5px top 50%;
  background-size: auto 80%;
  border: 3px solid #6CBEDE;
  padding: 40px 10px 20px 70px;
  position: relative;
}

.-beauty .tc12-banner__container {
  background-image: url(image.php?id=007);
  border: 3px solid #DE6C8E;
}

.tc12-banner__container::before, .tc12-banner__container::after {
  position: absolute;
}

.tc12-banner__container::before {
  right: 0;
  bottom: 0;
  border-bottom: 25px solid #6CBEDE;
  border-right: 50px solid #6CBEDE;
  border-top: 25px solid transparent;
  border-left: 50px solid transparent;
  content: "";
}

.-beauty .tc12-banner__container::before {
  border-bottom: 25px solid #DE6C8E;
  border-right: 50px solid #DE6C8E;
}

.tc12-banner__container::after {
  right: 10px;
  bottom: 0;
  color: #fff;
  content: "→";
  font-size: 36px;
  font-weight: bold;
  line-height: 1;
}

.tc12-banner__container dt,
.tc12-banner__container dd {
  color: #3576AB;
  font-size: 30px;
  font-weight: bold;
  line-height: 1.2;
}

.-beauty .tc12-banner__container dt, .-beauty .tc12-banner__container dd {
  color: #ab3568;
}

.tc12__img {
  margin-top: 50px;
  text-align: center;
}

/*********************************************************
common-access
*********************************************************/
/* ca01-table */
.ca01-table {
  margin-top: 30px;
  width: 100%;
}

.ca01-table th,
.ca01-table td {
  border: 2px solid #1D7FA5;
  color: #707070;
  font-size: 18px;
  padding: 10px;
  text-align: center;
}

@media (max-width: 480px) {
  .ca01-table th,
  .ca01-table td {
    font-size: 14px;
    padding: 5px;
  }
}
.ca01-table thead th {
  background: #92d0e8;
}

.ca01-table thead th:nth-child(even) {
  background: #6CBEDE;
}

.ca01__txt {
  margin-top: 10px;
}

.ca01__images {
  font-size: 0;
  margin-top: 10px;
}

.ca01__images div {
  display: inline-block;
  width: 49.8%;
}

@media (max-width: 480px) {
  .ca01__images div {
    display: block;
    width: 100%;
  }
}
.ca01__images div:first-child {
  padding-right: 0.2%;
}

@media (max-width: 480px) {
  .ca01__images div:first-child:first-child {
    padding-right: 0;
  }
}
.ca01__images div:last-child {
  padding-left: 0.2%;
}

@media (max-width: 480px) {
  .ca01__images div:last-child:last-child {
    padding-left: 0;
  }
}
/* ca01-access */
.ca01-access {
  margin-top: 15px;
}

.ca01-access__list {
  display: flex;
  flex-wrap: wrap;
}

@media (max-width: 480px) {
  .ca01-access__list {
    display: block;
  }
}
.ca01-access__ttl {
  background: #6CBEDE;
  margin: 0 0.5% 0.5% 0;
  font-size: 20px;
  font-weight: bold;
  padding: 15px 0;
  text-align: center;
  width: 24.5%;
}

@media (max-width: 480px) {
  .ca01-access__ttl {
    margin-top: 10px;
    width: 100%;
  }
}
.ca01-access__txt {
  background: #f2f2f2;
  margin-bottom: 0.5%;
  padding: 10px 15px;
  width: 75%;
}

@media (max-width: 480px) {
  .ca01-access__txt {
    width: 100%;
  }
}
.ca01-access__map {
  margin-top: 10px;
  padding-bottom: 40%;
  position: relative;
}

@media (max-width: 480px) {
  .ca01-access__map {
    padding-bottom: 90%;
  }
}
.ca01-access__map iframe {
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

/* ca02-container,ca03-container  */
.ca02-container,
.ca03-container {
  margin-top: 30px;
  text-align: center;
}

.ca02-container__img img,
.ca03-container__img img {
  width: 530px;
}

@media (max-width: 530px) {
  .ca02-container__img,
  .ca03-container__img {
    padding: 0 40px;
  }
}
.ca02-container__txt,
.ca03-container__txt {
  font-size: 18px;
  margin-top: 20px;
}

.ca02-button-prev,
.ca02-button-next,
.ca03-button-prev,
.ca03-button-next {
  background-repeat: no-repeat;
  background-size: contain;
  cursor: pointer;
  height: 40px;
  margin-top: -20px;
  position: absolute;
  top: 50%;
  width: 40px;
  z-index: 10;
}

.ca02-button-prev,
.ca03-button-prev {
  left: 0;
  background-image: url(image.php?id=065);
}

.ca02-button-next,
.ca03-button-next {
  right: 0;
  background-image: url(image.php?id=066);
}

/*********************************************************
banner-sticky
*********************************************************/
.banner-sticky {
  vertical-align: bottom;
  width: 100%;
}

.banner-sticky.fixed {
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 5;
}

.banner-sticky img {
  max-width: none;
  width: 100%;
}

/*********************************************************
下層ページ共通
*********************************************************/
/*-----------------------
breadcrumbs
-----------------------*/
.breadcrumbs {
  display: flex;
  flex-wrap: wrap;
}

.breadcrumbs__item {
  line-height: 1.5;
  margin-right: 15px;
  padding-right: 15px;
  position: relative;
}

.breadcrumbs__item:last-child {
  margin-right: 0;
  padding-right: 0;
}

.breadcrumbs__item:not(:last-child)::after {
  margin-top: -3px;
  position: absolute;
  top: 50%;
  right: 0;
  border-style: solid;
  border-width: 1px 1px 0 0;
  content: "";
  display: inline-block;
  height: 6px;
  width: 6px;
  transform: rotate(45deg);
}

.breadcrumbs__link {
  color: blue;
}

.breadcrumbs__link:hover {
  text-decoration: none;
}

/*-----------------------
container
-----------------------*/
.container01 {
  margin-top: 50px;
}

@media (max-width: 480px) {
  .container01 {
    margin-top: 30px;
  }
}
.container02 {
  margin-top: 30px;
}

@media (max-width: 480px) {
  .container02 {
    margin-top: 25px;
  }
}
/*-----------------------
page-ttl
-----------------------*/
.page-ttl {
  background-color: #EAD038;
  background-image: url(image.php?id=071), url(image.php?id=080), url(image.php?id=081), url(image.php?id=082);
  background-position: top 5px left 5px, top 5px right 5px, bottom 5px right 5px, bottom 5px left 5px;
  background-repeat: no-repeat;
  background-size: 15px 15px;
  border-radius: 10px;
  box-shadow: 0 3px 5px #ddd;
  color: #fff;
  font-size: 50px;
  font-weight: bold;
  margin-top: 25px;
  padding: 10px 30px;
}

@media (max-width: 480px) {
  .page-ttl {
    font-size: 30px;
    text-align: center;
  }
}
/*-----------------------
content-ttl
-----------------------*/
.content-ttl {
  background-image: url(image.php?id=072), url(image.php?id=073);
  background-repeat: repeat-y;
  background-position: left top, right top;
  background-size: 40px auto;
  box-shadow: 0 3px 5px #ccc;
  padding: 0 30px;
  position: relative;
}

.content-ttl h3 {
  background-color: #6AB6D3;
  color: #fff;
  font-size: 24px;
  font-weight: bold;
  padding: 5px 0;
}

@media (max-width: 400px) {
  .content-ttl h3 {
    line-height: 1.3;
  }
}
.content-ttl h3.content-ttl__small {
  font-size: 22px;
}

.content-ttl h3.content-ttl__aaccident {
  font-size: 22px;
  padding-left: 1.5em;
  position: relative;
}

.content-ttl h3.content-ttl__aaccident .content-ttl__num {
  position: absolute;
  top: 0;
  left: 0;
}

.content-ttl__num {
  color: #ead038;
  font-size: 30px;
}

/*********************************************************
menu.html
*********************************************************/
/*-----------------------
menu-details
-----------------------*/
.menu-details {
  display: flex;
  margin-top: 30px;
}

@media (max-width: 480px) {
  .menu-details {
    display: block;
  }
}
.menu-details.-re {
  flex-direction: row-reverse;
}

.menu-details__txt {
  flex: 1;
  font-size: 18px;
}

.menu-details__txt p:not(:first-child) {
  margin-top: 1em;
}

.menu-details__txt a {
  color: blue;
}

.menu-details__txt a:hover {
  text-decoration: none;
}

.menu-details__img {
  margin-right: 15px;
  width: 185px;
}

@media (max-width: 480px) {
  .menu-details__img {
    margin-right: 0;
    margin-bottom: 20px;
    text-align: center;
    width: auto;
  }
}
.-re .menu-details__img {
  margin-right: 0;
  margin-left: 15px;
}

@media (max-width: 480px) {
  .-re .menu-details__img {
    margin-left: 0;
  }
}
/*********************************************************
about_accident.html
*********************************************************/
/*-----------------------
accident-worries
-----------------------*/
.accident-worries__ttl {
  max-width: 400px;
}

.accident-worries__list {
  background-image: url(image.php?id=084);
  background-position: bottom right;
  background-repeat: no-repeat;
  background-size: contain;
  margin-top: 20px;
}

@media (max-width: 480px) {
  .accident-worries__list {
    background-size: 70%;
  }
}
.accident-worries__item {
  border-bottom: 1px dashed #ddd;
  font-size: 18px;
  font-weight: bold;
  margin: 0 0 15px 10px;
  padding-left: 40px;
  position: relative;
}

.accident-worries__item:last-child {
  margin-bottom: 0;
}

.accident-worries__item::before {
  background-image: url(image.php?id=095);
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  height: 30px;
  position: absolute;
  top: 0;
  left: 0;
  width: 30px;
}

/*-----------------------
accident-recommend
-----------------------*/
.accident-recommend__ttl {
  text-align: center;
}

.accident-recommend__6points {
  color: #282828;
  font-size: 30px;
  font-weight: bold;
  margin-top: 30px;
  text-align: center;
}

@media (max-width: 480px) {
  .accident-recommend__6points {
    font-size: 25px;
  }
}
.accident-recommend__6points strong {
  color: #6AB6D3;
}

.accident-recommend__6points strong span {
  font-size: 180%;
  line-height: 1;
}

/*-----------------------
accident-points
-----------------------*/
.accident-points {
  display: flex;
  flex-direction: row-reverse;
  margin-top: 20px;
}

@media (max-width: 768px) {
  .accident-points {
    display: block;
  }
}
.accident-points__img {
  width: 200px;
}

@media (max-width: 768px) {
  .accident-points__img {
    text-align: center;
    width: 100%;
  }
}
.accident-points__img img {
  border: 5px solid #fff;
  box-shadow: 1px 3px 5px #ccc;
  display: block;
}

@media (max-width: 768px) {
  .accident-points__img img {
    margin: 0 auto;
  }
}
.accident-points__txt {
  flex: 1;
  font-size: 20px;
  margin: 0 10px;
}

@media (max-width: 768px) {
  .accident-points__txt {
    margin: 20px 0 0 0;
  }
}
/*-----------------------
accident-support
-----------------------*/
.accident-support {
  background-color: #6ab6d3;
  background-size: 150px;
  color: #fff;
  padding-top: 80px;
  position: relative;
}

@media (max-width: 768px) {
  .accident-support {
    padding: 50px 0;
  }
}
.accident-support::before, .accident-support::after {
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  height: 60px;
  position: absolute;
  width: 150px;
}

.accident-support::before {
  top: -15px;
  left: -8px;
  background-image: url(image.php?id=093);
}

@media (max-width: 480px) {
  .accident-support::before {
    left: -2%;
  }
}
.accident-support::after {
  bottom: -10px;
  right: -30px;
  background-image: url(image.php?id=094);
}

@media (max-width: 1024px) {
  .accident-support::after {
    right: -2%;
  }
}
.accident-support__inner {
  padding: 20px 10px 10px;
}

.accident-support__top {
  font-size: 24px;
  font-weight: bold;
  padding-left: 10px;
}

@media (max-width: 480px) {
  .accident-support__top {
    font-size: 16px;
  }
}
.accident-support__ttl {
  color: #6ab6d3;
  font-size: 45px;
  font-weight: bold;
  position: relative;
  text-align: center;
  text-shadow: white 3px 0px 0px, white 2.83487px 0.98158px 0px, white 2.35766px 1.85511px 0px, white 1.62091px 2.52441px 0px, white 0.70571px 2.91581px 0px, white -0.28717px 2.98622px 0px, white -1.24844px 2.72789px 0px, white -2.07227px 2.16926px 0px, white -2.66798px 1.37182px 0px, white -2.96998px 0.42336px 0px, white -2.94502px -0.5717px 0px, white -2.59586px -1.50383px 0px, white -1.96093px -2.27041px 0px, white -1.11013px -2.78704px 0px, white -0.13712px -2.99686px 0px, white 0.85099px -2.87677px 0px, white 1.74541px -2.43999px 0px, white 2.44769px -1.73459px 0px, white 2.88051px -0.83825px 0px;
  z-index: 1;
}

@media (max-width: 768px) {
  .accident-support__ttl {
    font-size: 5.8vw;
  }
}
@media (max-width: 480px) {
  .accident-support__ttl {
    font-size: 19px;
    font-size: 5.8vw;
  }
}
.accident-support__ttl::after {
  background: #fd0;
  border-radius: 0 10px 0 10px;
  content: "";
  height: 15px;
  position: absolute;
  bottom: 12px;
  left: 0;
  width: 100%;
  z-index: -1;
}

@media (max-width: 480px) {
  .accident-support__ttl::after {
    bottom: 3px;
    height: 8px;
  }
}
.accident-support__txt {
  font-size: 20px;
  line-height: 1.7;
}

@media (max-width: 480px) {
  .accident-support__txt {
    font-size: 16px;
  }
}
.accident-support__img {
  margin-top: 30px;
  max-width: 450px;
  position: relative;
}

@media (max-width: 768px) {
  .accident-support__img {
    margin: 30px auto 0;
  }
}
.accident-support__img p {
  background: rgba(255, 255, 255, 0.4);
  color: #FFDD00;
  font-size: 24px;
  font-weight: bold;
  padding: 10px;
  position: absolute;
  bottom: 0;
  left: 0;
  text-shadow: white 3px 0px 0px, white 2.83487px 0.98158px 0px, white 2.35766px 1.85511px 0px, white 1.62091px 2.52441px 0px, white 0.70571px 2.91581px 0px, white -0.28717px 2.98622px 0px, white -1.24844px 2.72789px 0px, white -2.07227px 2.16926px 0px, white -2.66798px 1.37182px 0px, white -2.96998px 0.42336px 0px, white -2.94502px -0.5717px 0px, white -2.59586px -1.50383px 0px, white -1.96093px -2.27041px 0px, white -1.11013px -2.78704px 0px, white -0.13712px -2.99686px 0px, white 0.85099px -2.87677px 0px, white 1.74541px -2.43999px 0px, white 2.44769px -1.73459px 0px, white 2.88051px -0.83825px 0px;
  width: 100%;
}

@media (max-width: 480px) {
  .accident-support__img p {
    font-size: 18px;
  }
}
/*********************************************************
access.html
*********************************************************/
/*-----------------------
page-access
-----------------------*/
@media (max-width: 480px) {
  .page-access .top-contents.ca01 {
    margin-top: 30px;
  }
}
.page-access .top-contents.ca02 {
  margin-top: 0;
}

@media (max-width: 480px) {
  .page-access .top-contents.ca03 {
    margin-top: 30px;
  }
}
.page-access .ca01-access__map {
  display: none;
}

/*-----------------------
access-map
-----------------------*/
.access-map {
  margin-top: 30px;
  padding-bottom: 50%;
  position: relative;
}

@media (max-width: 480px) {
  .access-map {
    padding-bottom: 90%;
  }
}
.access-map iframe {
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

/*********************************************************
beauty.html
*********************************************************/
/*-----------------------
beauty-banner
-----------------------*/
.beauty-banner {
  background-color: #6ab6d3;
  border-radius: 10px;
  margin-top: 30px;
  padding: 5px;
  position: relative;
  z-index: 1;
}

@media (max-width: 500px) {
  .beauty-banner {
    text-align: center;
  }
}
.beauty-banner__inner {
  background-image: url(image.php?id=096);
  background-position: bottom right;
  background-repeat: no-repeat;
  background-size: auto 100%;
  border: 2px solid #fff;
  border-radius: 10px;
}

@media (max-width: 500px) {
  .beauty-banner__inner {
    background-position: bottom center;
    background-size: auto 250px;
  }
}
.beauty-banner__img {
  display: inline-block;
  margin: 5px 0 0 5px;
  vertical-align: top;
  width: 110px;
}

@media (max-width: 500px) {
  .beauty-banner__img {
    width: 200px;
  }
}
/*-----------------------
bb-time
bb-holiday
-----------------------*/
.bb-time {
  background-image: url(image.php?id=098), url(image.php?id=099);
  background-position: top left, bottom left;
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
  margin: 5px 0 0 5px;
  padding: 7% 2%;
}

@media (max-width: 768px) {
  .bb-time {
    padding: 9% 2%;
  }
}
@media (max-width: 500px) {
  .bb-time {
    padding: 10% 2%;
  }
}
@media (max-width: 400px) {
  .bb-time {
    padding: 15% 2%;
  }
}
.bb-time__box,
.bb-holiday,
.bb-time__row {
  display: flex;
  align-items: center;
}

@media (max-width: 500px) {
  .bb-time__box {
    display: block;
  }
}
.bb-time__row p {
  font-size: 14px;
  font-weight: bold;
  letter-spacing: 0.08em;
}

.bb-time__ttl,
.bb-time__day,
.bb-holiday__day,
.bb-holiday__ttl {
  color: #fff;
  font-weight: bold;
}

.bb-time__ttl,
.bb-holiday__ttl {
  font-size: 18px;
}

.bb-time__ttl {
  line-height: 1;
  margin-right: 5px;
}

@media (max-width: 500px) {
  .bb-time__ttl br {
    display: none;
  }
}
@media (max-width: 500px) {
  .bb-time__content {
    margin-top: 5px;
  }
}
.bb-time__day {
  text-align: center;
  width: 70px;
}

.bb-time__day span {
  background: #ffafc7;
  border-radius: 50%;
  display: inline-block;
  line-height: 1;
  padding: 3px;
}

.bb-holiday {
  margin-top: 15px;
}

.bb-holiday__ttl {
  margin-right: 30px;
}

.bb-holiday__day {
  background: #ffafc7;
  border-radius: 15px;
  font-size: 20px;
  padding: 5px 25px;
}

.bb-holiday__day:last-child {
  margin-left: 5px;
}

/*-----------------------
bb-tel
-----------------------*/
.bb-tel {
  display: flex;
  align-items: flex-end;
  padding: 0 0 5px 5px;
}

@media (max-width: 500px) {
  .bb-tel {
    justify-content: center;
    padding-bottom: 250px;
  }
}
.bb-tel__img {
  width: 60px;
}

@media (max-width: 480px) {
  .bb-tel__img {
    width: 40px;
  }
}
.bb-tel__content {
  margin-left: 15px;
}

.bb-tel__txt,
.bb-tel__num {
  font-weight: bold;
  line-height: 1.3;
}

.bb-tel__txt {
  font-size: 24px;
}

.bb-tel__num {
  font-size: 46px;
}

@media (max-width: 480px) {
  .bb-tel__num {
    font-size: 36px;
    font-size: 9vw;
  }
}
/*-----------------------
beauty-medicell
-----------------------*/
.beauty-medicell {
  margin: 30px auto 0;
  width: 95%;
}

@media (max-width: 768px) {
  .beauty-medicell {
    display: flex;
    flex-direction: column-reverse;
    width: 100%;
  }
}
.beauty-medicell::after {
  clear: both;
  content: "";
  display: table;
}

.beauty-medicell__img {
  float: right;
  margin-left: 15px;
  width: 34%;
}

@media (max-width: 768px) {
  .beauty-medicell__img {
    float: none;
    font-size: 0;
    margin: 15px 0 0;
    width: 100%;
  }
}
.beauty-medicell__img01,
.beauty-medicell__img02 {
  border: 7px solid #fff;
  box-shadow: 0 0 7px #999;
  display: block;
}

@media (max-width: 768px) {
  .beauty-medicell__img01,
  .beauty-medicell__img02 {
    display: inline-block;
    vertical-align: middle;
    width: 48%;
  }
}
.beauty-medicell__img02 {
  margin-top: 15px;
}

@media (max-width: 768px) {
  .beauty-medicell__img02 {
    margin: 0 0 0 4%;
  }
}
.beauty-medicell__txt01 {
  font-size: 18px;
  font-weight: bold;
}

@media (max-width: 768px) {
  .beauty-medicell__txt01 {
    order: 5;
  }
}
.beauty-medicell__txt01 span {
  text-decoration: underline;
}

.beauty-medicell__txt02 {
  margin-top: 20px;
}

@media (max-width: 768px) {
  .beauty-medicell__txt02:nth-child(3) {
    order: 4;
  }
  .beauty-medicell__txt02:nth-child(5) {
    order: 2;
  }
}
.beauty-medicell__txt03 {
  margin-top: 20px;
}

@media (max-width: 768px) {
  .beauty-medicell__txt03 {
    order: 3;
  }
}
.beauty-medicell__txt03 strong {
  color: #6ab6d3;
}

/*-----------------------
beauty-btn
-----------------------*/
.beauty-btn {
  margin-top: 6.8%;
  text-align: center;
}

.beauty-btn__link {
  background: #6ab6d3;
  border-radius: 30px;
  box-shadow: 0 5px 3px #c5c5c5;
  color: #464646;
  font-size: 30px;
  padding: 15px 90px 15px 50px;
  position: relative;
  text-decoration: none;
  text-shadow: 2px 2px 0px #ffffff, -2px 2px 0px #ffffff, 2px -2px 0px #ffffff, -2px -2px 0px #ffffff, 2px 0px 0px #ffffff, 0px 2px 0px #ffffff, -2px 0px 0px #ffffff, 0px -2px 0px #ffffff;
}

.beauty-btn__link:hover {
  box-shadow: none;
  top: 5px;
}

.beauty-btn__icon {
  background: #ffafc7;
  border-radius: 50%;
  box-shadow: -3px 0 3px #8f8f8f;
  display: inline-block;
  height: 65px;
  margin-top: -32.5px;
  position: absolute;
  top: 50%;
  right: 0;
  width: 65px;
}

.beauty-btn__icon::after {
  content: "";
  margin: -13.5px 0 0 -12px;
  position: absolute;
  top: 50%;
  left: 50%;
  border-color: #fff transparent transparent transparent;
  border-width: 24px 13.5px 0 13.5px;
  border-style: solid;
  height: 0;
  width: 0;
}

/*-----------------------
beauty-recommend
-----------------------*/
.beauty-recommend__ttl {
  max-width: 350px;
}

.beauty-recommend__list {
  background-image: url(image.php?id=101);
  background-repeat: no-repeat;
  background-position: bottom right;
  background-size: contain;
}

/*-----------------------
check-list
-----------------------*/
.check-list {
  margin-top: 30px;
}

.check-list li {
  border-bottom: 3px dashed #ccc;
  font-size: 18px;
  font-weight: bold;
  padding-left: 60px;
  position: relative;
}

@media (max-width: 480px) {
  .check-list li {
    line-height: 1.3;
  }
}
.check-list li::before {
  background-image: url(image.php?id=095);
  background-position: left bottom;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: inline-block;
  height: 55px;
  position: absolute;
  bottom: -3px;
  left: 0;
  vertical-align: bottom;
  width: 40px;
}

.check-list li:nth-child(n+2) {
  margin-top: 30px;
}

/*-----------------------
beauty-reviews
-----------------------*/
.beauty-reviews {
  box-shadow: 0 0 5px #b3b3b3;
  margin-top: 30px;
  padding: 20px;
}

.beauty-reviews__container {
  display: flex;
  margin-top: 30px;
}

.beauty-reviews__container:first-child {
  margin-top: 0;
}

.beauty-reviews__container.-customer {
  justify-content: flex-end;
}

.beauty-reviews__icon {
  align-self: flex-start;
  background: #6ab6d3;
  max-width: 80px;
  min-width: 80px;
  width: 80px;
}

.beauty-reviews__icon p {
  background: #fff;
  color: #6ab6d3;
  font-weight: bold;
  padding-top: 5px;
  text-align: center;
}

.-customer .beauty-reviews__icon {
  background: #F48FB1;
}

.-customer .beauty-reviews__icon p {
  color: #f48fb1;
}

.beauty-reviews__comment {
  align-self: center;
  display: inline-block;
  position: relative;
  margin: 0 0 0 30px;
  padding: 17px 13px;
  border-radius: 12px;
  background: #e0f0f6;
}

.beauty-reviews__comment::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 18px;
  left: -12px;
  border-top: 12px solid transparent;
  border-bottom: 12px solid transparent;
  border-right: 22px solid #e0f0f6;
}

.-customer .beauty-reviews__comment {
  background: #ffd4e2;
  margin: 0 30px 0 0;
}

.-customer .beauty-reviews__comment::after {
  right: -12px;
  left: auto;
  border-top: 12px solid transparent;
  border-bottom: 12px solid transparent;
  border-right: none;
  border-left: 22px solid #ffd4e2;
}

/*-----------------------
epilation
-----------------------*/
.epilation__box {
  display: flex;
  flex-direction: row-reverse;
  margin: 30px auto 0;
  width: 95%;
}

@media (max-width: 768px) {
  .epilation__box {
    display: block;
    width: 100%;
  }
}
.epilation__col:first-child {
  margin-left: 20px;
  max-width: 250px;
  min-width: 250px;
  width: 250px;
}

@media (max-width: 768px) {
  .epilation__col:first-child {
    margin: 0 auto;
    max-width: none;
    min-width: auto;
    width: 80%;
  }
}
.epilation__col:last-child {
  margin-top: 5%;
}

.epilation__img {
  border: 7px solid #fff;
  box-shadow: 0 0 7px #999;
  display: block;
  margin: 0 auto;
}

.epilation__txt02 {
  margin-top: 30px;
}

.epilation__txt02 strong {
  color: #6ab6d3;
}

.epilation__list {
  margin-top: 30px;
}

.epilation__item {
  font-weight: bold;
  margin: 0.5em 0 0 2em;
  position: relative;
  text-decoration: underline;
}

.epilation__item::before {
  content: "☆";
  position: absolute;
  top: 0;
  left: -1.5em;
}

.epilation__item:first-child {
  margin-top: 0;
}

.epilation__note {
  margin: 30px 0 0 1em;
  text-indent: -1em;
}

/*-----------------------
beauty-acupuncture
-----------------------*/
.beauty-acupuncture {
  margin-top: 30px;
}

.beauty-acupuncture__txt01 {
  font-size: 18px;
  font-weight: bold;
  margin: 0 auto;
  text-decoration: underline;
  width: 95%;
}

.beauty-acupuncture__box {
  display: flex;
  align-items: center;
  flex-direction: row-reverse;
  margin: 0 auto;
  width: 95%;
}

@media (max-width: 768px) {
  .beauty-acupuncture__box {
    display: block;
    margin-top: 3%;
    width: 100%;
  }
}
.beauty-acupuncture__col:first-child {
  margin-left: 20px;
  max-width: 250px;
  min-width: 250px;
  width: 250px;
}

@media (max-width: 768px) {
  .beauty-acupuncture__col:first-child {
    margin: 0 auto;
    max-width: none;
    min-width: auto;
    width: 80%;
  }
}
.beauty-acupuncture__col:last-child {
  margin-top: 5%;
}

.beauty-acupuncture__img {
  border: 7px solid #fff;
  box-shadow: 0 0 7px #999;
  display: block;
  margin: 0 auto;
}

.beauty-acupuncture__container {
  display: flex;
  justify-content: space-between;
  margin-top: 30px;
}

@media (max-width: 768px) {
  .beauty-acupuncture__container {
    flex-direction: column-reverse;
  }
}
.beauty-acupuncture__container > div {
  width: 48%;
}

@media (max-width: 768px) {
  .beauty-acupuncture__container > div {
    width: 100%;
  }
}
/*-----------------------
ba-another
ba-yufla
-----------------------*/
.ba-another,
.ba-yufla {
  background: #f1f1f1;
  box-shadow: 0 0 8px #ddd;
  padding: 20px 10px;
}

@media (max-width: 768px) {
  .ba-another {
    margin-top: 3%;
  }
}
.ba-another__ttl,
.ba-yufla__ttl {
  margin: 0 auto;
  width: 230px;
}

@media (max-width: 768px) {
  .ba-another__ttl,
  .ba-yufla__ttl {
    text-align: center;
    width: 100%;
  }
}
.ba-another__item,
.ba-yufla__item {
  font-weight: bold;
  margin-top: 20px;
  padding-left: 1em;
  position: relative;
}

.ba-another__item::before,
.ba-yufla__item::before {
  content: "■";
  position: absolute;
  top: 0;
  left: 0;
}

.ba-another__item strong,
.ba-yufla__item strong {
  background: linear-gradient(to bottom, transparent 50%, #FFD04F 50%);
  display: inline-block;
  font-size: 120%;
}

.ba-yufla {
  background: #F48FB1;
}

.ba-yufla__item {
  color: #940032;
}

/*-----------------------
beauty-flow
-----------------------*/
.beauty-flow .beauty-flow-list::before {
  background-image: url(image.php?id=107);
  background-position: bottom right;
  background-repeat: no-repeat;
  background-size: 50%;
}

@media (max-width: 480px) {
  .beauty-flow .beauty-flow-list::before {
    background-size: contain;
  }
}
.beauty-flow__txt {
  color: #6ab6d3;
  font-weight: bold;
  margin-top: 20px;
}

.beauty-flow__box {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  margin-top: 20px;
}

.beauty-flow__img {
  width: 48%;
}

.beauty-flow__img img {
  border: 7px solid #fff;
  box-shadow: 0 0 7px #999;
}

/*-----------------------
beauty-flow-list
-----------------------*/
.beauty-flow-list {
  counter-reset: number 0;
  margin-top: 30px;
  position: relative;
  z-index: 1;
}

.beauty-flow-list::before {
  content: "";
  opacity: 0.5;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: -1;
}

.beauty-flow-list__item {
  border-bottom: 3px dotted #6CBEDE;
  font-size: 18px;
  margin-top: 1em;
  padding: 0 0 5px 40px;
  position: relative;
  width: 90%;
}

.beauty-flow-list__item::before {
  background: #FFAFC7;
  border-radius: 50%;
  color: #fff;
  content: counter(number);
  counter-increment: number 1;
  display: inline-block;
  line-height: 30px;
  height: 30px;
  position: absolute;
  top: 0;
  left: 0;
  text-align: center;
  width: 30px;
}

/*-----------------------
beauty-ear
-----------------------*/
.beauty-ear {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 30px auto 0;
  width: 95%;
}

@media (max-width: 768px) {
  .beauty-ear {
    display: block;
    width: 100%;
  }
}
.beauty-ear__col:first-child {
  width: 68%;
}

@media (max-width: 768px) {
  .beauty-ear__col:first-child {
    width: 100%;
  }
}
.beauty-ear__col:last-child {
  width: 30%;
}

@media (max-width: 768px) {
  .beauty-ear__col:last-child {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-top: 5%;
    width: 100%;
  }
}
.beauty-ear__txt01 {
  font-size: 18px;
  font-weight: bold;
  text-decoration: underline;
}

.beauty-ear__txt02 {
  margin-top: 20px;
}

.beauty-ear__txt03 {
  color: #6ab6d3;
  font-weight: bold;
  margin-top: 20px;
}

.beauty-ear__img {
  border: 7px solid #fff;
  box-shadow: 0 0 7px #999;
}

@media (max-width: 768px) {
  .beauty-ear__img {
    width: 48%;
  }
}
.beauty-ear__img:last-child {
  margin-top: 15px;
}

@media (max-width: 768px) {
  .beauty-ear__img:last-child {
    margin-top: 0;
  }
}
/*-----------------------
diet-flow
-----------------------*/
.diet-flow .beauty-flow-list::before {
  background-image: url(image.php?id=112);
  background-position: bottom right;
  background-repeat: no-repeat;
  background-size: 50%;
}

@media (max-width: 768px) {
  .diet-flow .beauty-flow-list::before {
    background-size: 60%;
  }
}
@media (max-width: 480px) {
  .diet-flow .beauty-flow-list::before {
    background-size: contain;
  }
}
/*-----------------------
diet-reviews
-----------------------*/
.diet-reviews {
  margin-top: 30px;
}

.diet-reviews__container {
  border: 1px solid #ddd;
  box-shadow: 0 3px 10px #ddd;
  display: flex;
  justify-content: space-between;
  padding: 10px;
}

@media (max-width: 600px) {
  .diet-reviews__container {
    display: block;
  }
}
.diet-reviews__container:first-child .diet-reviews__col:first-child .diet-reviews__ttl {
  background-image: url(image.php?id=102);
}

.diet-reviews__container:first-child .diet-reviews__col:last-child .diet-reviews__ttl {
  background-image: url(image.php?id=103);
}

.diet-reviews__container:last-child {
  margin-top: 15px;
}

.diet-reviews__container:last-child .diet-reviews__col:first-child .diet-reviews__ttl {
  background-image: url(image.php?id=104);
}

.diet-reviews__container:last-child .diet-reviews__col:last-child .diet-reviews__ttl {
  background-image: url(image.php?id=103);
}

.diet-reviews__col {
  width: 49%;
}

@media (max-width: 600px) {
  .diet-reviews__col {
    width: 100%;
  }
  .diet-reviews__col:last-child {
    margin-top: 3%;
  }
}
.diet-reviews__ttl {
  background-color: #f48fb1;
  background-repeat: no-repeat;
  background-size: contain;
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  padding: 15px 0;
  position: relative;
  text-align: center;
}

.diet-reviews__ttl::after {
  content: "";
  position: absolute;
  bottom: -15px;
  left: 50%;
  transform: translateX(-50%);
  border-color: #f48fb1 transparent transparent transparent;
  border-width: 15px 12.5px 0 12.5px;
  border-style: solid;
  height: 0;
  width: 0;
}

.diet-revies__txt {
  font-size: 14px;
  line-height: 1.7;
  margin-top: 30px;
}

/*-----------------------
beauty-price
-----------------------*/
.beauty-price__container {
  margin-top: 30px;
}

@media (max-width: 600px) {
  .beauty-price__container:first-of-type {
    margin-top: 70px;
  }
}
.beauty-price__ttl {
  font-size: 24px;
  font-weight: bold;
  padding-bottom: 3px;
  position: relative;
  text-align: center;
}

@media (max-width: 480px) {
  .beauty-price__ttl {
    font-size: 18px;
  }
}
.beauty-price__ttl::after {
  background: #6ab6d3;
  border-radius: 10px;
  content: "";
  height: 7px;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
}

.beauty-price__ttl-img {
  position: absolute;
  bottom: 3px;
  left: 0;
  width: 200px;
}

@media (max-width: 600px) {
  .beauty-price__ttl-img {
    bottom: 40px;
  }
}
.beauty-price__table {
  border: 1px solid #f48fb1;
  margin-top: 20px;
  width: 100%;
}

.beauty-price__table th,
.beauty-price__table td {
  border: 1px solid #fff;
  padding: 10px;
  vertical-align: middle;
  width: 33.3%;
}

@media (max-width: 480px) {
  .beauty-price__table th,
  .beauty-price__table td {
    font-size: 12px;
    padding: 5px;
  }
}
.beauty-price__table th {
  background: #f48fb1;
  color: #000;
  font-weight: bold;
}

.beauty-price__table thead th:last-child {
  border-right: 1px solid #f48fb1;
}

.beauty-price__table tbody tr:last-child th {
  border-bottom: 1px solid #f48fb1;
}

.beauty-price__table tbody th {
  text-align: left;
}

.beauty-price__table tbody td {
  border-color: #f48fb1;
  font-size: 14px;
  text-align: center;
}

.beauty-price__note {
  margin-top: 5px;
}

.beauty-price__note li {
  font-size: 14px;
  margin-left: 1em;
  text-indent: -1em;
}

.beauty-price__feature {
  color: #6ab6d3;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.3;
  margin: 5px 0 0 1em;
  text-indent: -1em;
}

/*-----------------------
beauty-price-tax
-----------------------*/
.beauty-price-tax {
  font-size: 12px;
}

/*-----------------------
beauty-price-option
-----------------------*/
.beauty-price-option {
  margin-top: 10px;
}

.beauty-price-option__ttl {
  font-size: 18px;
  font-weight: bold;
  padding-left: 80px;
  position: relative;
  z-index: 1;
}

.beauty-price-option__ttl::before {
  background: #707070;
  content: "";
  height: 2px;
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  z-index: -1;
}

.beauty-price-option__ttl span {
  background: #fff;
  display: inline-block;
  padding: 0 10px;
}

.beauty-price-option__table {
  margin-top: 10px;
  width: 100%;
}

.beauty-price-option__table th,
.beauty-price-option__table td {
  border: 1px solid #BEBEBE;
  font-size: 14px;
  padding: 10px;
  text-align: center;
  width: 33.3%;
}

.beauty-price-option__table th {
  background: #BEBEBE;
  font-weight: bold;
}

.beauty-price-option__table tr:first-child th {
  border-bottom: 1px solid #fff;
}

/*********************************************************
price.html
*********************************************************/
/*-----------------------
price-message
-----------------------*/
.price-message__txt01 {
  margin-top: 30px;
}

@media (max-width: 480px) {
  .price-message__txt01 {
    margin-top: 5%;
  }
}
.price-message__pink-ud {
  color: #F48FB1;
  text-decoration: underline;
}

.price-message__txt02 {
  background: #6CBEDE;
  border-radius: 15px;
  color: #000;
  font-size: 24px;
  margin-top: 30px;
  padding: 8px 30px;
  position: relative;
  text-align: center;
}

@media (max-width: 480px) {
  .price-message__txt02 {
    font-size: 18px;
    margin-top: 5%;
    padding: 3% 5%;
    text-align: left;
  }
}
.price-message__txt02::after {
  content: "";
  position: absolute;
  bottom: -25px;
  left: 30px;
  transform: rotate(-20deg);
  border-color: #6CBEDE transparent transparent transparent;
  border-width: 36px 12px 0 12px;
  border-style: solid;
  height: 0;
  width: 0;
}

.price-message__ttl02 {
  font-size: 24px;
  font-weight: bold;
  line-height: 1.3;
  margin-top: 40px;
}

@media (max-width: 480px) {
  .price-message__ttl02 {
    font-size: 20px;
    font-size: 4.5vw;
    margin-top: 7%;
  }
}
.price-message__marker {
  background: linear-gradient(to bottom, transparent 60%, #EAD038 40%);
}

/*-----------------------
price-menu
-----------------------*/
.price-menu__ttl {
  border-bottom: 5px solid #6CBEDE;
  font-size: 24px;
  font-weight: bold;
  margin-top: 30px;
  padding-bottom: 5px;
  text-align: center;
}

.price-menu__ttl span {
  display: inline-block;
  font-size: 80%;
}

@media (max-width: 480px) {
  .price-menu__ttl {
    font-size: 20px;
  }
}
.price-menu__container {
  border: 1px solid #f48fb1;
  display: flex;
  margin-top: 15px;
}

@media (max-width: 480px) {
  .price-menu__container {
    display: block;
  }
}
.price-menu__image {
  display: flex;
  justify-content: space-between;
  margin-top: 30px;
}

@media (max-width: 480px) {
  .price-menu__image {
    margin-top: 5%;
  }
}
.price-menu__image img {
  display: block;
  width: 49%;
}

.price-menu__image img:last-child {
  transform: rotate(180deg);
}

/*-----------------------
price-menu-list
-----------------------*/
.price-menu-list {
  width: 50%;
}

.-w100 .price-menu-list {
  width: 100%;
}

@media (max-width: 480px) {
  .price-menu-list {
    width: 100%;
  }
}
.price-menu-list:first-child .price-menu-list__ttl {
  border-right: 1px solid #fff;
}

.-w100 .price-menu-list:first-child .price-menu-list__ttl {
  border-right: none;
}

@media (max-width: 480px) {
  .price-menu-list:first-child .price-menu-list__ttl {
    border-right: none;
  }
}
.price-menu-list:first-child .price-menu-list__content {
  border-right: 1px solid #f48fb1;
}

.-w100 .price-menu-list:first-child .price-menu-list__content {
  border-right: none;
}

@media (max-width: 480px) {
  .price-menu-list:first-child .price-menu-list__content {
    border-right: none;
  }
}
.price-menu-list__ttl,
.price-menu-list__content {
  padding: 10px 0;
  text-align: center;
}

@media (max-width: 768px) {
  .price-menu-list__ttl,
  .price-menu-list__content {
    padding: 10px;
  }
}
.price-menu-list__ttl {
  background: #f48fb1;
  color: #000;
  font-weight: bold;
}

.price-menu-list__content {
  font-size: 14px;
}

@media (max-width: 480px) {
  .price-menu-list__content {
    font-size: 16px;
  }
}
/*-----------------------
price-cancel
-----------------------*/
.price-cancel__ttl {
  font-size: 24px;
  font-weight: bold;
}

@media (max-width: 480px) {
  .price-cancel__ttl {
    font-size: 20px;
  }
}
.price-cancel__ttl::before {
  background-image: url(image.php?id=123);
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: inline-block;
  height: 36px;
  margin-right: 8px;
  vertical-align: middle;
  width: 36px;
}

.price-cancel__list {
  margin-top: 30px;
  padding: 0 2%;
}

.price-cancel__item {
  margin: 15px 0 0 24px;
  position: relative;
}

@media (max-width: 480px) {
  .price-cancel__item {
    margin: 5% 0 0 24px;
  }
}
.price-cancel__item:first-child {
  margin-top: 0;
}

.price-cancel__item::before {
  content: "〇";
  font-size: 18px;
  position: absolute;
  top: 0;
  left: -24px;
}

.price-cancel__note {
  font-size: 14px;
  margin-top: 15px;
  padding: 0 2%;
}

@media (max-width: 480px) {
  .price-cancel__note {
    margin-top: 3%;
  }
}
.price-cancel__note li {
  margin: 5px 0 0 1em;
  text-indent: -1em;
}

.price-cancel__note li:first-child {
  margin-top: 0;
}

.price-cancel__red-ud {
  color: #f00;
  text-decoration: underline;
}

/*********************************************************
first.html
*********************************************************/
/*-----------------------
first01
-----------------------*/
.first01 .check-list {
  background-image: url(image.php?id=130);
  background-position: bottom right;
  background-repeat: no-repeat;
  background-size: contain;
}

.first01__ttl img {
  max-width: 350px;
}

/*-----------------------
first02
-----------------------*/
.first02 {
  margin-top: 30px;
}

@media (max-width: 480px) {
  .first02 {
    margin-top: 10px;
  }
}
.first02__ttl {
  font-size: 26px;
  font-weight: bold;
}

@media (max-width: 480px) {
  .first02__ttl {
    font-size: 20px;
  }
}
.first02__ttl span {
  color: #6ab6d3;
  font-size: 140%;
}

@media (max-width: 480px) {
  .first02__ttl span {
    display: block;
  }
}
.first02__box {
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
  margin-top: 30px;
}

@media (max-width: 768px) {
  .first02__box {
    align-items: center;
  }
}
@media (max-width: 480px) {
  .first02__box {
    display: block;
  }
}
.first02__img {
  width: 23%;
}

@media (max-width: 768px) {
  .first02__img {
    width: 40%;
  }
}
@media (max-width: 480px) {
  .first02__img {
    width: 100%;
  }
}
.first02__img img {
  border: 5px solid #fff;
  box-shadow: 0 0 3px #999;
  display: block;
  margin: 0 auto;
}

.first02__txt {
  width: 75%;
}

@media (max-width: 768px) {
  .first02__txt {
    width: 55%;
  }
}
@media (max-width: 480px) {
  .first02__txt {
    margin-top: 15px;
    width: 100%;
  }
}
.first02__list {
  display: flex;
  justify-content: space-between;
  margin-top: 30px;
}

@media (max-width: 480px) {
  .first02__list {
    display: block;
  }
}
.first02__item {
  background: #f48fb1;
  border-radius: 50%;
  height: 188px;
  position: relative;
  text-align: center;
  width: 188px;
}

@media (max-width: 768px) {
  .first02__item {
    height: 150px;
    width: 150px;
  }
}
@media (max-width: 480px) {
  .first02__item {
    height: 188px;
    margin: 0 auto;
    width: 188px;
  }
  .first02__item:nth-child(2) {
    margin: 30px auto;
  }
}
.first02__num {
  background: #fff;
  border: 3px solid #f48fb1;
  border-radius: 50%;
  color: #f48fb1;
  font-size: 18px;
  font-weight: bold;
  height: 40px;
  line-height: 35px;
  margin-left: -20px;
  position: absolute;
  top: -10px;
  left: 50%;
  width: 40px;
}

.first02__ttl02 {
  font-weight: bold;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 100%;
}

.first02__bottom {
  margin-top: 50px;
}

/*-----------------------
first03
-----------------------*/
.first03 .top-contents-box {
  margin-top: 20px;
}

/*-----------------------
first-box
-----------------------*/
.first-box {
  display: flex;
  align-items: center;
  flex-direction: row-reverse;
  justify-content: space-between;
  margin: 30px auto 0;
  width: 95%;
}

@media (max-width: 600px) {
  .first-box {
    display: block;
  }
}
.first-box__img {
  width: 30%;
}

@media (max-width: 768px) {
  .first-box__img {
    width: 40%;
  }
}
@media (max-width: 600px) {
  .first-box__img {
    width: 100%;
  }
}
.first-box__img img {
  border: 5px solid #fff;
  box-shadow: 0 0 3px #999;
  display: block;
  margin: 0 auto;
}

.first-box__txt {
  width: 65%;
}

@media (max-width: 768px) {
  .first-box__txt {
    width: 55%;
  }
}
@media (max-width: 600px) {
  .first-box__txt {
    margin-top: 15px;
    width: 100%;
  }
}
.first-box__txt p:not(:first-child) {
  margin-top: 1em;
}

/*********************************************************
flow.html
*********************************************************/
/*-----------------------
flow-bg
-----------------------*/
.flow-bg {
  background: #efefef;
  border-radius: 15px;
  box-shadow: 3px 3px 5px #ccc;
  padding: 30px;
}

@media (max-width: 480px) {
  .flow-bg {
    padding: 20px;
  }
}
/*-----------------------
flow-box
-----------------------*/
.flow-box {
  background: #fff;
  border: 3px solid #6ab6d3;
  margin-top: 50px;
  padding: 30px;
  position: relative;
}

@media (max-width: 480px) {
  .flow-box {
    padding: 30px 15px;
  }
}
.flow-box:first-child {
  margin-top: 0;
}

.flow-box:last-child::before, .flow-box:last-child::after {
  display: none;
}

.flow-box::before, .flow-box::after {
  content: "";
  position: absolute;
  z-index: 2;
}

.flow-box::before {
  bottom: -65px;
  left: 51%;
  margin-left: -90px;
  opacity: 0.6;
  border-color: #ccc transparent transparent transparent;
  border-width: 70px 90px 0 90px;
  border-style: solid;
  height: 0;
  width: 0;
}

.flow-box::after {
  bottom: -65px;
  left: 50%;
  margin-left: -100px;
  border-color: #75d9ff transparent transparent transparent;
  border-width: 80px 100px 0 100px;
  border-style: solid;
  height: 0;
  width: 0;
}

.flow-box__ttl {
  border-bottom: 3px solid #efefef;
  font-size: 24px;
  font-weight: bold;
  padding-bottom: 10px;
}

@media (max-width: 480px) {
  .flow-box__ttl {
    font-size: 20px;
  }
}
.flow-box__num {
  background: #6ab6d3;
  color: #fff;
  display: inline-block;
  font-size: 36px;
  font-weight: bold;
  line-height: 50px;
  margin-right: 15px;
  text-align: center;
  width: 50px;
  height: 50px;
}

.flow-box__wraper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 30px;
}

@media (max-width: 480px) {
  .flow-box__wraper {
    display: block;
  }
}
.flow-box__img {
  width: 30%;
}

@media (max-width: 480px) {
  .flow-box__img {
    width: 100%;
  }
}
.flow-box__content {
  width: 65%;
}

@media (max-width: 480px) {
  .flow-box__content {
    margin-top: 15px;
    width: 100%;
  }
}
.flow-box__txt {
  margin-top: 1em;
}

.flow-box__txt:first-child {
  margin-top: 0;
}

/*-----------------------
flow-box-reserve
-----------------------*/
.flow-box-reserve {
  margin-top: 30px;
}

.flow-box-reserve__tel,
.flow-box-reserve__net {
  background: #F9F6EF;
  border: 1px solid #ccc;
  border-radius: 15px;
  padding: 15px;
}

@media (max-width: 480px) {
  .flow-box-reserve__tel,
  .flow-box-reserve__net {
    padding: 10px;
  }
}
.flow-box-reserve__tel {
  text-align: center;
}

.flow-box-reserve__tel .flow-box-reserve__header {
  background: #5E96D6;
}

.flow-box-reserve__net {
  text-align: center;
}

.flow-box-reserve__net .flow-box-reserve__header {
  background: #6AD374;
}

.flow-box-reserve__or {
  margin: 15px 0;
  text-align: center;
}

.flow-box-reserve__header {
  color: #fff;
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 15px;
  padding: 5px 0;
}

@media (max-width: 480px) {
  .flow-box-reserve__header {
    font-size: 18px;
  }
}
.flow-box-reserve__container {
  display: inline-block;
  margin-right: 15px;
}

@media (min-width: 481px) and (max-width: 768px) {
  .flow-box-reserve__container {
    margin-right: auto;
    margin-left: auto;
    width: 270px;
  }
}
.flow-box-reserve__container:last-child {
  margin-right: 0;
}

@media (max-width: 768px) {
  .flow-box-reserve__container:last-child {
    margin-top: 15px;
  }
}
.header-reserve__img img {
  width: 150px;
}

.flow-box-reserve__pc {
  display: flex;
  align-items: center;
}

@media (max-width: 480px) {
  .flow-box-reserve__pc {
    display: none;
  }
}
.flow-box-reserve__ttl {
  background: #92D7E7;
  border-radius: 10px;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 60px;
  line-height: 1;
  margin-right: 5px;
  padding: 15px;
  position: relative;
  text-align: center;
  width: 60px;
}

.flow-box-reserve__ttl:before {
  border: 1px dashed #fff;
  border-radius: 10px;
  box-sizing: border-box;
  content: "";
  height: 50px;
  position: absolute;
  top: 5px;
  left: 5px;
  width: 50px;
}

.-beauty .flow-box-reserve__ttl {
  background: #ffafc7;
}

.flow-box-reserve__ttl p {
  font-size: 14px;
  font-weight: bold;
  line-height: 1;
}

.flow-box-reserve__ttl span {
  display: block;
}

.flow-box-reserve__box {
  background: #fff;
  border-radius: 15px;
  box-shadow: 3px 3px 8px #ccc;
  padding: 5px 10px;
}

.flow-box-reserve__txt {
  font-size: 12px;
  text-align: center;
}

.flow-box-reserve__num a {
  color: #5a9fba;
  font-size: 24px;
  font-weight: bold;
  text-shadow: 0 4px 0 #c6dee7;
}

.-beauty .flow-box-reserve__num a {
  color: #DE6C8E;
  text-shadow: 0 4px 0 #f1bfce;
}

.flow-box-reserve__num img {
  display: inline-block;
  margin-right: 5px;
  vertical-align: middle;
  width: 15px;
}

@media (min-width: 481px) {
  .flow-box-reserve__sp {
    display: none;
  }
}
.flow-box-reserve__sp a {
  text-decoration: none;
}

.flow-box-reserve__sp .flow-box-reserve__ttl {
  display: block;
  font-size: 13px;
  font-weight: bold;
  margin-right: 0;
  padding: 10px;
  text-align: center;
  white-space: nowrap;
}

.flow-box-reserve__sp .flow-box-reserve__icon {
  display: block;
  margin: 0 auto 3px;
  width: 15px;
}

/*********************************************************
head_shoulder_neck.html
strained_back.html
*********************************************************/
/*-----------------------
symptoms-01
-----------------------*/
.symptoms-01__box {
  background-position: left center;
  background-repeat: no-repeat;
  background-size: 25% auto;
}

.symptoms-01__box.-hsn {
  background-image: url(image.php?id=149);
}

.symptoms-01__box.-back {
  background-image: url(image.php?id=155);
  padding: 50px 0;
}

.symptoms-01__box.-sports {
  background-image: url(image.php?id=199);
  padding: 50px 0;
}

.symptoms-01__box.-knee {
  background-image: url(image.php?id=207);
  padding: 50px 0;
}

.symptoms-01__box.-injury {
  background-image: url(image.php?id=205);
  padding: 50px 0;
}

.symptoms-01__box.-posture {
  background-image: url(image.php?id=210);
}

@media (max-width: 768px) {
  .symptoms-01__box {
    background-position: bottom right;
    background-size: contain;
    position: relative;
    z-index: 1;
  }
  .symptoms-01__box::before {
    background: rgba(255, 255, 255, 0.7);
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
  }
}
.symptoms-01__box .check-list {
  margin-left: auto;
  width: 70%;
}

@media (max-width: 768px) {
  .symptoms-01__box .check-list {
    width: 100%;
  }
}
/*-----------------------
symptoms-02
-----------------------*/
.symptoms-02 {
  background: #fcb7f8;
  padding: 50px;
  position: relative;
}

@media (max-width: 480px) {
  .symptoms-02 {
    padding: 5%;
  }
}
.symptoms-02__container {
  background: #fce8c9;
  margin-top: 50px;
  padding: 70px 15px 150px;
  position: relative;
}

.symptoms-02__img01 {
  position: absolute;
  top: -50px;
  left: -15px;
  width: 200px;
}

.symptoms-02__list li {
  color: #994c05;
  font-size: 18px;
  font-weight: bold;
  padding-left: 40px;
  margin-top: 15px;
  position: relative;
}

.symptoms-02__list li:first-child {
  margin-top: 0;
}

.symptoms-02__list li::before {
  background: #fff;
  border: 5px solid #f00;
  border-radius: 50%;
  content: "";
  display: inline-block;
  margin-right: 10px;
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
}

.symptoms-02__img02 {
  position: absolute;
  right: 5px;
  bottom: 0;
  width: 480px;
}

@media (max-width: 480px) {
  .symptoms-02__img02 {
    right: 2.5%;
    width: 95%;
  }
}
/*-----------------------
symptoms-03
-----------------------*/
.symptoms-03__ttl {
  background: #42acd5;
  border-radius: 15px;
  color: #fff;
  font-weight: bold;
  margin-top: 30px;
  padding: 5px;
  position: relative;
}

@media (max-width: 480px) {
  .symptoms-03__ttl {
    margin-top: 20px;
  }
}
.symptoms-03__ttl:first-child {
  margin-top: 0;
}

.symptoms-03__ttl span {
  border: 3px dashed #2a92ba;
  border-radius: 10px;
  display: block;
  padding: 5px;
}

.symptoms-03__content {
  line-height: 1.5;
  margin-top: 15px;
  padding: 0 5px;
}

.symptoms-03__content strong {
  color: #6CBEDE;
}

.symptoms-03__list dt {
  border-bottom: 2px solid #6CBEDE;
  color: #6CBEDE;
  font-size: 24px;
  font-weight: bold;
  margin-top: 15px;
  padding-left: 45px;
  position: relative;
}

.symptoms-03__list dt:first-of-type {
  margin-top: 0;
}

.symptoms-03__list dt:first-of-type::before {
  content: "1.";
}

.symptoms-03__list dt:nth-of-type(2)::before {
  content: "2.";
}

.symptoms-03__list dt:nth-of-type(3)::before {
  content: "3.";
}

.symptoms-03__list dt::before {
  font-family: Arial;
  font-size: 36px;
  font-weight: bold;
  position: absolute;
  top: -12px;
  left: 0;
}

.symptoms-03__list dd {
  margin-top: 15px;
}

.symptoms-03-arrow {
  background: #6CBEDE;
  margin: 30px auto 80px;
  padding: 10px 10px 0;
  position: relative;
  width: 80%;
  max-width: 600px;
}

.symptoms-03-arrow__txt {
  color: #fff;
  font-size: 24px;
  font-weight: bold;
  position: relative;
  text-align: center;
  z-index: 2;
}

@media (max-width: 400px) {
  .symptoms-03-arrow__txt {
    font-size: 20px;
  }
}
@media (max-width: 340px) {
  .symptoms-03-arrow__txt {
    font-size: 5.5vw;
  }
}
.symptoms-03-arrow__txt strong {
  color: #FDC702;
  font-size: 120%;
}

.top-contents-box__border {
  border-top: 30px solid #6CBEDE;
  border-left: 105px solid #fff;
  border-right: 105px solid #fff;
  box-sizing: border-box;
  position: absolute;
  bottom: -15px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
}

@media (max-width: 768px) {
  .top-contents-box__border {
    border-width: 5vw 15vw 0;
  }
}
.top-contents-box__border::before, .top-contents-box__border::after {
  content: "";
}

.top-contents-box__border::before {
  background: #6CBEDE;
  border-top: 15px solid #6CBEDE;
  border-left: 60px solid #fff;
  border-right: 60px solid #fff;
  box-sizing: border-box;
  position: absolute;
  bottom: -22px;
  left: 50%;
  transform: translateX(-50%);
  width: 97%;
}

@media (max-width: 768px) {
  .top-contents-box__border::before {
    bottom: -3.5vw;
    border-width: 2.5vw 11vw 0;
  }
}
.top-contents-box__border::after {
  border-color: #6CBEDE transparent transparent transparent;
  border-style: solid;
  border-width: 30px 110px 0 110px;
  content: "";
  display: block;
  position: absolute;
  bottom: -60px;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
}

@media (max-width: 768px) {
  .top-contents-box__border::after {
    bottom: -8vw;
    border-width: 3.5vw 11vw 0;
  }
}
/*-----------------------
symptoms-contact
-----------------------*/
@media (max-width: 1024px) {
  .symptoms-contact__pc {
    display: none;
  }
}
@media (min-width: 1025px) {
  .symptoms-contact__sp {
    display: none;
  }
}
/*********************************************************
sitemap.html
*********************************************************/
/*-----------------------
sitemap-content
-----------------------*/
.sitemap-content {
  margin-top: 50px;
}

.sitemap-content__ttl {
  border-bottom: 10px double #6AB6D3;
  color: #400000;
  font-size: 18px;
  font-weight: bold;
  padding: 0 0 5px 5px;
}

/*-----------------------
sitemap-list
-----------------------*/
.sitemap-list {
  margin-top: 20px;
}

.sitemap-list__item {
  display: inline-block;
  margin: 20px 10px 0 10px;
}

.sitemap-list__item::before {
  color: #6AB6D3;
  content: "\f152";
  font-family: "Font Awesome 5 Free";
  font-size: 16px;
  font-weight: bold;
  margin-right: 5px;
}

.sitemap-list__link {
  color: #F99700;
}

.sitemap-list__link:hover {
  text-decoration: none;
}

/*********************************************************
faq.html
*********************************************************/
/*-----------------------
qa-box
-----------------------*/
.qa-box {
  border: 3px solid #b9ddea;
  margin-bottom: 30px;
  padding: 10px 0;
}

.qa-box:first-of-type {
  margin-top: 30px;
}

.qa-box:last-of-type {
  margin-bottom: 0;
}

.qa-box__row {
  display: flex;
  align-items: center;
  padding: 0 10px;
}

.qa-box__row.-q {
  border-bottom: 1px dashed #91c9df;
  padding-bottom: 10px;
}

.qa-box__row.-a {
  padding-top: 10px;
}

.qa-box__icon {
  border-radius: 50%;
  color: #FFF;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  font-weight: bold;
  height: 50px;
  margin-right: 10px;
  text-align: center;
  width: 50px;
}

.-q .qa-box__icon {
  background: #FFB1B1;
}

.-a .qa-box__icon {
  background: #B1C3FF;
}

.qa-box__txt {
  line-height: 1.5;
}

.-q .qa-box__txt {
  color: #300000;
  font-weight: bold;
}

.-a .qa-box__txt {
  color: #707070;
  font-size: 15px;
}

/***************************************************************
view.html
***************************************************************/
/*-----------------------
v-b01-gallery
-----------------------*/
.v-b01-gallery {
  margin-top: 30px;
}

.v-b01-gallery__list {
  display: flex;
  flex-wrap: wrap;
}

.v-b01-gallery__item {
  box-sizing: border-box;
  width: 48%;
}

.v-b01-gallery__item:nth-child(even) {
  margin-left: 2%;
}

.v-b01-gallery__item:nth-child(odd) {
  margin-right: 2%;
}

.v-b01-gallery__item:nth-child(n+3) {
  margin-top: 4%;
}

.v-b01-gallery__link:hover {
  opacity: 0.7;
}

.v-b01-gallery__ttl {
  color: #300;
  font-weight: bold;
  line-height: 1.3;
  margin: 5px 0;
}

.v-b01-gallery__txt {
  color: #333;
  font-size: 14px;
  line-height: 1.5;
}

/*********************************************************
profile.html
*********************************************************/
/*-----------------------
content-ttl02
-----------------------*/
.content-ttl02 {
  background: #42acd5;
  border-radius: 15px;
  color: #fff;
  font-weight: bold;
  margin-top: 30px;
  padding: 5px;
  position: relative;
}

.content-ttl02.-beauty {
  background: #ef6191;
}

.content-ttl02.-beauty span {
  border: 3px dashed #eb3270;
}

@media (max-width: 480px) {
  .content-ttl02 {
    margin-top: 20px;
  }
}
.content-ttl02:first-child {
  margin-top: 0;
}

.content-ttl02 span {
  border: 3px dashed #2a92ba;
  border-radius: 10px;
  display: block;
  padding: 5px;
}

/*-----------------------
profile-box
-----------------------*/
.profile-box {
  background: #a7e6ff;
  color: #333;
  padding: 15px;
  text-align: center;
}

.profile-box.-beauty {
  background: #ffa5c3;
  color: #fff;
}

.profile-box__ttl {
  font-size: 24px;
  font-weight: bold;
}

.profile-box__ttl span {
  display: inline-block;
  font-size: 18px;
  margin-right: 15px;
}

.profile-box__img {
  margin-top: 15px;
}

.profile-box__txt {
  display: inline-block;
  margin-top: 15px;
}

.profile-box__txt p {
  font-weight: bold;
  margin-top: 10px;
  text-align: left;
}

.profile-box__txt p:first-child {
  margin-top: 0;
}

/*-----------------------
profile-qualifications
-----------------------*/
.profile-qualifications {
  display: flex;
  justify-content: space-between;
  margin-top: 15px;
}

.profile-qualifications__item {
  width: 32%;
}

/*-----------------------
profile-vrt
-----------------------*/
.profile-vrt {
  display: flex;
  align-items: center;
  margin-top: 15px;
}

@media (max-width: 480px) {
  .profile-vrt {
    display: block;
  }
}
.profile-vrt__img {
  margin-right: 15px;
}

@media (max-width: 480px) {
  .profile-vrt__img {
    margin-right: 0;
    text-align: center;
  }
}
@media (max-width: 480px) {
  .profile-vrt__txt {
    margin-top: 10px;
  }
}
.profile-vrt__list dt {
  color: #42acd5;
  font-size: 18px;
  font-weight: bold;
  margin-top: 10px;
}

/*-----------------------
profile-way
-----------------------*/
.profile-way__ttl {
  background: #effbff;
  color: #888;
  font-weight: bold;
  margin-top: 15px;
  padding: 10px;
}

.profile-way__box {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 10px;
}

@media (max-width: 480px) {
  .profile-way__box {
    flex-direction: column-reverse;
  }
}
.profile-way__txt {
  width: 65%;
}

@media (max-width: 480px) {
  .profile-way__txt {
    font-size: 14px;
    margin-top: 10px;
    width: 100%;
  }
}
.profile-way__img {
  text-align: center;
  width: 30%;
}

@media (max-width: 480px) {
  .profile-way__img {
    width: 100%;
  }
}
/*-----------------------
profile-greeting
-----------------------*/
.profile-greeting {
  margin-top: 15px;
}

.profile-greeting p {
  margin-top: 10px;
}

/*-----------------------
self-introduction
-----------------------*/
.self-introduction {
  display: flex;
  flex-wrap: wrap;
  margin-top: 15px;
}

@media (max-width: 480px) {
  .self-introduction {
    display: block;
  }
}
.self-introduction dt,
.self-introduction dd {
  margin-top: 2px;
  padding: 10px;
}

@media (max-width: 480px) {
  .self-introduction dt,
  .self-introduction dd {
    font-size: 14px;
  }
}
.self-introduction dt {
  background: #ffcbdc;
  color: #ff4483;
  font-weight: bold;
  text-align: center;
  width: 30%;
}

@media (max-width: 480px) {
  .self-introduction dt {
    width: 100%;
  }
}
.self-introduction dd {
  background: #fff9ee;
  border: 1px solid #FFCBDC;
  color: #a17746;
  width: 70%;
}

@media (max-width: 480px) {
  .self-introduction dd {
    margin-top: 0;
    text-align: center;
    width: 100%;
  }
}
/*********************************************************
liability_insurance.html
*********************************************************/
/*-----------------------
li-box
-----------------------*/
.li-box__inner {
  display: flex;
  align-items: center;
  flex-direction: row-reverse;
  justify-content: space-between;
  margin-top: 15px;
}

@media (max-width: 600px) {
  .li-box__inner {
    display: block;
  }
}
.li-box__img {
  width: 40%;
}

@media (max-width: 600px) {
  .li-box__img {
    width: 100%;
  }
}
.li-box__txt {
  width: 57%;
}

@media (max-width: 600px) {
  .li-box__txt {
    margin-top: 1em;
    width: 100%;
  }
}
.li-box__txt02 {
  margin-top: 1em;
}

.li-box__txt02:first-child {
  margin-top: 0;
}

.li-box__txt03 {
  color: #2a92ba;
  font-weight: bold;
  text-decoration: underline;
}

.li-box__txt04 {
  color: #b90000;
  font-weight: bold;
}

/*-----------------------
li-box02
-----------------------*/
.li-box02 .check-list {
  background-image: url(image.php?id=180);
  background-position: bottom right;
  background-repeat: no-repeat;
  background-size: 50%;
}

/*-----------------------
li-box03
-----------------------*/
.li-box03 {
  background: #ffdea0;
  border-radius: 15px;
  padding: 15px;
  text-align: center;
}

.li-box03__ttl {
  font-size: 24px;
}

@media (max-width: 480px) {
  .li-box03__ttl {
    font-size: 18px;
  }
}
.li-box03__txt {
  color: #f00;
  margin-top: 20px;
}

@media (max-width: 480px) {
  .li-box03__txt {
    margin-top: 10px;
  }
}
/*-----------------------
li-box04
-----------------------*/
.li-box04 {
  z-index: 1;
}

@media (min-width: 481px) {
  .li-box04 {
    background-color: #c4e3ff;
    border-radius: 15px;
    max-width: 800px;
    margin: 20px auto 0;
    padding: 10px;
    position: relative;
  }
}
@media (min-width: 481px) {
  .li-box04::after {
    background-image: url(image.php?id=167);
    background-position: right bottom;
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    position: absolute;
    top: 15px;
    bottom: 15px;
    right: 15px;
    width: 50%;
    height: 90%;
    height: calc(100% - 30px);
  }
}
@media (max-width: 768px) {
  .li-box04::after {
    width: 40%;
    z-index: -1;
  }
}
.li-box04__ttl {
  color: #fff;
  font-size: 36px;
  font-weight: bold;
  text-shadow: 2px 0 2px #2a64ba, 0 2px 2px #2a64ba, -2px 0 2px #2a64ba, 0 -2px 2px #2a64ba;
}

.li-box04__ttl span {
  display: block;
  font-size: 24px;
  text-shadow: 1px 0 1px #000, 0 1px 1px #000, -1px 0 1px #000, 0 -1px 1px #000;
}

.li-box04__list {
  margin-top: 30px;
}

.li-box04__list strong {
  color: #2a92ba;
}

@media (max-width: 480px) {
  .li-box04__list {
    background: #c4e3ff;
    border-radius: 15px;
    margin: 20px auto 0;
    padding: 10px;
    width: 96%;
  }
}
.li-box04__item {
  font-size: 20px;
  margin-top: 1em;
  padding-left: 70px;
  position: relative;
  text-shadow: 1px 0 1px #fff, 0 1px 1px #fff, -1px 0 1px #fff, 0 -1px 1px #fff;
}

@media (max-width: 480px) {
  .li-box04__item {
    padding-left: 0;
  }
  .li-box04__item br {
    display: none;
  }
}
.li-box04__item:first-child {
  margin-top: 0;
}

.li-box04__num {
  background: orange;
  border-radius: 15px;
  color: #fff;
  display: inline-block;
  font-size: 16px;
  font-weight: bold;
  letter-spacing: 0.1em;
  padding: 5px;
  position: absolute;
  top: 0;
  left: 0;
  text-align: center;
  text-shadow: none;
  width: 65px;
}

@media (max-width: 480px) {
  .li-box04__num {
    display: block;
    margin-bottom: 5px;
    position: static;
    width: 100%;
  }
}
.li-box04__num span {
  font-family: Arial;
}

/*********************************************************
accident.html
*********************************************************/
/*-----------------------
page-accident
-----------------------*/
.page-accident .top-contents-box {
  margin-top: 15px;
}

.page-accident .top-contents-box__txt {
  font-size: 16px;
}

@media (max-width: 480px) {
  .page-accident .top-contents-box__txt {
    font-size: 14px;
  }
}
.page-accident .top-contents-box__txt p {
  margin-top: 1em;
}

.page-accident .top-contents-box__txt p:first-child {
  margin-top: 0;
}

.page-accident .top-contents-box__accident01,
.page-accident .top-contents-box__accident02 {
  font-weight: bold;
}

.page-accident .top-contents-box__accident01 {
  color: #6CBEDE;
  text-decoration: underline;
}

.page-accident .top-contents-box__accident02 {
  color: #b10;
}

/*********************************************************
voice.html
*********************************************************/
/*-----------------------
voice-list
-----------------------*/
.voice-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

@media (max-width: 600px) {
  .voice-list {
    display: block;
  }
}
.voice-list__item {
  background: #e0eeff;
  overflow: hidden;
  padding: 2%;
  position: relative;
  width: 48%;
}

@media (max-width: 600px) {
  .voice-list__item {
    margin-right: auto;
    margin-left: auto;
    width: 96%;
  }
  .voice-list__item:nth-child(n+2) {
    margin-top: 4%;
  }
}
.voice-list__item:hover {
  opacity: 0.8;
}

.voice-list__item:hover .voice-list__img img {
  transform: translateY(-50%);
}

.voice-list__item:nth-child(n+3) {
  margin-top: 4%;
}

.voice-list__link {
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 2;
}

.voice-list__ttl {
  font-size: 18px;
  font-weight: bold;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.voice-list__img {
  background: #eee;
  margin-top: 15px;
  min-height: 300px;
  overflow: hidden;
  padding: 10px;
  position: relative;
}

.voice-list__img img {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  transition: 0.2s;
  width: 100%;
}

.-voice .qa-box {
  border: 3px solid #e4e4e4;
  padding: 10px;
}

.-voice p {
  margin-top: 5px;
}

.-voice p:first-child {
  margin-top: 0;
}

.voice-list__more {
  font-size: 18px;
  font-weight: bold;
  margin-top: 10px;
  text-align: right;
}

.voice-list__more::after {
  content: "＞";
}

/*-----------------------
pagination
-----------------------*/
.pagination {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 5%;
}

.pagination a {
  text-decoration: none;
}

.pagination a:hover {
  opacity: 0.6;
}

#pagination {
  flex: 1;
  margin: 0 auto;
}

#pagination ul {
  font-size: 0;
  text-align: center;
}

#pagination li {
  border: 1px solid #333;
  display: inline-block;
  font-size: 16px;
  margin: 5px 5px 0 0;
  text-align: center;
  vertical-align: middle;
}

#pagination a {
  color: #333;
  padding: 7px 10px;
}

#prevpage,
#nextpage {
  width: 40px;
}

#prevpage a,
#nextpage a {
  color: #2a92ba;
  font-size: 36px;
  font-weight: bold;
}

#prevpage {
  margin-right: 10px;
}

#nextpage {
  margin-left: 10px;
}

/*********************************************************
voice-pages.html
*********************************************************/
/*-----------------------
voice-ttl
-----------------------*/
.voice-ttl {
  border-bottom: 3px dashed #aed6f1;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.3;
  padding-bottom: 5px;
}

/*-----------------------
voice-page-return
-----------------------*/
.voice-page-return {
  border: 3px solid #2a92ba;
  color: #333;
  display: block;
  margin: 30px auto 0;
  padding: 10px;
  text-align: center;
  text-decoration: none;
  width: 300px;
}

.voice-page-return:hover {
  opacity: 0.8;
}

.voice-page-return img {
  display: inline-block;
  margin-left: 10px;
  vertical-align: middle;
  width: 30px;
}

/*********************************************************
news.html
news-pages.html
*********************************************************/
/*-----------------------
news
-----------------------*/
.news {
  background: #f7f7f7;
  border-radius: 15px;
  box-shadow: 3px 3px 5px #ccc;
  padding: 15px;
}

.news__ttl {
  font-size: 24px;
  border-bottom: 3px dashed #333;
  padding-bottom: 8px;
}

.news__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 3%;
}

.news__theme {
  background: #2680eb;
  border-radius: 10px;
  color: #fff;
  display: inline-block;
  font-size: 12px;
  font-weight: bold;
  padding: 5px 8px;
  text-align: center;
  white-space: nowrap;
}

.news__body {
  color: #000;
  font-size: 18px;
  line-height: 1.7;
  margin-top: 7%;
  padding: 0 2%;
}

.news__link {
  margin-top: 5%;
  text-align: right;
}

.news__link a {
  color: #333;
  text-decoration: underline;
}

.news__link a:hover {
  text-decoration: none;
}

.news__link a::after {
  content: "\f2ea";
  display: inline-block;
  font-family: "Font Awesome 5 Free";
  font-weight: bold;
  padding-left: 3px;
}

/*********************************************************
フッター
*********************************************************/
.footer {
  background-image: url(image.php?id=057);
  background-repeat: no-repeat;
  background-size: cover;
  border-top: 5px solid #6CBEDE;
}

.footer__inner {
  padding-top: 80px;
  padding-bottom: 80px;
  box-sizing: border-box;
  margin-right: auto;
  margin-left: auto;
  max-width: 1000px;
}

@media (max-width: 1024px) {
  .footer__inner {
    padding-right: 2%;
    padding-left: 2%;
  }
}
@media (max-width: 1024px) {
  .footer__inner {
    display: none;
  }
}
.footer__nav {
  display: flex;
  justify-content: space-between;
}

.footer__copy {
  background: #6CBEDE;
  color: #fff;
  font-size: 14px;
  padding: 20px 0;
  text-align: center;
}

/*-----------------------
page-top
-----------------------*/
.page-top {
  height: 50px;
  position: fixed;
  right: 3%;
  bottom: 30%;
  width: 50px;
  z-index: 99;
}

.page-top__link {
  display: block;
  background: #6CBEDE;
  border-radius: 10px;
  height: 100%;
  position: relative;
  text-align: center;
}

.page-top__link:hover {
  background: #42acd5;
}

.page-top__link::after {
  content: "";
  margin: -7.5px 0 0 -10px;
  position: absolute;
  top: 50%;
  left: 50%;
  border-color: transparent transparent #fff transparent;
  border-width: 0 10px 15px 10px;
  border-style: solid;
  height: 0;
  width: 0;
}

/*-----------------------
fmenu-list
-----------------------*/
.fmenu-list {
  width: 20%;
}

.fmenu-list__ttl {
  font-weight: bold;
  position: relative;
}

.fmenu-list__ttl::before {
  background-image: url(image.php?id=063);
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: inline-block;
  height: 16px;
  margin-top: -8px;
  position: absolute;
  top: 50%;
  left: -21px;
  width: 14px;
}

.fmenu-list__txt {
  font-size: 14px;
  margin-top: 1em;
}

.fmenu-list__txt:first-child {
  margin-top: 1.5em;
}

.fmenu-list__link {
  color: #464646;
  font-weight: bold;
}

.fmenu-list__link:hover {
  text-decoration: none;
}