@charset "UTF-8";
/* CSS Document */
/* Scss Document */
/* Scss Document */
#reservation .label_wrap .btn_box.pc_tab_only {
  display: none;
}
#reservation .label_wrap .reservation_box_wrap {
  margin-bottom: 40px;
}
#reservation .label_wrap .reservation_box_wrap .btn {
  font-size: 1.4rem;
  margin-bottom: 1.5%;
  position: relative;
  background: #2C377E;
  color: #fff;
  padding: 22px 0;
  display: block;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
  text-align: center;
  width: 100%;
}
@media (min-width: 768px) {
  #reservation .label_wrap .reservation_box_wrap .btn {
    font-size: calc(1.4rem + (1vw - 7.68px) * 0.390625);
  }
}
@media (min-width: 1280px) {
  #reservation .label_wrap .reservation_box_wrap .btn {
    font-size: 1.6rem;
  }
}
#reservation .label_wrap .reservation_box_wrap .btn .v_shaped {
  position: absolute;
  top: 50%;
  right: 20px;
  transform: rotate(45deg) translateY(-50%);
  border-bottom: solid 3px #fff;
  border-right: solid 3px #fff;
  width: 6px;
  height: 6px;
}
#reservation .label_wrap .reservation_box_wrap .btn .v_shaped.active {
  border-top: solid 3px #fff;
  border-left: solid 3px #fff;
  border-bottom: none;
  border-right: none;
}
#reservation .open_box {
  display: none;
  margin: 7% auto 10%;
}
#reservation .open_box .main_txt {
  text-align: center;
  font-size: 1.8rem;
  color: #2C377E;
}
@media (min-width: 768px) {
  #reservation .open_box .main_txt {
    font-size: calc(1.8rem + (1vw - 7.68px) * 3.125);
  }
}
@media (min-width: 1280px) {
  #reservation .open_box .main_txt {
    font-size: 3.4rem;
  }
}
#reservation .open_box .sab_title {
  text-align: center;
  font-size: 1.8rem;
  color: #2C377E;
  margin-bottom: 45px;
}
@media (min-width: 768px) {
  #reservation .open_box .sab_title {
    font-size: calc(1.8rem + (1vw - 7.68px) * 1.171875);
  }
}
@media (min-width: 1280px) {
  #reservation .open_box .sab_title {
    font-size: 2.4rem;
  }
}
#reservation .open_box .flex_wrap {
  font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
  align-items: stretch;
  margin-bottom: 15%;
}
#reservation .open_box .flex_wrap .txt_box {
  flex: 0 1 48.5%;
  width: 48.5%;
  max-width: 48.5%;
  line-height: 1.6;
  background: #fff;
  font-size: 1.2rem;
  margin-bottom: 2%;
  padding: 15px 0;
  text-align: center;
}
@media (min-width: 768px) {
  #reservation .open_box .flex_wrap .txt_box {
    font-size: calc(1.2rem + (1vw - 7.68px) * 0.5859375);
  }
}
@media (min-width: 1280px) {
  #reservation .open_box .flex_wrap .txt_box {
    font-size: 1.5rem;
  }
}
#reservation .open_box .flex_wrap .txt_box .mt_10 {
  margin-top: 10px;
}
#reservation .open_box .flex_wrap .txt_box .ls_0 {
  letter-spacing: 0em;
}
#reservation .open_box .flex_wrap .txt_box.wi_100 {
  flex: 0 1 100%;
  width: 100%;
  max-width: 100%;
}
#reservation .open_box .center_txt {
  text-align: center;
  margin-bottom: 10%;
}
#reservation .open_box .center_txt .txt_mb {
  font-size: 1.2rem;
  color: #2C377E;
  margin-bottom: 5%;
}
#reservation .open_box .btn_box .go_btn .btn_txt {
  margin-bottom: 4%;
  background: #C1AE8A;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
  color: #fff;
  line-height: 1.6;
  font-size: 1.3rem;
  height: 60px;
  position: relative;
  text-align: center;
  border: solid 1px #C1AE8A;
}
@media (min-width: 768px) {
  #reservation .open_box .btn_box .go_btn .btn_txt {
    font-size: calc(1.3rem + (1vw - 7.68px) * 0.5859375);
  }
}
@media (min-width: 1280px) {
  #reservation .open_box .btn_box .go_btn .btn_txt {
    font-size: 1.6rem;
  }
}
#reservation .open_box .btn_box .go_btn .btn_txt p {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
}
#reservation .open_box .btn_box .go_btn .btn_txt:after {
  content: "";
  position: absolute;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  width: 6px;
  height: 6px;
  top: 50%;
  right: 20px;
  transform: rotate(45deg) translateY(-50%);
}
#reservation .open_box .btn_box .btn_wrap .more_txt {
  font-size: 1.2rem;
  text-align: center;
  color: #2C377E;
  margin-bottom: 5px;
}
@media (min-width: 768px) {
  #reservation .open_box .btn_box .btn_wrap .more_txt {
    font-size: calc(1.2rem + (1vw - 7.68px) * 0.78125);
  }
}
@media (min-width: 1280px) {
  #reservation .open_box .btn_box .btn_wrap .more_txt {
    font-size: 1.6rem;
  }
}
#reservation .open_box .btn_box .btn_wrap .go_btn .btn_txt {
  margin-bottom: 4%;
  background: #C1AE8A;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
  color: #fff;
  line-height: 1.6;
  font-size: 1.3rem;
  height: 60px;
  position: relative;
  text-align: center;
  border: solid 1px #C1AE8A;
}
@media (min-width: 768px) {
  #reservation .open_box .btn_box .btn_wrap .go_btn .btn_txt {
    font-size: calc(1.3rem + (1vw - 7.68px) * 0.5859375);
  }
}
@media (min-width: 1280px) {
  #reservation .open_box .btn_box .btn_wrap .go_btn .btn_txt {
    font-size: 1.6rem;
  }
}
#reservation .open_box .btn_box .btn_wrap .go_btn .btn_txt p {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
}
#reservation .open_box .btn_box .btn_wrap .go_btn .btn_txt:after {
  content: "";
  position: absolute;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  width: 6px;
  height: 6px;
  top: 50%;
  right: 20px;
  transform: rotate(45deg) translateY(-50%);
}
#reservation .open_box:hover {
  opacity: 1;
}

/*------------------------------
		769px以上
------------------------------*/
@media screen and (min-width: 769px) {
  #reservation .label_wrap .btn_box {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 20px;
    max-width: 980px;
    margin: 0 auto 6%;
  }
  #reservation .label_wrap .btn_box .btn {
    flex: 0 1 100%;
    width: 100%;
    max-width: 100%;
    margin: 0;
  }
  #reservation .label_wrap .btn_box .btn.wide {
    grid-column: span 3;
  }
  #reservation .label_wrap .btn_box .btn a {
    max-width: 100%;
  }
  #reservation .label_wrap .btn_box .btn a .v_shaped {
    border-top: none;
    border-bottom: 2px solid;
  }
  #reservation .label_wrap .btn_box.pc_tab_only {
    display: grid;
  }
  #reservation .label_wrap .reservation_box_wrap .btn.sp_only {
    display: none;
  }
  #reservation .label_wrap .about_box {
    display: block;
    padding: 3% 0;
    margin: 2% auto 5%;
  }
  #reservation .label_wrap .about_box .copy_box .main_txt {
    margin-bottom: 90px;
  }
  #reservation .label_wrap .about_box .consultation {
    padding: 5% 0;
  }
  #reservation .label_wrap .about_box .consultation .flex_wrap .txt_box {
    flex: 0 1 43%;
    width: 43%;
    max-width: 43%;
    padding: 2% 3%;
  }
  #reservation .label_wrap .about_box .consultation .flex_wrap .txt_box .consultation_txt {
    text-align: center;
  }
  #reservation .label_wrap .about_box .counseling_type {
    padding: 5% 0;
    margin-bottom: 5%;
  }
  #reservation .label_wrap .about_box .counseling_type .counseling_wrap .flex_wrap {
    margin: 0 auto 3%;
  }
  #reservation .label_wrap .about_box .counseling_type .counseling_wrap .flex_wrap .about_img {
    flex: 0 1 45%;
    width: 45%;
    max-width: 45%;
    margin-bottom: 2%;
  }
  #reservation .label_wrap .about_box .counseling_type .counseling_wrap .flex_wrap .counseling_txt_box {
    flex: 0 1 50%;
    width: 50%;
    max-width: 50%;
  }
  #reservation .label_wrap .about_box .counseling_type .counseling_wrap .flex_wrap .counseling_txt_box .sab_title {
    color: #2C377E;
    margin-bottom: 2%;
    line-height: 1.7;
  }
  #reservation .label_wrap .about_box .counseling_type .counseling_wrap table tbody tr th {
    padding: 20px;
    width: 15%;
  }
  #reservation .label_wrap .about_box .counseling_type .counseling_wrap .counseling_btn_txt {
    margin: 6% auto 4%;
  }
  #reservation .label_wrap .about_box .counseling_type .counseling_wrap .box_wrap .txt_box {
    flex: 0 1 45%;
    width: 45%;
    max-width: 45%;
    padding: 20px 10px;
  }
  #reservation .label_wrap .about_box:hover {
    opacity: 1;
  }
  #reservation .label_wrap .flex_wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  #reservation .label_wrap .flex_wrap .btn_wrap {
    flex: 0 1 32%;
    width: 32%;
    max-width: 32%;
  }
  #reservation .label_wrap .flex_wrap .btn_wrap .label_btn {
    transition: 0.3s;
    cursor: pointer;
    border: solid 1px #2C377E;
  }
  #reservation .label_wrap .flex_wrap .btn_wrap .label_btn:hover {
    opacity: 1;
    transition: 0.3s;
    background: #fff;
    color: #2C377E;
  }
  #reservation .label_wrap .flex_wrap .btn_wrap .label_btn:hover .arrow {
    border-bottom: solid 3px #2C377E;
    border-right: solid 3px #2C377E;
  }
  #reservation .open_box {
    display: block;
    margin: 2% auto 10%;
    padding: 3% 0 0;
  }
  #reservation .open_box .main_txt {
    margin-bottom: 80px;
    position: relative;
  }
  #reservation .open_box .main_txt:before {
    content: "";
    position: absolute;
    display: block;
    left: 0;
    right: 0;
    bottom: -30px;
    width: 90px;
    height: 1px;
    margin: auto;
    background: #2C377E;
  }
  #reservation .open_box .sab_title {
    margin-bottom: 35px;
  }
  #reservation .open_box .flex_wrap {
    margin-bottom: 7%;
  }
  #reservation .open_box .flex_wrap .txt_box {
    flex: 0 1 32%;
    width: 32%;
    max-width: 32%;
  }
  #reservation .open_box .flex_wrap .txt_box .mt_10_pc {
    margin-top: 10px;
  }
  #reservation .open_box .flex_wrap .txt_box.wi_100 {
    flex: 0 1 32%;
    width: 32%;
    max-width: 32%;
  }
  #reservation .open_box .btn_box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  #reservation .open_box .btn_box .go_btn {
    flex: 0 1 100%;
    width: 100%;
    max-width: 100%;
  }
  #reservation .open_box .btn_box .go_btn .btn_txt {
    width: 80%;
    margin: 0 auto 4%;
    height: 100px;
    transition: 0.3s;
  }
  #reservation .open_box .btn_box .go_btn .btn_txt:hover {
    transition: 0.3s;
    background: #fff;
    color: #C1AE8A;
  }
  #reservation .open_box .btn_box .go_btn .btn_txt:hover:after {
    border-top: solid 2px #C1AE8A;
    border-right: solid 2px #C1AE8A;
  }
  #reservation .open_box .btn_box .btn_wrap {
    flex: 0 1 100%;
    width: 100%;
    max-width: 100%;
  }
  #reservation .open_box .btn_box .btn_wrap .go_btn .btn_txt {
    width: 100%;
    height: 100px;
    transition: 0.3s;
  }
  #reservation .open_box .btn_box .btn_wrap .go_btn .btn_txt:hover {
    transition: 0.3s;
    background: #fff;
    color: #C1AE8A;
  }
  #reservation .open_box .btn_box .btn_wrap .go_btn .btn_txt:hover:after {
    border-top: solid 2px #C1AE8A;
    border-right: solid 2px #C1AE8A;
  }
}
/*------------------------------
		901px以上
------------------------------*/
@media screen and (min-width: 901px) {
  #reservation .label_wrap .w1280 {
    padding: 0;
  }
}
/*------------------------------
		1281px以上
------------------------------*/