@charset "UTF-8";
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);
:root {
  --fg-neutral-primary: #ffffff;
  --fg-neutral-secondary: #dddddd;
  --fg-neutral-tertiary: #aaaaaa;
  --fg-inverse-primary: #333333;
  --fg-inverse-secondary: #666666;
  --fg-inverse-tertiary: #999999;
  --bg-neutral-primary: #ffffff;
  --bg-neutral-secondary: #eeeeee;
  --bg-neutral-tertiary: #aaaaaa;
  --bg-disabled-primary: #dddddd;
  --ol-neutral-primary: #ffffff;
  --ol-neutral-secondary: #333333;
  --ol-neutral-tertiary: #dddddd;
}

:root {
  /* Title */
  --title-fontfamily: "Noto Sans JP";
  --title-fontfamily-english: "Helvetica Neue";
  --title-fontfamily-handwriting: "Zeyada";
  --title-fontweight: 400;
  --title-fontweight-strong: 700;
  --title-fontweight-400-italic: "400 Italic";
  --title-fontsize-sm: 16px;
  --title-fontsize-md: 20px;
  --title-fontsize-lg: 24px;
  --title-fontsize-xl: 32px;
  --title-fontsize-xxl: 40px;
  --title-fontsize-xxxl: 56px;
  /* Body */
  --body-fontfamily: "Noto Sans JP";
  --body-fontweight: 400;
  --body-fontweight-strong: 700;
  --body-fontsize-sm: 13px;
  --body-fontsize-md: 14px;
  --body-fontsize-lg: 16px;
  /* Label */
  --label-fontfamily-base: "Noto Sans JP";
  --label-fontfamily-english: "Helvetica Neue";
  --label-fontweight: 400;
  --label-fontweight-strong: 700;
  --label-fontsize-sm: 13px;
  --label-fontsize-md: 16px;
  --label-fontsize-lg: 24px;
}

:root {
  /* Padding */
  --padding-xxs: 4px;
  --padding-xs: 8px;
  --padding-sm: 16px;
  --padding-md: 24px;
  --padding-lg: 32px;
  --padding-xl: 40px;
  --padding-xxl: 56px;
  --padding-xxxl: 80px;
  /* Gap */
  --gap-xxs: 4px;
  --gap-xs: 8px;
  --gap-sm: 12px;
  --gap-md: 16px;
  --gap-lg: 24px;
  --gap-xl: 40px;
  --gap-xxl: 80px;
  /* Radius */
  --radius-md: 4px;
  --radius-lg: 8px;
  --radius-full: 9999px;
}

.logo_header,
nav,
.box_hamburger {
  filter: invert(1);
}

header.bg_show {
  transition: 1s;
}

header.bg_show > nav > ul > li > a.btn__invert {
  border: 1px solid transparent;
  background: var(--fg-inverse-primary, #333);
  color: var(--fg-neutral-primary, #fff);
  filter: inherit;
}
header.bg_show > nav > ul > li > a.btn__invert:hover {
  background: var(--fg-inverse-secondary, #666666);
}

header.bg_show > .logo_header,
header.bg_show > nav,
header.bg_show > .box_hamburger {
  filter: inherit;
}

body.fixed header {
  filter: inherit;
}

header.no__filter > .logo_header,
header.no__filter > nav,
header.no__filter > .box_hamburger {
  filter: inherit;
}

a.logo_header {
  padding: var(--padding-sm, 16px) var(--padding-md, 24px);
  width: auto;
}
a.logo_header img {
  width: auto;
}

nav {
  padding-right: var(--padding-xxxl, 80px);
}

.btn_language {
  width: auto;
}

.box_hamburger {
  top: 16px;
}
@media (max-width: 991px) {
  .box_hamburger {
    top: 4px;
  }
}

ul.list_menu li {
  margin-bottom: 24px;
}

header.bg_show > nav > ul > li > a:not(.btn_booking) {
  color: inherit;
}

header.bg_show > nav > ul > li > a:not(.btn) {
  color: var(--fg-inverse-primaly, #333333);
}

.menu_sp a.btn_link_workspace {
  font-size: var(--body-fontsize-md);
  border-radius: var(--radius-full, 9999px);
}

.ham_close .hamburger__line--1,
.ham_close .hamburger__line--2 {
  filter: invert(1);
}

.box_btn_close {
  margin-left: auto;
}

.box_btn_close > img {
  width: 40px;
}

.td_left {
  padding-bottom: var(--padding-sm, 16px);
}
@media (max-width: 991px) {
  .td_left {
    padding-bottom: 4px;
    text-align: left;
  }
}

@media (max-width: 991px) {
  .td_right {
    margin-bottom: 4px;
  }
  .container_modal table {
    width: 100%;
  }
}
.box_btn_white {
  gap: var(--padding-md, 24px);
}

.container_modal {
  align-items: center;
  width: 80%;
  max-width: 480px;
  height: auto;
  overflow: scroll;
  max-height: 640px;
  border-radius: var(--radius-lg, 8px);
  padding: 0 var(--padding-sm, 16px);
}
@media (max-width: 991px) {
  .container_modal {
    height: 90vh;
  }
}
.container_modal > form {
  padding-top: var(--padding-sm, 16px);
}

.booking_content {
  z-index: 2000;
}

.link_term {
  margin-bottom: 32px;
}

@media (max-width: 991px) {
  .container_modal.container_modal_branches {
    padding: 0;
    width: calc(100% - 24px);
  }
}

.btn.btn__medium.btn_workspace {
  margin-bottom: 24px;
}

.box_btn_white {
  margin-top: 16px;
}

@media (max-width: 991px) {
  .container_modal > .box_btn_white > .btn {
    max-width: 294px;
  }
}

.td_right select,
.td_right select input {
  height: 40px;
  border: 1px solid var(--ol-neutral-secondary, #333333);
  font-size: var(--body-md, 14px);
}

.container_modal input[type=text] {
  height: 32px;
  border: 1px solid var(--ol-neutral-secondary, #333333);
  font-size: var(--body-md, 14px);
  padding-right: 0;
}

footer {
  width: 100%;
  background-color: var(--fg-inverse-secondary, #666);
  font-weight: var(--body-fontweight, 400);
  padding: var(--padding-xxxl, 80px) 0;
}

footer img {
  width: inherit;
}

@media (max-width: 1100px) {
  .footer_content {
    text-align: left;
    flex-direction: row;
    justify-content: space-between;
    width: 100%;
  }
}
@media (max-width: 1100px) and (max-width: 991px) {
  .footer_content {
    flex-direction: column;
  }
}
@media (max-width: 991px) {
  .box_sns_footer {
    text-align: center;
  }
}

@media (max-width: 991px) {
  .block_branches {
    text-align: center;
  }
}

.footer_content {
  max-width: 960px;
}

footer .block_logo h2,
.block_page_nav a,
.block_branches ul li a {
  font-weight: var(--body-fontweight, 400);
}

footer a.btn_link_workspace {
  border-radius: var(--radius-full, 9999px);
}
@media (max-width: 991px) {
  footer a.btn_link_workspace {
    margin: 24px auto;
  }
}

.block_page_nav a {
  text-align: left;
}
@media (max-width: 991px) {
  .block_page_nav a {
    text-align: center;
  }
}

.section__hero {
  height: 100vh;
  background: url(../img/new/img__top__01.jpg) no-repeat center center;
  background-size: cover;
  width: 100%;
  display: inline;
  display: flex;
  justify-content: center;
  align-items: center;
}

.titile__hero {
  text-align: center;
  text-transform: uppercase;
}

@media (max-width: 991px) {
  a.line_scroll {
    position: absolute;
    bottom: 240px;
  }
}

.section__message {
  display: flex;
  max-width: 960px;
  width: calc(100% - 48px);
  margin-right: auto;
  margin-left: auto;
  flex-direction: column;
  gap: var(--padding-xl, 40px);
  flex: 1 0 0;
}
@media (max-width: 991px) {
  .section__message {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: var(--gap-xl, 40px);
    align-self: stretch;
  }
}

.container__message {
  display: flex;
  align-items: flex-start;
  gap: var(--gap-xxl, 80px);
  align-self: stretch;
  max-width: 960px;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
}
@media (max-width: 991px) {
  .container__message {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--gap-lg, 24px);
    align-self: stretch;
  }
}

.box__titleImage--full {
  position: relative;
  width: 100%;
}
@media (max-width: 991px) {
  .box__titleImage--full {
    display: flex;
    flex-direction: column;
    gap: var(--gap-lg, 24px);
  }
}

.box__titleImage {
  position: relative;
  width: 50%;
}
@media (max-width: 991px) {
  .box__titleImage {
    display: flex;
    width: -moz-fit-content;
    width: fit-content;
  }
}

.img__content--large {
  max-width: 960px;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
}

.copy__image {
  position: absolute;
  top: 48px;
  left: -120px;
  width: 200%;
  transform-origin: top left;
  transform: scale(0.5) rotate(-10deg);
  filter: drop-shadow(0px 8px 8px rgba(255, 255, 255, 0.3));
}
@media (max-width: 991px) {
  .copy__image {
    top: 20px;
    left: -40px;
    width: 480px;
  }
}
.copy__image.copy__02 {
  position: absolute;
  top: -30px;
  left: auto;
  right: 20px;
  width: 200%;
  transform-origin: top right;
  transform: scale(0.13) rotate(-10deg);
  filter: drop-shadow(0px 8px 8px rgba(255, 255, 255, 0.3));
}
@media (max-width: 991px) {
  .copy__image.copy__02 {
    top: -24px;
    right: 10px;
    width: 320px;
    transform: scale(0.4) rotate(-10deg);
  }
}
.copy__image.copy__03 {
  position: absolute;
  top: 50px;
  left: -50px;
  width: 200%;
  transform-origin: top left;
  transform: scale(0.23) rotate(-10deg);
  filter: drop-shadow(0px 8px 8px rgba(255, 255, 255, 0.3));
}
@media (max-width: 991px) {
  .copy__image.copy__03 {
    top: 8px;
    left: -20px;
    width: 480px;
    transform: scale(0.4) rotate(-10deg);
  }
}

@media (max-width: 991px) {
  .img__content--small {
    max-width: 480px;
    margin-right: auto;
  }
}
@media (max-width: 767px) {
  .img__content--small {
    max-width: 240px;
  }
}

.hostel__desc {
  display: flex;
  padding-top: var(--padding-xxl, 80px);
  flex-direction: column;
  align-items: flex-end;
  gap: var(--padding-lg);
  width: 50%;
}
@media (max-width: 991px) {
  .hostel__desc {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--gap-lg, 24px);
    padding-top: 0;
    align-self: stretch;
    width: 100%;
  }
}

.title__hostel {
  width: 100%;
  font-size: var(--title-fontsize-xxl, 48px);
  font-style: normal;
  text-transform: uppercase;
}
@media (max-width: 991px) {
  .title__hostel {
    text-align: center;
    font-size: var(--title-fontsize-lg, 24px);
  }
}

.group__text {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--gap-xs, 8px);
  align-self: stretch;
}
@media (max-width: 991px) {
  .group__text {
    margin-left: auto;
    margin-right: auto;
  }
}

.body__hostel {
  width: 100%;
}

.img__content--medium {
  max-width: 480px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 991px) {
  .img__content--medium {
    width: 240px;
  }
}

.section__lounge,
.section__room {
  display: flex;
  max-width: 960px;
  margin-right: auto;
  margin-left: auto;
  width: calc(100% - 48px);
  flex-direction: column;
  align-items: flex-start;
  gap: var(--gap-lg, 24px);
}

.group__title {
  display: flex;
  align-items: flex-start;
  gap: var(--gap-lg, 24px);
}

.group__content__desc {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--gap-xl, 24px);
  align-self: stretch;
}

.group__number {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: -8px;
  border-right: 1px solid var(--ol-neutral-secondary, #333);
  padding-right: var(--padding-lg, 24px);
}

.title__small {
  color: var(--fg-inverse-secondary, #666);
  font-family: var(--title-fontfamily-english, "Helvetica Neue");
  font-size: var(--body-fontsize-sm, 13px);
  font-style: normal;
  font-weight: 500;
  line-height: 120%; /* 15.6px */
  letter-spacing: 0.52px;
}
@media (max-width: 991px) {
  .title__small {
    font-size: var(--body-fontsize-sm, 13px);
  }
}

.number__italic {
  color: var(--fg-inverse-secondary, #666);
  font-family: var(--title-fontfamily-english, "Helvetica Neue");
  font-size: var(--title-fontsize-xxxl, 56px);
  font-style: italic;
  font-weight: 500;
  line-height: 120%; /* 67.2px */
  letter-spacing: 1.12px;
}
@media (max-width: 991px) {
  .number__italic {
    font-size: var(--title-fontsize-xxl, 48px);
  }
}

.group__title__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}

.title__content {
  color: var(--fg-inverse-primary, #333);
  font-family: var(--title-fontfamily-english, "Helvetica Neue");
  font-size: var(--fontsize-xxxl, 56px);
  font-style: normal;
  font-weight: 500;
  line-height: 130%; /* 72.8px */
  text-transform: uppercase;
  text-align: left;
  margin-bottom: -8px;
}
.title__content.title__desc--onImage {
  padding-right: var(--padding-lg, 24px);
  border-right: 1px solid var(--ol-neutral-secondary);
  text-align: left;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .title__content {
    font-size: var(--title-fontsize-xl, 32px);
  }
  .title__content.title__desc--onImage {
    padding-right: 0;
    padding-bottom: var(--padding-md, 24px);
    border-right: 0;
    border-bottom: 1px solid var(--ol-neutral-secondary);
  }
}
@media (max-width: 767px) and (max-width: 991px) {
  .title__content.title__desc--onImage {
    text-align: center;
  }
}

.subTitle__content {
  color: var(--fg-inverse-primary, #333);
  font-family: var(--title-fontfamily, "Noto Sans JP");
  font-size: var(--title-fontsize-sm, 16px);
  font-style: normal;
  font-weight: 700;
  line-height: 200%; /* 32px */
  letter-spacing: 0.32px;
}
@media (max-width: 991px) {
  .subTitle__content {
    font-size: var(--title-fontsize-sm, 13px);
  }
}

.card__desc {
  display: flex;
  width: -moz-fit-content;
  width: fit-content;
  padding: var(--padding-xl, 40px) var(--padding-xxl, 56px);
  flex-direction: column;
  align-items: center;
  gap: var(--gap-lg, 24px);
  position: absolute;
  right: 40px;
  bottom: -240px;
  border-radius: var(--radius-lg, 8px);
  border: 1px solid var(--ol-neutral-tertiary, #ddd);
  background: var(--bg-neutral-primary, #fff);
  box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.08);
}
@media (max-width: 991px) {
  .card__desc {
    gap: var(--gap-md, 16px);
    position: inherit;
    right: 0;
    bottom: 0;
    margin-left: auto;
    padding: var(--padding-lg, 40px) var(--padding-lg, 32px);
  }
}
.card__desc.desc__top--02 {
  position: absolute;
  left: 40px;
  right: inherit;
  bottom: -240px;
}
@media (max-width: 991px) {
  .card__desc.desc__top--02 {
    position: inherit;
    left: 0;
    bottom: 0;
    margin-right: auto;
  }
}

.title__card__desc {
  color: var(--fg-inverse-secondary, #666);
  text-align: center;
  font-family: var(--title-fontfamily-english, "Helvetica Neue");
  font-size: var(--title-fontsize-lg, 24px);
  font-style: italic;
  font-weight: 500;
  line-height: 130%; /* 41.6px */
  letter-spacing: 0.64px;
  width: 100%;
  text-align: center;
}

.body__card__desc {
  color: var(--fg-inverse-primary, #333);
  font-family: var(--title-fontfamily, "Noto Sans JP");
  font-size: var(--body-fontsize-md, 14px);
  font-style: normal;
  font-weight: 400;
  line-height: 200%; /* 28px */
  width: 100%;
}

.group__content--sub {
  display: flex;
  padding: var(--padding-md, 16px) var(--padding-md, 16px) 0 var(--padding-md, 16px);
  align-items: flex-start;
  align-self: stretch;
}
.group__content--sub > .img__content--small {
  max-width: 320px;
}

.room__content--sub {
  justify-content: end;
}
@media (max-width: 991px) {
  .room__content--sub {
    justify-content: inherit;
  }
  .room__content--sub > .img__content--small {
    margin-left: auto;
    margin-right: inherit;
  }
}

.sec_branches {
  max-width: 960px;
  width: calc(100% - 48px);
}
@media (max-width: 991px) {
  .sec_branches .title__branches {
    padding-bottom: --padding-sm, 8px;
  }
}

.sec_branches .container {
  max-width: 960px;
}

.slider_branches {
  margin-bottom: 24px;
}

.slider_branches .slick-slide img {
  height: inherit;
}

.slider_arrow_forward,
.slider_arrow_back {
  top: calc(50% - 24px);
  line-height: 0;
}
@media (max-width: 991px) {
  .slider_arrow_forward,
  .slider_arrow_back {
    top: calc(50% - 16px);
  }
}

.slider_arrow_forward {
  right: 20px;
}
@media (max-width: 991px) {
  .slider_arrow_forward {
    right: -20px;
  }
}

.slider_arrow_back {
  left: 20px;
}
@media (max-width: 991px) {
  .slider_arrow_back {
    left: -20px;
  }
}

.slider_arrow_back img,
.slider_arrow_forward img {
  width: 48px;
}
@media (max-width: 991px) {
  .slider_arrow_back img,
  .slider_arrow_forward img {
    width: 32px;
  }
}

.title__branches {
  color: var(--fg-inverse-primary, #333);
  font-family: var(--title-fontfamily-english, "Helvetica Neue");
  font-size: var(--title-fontsize-xxxl, 56px);
  font-style: normal;
  font-weight: 500;
  line-height: 130%; /* 72.8px */
  text-transform: uppercase;
  padding-bottom: var(--padding-lg, 24px);
}
@media (max-width: 991px) {
  .title__branches {
    font-size: var(--title-fontsize-xl, 32px);
  }
}

.btn.top_to_branches {
  display: flex;
  margin: 0 auto;
}

.section__contents--onImage {
  display: flex;
  height: 180px;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding: var(--padding-xxxl, 80px) 0;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background: url(../img/new/img__reservation__01.jpg) no-repeat center center;
  background-size: cover;
  margin-top: 40px;
}

.card__desc--onImage {
  display: flex;
  width: auto;
  max-width: 800px;
  padding: var(--padding-xl, 40px) var(--padding-xxl, 56px);
  justify-content: center;
  align-items: center;
  gap: var(--padding-xl);
  border-radius: var(--radius-lg, 8px);
  background: rgba(255, 255, 255, 0.95);
  box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.08);
}
@media (max-width: 767px) {
  .card__desc--onImage {
    width: calc(100% - 124px);
    flex-direction: column;
    gap: var(--gap-lg, 24px);
    padding: var(--padding-lg, 32px);
    width: auto;
  }
}

.contents__desc--onImage {
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: left;
  gap: var(--gap-md, 16px);
}

.text__btn__desc {
  font-size: var(--body-fontsize-md, 14px);
  font-weight: 700;
}
@media (max-width: 767px) {
  .text__btn__desc {
    text-align: center;
  }
}

.txt_hostel_header {
  color: var(--fg-inverse-primary, #333);
  text-align: center;
  font-family: var(--title-fontfamily-english, "Helvetica Neue");
  font-size: var(--title-fontsize-lg, 32px);
  font-style: normal;
  font-weight: 500;
  line-height: 160%; /* 51.2px */
  text-transform: uppercase;
}

header.bg_show {
  background: rgba(255, 255, 255, 0.9);
  transition: 0.2s;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.04);
}

.banner_fixed_top {
  top: inherit;
  bottom: 24px;
  left: 24px;
  width: 100%;
  max-width: 390px;
  margin: inherit;
}
@media (max-width: 991px) {
  .banner_fixed_top {
    left: inherit;
    right: inherit;
    margin-right: auto;
    margin-left: auto;
    bottom: 90px;
    width: 90%;
  }
  .banner_fixed_top img {
    margin: 0 auto;
  }
}

.section__about--top {
  display: flex;
  padding: var(--padding-xl, 40px) var(--padding-md, 24px);
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: var(--gap-lg, 24px);
  align-self: stretch;
  background: url(../img/new/img__about__01.jpg) no-repeat center center;
  background-size: cover;
}
@media (max-width: 991px) {
  .section__about--top .card__desc--onImage {
    width: auto;
  }
}

.section__history,
.section__collaboration {
  display: flex;
  max-width: 960px;
  margin-right: auto;
  margin-left: auto;
  width: calc(100% - 48px);
  flex-direction: column;
  align-items: flex-start;
  gap: var(--gap-lg, 24px);
}

.section__collaboration {
  padding-top: var(--padding-xxl, 56px);
}
@media (max-width: 991px) {
  .section__collaboration {
    padding-top: 0;
  }
}

.card__desc {
  max-width: 400px;
}
.card__desc.card__desc_about--01, .card__desc.card__desc_about--02 {
  position: absolute;
  bottom: -310px;
  gap: var(--padding-xs, 16px);
}
@media (max-width: 991px) {
  .card__desc.card__desc_about--01, .card__desc.card__desc_about--02 {
    position: inherit;
    left: 0;
    bottom: 0;
    margin-right: auto;
  }
}
.card__desc.card__desc_about--03 {
  position: absolute;
  bottom: -280px;
  gap: var(--padding-xs, 16px);
}
@media (max-width: 991px) {
  .card__desc.card__desc_about--03 {
    position: inherit;
    left: 0;
    bottom: 0;
    margin-right: auto;
  }
}

@media (max-width: 991px) {
  .title__content--long {
    line-height: 110%;
    padding-bottom: var(--padding-xxs, 4px);
  }
}

.list__links {
  display: flex;
  max-width: 912px;
  width: 100%;
  padding: var(--padding-md, 24px);
  flex-direction: column;
  align-items: center;
  gap: var(--gap-lg, 24px);
  border-radius: var(--radius-lg, 8px);
  background: var(--bg-neutral-secondary, #eee);
  margin-top: 80px;
}
@media (max-width: 991px) {
  .list__links {
    flex-direction: column;
    align-items: center;
    width: calc(100% - 48px);
    margin-top: 16px;
  }
}

.title__list__links {
  color: var(--fg-inverse-secondary, #666);
  font-family: var(--title-fontfamily-english, "Helvetica Neue");
  font-size: var(--title-fontsize-lg, 32px);
  font-style: italic;
  text-transform: uppercase;
  font-weight: 500;
  line-height: 130%; /* 41.6px */
  letter-spacing: 0.64px;
}

.item__list__links {
  display: flex;
  padding-bottom: var(--padding-md, 24px);
  align-items: flex-start;
  gap: var(--gap-md, 16px);
  align-self: stretch;
}
.item__list__links:not(:last-child) {
  border-bottom: 1px solid var(--fg-neutral-tertiary, #aaa);
}
@media (max-width: 991px) {
  .item__list__links {
    flex-direction: column;
    align-items: center;
    align-self: stretch;
  }
}

.img__links {
  max-width: 210px;
}
@media (max-width: 991px) {
  .img__links {
    max-width: 480px;
    width: 80%;
  }
}

.links__desc {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-end;
  flex: 1 0 0;
  align-self: stretch;
}
@media (max-width: 991px) {
  .links__desc {
    gap: var(--gap-md, 16px);
  }
}

.title__link,
.body__links {
  width: 100%;
  line-height: 150%;
}

.body__links {
  padding-bottom: var(--padding-sm, 8px);
}

.section__culture {
  display: flex;
  max-width: 960px;
  margin-right: auto;
  margin-left: auto;
  width: calc(100% - 48px);
  flex-direction: column;
  align-items: flex-start;
  gap: var(--gap-lg, 24px);
  padding-top: var(--padding-xxxl, 80px);
}
@media (max-width: 991px) {
  .section__culture {
    padding-top: 0;
  }
}

.title__about__message {
  max-width: 960px;
  width: 100%;
  text-align: center;
  line-height: 200%;
  font-size: var(--title-fontsize-lg, 24px);
}
@media (max-width: 991px) {
  .title__about__message {
    max-width: inherit;
    width: calc(100% - 48px);
    font-size: var(--title-fontsize-sm, 16px);
  }
}

span.sp {
  display: none;
}
@media (max-width: 991px) {
  span.sp {
    display: inline-block;
  }
}

.span__row {
  display: inline;
}

.marginTop--120 {
  margin-top: 120px;
}
@media (max-width: 991px) {
  .marginTop--120 {
    margin-top: 24px;
  }
}

select.box_select_branches {
  font-family: var(--body-fontfamily, "Noto Sans JP");
}

.box_heading {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
}

.sec_branches_top {
  margin-bottom: 0;
}

.container_branches {
  width: 100%;
}

.layout__bottom__80 {
  margin-bottom: 80px;
}

@media (max-width: 991px) {
  .sec_branches_top .branches_list_container {
    width: 100%;
  }
}

.img_popup_content {
  z-index: 2000;
}

@media (max-width: 991px) {
  .box_btn_close img {
    height: 40px;
    margin-right: -8px;
    margin-top: 4px;
  }
}

@media (max-width: 991px) {
  .box_btn_close img {
    height: 40px;
    margin-right: -8px;
    margin-top: 4px;
  }
}

@media (max-width: 991px) {
  .container_modal.container_modal_branches > .box_btn_close img {
    margin-right: 0;
  }
}

.box_branches {
  margin-bottom: 0;
}

p.txt_description {
  margin-bottom: 0;
  font-size: var(--body-fontsize-md, 14px);
}

.container_branches:not(:last-child) {
  margin-bottom: 40px;
}

.container_branches:last-child {
  margin-bottom: 0;
}

.container_modal.container_modal_branches {
  max-width: 880px;
  height: auto;
}

.box_branches,
.box_branches table td {
  text-align: left;
}

a.txt_description {
  text-align: left;
}

.title__content {
  line-height: 110%;
  margin-bottom: 0;
}

.sec_faq_top {
  padding-top: 10rem;
}
@media (max-width: 991px) {
  .sec_faq_top {
    padding-top: 5rem;
  }
}

.container_faq {
  flex-direction: column;
}
.container_faq > .container {
  gap: var(--gap-xl, 40px);
}
@media (max-width: 991px) {
  .container_faq > .container {
    flex-direction: row;
  }
}
@media (max-width: 767px) {
  .container_faq > .container {
    flex-direction: column;
  }
}

.box_faq img {
  width: auto;
  background-color: var(--bg-neutral-secondary, #eeeeee);
  padding: 0;
}

.box_faq {
  margin: 0;
  border: none;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: var(--gap-xs, 8px);
}

.agreement_content,
.contract_content {
  z-index: 2000;
}

.line_hostel_agreement {
  flex-direction: column;
  gap: var(--gap-lg, 24px);
  margin-bottom: 0;
}

.container_agreement h2 {
  margin-bottom: 24px;
}

.line_hostel_agreement a {
  margin-bottom: 0;
  display: flex;
  gap: 8px;
  align-items: center;
}

.box_faq .container_txt {
  min-height: inherit;
}

.agreement_content .container_modal,
.contract_content .container_modal {
  padding: var(--padding-sm, 16px) var(--padding-sm, 16px) var(--padding-xl, 40px);
  max-width: 400px;
}
@media (max-width: 991px) {
  .agreement_content .container_modal,
  .contract_content .container_modal {
    width: 100%;
    max-width: 260px;
  }
}

h3.title_faq {
  margin-bottom: 0;
  padding: 0;
}

.container_agreement a img {
  height: 24px;
  width: 24px;
}

.inner_faq:not(:last-child) {
  margin-bottom: 80px;
}

h2.heading_faq,
h2.heading_tokushoho {
  margin: 0 auto 24px;
}

.box_faq p {
  margin-bottom: 0;
  font-size: var(--body-fontsize-md, 14px);
}

.container_faq {
  margin-bottom: 40px;
}

.sec_contact {
  margin-bottom: 0;
}

.sec_contact .container {
  gap: var(--gap-xl, 40px);
}
@media (max-width: 991px) {
  .sec_contact .container {
    gap: 0;
    width: calc(100% - 48px);
  }
}

select.form-control,
.box_form input.form-control,
.box_form textarea.form-control,
input[type=text],
textarea,
textarea.form-control {
  color: var(--fg--primary, #333333);
  font-family: var(--body-fontfamily, "Noto Sans JP");
  font-size: var(--body-fontsize-md);
  font-style: normal;
  font-weight: 400;
  line-height: 200%;
  max-width: 480px;
  width: 100%;
}
@media (max-width: 991px) {
  select.form-control,
  .box_form input.form-control,
  .box_form textarea.form-control,
  input[type=text],
  textarea,
  textarea.form-control {
    max-width: inherit;
  }
}

.box_heading--small {
  width: auto;
}
@media (max-width: 991px) {
  .box_heading--small {
    margin-left: 0;
  }
}

select.form-control {
  margin-right: 0;
  margin-left: 0;
  margin-right: 0;
  margin-left: 0;
  width: 494px;
  max-width: inherit;
}
@media (max-width: 991px) {
  select.form-control {
    width: 100%;
  }
}

.header_doc,
.doc_panel {
  max-width: 480px;
  width: 100%;
}
@media (max-width: 991px) {
  .header_doc,
  .doc_panel {
    max-width: inherit;
    width: calc(100% - 10px);
  }
}

.container_form {
  width: 100%;
}

.form_check label {
  max-width: 480px;
  width: 100%;
}

.box_form {
  max-width: 494px;
  width: 100%;
}

.box_mail_content {
  width: 100%;
}

.container.input_confirm_box {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 8px;
  text-align: center;
  padding-top: 40px;
}
.container.input_confirm_box .btn.btn_cancel {
  margin-top: 24px;
}
@media (max-width: 767px) {
  .container.input_confirm_box {
    width: calc(100% - 48px);
  }
}

@media (max-width: 767px) {
  .content-block {
    width: 100%;
  }
}

/* buttonでもinputでも効くようにして、上書きにも勝つ */
.btn_submit:disabled,
.btn_submit[disabled] {
  opacity: 0.4 !important;
  cursor: not-allowed !important;
}

/* ついでに「押せそう」に見えないように（必要なら） */
.btn_submit:disabled {
  pointer-events: none;
}

.sec_tokushoho_top {
  padding-top: 10rem;
  width: 100%;
  max-width: 560px;
}
@media (max-width: 991px) {
  .sec_tokushoho_top {
    padding-top: 5rem;
  }
}

.container_faq > .container {
  gap: var(--gap-xxl, 80px);
}
@media (max-width: 991px) {
  .container_faq > .container {
    width: 100%;
    gap: var(--gap-xl, 40px);
  }
}

.box_mail_content p {
  font-size: var(--body-fontsize-md, 14px);
}

.main__lp {
  gap: var(--gap-xl, 40px);
}

header.header__lp {
  display: inline-flex;
  width: auto;
  padding: var(--gap-xs, 8px) var(--padding-xl, 40px);
  align-items: center;
  border-radius: var(--radius-full, 9999px);
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.1);
  position: fixed;
  top: 20px;
}
@media (max-width: 991px) {
  header.header__lp {
    max-width: 480px;
    width: 70%;
  }
}
header.header__lp nav {
  padding-right: inherit;
  filter: inherit;
  width: 100%;
  display: flex;
  gap: var(--gap-xl, 40px);
  justify-content: space-between;
  align-items: center;
  padding: 0;
}
header.header__lp nav a {
  color: var(--fg-inverse-primary, #333);
  font-family: "Noto Sans CJK JP";
  font-size: var(--title-fontsize-sm, 16px);
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  text-transform: uppercase;
}
@media (max-width: 991px) {
  header.header__lp nav a {
    display: none;
  }
}
header.header__lp nav a.logo__header {
  display: block;
}

.list__item--sp {
  text-transform: uppercase;
}

.header__lp .btn_booking_pc,
.header__lp .btn_contact {
  display: flex;
  height: 40px;
  min-width: 126px;
  max-width: 320px;
  padding: 0;
  justify-content: center;
  align-items: center;
  border-radius: var(--radius-full, 9999px);
  border: 1px solid var(--fg-inverse-primary, #333);
  background: var(--fg-inverse-primary, #333);
  color: var(--fg-neutral-primary, #fff);
  font-family: var(--label-fontfamily_base, "Noto Sans JP");
  font-size: var(--label-fontsize-md);
  font-style: normal;
  font-weight: 400;
  line-height: 200%; /* 32px */
  letter-spacing: 0.32px;
}
@media (max-width: 991px) {
  .header__lp .btn_booking_pc,
  .header__lp .btn_contact {
    display: none;
  }
}

.btn_booking_sp {
  text-transform: uppercase;
  z-index: 1000;
}

.box_hamburger_lp {
  display: none;
}
@media (max-width: 991px) {
  .box_hamburger_lp {
    display: block;
    filter: inherit;
  }
}

.ham_close .hamburger__line--1,
.ham_close .hamburger__line--2 {
  filter: inherit;
}

.container_sp_menu {
  left: 0;
}

.logo__header {
  height: 40px;
}

.container__kv {
  z-index: 200;
  background: #fff;
  position: relative;
  background: url(../img/nambasouth/img__kv--nambasouth--01.png) no-repeat center center;
  background-size: cover;
  height: 800px;
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: var(--gap-lg, 24px);
  align-self: stretch;
}
@media (max-width: 991px) {
  .container__kv {
    height: 90vh;
  }
}

.container__lp {
  display: flex;
  padding: var(--gap-xxl, 80px) 0;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: var(--gap-lg, 24px);
  width: 100%;
  max-width: 960px;
}
@media (max-width: 991px) {
  .container__lp {
    padding: var(--padding-sm, 16px) 0;
    width: calc(100% - 32px);
  }
}

.group__gap--80 {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  gap: var(--gap-xxl, 80px);
  flex: 1 0 0;
  max-width: 960px;
  width: 100%;
}
@media (max-width: 991px) {
  .group__gap--80 {
    gap: var(--gap-xl, 40px);
  }
}

.group__gap--40 {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  gap: var(--gap-xl, 40px);
  flex: 1 0 0;
  max-width: 960px;
  width: 100%;
}

.group__gap--24 {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  gap: var(--gap-lg, 24px);
  flex: 1 0 0;
  max-width: 960px;
  width: 100%;
}

.group__gap--16 {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  gap: var(--gap-md, 16px);
  flex: 1 0 0;
  max-width: 960px;
  width: 100%;
}

.group__gap--8 {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  gap: var(--gap-sm, 8px);
  flex: 1 0 0;
  max-width: 960px;
  width: 100%;
}

.group--row {
  display: flex;
  flex-direction: row;
}

.logo__kv {
  width: 100%;
  max-width: 480px;
}
@media (max-width: 991px) {
  .logo__kv {
    max-width: 240px;
  }
}

.heading__kv {
  color: var(--fg-neutral-primary, #fff);
  font-family: var(--title-fontfamily, "Noto Sans JP");
  font-size: var(--title-fontsize-lg, 24px);
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  text-transform: uppercase;
}
@media (max-width: 991px) {
  .heading__kv {
    font-size: var(--title-fontsize-md, 20px);
  }
}

.group__title {
  padding-bottom: var(--gap-xxs, 4px);
  color: var(--fg-inverse-primary, #333);
  font-family: var(--title-fontfamily-english, "Helvetica Neue");
  font-size: var(--title-fontsize-xlplus, 40px);
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  text-transform: uppercase;
  border-bottom: 2px solid var(--ol-neutral-secondary, #333);
}
@media (max-width: 991px) {
  .group__title {
    font-size: var(--title-fontsize-md, 20px);
  }
}

.list__topics {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 24px;
  align-self: stretch;
  width: 100%;
}

a.item__topics {
  display: flex;
  align-items: flex-start;
  gap: var(--gap-lg, 24px);
  align-self: stretch;
  text-align: left;
}
@media (max-width: 991px) {
  a.item__topics {
    flex-direction: column;
  }
}

.thumb__topics {
  border-radius: var(--radius-lg, 8px);
  max-width: 210px;
  width: 100%;
  aspect-ratio: 3/2;
}
@media (max-width: 991px) {
  .thumb__topics {
    max-width: inherit;
  }
}

.group__text__topics {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  flex: 1 0 0;
  align-self: stretch;
  width: 100%;
}

.text__topics {
  color: var(--fg-inverse-primary, #333);
  font-family: var(--title-fontfamily, "Noto Sans JP");
  font-size: var(--body-fontsize-md);
  font-style: normal;
  font-weight: 400;
  line-height: 180%; /* 25.2px */
}

.text__link__topics {
  display: flex;
  width: 100%;
  justify-content: flex-end;
  align-items: center;
  gap: var(--space-sm, 8px);
}

.icon__arrow__link {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  aspect-ratio: 1/1;
}

.border__gray {
  height: 1px;
  width: 100%;
  border-top: 1px solid var(--gray-500, #bbbbbb);
  border-right: none;
  border-bottom: none;
  border-left: none;
}

.group__about {
  display: flex;
  flex-direction: row;
}
@media (max-width: 991px) {
  .group__about {
    flex-direction: column;
  }
}

@media (max-width: 991px) {
  .group__text__caption {
    width: calc(100% - 24px);
    margin: 0 auto;
  }
}

.text__about {
  color: var(--fg-inverse-primary, #333);
  font-family: "Noto Sans JP";
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 200%; /* 28px */
}

.img__about {
  width: 356px;
}
@media (max-width: 991px) {
  .img__about {
    width: 100%;
  }
}

.group__text__about {
  display: flex;
  flex-direction: column;
  gap: var(--gap-xl, 40px);
  flex: 1 0 0;
}
@media (max-width: 991px) {
  .group__text__about {
    gap: var(--gap-lg, 24px);
  }
}

.group__img--right {
  display: flex;
  justify-content: flex-end;
  width: 100%;
}
@media (max-width: 991px) {
  .group__img--right {
    width: calc(100% - 8px);
  }
}

.img__about__02 {
  max-width: 320px;
}

.group__slider__discription {
  display: flex;
  padding: var(--padding-lg, 32px);
  flex-direction: column;
  align-items: flex-start;
  gap: var(--gap-md, 16px);
  align-self: stretch;
  border-radius: var(--radius-lg, 8px);
  background: var(--bg-secondary, #eee);
}
@media (max-width: 991px) {
  .group__slider__discription {
    padding: var(--padding-md, 24px);
  }
}
.group__slider__discription .group--row {
  align-items: center;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--gap-xs, 8px);
}
@media (max-width: 991px) {
  .group__slider__discription .group--row {
    padding: 0;
  }
}

.title__slider {
  color: var(--fg-inverse-primary, #333);
  font-family: var(--title-fontfamily, "Noto Sans JP");
  font-size: var(--title-fontsize-lg, 24px);
  font-style: normal;
  font-weight: 500;
  line-height: 100%;
}
@media (max-width: 991px) {
  .title__slider {
    font-size: var(--title-fontsize-md, 20px);
  }
}

.label__facility {
  display: flex;
  padding: var(--gap-xxs, 4px) var(--gap-xs, 8px);
  justify-content: center;
  align-items: center;
  border-radius: var(--radius-md, 4px);
  border: 1px solid var(--ol-neutral-secondary, #333);
  color: var(--fg-inverse-primary, #333);
  font-family: var(--title-fontfamily, "Noto Sans JP");
  font-size: var(--body-fontsize-md, 14px);
  font-style: normal;
  font-weight: 500;
  line-height: normal;
}

.text__facility {
  color: var(--fg-inverse-primary, #333);
  font-family: var(--title-fontfamily, "Noto Sans JP");
  font-size: var(--body-fontsize-md, 14px);
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

.group__access {
  display: flex;
  align-items: center;
  gap: var(--gap-xl, 40px);
  align-self: stretch;
}
@media (max-width: 991px) {
  .group__access {
    flex-direction: column;
    gap: var(--gap-md, 16px);
  }
}

.group__map {
  max-width: 480px;
  height: 360px;
  width: 100%;
}
.group__map iframe {
  width: 100%;
  height: 100%;
}

.group__info {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-end;
  gap: var(--gap-sm, 8px);
  flex: 1 0 0;
  width: 100%;
}
@media (max-width: 991px) {
  .group__info {
    gap: var(--gap-md, 16px);
    width: calc(100% - 24px);
  }
}

.item__info {
  display: flex;
  align-items: flex-start;
  gap: var(--gap-xs, 8px);
  align-self: stretch;
}
@media (max-width: 991px) {
  .item__info {
    flex-direction: column;
    gap: var(--gap-xxs, 4px);
  }
}

.group__title__info {
  width: 160px;
}
@media (max-width: 991px) {
  .group__title__info {
    width: 100%;
  }
}

.title__info {
  color: var(--fg-inverse-secondary, #666);
  font-family: var(--title-fontfamily, "Noto Sans JP");
  font-size: var(--body-fontsize-md, 14px);
  font-style: normal;
  font-weight: 400;
  line-height: 180%; /* 25.2px */
}
@media (max-width: 991px) {
  .title__info {
    line-height: 140%;
    font-size: var(--body-fontsize-sm, 13px);
  }
}

.text__info {
  color: var(--fg-inverse-primary, #333);
  font-family: var(--title-fontfamily, "Noto Sans JP");
  font-size: var(--body-fontsize-md, 14px);
  font-style: normal;
  line-height: 180%; /* 25.2px */
  width: 100%;
}

.group__list__branches {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--gap-md, 16px);
  width: 100%;
}
@media (max-width: 991px) {
  .group__list__branches {
    gap: var(--gap-sm, 8px);
  }
}

.area__branches {
  color: var(--fg-inverse-primary, #333);
  font-family: var(--title-fontfamily-english, "Helvetica Neue");
  font-size: var(--title-fontsize-lg, 24px);
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  text-transform: uppercase;
}

.list__branches {
  display: flex;
  width: 100%;
  align-items: center;
  align-content: flex-start;
  gap: var(--gap-lg, 24px);
  align-self: stretch;
  flex-wrap: wrap;
}
@media (max-width: 991px) {
  .list__branches {
    flex-direction: column;
    gap: var(--gap-md, 16px);
  }
}

.item__branches {
  border-radius: var(--radius-lg, 8px);
  flex: 1;
  height: 202px;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media (max-width: 991px) {
  .item__branches {
    padding: var(--gap-xl, 40px) 0;
  }
}

.bg__akihabara {
  background: url(../img/img__branches--01.png) center center no-repeat;
  background-size: cover;
}

.bg__asakusakappabashi {
  background: url(../img/img__branches--02.png) center center no-repeat;
  background-size: cover;
}

.bg__minamisenju {
  background: url(../img/img__branches--03.png) center center no-repeat;
  background-size: cover;
}

.bg__hommachieast {
  background: url(../img/img__branches--04.png) center center no-repeat;
  background-size: cover;
}

.bg__shinsaibashieast {
  background: url(../img/img__branches--05.png) center center no-repeat;
  background-size: cover;
}

.bg__nambasouth {
  background: url(../img/img__branches--06.png) center center no-repeat;
  background-size: cover;
}

@media (max-width: 991px) {
  .bg__space {
    display: none;
  }
}

.label__branches {
  display: flex;
  padding: var(--gap-xxs, 4px) var(--gap-xs, 8px);
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  color: var(--fg-neutral-primary, #fff);
  font-family: var(--title-fontfamily-english, "Helvetica Neue");
  font-size: var(--body-fontsize-md, 14px);
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  text-transform: uppercase;
  border: 1px solid var(--ol-neutral-primary, #fff);
}

.text__contact {
  color: var(--fg-inverse-primary, #333);
  font-family: var(--title-fontfamily, "Noto Sans JP");
  font-size: var(--body-fontsize-md, 14px);
  font-style: normal;
  font-weight: 500;
  line-height: 200%; /* 28px */
}

.btn__icon__arrow {
  display: flex;
  min-width: 240px;
  max-width: 400px;
  justify-content: center;
  align-items: center;
  gap: var(--gap-sm);
  align-self: stretch;
  border-radius: var(--radius-full, 9999px);
  background: var(--fg-inverse-primary, #333);
}
.btn__icon__arrow .ic__arroww_next {
  width: 16px;
  height: 16px;
  aspect-ratio: 1/1;
}

.container__contact {
  margin-bottom: 0;
}
@media (max-width: 991px) {
  .container__contact {
    margin-bottom: var(--gap-md, 16px);
  }
}

.group__img__slide {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--gap-md, 16px);
  max-width: 960px;
  width: 100%;
}

.group__slider__main {
  max-width: 960px;
  width: 100%;
}

/* メイン画像のデフォルト矢印を完全に抹殺 */
.slider-for .slick-arrow {
  display: none !important;
}

/* --- サムネイル設定 --- */
.slider-nav {
  margin: 0 auto;
  width: 100%;
}

.slider-nav .slick-slide {
  padding: 0 8px; /* 隙間16px（左右8px） */
  box-sizing: border-box;
  opacity: 0.4;
  transition: opacity 0.3s;
  cursor: pointer;
}

.slider-nav .slick-center {
  opacity: 1; /* 真ん中だけ明るく */
}

.slider-nav .img_thumb img {
  width: 100%;
  height: auto;
  display: block;
}

/* --- カスタム矢印(SVG)のスタイル --- */
.slider-nav .custom-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 100;
  background: none;
  border: none;
  padding: 0;
  width: 32px; /* 矢印のサイズに合わせて調整 */
  height: 32px;
  cursor: pointer;
  font-size: 0; /* デフォルトの文字(Next等)を消す */
  color: transparent; /* 文字を透明にする */
  line-height: 0;
}

/* デフォルトの疑似要素（Before/After）が邪魔をする場合があるので消す */
.slider-nav .custom-arrow::before,
.slider-nav .custom-arrow::after {
  display: none !important;
}

.slider-nav .slick-prev {
  left: -48px; /* スライダーの外側へ */
}

.slider-nav .slick-next {
  right: -48px; /* スライダーの外側へ */
}

.slider-nav .custom-arrow img {
  width: 100%;
  height: auto;
}

/* --- レスポンシブ対応 --- */
@media (max-width: 1040px) {
  .group__slider {
    padding: 0 50px; /* 矢印が画面外に出ないよう内側に寄せる */
  }
  .slider-nav .slick-prev {
    left: 0;
  }
  .slider-nav .slick-next {
    right: 0;
  }
}
/* slickが準備できるまでは非表示にする */
.slider-for:not(.slick-initialized),
.slider-nav:not(.slick-initialized) {
  height: 0;
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
}

/* 初期化されたらふわっと表示（transitionはお好みで） */
.slick-initialized {
  height: auto;
  overflow: visible;
  opacity: 1;
  visibility: visible;
  transition: opacity 0.3s ease;
}

.container_modal--lp {
  width: 100%;
  max-width: 400px;
  height: auto;
  overflow: scroll;
  border-radius: var(--radius-lg, 8px);
  padding: 0 0 var(--padding-md, 24px);
}
@media (max-width: 991px) {
  .container_modal--lp {
    max-width: 400px;
    width: 90%;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    right: 0;
    margin: 0 auto;
    overflow: inherit;
  }
}

.group__searchbox {
  display: flex;
  text-align: left;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--gap-md, 16px);
  padding: var(--padding-md, 24px) 0;
  width: auto;
}
@media (max-width: 991px) {
  .group__searchbox {
    width: 90%;
    max-width: 320px;
  }
}

.box_line {
  display: flex;
  gap: var(--gap-lg, 24px);
  width: 100%;
}
.box_line fieldset {
  width: 100%;
}

.select__reserve {
  height: 38px;
  padding: 0 var(--padding-sm, 8px) 0 0;
  border: 1px solid var(--ol-neutral-secondary, #333333);
  border-radius: var(--radius-sm, 4px);
  width: 100%;
}

.field-button {
  width: 100%;
  transition: 0.3s;
  margin-top: 16px;
}
.field-button :hover {
  opacity: 0.8;
  transition: 0.3s;
}

.button__search {
  display: flex;
  font-size: var(--label-fontsize-md, 16px);
  flex-direction: row;
  align-items: center;
  justify-content: center;
  height: 56px;
  min-width: 180px;
  max-width: 320px;
  width: 100%;
  gap: var(--gap-xxs, 4px);
  border-radius: var(--radius-full, 9999px);
  border: 1px solid var(--ol-neutral-secondary, #333333);
  background: var(--fg-inverse-primary, #333);
  color: var(--fg-neutral-primary, #fff);
  text-align: center;
  cursor: pointer;
}

.group__link {
  display: flex;
  flex-direction: column;
  gap: var(--gap-sm, 16px);
  width: 100%;
  align-items: center;
}
.group__link a {
  display: flex;
  align-items: center;
  font-size: var(--label-fontsize-md, 14px);
  gap: var(--gap-xxs, 4px);
  transition: 0.3s;
}
.group__link a:hover {
  opacity: 0.8;
  transition: 0.3s;
}

.group__popup__close img {
  height: 40px;
  margin-right: 0;
  margin-top: 0;
}

main {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--padding-xxl, 80px);
}

body {
  background: var(--bg-neutral-primary, #ffffff);
  font-weight: var(--body-fontweight, 400);
  font-size: var(--body-fontsize-md, 14px);
  font-family: var(--body-fontfamily, "Noto Sans JP");
  color: var(--fg-inverse-primary, #333333);
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: left;
  margin: 0 auto;
  line-height: 200%;
  letter-spacing: 1px;
}

p {
  font-size: var(--body-fontsize-md, 14px);
  line-height: 200%;
}

h2 {
  line-height: 170%;
}

img {
  width: 100%;
}

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

a {
  text-align: center;
  font-family: var(--body-fontfamily, "Noto Sans JP");
  font-size: var(--body-fontsize-md);
  font-style: normal;
  font-weight: 400;
  line-height: 200%;
  /* 19.5px */
  text-decoration-line: none;
}

a:hover:not(.btn) {
  opacity: 0.6;
}

.btn,
button.btn {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: var(--gap-sm, 8px);
  min-width: 240px;
  max-width: 320px;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  height: 56px;
  border-radius: var(--radius-full, 9999px);
  background: var(--fg-inverse-primary, #333);
  color: var(--fg-neutral-primary, #fff);
  text-align: center;
  font-family: var(--label-fontfamily, "Noto Sans JP");
  font-size: var(--label-fontsize-md, 16px);
  font-style: normal;
  font-weight: 400;
  text-decoration: none;
  box-sizing: border-box;
  border: none;
}
.btn.btn__invert,
button.btn.btn__invert {
  border: 1px solid #ccc;
  background-color: transparent;
  filter: invert(1);
  transition: 0.4s;
}
.btn .btn__icon,
button.btn .btn__icon {
  padding-left: var(--padding-sm, 16px);
}
.btn.btn__medium,
button.btn.btn__medium {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  min-width: 180px;
  max-width: 320px;
  width: 100%;
  gap: var(--gap-xxs, 4px);
  border-radius: var(--radius-full, 9999px);
  border: 1px solid var(--ol-neutral-secondary, #333333);
  background: var(--bg-neutral-primary, #ffffff);
  color: var(--fg-inverse-primary, #333);
  text-align: center;
}
.btn.btn__medium.height--medium,
button.btn.btn__medium.height--medium {
  max-width: 240px;
  height: 40px;
  margin-right: inherit;
}
@media (max-width: 991px) {
  .btn.btn__medium.height--medium,
  button.btn.btn__medium.height--medium {
    margin-right: auto;
  }
}
.btn.btn__medium:hover,
button.btn.btn__medium:hover {
  background: var(--bg-neutral-tertiary, #aaaaaa);
}
.btn:hover,
button.btn:hover {
  background: var(--fg-inverse-secondary, #666666);
  opacity: 1;
}
.btn.btn__search,
button.btn.btn__search {
  margin-top: 16px;
  margin-bottom: 16px;
  border: none;
  width: 100%;
}

.icon--invert {
  filter: invert(1);
}

.menu_sp a.btn_link_workspace,
footer a.btn_link_workspace {
  padding-left: var(--padding-md, 24px);
  display: flex;
  gap: var(--gap-xs, 8px);
}

img.btn__icon--inside {
  width: 16px;
}
img.btn__icon--inside.icon__invert {
  filter: invert(1);
}

.btn_booking_sp {
  display: none;
}
@media (max-width: 991px) {
  .btn_booking_sp {
    display: flex;
    min-width: 264px;
    max-width: 344px;
    padding-top: inherit;
    padding-bottom: inherit;
    bottom: 16px;
  }
}

.btn_booking_sp:active,
.btn_booking_sp:focus,
.btn_booking_sp:hover {
  background: var(--bg-neutral-tertiary, #aaaaaa);
  opacity: inherit;
}

.box_mail_content input.btn_send,
.box_mail_content input.btn_cancel {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: var(--gap-sm, 8px);
  min-width: 240px;
  max-width: 320px;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  height: 56px;
  border-radius: var(--radius-full, 9999px);
  background: var(--fg-inverse-primary, #333);
  color: var(--fg-neutral-primary, #fff);
  text-align: center;
  font-family: var(--label-fontfamily, "Noto Sans JP");
  font-size: var(--label-fontsize-md, 16px);
  font-style: normal;
  font-weight: 400;
  text-decoration: none;
  box-sizing: border-box;
}
.box_mail_content input.btn_send:hover, .box_mail_content input.btn_send:focus, .box_mail_content input.btn_send:active,
.box_mail_content input.btn_cancel:hover,
.box_mail_content input.btn_cancel:focus,
.box_mail_content input.btn_cancel:active {
  background: var(--bg-neutral-tertiary, #aaaaaa);
}
@media (max-width: 991px) {
  .box_mail_content input.btn_send,
  .box_mail_content input.btn_cancel {
    width: calc(100% - 24px);
  }
}

a.btn_link:active,
a.btn_link:focus,
a.btn_link:hover {
  background: var(--bg-neutral-tertiary, #aaaaaa);
}

.box_mail_content input.btn_cancel {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  min-width: 240px;
  max-width: 320px;
  width: 100%;
  gap: var(--gap-xxs, 4px);
  border-radius: var(--radius-full, 9999px);
  border: 1px solid var(--ol-neutral-secondary, #333333);
  background: var(--bg-neutral-primary, #ffffff);
  color: var(--fg-inverse-primary, #333);
  text-align: center;
}

.container {
  max-width: 960px;
  width: 100%;
}
@media (max-width: 991px) {
  .container {
    width: calc(100% - 48px);
  }
}

br.pc {
  display: block;
}
@media (max-width: 767px) {
  br.pc {
    display: none;
  }
}

br.tb {
  display: none;
}
@media (max-width: 991px) {
  br.tb {
    display: block;
  }
}
@media (max-width: 767px) {
  br.tb {
    display: none;
  }
}

br.sp {
  display: block;
}
@media (min-width: 992px) {
  br.sp {
    display: none;
  }
}/*# sourceMappingURL=index.css.map */