@charset "UTF-8";
/*! このファイルを変更する場合は「.scss」から変更して下さい */
/*! 「.scss」ファイルがつかえない場合はcustom.cssを変更する */
/* ボタンカラー */
/* フォント系 */
/*! このファイルを変更する場合は「.scss」から変更して下さい */
/*! 「.scss」ファイルがつかえない場合はcustom.cssを変更する */
#reservation {
  padding-bottom: 0;
}
#reservation .reservation__body {
  background: url(../images/first/reservation__bg.jpg) center;
  -webkit-background-size: cover;
  background-size: cover;
}
#reservation .reservation__contact {
  width: 45%;
  margin-right: 3%;
}
#reservation .reservation__contact .contact__body {
  position: relative;
  top: 30px;
  left: 0;
  margin: 20px;
  padding: 30px;
  background-color: #fff;
  -moz-box-shadow: rgba(0, 0, 0, 0.15) 1px 1px 10px;
  -webkit-box-shadow: rgba(0, 0, 0, 0.15) 1px 1px 10px;
  box-shadow: rgba(0, 0, 0, 0.15) 1px 1px 10px;
  border-radius: 10px;
}
#reservation .reservation__contact .contact__body .button {
  width: 100%;
  display: block;
  padding: 20px 0;
  margin-bottom: 20px;
  border-radius: 6px;
}
#reservation .reservation__contact .contact__body .button .em {
  color: #ff0;
  font-weight: bold;
}
#reservation .reservation__contact .contact__body .contact__tel {
  background: #f5f5f5;
  padding: 20px 0;
}
#reservation .reservation__contact .contact__body .contact__tel .tel__num {
  margin-top: 5px;
  font-size: 35rem;
  line-height: 1em;
}
#reservation .reservation__contact .contact__body .contact__note {
  text-align: left;
  margin-bottom: 15px;
}
#reservation .reservation__contact .contact__body .contact__note .sub {
  color: #d01c33;
}
#reservation .reservation__about {
  width: 52%;
  background-color: rgba(255, 255, 255, 0.8);
  text-align: left;
  padding: 50px;
  line-height: 2em;
}
#reservation .reservation__about .about__text {
  margin-bottom: 20px;
}
#reservation .reservation__about .about__text strong {
  font-weight: bold;
  font-size: 18rem;
  color: #1b82b7;
}
#reservation .reservation__about .cancel__label {
  font-size: 18rem;
  margin-bottom: 10px;
  color: #1b82b7;
}

#flow .flow__list {
  -webkit-justify-content: center;
  /* Safari */
  justify-content: center;
  margin: 0 0 40px 0;
}
#flow .flow__list .list__item {
  width: 27%;
}
#flow .flow__list .list__item .item_time {
  height: 1.4em;
  text-align: right;
  color: #e13d79;
  margin-bottom: 5px;
  font-weight: bold;
}
#flow .flow__list .list__item .item__label {
  font-size: 18rem;
  margin: 15px 0;
  color: #1c92ce;
  font-family: "Kiwi Maru", "Noto Sans JP", "Open Sans", Verdana, Roboto, "Droid Sans", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", sans-serif;
}
#flow .flow__list .list__item .item__text {
  text-align: left;
  font-size: 14rem;
  line-height: 1.6em;
}
#flow .flow__list .list__item img {
  border-radius: 10px;
}
#flow .flow__list .arrow {
  width: 6%;
  font-size: 24rem;
  color: #68b9e2;
}
#flow .flow__list .arrow .fa {
  margin-top: 123px;
  font-size: 30rem;
}
#flow .fllow__need {
  padding: 45px;
  text-align: left;
  background-color: #eaf4fa;
  border-radius: 20px;
}
#flow .fllow__need .need__label {
  font-size: 18rem;
  margin-bottom: 20px;
  color: #1b82b7;
}
#flow .fllow__need .need__item {
  width: 48%;
}
#flow .fllow__need .need__item .item__stuff {
  text-align: left;
  padding: 25px;
  font-size: 20rem;
  background-color: #fff;
  margin-bottom: 10px;
}
#flow .fllow__need .need__item .item__stuff:last-child {
  margin-bottom: 0;
}
#flow .fllow__need .need__item .button {
  text-align: center;
  display: block;
  padding: 15px 0;
  font-size: 16rem;
  margin-bottom: 10px;
  border-radius: 10px;
}
#flow .fllow__need .need__item .button .icon {
  top: 9px;
}
#flow .fllow__need .need__item .item__text {
  font-size: 14rem;
  line-height: 1.5em;
  margin: 10px 0 10px 0;
}
#flow .fllow__need .need__item .sub {
  font-size: 13rem;
  line-height: 1.5em;
}
#flow .fllow__need .need__item .sub a {
  color: #333;
  text-decoration: underline;
}

#policy {
  padding-bottom: 0;
}
#policy .policy__body {
  background: url(../images/first/policy__bg.jpg) center;
  -webkit-background-size: cover;
  background-size: cover;
  padding: 50px 0;
}
#policy .policy__list {
  padding: 35px;
  background-color: rgba(255, 255, 255, 0.9);
  text-align: left;
}
#policy .policy__list li {
  margin-bottom: 40px;
  background: url(../images/common/icons/rect.svg) no-repeat;
  -webkit-background-size: 20px;
  background-size: 20px;
  background-position: 0px 3px;
}
#policy .policy__list li:last-child {
  margin-bottom: 0;
}
#policy .policy__list .list__label {
  font-size: 20rem;
  margin: 0 0 20px 35px;
}
#policy .policy__list .list__text {
  margin: 0 0 0 35px;
}

@media screen and (max-width: 768px) {
  #reservation .reservation__body {
    padding: 30px 0;
  }
  #reservation .reservation__contact {
    width: 100%;
    margin: 0 0 30px 0;
  }
  #reservation .reservation__contact .contact__body {
    top: 0;
    margin: 0 15px 0 15px;
  }
  #reservation .reservation__about {
    width: auto;
    margin: 0 15px;
    padding: 30px;
  }

  #flow .flow__list {
    margin: 0 15px 0 15px;
  }
  #flow .flow__list .list__item {
    width: 100%;
  }
  #flow .flow__list .arrow {
    width: 100%;
    margin: 20px 0;
  }
  #flow .flow__list .arrow .fa {
    margin: 0;
  }
  #flow .flow__list .fstyle {
    font-size: 15px;
    color: #fff;
    border: 1px solid #0a6c9d;
    background: #1c92ce;
    padding: 6px;
    margin-bottom: 50px;
  }
  #flow .flow__list:nth-of-type(2) {
    margin-bottom: 30px;
  }
  #flow .fllow__need {
    margin: 0 15px;
    padding: 20px 15px;
  }
  #flow .fllow__need .need__label {
    text-align: center;
  }
  #flow .fllow__need .need__item {
    width: 100%;
  }
  #flow .fllow__need .need__item .item__stuff {
    padding: 15px;
    font-size: 16rem;
  }
  #flow .fllow__need .need__item:last-child {
    margin-bottom: 0;
  }

  #policy .policy__list {
    margin: 0 15px;
  }
  #policy .policy__list .list__label {
    font-size: 18rem;
    line-height: 1.4em;
  }
  #policy .policy__list li {
    background-size: 15px;
    background-position: 0px 5px;
  }
}
