* {
  font-family: "Noto Sans JP", sans-serif;
}

body {
  color: #000;
}

a {
  width: inherit;
  height: inherit;
  display: inline-block;
}

img {
  width: 100%;
  height: auto;
  display: block;
}

.hp_spNone {
  display: none !important;
}

/*----------- header -----------*/
.ly_header {
  background: #fff;
  padding: 3.125vw 0;
}

.bl_header_logo {
  width: 46.875vw;
  margin: 0 auto;
}

/*----------- fv -----------*/
.ly_fv{
  background-color:#fff1f1;
}

.bl_fv_contact {
  width: 87.5vw;
  margin: 0 auto;
}

.bl_fv_catch {
  width: 65.625vw;
  margin: -62.969vw auto 0;
}

.bl_fv_tel {
  width: 87.5vw;
  margin: -1.5625vw auto 0;
}

.bl_fv_time {
  text-align: center;
  font-size: 3.75vw;
  line-height: 1.5;
  letter-spacing: 0.08em;
  margin-top: 2.344vw;
}
.bl_fv_time span {
  background: #ffefef;
  padding: 0.46875vw 1.09375vw;
  letter-spacing: 0.08em;
  margin-right: 1.25vw;
}
/*----------- feature -----------*/
.bl_feature{
  background: #fff2f2;
  padding: 0 0 7.813vw;
}

.bl_feature_cord{
  margin: 0 0 10.156vw;
}

.bl_feature_box{
  width: 90.625vw;
  margin: -10.625vw auto 0;
  border: solid #d80000;
  border-width:0.313vw 0.313vw 0.938vw 0.313vw;
  border-radius: 3.125vw;
  background: #ffffff;
  height: 39.063vw;
  padding: 4.688vw 0;
  position: relative;
}

.bl_feature_cord:nth-of-type(2) .bl_feature_box{
  height: 34.375vw !important;
}

.bl_feature_card_ttl{
  width: 55.625vw;
  margin: 0 auto;
}

.bl_feature_card_txt{
  font-size: 4.063vw;
  line-height: 5.938vw;
  padding: 0 7.813vw;
  margin: 4.569vw 0;
}

.bl_feature_card_txt strong{
  font-weight: bold;
}

.bl_feature_point{
  display: flex;
  justify-content: center;
  gap: 1.875vw;
}

.bl_feature_point_cd{
  width: 45.938vw;
}

/*----------- recommend -----------*/
.ly_recommend {
  padding: 11.406vw 0 1.5625vw;
  position: relative;
}
.ly_recommend::before {
  /* content: ""; */
  background: url(../img/sp_recommend_background.png) no-repeat center/cover;
  width: 100%;
  height: 103.125vw;
  position: absolute;
  top: 7.8125vw;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.bl_recommend_ttl {
  width: 87.5vw;
  margin: 0 auto 2.1875vw;
  position: relative;
  z-index: 10;
}

.bl_recommend_list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -webkit-align-items: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 94.375vw;
  margin: 0 auto;
  position: relative;
  z-index: 10;
}

.bl_recommend_list li {
  width: 45.625vw;
  margin-bottom: 3.125vw;
}

.bl_recommend_box {
  margin: 8.9375vw auto 0;
  padding: 5.46875vw 0 11.71875vw;
  position: relative;
  z-index: 10;
  background: url(../img/sp_area_background.jpg) no-repeat center/cover;
}

.bl_recommend_boxTtl {
  width: 87.5vw;
  margin: 0 auto;
}

.bl_recommend_boxList {
  width: 87.5vw;
  margin: 2.34375vw auto 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  row-gap: 2.34375vw;
}
.bl_recommend_boxList li {
  width: 28.4375vw;
}
.bl_recommend_boxList li#osaka, .bl_recommend_boxList li#tokyo {
  width: 42.8125vw;
}

/*----------- info -----------*/
.ly_info {
  padding: 1.5625vw 0 8.59375vw;
}

.bl_info_contact {
  width: 87.5vw;
  margin: -1.875vw auto 0;
}

.bl_info_tel {
  width: 87.5vw;
  margin: -1.5625vw auto 0;
}

.bl_info_campaign{
  width: 65.625vw;
  display: block;
  margin: auto auto 2.031vw;
}

.bl_info_time {
  text-align: center;
  font-size: 3.75vw;
  line-height: 1.5;
  letter-spacing: 0.08em;
  margin-top: 2.8125vw;
}
.bl_info_time span {
  background: #ffefef;
  padding: 0.46875vw 1.09375vw;
  letter-spacing: 0.08em;
  margin-right: 1.25vw;
}

.bl_info_erea{
  margin: 6.25vw auto 0;
}
.bl_property_info {
  width: fit-content;
  font-size: 3.12vw;
  margin: 4.68vw auto 0;
}
.bl_property_info a {
  color: #000;
  text-decoration: underline;
}
.bl_property_info a:hover {
  text-decoration: none;
}

/*----------- room -----------*/
.ly_room {
  background: url(../img/sp_room_background.jpg) no-repeat center/cover;
  padding: 7.03125vw 0 10.15625vw;
}

.bl_room_ttl {
  width: 87.5vw;
  margin: 0 auto;
  text-align: center;
}

.bl_room_txt {
  font-size: 4.0625vw;
  font-weight: 500;
  letter-spacing: 0.06em;
  line-height: 2.2307692308;
  text-align: center;
}

.bl_room_slider {
  margin-top: 5.46875vw;
}
.bl_room_slider .splide__slide {
  background: linear-gradient(180deg, #d80000 0%, #d80000 9.375vw, #fff 9.375vw, #fff 100%);
  border: #d80000 solid 0.2vw;
  border-radius: 3.125vw;
  -webkit-box-shadow: 0 0.46875vw 0.625vw 0.15625vw rgba(0, 0, 0, .3);
          box-shadow: 0 0.46875vw 0.625vw 0.15625vw rgba(0, 0, 0, .3);
  width: 84.375vw !important;
  margin-bottom: 0.78125vw;
  padding-bottom: 5.9375vw;
}
.bl_room_slider .splide__arrows {
  position: relative;
  z-index: 10;
  top: 48.4375vw;
}
.bl_room_slider .splide__arrows button {
  width: 9.375vw;
  height: 10.9375vw;
  border: none;
  position: absolute;
  z-index: 10;
  opacity: 1 !important;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  border-radius: 0;
  background: url(../img/sp_index_slider_arrow.png) no-repeat center/contain;
}
.bl_room_slider .splide__arrows button svg {
  fill: none;
}
.bl_room_slider .splide__arrows button.splide__arrow--prev {
  left: 0;
}
.bl_room_slider .splide__arrows button.splide__arrow--next {
  right: 0;
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}
.bl_room_slider .pagination {
  text-align: center;
  z-index: 1;
  margin-top: 5vw;
  min-height: 5.46875vw;
}
.bl_room_slider .pagination span {
  font-size: 3.75vw;
  color: #d80000;
  line-height: 1.0;
}

.bl_room_address {
  font-size: 4.6875vw;
  font-weight: bold;
  color: #fff;
  text-align: center;
  padding: 2.1875vw 0 2.45vw;
}
.bl_room_access {
  height: 13.4375vw;
  text-align: center;
  font-size: 4.0625vw;
  line-height: 1.3;
  border-bottom: #d80000 solid 0.4vw;
  margin-bottom: 4.375vw;
  padding: 0 3.125vw;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
.bl_room_img {
  position: relative;
  width: 59.375vw;
  height: 59.375vw;
  overflow: hidden;
  margin: 0 auto 4.6875vw;
  border: #b2b2b2 solid 0.2vw;
}
.bl_room_img img {
  width: 59.175vw;
  height: 59.175vw;
  object-fit: cover;
}
.bl_room_discount {
  position: absolute;
  top: -63px;
  right: 29px;
  z-index: 1;
  width: 17.1875vw;
  height: 17.1875vw;
  background: #d80000;
  font-size: 5vw;
  font-weight: bold;
  color: #fff;
  line-height: 1.1;
  border-radius: 50%;
  text-align: center;
  padding-top: 2.5vw;
}
.bl_room_discount em {
  font-size: 6.25vw;
  font-weight: bold;
}
.bl_room_priceBox {
  position: relative;
  margin: 0 0 2.1875vw 7.65625vw;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: end;
  -ms-flex-align: end;
  align-items: flex-end;
}
.bl_room_retailTxt {
  width: 12.5vw;
  height: 12.5vw;
  margin-right: 3.125vw;
  display: inline-block;
  font-size: 3.75vw;
  font-weight: bold;
  background: #ffefef;
  line-height: 1.3;
  text-align: center;
  padding-top: 1.25vw;
}
.bl_room_retail {
  display: block;
}
.el_room_line {
  position: relative;
  font-size: 4.375vw;
}
.el_room_line::before {
  position: absolute;
  content: "";
  display: block;
  transform: rotate(0);
  background-color: #d80000;
  width: 100%;
  height: 0.4vw;
  top: 49%;
  left: 0;
}
.el_room_line sub {
  font-size: 3.75vw;
}
.el_room_arrow {
  display: inline-block;
  vertical-align: 2vw;
  color: #d80000;
  font-size: 2.5vw;
}
.bl_room_price {
  display: inline-block;
  font-size: 8.4375vw;
  font-weight: bold;
  color: #d80000;
}
.bl_room_price sub {
  font-size: 5.9375vw;
  font-weight: bold;
}
.bl_room_notice {
  margin-left: 7.65625vw;
  font-size: 3.125vw;
  color: #2c2c2c;
}

.bl_room_img_btn{
  width: 78.125vw;
  margin:3.125vw auto 0;
}

/*----------- equipment -----------*/
.ly_equipment {
  padding: 0 0 2.8125vw;
}

.bl_equipment_ttl {
  margin: 0 auto;
  width: 93.75vw;
}

.bl_equipment_list {
  width: 93.75vw;
  margin: 0 auto;
}
.bl_equipment_list li + li {
  margin-top: 4.6875vw;
}

/*----------- info-sub -----------*/
.ly_info.ly_info--sub {
  padding-bottom: 21.09375vw;
}

/*----------- reason -----------*/
.ly_reason {
  position: relative;
  z-index: 10;
  background: #ffefef;
  padding-bottom: 18.75vw;
}

.bl_reason_ttl img {
  width: 100%;
  position: relative;
  top: -14.0625vw;
}

.bl_reason_list {
  margin-top: -7.8125vw;
}
.bl_reason_list li + li {
  margin-top: 7.03125vw;
}

.bl_reason_box {
  padding: 3.90625vw 8.59375vw 6.25vw;
  background: #fff;
  width: 90.625vw;
  margin: -2.8125vw auto 0;
  border-radius: 3.125vw;
  -webkit-box-shadow: 0 0.46875vw 0.625vw 0.15625vw rgba(255, 163, 163, .3);
          box-shadow: 0 0.46875vw 0.625vw 0.15625vw rgba(255, 163, 163, .3);
  position: relative;
  z-index: 10;
}

.bl_reason_boxTtl {
  width: 75vw;
  margin: 0 auto;
  text-align: center;
}

.bl_reason_boxTxt {
  font-size: 4.0625vw;
  line-height: 1.5384615385;
  margin-top: 1.09375vw;
}

/*----------- voice -----------*/
.ly_voice {
  padding: 10.9375vw 0 9.84375vw;
}

.bl_voice_ttl {
  width: 87.5vw;
  margin: 0 auto;
}

.bl_voice_slider {
  margin: 2.8125vw 0 0;
}
.bl_voice_slider .splide__slide {
  background: #fff;
  border-radius: 3.125vw;
  -webkit-box-shadow: 0 0.46875vw 0.625vw 0.15625vw rgba(0, 0, 0, .3);
          box-shadow: 0 0.46875vw 0.625vw 0.15625vw rgba(0, 0, 0, .3);
  border: solid 0.3125vw #f1f1f1;
  width: 90.625vw !important;
  margin: 0.78125vw;
  padding: 2.65625vw 7.03125vw 6.25vw;
}
.bl_voice_slider .splide__arrows {
  position: relative;
  z-index: 10;
  top: 25vw;
}
.bl_voice_slider .splide__arrows button {
  width: 9.375vw;
  height: 10.9375vw;
  border: none;
  position: absolute;
  z-index: 10;
  opacity: 1 !important;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  border-radius: 0;
  background: url(../img/sp_index_slider_arrow.png) no-repeat center/contain;
}
.bl_voice_slider .splide__arrows button svg {
  fill: none;
}
.bl_voice_slider .splide__arrows button.splide__arrow--prev {
  left: 0;
}
.bl_voice_slider .splide__arrows button.splide__arrow--next {
  right: 0;
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}
.bl_voice_slider .splide__pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  bottom: -7.03125vw;
}
.bl_voice_slider .splide__pagination__page {
  width: 1.875vw;
  height: 1.875vw;
  background: #f1f1f1;
  border: none;
  margin: 0 1.40625vw;
}
.bl_voice_slider .splide__pagination__page.is-active {
  background: #d80000;
  -webkit-transform: scale(1);
          transform: scale(1);
}

.bl_voice_head {
  width: 75vw;
  margin: 0 auto;
}

.bl_voice_txt {
  font-size: 4.0625vw;
  margin-top: 0.9375vw;
  line-height: 1.4615384615;
}

/*----------- splide -----------*/
.splide__track {
  overflow: hidden;
}

.splide__slide {
  position: relative;
}

/*----------- flow -----------*/
.ly_flow {
  background: #df2424;
  padding: 9.375vw 0 18.75vw;
  margin-top: 3.90625vw;
}

.bl_flow_ttl {
  width: 87.5vw;
  margin: 0 auto;
}

.bl_flow_list {
  width: 90.625vw;
  margin: 5vw auto 0;
}
.bl_flow_list li {
  background: #fff;
  border-radius: 3.125vw;
  padding: 5.9375vw 6.25vw 5.46875vw;
  position: relative;
  -webkit-box-shadow: 0 0.46875vw 0.625vw 0.15625vw rgba(0, 0, 0, .3);
          box-shadow: 0 0.46875vw 0.625vw 0.15625vw rgba(0, 0, 0, .3);
}
.bl_flow_list li::after {
  content: "";
  display: block;
  height: 4.125vw;
  width: 1.563vw;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -4vw;
  margin: 0 auto;
  background-color: #fff;
}
.bl_flow_list li:nth-last-of-type(1)::after {
  display: none;
}
.bl_flow_list li + li {
  margin-top: 3.90625vw;
}
.bl_flow_list li + li {
  margin-top: 3.90625vw;
}

.bl_flow_head {
  width: 78.125vw;
  margin: 0 auto;
}

.bl_flow_txt {
  font-size: 3.75vw;
  line-height: 1.5;
  margin: 3.75vw 1.5625vw 0;
}
.bl_flow_txt span {
  margin: 0;
}

.bl_flow_note {
  font-size: 3.4375vw;
  color: #d80000;
  line-height: 1.4545454545;
  margin: 2.1875vw 1.5625vw 0;
}

/*----------- faq -----------*/
.ly_faq {
  background: #fff;
  padding: 10.625vw 0 6.5625vw;
}

.bl_faq_ttl {
  width: 87.5vw;
  margin: 0 auto;
}

.bl_faq_list {
  margin: 5.625vw auto 0;
  width: 93.75vw;
}
.bl_faq_list li {
  position: relative;
}
.bl_faq_list li::before, .bl_faq_list li::after {
  content: "";
  display: block;
  background: #fff;
  position: absolute;
}
.bl_faq_list li::before {
  width: 3.125vw;
  height: 0.3125vw;
  top: 7.65625vw;
  right: 5vw;
}
.bl_faq_list li::after {
  width: 0.3125vw;
  height: 3.125vw;
  top: 6.25vw;
  right: 6.40625vw;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.bl_faq_list li.open::after {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}
.bl_faq_list li + li {
  margin-top: 3.125vw;
}

.bl_faq_q {
  height: 15.625vw;
  color: #fff;
  font-size: 4.375vw;
  font-weight: bold;
  line-height: 1.3571428571;
  background: #d80000;
  padding: 0 10.15625vw 0 3.125vw;
  border-radius: 3.125vw;
  -webkit-box-shadow: inset 0 -0.46875vw 0 0 #a20000;
          box-shadow: inset 0 -0.46875vw 0 0 #a20000;
}
.bl_faq_q::before {
  content: "";
  background: url(../img/sp_faq_q_icon.png) no-repeat center/contain;
  width: 10vw;
  height: 10vw;
  display: block;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-right: 2.5vw;
}

.bl_faq_conts {
  display: none;
}
.bl_faq_conts.open {
  padding: 4.21875vw 10.9375vw 5.9375vw 15.625vw;
  position: relative;
  display: block;
}
.bl_faq_conts.open::before {
  content: "";
  background: url(../img/sp_faq_a_icon.png) no-repeat center/contain;
  width: 10vw;
  height: 10vw;
  display: inline-block;
  position: absolute;
  top: 3.125vw;
  left: 3.125vw;
}

.bl_faq_a {
  font-size: 4.0625vw;
  line-height: 1.4615384615;
}

/*----------- footer -----------*/
.ly_footer {
  padding: 7.1875vw 0;
  background: #282828;
  color: #fff;
}

.bl_footer_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 81.25vw;
  margin: 0 auto;
}
.bl_footer_item dt, .bl_footer_item dd {
  font-size: 3.75vw;
  line-height: 1.5;
}
.bl_footer_item dt {
  width: 21.875vw;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.bl_footer_item:not(:first-child) {
  margin-top: 2.65625vw;
}

.bl_footer_copyright {
  display: block;
  font-size: 2.8125vw;
  line-height: 1.3333333333;
  letter-spacing: 0.02em;
  text-align: center;
  margin-top: 8.75vw;
}

/*----------- fixed -----------*/
.ly_fixed {
  padding: 1.094vw 0 0;
  position: fixed;
  background: rgba(255, 255, 255, 1);
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 90;
  width: 100%;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.bl_fixed_tel_wrap{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.bl_fixed_tel_campaign{
  display: block;
  width: 100vw;
  margin: auto auto 0.781vw;
}

.bl_fixed_tel, .bl_fixed_contact {
  width: 48.125vw;
}
/*# sourceMappingURL=top_sp.css.map */
