@charset "UTF-8";

/*section_wrap 共通*/
.section_wrap {
  margin-top: 48px;
  margin: 48px auto 0;
}
.section_wrap_large {
  margin-top: 70px;
}
.section_header {
  text-align: center;
  margin-bottom: 15px;
}

@media only screen and (min-width: 1024px) {
  .section_wrap {
    margin-top: 80px;
  }
}
/*.concept_section*/

@media only screen and (min-width: 768px) {
  .concept_section p {
    text-align: center;
  }
}
/*index_section*/
.index_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  letter-spacing: 1px;
}
.index_list_item {
  width: 48%;
  text-align: center;
  margin-bottom: 20px;
  align-self: flex-start;
}
.index_list .index_list_item dt {
  margin-bottom: 5px;
}
.index_list .index_list_item dt img {
  border-radius: 5px;
}
.sbox_list {
  letter-spacing: 1px;
}
@media screen and (min-width: 768px) {
  .index_list {
    gap: 3%;
  }
  .index_list_item {
    width: calc((100% - 3% * 2) / 3);
  }
}
@media only screen and (min-width: 1024px) {
  .index_list {
    gap: 3%;
    justify-content: start;
  }
  .index_list_item {
    width: calc((100% - 3% * 2) / 3);
  }
  .sbox_list {
    width: 500px;
    letter-spacing: 2px;
    margin: 30px auto 0;
  }
}
@media only screen and (min-width: 1440px) {
  .index_list_item {
    width: 250px;
  }
}
/*room_section*/
.section_inner_column {
  width: 90%;
  margin: 10px auto 0;
  letter-spacing: 1px;
}
.column_detail_box {
  margin-top: 25px;
}
.column_detail_table li {
  border-bottom: 1px dashed #ccc;
  padding: 10px 0;
}
.column_detail_table li:first-child {
  border-top: 1px dashed #ccc;
}
.column_detail_table dl {
  display: flex;
  letter-spacing: 2px;
}
.column_detail_table dl dt {
  padding: 0 30px 0 30px;
  width: 25%;
}
.madorizu {
  margin-top: 20px;
  width: 225px;
}
.madorizu .gallery_list {
  margin: 0 auto;
}
.btn_box {
  margin-top: 20px;
}
/* .btn_box a:last-child {
  margin-top: 15px;
} */
@media only screen and (min-width: 768px) {
  .section_inner_column {
    width: 80%;
    max-width: 1000px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    letter-spacing: 1px;
  }
  .colum_flex {
    display: flex;
    margin-top: 25px;
    gap: 3%;
  }
  .column_text_box {
    width: 55%;
  }
  .column_detail_box {
    width: 42%;
    margin-top: 0;
  }
  .madorizu {
    width: 390px;
  }
  .btn_box {
    width: 100%;
    display: flex;
    justify-content: center;
    gap: 4%;
  }
  main .btn_box a {
    width: 45%;
    min-width: 45%;
  }
  .btn_box a:last-child {
    margin-top: 0;
  }
}
@media only screen and (min-width: 1024px) {
  .room_section .owl-carousel .owl-stage-outer {
    overflow: initial;
  }
  .section_inner_column {
    display: flex;
    flex-wrap: wrap;
  }
  .column_text_box {
    width: 55%;
    /* margin-right: 5%; */
  }
  .column_detail_box {
    width: 42%;
  }
  .madorizu {
    width: 450px;
  }
}

.fixtures_box:not(:first-of-type) {
  margin-top: 20px;
}
.fixtures_text_box {
  display: flex;
  flex-direction: column;
}
.fixtures_text_box h4 {
  margin-top: 15px;
  font-size: 2rem;
  text-align: center;
}
.fixtures_text_box p {
  margin-top: 10px;
}

table.fixtures_table {
  margin: 40px 0 0;
  border-collapse: collapse;
  background-color: #f0f0f0;
}
table.fixtures_table th,
.fixtures_table td {
  border: solid 1px #cccccc;
  padding: 15px;
}
table.fixtures_table th {
  width: 32%;
}
.fixtures_table_text {
  margin: 20px 0 0;
}

@media only screen and (min-width: 768px) {
  .fixtures {
    margin: 70px auto 0;
  }
  .fixtures_primary {
    display: flex;
    gap: 3%;
  }
  .fixtures_box {
    display: block;
    width: calc((100% - 3% * 2) / 3);
  }
  .fixtures_text_box h4 {
    text-align: center;
  }
  .fixtures_box:not(:first-of-type) {
    margin-top: 0;
  }
  .fixtures_box img {
    width: 100%;
  }
  .fixtures_text_box {
    display: flex;
    flex-direction: column;
    width: 100%;
  }
  .fixtures_text_box h4 {
    margin-top: 25px;
  }
  .fixtures_text_box p {
    margin-top: 15px;
  }
}
