@charset "UTF-8";
html {
  font-size: 100%;
}
@media (max-width: 375px) {
  html {
    font-size: 4.2666666667vw;
  }
}
@media screen and (min-width: 768px) {
  html {
    font-size: 1.174743025vw;
  }
}
@media (min-width: 1362px) {
  html {
    font-size: 100%;
  }
}

body {
  font-family: "Noto Sans JP", sans-serif;
  color: #222222;
}

@media screen and (min-width: 768px) {
  a,
  button {
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  a:hover,
  button:hover {
    cursor: pointer;
  }
}

/*****************************
* A Modern CSS Reset (https://github.com/hankchizljaw/modern-css-reset)
* 上記に、ul要素,ol要素,a要素への記述追加
*****************************/
/* Box sizing rules */
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/* Remove default margin */
body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd,
ul,
li {
  margin: 0;
}

/* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
ul,
ol {
  list-style: none;
  padding: 0;
}

/* Set core root defaults */
html:focus-within {
  scroll-behavior: smooth;
}

/* Set core body defaults */
body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  text-decoration-skip-ink: auto;
}

a {
  text-decoration: none;
  color: inherit;
}

/* Make images easier to work with */
img,
picture {
  max-width: 100%;
  display: block;
}

/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
  font: inherit;
}

button {
  border: none;
  padding: 0;
  background-color: transparent;
  background-color: initial;
}

/* Remove all animations, transitions and smooth scroll for people that prefer not to see them */
@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto;
  }
  *,
  *::before,
  *::after {
    -webkit-animation-duration: 0.01ms !important;
            animation-duration: 0.01ms !important;
    -webkit-animation-iteration-count: 1 !important;
            animation-iteration-count: 1 !important;
    -webkit-transition-duration: 0.01ms !important;
            transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
input,
button,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
}

textarea {
  resize: vertical;
}

input[type=submit],
input[type=button],
label,
button,
select {
  cursor: pointer;
}

select::-ms-expand {
  display: none;
}

.l-inner {
  width: 100%;
  padding-right: 1.875rem;
  padding-left: 1.875rem;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (min-width: 768px) {
  .l-inner {
    max-width: 1362px;
    padding-right: 1.5625rem;
    padding-left: 1.5625rem;
  }
}

.c-download-btn {
  display: grid;
  grid-template-columns: 132fr 68fr;
  gap: 0.25rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #fff;
  padding: 0.4375rem 1.0625rem 0.4375rem 1.4375rem;
  -webkit-box-shadow: 0 0 13px 0 rgba(0, 0, 0, .1);
          box-shadow: 0 0 13px 0 rgba(0, 0, 0, .1);
  border-radius: 0.375rem;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.c-download-btn:hover {
  opacity: 0.7;
}

.c-header-btn1 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  min-width: 19.0625rem;
  padding-top: 1.4375rem;
  padding-bottom: 1.125rem;
  padding-left: 1.75rem;
  background-color: #60000A;
}

.higashisenba .c-header-btn1,
.kuramoto .c-header-btn1,
.saijyo .c-header-btn1 {
  background-color: #E77415;
}

.c-htl-btn2 {
  position: relative;
  background-color: #222222;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.4375rem;
  width: 18.625rem;
  border-radius: 0.3125rem;
  font-size: 0.875rem;
  font-weight: 400;
  color: #fff;
  line-height: 3.2857142857;
  letter-spacing: 0.06em;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (min-width: 768px) {
  .c-htl-btn2 {
    font-size: 0.9375rem;
    line-height: 3.0666666667;
    font-weight: 500;
    letter-spacing: 0.1em;
  }
}

.c-htl-btn2::after {
  content: "";
  display: inline-block;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 0.9375rem;
  height: 0.9375rem;
  background: url(../images/common/link-white.svg) no-repeat center/contain;
  margin-left: 0.5625rem;
}

.c-htl-btn2:hover {
  opacity: 0.7;
}

.c-htl-btn3 {
  display: inline-block;
  text-align: center;
  position: relative;
  padding: 1.0625rem 0.625rem;
  min-width: 20rem;
  width: 100%;
  border-radius: 0.375rem;
  font-size: 0.875rem;
  font-weight: 400;
  color: #0F0F0F;
  letter-spacing: 0.03em;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  background-color: #ffffff;
  border: 1px solid #0F0F0F;
  transition: 0.3s;
}
@media screen and (min-width: 768px) {
  .c-htl-btn3 {
    max-width: 22.75rem;
    font-size: 1rem;
    font-weight: 400;
  }
}

.c-htl-btn3::after {
  content: "";
  position: absolute;
  display: inline-block;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 1.4375rem;
  aspect-ratio: 23/8;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 1.375rem;
  background: url(../images/common/arrows-black.svg) no-repeat center/contain;
}

.c-htl-btn3:hover {
  opacity: 0.7;
  color: #ffffff;
  background-color: #0F0F0F;
}

.c-htl-btn3:hover::after {
  opacity: 0.7;
  filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feComponentTransfer color-interpolation-filters="sRGB"><feFuncR type="linear" slope="1" /><feFuncG type="linear" slope="1" /><feFuncB type="linear" slope="1" /></feComponentTransfer><feComponentTransfer color-interpolation-filters="sRGB"><feFuncR type="table" tableValues="1 0" /><feFuncG type="table" tableValues="1 0" /><feFuncB type="table" tableValues="1 0" /></feComponentTransfer></filter></svg>#filter');
  -webkit-filter: brightness(0) invert(1);
          filter: brightness(0) invert(1);
}

.c-htl-heading {
  text-align: center;
  padding-top: 3.75rem;
  padding-bottom: 3.75rem;
}
@media screen and (min-width: 768px) {
  .c-htl-heading {
    padding-top: 5rem;
    padding-bottom: 6.25rem;
  }
}

@media screen and (min-width: 768px) {
  .c-htl-heading--space {
    padding-bottom: 5rem;
  }
}

.c-htl-heading__title {
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
  .c-htl-heading__title {
    font-size: 1.375rem;
    line-height: 1.8181818182;
  }
}

.c-htl-heading__text {
  text-align: center;
  margin-top: 1.875rem;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.03em;
}
@media screen and (min-width: 600px) {
  .c-htl-heading__text {
    margin-top: 1.25rem;
    font-size: 1rem;
    line-height: 2.5;
    letter-spacing: 0.06em;
  }
}

@media screen and (min-width: 768px) {
  .c-htl-heading--facility {
    padding-bottom: 1.875rem;
  }
}

.p-htl-room {
  background-color: #F6F6F6;
  padding-top: 3.75rem;
  padding-bottom: 3.75rem;
}
@media screen and (min-width: 768px) {
  .p-htl-room {
    padding-top: 7.5rem;
    padding-bottom: 7.5rem;
  }
}

.p-htl-room--lg {
  background-color: #ffffff;
  padding-top: 3.75rem;
  padding-bottom: 4.875rem;
}
@media screen and (min-width: 768px) {
  .p-htl-room--lg {
    padding-top: 7.5rem;
    padding-bottom: 10rem;
  }
}

.p-htl-room__inner {
  max-width: 78.125rem;
  padding-left: 1.875rem;
  padding-right: 1.875rem;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .p-htl-room__inner {
    padding-left: 1.5625rem;
    padding-right: 1.5625rem;
  }
}

.p-htl-room__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 3.125rem;
}
@media screen and (min-width: 768px) {
  .p-htl-room__wrapper {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 3.125rem;
  }
}

.p-htl-room__wrapper--reverse {
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
}
@media screen and (min-width: 768px) {
  .p-htl-room__wrapper--reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
}

.p-htl-room__wrapper:nth-child(n+2) {
  padding-top: 3.75rem;
}
@media screen and (min-width: 768px) {
  .p-htl-room__wrapper:nth-child(n+2) {
    padding-top: 6.25rem;
  }
}

.p-htl-room__img {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .p-htl-room__img {
    width: 52%;
  }
}

.p-htl-room__img.u-mobile {
  margin-top: 1rem;
}
@media screen and (min-width: 768px) {
  .p-htl-room__img.u-mobile {
    margin-top: 0;
  }
}

.p-htl-room__img img {
  width: 100%;
  aspect-ratio: 620/392;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-htl-room__body {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .p-htl-room__body {
    margin-top: 1.25rem;
    width: 44%;
  }
}

.p-htl-room__title--space {
  margin-top: -0.625rem;
}
@media screen and (min-width: 768px) {
  .p-htl-room__title--space {
    margin-top: 0;
    margin-top: initial;
  }
}

.p-htl-room__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.3125rem;
}
@media screen and (min-width: 768px) {
  .p-htl-room__box {
    gap: 1.625rem;
  }
}

.p-htl-room__box-img img {
  margin-top: -0.625rem;
  width: 4rem;
  aspect-ratio: 0.8/1;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (min-width: 768px) {
  .p-htl-room__box-img img {
    width: 5rem;
    aspect-ratio: 1/1;
  }
}

.p-htl-room__box-img--jp img {
  margin-top: -0.625rem;
  width: 4rem;
  aspect-ratio: 1/1;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (min-width: 768px) {
  .p-htl-room__box-img--jp img {
    width: 5rem;
    aspect-ratio: 1/1;
  }
}

.p-htl-room__box-img--lg img {
  width: 6rem;
  aspect-ratio: 96/80;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-htl-room__box-img--sm {
  width: 3.25rem;
  aspect-ratio: 1/1;
}
@media screen and (min-width: 768px) {
  .p-htl-room__box-img--sm {
    width: 5rem;
  }
}

.p-htl-room__title-short {
  display: block;
  font-family: "Open Sans", sans-serif;
  font-size: 0.8125rem;
  line-height: 1.2307692308;
  letter-spacing: 0.06em;
  font-weight: 600;
  color: #60000A;
}
@media screen and (min-width: 768px) {
  .p-htl-room__title-short {
    font-size: 1rem;
    font-weight: 700;
    line-height: 1;
  }
}

.p-htl-room__title-main {
  display: block;
  font-size: 1.25rem;
  font-weight: 500;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
  .p-htl-room__title-main {
    display: block;
    line-height: 2;
    font-weight: 500;
    letter-spacing: 0.06em;
  }
}

.p-htl-room__title-main--sm {
  display: block;
  font-size: 1.125rem;
  font-weight: 500;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
  .p-htl-room__title-main--sm {
    display: block;
    line-height: 2;
    font-weight: 500;
    letter-spacing: 0.06em;
  }
}

.p-htl-room__facility {
  margin-top: 1.25rem;
}
@media screen and (min-width: 768px) {
  .p-htl-room__facility {
    margin-top: 2.4375rem;
  }
}

.p-htl-room__facility-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 3.125rem;
  border-bottom: solid 1px #d9d9d9;
  padding-bottom: 1.25rem;
}

.p-htl-room__facility-box:nth-of-type(n+2) {
  margin-top: 1.25rem;
}

.p-htl-room__facility-box__left {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.p-htl-room__facility-box__left p {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.9285714286;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
  .p-htl-room__facility-box__left p {
    font-size: 0.9375rem;
    line-height: 1.8;
  }
}

.p-htl-room__facility-box__right p {
  font-size: 0.875rem;
  line-height: 1.7;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .p-htl-room__facility-box__right p {
    font-size: 0.9375rem;
    line-height: 1.8;
  }
}

.p-htl-room__facility-box__right--space {
  margin-top: 2em;
}

.p-hotelcolor {
  color: #E77415;
}

.c-htl-section-title {
  text-align: center;
}

.c-htl-section-title__sub {
  text-align: center;
  font-family: "Open Sans", sans-serif;
  font-size: 2.25rem;
  letter-spacing: 0.02em;
  font-weight: 400;
  text-transform: capitalize;
}
@media screen and (min-width: 768px) {
  .c-htl-section-title__sub {
    font-size: 3.125rem;
    line-height: 1.36;
  }
}

.c-htl-section-title__sub--lowercase {
  text-align: center;
  font-family: "Open Sans", sans-serif;
  font-size: 2.25rem;
  line-height: 1.3611111111;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .c-htl-section-title__sub--lowercase {
    font-size: 3.125rem;
    line-height: 1.36;
  }
}

.c-htl-section-title__sub--sm {
  text-align: center;
  font-family: "Open Sans", sans-serif;
  font-size: 2.25rem;
  line-height: 1.3611111111;
  font-weight: 400;
}

.c-htl-section-title__main {
  display: block;
  font-size: 0.875rem;
  line-height: 0.875;
  font-weight: 400;
  letter-spacing: 0.06em;
  line-height: 1;
}
@media screen and (min-width: 768px) {
  .c-htl-section-title__main {
    font-size: 1rem;
    line-height: 1.1875;
  }
}

.c-htl-section-title__main--sm {
  margin-top: 0.375rem;
  display: block;
  font-size: 0.875rem;
  line-height: 1.2142857143;
  font-weight: 400;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
  .c-htl-section-title__main--sm {
    font-size: 1rem;
    line-height: 1.1875;
  }
}

.c-htl-section-title--flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 768px) {
  .c-htl-section-title--flex {
    gap: 1.875rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}

.c-htl-section-title__main--flex {
  display: block;
  font-size: 0.875rem;
  line-height: 1;
  letter-spacing: 0.06em;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .c-htl-section-title__main--flex {
    margin-top: 0.8125rem;
    font-size: 1rem;
  }
}

.c-htl-section-title--flex__text {
  margin-top: 3.0625rem;
  font-size: 0.875rem;
  line-height: 1.7142857143;
  letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
  .c-htl-section-title--flex__text {
    font-size: 0.9375rem;
    line-height: 2.4;
    letter-spacing: 0.06em;
    margin-top: 3.3125rem;
  }
}

.c-htl-section-title__main--white {
  color: #ffffff;
}

.c-htl-section-title--en {
  position: relative;
  text-align: center;
  font-size: 0.75rem;
  color: #60000A;
  letter-spacing: 0.03em;
  font-weight: bold;
  text-transform: capitalize;
}
@media screen and (min-width: 768px) {
  .c-htl-section-title--en {
    font-size: 1rem;
  }
}

.c-htl-section-title--en::before {
  bottom: -0.3125rem;
  content: "";
  height: 1px;
  position: absolute;
  width: 1rem;
  background-color: #60000A;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (min-width: 768px) {
  .c-htl-section-title--en::before {
    left: auto;
    left: initial;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}

.c-htl-section-title--en--color2 {
  position: relative;
  text-align: center;
  font-size: 0.75rem;
  color: #E77415;
  letter-spacing: 0.03em;
  font-weight: bold;
  text-transform: capitalize;
}
@media screen and (min-width: 768px) {
  .c-htl-section-title--en--color2 {
    font-size: 1rem;
  }
}

.c-htl-section-title--en--color2::before {
  bottom: -0.3125rem;
  content: "";
  height: 1px;
  position: absolute;
  width: 1rem;
  background-color: #E77415;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (min-width: 768px) {
  .c-htl-section-title--en--color2::before {
    left: auto;
    left: initial;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}

.c-htl-section-title__ja {
  padding-top: 1.875rem;
  display: block;
  font-size: 1.25rem;
  line-height: 1.5;
  letter-spacing: 0.06em;
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .c-htl-section-title__ja {
    padding-top: 2.5rem;
    font-size: 2rem;
    line-height: 2.1875;
    letter-spacing: 0.12em;
  }
}

.c-lower-scrollbar {
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  bottom: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.6875rem;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .c-lower-scrollbar {
    bottom: -3.125rem;
  }
}

.c-lower-scrollbar__line {
  position: relative;
  z-index: 1;
}
.c-lower-scrollbar__line::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 1px;
  height: 2.5rem;
  background: #ffffff;
  -webkit-animation: liner 2.5s cubic-bezier(1, 0, 0, 1) infinite;
          animation: liner 2.5s cubic-bezier(1, 0, 0, 1) infinite;
}
@media screen and (min-width: 768px) {
  .c-lower-scrollbar__line::after {
    height: 6.25rem;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #ffffff), color-stop(50%, #878787));
    background: linear-gradient(to bottom, #ffffff 50%, #878787 50%);
  }
}

@-webkit-keyframes liner {
  0% {
    -webkit-transform: scale(1, 0);
            transform: scale(1, 0);
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
  }
  30% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
  }
  70% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: 0 100%;
            transform-origin: 0 100%;
  }
  100% {
    -webkit-transform: scale(1, 0);
            transform: scale(1, 0);
    -webkit-transform-origin: 0 100%;
            transform-origin: 0 100%;
  }
}

@keyframes liner {
  0% {
    -webkit-transform: scale(1, 0);
            transform: scale(1, 0);
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
  }
  30% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
  }
  70% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: 0 100%;
            transform-origin: 0 100%;
  }
  100% {
    -webkit-transform: scale(1, 0);
            transform: scale(1, 0);
    -webkit-transform-origin: 0 100%;
            transform-origin: 0 100%;
  }
}
.c-map__wrapper {
  max-width: 32.5rem;
  width: 100%;
  margin: 20px auto;
}
@media screen and (min-width: 768px) {
  .c-map__wrapper {
    margin-top: 2.3125rem;
    margin-bottom: 0;
    margin-bottom: initial;
  }
}
.c-map__wrapper .c-map__link {
  display: block;
  position: relative;
  text-decoration: none;
}
.c-map__wrapper .c-map__link:hover::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, .1);
  pointer-events: none;
}
.c-map__wrapper .c-map__link:hover {
  cursor: pointer;
}

.c-map {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 72.25%;
}

.c-map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

.c-scrollbar {
  bottom: 7.8125rem;
  position: absolute;
  left: 54.6%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.6875rem;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .c-scrollbar {
    bottom: 6.5625rem;
    left: 51.6%;
  }
}

.c-scrollbar__text {
  display: inline-block;
  font-family: "Open Sans", sans-serif;
  font-size: 0.625rem;
  line-height: 1.4;
  color: #fff;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  top: 114%;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .c-scrollbar__text {
    font-size: 0.8125rem;
    bottom: -3%;
  }
}

.c-scrollbar__line {
  position: relative;
  z-index: 1;
}
.c-scrollbar__line::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 1px;
  height: 3.75rem;
  background: #fff;
  -webkit-animation: liner 2.5s cubic-bezier(1, 0, 0, 1) infinite;
          animation: liner 2.5s cubic-bezier(1, 0, 0, 1) infinite;
}
@media screen and (min-width: 768px) {
  .c-scrollbar__line::after {
    height: 3.125rem;
  }
}

@keyframes liner {
  0% {
    -webkit-transform: scale(1, 0);
            transform: scale(1, 0);
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
  }
  30% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
  }
  70% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: 0 100%;
            transform-origin: 0 100%;
  }
  100% {
    -webkit-transform: scale(1, 0);
            transform: scale(1, 0);
    -webkit-transform-origin: 0 100%;
            transform-origin: 0 100%;
  }
}
.c-lower-scrollbar {
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  bottom: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.6875rem;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .c-lower-scrollbar {
    bottom: -3.125rem;
  }
}

.c-lower-scrollbar__line {
  position: relative;
  z-index: 1;
}
.c-lower-scrollbar__line::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 1px;
  height: 2.5rem;
  background: #ffffff;
  -webkit-animation: liner 2.5s cubic-bezier(1, 0, 0, 1) infinite;
          animation: liner 2.5s cubic-bezier(1, 0, 0, 1) infinite;
}
@media screen and (min-width: 768px) {
  .c-lower-scrollbar__line::after {
    height: 6.25rem;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #ffffff), color-stop(50%, #878787));
    background: linear-gradient(to bottom, #ffffff 50%, #878787 50%);
  }
}

@keyframes liner {
  0% {
    -webkit-transform: scale(1, 0);
            transform: scale(1, 0);
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
  }
  30% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
  }
  70% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: 0 100%;
            transform-origin: 0 100%;
  }
  100% {
    -webkit-transform: scale(1, 0);
            transform: scale(1, 0);
    -webkit-transform-origin: 0 100%;
            transform-origin: 0 100%;
  }
}
.c-sub-title-wrap {
  position: relative;
  text-align: center;
}

.c-sub-title-wrap::before {
  content: "";
  display: inline-block;
  width: 100%;
  height: 1px;
  position: absolute;
  z-index: -1;
  background-color: #d9d9d9;
  top: calc(50% - 0.0625rem);
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 0;
  right: 0;
}

.c-sub-title-wrap::after {
  content: "";
  display: inline-block;
  width: 100%;
  height: 1px;
  position: absolute;
  z-index: -1;
  background-color: #d9d9d9;
  top: calc(50% + 0.1875rem);
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 0;
  right: 0;
}
@media screen and (min-width: 768px) {
  .c-sub-title-wrap::after {
    top: calc(50% + 0.3125rem);
  }
}

.c-sub-title {
  position: relative;
  text-align: center;
  background-color: #ffffff;
  z-index: 1;
  padding: 0 0.75rem;
  display: inline-block;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.875;
  letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
  .c-sub-title {
    padding: 0 1.0625rem;
    font-size: 1.125rem;
    line-height: 2.3;
    letter-spacing: 0.06em;
  }
}

.c-sub-title-breakfast {
  font-size: 1rem;
  line-height: 2.1428571429;
  letter-spacing: 0.06em;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .c-sub-title-breakfast {
    font-size: 1.125rem;
    line-height: 1.6666666667;
  }
}

.p-cta-bottom {
  background-color: rgba(0, 0, 0, .4);
}

.p-cta-bottom__inner {
  max-width: 72.625rem;
  margin-inline: auto;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}
@media screen and (min-width: 768px) {
  .p-cta-bottom__inner {
    padding-left: 1.5625rem;
    padding-right: 1.5625rem;
  }
}

.p-cta-bottom__wrapper {
  padding-top: 1.875rem;
  padding-bottom: 3.75rem;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.875rem;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (min-width: 768px) {
  .p-cta-bottom__wrapper {
    padding-top: 5.25rem;
    padding-bottom: 7.5rem;
    text-align: left;
    gap: 6.125rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

.p-cta-bottom__body {
  margin-top: 1.875rem;
  padding-left: 0.625rem;
  z-index: 2;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .p-cta-bottom__body {
    margin-top: 1.25rem;
    padding-top: 0;
    width: 50%;
  }
}

.p-cta-bottom__img {
  z-index: 2;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .p-cta-bottom__img {
    width: 50%;
  }
}

.p-cta-bottom__name img {
  max-width: 5rem;
}
@media screen and (min-width: 768px) {
  .p-cta-bottom__name img {
    max-width: 6.25rem;
  }
}

.p-cta-bottom__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 0.3125rem;
  gap: 1.875rem;
}
@media screen and (min-width: 768px) {
  .p-cta-bottom__link {
    -webkit-box-pack: initial;
        -ms-flex-pack: initial;
            justify-content: initial;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 2.5rem;
  }
}

.p-cta-bottom__logo {
  display: block;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.p-cta-bottom__logo img {
  height: 2.1875rem;
  max-width: 9.375rem;
  -o-object-fit: contain;
     object-fit: contain;
}
@media screen and (min-width: 768px) {
  .p-cta-bottom__logo img {
    max-width: 29.375rem;
    max-height: 4.5rem;
    -o-object-fit: contain;
       object-fit: contain;
  }
}

.p-cta-bottom__logo:hover {
  opacity: 0.7;
  z-index: 1;
}

.p-cta-bottom__sns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.5rem;
}

.p-cta-bottom__sns img {
  width: 1.375rem;
  aspect-ratio: 22/21;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (min-width: 768px) {
  .p-cta-bottom__sns img {
    width: 1.625rem;
    aspect-ratio: 26/25;
  }
}

.p-cta-bottom__instagram {
  display: block;
}

.p-cta-bottom__instagram img {
  width: 1.375rem;
  aspect-ratio: 22/21;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (min-width: 768px) {
  .p-cta-bottom__instagram img {
    width: 1.625rem;
    aspect-ratio: 26/25;
  }
}

.p-cta-bottom__info {
  margin-top: 1.25rem;
  text-align: left;
}
@media screen and (min-width: 768px) {
  .p-cta-bottom__info {
    margin-top: 1.875rem;
  }
}

.p-cta-bottom__address p {
  font-size: 0.8125rem;
  color: #ffffff;
  line-height: 1.8461538462;
  letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
  .p-cta-bottom__address p {
    font-size: 0.9375rem;
    color: #ffffff;
    line-height: 2;
  }
}

.p-cta-bottom__tel-fax {
  margin-top: 0.1875rem;
}
@media screen and (min-width: 768px) {
  .p-cta-bottom__tel-fax {
    margin-top: 0;
  }
}

.p-cta-bottom__tel-fax p {
  font-size: 0.8125rem;
  color: #ffffff;
  line-height: 1.2307692308;
  letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
  .p-cta-bottom__tel-fax p {
    font-size: 0.9375rem;
    color: #ffffff;
    line-height: 2;
    letter-spacing: 0.03em;
  }
}

.p-cta-bottom__check {
  margin-top: 0.625rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media screen and (min-width: 768px) {
  .p-cta-bottom__check {
    margin-top: 0.8125rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}

.p-cta-bottom__check p {
  font-size: 0.8125rem;
  color: #ffffff;
  line-height: 1.8461538462;
  letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
  .p-cta-bottom__check p {
    font-size: 0.9375rem;
    color: #ffffff;
    line-height: 2;
    letter-spacing: 0.03em;
  }
}

@media screen and (min-width: 768px) {
  .p-cta-bottom__check p:nth-child(n+2) {
    margin-left: 0.9375rem;
  }
}

.p-cta-bottom__app {
  display: none;
}
@media screen and (min-width: 768px) {
  .p-cta-bottom__app {
    display: block;
    margin-top: 1.875rem;
  }
}

.p-cta-bottom__app img {
  width: 28.9375rem;
  aspect-ratio: 425/150;
  -o-object-fit: cover;
     object-fit: cover;
  margin-left: -1.25rem;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.p-cta-bottom__app img:hover {
  opacity: 0.7;
}

.p-cta {
  position: relative;
  width: 100%;
  z-index: 2;
  width: 100%;
}
.p-cta--lower {
  background: url(../images/tokushima/footer-top-bg.webp) no-repeat center/cover;
}

.p-cta::before {
  content: "";
  position: absolute;
  display: inline-block;
  background-color: rgba(0, 0, 0, .6);
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
}

.p-cta__inner {
  max-width: 69.5rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .p-cta__inner {
    padding-left: 1.5625rem;
    padding-right: 1.5625rem;
  }
}

.p-cta__wrapper {
  min-height: 17.5rem;
  display: grid;
}
@media screen and (min-width: 768px) {
  .p-cta__wrapper {
    grid-template-columns: repeat(2, 1fr);
  }
}

.p-cta__btn1 {
  position: relative;
  min-height: 12.75rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-bottom: 1px solid rgba(217, 217, 217, .5);
  z-index: 2;
  opacity: 1;
  background-color: rgba(0, 0, 0, .5);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (min-width: 768px) {
  .p-cta__btn1 {
    min-height: 17.5rem;
  }
}

.p-cta__btn1:hover {
  background-color: transparent;
}

.p-cta__btn2 {
  min-height: 12.75rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-bottom: 1px solid rgba(217, 217, 217, .5);
  z-index: 2;
  opacity: 1;
  background-color: rgba(0, 0, 0, .5);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (min-width: 768px) {
  .p-cta__btn2 {
    border-left: 1px solid rgba(217, 217, 217, .5);
    min-height: 17.5rem;
  }
}

.p-cta__btn2:hover {
  background-color: transparent;
}

.p-cta-item__text {
  text-align: center;
  margin-top: 1rem;
  font-size: 1rem;
  color: #ffffff;
  line-height: 2.25;
  letter-spacing: 0.03em;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .p-cta-item__text {
    font-size: 1.125rem;
    color: #ffffff;
    line-height: 2;
    letter-spacing: 0;
  }
}

.p-cta-item__tel {
  display: block;
  max-width: 20.5625rem;
}
@media screen and (min-width: 768px) {
  .p-cta-item__tel {
    margin-top: 0.1875rem;
    margin-right: 0.625rem;
    margin-right: 0;
    max-width: 22.6875rem;
  }
}

.p-cta-item__text--mail {
  position: relative;
}

.p-cta-item__text--mail::before {
  content: "";
  position: absolute;
  background: url(../images/common/mail.svg) center center/contain no-repeat;
  width: 1.5rem;
  aspect-ratio: 1/1;
  top: 52%;
  left: -2rem;
  -webkit-transform: translatey(-50%);
          transform: translatey(-50%);
}

.p-cta-item__text--mail::after {
  content: "";
  position: absolute;
  background: url(../images/common/arrows.svg) center center/contain no-repeat;
  width: 1.4375rem;
  aspect-ratio: 23/8;
  top: 80%;
  right: -4.75rem;
  -webkit-transform: translatey(-50%);
          transform: translatey(-50%);
}
@media screen and (min-width: 768px) {
  .p-cta-item__text--mail::after {
    top: 50%;
    right: -2.8125rem;
  }
}

.p-cta-item__text-attention {
  text-align: center;
  font-size: 0.75rem;
  color: #ffffff;
  font-weight: 300;
  line-height: 3;
}
@media screen and (min-width: 768px) {
  .p-cta-item__text-attention {
    margin-top: 0.125rem;
    margin-left: 0;
    margin-top: 0.5rem;
    padding-left: 1rem;
    font-size: 0.875rem;
    line-height: 2.5714285714;
  }
}

.p-footer {
  padding-top: 3.125rem;
  padding-bottom: 1.875rem;
  background-color: #0F0F0F;
  color: #ffffff;
  overflow: hidden;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-footer {
    padding-top: 6.25rem;
    padding-bottom: 3.75rem;
  }
}

.p-footer__inner {
  max-width: 56.875rem;
  padding-left: 1.5625rem;
  padding-right: 1.5625rem;
  margin-left: auto;
  margin-right: auto;
}

.p-footer__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.75rem;
}

.p-footer__head-en {
  font-size: 1.1875rem;
  line-height: 1.3684210526;
  letter-spacing: 0.03em;
  font-weight: 400;
  font-family: "Open Sans", sans-serif;
}
@media screen and (min-width: 768px) {
  .p-footer__head-en {
    font-size: 1.3125rem;
    line-height: 1.4285714286;
  }
}

.p-footer__head-ja {
  font-size: 0.8125rem;
  line-height: 1.5384615385;
  letter-spacing: 0.06em;
  font-weight: 300;
}
@media screen and (min-width: 768px) {
  .p-footer__head-ja {
    font-size: 0.9375rem;
    line-height: 1.5333333333;
  }
}

.p-footer__nav {
  margin-top: 1.9375rem;
}
@media screen and (min-width: 768px) {
  .p-footer__nav {
    margin-top: 2.5rem;
  }
}

.p-footer__list {
  display: grid;
  grid-template-columns: repeat(2, auto);
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-column-gap: 2.4375rem;
     -moz-column-gap: 2.4375rem;
          column-gap: 2.4375rem;
  row-gap: 1.875rem;
  max-width: 18.5625rem;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 768px) {
  .p-footer__list {
    grid-template-columns: repeat(3, 1fr);
    -webkit-column-gap: 4.9375rem;
       -moz-column-gap: 4.9375rem;
            column-gap: 4.9375rem;
    max-width: 45.8125rem;
  }
}

.p-footer__list-item-container {
  display: contents;
}
@media screen and (min-width: 768px) {
  .p-footer__list-item-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1.875rem;
  }
}

@media screen and (min-width: 768px) {
  .p-footer__list-item-wrap:nth-of-type(n+2) {
    margin-top: 1.875rem;
  }
}

.p-footer__list-pref {
  font-size: 0.875rem;
  line-height: 1.5333333333;
  letter-spacing: 0.06em;
  font-weight: 300;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.4375rem;
}
@media screen and (min-width: 768px) {
  .p-footer__list-pref {
    font-size: 0.9375rem;
    gap: 0.625rem;
  }
}
.p-footer__list-pref span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  gap: 0.3125rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 0.6875rem;
  line-height: 1.4615384615;
  letter-spacing: 0.03em;
  font-weight: 400;
  font-family: "Open Sans", sans-serif;
  color: #878787;
}
@media screen and (min-width: 768px) {
  .p-footer__list-pref span {
    gap: 0.375rem;
    font-size: 0.8125rem;
  }
}
.p-footer__list-pref span::before {
  content: "";
  display: inline-block;
  width: 0.625rem;
  height: 1px;
  background-color: #878787;
}

.p-footer__hotel-list {
  margin-top: 0.875rem;
}
@media screen and (min-width: 768px) {
  .p-footer__hotel-list {
    margin-top: 0.5625rem;
  }
}

.p-footer__hotel-list-item:nth-of-type(n+2) {
  margin-top: 0.5625rem;
}
@media screen and (min-width: 768px) {
  .p-footer__hotel-list-item:nth-of-type(n+2) {
    margin-top: 0.4375rem;
  }
}

.p-footer__hotel-list-link {
  display: inline-block;
  font-size: 0.6875rem;
  line-height: 1.7272727273;
  font-weight: 300;
  color: #D9D9D9;
}
@media screen and (min-width: 768px) {
  .p-footer__hotel-list-link {
    font-size: 0.875rem;
    line-height: 1.5;
    letter-spacing: 0.03em;
  }
}
.p-footer__hotel-list-link span {
  display: inline-block;
}

@media (hover: hover) {
  .p-footer__hotel-list-link:hover {
    opacity: 1;
    text-decoration: underline;
  }
  .p-footer__hotel-list-link:hover span {
    text-decoration: underline;
  }
}
.p-footer__btn-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.625rem;
  margin-top: 3.125rem;
  padding-top: 2.5rem;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-footer__btn-list {
    grid-template-columns: repeat(3, 1fr);
    margin-top: 5rem;
    padding-top: 0;
    gap: 2.5rem;
  }
}

.p-footer__btn-item {
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .p-footer__btn-item {
    border-radius: 0.5rem;
  }
}

.p-footer__btn-recruit {
  width: 100%;
  max-width: 20.3125rem;
  margin-left: auto;
  margin-right: auto;
  aspect-ratio: 325/90;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  position: relative;
  z-index: 0;
  padding: 0.5625rem 0.75rem;
  overflow: hidden;
  z-index: 0;
}
.p-footer__btn-recruit::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
  background: transparent url(../images/group/bg_btn-recruit.webp) no-repeat center/cover;
  z-index: -1;
  pointer-events: none;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.p-footer__btn-recruit::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
  background-color: rgba(0, 0, 0, .3);
  z-index: -1;
  pointer-events: none;
}
@media screen and (min-width: 768px) {
  .p-footer__btn-recruit {
    max-width: none;
    max-width: initial;
    aspect-ratio: 260/180;
    padding: 1.25rem 1rem;
  }
}

.p-footer__btn-recruit-text {
  width: 10rem;
}
@media screen and (min-width: 768px) {
  .p-footer__btn-recruit-text {
    width: 12.5rem;
  }
}
.p-footer__btn-recruit-text img {
  width: 100%;
  aspect-ratio: 200/80;
  -o-object-fit: contain;
     object-fit: contain;
}

@media (hover: hover) {
  .p-footer__btn-recruit:hover {
    opacity: 1;
  }
  .p-footer__btn-recruit:hover::before {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}
.p-footer__btn-affiliation {
  width: 100%;
  max-width: 20.3125rem;
  margin-left: auto;
  margin-right: auto;
  aspect-ratio: 325/90;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0.375rem 1rem;
  position: relative;
  overflow: hidden;
  z-index: 0;
}
.p-footer__btn-affiliation::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
  background: transparent url(../images/group/bg_btn-affiliation.webp) no-repeat center/cover;
  z-index: -1;
  pointer-events: none;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (min-width: 768px) {
  .p-footer__btn-affiliation {
    aspect-ratio: 260/180;
    padding: 1.25rem 1rem;
  }
}

.p-footer__btn-affiliation-text {
  width: 8.5rem;
}
@media screen and (min-width: 768px) {
  .p-footer__btn-affiliation-text {
    width: 10rem;
  }
}
.p-footer__btn-affiliation-text img {
  width: 100%;
  aspect-ratio: 136/78;
  -o-object-fit: contain;
     object-fit: contain;
}
@media screen and (min-width: 768px) {
  .p-footer__btn-affiliation-text img {
    aspect-ratio: 160/119;
  }
}

@media (hover: hover) {
  .p-footer__btn-affiliation:hover {
    opacity: 1;
  }
  .p-footer__btn-affiliation:hover::before {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}
.p-footer__btn-cleaning {
  border: 1px solid #96002C;
  background-color: #ffffff;
  width: 100%;
  max-width: 20.3125rem;
  margin-left: auto;
  margin-right: auto;
  aspect-ratio: 325/100;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0.625rem 1rem;
}
@media screen and (min-width: 768px) {
  .p-footer__btn-cleaning {
    aspect-ratio: 260/180;
    border-radius: 0.5rem;
    padding: 1.25rem 1rem;
  }
}

.p-footer__btn-cleaning-text {
  width: 7.8125rem;
}
@media screen and (min-width: 768px) {
  .p-footer__btn-cleaning-text {
    width: 9.0625rem;
  }
}
.p-footer__btn-cleaning-text img {
  width: 100%;
  aspect-ratio: 145/72;
  -o-object-fit: contain;
     object-fit: contain;
}

.p-footer__btn-group {
  border: 1px solid #96002C;
  background-color: #ffffff;
  width: 100%;
  max-width: 20.3125rem;
  margin-left: auto;
  margin-right: auto;
  aspect-ratio: 325/100;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  gap: 0.625rem;
  padding: 0.625rem 1rem;
}
@media screen and (min-width: 768px) {
  .p-footer__btn-group {
    aspect-ratio: 260/180;
    border-radius: 0.5rem;
    padding: 1.25rem 1rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1.3125rem;
  }
}

.p-footer__btn-group-head {
  color: #96002C;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.1875rem;
  font-size: 0.625rem;
  line-height: 1.5;
  letter-spacing: 0.03em;
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .p-footer__btn-group-head {
    font-size: 0.875rem;
  }
}

.p-footer__btn-group-head-en {
  display: inline-block;
  font-size: 0.5rem;
  line-height: 1.375;
  letter-spacing: 0.08em;
  font-weight: 600;
  font-family: "Open Sans", sans-serif;
}

.p-footer__btn-group-body {
  display: none;
}
@media screen and (min-width: 768px) {
  .p-footer__btn-group-body {
    display: block;
  }
}

.p-footer__btn-group-logo {
  width: 5.1875rem;
}
.p-footer__btn-group-logo img {
  width: 100%;
  height: 100%;
  aspect-ratio: 83/65;
  -o-object-fit: contain;
     object-fit: contain;
}

.p-footer__logo {
  margin-top: 1.875rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.125rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 768px) {
  .p-footer__logo {
    gap: 0.25rem;
    margin-top: 1.875rem;
  }
}

.p-footer__logo-image {
  width: 15.25rem;
}
@media screen and (min-width: 768px) {
  .p-footer__logo-image {
    width: 15rem;
  }
}
.p-footer__logo-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.p-footer__logo-text {
  width: 8.5625rem;
}
@media screen and (min-width: 768px) {
  .p-footer__logo-text {
    width: 13.25rem;
  }
}
.p-footer__logo-text img {
  width: 100%;
  height: 100%;
  aspect-ratio: 212/23;
  -o-object-fit: contain;
     object-fit: contain;
}

.p-footer__btn-wrap {
  margin-top: 1.25rem;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .p-footer__btn-wrap {
    margin-top: 1.3125rem;
  }
}

.p-footer__privacy {
  display: inline-block;
  font-size: 0.6875rem;
  line-height: 1.5454545455;
  letter-spacing: 0.06em;
  font-weight: 300;
  text-decoration: underline;
}
@media screen and (min-width: 768px) {
  .p-footer__privacy {
    font-size: 0.8125rem;
    line-height: 1.5384615385;
  }
}

.p-footer__copy {
  font-size: 0.5rem;
  line-height: 1.25;
  letter-spacing: 0.06em;
  font-weight: 400;
  color: #D9D9D9;
  display: block;
  margin-top: 1.9375rem;
  text-align: center;
  font-family: "Open Sans", sans-serif;
}
@media screen and (min-width: 768px) {
  .p-footer__copy {
    font-size: 0.625rem;
    line-height: 1.2;
  }
}

.p-header {
  position: sticky;
  top: 0;
  width: 100%;
  height: 3.75rem;
  background-color: #fff;
  opacity: 1;
  z-index: 99;
}
@media screen and (min-width: 768px) {
  .p-header {
    height: 6.25rem;
  }
}

.p-header__wrapper {
  height: inherit;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-left: 0.9375rem;
}
@media screen and (min-width: 768px) {
  .p-header__wrapper {
    margin-top: 0;
    padding-left: 2.5rem;
  }
}

.p-header__tel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-left: auto;
  width: 2rem;
  margin-right: 1.125rem;
}
@media screen and (min-width: 768px) {
  .p-header__tel {
    width: 3.125rem;
  }
}

.p-header__tel img {
  aspect-ratio: 1/1;
}

.p-htl-header-top__name {
  width: 6.4375rem;
}
@media screen and (min-width: 768px) {
  .p-htl-header-top__name {
    width: 8.3125rem;
  }
}

.p-header__box {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.p-header__box:hover {
  opacity: 0.7;
}

.p-header__logo {
  position: relative;
  height: 3.125rem;
  -o-object-fit: contain;
     object-fit: contain;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  z-index: 50;
}
@media screen and (min-width: 768px) {
  .p-header__logo {
    height: 5.625rem;
  }
}
@media screen and (min-width: 1024px) {
  .p-header__logo {
    height: inherit;
  }
}

.p-header__logo a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (min-width: 1024px) {
  .p-header__logo a {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
}

.p-header__logo img {
  max-width: 9.375rem;
  -o-object-fit: contain;
     object-fit: contain;
  height: 3.125rem;
}
@media screen and (min-width: 768px) {
  .p-header__logo img {
    width: auto;
    max-width: none;
    max-width: initial;
    height: 5.625rem;
  }
}
@media screen and (min-width: 1024px) {
  .p-header__logo img {
    width: auto;
    height: 5.625rem;
  }
}

.p-header__nav-item a.current {
  color: #60000A;
}

.p-header__hamburger {
  width: 3.75rem;
  height: 3.75rem;
  background-color: #60000A;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  position: relative;
  padding: 0.875rem 1.0625rem;
  z-index: 50;
}
@media screen and (min-width: 768px) {
  .p-header__hamburger {
    width: 6.25rem;
    height: 6.25rem;
    padding: 0.9375rem 1.875rem;
  }
}
@media screen and (min-width: 1024px) {
  .p-header__hamburger {
    display: none;
  }
}

.p-header__hamburger span:nth-child(2) {
  margin-top: 0.375rem;
  margin-bottom: 0.375rem;
}
@media screen and (min-width: 768px) {
  .p-header__hamburger span:nth-child(2) {
    margin-top: 0.5625rem;
    margin-bottom: 0.5625rem;
  }
}

.p-header__hamburger span:nth-child(3) {
  width: 1.25rem;
}
@media screen and (min-width: 768px) {
  .p-header__hamburger span:nth-child(3) {
    width: 1.625rem;
  }
}

.p-header__hamburger.open {
  background-color: #60000A;
}

.p-header__hamburger span {
  display: inline-block;
  width: 1.6875rem;
  height: 0.125rem;
  border-radius: 1px;
  background-color: #ffffff;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (min-width: 768px) {
  .p-header__hamburger span {
    width: 2.375rem;
    height: 0.125rem;
  }
}

.p-header__hamburger.open span:nth-child(1) {
  -webkit-transform: translateY(0.6125rem) rotate(45deg);
          transform: translateY(0.6125rem) rotate(45deg);
  width: 1.5625rem;
  background-color: #ffffff;
}
@media screen and (min-width: 768px) {
  .p-header__hamburger.open span:nth-child(1) {
    -webkit-transform: translateY(0.5125rem) rotate(45deg);
            transform: translateY(0.5125rem) rotate(45deg);
    width: 2.375rem;
  }
}

.p-header__hamburger.open span:nth-child(2) {
  opacity: 0;
}

.p-header__hamburger.open span:nth-child(3) {
  -webkit-transform: translateY(-0.45rem) rotate(-45deg);
          transform: translateY(-0.45rem) rotate(-45deg);
  width: 1.5625rem;
  background-color: #ffffff;
}
@media screen and (min-width: 768px) {
  .p-header__hamburger.open span:nth-child(3) {
    -webkit-transform: translateY(-0.8625rem) rotate(-45deg);
            transform: translateY(-0.8625rem) rotate(-45deg);
    width: 2.375rem;
  }
}

.p-header__hamburger.open span:nth-child(4) {
  background-color: transparent;
}

.p-header__hamburger span:nth-child(4) {
  background-color: transparent;
}

.p-header__search img {
  width: 3.875rem;
}
@media screen and (min-width: 768px) {
  .p-header__search img {
    width: 3.875rem;
  }
}

.p-header__search {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 3.75rem;
  height: 3.75rem;
  background-color: #f0e5e6;
  padding: 0.9375rem 0.5rem 0.25rem 0.6875rem;
}
@media screen and (min-width: 768px) {
  .p-header__search {
    width: 6.25rem;
    height: 6.25rem;
    padding-top: 0.9375rem;
    padding-right: 0;
    padding-right: initial;
    padding-left: 0;
    padding-left: initial;
    padding-bottom: 0;
    padding-bottom: initial;
  }
}

/* 文字部分のスタイル */
.p-header__hamburger .p-header__hamburger-text {
  display: block;
  margin-top: 0.5rem;
  margin-left: -0.5rem;
  width: 2.8125rem;
  margin-top: 0.5rem;
  font-size: 0.625rem;
  letter-spacing: 0;
  color: #ffffff;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  background-color: transparent;
  background-color: initial;
  /* 線を防ぐ */
}
@media screen and (min-width: 768px) {
  .p-header__hamburger .p-header__hamburger-text {
    font-size: 0.875rem;
    margin-left: -0.25rem;
    margin-top: 0.8rem;
  }
}

/* 上とかぶってる？後で確認 */
.p-header__hamburger-text {
  text-transform: uppercase;
  font-size: 0.6875rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #60000A;
}

/* ドロワーが開いた時の文字 */
.p-header__hamburger.open .p-header__hamburger-text {
  content: "CLOSE";
}

.p-header__nav {
  padding-top: 7.28125rem;
  padding-bottom: 0.625rem;
  padding-left: 0.9375rem;
  padding-right: 0.9375rem;
  overflow-y: auto;
  scrollbar-width: none;
  display: none;
  position: fixed;
  width: 33.75rem;
  max-width: 100%;
  height: 100vh;
  top: 0;
  right: 0;
  background-color: #fff;
  opacity: 1;
}
@media screen and (min-width: 1024px) {
  .p-header__nav {
    padding-top: 4.375rem;
    display: block;
    position: static;
    width: 100%;
    height: inherit;
    padding: 0;
  }
}

.p-header__nav-inner {
  height: 100%;
  overflow-y: auto;
}
@media screen and (min-width: 768px) {
  .p-header__nav-inner {
    overflow: visible;
    overflow: initial;
    height: inherit;
  }
}

.p-header__nav-inner2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: inherit;
  min-height: 30rem;
}
@media screen and (min-width: 768px) {
  .p-header__nav-inner2 {
    margin-top: 1.25rem;
  }
}
@media screen and (min-width: 1024px) {
  .p-header__nav-inner2 {
    margin-top: 0;
    min-height: 0;
    min-height: initial;
    height: inherit;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

.p-header__nav-list {
  width: 100%;
}
@media screen and (min-width: 1024px) {
  .p-header__nav-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: auto;
    width: initial;
  }
}

@media screen and (min-width: 1024px) {
  .p-header__nav-item {
    height: 100%;
  }
}

.p-header__nav-item a {
  position: relative;
  display: block;
  padding: 1.0625rem 0;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.2142857143;
  color: #222222;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (min-width: 1024px) {
  .p-header__nav-item a {
    padding: 2rem 0.9375rem;
    height: inherit;
    font-size: 1rem;
    line-height: 1.1875;
    letter-spacing: 0.05em;
  }
}

@media screen and (min-width: 768px) {
  .p-header__nav-item a:hover {
    opacity: 1;
    color: #60000A;
  }
}

@media screen and (min-width: 1024px) {
  .p-header__nav-item:first-child a {
    padding-left: 0;
  }
}

@media screen and (min-width: 768px) {
  .p-header__nav-item--link a::after {
    content: "";
    display: inline-block;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    width: 0.8125rem;
    height: 0.8125rem;
    /* マスクを適用（通常時） */
    -webkit-mask-image: url(../images/common/link-black.svg);
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-image: url(../images/common/link-black.svg);
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    /* 通常時の色（黒など） */
    background-color: black;
    margin-left: 0;
  }
}

@media screen and (min-width: 768px) {
  .p-header__nav-item--link a:hover::after {
    /* ホバー時にオレンジに変更 */
    background-color: #60000A;
  }
}

.p-header__btn-list {
  margin-top: 1.25rem;
}
@media screen and (min-width: 1024px) {
  .p-header__btn-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-top: 0;
  }
}

.p-header__contact-btn {
  margin-top: 1.25rem;
}
@media screen and (min-width: 1024px) {
  .p-header__contact-btn {
    margin-top: 0;
    margin-left: 1.875rem;
  }
}

.p-header--shadow {
  -webkit-box-shadow: 0px 2px 12.3px -1px rgba(0, 0, 0, .15);
          box-shadow: 0px 2px 12.3px -1px rgba(0, 0, 0, .15);
}

.p-header__btn-yoyaku {
  font-size: 0.875rem;
  color: #ffffff;
  line-height: 1.4285714286;
  letter-spacing: 0.03em;
  font-weight: 400;
}

.p-header__btn-tel {
  margin-top: 0.3125rem;
  max-width: 15.9375rem;
}

.sub {
  padding-left: 1.25rem;
  border-bottom: 1px solid #d9d9d9;
  text-align: left;
}

.p-header__nav-item-ja {
  font-size: 0.875rem;
  line-height: 1.2142857143;
  font-weight: 500;
}

.p-header__nav-item-en {
  margin-left: 0.5625rem;
  text-transform: capitalize;
  font-family: "Open Sans", sans-serif;
  font-size: 0.75rem;
  line-height: 1.3333333333;
  letter-spacing: 0.06em;
  font-weight: 400;
}

.p-header__nav-item-wrap {
  margin-top: 1.875rem;
  padding-left: 1.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.5625rem;
}

.p-header__nav-item-other {
  font-size: 0.8125rem;
  line-height: 1.2307692308;
  letter-spacing: 0.03em;
  font-weight: 400;
  border-bottom: 1px solid #222222;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.p-header__nav-item-other:hover {
  color: #60000A;
  border-bottom: 1px solid #60000A;
}

.p-header__nav-banner-list {
  margin-left: 0.625rem;
  margin-top: 2.6875rem;
  padding-bottom: 8.75rem;
}

.p-header__nav-banner-item {
  width: 20.3125rem;
  aspect-ratio: 325/90;
}

.p-header__nav-banner-item:nth-of-type(n+2) {
  margin-top: 0.375rem;
}

.p-header__nav-banner-app {
  padding: 0.9375rem 1.375rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.75rem;
  border: 1px solid #96002C;
}

.p-header__nav-banner-app-image {
  width: 3.75rem;
  aspect-ratio: 1/1;
  background-color: #fff;
  border-radius: 0.625rem;
  -webkit-box-shadow: 0 0 0.3125rem 0px rgba(0, 0, 0, .15);
          box-shadow: 0 0 0.3125rem 0px rgba(0, 0, 0, .15);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

.p-header__nav-banner-app-image img {
  width: 2.5rem;
  aspect-ratio: 40/31;
  -o-object-fit: contain;
     object-fit: contain;
}

.p-header__nav-banner-app-name {
  font-size: 0.8125rem;
  color: #96002C;
  line-height: 1.3;
  letter-spacing: 0.03em;
  font-weight: 600;
}

.p-header__nav-banner-app-text {
  margin-top: 0.375rem;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.1875rem;
  font-family: "Open Sans", sans-serif;
  font-size: 0.75rem;
  color: #96002C;
  line-height: 1.1;
  letter-spacing: 0.06em;
  font-weight: 500;
}

.p-header__nav-banner-app-text::after {
  content: "";
  display: inline-block;
  width: 0.875rem;
  aspect-ratio: 1/1;
  background: transparent url(../images/tokushima/icon_arrow-purple.svg) no-repeat center/contain;
}

.p-header__nav-banner-recruit {
  background: transparent url(../images/common/bg_btn-recruit.webp) no-repeat center/cover;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  padding: 0.5625rem 0.6875rem;
  position: relative;
  z-index: 0;
}

.p-header__nav-banner-recruit-text {
  width: 10rem;
}

.p-header__nav-banner-recruit-text img {
  width: 100%;
  aspect-ratio: 160/67;
  -o-object-fit: contain;
     object-fit: contain;
}

.p-header__nav-banner-recruit::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
  background-color: rgba(0, 0, 0, .3);
  z-index: -1;
}

@media screen and (min-width: 768px) {
  .higashisenba .p-header__nav-item--link a:hover::after,
  .kuramoto .p-header__nav-item--link a:hover::after,
  .saijyo .p-header__nav-item--link a:hover::after {
    background-color: #E77415;
  }
}

.higashisenba .p-header__hamburger,
.kuramoto .p-header__hamburger,
.saijyo .p-header__hamburger {
  background-color: #E77415;
}

.higashisenba .p-header__hamburger.open,
.kuramoto .p-header__hamburger.open,
.saijyo .p-header__hamburger.open {
  background-color: #E77415;
}

@media screen and (min-width: 768px) {
  .higashisenba .p-header__nav-item a:hover,
  .kuramoto .p-header__nav-item a:hover,
  .saijyo .p-header__nav-item a:hover {
    opacity: 1;
    color: #E77415;
  }
}

.higashisenba .p-header__search,
.kuramoto .p-header__search,
.saijyo .p-header__search {
  background-color: #fdf5ec;
}

.ryogokubashi .p-header__logo img,
.higashisenba .p-header__logo img,
.kuramoto .p-header__logo img,
.takamatsu .p-header__logo img,
.kanonji .p-header__logo img {
  width: auto;
  -o-object-fit: contain;
     object-fit: contain;
  height: 2.1875rem;
}
@media screen and (min-width: 1024px) {
  .ryogokubashi .p-header__logo img,
  .higashisenba .p-header__logo img,
  .kuramoto .p-header__logo img,
  .takamatsu .p-header__logo img,
  .kanonji .p-header__logo img {
    height: 4rem;
  }
}
@media screen and (min-width: 1370px) {
  .ryogokubashi .p-header__logo img,
  .higashisenba .p-header__logo img,
  .kuramoto .p-header__logo img,
  .takamatsu .p-header__logo img,
  .kanonji .p-header__logo img {
    height: 4.6875rem;
  }
}
@media screen and (min-width: 1440px) {
  .ryogokubashi .p-header__logo img,
  .higashisenba .p-header__logo img,
  .kuramoto .p-header__logo img,
  .takamatsu .p-header__logo img,
  .kanonji .p-header__logo img {
    height: 4.6875rem;
  }
}

.p-hotelcolor {
  color: #E77415;
}

.p-hotelcolor--bg {
  background-color: #E77415;
}

.p-hotelcolor--border h4 {
  border-left: 0.3125rem solid #E77415;
}

.p-htl-access-card {
  counter-increment: card-counter;
  /* 各アイテムごとにカウンターを増加 */
}

.p-htl-access-card__img {
  position: relative;
}

.p-htl-access-card__img img {
  aspect-ratio: 366/250;
  -o-object-fit: cover;
     object-fit: cover;
}

/* 青色の背景 */
.p-htl-access-cards .p-htl-access-card__img::before {
  content: counter(card-counter);
  /* カウンターの値を表示 */
  position: absolute;
  display: inline-block;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  font-size: 1.25rem;
  line-height: 1.5;
  letter-spacing: 0.06em;
  font-weight: 700;
  background-color: #0085CE;
  color: #ffffff;
  top: 0;
  left: 0;
  z-index: 1;
}

.p-htl-access-cards-second {
  counter-reset: second-card-counter;
}

.p-htl-access-cards-second .p-htl-access-card {
  counter-increment: second-card-counter;
}

/* 赤色の背景 */
.p-htl-access-cards-second .p-htl-access-card__img::before {
  content: counter(second-card-counter);
  position: absolute;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  font-size: 1.125rem;
  line-height: 1.6666666667;
  letter-spacing: 0.06em;
  font-weight: 700;
  background-color: #FFB745;
  color: white;
  top: 0;
  left: 0;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .p-htl-access-cards-second .p-htl-access-card__img::before {
    font-size: 1.25rem;
    line-height: 1.5;
  }
}

/* 3つ目のリスト（オレンジ色） */
.p-htl-access-cards-third {
  counter-reset: third-card-counter;
  /* 新しいカウンターをリセット */
}

.p-htl-access-cards-third .p-htl-access-card {
  counter-increment: third-card-counter;
  /* 各アイテムごとにカウンターを増加 */
}

/* オレンジ色の背景 */
.p-htl-access-cards-third .p-htl-access-card__img::before {
  content: counter(third-card-counter);
  position: absolute;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  font-size: 1.25rem;
  line-height: 1.5;
  letter-spacing: 0.06em;
  font-weight: 700;
  background-color: #00A141;
  /* 緑色 */
  color: white;
  top: 0;
  left: 0;
  z-index: 1;
}

.p-htl-access-card__text {
  margin-top: 0.625rem;
}
@media screen and (min-width: 768px) {
  .p-htl-access-card__text {
    margin-top: 0.875rem;
  }
}

.p-htl-access-card__text p {
  font-size: 0.8125rem;
  font-weight: 500;
  line-height: 1.4285714286;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
  .p-htl-access-card__text p {
    font-size: 1rem;
    line-height: 1.875;
  }
}

.p-htl-access-cards {
  counter-reset: card-counter;
  margin-top: 2.25rem;
  display: grid;
  gap: 2.25rem;
}
@media screen and (min-width: 600px) {
  .p-htl-access-cards {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (min-width: 768px) {
  .p-htl-access-cards {
    margin-top: 3.25rem;
    grid-template-columns: repeat(3, 1fr);
    gap: 3.1875rem;
  }
}

.p-htl-access-directions {
  padding-top: 5rem;
  padding-bottom: 12.5rem;
  background-color: #F6F6F6;
}
@media screen and (min-width: 768px) {
  .p-htl-access-directions {
    padding-top: 7.5rem;
    padding-bottom: 12.5rem;
  }
}

.p-htl-access-directions__inner {
  max-width: 78.125rem;
  padding-right: 1.5625rem;
  padding-left: 1.5625rem;
  margin-inline: auto;
}

.p-htl-access-directions__img {
  margin-top: 3.75rem;
  max-width: 42.375rem;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .p-htl-access-directions__img {
    margin-top: 2.5rem;
  }
}

.p-htl-access-directions__img img {
  width: 100%;
  aspect-ratio: 679/734;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-htl-access-direction__box {
  margin-top: 2.5rem;
}
@media screen and (min-width: 768px) {
  .p-htl-access-direction__box {
    margin-top: 5rem;
  }
}

.p-htl-access-direction__wrap {
  margin-top: 1.875rem;
}
@media screen and (min-width: 768px) {
  .p-htl-access-direction__wrap {
    margin-top: 1.25rem;
    margin-left: 1.5rem;
  }
}

.p-htl-access-direction-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.0625rem;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (min-width: 768px) {
  .p-htl-access-direction-flex {
    margin-top: 0;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: initial;
        -ms-flex-pack: initial;
            justify-content: initial;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1.4375rem;
  }
}

.p-htl-access-direction-text {
  margin-top: 1.875rem;
  font-size: 0.875rem;
  line-height: 1;
  letter-spacing: 0.03em;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .p-htl-access-direction-text {
    margin-top: 0;
    font-size: 0.9375rem;
    line-height: 3.3333333333;
  }
}

.p-htl-access-direction-text--space {
  margin-top: 0;
}

.p-htl-access-direction-text2 {
  display: block;
  font-size: 0.875rem;
  line-height: 1.4285714286;
  letter-spacing: 0.03em;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .p-htl-access-direction-text2 {
    font-size: 0.9375rem;
    line-height: 3.3333333333;
  }
}

.p-htl-access-direction--red {
  color: #FF2E2E;
  margin-top: 0.625rem;
}
@media screen and (min-width: 768px) {
  .p-htl-access-direction--red {
    margin-top: 0;
  }
}

.p-htl-access-direction--blue {
  color: #0A76B0;
  margin-top: 0.625rem;
}
@media screen and (min-width: 768px) {
  .p-htl-access-direction--blue {
    margin-top: 0;
  }
}

.p-htl-access__heading {
  padding-bottom: 5rem;
}
@media screen and (min-width: 768px) {
  .p-htl-access__heading {
    padding-bottom: 7.5rem;
  }
}

.p-htl-access__inner {
  max-width: 65.625rem;
  padding-left: 1.875rem;
  padding-right: 1.875rem;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .p-htl-access__inner {
    padding-left: 1.5625rem;
    padding-right: 1.5625rem;
  }
}

.p-htl-access__map-wrap {
  max-width: 62.5rem;
  width: 100%;
}

.p-htl-access__map-img {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 62%;
  /* 440 / 1000 * 100 = 44% */
}
@media screen and (min-width: 768px) {
  .p-htl-access__map-img {
    padding-top: 44%;
  }
}

.p-htl-access__map-img iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.p-htl-access__place-img {
  margin-top: 2.5rem;
}
@media screen and (min-width: 768px) {
  .p-htl-access__place-img {
    margin-top: 13.625rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    margin-right: calc(50% - 50vw);
  }
}

.p-htl-access__map-link {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  display: block;
  cursor: pointer;
}
.p-htl-access__map-link:hover .p-htl-access__map-icon {
  opacity: 1;
  -webkit-transform: translateY(-2px);
          transform: translateY(-2px);
}

.p-htl-access__place-img img {
  max-width: 19.6875rem;
  aspect-ratio: 445/295;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (min-width: 768px) {
  .p-htl-access__place-img img {
    max-width: 27.8125rem;
  }
}

.p-htl-access__public {
  margin-top: 3.75rem;
}
@media screen and (min-width: 768px) {
  .p-htl-access__public {
    margin-top: 6.25rem;
  }
}

.p-htl-access__common-title {
  display: block;
}
.p-htl-access__common-title h4 {
  margin-top: 3.90625rem;
  font-size: 1rem;
  line-height: 2;
  letter-spacing: 0.06em;
  font-weight: 500;
  padding: 0.625rem 0.625rem;
  background-color: #F6F6F6;
  border-left: 0.3125rem solid #60000A;
}
@media screen and (min-width: 768px) {
  .p-htl-access__common-title h4 {
    margin-top: 6.75rem;
    padding: 0.625rem 1.25rem;
    font-size: 1.25rem;
  }
}

.p-htl-access__common-sub-title h4 {
  margin-top: 4.21875rem;
  font-size: 1rem;
  line-height: 2;
  letter-spacing: 0.06em;
  font-weight: 500;
  padding: 0.625rem 0.625rem;
  background-color: #F6F6F6;
}
@media screen and (min-width: 768px) {
  .p-htl-access__common-sub-title h4 {
    margin-top: 6.25rem;
    padding: 0.625rem 1.25rem;
    font-size: 1.25rem;
  }
}

.p-htl-access__common-sub-title--01 {
  position: relative;
  display: block;
  border-bottom: 1px solid #d9d9d9;
}
.p-htl-access__common-sub-title--01::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -0.0625rem;
  width: 13.875rem;
  height: 2px;
  background-color: #0085CE;
}
@media screen and (min-width: 768px) {
  .p-htl-access__common-sub-title--01::after {
    width: 18.75rem;
  }
}

.p-htl-access__common-sub-title--02 {
  position: relative;
  display: block;
  border-bottom: 1px solid #d9d9d9;
}
.p-htl-access__common-sub-title--02::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -0.0625rem;
  width: 13.875rem;
  height: 2px;
  background-color: #FFB745;
}
@media screen and (min-width: 768px) {
  .p-htl-access__common-sub-title--02::after {
    width: 18.75rem;
  }
}

.p-htl-access__common-sub-title--03 {
  position: relative;
  display: block;
  border-bottom: 1px solid #d9d9d9;
}
.p-htl-access__common-sub-title--03::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -0.0625rem;
  width: 13.875rem;
  height: 2px;
  background-color: #00A141;
}
@media screen and (min-width: 768px) {
  .p-htl-access__common-sub-title--03::after {
    width: 18.75rem;
  }
}

.p-htl-access__public-text {
  margin-top: 1.25rem;
}
@media screen and (min-width: 768px) {
  .p-htl-access__public-text {
    margin-top: 1.875rem;
    padding-left: 1.25rem;
  }
}

.p-htl-access__public-text + .p-htl-access__public-text {
  margin-top: 0;
}

.p-htl-access__public-text-place {
  font-size: 0.875rem;
  line-height: 2.5714285714;
  font-weight: 500;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
  .p-htl-access__public-text-place {
    font-size: 0.9375rem;
    line-height: 2.6666666667;
  }
}

.p-htl-access__public-text-place--dot:before {
  content: "";
  display: inline-block;
  width: 0.8125rem;
  aspect-ratio: 1/1;
  border-radius: 50%;
  margin-top: 0.5rem;
  background-color: #222222;
}
@media screen and (min-width: 768px) {
  .p-htl-access__public-text-place--dot:before {
    width: 0.875rem;
  }
}

.p-htl-access__public-text-minutes {
  font-size: 0.875rem;
  line-height: 2.5714285714;
  font-weight: 400;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
  .p-htl-access__public-text-minutes {
    font-size: 0.9375rem;
    line-height: 2.6666666667;
    font-weight: 400;
  }
}

.p-htl-access__public-guidance {
  text-align: center;
}

.p-htl-access__public-wrapper {
  display: grid;
}
@media screen and (min-width: 768px) {
  .p-htl-access__public-wrapper {
    grid-template-columns: 450fr 324fr;
    gap: 2.5rem;
  }
}

.p-htl-access__public-body {
  text-align: left;
}
@media screen and (min-width: 768px) {
  .p-htl-access__public-body {
    margin-left: 1.25rem;
  }
}

.p-htl-access__public-body-text {
  font-size: 0.875rem;
  line-height: 2.1428571429;
  letter-spacing: 0.06em;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .p-htl-access__public-body-text {
    font-size: 0.9375rem;
    line-height: 2;
  }
}

.p-htl-access__public-body-flex {
  margin-top: -0.625rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.0625rem;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (min-width: 768px) {
  .p-htl-access__public-body-flex {
    margin-top: 0;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: initial;
        -ms-flex-pack: initial;
            justify-content: initial;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

.p-htl-access__public-body--color {
  color: #FF2E2E;
  margin-left: -0.625rem;
}
@media screen and (min-width: 768px) {
  .p-htl-access__public-body--color {
    margin-left: 0;
  }
}

.p-htl-access__public-body-time {
  margin-top: 1.25rem;
  display: grid;
  grid-template-columns: 0.75rem 1fr;
  gap: 0.25rem;
  font-weight: 500;
  font-size: 0.875rem;
  line-height: 2.1428571429;
  letter-spacing: 0.06em;
  color: #60000A;
}
@media screen and (min-width: 768px) {
  .p-htl-access__public-body-time {
    gap: 0.375rem;
    font-size: 1rem;
    line-height: 1.875;
  }
}

.p-htl-access__public-body-time:before {
  content: "";
  display: inline-block;
  width: 0.8125rem;
  aspect-ratio: 1/1;
  border-radius: 50%;
  margin-top: 0.5rem;
  background-color: #60000A;
}
@media screen and (min-width: 768px) {
  .p-htl-access__public-body-time:before {
    width: 0.875rem;
  }
}

.p-htl-access__public-body-time p {
  font-size: 0.875rem;
  line-height: 2.1428571429;
  letter-spacing: 0.06em;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .p-htl-access__public-body-time p {
    font-size: 1rem;
    line-height: 1.875;
  }
}

.p-htl-access__public-body-attention {
  margin-top: 0.625rem;
}

.p-htl-access__public-body-attention p {
  font-size: 0.75rem;
  line-height: 2;
  letter-spacing: 0.06em;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .p-htl-access__public-body-attention p {
    font-size: 0.875rem;
    line-height: 2.1428571429;
    font-weight: 500;
  }
}

.p-htl-access__public-body-attention span {
  display: block;
  font-size: 0.6875rem;
  line-height: 2.1818181818;
  letter-spacing: 0.06em;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .p-htl-access__public-body-attention span {
    font-size: 0.8125rem;
    line-height: 1.6923076923;
  }
}

.p-htl-access__public-body-time-wrap {
  margin-top: 0.375rem;
}
.p-htl-access__public-body-time-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0;
}
@media screen and (min-width: 768px) {
  .p-htl-access__public-body-time-container {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}

.p-htl-access__public-body-time-title {
  margin-top: 0.625rem;
  font-size: 0.875rem;
  line-height: 2.1428571429;
  letter-spacing: 0.06em;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .p-htl-access__public-body-time-title {
    font-size: 0.8125rem;
    line-height: 1.6923076923;
    letter-spacing: 0.06em;
    font-weight: 700;
  }
}

.p-htl-access__public-body-time-flex {
  margin-top: 0.25rem;
  width: 75%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0 0.375rem;
}
@media screen and (min-width: 768px) {
  .p-htl-access__public-body-time-flex {
    width: 100%;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    gap: 0.375rem;
  }
}

.p-htl-access__public-body-time-box {
  padding: 0 0.8125rem;
  margin-top: 0.5rem;
  display: inline-block;
  text-align: center;
  font-size: 0.8125rem;
  color: #222222;
  line-height: 1.8461538462;
  letter-spacing: 0.3em;
  background-color: #F6F6F6;
}
@media screen and (min-width: 768px) {
  .p-htl-access__public-body-time-box {
    padding: 0 0.875rem;
    margin-top: 0.5rem;
    letter-spacing: 0.16em;
  }
}

.p-htl-access__public-body-time-content {
  margin-top: -0.1875rem;
  font-size: 0.8125rem;
  line-height: 1.6923076923;
  letter-spacing: 0.06em;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .p-htl-access__public-body-time-content {
    margin-top: 0;
    line-height: 2.3076923077;
  }
}

.p-htl-access__public-img {
  margin-top: 2.5rem;
}
@media screen and (min-width: 768px) {
  .p-htl-access__public-img {
    margin-top: 0;
  }
}

.p-htl-access__public-img img {
  width: 100%;
  aspect-ratio: 390/253;
  -o-object-fit: cover;
     object-fit: cover;
}

#public::before {
  content: "";
  display: block;
  height: 3.75rem;
  margin-top: -3.75rem;
}

@media screen and (min-width: 768px) {
  .p-htl-access__public-title-wrap {
    margin-top: 0.125rem;
  }
}

.p-htl-access__public-sub-text {
  margin-top: -0.625rem;
  font-size: 0.875rem;
  line-height: 1.7142857143;
  letter-spacing: 0.06em;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .p-htl-access__public-sub-text {
    margin-top: -0.875rem;
    margin-left: 1.25rem;
    font-size: 0.9375rem;
    line-height: 2.6666666667;
  }
}

.p-htl-access__public-sub-text--space {
  margin-top: 0.625rem;
}
@media screen and (min-width: 768px) {
  .p-htl-access__public-sub-text--space {
    margin-top: -0.875rem;
  }
}

.p-htl-access__table {
  margin-top: 1.875rem;
  margin-right: 0;
}
@media screen and (min-width: 768px) {
  .p-htl-access__table {
    margin-left: 1.25rem;
    margin-right: 1.25rem;
  }
}

.p-htl-access__table__park {
  margin-left: -1em;
  font-size: 0.875rem;
  line-height: 2.1428571429;
  font-weight: 500;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
  .p-htl-access__table__park {
    margin-left: 0;
    font-size: 0.9375rem;
    line-height: 2;
  }
}

@media screen and (min-width: 768px) {
  .p-htl-access__table__stay {
    margin-left: 0.625rem;
  }
}

.p-htl-access__table__attention {
  display: block;
  font-size: 0.75rem;
  color: #96002C;
  line-height: 2.5;
  letter-spacing: 0.06em;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .p-htl-access__table__attention {
    font-size: 0.8125rem;
    line-height: 2.3076923077;
  }
}

.p-htl-access__table__attention2 {
  display: block;
  font-size: 0.75rem;
  color: #222222;
  line-height: 2.5;
  letter-spacing: 0.06em;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .p-htl-access__table__attention2 {
    display: inline;
    margin-left: 1em;
    font-size: 0.8125rem;
    line-height: 2.3076923077;
  }
}

.p-htl-access__table table {
  width: 100%;
  border-collapse: collapse;
  display: block;
}
@media screen and (min-width: 768px) {
  .p-htl-access__table table {
    display: table;
  }
}

.p-htl-access__table tbody {
  display: block;
}
@media screen and (min-width: 768px) {
  .p-htl-access__table tbody {
    display: table-row-group;
  }
}

.p-htl-access__table tr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  text-align: left;
}
@media screen and (min-width: 768px) {
  .p-htl-access__table tr {
    display: table-row;
    border: 1px solid #60000A;
  }
}

.p-htl-access__table th {
  padding: 0.75rem 1.25rem;
  width: 100%;
  font-size: 0.875rem;
  color: #ffffff;
  line-height: 2.1428571429;
  letter-spacing: 0.06em;
  font-weight: 400;
  background-color: #60000A;
  text-align: left;
}
@media screen and (min-width: 768px) {
  .p-htl-access__table th {
    padding: 1rem 1.25rem;
    width: 27.6%;
    font-size: 0.9375rem;
    line-height: 2;
    font-weight: 400;
  }
}

.p-htl-access__table td {
  padding: 0.75rem;
  padding-left: 0.9375rem;
  padding-right: 0.9375rem;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 2.1428571429;
  letter-spacing: 0.06em;
  background-color: #ffffff;
  border: 1px solid #60000A;
}
.p-htl-access__table td:nth-child(1), .p-htl-access__table td:nth-child(2) {
  border-bottom: none;
}
.p-htl-access__table td:last-child {
  border-bottom: 1px solid #60000A;
}
@media screen and (min-width: 768px) {
  .p-htl-access__table td {
    padding: 0.625rem 1rem;
    font-size: 0.9375rem;
    line-height: 2;
    border-bottom: 1px solid #60000A;
  }
}

@media screen and (min-width: 768px) {
  .p-htl-access__table tr:not(:first-child) th {
    border-top: 1px solid #ffffff;
  }
}

.p-htl-access__table-color2 {
  background-color: orange;
}

.p-htl-access__table__tax {
  font-size: 0.625rem;
  line-height: 3;
  font-weight: 400;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
  .p-htl-access__table__tax {
    font-size: 0.6875rem;
    line-height: 2.7272727273;
  }
}

.p-htl-access__table__space {
  display: inline-block;
  margin-right: 0;
}
@media screen and (min-width: 768px) {
  .p-htl-access__table__space {
    margin-left: 1.875rem;
  }
}

.p-htl-access__table__space--kanonji {
  display: inline-block;
  margin-right: 0;
  margin-left: 1em;
}
@media screen and (min-width: 768px) {
  .p-htl-access__table__space--kanonji {
    margin-left: 1.5em;
  }
}

.p-htl-access__table-attention {
  margin-top: 0.625rem;
}
@media screen and (min-width: 768px) {
  .p-htl-access__table-attention {
    margin-top: 1.25rem;
  }
}

.p-htl-access__table-attention p {
  text-indent: -1em;
  padding-left: 1em;
  font-size: 0.6875rem;
  color: #5b5b5b;
  line-height: 1.8181818182;
  letter-spacing: 0.06em;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .p-htl-access__table-attention p {
    font-size: 0.8125rem;
    line-height: 1.8461538462;
  }
}

.p-htl-access__table-attention p:nth-child(n+2) {
  margin-top: 0.375rem;
}
@media screen and (min-width: 768px) {
  .p-htl-access__table-attention p:nth-child(n+2) {
    margin-top: 0.625rem;
  }
}

.p-htl-access__table-attention p:nth-child(n+2).p-htl-access__table-attention--nospace {
  margin-top: 0.375rem;
}
@media screen and (min-width: 768px) {
  .p-htl-access__table-attention p:nth-child(n+2).p-htl-access__table-attention--nospace {
    margin-top: 0;
  }
}

.p-htl-access__table-attention--space {
  margin-left: 0;
}
@media screen and (min-width: 768px) {
  .p-htl-access__table-attention--space {
    margin-left: 1em;
  }
}

.p-htl-access__table2 {
  margin-top: 1.875rem;
  margin-right: 0;
}
@media screen and (min-width: 768px) {
  .p-htl-access__table2 {
    margin-left: 1.25rem;
    margin-right: 1.25rem;
  }
}

.p-htl-access__table2__park {
  margin-left: -1em;
  font-size: 0.875rem;
  line-height: 2.1428571429;
  font-weight: 500;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
  .p-htl-access__table2__park {
    margin-left: 0;
    font-size: 0.9375rem;
    line-height: 2;
  }
}

@media screen and (min-width: 768px) {
  .p-htl-access__table2__stay {
    margin-left: 0.625rem;
  }
}

.p-htl-access__table2__attention {
  display: block;
  font-size: 0.75rem;
  color: #96002C;
  line-height: 2.5;
  letter-spacing: 0.06em;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .p-htl-access__table2__attention {
    font-size: 0.8125rem;
    line-height: 2.3076923077;
  }
}

.p-htl-access__table2__attention2 {
  display: block;
  font-size: 0.75rem;
  color: #222222;
  line-height: 2.5;
  letter-spacing: 0.06em;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .p-htl-access__table2__attention2 {
    display: inline;
    margin-left: 1em;
    font-size: 0.8125rem;
    line-height: 2.3076923077;
  }
}

.p-htl-access__table2 table {
  width: 100%;
  border-collapse: collapse;
  display: block;
}
@media screen and (min-width: 768px) {
  .p-htl-access__table2 table {
    display: table;
  }
}

.p-htl-access__table2 tbody {
  display: block;
}
@media screen and (min-width: 768px) {
  .p-htl-access__table2 tbody {
    display: table-row-group;
  }
}

.p-htl-access__table2 tr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  text-align: left;
}
@media screen and (min-width: 768px) {
  .p-htl-access__table2 tr {
    display: table-row;
    border: 1px solid #E77415;
  }
}

.p-htl-access__table2 th {
  padding: 0.75rem 1.25rem;
  width: 100%;
  font-size: 0.875rem;
  color: #ffffff;
  line-height: 2.1428571429;
  letter-spacing: 0.06em;
  font-weight: 400;
  background-color: #E77415;
  text-align: left;
}
@media screen and (min-width: 768px) {
  .p-htl-access__table2 th {
    padding: 1rem 1.25rem;
    width: 27.6%;
    font-size: 0.9375rem;
    line-height: 2;
    font-weight: 400;
  }
}

.p-htl-access__table2 td {
  padding: 0.75rem;
  padding-left: 0.9375rem;
  padding-right: 0.9375rem;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 2.1428571429;
  letter-spacing: 0.06em;
  background-color: #ffffff;
  border: 1px solid #E77415;
}
.p-htl-access__table2 td:nth-child(1), .p-htl-access__table2 td:nth-child(2) {
  border-bottom: none;
}
.p-htl-access__table2 td:last-child {
  border-bottom: 1px solid #E77415;
}
@media screen and (min-width: 768px) {
  .p-htl-access__table2 td {
    padding: 0.625rem 1rem;
    font-size: 0.9375rem;
    line-height: 2;
    border-bottom: 1px solid #E77415;
  }
}

@media screen and (min-width: 768px) {
  .p-htl-access__table2 tr:not(:first-child) th {
    border-top: 1px solid #ffffff;
  }
}

.p-htl-access__table2__tax {
  font-size: 0.625rem;
  line-height: 3;
  font-weight: 400;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
  .p-htl-access__table2__tax {
    font-size: 0.6875rem;
    line-height: 2.7272727273;
  }
}

.p-htl-access__table2__space {
  display: inline-block;
  margin-right: 0;
}
@media screen and (min-width: 768px) {
  .p-htl-access__table2__space {
    margin-left: 1.875rem;
  }
}

.p-htl-access__map-body {
  margin-left: 0.625rem;
  padding-right: 1.125rem;
  margin-top: 2.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 0.625rem 1.875rem;
}
@media screen and (min-width: 768px) {
  .p-htl-access__map-body {
    margin-left: 3.75rem;
    padding-right: 0;
    margin-top: 6.125rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    gap: 2rem 3rem;
  }
}

.p-htl-access__map-body--space {
  padding-right: 0;
  gap: 1.125rem;
}
@media screen and (min-width: 768px) {
  .p-htl-access__map-body--space {
    margin-right: 0;
    margin-right: initial;
    gap: 2rem 3rem;
  }
}

.p-htl-access__map-body-flex {
  white-space: nowrap;
  margin-top: 0;
  margin-bottom: 0;
  gap: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .p-htl-access__map-body-flex {
    -webkit-box-pack: initial;
        -ms-flex-pack: initial;
            justify-content: initial;
    gap: 1.25rem;
    width: calc(50% - 3.5625rem);
  }
}

.p-htl-access__map-body-flex--gap {
  gap: 0.625rem;
  -webkit-box-pack: initial;
      -ms-flex-pack: initial;
          justify-content: initial;
}
@media screen and (min-width: 768px) {
  .p-htl-access__map-body-flex--gap {
    gap: 1.25rem;
  }
}

.p-htl-access__map-body-left {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.5rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 768px) {
  .p-htl-access__map-body-left {
    gap: 1.25rem;
  }
}

.p-htl-access__map-body-left-num {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 1.625rem;
  height: 1.625rem;
  font-size: 0.9375rem;
  color: #ffffff;
  line-height: 1.2666666667;
  letter-spacing: 0.03em;
  font-weight: 500;
  background-color: #60000A;
}
@media screen and (min-width: 768px) {
  .p-htl-access__map-body-left-num {
    width: 2.5rem;
    height: 2.5rem;
    line-height: 1.2;
    font-size: 1.25rem;
  }
}

.p-htl-access__map-body-left-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.p-htl-access__map-body-left-text {
  font-size: 0.875rem;
  line-height: 1.5;
  letter-spacing: 0.1em;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .p-htl-access__map-body-left-text {
    font-size: 1.125rem;
    line-height: 1.5;
  }
}

.p-htl-access__map-body-time {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.p-htl-access__map-body-time-text {
  font-size: 0.6875rem;
  line-height: 1.9090909091;
  letter-spacing: 0.1em;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .p-htl-access__map-body-time-text {
    font-size: 0.875rem;
    line-height: 1.9285714286;
  }
}

.p-htl-access__map-body-time-text--space {
  margin-left: 0.875rem;
}

.p-htl-access__map-body-time-num {
  padding-right: 0.125rem;
  padding-left: 0.125rem;
  margin-top: -0.125rem;
  font-size: 1.25rem;
  line-height: 0.95;
  letter-spacing: 0.03em;
  font-weight: 700;
  color: #60000A;
}
@media screen and (min-width: 768px) {
  .p-htl-access__map-body-time-num {
    padding-right: 0.25rem;
    padding-left: 0.25rem;
    font-size: 1.625rem;
    line-height: 0.9230769231;
  }
}

.p-htl-access__map-body-time-distance {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 0.625rem;
  line-height: 1;
  letter-spacing: 0.1em;
  font-weight: 400;
  color: #878787;
}
@media screen and (min-width: 768px) {
  .p-htl-access__map-body-time-distance {
    font-size: 0.75rem;
    line-height: 2.25;
  }
}

.p-hotelcolor {
  color: #E77415;
}

.p-hotelcolor--bg {
  background-color: #E77415;
}

.p-hotelcolor--border h4 {
  border-left: 0.3125rem solid #E77415;
}

.p-htl-app {
  margin-top: 2.5rem;
  padding-bottom: 6.25rem;
}
@media screen and (min-width: 768px) {
  .p-htl-app {
    margin-top: 4.4375rem;
    padding-bottom: 10rem;
  }
}

.p-htl-app__head {
  background-color: #F6F6F6;
  padding: 3.75rem 0 3.75rem;
}
@media screen and (min-width: 768px) {
  .p-htl-app__head {
    background-color: transparent;
    padding: 0;
  }
}

.p-htl-app__head-inner {
  width: 100%;
  padding-right: 1.25rem;
  padding-left: 1.25rem;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (min-width: 768px) {
  .p-htl-app__head-inner {
    padding-right: 1.5625rem;
    padding-left: 1.5625rem;
  }
}

.p-htl-app__head-wrapper {
  max-width: 68.125rem;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 768px) {
  .p-htl-app__head-wrapper {
    max-width: 65rem;
    padding: 4.8125rem 6.8125rem 4.4375rem 6.1875rem;
    background-color: #F6F6F6;
    border-radius: 1.875rem;
  }
}

.p-htl-app__head-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.625rem;
  font-size: 1.25rem;
  line-height: 1.6;
  letter-spacing: 0.06em;
  font-weight: 600;
  color: #96002C;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .p-htl-app__head-title {
    font-size: 2rem;
    line-height: 1;
    gap: 0.75rem;
  }
}

.p-htl-app__head-title-en {
  display: inline-block;
  font-size: 0.75rem;
  line-height: 1.1666666667;
  letter-spacing: 0.1em;
  font-weight: 500;
  color: #222222;
}
@media screen and (min-width: 768px) {
  .p-htl-app__head-title-en {
    font-size: 0.875rem;
    line-height: 1;
  }
}

.p-htl-app__head-container {
  margin-top: 2.5rem;
  display: grid;
  grid-template-columns: 1fr;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media screen and (min-width: 768px) {
  .p-htl-app__head-container {
    margin-top: 3.125rem;
    grid-template-columns: 246fr 546fr;
    gap: 2.5rem;
  }
}

.p-htl-app__head-image {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}
@media screen and (min-width: 768px) {
  .p-htl-app__head-image {
    margin-left: 0;
    margin-left: initial;
    margin-right: 0;
    margin-right: initial;
  }
}
.p-htl-app__head-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
.p-htl-app__head-image .p-htl-app__img--pc {
  display: none;
  aspect-ratio: 246/466;
}
@media screen and (min-width: 768px) {
  .p-htl-app__head-image .p-htl-app__img--pc {
    display: block;
  }
}
.p-htl-app__head-image .p-htl-app__img--sp {
  display: block;
  aspect-ratio: 375/246;
}
@media screen and (min-width: 768px) {
  .p-htl-app__head-image .p-htl-app__img--sp {
    display: none;
  }
}

.p-htl-app__head-body {
  margin-top: -1.375rem;
  padding-left: 0.3125rem;
  padding-right: 0.3125rem;
}
@media screen and (min-width: 768px) {
  .p-htl-app__head-body {
    margin-top: 0;
    padding-left: 0;
    padding-right: 0;
  }
}

.p-htl-app__head-body-image {
  background-color: #ffffff;
  padding: 1.25rem 0rem 1.25rem 0.8125rem;
  border-radius: 0.625rem;
}
@media screen and (min-width: 768px) {
  .p-htl-app__head-body-image {
    padding: 1.5rem 0.75rem 1.4375rem 1.6875rem;
  }
}
.p-htl-app__head-body-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  display: block;
}
.p-htl-app__head-body-image .p-htl-app__img--pc {
  display: none;
  aspect-ratio: 507/146;
}
@media screen and (min-width: 768px) {
  .p-htl-app__head-body-image .p-htl-app__img--pc {
    display: block;
  }
}
.p-htl-app__head-body-image .p-htl-app__img--sp {
  display: block;
  aspect-ratio: 320/95;
}
@media screen and (min-width: 768px) {
  .p-htl-app__head-body-image .p-htl-app__img--sp {
    display: none;
  }
}

.p-htl-app__head-body-contents {
  margin-top: 1.875rem;
  padding-left: 0.625rem;
  padding-right: 0.625rem;
}
@media screen and (min-width: 768px) {
  .p-htl-app__head-body-contents {
    margin-top: 2.0625rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
}

.p-htl-app__head-body-lead {
  font-size: 0.9375rem;
  line-height: 2;
  letter-spacing: 0.06em;
  font-weight: 600;
  color: #96002C;
}
@media screen and (min-width: 768px) {
  .p-htl-app__head-body-lead {
    font-size: 1rem;
    line-height: 1.875;
  }
}

.p-htl-app__head-body-text {
  font-size: 0.875rem;
  line-height: 1.7142857143;
  letter-spacing: 0.03em;
  font-weight: 500;
  margin-top: 0.375rem;
}
@media screen and (min-width: 768px) {
  .p-htl-app__head-body-text {
    font-size: 0.9375rem;
    line-height: 2;
    letter-spacing: 0.06em;
    margin-top: 0;
  }
}

.p-htl-app__head-body-download {
  margin-top: 1.875rem;
}

.p-htl-app__head-body-download-text {
  font-size: 0.9375rem;
  line-height: 1.6;
  letter-spacing: 0.03em;
  font-weight: bold;
  text-align: center;
}

.p-htl-app__head-body-download-text--sm {
  font-size: 0.8125rem;
  line-height: 1.8461538462;
  letter-spacing: 0.03em;
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .p-htl-app__head-body-download-text--sm {
    font-size: 0.9375rem;
    line-height: 1.6;
  }
}

.p-htl-app__head-body-download-btn-wrap {
  margin-top: 0.5rem;
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.625rem;
  max-width: 17.0625rem;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 768px) {
  .p-htl-app__head-body-download-btn-wrap {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.0625rem;
    max-width: none;
    max-width: initial;
    margin-left: 0;
    margin-left: initial;
    margin-right: 0;
    margin-right: initial;
  }
}

.p-htl-app__point {
  margin-top: 5rem;
}
@media screen and (min-width: 768px) {
  .p-htl-app__point {
    margin-top: 6.25rem;
  }
}

.p-htl-app__point-inner {
  max-width: 78.4375rem;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .p-htl-app__point-inner {
    padding-left: 1.5625rem;
    padding-right: 1.5625rem;
  }
}

.p-htl-app__point-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.625rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 1.25rem;
  line-height: 1.6;
  letter-spacing: 0.06em;
  font-weight: bold;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .p-htl-app__point-title {
    font-size: 2rem;
    line-height: 1;
    gap: 0.5rem;
  }
}

.p-htl-app__point-title-sub {
  font-size: 0.75rem;
  line-height: 1.1666666667;
  letter-spacing: 0.1em;
  font-weight: bold;
  color: #96002C;
}
@media screen and (min-width: 768px) {
  .p-htl-app__point-title-sub {
    font-size: 1rem;
    line-height: 2;
    letter-spacing: 0.06em;
  }
}

.p-htl-app__point-list {
  margin-top: 2.625rem;
  display: grid;
  grid-template-columns: 1fr;
  -webkit-column-gap: 1.875rem;
     -moz-column-gap: 1.875rem;
          column-gap: 1.875rem;
  row-gap: 0;
  padding-left: 1.5625rem;
  padding-right: 1.5625rem;
}
@media screen and (min-width: 768px) {
  .p-htl-app__point-list {
    margin-top: 4rem;
    grid-template-areas: "item1 item2 item3" "item4 item4 item4";
    grid-template-columns: 1fr 1fr 1fr;
    padding-left: 0rem;
    padding-right: 0rem;
    -webkit-column-gap: 3.75rem;
       -moz-column-gap: 3.75rem;
            column-gap: 3.75rem;
    row-gap: 3.75rem;
  }
}
@media screen and (min-width: 768px) {
  .p-htl-app__point-list .item1 {
    grid-area: item1;
  }
}
@media screen and (min-width: 768px) {
  .p-htl-app__point-list .item2 {
    grid-area: item2;
  }
}
@media screen and (min-width: 768px) {
  .p-htl-app__point-list .item3 {
    grid-area: item3;
  }
}
@media screen and (min-width: 768px) {
  .p-htl-app__point-list .item4 {
    grid-area: item4;
  }
}

.p-htl-app__point-item {
  padding-top: 1.875rem;
  padding-bottom: 2.5rem;
  border-top: solid 1px #d9d9d9;
}
@media screen and (min-width: 768px) {
  .p-htl-app__point-item {
    padding-top: 0;
    padding-bottom: 0;
    border-top: 0;
    border-top: initial;
  }
}

.p-htl-app__point-card {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.p-htl-app__point-card-image-container {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
}

.p-htl-app__point-quo-image {
  display: inline-block;
  position: absolute;
  bottom: -0.625rem;
  right: -0.9375rem;
  width: 7.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  aspect-ratio: 1/1;
  border-radius: 50%;
  background: linear-gradient(45deg, #9DCBFF 0%, #B8D6F7 40%, #B8D6F7 60%, #86BFFF 100%);
}
@media screen and (min-width: 768px) {
  .p-htl-app__point-quo-image {
    width: 8.3125rem;
    bottom: -1rem;
    right: -1rem;
  }
}
.p-htl-app__point-quo-image img {
  width: 75.1879699248%;
  aspect-ratio: 186/137;
  -o-object-fit: contain;
     object-fit: contain;
}

.p-htl-app__point-card-image {
  width: 100%;
  max-width: 18.75rem;
  aspect-ratio: 315/300;
  overflow: hidden;
  padding: 2.1875rem 3rem 0rem;
  background-color: #F6F6F6;
  border-radius: 1.875rem;
  max-height: 18.75rem;
  margin-left: auto;
  margin-right: auto;
  margin-top: 1.875rem;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-htl-app__point-card-image {
    aspect-ratio: 360/360;
    padding: 2.5rem 3.4375rem 0rem;
    width: 100%;
    max-height: 22.5rem;
    margin-left: 0;
    margin-left: initial;
    margin-right: 0;
    margin-right: initial;
    max-width: none;
    max-width: initial;
    margin-top: 0;
  }
}
.p-htl-app__point-card-image img {
  width: 100%;
  height: auto;
  aspect-ratio: 250/541;
  -o-object-fit: contain;
     object-fit: contain;
  -webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, .1);
          box-shadow: 0 0 20px 0 rgba(0, 0, 0, .1);
  border-radius: 1.25rem;
}

.p-htl-app__point-card-image--narrow {
  padding: 1rem 1.125rem 0;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-htl-app__point-card-image--narrow {
    padding: 2.25rem 2.1875rem 0;
  }
}
.p-htl-app__point-card-image--narrow .p-htl-app__point-best-image {
  position: absolute;
  display: inline-block;
  top: 1rem;
  right: 1.875rem;
  width: 6.375rem;
}
@media screen and (min-width: 768px) {
  .p-htl-app__point-card-image--narrow .p-htl-app__point-best-image {
    top: 2.25rem;
    right: 2.75rem;
    width: 6.25rem;
  }
}
.p-htl-app__point-card-image--narrow .p-htl-app__point-best-image img {
  width: 100%;
  aspect-ratio: 1/1;
  -webkit-box-shadow: none;
          box-shadow: none;
}

.p-htl-app__point-card-image-wrap {
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 80.5555555556%;
  aspect-ratio: 290/239;
}
.p-htl-app__point-card-image-wrap .p-htl-app__point-card-image-img1 {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 57.5862068966%;
  height: auto;
  aspect-ratio: 167/239;
  -o-object-fit: contain;
     object-fit: contain;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.p-htl-app__point-card-image-wrap .p-htl-app__point-card-image-img2 {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 57.5862068966%;
  height: auto;
  aspect-ratio: 167/165;
  -o-object-fit: contain;
     object-fit: contain;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.p-htl-app__point-card-body {
  padding-left: 0.625rem;
  padding-right: 0.625rem;
  -webkit-box-ordinal-group: 0;
      -ms-flex-order: -1;
          order: -1;
}
@media screen and (min-width: 768px) {
  .p-htl-app__point-card-body {
    -webkit-box-ordinal-group: initial;
        -ms-flex-order: initial;
            order: initial;
    margin-top: 1.25rem;
  }
}

.p-htl-app__point-card-body-head {
  display: grid;
  grid-template-columns: 3.3125rem 1fr;
  gap: 0.3125rem;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
@media screen and (min-width: 768px) {
  .p-htl-app__point-card-body-head {
    grid-template-columns: 3.5rem 1fr;
    gap: 0.625rem;
  }
}

.p-htl-app__point-card-number {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0;
  font-size: 2.9375rem;
  line-height: 1;
  letter-spacing: -0.03em;
  font-weight: 500;
  color: #96002C;
  font-family: "Open Sans", sans-serif;
  -ms-flex-item-align: start;
      align-self: flex-start;
}
@media screen and (min-width: 768px) {
  .p-htl-app__point-card-number {
    font-size: 3.125rem;
  }
}
.p-htl-app__point-card-number::before {
  content: "Point";
  text-transform: uppercase;
  font-size: 0.5625rem;
  line-height: 1;
  letter-spacing: 0.06em;
  font-weight: 500;
  margin-bottom: 0;
}
@media screen and (min-width: 768px) {
  .p-htl-app__point-card-number::before {
    font-size: 0.75rem;
    margin-bottom: -0.9375rem;
    line-height: 2.6666666667;
    margin-bottom: -0.875rem;
  }
}

.p-htl-app__point-card-body-title-wrap--space {
  margin-top: 0.625rem;
}
@media screen and (min-width: 768px) {
  .p-htl-app__point-card-body-title-wrap--space {
    margin-top: 0;
    margin-top: initial;
  }
}

.p-htl-app__point-card-body-lead {
  font-size: 0.75rem;
  line-height: 0.9166666667;
  letter-spacing: 0.03em;
  font-weight: 700;
  color: #96002C;
}
@media screen and (min-width: 768px) {
  .p-htl-app__point-card-body-lead {
    font-size: 0.8125rem;
    line-height: 1.8461538462;
    font-weight: 500;
  }
}

.p-htl-app__point-card-title {
  margin-top: 0.4375rem;
  font-size: 1.1875rem;
  line-height: 1.2631578947;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .p-htl-app__point-card-title {
    margin-top: 0;
    white-space: nowrap;
    font-size: 1.25rem;
    line-height: 1.6;
  }
}

.p-htl-app__point-card-body-text {
  margin-top: 0.625rem;
  font-size: 0.875rem;
  line-height: 1.7142857143;
  letter-spacing: 0.03em;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .p-htl-app__point-card-body-text {
    margin-top: 1rem;
    font-size: 0.9375rem;
    line-height: 1.6;
  }
}

.p-htl-app__point-card2 {
  overflow: hidden;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (min-width: 768px) {
  .p-htl-app__point-card2 {
    grid-template-columns: 14.5rem 1fr;
    padding: 2.5rem 3.75rem 2.75rem 3.4375rem;
    display: grid;
    background-color: #F6F6F6;
    gap: 3.8125rem;
    border-radius: 1.875rem;
  }
}

.p-htl-app__point-card2-image {
  position: relative;
  width: 100%;
  max-width: 18.75rem;
  aspect-ratio: 315/300;
  overflow: hidden;
  padding: 2.1875rem 3rem 0rem;
  background-color: #F6F6F6;
  border-radius: 1.875rem;
  max-height: 18.75rem;
  margin-left: auto;
  margin-right: auto;
  margin-top: 1.875rem;
}
@media screen and (min-width: 768px) {
  .p-htl-app__point-card2-image {
    max-width: none;
    max-width: initial;
    aspect-ratio: initial;
    padding: 0;
    background-color: transparent;
    border: 0;
    max-height: none;
    max-height: initial;
    margin-left: 0;
    margin-left: initial;
    margin-right: 0;
    margin-right: initial;
    overflow: visible;
    margin-top: 0;
    margin-top: initial;
  }
}
.p-htl-app__point-card2-image img {
  width: 100%;
  height: auto;
  aspect-ratio: 232/502;
  -o-object-fit: contain;
     object-fit: contain;
  top: 0.6875rem;
  left: 0;
  -webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, .1);
          box-shadow: 0 0 20px 0 rgba(0, 0, 0, .1);
  border-radius: 1.25rem;
}
@media screen and (min-width: 768px) {
  .p-htl-app__point-card2-image img {
    position: absolute;
    top: 0.6875rem;
    left: 0;
  }
}

.p-htl-app__point-card2-body {
  -webkit-box-ordinal-group: 0;
      -ms-flex-order: -1;
          order: -1;
}
@media screen and (min-width: 768px) {
  .p-htl-app__point-card2-body {
    -webkit-box-ordinal-group: initial;
        -ms-flex-order: initial;
            order: initial;
  }
}

.p-htl-app__point-card2-body-head {
  display: grid;
  grid-template-columns: 3.5rem 1fr;
  gap: 0.625rem;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
@media screen and (min-width: 768px) {
  .p-htl-app__point-card2-body-head {
    gap: 1.3125rem;
  }
}

.p-htl-app__point-card2-number {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0;
  font-size: 2.9375rem;
  line-height: 1;
  letter-spacing: -0.03em;
  font-weight: 500;
  color: #96002C;
  font-family: "Open Sans", sans-serif;
  -ms-flex-item-align: start;
      align-self: flex-start;
}
@media screen and (min-width: 768px) {
  .p-htl-app__point-card2-number {
    font-size: 3.125rem;
  }
}
.p-htl-app__point-card2-number::before {
  content: "Point";
  text-transform: uppercase;
  font-size: 0.5625rem;
  line-height: 1;
  letter-spacing: 0.06em;
  font-weight: 500;
  margin-bottom: 0;
}
@media screen and (min-width: 768px) {
  .p-htl-app__point-card2-number::before {
    line-height: 2.6666666667;
    margin-bottom: -0.9375rem;
    font-size: 0.75rem;
  }
}

.p-htl-app__point-card2-body-lead {
  font-size: 0.75rem;
  line-height: 1.0909090909;
  letter-spacing: 0.03em;
  font-weight: 500;
  color: #96002C;
}
@media screen and (min-width: 768px) {
  .p-htl-app__point-card2-body-lead {
    font-size: 0.8125rem;
    line-height: 1.8461538462;
  }
}

.p-htl-app__point-card2-body-title-wrap {
  margin-top: 0.4375rem;
}
@media screen and (min-width: 768px) {
  .p-htl-app__point-card2-body-title-wrap {
    margin-top: 0;
  }
}

.p-htl-app__point-card2-title {
  margin-top: 0.4375rem;
  font-size: 1.1875rem;
  line-height: 1.2631578947;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .p-htl-app__point-card2-title {
    margin-top: 0;
    font-size: 1.25rem;
  }
}

.p-htl-app__point-card2-body-text {
  margin-top: 1rem;
  font-size: 0.9375rem;
  line-height: 1.6;
  letter-spacing: 0.03em;
  font-weight: 400;
}

.p-htl-app__campaign {
  margin-top: 2.1875rem;
  padding-top: 5rem;
  position: relative;
  z-index: 0;
}
@media screen and (min-width: 768px) {
  .p-htl-app__campaign {
    margin-top: 9.125rem;
    padding-top: 7.5rem;
  }
}
.p-htl-app__campaign::after {
  content: "";
  display: block;
  width: 100%;
  height: calc(100% - 22rem);
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  background-color: #F3F2EE;
}
@media screen and (min-width: 768px) {
  .p-htl-app__campaign::after {
    height: calc(100% - 11.625rem);
  }
}

.p-htl-app__campaign-inner {
  position: relative;
  max-width: 75.375rem;
  padding-right: 1.25rem;
  padding-left: 1.25rem;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .p-htl-app__campaign-inner {
    padding-right: 1.5625rem;
    padding-left: 1.5625rem;
  }
}

.p-htl-app__campaign-pop {
  display: none;
}
@media screen and (min-width: 768px) {
  .p-htl-app__campaign-pop {
    position: absolute;
    top: -10.375rem;
    right: 0;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    aspect-ratio: 1/1;
    width: 9.3125rem;
    border-radius: 50%;
    background-color: #594A34;
    color: #ffffff;
    font-size: 1.25rem;
    line-height: 1.3;
    letter-spacing: -0.04em;
    font-weight: bold;
  }
  .p-htl-app__campaign-pop span {
    display: inline-block;
    font-size: 0.6875rem;
    line-height: 2.4545454545;
    letter-spacing: 0.1em;
  }
}

.p-htl-app__campaign-wrapper {
  max-width: 70.625rem;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  grid-template-columns: 1fr;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media screen and (min-width: 768px) {
  .p-htl-app__campaign-wrapper {
    grid-template-columns: 524fr 530fr;
    gap: 4.75rem;
  }
}

.p-htl-app__campaign-images {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.25rem;
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
  margin-top: 2.5625rem;
  width: 100%;
  max-width: 31.25rem;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 768px) {
  .p-htl-app__campaign-images {
    margin-top: 0;
    -webkit-box-ordinal-group: initial;
        -ms-flex-order: initial;
            order: initial;
    gap: 0.4375rem;
    max-width: none;
    max-width: initial;
  }
}

.p-htl-app__campaign-image img {
  width: 100%;
  height: 100%;
  aspect-ratio: 258/490;
  -o-object-fit: contain;
     object-fit: contain;
}

.p-htl-app__campaign-body {
  display: contents;
}
@media screen and (min-width: 768px) {
  .p-htl-app__campaign-body {
    display: block;
    padding-top: 1.875rem;
  }
}

.p-htl-app__campaign-body-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
@media screen and (min-width: 768px) {
  .p-htl-app__campaign-body-head {
    -webkit-box-ordinal-group: initial;
        -ms-flex-order: initial;
            order: initial;
    display: grid;
    grid-template-columns: 4.5rem 1fr;
  }
}

.p-htl-app__campaign-body-logo {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: #ffffff;
  border-radius: 0.75rem;
  -webkit-box-shadow: 0 0 6px 0 rgba(0, 0, 0, .15);
          box-shadow: 0 0 6px 0 rgba(0, 0, 0, .15);
  aspect-ratio: 1/1;
  width: 4.375rem;
}
.p-htl-app__campaign-body-logo img {
  width: 66.6666666667%;
  aspect-ratio: 48/37;
  -o-object-fit: contain;
     object-fit: contain;
}

.p-htl-app__campaign-title {
  font-size: 1.25rem;
  line-height: 1.6;
  letter-spacing: 0.06em;
  font-weight: 600;
  color: #96002C;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.0625rem;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .p-htl-app__campaign-title {
    white-space: nowrap;
    text-align: left;
    font-size: 1.75rem;
    line-height: 1.1428571429;
  }
}

.p-htl-app__campaign-title-en {
  display: inline-block;
  color: #222222;
  font-size: 0.75rem;
  line-height: 1.1666666667;
  letter-spacing: 0.1em;
  font-weight: bold;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .p-htl-app__campaign-title-en {
    text-align: left;
    font-size: 0.875rem;
    line-height: 2.2857142857;
  }
}

.p-htl-app__campaign-promotion {
  margin-top: 2.5rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 768px) {
  .p-htl-app__campaign-promotion {
    -webkit-box-ordinal-group: initial;
        -ms-flex-order: initial;
            order: initial;
    margin-top: 3.75rem;
    margin-left: 1.875rem;
    margin-right: 0;
    margin-right: initial;
  }
}

.p-htl-app__campaign-promotion-wrapper {
  background-color: #ffffff;
  padding: 1.25rem 0.875rem 1.6875rem 0.875rem;
  border-radius: 0.625rem;
}
@media screen and (min-width: 768px) {
  .p-htl-app__campaign-promotion-wrapper {
    background-color: transparent;
    padding: 0;
  }
}

.p-htl-app__campaign-promotion-text {
  font-size: 1.0625rem;
  line-height: 1.5882352941;
  letter-spacing: 0.06em;
  font-weight: 500;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (min-width: 768px) {
  .p-htl-app__campaign-promotion-text {
    font-size: 1.25rem;
    line-height: 1.6;
    -webkit-box-pack: initial;
        -ms-flex-pack: initial;
            justify-content: initial;
  }
}

.p-htl-app__campaign-promotion-point {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 2.125rem;
  line-height: 1;
  font-weight: 600;
  font-family: "Open Sans", sans-serif;
  color: #96002C;
}
@media screen and (min-width: 768px) {
  .p-htl-app__campaign-promotion-point {
    font-size: 2.5rem;
  }
}
.p-htl-app__campaign-promotion-point::before {
  content: "Point";
  text-transform: uppercase;
  font-size: 0.375rem;
  line-height: 1;
  letter-spacing: 0.06em;
  font-weight: 600;
  display: inline-block;
}
@media screen and (min-width: 768px) {
  .p-htl-app__campaign-promotion-point::before {
    font-size: 0.4375rem;
  }
}

.p-htl-app__campaign-promotion-body {
  margin-top: 0.5625rem;
}
@media screen and (min-width: 768px) {
  .p-htl-app__campaign-promotion-body {
    margin-top: 0.625rem;
  }
}
.p-htl-app__campaign-promotion-body img {
  width: 28.6875rem;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  display: block;
}
.p-htl-app__campaign-promotion-body .p-htl-app__img--pc {
  display: none;
  aspect-ratio: 459/63;
}
@media screen and (min-width: 768px) {
  .p-htl-app__campaign-promotion-body .p-htl-app__img--pc {
    display: block;
  }
}
.p-htl-app__campaign-promotion-body .p-htl-app__img--sp {
  display: block;
  aspect-ratio: 294/41;
}
@media screen and (min-width: 768px) {
  .p-htl-app__campaign-promotion-body .p-htl-app__img--sp {
    display: none;
  }
}

.p-htl-app__campaign-promotion-vertical {
  display: inline-block;
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
          writing-mode: vertical-rl;
  font-size: 0.875rem;
  line-height: 1;
  letter-spacing: 0.2em;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .p-htl-app__campaign-promotion-vertical {
    font-size: 1.25rem;
  }
}

.p-htl-app__campaign-promotion-amount {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  max-width: 9.375rem;
}
@media screen and (min-width: 768px) {
  .p-htl-app__campaign-promotion-amount {
    max-width: none;
    max-width: initial;
  }
}
.p-htl-app__campaign-promotion-amount img {
  width: 100%;
  aspect-ratio: 217/54;
  -o-object-fit: contain;
     object-fit: contain;
}

.p-htl-app__campaign-promotion-body-text {
  font-size: 2.0625rem;
  line-height: 1.0606060606;
  letter-spacing: 0.06em;
  font-weight: 500;
  display: inline-block;
  background: -webkit-gradient(linear, left top, left bottom, from(#DA9307), color-stop(50%, #E8CF76), to(#DA9307));
  background: linear-gradient(180deg, #DA9307 0%, #E8CF76 50%, #DA9307 100%);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  white-space: nowrap;
}
@media screen and (min-width: 768px) {
  .p-htl-app__campaign-promotion-body-text {
    font-size: 3.125rem;
    line-height: 1.08;
  }
}

.p-htl-app__campaign-promotion-annotation {
  margin-top: 0.5rem;
  font-size: 0.625rem;
  line-height: 1.2;
  letter-spacing: 0.06em;
  font-weight: 400;
  text-align: right;
}
@media screen and (min-width: 768px) {
  .p-htl-app__campaign-promotion-annotation {
    margin-top: 1rem;
    font-size: 0.6875rem;
    line-height: 1.1818181818;
  }
}

.p-htl-app__campaign-download {
  margin-top: 6.25rem;
  -webkit-box-ordinal-group: 5;
      -ms-flex-order: 4;
          order: 4;
}
@media screen and (min-width: 768px) {
  .p-htl-app__campaign-download {
    -webkit-box-ordinal-group: initial;
        -ms-flex-order: initial;
            order: initial;
    margin-top: 9.1875rem;
  }
}

.p-htl-app__campaign-download-text {
  font-size: 0.9375rem;
  line-height: 1.6;
  letter-spacing: 0.03em;
  font-weight: bold;
  text-align: center;
  margin-top: 1.25rem;
}
@media screen and (min-width: 768px) {
  .p-htl-app__campaign-download-text {
    font-size: 1.0625rem;
    line-height: 1.4117647059;
    margin-top: 0;
  }
}

.p-htl-app__campaign-download-btn-wrap {
  margin-top: 1.25rem;
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.625rem;
  max-width: 17.0625rem;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 768px) {
  .p-htl-app__campaign-download-btn-wrap {
    grid-template-columns: 15.25rem 15.25rem;
    gap: 1.0625rem;
    max-width: none;
    max-width: initial;
  }
}

.p-htl-app__campaign-download-sp-pop {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 1.125rem;
  line-height: 1.4444444444;
  letter-spacing: -0.04em;
  font-weight: 600;
  color: #96002C;
}
.p-htl-app__campaign-download-sp-pop span {
  display: inline-block;
  color: #222222;
  font-size: 0.6875rem;
  line-height: 2.4545454545;
  letter-spacing: 0.1em;
  font-weight: 600;
}
@media screen and (min-width: 768px) {
  .p-htl-app__campaign-download-sp-pop {
    display: none;
  }
}

.p-breadcrumb {
  margin-top: 0.625rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style: none;
}
@media screen and (min-width: 768px) {
  .p-breadcrumb {
    margin-top: 1.25rem;
    padding-left: 1.25rem;
    padding-left: 2.5rem;
  }
}

.p-breadcrumb__list:not(:last-of-type)::after {
  content: ">";
  margin: 0 1em;
  font-size: 0.875rem;
}
@media screen and (min-width: 768px) {
  .p-breadcrumb__list:not(:last-of-type)::after {
    margin: 0 1.5em;
    font-size: 0.9375rem;
  }
}

.p-breadcrumb__list span {
  font-size: 0.8125rem;
  line-height: 1;
  letter-spacing: 0.03em;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .p-breadcrumb__list span {
    font-size: 0.9375rem;
    line-height: 2.6666666667;
    letter-spacing: 0.04em;
  }
}

.span-top {
  text-decoration: underline;
}

.p-htl-breakfast-feature {
  background-color: #F3F2EE;
  padding-top: 3.75rem;
  padding-bottom: 3.75rem;
}
@media screen and (min-width: 768px) {
  .p-htl-breakfast-feature {
    padding-top: 6.875rem;
    padding-bottom: 8.125rem;
  }
}

.p-htl-breakfast-feature__inner {
  max-width: 69.4375rem;
}
@media screen and (min-width: 768px) {
  .p-htl-breakfast-feature__inner {
    padding-left: 1.5625rem;
    padding-right: 1.5625rem;
    margin-inline: auto;
  }
}

.p-htl-breakfast-feature__main-text {
  text-align: center;
}

.p-htl-breakfast-feature__main-text span {
  font-size: 0.8125rem;
  font-weight: 500;
  line-height: 1.2307692308;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
  .p-htl-breakfast-feature__main-text span {
    font-size: 1rem;
    line-height: 1;
  }
}

.p-htl-breakfast-feature__main-text h3 {
  margin-top: 0.625rem;
  font-size: 1.25rem;
  line-height: 1;
  letter-spacing: 0.06em;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .p-htl-breakfast-feature__main-text h3 {
    margin-top: 1rem;
    font-size: 2.25rem;
    line-height: 1.1111111111;
  }
}

.p-htl-breakfast-feature__wrap {
  margin-top: 2.5rem;
}
@media screen and (min-width: 768px) {
  .p-htl-breakfast-feature__wrap {
    margin-top: 5rem;
  }
}

.p-htl-breakfast-feature__box {
  padding-bottom: 2.3125rem;
  border-bottom: solid 1px #d9d9d9;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.5rem;
}
@media screen and (min-width: 768px) {
  .p-htl-breakfast-feature__box {
    padding-bottom: 3.25rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 3.125rem;
  }
}

@media screen and (min-width: 768px) {
  .p-htl-breakfast-feature__box--reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
}

.p-htl-breakfast-feature__box:not(:first-child) {
  margin-top: 2.3125rem;
}
@media screen and (min-width: 768px) {
  .p-htl-breakfast-feature__box:not(:first-child) {
    margin-top: 1.25rem;
    padding-top: 1.5625rem;
  }
}

.p-htl-breakfast-feature__box-img {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .p-htl-breakfast-feature__box-img {
    width: 41.5094339623%;
  }
}

.p-htl-breakfast-feature__box-img img {
  width: 100%;
  aspect-ratio: 440/280;
  -o-object-fit: cover;
     object-fit: cover;
}

@media screen and (min-width: 768px) {
  .p-htl-breakfast-feature__box-body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 53.7735849057%;
  }
}

.p-htl-breakfast-feature__title {
  margin-top: 0;
}
@media screen and (min-width: 768px) {
  .p-htl-breakfast-feature__title {
    margin-top: 0.625rem;
  }
}

.p-htl-breakfast-feature__title--point {
  position: relative;
  display: block;
  font-family: "Open Sans", sans-serif;
  font-size: 0.8125rem;
  line-height: 1.2307692308;
  letter-spacing: 0.03em;
  font-weight: 700;
  text-transform: capitalize;
  color: #60000A;
}

.p-htl-breakfast-feature__title--point::before {
  content: "";
  position: absolute;
  bottom: -0.5625rem;
  width: 1.25rem;
  height: 1px;
  background-color: #60000A;
}
.p-htl-breakfast-feature__title--title {
  margin-top: 1.375rem;
  display: block;
  font-size: 1.125rem;
  line-height: 1.6;
  letter-spacing: 0.06em;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .p-htl-breakfast-feature__title--title {
    margin-top: 1.5625rem;
    font-size: 1.25rem;
    display: block;
    line-height: 1.6;
    letter-spacing: 0.1em;
  }
}

.p-htl-breakfast-feature__text p {
  margin-top: 1.25rem;
  font-size: 0.875rem;
  line-height: 1.7142857143;
  letter-spacing: 0.03em;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .p-htl-breakfast-feature__text p {
    font-size: 0.9375rem;
    line-height: 2;
    letter-spacing: 0.06em;
  }
}

.p-htl-breakfast-limit {
  background-color: #F3F2EE;
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .p-htl-breakfast-limit {
    padding-bottom: 12.5rem;
  }
}

.p-htl-breakfast-limit__inner {
  position: relative;
  max-width: 84.875rem;
  background-color: #F5E7B0;
}
@media screen and (min-width: 768px) {
  .p-htl-breakfast-limit__inner {
    max-width: 75rem;
    padding-right: 1.25rem;
    margin-inline: auto;
  }
}

.p-htl-breakfast-limit__inner::before {
  content: "";
  position: absolute;
  display: inline-block;
  background: url(../images/tokushima/hotel-breakfast-limit-bg.webp) center/cover no-repeat;
  height: 34.1875rem;
  width: 43.75rem;
  display: inline-block;
  top: 0;
  right: -11.25rem;
}
@media screen and (min-width: 768px) {
  .p-htl-breakfast-limit__inner::before {
    content: "";
    position: absolute;
    display: inline-block;
    height: 100%;
    width: 43.75rem;
    background: url(../images/tokushima/hotel-breakfast-limit-bg.webp) center/cover no-repeat;
    top: 0;
    right: 0;
  }
}

.p-htl-breakfast-limit__inner--sp {
  padding-left: 1.875rem;
  padding-right: 1.875rem;
}
@media screen and (min-width: 1024px) {
  .p-htl-breakfast-limit__inner--sp {
    padding-left: 0;
    padding-right: 7.875rem;
  }
}

.p-htl-breakfast-limit__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  gap: 1.0625rem;
  position: relative;
  z-index: 2;
}
@media screen and (min-width: 768px) {
  .p-htl-breakfast-limit__wrapper {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 3.4375rem;
  }
}

.p-htl-breakfast-limit__img {
  width: 100%;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .p-htl-breakfast-limit__img {
    width: 76%;
  }
}

.p-htl-breakfast-limit__img img {
  width: 100%;
  height: 100%;
  aspect-ratio: 631/556;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (min-width: 768px) {
  .p-htl-breakfast-limit__img img {
    aspect-ratio: 630/547;
  }
}

.p-htl-breakfast-limit__body {
  margin-top: 4.375rem;
}
@media screen and (min-width: 768px) {
  .p-htl-breakfast-limit__body {
    margin-top: 1.875rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}

.p-htl-breakfast-limit__box-text img {
  display: none;
}
@media screen and (min-width: 768px) {
  .p-htl-breakfast-limit__box-text img {
    display: block;
    max-width: 25.9375rem;
    aspect-ratio: 415/93;
  }
}

.p-htl-breakfast-limit__box-text-sp img {
  max-width: 19.6875rem;
  aspect-ratio: 315/89;
}
@media screen and (min-width: 768px) {
  .p-htl-breakfast-limit__box-text-sp img {
    display: none;
  }
}

.p-htl-breakfast-limit__box {
  background-color: #ffffff;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

.p-htl-breakfast-limit__box:nth-child(n+2) {
  margin-top: 0.4375rem;
}
@media screen and (min-width: 768px) {
  .p-htl-breakfast-limit__box:nth-child(n+2) {
    margin-top: 0.875rem;
  }
}

.p-htl-breakfast-feature__box:last-child {
  border-bottom: 0;
  border-bottom: initial;
}

.p-htl-breakfast-limit__title1 {
  padding: 0.1875rem 0.6875rem 0.125rem;
  display: inline-block;
  background: -webkit-gradient(linear, left top, left bottom, from(#DA9307), color-stop(50%, #E8CF76), to(#DA9307));
  background: linear-gradient(180deg, #DA9307 0%, #E8CF76 50%, #DA9307 100%);
  background-clip: text;
  color: transparent;
  white-space: nowrap;
  font-size: 1.375rem;
  line-height: 1.6363636364;
  letter-spacing: 0.03em;
  font-weight: 600;
}
@media screen and (min-width: 768px) {
  .p-htl-breakfast-limit__title1 {
    padding: 0.3125rem 0.9375rem 0.5rem;
    font-size: 1.75rem;
    line-height: 1;
  }
}

.p-htl-breakfast-limit__text {
  padding: 0 0.625rem;
  margin-top: 1.875rem;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8571428571;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
  .p-htl-breakfast-limit__text {
    padding-right: 0;
    padding-right: initial;
    padding-left: 0;
    padding-left: initial;
    margin-top: 1.0625rem;
    font-size: 0.875rem;
    line-height: 2.2142857143;
  }
}

.p-htl-breakfast__heading {
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-htl-breakfast__heading::before {
    content: "";
    position: absolute;
    display: inline-block;
    background-color: #F3F2EE;
    height: 9.75rem;
    width: 100%;
    display: inline-block;
    bottom: 0;
    right: 0;
    z-index: -1;
  }
}

.p-htl-breakfast__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.625rem;
}
@media screen and (min-width: 768px) {
  .p-htl-breakfast__wrapper {
    -webkit-box-align: initial;
        -ms-flex-align: initial;
            align-items: initial;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 1.25rem;
  }
}

.p-htl-breakfast__box {
  width: 16.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1rem;
  padding: 1.125rem 1.6875rem 0.8125rem;
  border: solid 1px #d9d9d9;
  border-radius: 0.3125rem;
}
@media screen and (min-width: 768px) {
  .p-htl-breakfast__box {
    width: 18.75rem;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 1.25rem 0.6875rem 1.1875rem;
  }
}
@media screen and (min-width: 1024px) {
  .p-htl-breakfast__box {
    padding: 1.375rem 2rem 1.5rem;
  }
}

.p-htl-breakfast__box-img.deco01 {
  max-width: 3.0625rem;
  aspect-ratio: 49/49;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-htl-breakfast__box-img.deco03 {
  max-width: 3.0625rem;
  aspect-ratio: 49/53;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-htl-breakfast__title--sub {
  display: block;
  font-size: 0.8125rem;
  font-weight: 400;
  line-height: 1.7692307692;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 768px) {
  .p-htl-breakfast__title--sub {
    font-size: 0.875rem;
    font-weight: 500;
    line-height: 1.9285714286;
  }
}

.p-htl-breakfast__title__main {
  margin-top: 0.1875rem;
  display: block;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.0666666667;
  color: #60000A;
  letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
  .p-htl-breakfast__title__main {
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0.03em;
  }
}

.p-htl-breakfast__title__main .small {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.7142857143;
  color: #60000A;
  letter-spacing: 0.03em;
}

@media screen and (min-width: 768px) {
  .p-htl-breakfast__sub-inner {
    max-width: 75rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    margin-inline: auto;
  }
}

.p-htl-breakfast__first-img {
  margin-top: 3.75rem;
}
@media screen and (min-width: 768px) {
  .p-htl-breakfast__first-img {
    margin-top: 6.25rem;
  }
}

.p-htl-breakfast__first-img img {
  width: 100vw;
  aspect-ratio: 375/240;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (min-width: 768px) {
  .p-htl-breakfast__first-img img {
    max-width: 75rem;
    aspect-ratio: 1200/530;
  }
}

.p-htl-breakfast-tokushima__inner {
  text-align: center;
  margin-top: 1.875rem;
  max-width: 53.125rem;
  padding-right: 1.5625rem;
  padding-left: 1.875rem;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .p-htl-breakfast-tokushima__inner {
    margin-top: 4.375rem;
    padding-right: 1.5625rem;
    padding-left: 1.5625rem;
  }
}

.p-htl-breakfast-tokushima__content {
  white-space: nowrap;
  margin-top: 1.25rem;
  font-size: 0.875rem;
  line-height: 2.1428571429;
  letter-spacing: 0.06em;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .p-htl-breakfast-tokushima__content {
    margin-top: 1.875rem;
    font-size: 0.9375rem;
    line-height: 2;
  }
}

.p-htl-breakfast-tokushima__strong {
  margin-left: 0.4375rem;
  font-size: 1.125rem;
  line-height: 1.4444444444;
  letter-spacing: 0.06em;
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .p-htl-breakfast-tokushima__strong {
    font-size: 1.3125rem;
    line-height: 1.2380952381;
  }
}

.p-htl-breakfast-tokushima__yen {
  font-size: 0.6875rem;
  line-height: 2.3636363636;
  letter-spacing: 0.06em;
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .p-htl-breakfast-tokushima__yen {
    font-size: 0.9375rem;
    line-height: 1.7333333333;
  }
}

.p-htl-breakfast-tokushima__tax {
  font-size: 0.6875rem;
  line-height: 2.1666666667;
  letter-spacing: 0.03em;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .p-htl-breakfast-tokushima__tax {
    font-size: 0.9375rem;
    line-height: 1.7333333333;
  }
}

.p-htl-breakfast-tokushima__content__attention {
  margin-top: 1.25rem;
  font-size: 0.6875rem;
  line-height: 2.1818181818;
  letter-spacing: 0.06em;
  font-weight: 400;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .p-htl-breakfast-tokushima__content__attention {
    margin-top: 0.125rem;
    font-size: 0.8125rem;
    line-height: 1.8461538462;
  }
}

.p-hotelcolor {
  color: #E77415;
  position: relative;
}

.p-hotelcolor__point {
  color: #E77415;
  position: relative;
}

.p-hotelcolor__point::before {
  content: "";
  position: absolute;
  bottom: -0.5625rem;
  width: 1.25rem;
  height: 1px;
  background-color: #E77415;
}

.p-htl-facility-attention {
  background-color: #F6F6F6;
  padding-bottom: 5rem;
}
@media screen and (min-width: 768px) {
  .p-htl-facility-attention {
    padding-top: 1.25rem;
    padding-bottom: 0;
  }
}

.p-htl-facility-attention__inner {
  margin-inline: auto;
  max-width: 51.5625rem;
  background-color: #F6F6F6;
}
@media screen and (min-width: 768px) {
  .p-htl-facility-attention__inner {
    padding: 1.875rem 1.875rem 10rem;
  }
}

.p-htl-facility-attention__title {
  text-align: center;
}

.p-htl-facility-attention__title strong {
  display: block;
  font-size: 0.875rem;
  font-weight: 500;
  color: #96002C;
  line-height: 1.1428571429;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
  .p-htl-facility-attention__title strong {
    display: block;
    font-size: 1rem;
    line-height: 1;
  }
}

.p-htl-facility-attention__title h4 {
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
  .p-htl-facility-attention__title h4 {
    font-size: 1.375rem;
    font-weight: 500;
    line-height: 1.8181818182;
    letter-spacing: 0.06em;
  }
}

.p-htl-facility-attention__box {
  margin-top: 1.25rem;
}
@media screen and (min-width: 768px) {
  .p-htl-facility-attention__box {
    margin-top: 3.75rem;
  }
}

.p-htl-facility-attention__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  border-top: solid 1px #D9D9D9;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
}
@media screen and (min-width: 768px) {
  .p-htl-facility-attention__wrapper {
    padding: 1.5rem 1.5rem 1.5rem 0;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 5.8125rem;
  }
}

.p-htl-facility-attention__wrapper:nth-of-type(n+2) {
  border-bottom: solid 1px #D9D9D9;
}

.p-htl-facility-attention__left {
  text-align: center;
  width: 100%;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media screen and (min-width: 768px) {
  .p-htl-facility-attention__left {
    width: 12%;
  }
}

.p-htl-facility-attention__left p {
  font-weight: 700;
  font-size: 0.875rem;
  line-height: 2.1428571429;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
  .p-htl-facility-attention__left p {
    font-weight: 600;
    font-size: 1rem;
    line-height: 1.875;
    letter-spacing: 0.06em;
  }
}

.p-htl-facility-attention__inner {
  max-width: 50rem;
  padding-right: 1.5625rem;
  padding-left: 1.625rem;
  margin-inline: auto;
}

.p-htl-facility-attention__list {
  margin-top: 1.25rem;
}
@media screen and (min-width: 768px) {
  .p-htl-facility-attention__list {
    margin-top: 0;
  }
}

.p-htl-facility-attention__item {
  display: grid;
  grid-template-columns: 0.75rem 1fr;
  gap: 0.25rem;
  font-weight: 400;
  font-size: 0.875rem;
  line-height: 1.7857142857;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
  .p-htl-facility-attention__item {
    gap: 0.375rem;
    font-size: 0.9375rem;
    line-height: 1.6666666667;
  }
}

.p-htl-facility-attention__item:before {
  content: "";
  display: inline-block;
  width: 0.8125rem;
  aspect-ratio: 1/1;
  background-color: #96002C;
  border-radius: 50%;
  margin-top: 0.375rem;
}
@media screen and (min-width: 768px) {
  .p-htl-facility-attention__item:before {
    width: 0.875rem;
  }
}

.p-htl-facility-attention__item:not(:first-child) {
  margin-top: 1rem;
}

.p-htl-facility-attention__item-attention {
  color: #5B5B5B;
  padding-left: 0.9375rem;
  font-size: 0.875rem;
  line-height: 1.7857142857;
  letter-spacing: 0.06em;
}

.p-htl-facility-attention__item-more {
  text-indent: -1em;
  padding-left: 1em;
  display: block;
  color: #5B5B5B;
  padding-left: 0.9375rem;
  font-size: 0.875rem;
  line-height: 1.7857142857;
  letter-spacing: 0.06em;
}
.p-htl-facility-attention__right-more {
  font-weight: 400;
  font-size: 0.8125rem;
  line-height: 1.8461538462;
  letter-spacing: 0.06em;
}

.p-htl-facility-attention__right-text {
  font-size: 0.875rem;
  line-height: 1.6;
  font-weight: 400;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
  .p-htl-facility-attention__right-text {
    font-size: 0.9375rem;
    line-height: 1.6;
  }
}

.p-htl-facility-goods {
  padding: 5rem 1.25rem;
  background-color: #F6F6F6;
}
@media screen and (min-width: 768px) {
  .p-htl-facility-goods {
    padding-top: 7.5rem;
    padding-bottom: 3.75rem;
    padding-right: 0;
    padding-left: 0;
  }
}

.p-htl-facility-goods__container {
  margin-top: 2.5rem;
  padding: 0 1.25rem;
  max-width: 50rem;
  margin-inline: auto;
  background-color: #ffffff;
  border-radius: 0.625rem;
}
@media screen and (min-width: 768px) {
  .p-htl-facility-goods__container {
    padding: 1.875rem 2.5rem;
  }
}

.p-htl-facility-goods__wrapper {
  padding-top: 1.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding-bottom: 1.3125rem;
}
@media screen and (min-width: 768px) {
  .p-htl-facility-goods__wrapper {
    padding: 1.875rem;
    gap: 4.375rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}

.p-htl-facility-goods__wrapper:not(:last-child) {
  border-bottom: solid 1px #D9D9D9;
}

.p-htl-facility-goods__left {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  text-align: center;
  padding-bottom: 0.625rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media screen and (min-width: 768px) {
  .p-htl-facility-goods__left {
    display: inline;
    display: initial;
    -webkit-box-align: initial;
        -ms-flex-align: initial;
            align-items: initial;
    -webkit-box-pack: initial;
        -ms-flex-pack: initial;
            justify-content: initial;
    text-align: left;
    padding-bottom: 0;
    width: 14%;
  }
}

.p-htl-facility-goods__left p {
  font-weight: 700;
  font-size: 0.875rem;
  line-height: 2.1428571429;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
  .p-htl-facility-goods__left p {
    font-weight: 500;
    font-size: 1rem;
    line-height: 2;
  }
}

.p-facility-goods__inner {
  max-width: 50rem;
  padding-right: 1.5625rem;
  padding-left: 1.625rem;
  margin-inline: auto;
}

.p-htl-facility-goods__right p {
  font-weight: 400;
  font-size: 0.875rem;
  line-height: 1.7142857143;
  letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
  .p-htl-facility-goods__right p {
    font-size: 0.9375rem;
    line-height: 2;
    letter-spacing: 0.06em;
  }
}

.p-htl-facility-goods__right-text {
  font-weight: 400;
  font-size: 0.875rem;
  line-height: 1.7142857143;
  letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
  .p-htl-facility-goods__right-text {
    font-size: 0.9375rem;
    line-height: 2;
    letter-spacing: 0.06em;
  }
}

.p-htl-facility-goods__small {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .p-htl-facility-goods__small {
    text-align: left;
  }
}

.p-htl-facility-goods__right-attention {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
  margin-top: 1.25rem;
  padding: 0.375rem 0.75rem;
  font-size: 0.8125rem;
  color: #96002C;
  line-height: 1.3;
  letter-spacing: 0.06em;
  border: solid 0.5px #96002C;
  border-radius: 0.25rem;
  font-weight: 400;
  text-align: left;
}
@media screen and (min-width: 768px) {
  .p-htl-facility-goods__right-attention {
    text-align: left;
    max-width: 100%;
    padding: 0.1875rem 0.75rem;
    text-align: center;
  }
}

.p-htl-facility-goods__small {
  margin-top: 0.625rem;
  line-height: 2;
}
@media screen and (min-width: 768px) {
  .p-htl-facility-goods__small {
    margin-top: 0;
  }
}

.p-htl-facility-goods__right-more {
  margin-top: 0.625rem;
  font-weight: 400;
  font-size: 0.8125rem;
  line-height: 1.5384615385;
}
@media screen and (min-width: 768px) {
  .p-htl-facility-goods__right-more {
    margin-top: 0.1875rem;
    line-height: 1.8461538462;
    letter-spacing: 0.06em;
  }
}

.p-htl-facility-policy {
  margin-top: 1.25rem;
}
@media screen and (min-width: 768px) {
  .p-htl-facility-policy {
    margin-top: 3.75rem;
  }
}

.p-htl-facility-policy__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.25rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 768px) {
  .p-htl-facility-policy__title {
    gap: 1.875rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}

.p-htl-facility-policy__table {
  margin-top: 0.625rem;
}

.p-htl-facility-policy__title h4 {
  font-weight: 700;
  font-size: 0.875rem;
  line-height: 2.1428571429;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
  .p-htl-facility-policy__title h4 {
    font-size: 1rem;
    line-height: 1.875;
    letter-spacing: 0.06em;
    font-weight: 500;
  }
}

.p-htl-facility-policy__title p {
  font-size: 0.75rem;
  color: #96002C;
  line-height: 2.5;
  letter-spacing: 0.06em;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .p-htl-facility-policy__title p {
    font-size: 0.875rem;
    line-height: 2.1428571429;
  }
}

.p-htl-facility-policy__table table {
  width: 100%;
  border-collapse: collapse;
}

.p-htl-facility-policy__table tr {
  text-align: left;
}

.p-htl-facility-policy__table th {
  padding: 0.3125rem 1.25rem;
  width: 9.25rem;
  border: 1px solid #D9D9D9;
  background-color: #ECECEC;
  font-weight: 700;
  font-size: 0.875rem;
  line-height: 2.1428571429;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
  .p-htl-facility-policy__table th {
    padding: 0.625rem 2.5rem;
    width: 16.25rem;
    font-size: 1rem;
    line-height: 1.875;
    font-weight: 500;
  }
}

.p-htl-facility-policy__table td {
  padding: 0.3125rem 1.25rem;
  font-size: 0.8125rem;
  font-weight: 400;
  line-height: 2.3076923077;
  border: 1px solid #D9D9D9;
  letter-spacing: 0.06em;
  background-color: #ffffff;
}
@media screen and (min-width: 768px) {
  .p-htl-facility-policy__table td {
    padding: 0.625rem 2.5rem;
    font-size: 0.9375rem;
    line-height: 2;
  }
}

.p-htl-facility {
  padding-bottom: 5rem;
}
@media screen and (min-width: 768px) {
  .p-htl-facility {
    padding-top: 3.75rem;
    padding-bottom: 7.5rem;
  }
}

.p-htl-facility__inner {
  max-width: 78.125rem;
  padding-right: 1.875rem;
  padding-left: 1.875rem;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .p-htl-facility__inner {
    padding-right: 1.5625rem;
    padding-left: 1.5625rem;
  }
}

.p-htl-facility__lists {
  display: grid;
  gap: 2.5rem 3.1875rem;
}
@media screen and (min-width: 768px) {
  .p-htl-facility__lists {
    gap: 5rem 3.1875rem;
  }
}
@media screen and (min-width: 768px) {
  .p-htl-facility__lists {
    margin-top: 0;
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (min-width: 1024px) {
  .p-htl-facility__lists {
    margin-top: 0;
    grid-template-columns: repeat(3, 1fr);
  }
}

.p-htl-facility__list {
  list-style: none;
  z-index: 1;
}

.p-htl-facility__img img {
  width: 100%;
  height: 100%;
  aspect-ratio: 366/250;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-htl-facility__body {
  margin-top: 1.25rem;
}
@media screen and (min-width: 768px) {
  .p-htl-facility__body {
    margin-top: 0.875rem;
  }
}

.p-htl-facility__title {
  margin-top: 0.125rem;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
  .p-htl-facility__title {
    margin-top: 0.125rem;
    font-weight: 500;
    line-height: 2.2222222222;
  }
}

.p-htl-facility__text {
  margin-top: 0.625rem;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.7142857143;
  letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
  .p-htl-facility__text {
    margin-top: 0.375rem;
    font-size: 0.9375rem;
    line-height: 2;
    letter-spacing: 0.06em;
  }
}

.p-htl-facility__btn {
  margin-top: 1.25rem;
  text-align: center;
}

.p-htl-facility-flex {
  margin-top: 1.125rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 1.875rem;
  padding-bottom: 1rem;
  border-bottom: solid 0.5px #878787;
}
@media screen and (min-width: 768px) {
  .p-htl-facility-flex {
    margin-top: 1.8125rem;
    -webkit-box-align: initial;
        -ms-flex-align: initial;
            align-items: initial;
  }
}

.p-htl-facility-flex:nth-of-type(n+2) {
  margin-top: 1rem;
}
@media screen and (min-width: 768px) {
  .p-htl-facility-flex:nth-of-type(n+2) {
    margin-top: 1.375rem;
  }
}

.p-htl-facility-flex__left {
  width: 22%;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-left: 0.625rem;
}

.p-htl-facility-flex__left p {
  font-weight: 500;
  font-size: 0.875rem;
  line-height: 1.9285714286;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 768px) {
  .p-htl-facility-flex__left p {
    font-size: 1rem;
    line-height: 1.6875;
  }
}

@media screen and (min-width: 768px) {
  .p-htl-facility-flex__right--flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1.25rem;
  }
}

.p-htl-facility-flex__right p {
  font-weight: 400;
  font-size: 0.875rem;
  line-height: 1.9285714286;
}
@media screen and (min-width: 768px) {
  .p-htl-facility-flex__right p {
    font-size: 0.9375rem;
    line-height: 1.8;
  }
}

.p-htl-lower-mv {
  position: relative;
  text-align: center;
  background: url(../images/tokushima/hotel-mv-room-sp.webp) no-repeat center/cover;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 14.375rem;
}
@media screen and (min-width: 768px) {
  .p-htl-lower-mv {
    background: url(../images/tokushima/hotel-mv-room-bg.webp) no-repeat center/cover;
    padding-top: 0;
    width: 100%;
    height: 31.25rem;
  }
}

.p-htl-lower-mv::before {
  content: "";
  position: absolute;
  display: inline-block;
  background-color: rgba(0, 0, 0, .2);
  height: 100%;
  width: 100%;
  top: 0px;
  left: 0px;
}

.c-htl-section-title {
  text-align: center;
}

.p-htl-lower-mv h2 {
  position: relative;
  z-index: 2;
}

.p-htl-lower-mv-title__sub {
  font-family: "Open Sans", sans-serif;
  text-align: center;
  font-size: 2.25rem;
  color: #ffffff;
  line-height: 1.42;
  font-weight: 400;
  text-transform: capitalize;
}
@media screen and (min-width: 768px) {
  .p-htl-lower-mv-title__sub {
    font-size: 3.125rem;
  }
}

.p-htl-lower-mv-title__main {
  margin-top: 0.125rem;
  display: block;
  font-size: 0.875rem;
  line-height: 1.2142857143;
  color: #ffffff;
  font-weight: 400;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
  .p-htl-lower-mv-title__main {
    font-size: 1rem;
    line-height: 1.1875;
    letter-spacing: 0.06em;
  }
}

.p-htl-lower-mv--breakfast {
  background: url(../images/tokushima/hotel-mv-breakfast-sp.webp) no-repeat center/cover;
}
@media screen and (min-width: 768px) {
  .p-htl-lower-mv--breakfast {
    background: url(../images/tokushima/hotel-mv-breakfast-bg.webp) no-repeat center/cover;
  }
}

.p-htl-lower-mv--facility {
  background: url(../images/tokushima/hotel-mv-facility-sp.webp) no-repeat center/cover;
}
@media screen and (min-width: 768px) {
  .p-htl-lower-mv--facility {
    background: url(../images/tokushima/hotel-mv-facility-bg.webp) no-repeat center/cover;
  }
}

.p-htl-lower-mv--safety {
  background: url(../images/tokushima/hotel-mv-safety-sp.webp) no-repeat center/cover;
}
@media screen and (min-width: 768px) {
  .p-htl-lower-mv--safety {
    background: url(../images/tokushima/hotel-mv-safety-bg.webp) no-repeat center/cover;
  }
}

.p-htl-lower-mv--application {
  background: url(../images/tokushima/hotel-mv-application-sp.webp) no-repeat center/cover;
}
@media screen and (min-width: 768px) {
  .p-htl-lower-mv--application {
    background: url(../images/tokushima/hotel-mv-application-bg.webp) no-repeat center/cover;
  }
}

.p-htl-lower-mv--access {
  background: url(../images/tokushima/hotel-mv-access-sp.webp) no-repeat center/cover;
}
@media screen and (min-width: 768px) {
  .p-htl-lower-mv--access {
    background: url(../images/tokushima/hotel-mv-access-bg.webp) no-repeat center/cover;
  }
}

.p-htl-lower-mv::before {
  background-color: rgba(0, 0, 0, .4);
}
@media screen and (min-width: 768px) {
  .p-htl-lower-mv::before {
    background-color: rgba(0, 0, 0, .3);
  }
}

.p-htl-lower-mv--breakfast::before {
  background-color: rgba(0, 0, 0, .4);
}
@media screen and (min-width: 768px) {
  .p-htl-lower-mv--breakfast::before {
    background-color: rgba(0, 0, 0, .2);
  }
}

.p-htl-lower-mv--facility::before {
  background-color: rgba(0, 0, 0, .3);
}
@media screen and (min-width: 768px) {
  .p-htl-lower-mv--facility::before {
    background-color: rgba(0, 0, 0, .2);
  }
}

.p-htl-lower-mv--safety::before {
  background-color: rgba(0, 0, 0, .3);
}
@media screen and (min-width: 768px) {
  .p-htl-lower-mv--safety::before {
    background-color: rgba(0, 0, 0, .2);
  }
}

.p-htl-lower-mv--application::before {
  background-color: rgba(0, 0, 0, .3);
}
@media screen and (min-width: 768px) {
  .p-htl-lower-mv--application::before {
    background-color: rgba(0, 0, 0, .2);
  }
}

.p-htl-lower-mv--access::before {
  background-color: rgba(0, 0, 0, .4);
}
@media screen and (min-width: 768px) {
  .p-htl-lower-mv--access::before {
    background-color: rgba(0, 0, 0, .4);
  }
}

.p-htl-lower-mv--access-echihisa {
  background: url(../images/echihisa/hotel-mv-access-bg.webp) no-repeat center/cover;
}
@media screen and (min-width: 768px) {
  .p-htl-lower-mv--access-echihisa {
    background: url(../images/echihisa/hotel-mv-access-bg.webp) no-repeat center/cover;
  }
}

.p-htl-lower-mv--access-echihisa::before {
  background-color: rgba(0, 0, 0, .4);
}
@media screen and (min-width: 768px) {
  .p-htl-lower-mv--access-echihisa::before {
    background-color: rgba(0, 0, 0, .4);
  }
}

.p-htl-lower-mv--access-takamatsu {
  background: url(../images/takamatsu/hotel-mv-access-bg.webp) no-repeat center/cover;
}
@media screen and (min-width: 768px) {
  .p-htl-lower-mv--access-takamatsu {
    background: url(../images/takamatsu/hotel-mv-access-bg.webp) no-repeat center/cover;
  }
}

.p-htl-lower-mv--access-takamatsu::before {
  background-color: rgba(0, 0, 0, .4);
}
@media screen and (min-width: 768px) {
  .p-htl-lower-mv--access-takamatsu::before {
    background-color: rgba(0, 0, 0, .4);
  }
}

.p-htl-lower-mv--access-kanonji {
  background: url(../images/kanonji/hotel-mv-access-bg.webp) no-repeat center/cover;
}
@media screen and (min-width: 768px) {
  .p-htl-lower-mv--access-kanonji {
    background: url(../images/kanonji/hotel-mv-access-bg.webp) no-repeat center/cover;
  }
}

.p-htl-lower-mv--access-kanonji::before {
  background-color: rgba(0, 0, 0, .4);
}
@media screen and (min-width: 768px) {
  .p-htl-lower-mv--access-kanonji::before {
    background-color: rgba(0, 0, 0, .4);
  }
}

.p-htl-lower-mv--access-okayama {
  background: url(../images/okayama/hotel-mv-access-bg.webp) no-repeat center/cover;
}
@media screen and (min-width: 768px) {
  .p-htl-lower-mv--access-okayama {
    background: url(../images/okayama/hotel-mv-access-bg.webp) no-repeat center/cover;
  }
}

.p-htl-lower-mv--access-okayama::before {
  background-color: rgba(0, 0, 0, .4);
}
@media screen and (min-width: 768px) {
  .p-htl-lower-mv--access-okayama::before {
    background-color: rgba(0, 0, 0, .4);
  }
}

.p-htl-lower-mv--access-saijyo {
  background: url(../images/saijyo/hotel-mv-access-bg.webp) no-repeat center/cover;
}

.p-htl-lower-mv--access-saijyo::before {
  background-color: rgba(0, 0, 0, .4);
}

.p-htl-mv {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  height: calc(100vh - 3.5rem);
  width: 100%;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-htl-mv {
    height: calc(100vh - 6.25rem);
  }
}

.p-mv-container {
  position: fixed;
  top: 3.5rem;
  left: 0;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  height: inherit;
}
@media screen and (min-width: 768px) {
  .p-mv-container {
    top: 6.25rem;
    left: 0;
    padding-bottom: 4.1875rem;
  }
}

@media screen and (min-width: 768px) {
  .scrolled {
    padding-bottom: 0;
  }
}

.p-swiper-mv-wrapper .swiper-slide {
  height: auto;
  aspect-ratio: 375/632;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (min-width: 768px) {
  .p-swiper-mv-wrapper .swiper-slide {
    aspect-ratio: 1422/915;
  }
}
.p-swiper-mv-wrapper .swiper-slide img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transform: scale(1.3);
          transform: scale(1.3);
}
.p-swiper-mv-wrapper .swiper-slide-active img,
.p-swiper-mv-wrapper .swiper-slide-duplicate-active img,
.p-swiper-mv-wrapper .swiper-slide-prev img {
  -webkit-animation: zoomUp 13s linear 0s 1 normal both;
          animation: zoomUp 13s linear 0s 1 normal both;
}

@-webkit-keyframes zoomUp {
  0% {
    -webkit-transform: scale(1.3);
            transform: scale(1.3);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

@keyframes zoomUp {
  0% {
    -webkit-transform: scale(1.3);
            transform: scale(1.3);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@media screen and (min-width: 768px) {
  .p-swiper-mv-wrapper.scrolled {
    padding-bottom: 0;
  }
}

.p-htl-mv__img {
  overflow: hidden;
  width: 100%;
  height: 100%;
}
@media screen and (min-width: 768px) {
  .p-htl-mv__img {
    height: 100vh;
    height: 100dvh;
    height: 100%;
  }
}

.p-htl-mv__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-htl-mv__title {
  position: relative;
  padding-left: 3.25rem;
  margin-top: -10.75rem;
}
@media screen and (min-width: 768px) {
  .p-htl-mv__title {
    margin-top: -10.75rem;
    padding-left: 10.0625rem;
  }
}

.p-htl-mv__box {
  z-index: 1;
}
.p-htl-mv__title1 {
  display: block;
  color: #ffffff;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 2.25;
  letter-spacing: 0.28em;
}
@media screen and (min-width: 768px) {
  .p-htl-mv__title1 {
    font-size: 2.1875rem;
    line-height: 2.3142857143;
  }
}

.p-htl-mv__title2 {
  padding-top: 0.625rem;
  display: block;
  color: #ffffff;
  font-size: 1.6875rem;
  font-weight: 600;
  line-height: 1.4814814815;
  letter-spacing: 0.25em;
}
@media screen and (min-width: 768px) {
  .p-htl-mv__title2 {
    padding-top: -0.0625rem;
    font-size: 3rem;
    line-height: 1.5208333333;
  }
}

.p-htl-mv__bunner {
  display: none;
}
@media screen and (min-width: 768px) {
  .p-htl-mv__bunner {
    display: block;
    position: absolute;
    bottom: 6.75rem;
    left: 2.5rem;
    -webkit-transition: 0.4s;
    transition: 0.4s;
    z-index: 6;
  }
}

.p-htl-mv__bunner img {
  display: none;
}
@media screen and (min-width: 768px) {
  .p-htl-mv__bunner img {
    display: block;
    max-width: 26.875rem;
    aspect-ratio: 344/140;
    -o-object-fit: contain;
       object-fit: contain;
  }
}

.p-htl-mv__bunner:hover {
  opacity: 0.7;
}

@media screen and (min-width: 768px) {
  .p-htl-mv__hotel-name {
    display: block;
    position: absolute;
    z-index: 2;
    height: 100%;
    width: 5.625rem;
    right: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    background-color: white;
  }
}

@media screen and (min-width: 768px) {
  .p-htl-mv__hotel-name small {
    display: inline-block;
    position: absolute;
    left: 45%;
    top: 40%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    -webkit-writing-mode: sideways-rl;
        -ms-writing-mode: sideways-rl;
            writing-mode: sideways-rl;
    font-size: 0.625rem;
    color: #d9d9d9;
    line-height: 1.2;
    letter-spacing: 0.06em;
    font-weight: 500;
  }
}

hr {
  clear: both;
  width: 98%;
  height: 0;
  margin: 0;
  padding: 0;
  border: none;
}

.p-htl-reserve {
  background-color: #ffffff;
  position: relative;
  padding-top: 3.75rem;
  z-index: 3;
}
.p-htl-reserve__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding-right: 1.25rem;
  padding-left: 1.25rem;
}
@media screen and (min-width: 768px) {
  .p-htl-reserve__inner {
    display: inline;
    display: initial;
    -webkit-box-orient: initial;
    -webkit-box-direction: initial;
        -ms-flex-direction: initial;
            flex-direction: initial;
    margin-right: 0;
    margin-top: -20.125rem;
  }
}

@media screen and (min-width: 768px) {
  .p-htl-reserve__title {
    display: none;
  }
}

.p-htl-reserve__box {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: 0.5rem;
}
@media screen and (min-width: 768px) {
  .p-htl-reserve__box {
    position: fixed;
    right: 0;
    border: 1px solid #5B5B5B;
  }
}

.p-htl-reserve__box--top {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: 0.5rem;
}
@media screen and (min-width: 768px) {
  .p-htl-reserve__box--top {
    position: absolute;
    right: 2.5rem;
    border: 1px solid black;
    bottom: -80%;
    -webkit-transform: translatey(-100%);
            transform: translatey(-100%);
  }
}

.p-htl-reserve__box--layer {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: fixed;
  right: 0;
  bottom: 17.375rem;
  border: 1px solid #5B5B5B;
  border-right: none;
  border-radius: 0.5rem 0 0 0.5rem;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  z-index: 10;
}

.p-htl-reserve__box--layer.is-hidden {
  -webkit-transform: translateX(32.0625rem);
          transform: translateX(32.0625rem);
}

.p-htl-reserve__box--layer--system2 {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: fixed;
  right: 0;
  bottom: 17.375rem;
  border: 1px solid #5B5B5B;
  border-right: none;
  border-radius: 0.5rem 0 0 0.5rem;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
@media screen and (min-width: 600px) {
  .p-htl-reserve__box--layer--system2.is-hidden {
    -webkit-transform: translateX(34.5rem);
            transform: translateX(34.5rem);
  }
}
@media screen and (min-width: 1024px) {
  .p-htl-reserve__box--layer--system2.is-hidden {
    -webkit-transform: translateX(33rem);
            transform: translateX(33rem);
  }
}

@media screen and (min-width: 768px) {
  .p-htl-reserve__open {
    width: 3.75rem;
    text-align: center;
    -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
    font-size: 1.125rem;
    line-height: 1.3333333333;
    letter-spacing: 0.4em;
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
    padding-left: 1.1875rem;
    padding-right: 1.1875rem;
    color: #ffffff;
    background-color: #222222;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    border-radius: 0.3125rem 0 0 0.3125rem;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    font-weight: 400;
  }
}

@media screen and (min-width: 768px) {
  .p-htl-reserve__open--black {
    border: 1px #222222;
  }
}

.p-htl-reserve__arrow {
  position: relative;
}

.p-htl-reserve__arrow::after {
  content: "";
  display: inline-block;
  width: 1.4375rem;
  height: 0.5rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  background: url(../images/common/arrows.svg) no-repeat center/contain;
}

.p-htl-reserve__form {
  margin-top: 2.5rem;
  background-color: #F6F6F6;
  padding: 1.75rem 1.25rem;
  border-radius: 0.5rem;
  max-width: 20.9375rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .p-htl-reserve__form {
    width: auto;
    width: initial;
    margin-top: 0;
    background-color: #ffffff;
    max-width: 33.0625rem;
    border-radius: 0 0.5rem 0.5rem 0;
    padding-top: 1.875rem;
    padding-left: 1.625rem;
    padding-right: 1.625rem;
    padding-bottom: 1.3125rem;
  }
}

.p-htl-reserve__form--system2 {
  min-width: 0;
  min-width: initial;
}
@media screen and (min-width: 600px) {
  .p-htl-reserve__form--system2 {
    min-width: 310px;
    padding-right: unset;
    padding-left: 0.5rem;
  }
}
@media screen and (min-width: 1024px) {
  .p-htl-reserve__form--system2 {
    min-width: 21.875rem;
    max-width: 33.0625rem;
    padding-right: 0;
    padding-left: 0;
  }
}

.p-htl-reserve__form-day-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.25rem;
}

.booking {
  font-size: 0.75rem;
  line-height: 1.1666666667;
  letter-spacing: 0.06em;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .booking {
    font-size: 0.9375rem;
    line-height: 1.2;
    font-weight: 400;
  }
}

.p-htl-reserve__form-mitei-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.3125rem;
}

.p-htl-reserve__form input[type=checkbox] {
  border: 1px solid #5B5B5B;
  background-color: #F6F6F6;
  width: 0.875rem;
  aspect-ratio: 1/1;
  border-radius: 0.125rem;
  margin: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media screen and (min-width: 768px) {
  .p-htl-reserve__form input[type=checkbox] {
    width: 0.6875rem;
  }
}

.p-htl-reserve__form-mitei-label {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.75rem;
  color: #5b5b5b;
  line-height: 1.1666666667;
  letter-spacing: 0.06em;
  font-weight: 500;
}

.p-htl-reserve__form-day-body {
  margin-top: 0.875rem;
}

.p-htl-reserve__form-day-body-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.6875rem;
}
@media screen and (min-width: 768px) {
  .p-htl-reserve__form-day-body-container {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}

.p-htl-reserve__form-day-body-input-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.6875rem;
}

.p-htl-reserve__form-day-body-input-label {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 0.1875rem;
  font-size: 0.75rem;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.1666666667;
  letter-spacing: 0.06em;
  font-weight: 400;
}

.p-htl-reserve__input--lg {
  font-size: 1rem;
  line-height: 1.1875;
  letter-spacing: 0.06em;
  font-weight: 400;
  font-family: "Noto Sans JP", sans-serif;
  padding: 0.5rem;
  width: 5.125rem;
  border: 0.72px solid #878787;
  background-color: #ffffff;
  text-align: center;
  border-radius: 0.25rem;
}
@media screen and (min-width: 768px) {
  .p-htl-reserve__input--lg {
    border: 0.5px solid #878787;
    padding: 0.5625rem 0.8125rem;
    width: 5rem;
  }
}

.p-htl-reserve__input {
  font-size: 1rem;
  line-height: 1.1875;
  letter-spacing: 0.06em;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  padding: 0.5rem 0.9375rem;
  width: 5rem;
  border: 0.72px solid #878787;
  text-align: center;
  width: 4.375rem;
  background-color: #ffffff;
  border-radius: 0.25rem;
}
@media screen and (min-width: 768px) {
  .p-htl-reserve__input {
    border: 0.5px solid #878787;
    width: 3.125rem;
    padding: 0.5625rem 0.8125rem;
  }
}

.p-htl-reserve__form-day-body-select-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 0.6875rem;
}

.p-htl-reserve__form-day-body-select-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 0.1875rem;
  font-size: 0.75rem;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.1666666667;
  letter-spacing: 0.06em;
  font-weight: 400;
}

.p-htl-reserve__form-day-body-select-label {
  display: inline-block;
  position: relative;
}

.p-htl-reserve__form-day-body-select-label::before {
  content: "";
  display: inline-block;
  width: 0.4375rem;
  aspect-ratio: 7/6;
  background-color: #222;
  position: absolute;
  top: 50%;
  right: 0.6875rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-clip-path: polygon(50% 100%, 0 0, 100% 0);
          clip-path: polygon(50% 100%, 0 0, 100% 0);
}
@media screen and (min-width: 768px) {
  .p-htl-reserve__form-day-body-select-label::before {
    right: 0.3875rem;
  }
}

.p-htl-reserve__form-day-body-select-label::after {
  content: "";
  display: inline-block;
  width: 0.5px;
  height: 100%;
  background-color: #878787;
  position: absolute;
  top: 0;
  right: 1.8125rem;
}
@media screen and (min-width: 768px) {
  .p-htl-reserve__form-day-body-select-label::after {
    width: 0.5px;
    right: 1.125rem;
  }
}

.p-htl-reserve__form-day-body-select-label select {
  width: 5.125rem;
  border: 0.72px solid #878787;
  background-color: #ffffff;
  text-align: center;
  -moz-text-align-last: center;
       text-align-last: center;
  font-size: 1rem;
  line-height: 1.1875;
  letter-spacing: 0.06em;
  font-weight: 400;
  font-family: "Noto Sans JP", sans-serif;
  padding: 0.5rem 2.45rem 0.5rem 0.75rem;
  border-radius: 0.25rem;
  color: #222222;
}
@media screen and (min-width: 768px) {
  .p-htl-reserve__form-day-body-select-label select {
    border: 0.5px solid #878787;
    padding: 0 0.9375rem 0 0;
    width: 3.125rem;
    height: 2.5rem;
  }
}

.p-htl-reserve__form-ninzu {
  margin-top: 1.125rem;
}

.p-htl-reserve__form-ninzu-wrap {
  margin-left: 0.4375rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0.625rem;
}

.p-htl-reserve__form input[type=checkbox] {
  border: 1px solid #5B5B5B;
  background-color: #ffffff;
  width: 0.875rem;
  aspect-ratio: 1/1;
  border-radius: 0.125rem;
  margin: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

.p-htl-reserve__form-ninzu-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.625rem;
}

.p-htl-reserve__form-ninzu-head--sm {
  font-size: 0.75rem;
  line-height: 1.1666666667;
  letter-spacing: 0.06em;
  font-weight: 350;
}
@media screen and (min-width: 768px) {
  .p-htl-reserve__form-ninzu-head--sm {
    font-size: 0.9375rem;
    line-height: 1.2;
  }
}

.p-htl-reserve__form-ninzu-label {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.75rem;
  color: #5b5b5b;
  line-height: 1.1666666667;
  letter-spacing: 0.06em;
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  .p-htl-reserve__form-ninzu-body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 8.125rem;
  }
}

.p-htl-reserve__form-ninzu-body-select-container {
  margin-top: 0.875rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 0.1875rem;
  font-size: 0.75rem;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.1666666667;
  letter-spacing: 0.06em;
  font-weight: 400;
}

@media screen and (min-width: 768px) {
  .p-htl-reserve__form-ninzu-body-head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1.3125rem;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}

.p-htl-reserve__form-ninzu-body-head-select-label {
  display: inline-block;
  position: relative;
}

.p-htl-reserve__form-ninzu-body-head-select-label::before {
  content: "";
  display: inline-block;
  width: 0.4375rem;
  aspect-ratio: 7/6;
  background-color: #222;
  position: absolute;
  top: 50%;
  right: 0.6875rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-clip-path: polygon(50% 100%, 0 0, 100% 0);
          clip-path: polygon(50% 100%, 0 0, 100% 0);
  z-index: 1;
}

.p-htl-reserve__form-ninzu-body-head-select-label::after {
  content: "";
  display: inline-block;
  width: 0.5px;
  height: 100%;
  background-color: #878787;
  position: absolute;
  top: 0;
  right: 1.8125rem;
}
@media screen and (min-width: 768px) {
  .p-htl-reserve__form-ninzu-body-head-select-label::after {
    width: 0.5px;
  }
}

.p-htl-reserve__form-ninzu-body-select-otona {
  position: relative;
}

.p-htl-reserve__form-ninzu-body-select-otona::before {
  content: "大人";
  position: absolute;
  left: 0.625rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  font-size: 0.6875rem;
  letter-spacing: 0.06em;
  font-weight: 400;
  color: #222;
  z-index: 2;
}

.p-htl-reserve__form-ninzu-body-head-select-label select {
  width: 6.4375rem;
  border: 0.72px solid #878787;
  background-color: #ffffff;
  text-align: center;
  -moz-text-align-last: center;
       text-align-last: center;
  font-size: 1rem;
  line-height: 1.1875;
  letter-spacing: 0.06em;
  font-weight: 400;
  font-family: "Noto Sans JP", sans-serif;
  padding: 0.5rem 2.35rem 0.5rem 2.375rem;
  text-align: center;
  border-radius: 0.25rem;
  color: #222222;
}
@media screen and (min-width: 768px) {
  .p-htl-reserve__form-ninzu-body-head-select-label select {
    border: 0.5px solid #878787;
    width: 6.4375rem;
    height: 2.5rem;
  }
}

#searchtypearea {
  display: none;
}

.p-reserve__form-btn-wrap {
  margin-top: 1.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.625rem;
}
@media screen and (min-width: 768px) {
  .p-reserve__form-btn-wrap {
    margin-top: 0.125rem;
  }
}

.p-reserve__form-btn-search {
  min-width: 18.4375rem;
  text-align: center;
  background-color: #60000A;
  color: #fff;
  border-radius: 0.3125rem;
  font-size: 0.9375rem;
  line-height: 1.2;
  padding: 0.875rem 1.25rem 0.8125rem;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (min-width: 768px) {
  .p-reserve__form-btn-search {
    min-width: 13.125rem;
    padding: 0.75rem 0.625rem 0.875rem 0.625rem;
  }
}

.p-reserve__form-btn-search:hover {
  opacity: 0.7;
}

.p-reserve__form-btn-search--color {
  background-color: #E77415;
}

.p-reserve__form-btn-search--color:hover {
  opacity: 0.7;
}

.p-reserve__form-btn-cancel {
  display: inline-block;
  font-size: 0.8125rem;
  color: #5B5B5B;
  line-height: 1.2307692308;
  letter-spacing: 0.02em;
  text-align: center;
  font-weight: 400;
  font-family: "Noto Sans JP", sans-serif;
  text-decoration: underline;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.p-reserve__form-btn-cancel:hover {
  opacity: 0.7;
}

input[type=button] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

/* チェックボックスのデフォルトスタイルを復活 */
input[type=checkbox] {
  appearance: auto;
  -webkit-appearance: checkbox;
  -moz-appearance: checkbox;
}

.p-htl-safety__slider-wrap {
  margin-top: 3.75rem;
}
@media screen and (min-width: 768px) {
  .p-htl-safety__slider-wrap {
    margin-top: 7.5rem;
  }
}

.p-htl-safety__swiper-slide {
  width: 12.5625rem;
  height: 8.125rem;
}
@media screen and (min-width: 768px) {
  .p-htl-safety__swiper-slide {
    width: auto;
    width: initial;
    height: auto;
    height: initial;
  }
}

.p-htl-safety__swiper-slide img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 201/130;
}
@media screen and (min-width: 768px) {
  .p-htl-safety__swiper-slide img {
    aspect-ratio: 493/317;
  }
}

.p-htl-safety-feature {
  background-color: #F6F6F6;
  padding-top: 4.375rem;
  padding-bottom: 5rem;
}
@media screen and (min-width: 768px) {
  .p-htl-safety-feature {
    padding-top: 7.5rem;
    padding-bottom: 10rem;
  }
}

.p-htl-safety-feature__inner {
  max-width: 69.375rem;
}
@media screen and (min-width: 768px) {
  .p-htl-safety-feature__inner {
    padding-left: 1.5625rem;
    padding-right: 1.5625rem;
    margin-inline: auto;
  }
}

.p-htl-safety-feature__text {
  text-align: center;
}

.p-htl-safety-feature__text h3 {
  margin-top: 0.625rem;
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.06em;
  color: #60000A;
}
@media screen and (min-width: 768px) {
  .p-htl-safety-feature__text h3 {
    margin-top: 1rem;
    font-size: 2.25rem;
  }
}

@media screen and (min-width: 768px) {
  .p-htl-safety-feature__wrap {
    margin-top: 0rem;
  }
}

.p-htl-safety-feature__box {
  padding-bottom: 2.5rem;
  border-bottom: solid 1px #d9d9d9;
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}
@media screen and (min-width: 768px) {
  .p-htl-safety-feature__box {
    padding-bottom: 3.125rem;
    grid-template-columns: 460fr 550fr;
    gap: 3.125rem;
  }
}

.p-htl-safety-feature__box--reverse {
  padding-top: 0;
  padding-bottom: 1.5625rem;
  border-bottom: solid 1px #d9d9d9;
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}
@media screen and (min-width: 768px) {
  .p-htl-safety-feature__box--reverse {
    padding-top: 3.125rem;
    padding-bottom: 3.125rem;
    grid-template-columns: 550fr 460fr;
    gap: 3.125rem;
  }
}

.p-htl-safety-feature__box-img {
  width: 100%;
}
.p-htl-safety-feature__box-img:nth-child(n+2) {
  padding-top: 2.5rem;
}
@media screen and (min-width: 768px) {
  .p-htl-safety-feature__box-img:nth-child(n+2) {
    padding-top: 0;
  }
}

.p-htl-safety-feature__box-img img {
  width: 100%;
  aspect-ratio: 460/300;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-htl-safety-feature__box-body {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}
@media screen and (min-width: 768px) {
  .p-htl-safety-feature__box-body {
    -webkit-box-ordinal-group: initial;
        -ms-flex-order: initial;
            order: initial;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

@media screen and (min-width: 768px) {
  .p-htl-safety-feature__title {
    margin-top: 0.625rem;
  }
}

.p-htl-safety-feature__title--point {
  position: relative;
  display: block;
  font-family: "Open Sans", sans-serif;
  font-size: 0.8125rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: #60000A;
}
@media screen and (min-width: 768px) {
  .p-htl-safety-feature__title--point {
    font-size: 1rem;
  }
}

.p-htl-safety-feature__title--point::before {
  background-color: #60000A;
  bottom: -0.3125rem;
  content: "";
  height: 1px;
  position: absolute;
  width: 1.25rem;
}

.p-htl-safety-feature__title--title {
  margin-top: 0.875rem;
  display: block;
  font-size: 1.125rem;
  line-height: 1.6;
  font-weight: 500;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
  .p-htl-safety-feature__title--title {
    margin-top: 0.625rem;
    display: block;
    font-size: 1.25rem;
    line-height: 1.6;
    letter-spacing: 0.1em;
  }
}

.p-htl-safety-feature__text p {
  text-align: left;
  margin-top: 0.875rem;
  font-size: 0.875rem;
  line-height: 1.7142857143;
  letter-spacing: 0.03em;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .p-htl-safety-feature__text p {
    margin-top: 1.25rem;
    font-size: 0.9375rem;
    line-height: 2;
    letter-spacing: 0.06em;
  }
}

.p-hotelcolor {
  color: #E77415;
}

.p-hotelcolor::before {
  background-color: #E77415;
}

.p-htl-safety-motenashi__sub-inner {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}
@media screen and (min-width: 768px) {
  .p-htl-safety-motenashi__sub-inner {
    margin-left: 0;
    margin-left: initial;
    margin-right: 0;
    margin-right: initial;
  }
}

.p-htl-safety-motenashi__img {
  width: 100%;
}

.p-htl-safety-motenashi__img img {
  width: 100%;
  aspect-ratio: 375/240;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (min-width: 768px) {
  .p-htl-safety-motenashi__img img {
    aspect-ratio: 1200/530;
  }
}

.p-htl-safety {
  padding-top: 3.75rem;
  background-color: #F6F6F6;
}
@media screen and (min-width: 768px) {
  .p-htl-safety {
    padding-top: 6.25rem;
  }
}

.p-htl-safety__safety {
  position: relative;
}

.p-htl-safety__inner {
  max-width: 78.125rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .p-htl-safety__inner {
    padding-left: 1.5625rem;
    padding-right: 1.5625rem;
  }
}

.p-htl-safety__setting-wrap {
  max-width: 60.1875rem;
  padding-right: 1.875rem;
  padding-left: 1.875rem;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .p-htl-safety__setting-wrap {
    padding-right: 1.5625rem;
    padding-left: 1.5625rem;
  }
}

.p-htl-safety__heading {
  position: relative;
  overflow: hidden;
}

.p-htl-safety__heading::before {
  content: "";
  position: absolute;
  display: inline-block;
  background-color: #F6F6F6;
  height: 9.75rem;
  width: 100%;
  display: inline-block;
  bottom: 0;
  right: 0;
  z-index: -1;
}

.p-htl-safety__heading-sub {
  text-align: left;
}
@media screen and (min-width: 768px) {
  .p-htl-safety__heading-sub {
    text-align: center;
    padding-right: 3.75rem;
    padding-left: 3.75rem;
  }
}

.p-htl-safety__heading-sub h3 {
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.875;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
  .p-htl-safety__heading-sub h3 {
    font-size: 1.25rem;
    line-height: 2.3;
  }
}

.p-htl-safety__heading-sub p {
  margin-top: 1.25rem;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
  .p-htl-safety__heading-sub p {
    text-align: center;
    font-size: 0.9375rem;
    line-height: 2.6666666667;
    letter-spacing: 0.06em;
  }
}

.p-htl-safety__grid-image {
  margin-top: 3.75rem;
  display: grid;
  gap: 1.0625rem;
}
@media screen and (min-width: 768px) {
  .p-htl-safety__grid-image {
    margin-top: 7.5rem;
    grid-template-columns: 1fr 1fr 1fr;
  }
}

.p-htl-safety__grid-image img {
  width: 100%;
  aspect-ratio: 201/130;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (min-width: 768px) {
  .p-htl-safety__grid-image img {
    aspect-ratio: 493/317;
  }
}

.p-htl-top-background {
  background-color: white;
  position: relative;
}

.p-htl-top-check {
  margin-top: 2.15625rem;
}
@media screen and (min-width: 768px) {
  .p-htl-top-check {
    margin-top: 7.5rem;
    margin-left: 4.8125rem;
  }
}

.p-htl-top-check__inner {
  max-width: 58.5rem;
  padding-right: 2.5rem;
  padding-left: 2.5rem;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .p-htl-top-check__inner {
    padding-right: 1.5625rem;
    padding-left: 1.5625rem;
  }
}

.p-htl-top-check__wrapper {
  padding: 1.3125rem 1.25rem;
  border: 1px solid #F6F6F6;
}
@media screen and (min-width: 768px) {
  .p-htl-top-check__wrapper {
    padding: 2.125rem 4.75rem;
    border: 1px solid #F6F6F6;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 3.6875rem;
  }
}

.p-htl-top-check__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (min-width: 768px) {
  .p-htl-top-check__box {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

.p-htl-top-check__box:nth-of-type(n+2) {
  margin-top: 0.75rem;
}
@media screen and (min-width: 768px) {
  .p-htl-top-check__box:nth-of-type(n+2) {
    margin-top: 0;
  }
}

.p-htl-top-check__in {
  width: 3.125rem;
  height: 1.25rem;
  text-transform: uppercase;
  background-color: #222222;
  font-family: "Open Sans", sans-serif;
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 1.1666666667;
  letter-spacing: 0.33em;
  color: #ffffff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 768px) {
  .p-htl-top-check__in {
    width: 3.875rem;
    height: 1.5625rem;
    font-size: 0.875rem;
    line-height: 1.3571428571;
  }
}

.p-htl-top-check__out {
  width: 3.125rem;
  height: 1.25rem;
  text-transform: uppercase;
  background-color: #96002C;
  font-family: "Open Sans", sans-serif;
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 1.1666666667;
  letter-spacing: 0.1em;
  color: #ffffff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 768px) {
  .p-htl-top-check__out {
    width: 3.875rem;
    height: 1.5625rem;
    font-size: 0.875rem;
    line-height: 1.3571428571;
  }
}

.p-htl-top-check__check {
  margin-left: 0.5rem;
  font-size: 0.8125rem;
  line-height: 1.1538461538;
  letter-spacing: 0.03em;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .p-htl-top-check__check {
    font-size: 1rem;
    line-height: 1.1875;
    letter-spacing: 0.06em;
  }
}

.p-htl-top-check__time {
  margin-left: 0.9375rem;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.1428571429;
  letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
  .p-htl-top-check__time {
    margin-left: 0.125rem;
    font-size: 1.125rem;
    font-weight: 700;
    line-height: 1.1666666667;
    letter-spacing: 0.06em;
  }
}

.p-htl-top-check__time--red {
  color: #770E31;
  margin-left: 0.125rem;
}
.p-htl-top-check__attention {
  padding-top: 0.375rem;
  text-align: left;
  font-size: 0.625rem;
  font-weight: 350;
  color: #5B5B5B;
  line-height: 1.4;
  letter-spacing: 0.03em;
  text-indent: -1em;
  padding-left: 1em;
}
@media screen and (min-width: 768px) {
  .p-htl-top-check__attention {
    padding-top: 0.3125rem;
    text-align: center;
    font-size: 0.8125rem;
    line-height: 1.8461538462;
  }
}

.p-htl-top-message {
  padding-top: 4.375rem;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .p-htl-top-message {
    padding-top: 7.0625rem;
  }
}

.p-htl-top-message__inner {
  max-width: 83.5625rem;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .p-htl-top-message__inner {
    padding-right: 1.5625rem;
    padding-left: 1.5625rem;
  }
}

.p-htl-top-message__wrapper {
  display: grid;
  gap: 3.125rem;
}
@media screen and (min-width: 768px) {
  .p-htl-top-message__wrapper {
    gap: 6.125rem;
    grid-template-columns: 610fr 690fr;
    margin-left: calc(50% - 50vw);
  }
}

.p-htl-top-message__img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.3125rem;
  overflow: hidden;
  z-index: 1;
  will-change: transform;
}
@media screen and (min-width: 768px) {
  .p-htl-top-message__img {
    margin-top: 6rem;
    max-width: 40.125rem;
    justify-self: flex-end;
  }
}

.p-htl-top-message__img01,
.p-htl-top-message__img02 {
  width: 83%;
  height: 100%;
  position: relative;
  overflow: hidden;
}

.p-htl-top-message__img01 {
  -ms-flex-item-align: start;
      align-self: flex-start;
}

.p-htl-top-message__img02 {
  -ms-flex-item-align: end;
      align-self: flex-end;
}

.p-htl-top-message__img01 img,
.p-htl-top-message__img02 img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 510/280;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-htl-top-message__body {
  -webkit-box-ordinal-group: 0;
      -ms-flex-order: -1;
          order: -1;
  text-align: center;
  width: 100%;
  text-align: center;
  padding-right: 1.8125rem;
  padding-left: 1.8125rem;
}
@media screen and (min-width: 768px) {
  .p-htl-top-message__body {
    -webkit-box-ordinal-group: initial;
        -ms-flex-order: initial;
            order: initial;
    text-align: left;
    margin-top: 0;
    padding-right: 0;
    padding-left: 0;
    padding-right: initial;
    padding-left: initial;
  }
}

.p-htl-top-message__text {
  margin-top: 1.875rem;
  text-align: justify;
}
@media screen and (min-width: 768px) {
  .p-htl-top-message__text {
    margin-top: 3.125rem;
  }
}

.p-htl-top-message__text p {
  font-size: 0.875rem;
  line-height: 2;
  letter-spacing: 0.03em;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .p-htl-top-message__text p {
    font-size: 0.9375rem;
    line-height: 2.6666666667;
    letter-spacing: 0.06em;
  }
}

.p-htl-top-message__text p:nth-child(n+2) {
  margin-top: 1.25rem;
}
@media screen and (min-width: 768px) {
  .p-htl-top-message__text p:nth-child(n+2) {
    margin-top: 1.875rem;
  }
}

.p-htl-top-plan {
  overflow: hidden;
  position: relative;
  padding-top: 5.625rem;
  padding-bottom: 5rem;
}
@media screen and (min-width: 768px) {
  .p-htl-top-plan {
    margin-top: -3.4375rem;
    padding-top: 10.5rem;
    padding-bottom: 8.75rem;
  }
}

.p-htl-top-plan::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 36.7%;
  background: #F6F6F6;
  top: 28.8%;
  right: -0.1rem;
  z-index: 0;
}
@media screen and (min-width: 600px) {
  .p-htl-top-plan::before {
    width: 100%;
    height: 42%;
    top: 26%;
    right: -0.1rem;
    z-index: 0;
  }
}
@media screen and (min-width: 768px) {
  .p-htl-top-plan::before {
    width: 77%;
    top: auto;
    top: initial;
    bottom: 24%;
    height: 90%;
    right: -0.125rem;
  }
}
@media screen and (min-width: 1024px) {
  .p-htl-top-plan::before {
    top: auto;
    top: initial;
    bottom: 24%;
    right: -0.125rem;
  }
}

.p-htl-top-plan__inner {
  max-width: 77.3125rem;
  padding-right: 1.8125rem;
  padding-left: 1.8125rem;
  margin-inline: auto;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .p-htl-top-plan__inner {
    padding-right: 1.15625rem;
    padding-left: 1.5625rem;
  }
}

.p-htl-top-plan__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.p-htl-top-plan__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .p-htl-top-plan__box {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}

.p-htl-top-plan__btn-pc {
  display: none;
}
@media screen and (min-width: 768px) {
  .p-htl-top-plan__btn-pc {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
}

.p-htl-top-plan__btn-sp {
  display: block;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 768px) {
  .p-htl-top-plan__btn-sp {
    display: none;
  }
}

.p-htl-top-plan__swiper {
  margin-top: 4.8125rem;
  padding-bottom: 1.4375rem;
}
@media screen and (min-width: 768px) {
  .p-htl-top-plan__swiper {
    margin-top: 6.25rem;
    padding-bottom: 2.5rem;
  }
}

.p-htl-top-plan__container {
  padding-left: 1.875rem;
  margin-left: auto;
  margin-right: auto;
  max-width: 69.5625rem;
  position: relative;
  margin-right: calc(50% - 50vw);
}
@media screen and (min-width: 768px) {
  .p-htl-top-plan__container {
    padding-left: 0;
  }
}

.p-commitment__lists {
  margin-top: 3.125rem;
  display: grid;
  gap: 2.5rem;
}
@media screen and (min-width: 768px) {
  .p-commitment__lists {
    grid-template-columns: repeat(3, 1fr);
  }
}

.p-htl-top-plan__img {
  position: relative;
  overflow: hidden;
  width: 100%;
}

.p-htl-top-plan__img img {
  width: 100%;
  aspect-ratio: 285/180;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  will-change: transform;
}
@media screen and (min-width: 768px) {
  .p-htl-top-plan__img img {
    aspect-ratio: initial;
  }
}

.p-htl-top-plan--point {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  font-size: 0.75rem;
  line-height: 1.1666666667;
  letter-spacing: 0.1em;
  font-weight: 400;
  background-color: #594A34;
  padding: 0.3125rem 0.875rem;
  color: #fff;
}
@media screen and (min-width: 768px) {
  .p-htl-top-plan--point {
    top: 0;
    right: 0;
    left: auto;
    left: initial;
    -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
    padding: 1.75rem 0.5rem;
    font-size: 1rem;
    line-height: 1.1875;
    letter-spacing: 0.2em;
    font-weight: 400;
  }
}

.p-htl-top-plan__body {
  margin-top: 0.625rem;
}
@media screen and (min-width: 768px) {
  .p-htl-top-plan__body {
    margin-top: 1rem;
  }
}

.p-htl-top-plan__title {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 1rem;
  line-height: 1.1875;
  letter-spacing: 0.06em;
  display: inline;
  background: -webkit-gradient(linear, left top, right top, color-stop(100%, #222222), color-stop(0%, transparent));
  background: linear-gradient(to right, #222222 100%, transparent 0%);
  background-size: 100% 1px;
  background-position: 0 100%;
  background-repeat: repeat-x;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .p-htl-top-plan__title {
    margin-top: 1rem;
    font-size: 1.25rem;
    line-height: 1.2;
    font-weight: 500;
    background-size: 100% 1px;
  }
}

.p-htl-top-plan__title::after {
  content: "";
  position: absolute;
  display: inline-block;
  background: url(../images/common/external-link.svg) center center/contain no-repeat;
  height: 0.875rem;
  width: 0.875rem;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  top: 0.1875rem;
  margin-left: 0.625rem;
}
@media screen and (min-width: 768px) {
  .p-htl-top-plan__title::after {
    height: 1.125rem;
    width: 1.125rem;
    top: 0.3125rem;
    margin-left: 1rem;
  }
}

.p-htl-top-plan__title--sub {
  position: relative;
}

.p-htl-top-plan__title--sub::after {
  content: "";
  position: absolute;
  display: inline-block;
  background: url(../images/common/external-link.svg) center center/contain no-repeat;
  height: 0.875rem;
  width: 0.875rem;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  top: 0.25rem;
  margin-left: 0.625rem;
}
@media screen and (min-width: 768px) {
  .p-htl-top-plan__title--sub::after {
    height: 1.125rem;
    width: 1.125rem;
    top: 0.875rem;
    margin-left: 1rem;
  }
}

.p-htl-top-plan__text {
  margin-top: 0.625rem;
  font-size: 0.8125rem;
  line-height: 1.6923076923;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
  .p-htl-top-plan__text {
    margin-top: 1rem;
    font-size: 0.9375rem;
    line-height: 1.8666666667;
  }
}

.plan-swiper:hover .p-htl-top-plan__img img,
.p-htl-top-plan__swiper-slide:hover .p-htl-top-plan__img img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}

.p-htl-top-service {
  background-color: #f5f5f5;
  position: relative;
  padding-top: 6.3125rem;
  padding-bottom: 6.25rem;
}
@media screen and (min-width: 768px) {
  .p-htl-top-service {
    padding-bottom: 11.25rem;
  }
}

.p-htl-top-service__inner {
  padding-right: 0.9375rem;
  padding-left: 0.9375rem;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .p-htl-top-service__inner {
    padding-right: 1.875rem;
    padding-left: 1.875rem;
  }
}

.parent {
  width: 100%;
  margin-top: 3.75rem;
  display: grid;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  grid-template-areas: "card01 card01" "card02 card02" "card03 card04" "card05 card06";
  grid-template-columns: repeat(2, 1fr);
}
.parent .card-01 {
  grid-area: card01;
}
.parent .card-02 {
  grid-area: card02;
}
.parent .card-03 {
  grid-area: card03;
}
.parent .card-04 {
  grid-area: card04;
}
.parent .card-05 {
  grid-area: card05;
}
.parent .card-06 {
  grid-area: card06;
}
@media screen and (min-width: 768px) {
  .parent {
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(2, 1fr);
  }
  .parent .card-01 {
    grid-area: 1/1/3/2;
  }
  .parent .card-02 {
    grid-area: 1/2/2/4;
  }
  .parent .card-03 {
    grid-area: 1/4/2/5;
  }
  .parent .card-04 {
    grid-area: 2/2/3/3;
  }
  .parent .card-05 {
    grid-area: 2/3/3/4;
  }
  .parent .card-06 {
    grid-area: 2/4/3/5;
  }
}

.p-htl-top-service__img::after {
  content: "";
  position: absolute;
  display: inline-block;
  background: url(../images/tokushima/top-service-arrow.svg) no-repeat center/cover;
  width: 1.125rem;
  aspect-ratio: 1/1;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 0.25rem;
  z-index: 2;
}
@media screen and (min-width: 768px) {
  .p-htl-top-service__img::after {
    width: 1.375rem;
    top: auto;
    top: initial;
    -webkit-transform: translateX(none);
            transform: translateX(none);
    -webkit-transform: translateX(initial);
            transform: translateX(initial);
    bottom: 0.875rem;
    right: 0.875rem;
  }
}

.p-htl-top-service__img .card-04 {
  background-color: rgba(0, 0, 0, .2);
}

.p-htl-top-service__img h3 {
  position: relative;
  z-index: 1;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.3125rem;
}
@media screen and (min-width: 768px) {
  .p-htl-top-service__img-title {
    text-align: center;
  }
}

.p-htl-top-service__img-title--phone::before {
  content: "";
  position: absolute;
  display: inline-block;
  background: url(../images/tokushima/top-service-phone.svg) no-repeat center/cover;
  width: 1.6875rem;
  aspect-ratio: 1/1.2;
  bottom: 0.8125rem;
  left: -1.1875rem;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .p-htl-top-service__img-title--phone::before {
    width: 2.5rem;
    bottom: 1.1875rem;
    left: -1.375rem;
  }
}

.p-htl-top-service__img-subtitle {
  font-family: "Open Sans", sans-serif;
  text-align: center;
  font-size: 0.75rem;
  line-height: 1.3333333333;
  color: #ffffff;
  font-weight: 300;
  text-transform: capitalize;
}
@media screen and (min-width: 768px) {
  .p-htl-top-service__img-subtitle {
    font-size: 1.75rem;
  }
}

.p-htl-top-service__img-main {
  display: block;
  font-size: 1rem;
  line-height: 1.4545454545;
  color: #ffffff;
  font-weight: 400;
  letter-spacing: 0.1em;
  line-height: 1;
}
@media screen and (min-width: 768px) {
  .p-htl-top-service__img-main {
    font-size: 1rem;
    line-height: 1.1875;
  }
}

.p-htl-top-service__img-main--pc {
  display: none;
}
@media screen and (min-width: 768px) {
  .p-htl-top-service__img-main--pc {
    display: block;
    color: #ffffff;
    font-weight: 400;
    letter-spacing: 0.1em;
    line-height: 1.1875;
    font-size: 1rem;
  }
}

.p-htl-top-service__img-main--sp {
  display: block;
  font-size: 1rem;
  color: #ffffff;
  font-weight: 400;
  letter-spacing: 0.03em;
  line-height: 1;
}
@media screen and (min-width: 768px) {
  .p-htl-top-service__img-main--sp {
    display: none;
  }
}

.p-htl-top-service__img-main--sp2 {
  letter-spacing: 0;
}
@media screen and (min-width: 768px) {
  .p-htl-top-service__img-main--sp2 {
    letter-spacing: normal;
    letter-spacing: initial;
  }
}

.card-01 {
  background-image: url(../images/tokushima/top-service-img01.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  aspect-ratio: 345/150;
}
@media screen and (min-width: 768px) {
  .card-01 {
    aspect-ratio: 328/540;
  }
}

.card-02 {
  background-image: url(../images/tokushima/top-service-img02.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  aspect-ratio: 345/150;
}
@media screen and (min-width: 768px) {
  .card-02 {
    aspect-ratio: 656/270;
  }
}

.card-03 {
  background-image: url(../images/tokushima/top-service-img03.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  aspect-ratio: 171/110;
}
@media screen and (min-width: 768px) {
  .card-03 {
    aspect-ratio: 328/270;
  }
}

.card-04 {
  background-image: url(../images/tokushima/top-service-img04.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  aspect-ratio: 171/110;
}
@media screen and (min-width: 768px) {
  .card-04 {
    aspect-ratio: 328/270;
  }
}

.card-05 {
  background-image: url(../images/tokushima/top-service-img06.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  aspect-ratio: 171/110;
  border-top: 1px solid #ffffff;
}
@media screen and (min-width: 768px) {
  .card-05 {
    aspect-ratio: 328/270;
    border-top: none;
  }
}

.card-06 {
  background-image: url(../images/tokushima/top-service-img05.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  aspect-ratio: 171/110;
  border: 1px solid #ffffff;
  border-left: none;
}
@media screen and (min-width: 768px) {
  .card-06 {
    aspect-ratio: 328/270;
    border-left: 0;
    border-left: initial;
  }
}

.card-01--echihisa {
  background-image: url(../images/echihisa/top-service-img01.webp);
}

.card-03--echihisa {
  background-image: url(../images/echihisa/top-service-img03.webp);
}

.card-04--echihisa {
  background-image: url(../images/echihisa/top-service-img04.webp);
}

.card-01--ryogokubashi {
  background-image: url(../images/ryogokubashi/top-service-img01.webp);
}

.card-03--ryogokubashi {
  background-image: url(../images/ryogokubashi/top-service-img03.webp);
}

.card-04--ryogokubashi {
  background-image: url(../images/ryogokubashi/top-service-img04.webp);
}

.card-01--higashisenba {
  background-image: url(../images/higashisenba/top-service-img01.webp);
}

.card-03--higashisenba {
  background-image: url(../images/higashisenba/top-service-img03.webp);
}

.card-04--higashisenba {
  background-image: url(../images/higashisenba/top-service-img04.webp);
}

.card-01--kuramoto {
  background-image: url(../images/kuramoto/top-service-img01.webp);
}

.card-03--kuramoto {
  background-image: url(../images/kuramoto/top-service-img03.webp);
}

.card-04--kuramoto {
  background-image: url(../images/kuramoto/top-service-img04.webp);
}

.card-01--takamatsu {
  background-image: url(../images/takamatsu/top-service-img01.webp);
}

.card-03--takamatsu {
  background-image: url(../images/takamatsu/top-service-img03.webp);
}

.card-04--takamatsu {
  background-image: url(../images/takamatsu/top-service-img04.webp);
}

.card-01--kanonji {
  background-image: url(../images/kanonji/top-service-img01.webp);
}

.card-03--kanonji {
  background-image: url(../images/kanonji/top-service-img03.webp);
}

.card-04--kanonji {
  background-image: url(../images/kanonji/top-service-img04.webp);
}

.card-01--okayama {
  background-image: url(../images/okayama/top-service-img01.webp);
}

.card-03--okayama {
  background-image: url(../images/okayama/top-service-img03.webp);
}

.card-04--okayama {
  background-image: url(../images/okayama/top-service-img04.webp);
}

.card-01--saijyo {
  background-image: url(../images/saijyo/top-service-img01.webp);
}

.card-03--saijyo {
  background-image: url(../images/saijyo/top-service-img03.webp);
}

.card-04--saijyo {
  background-image: url(../images/saijyo/top-service-img04.webp);
}

.p-htl-top-service__img {
  position: relative;
  padding: 0.9375rem;
  text-align: center;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: transparent;
  -webkit-transition: background-color 0.3s ease-in-out, outline 0.3s ease-in-out;
  transition: background-color 0.3s ease-in-out, outline 0.3s ease-in-out;
  outline: 1px solid transparent;
  -webkit-transform: scale(1);
          transform: scale(1);
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .p-htl-top-service__img {
    width: 100%;
    padding: 0;
  }
}
.p-htl-top-service__img:hover {
  outline: 1px solid #ffffff;
  outline-offset: -1px;
}
.p-htl-top-service__img::before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: transparent;
  z-index: 1;
  -webkit-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}
.p-htl-top-service__img:hover::before {
  background-color: #60000A;
  outline: 1px solid #ffffff;
  outline-offset: -1px;
}
.p-htl-top-service__img .p-htl-top-service__img > * {
  position: relative;
  z-index: 2;
}

.p-htl-top-service__img--color:hover::before {
  background-color: #E77415;
  outline: 1px solid #ffffff;
  outline-offset: -1px;
}

.swiper01 {
  height: 100%;
}
.p-swiper__flex {
  margin-top: 6.875rem;
  margin-left: -1.875rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.425rem;
}
@media screen and (min-width: 600px) {
  .p-swiper__flex {
    margin-top: 5rem;
  }
}
@media screen and (min-width: 768px) {
  .p-swiper__flex {
    margin-top: 3.8125rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-top: 0;
    margin-left: 0;
    position: absolute;
    gap: 0.625rem;
    bottom: 30%;
    left: -22%;
    z-index: 1;
  }
}

/* 前への矢印位置調整 */
.swiper-button-prev {
  width: 1.0625rem;
  position: static;
}
@media screen and (min-width: 768px) {
  .swiper-button-prev {
    width: 3.4375rem;
    position: absolute;
    top: 0;
    left: 1px;
  }
}

/* 次への矢印位置調整 */
.swiper-button-next {
  width: 1.0625rem;
  position: static;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .swiper-button-next {
    width: 3.4375rem;
    margin-left: 4.25rem;
    margin-bottom: 0.75rem;
  }
}

/* 前へ次への矢印カスタマイズ */
.swiper-button-prev::after,
.swiper-button-next::after {
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  width: 1.0625rem;
  height: 1.0625rem;
  margin: auto;
  width: 3.125rem;
}
@media screen and (min-width: 768px) {
  .swiper-button-prev::after,
  .swiper-button-next::after {
    width: 3.125rem;
    height: 3.125rem;
  }
}

/* 前への矢印カスタマイズ */
.swiper-button-prev::after {
  background-image: url(../images/tokushima/arrow-prev-sp.svg);
}
@media screen and (min-width: 768px) {
  .swiper-button-prev::after {
    background-image: url(../images/tokushima/arrow-prev.svg);
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
}

/* 次への矢印カスタマイズ */
.swiper-button-next::after {
  background-image: url(../images/tokushima/arrow-next-sp.svg);
}
@media screen and (min-width: 768px) {
  .swiper-button-next::after {
    background-image: url(../images/tokushima/arrow-next.svg);
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
}

@media screen and (min-width: 768px) {
  .swiper-button-prev:hover::after {
    background-image: url(../images/tokushima/arrow-prev-gray.svg);
  }
}

@media screen and (min-width: 768px) {
  .swiper-button-next:hover::after {
    background-image: url(../images/tokushima/arrow-next-gray.svg);
  }
}

/* ページネーション */
.p-swiper01-pagination.swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: 2.25rem;
  left: 0.9375rem;
  width: 90%;
}
@media screen and (min-width: 768px) {
  .p-swiper01-pagination.swiper-pagination-bullets.swiper-pagination-horizontal {
    left: 3.375rem;
    bottom: 1.5rem;
    z-index: 6;
    position: absolute;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}

.p-swiper02-pagination.swiper-pagination-bullets.swiper-pagination-horizontal {
  position: static;
  width: auto;
  width: initial;
  margin-top: -0.625rem;
}
@media screen and (min-width: 768px) {
  .p-swiper02-pagination.swiper-pagination-bullets.swiper-pagination-horizontal {
    margin-top: 0;
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
}

/* ページネーションの余白 */
.swiper01 .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 0.40625rem 0.40625rem;
}
@media screen and (min-width: 768px) {
  .swiper01 .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
  .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 0.75rem 0.75rem;
  }
}

/* ページネーションの余白 */
.swiper02 .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 0.40625rem 0.40625rem;
}
@media screen and (min-width: 768px) {
  .swiper02 .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
  .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 0.46875rem 0.46875rem;
  }
}

/* ページネーションのサイズと色 */
.p-swiper01-pagination .swiper-pagination-bullet {
  background-color: #F6F6F6;
  width: 0.875rem;
  height: 0.1875rem;
  border-radius: 0;
}
@media screen and (min-width: 768px) {
  .p-swiper01-pagination .swiper-pagination-bullet {
    background-color: #222222;
    width: 1.4375rem;
    height: 0.1875rem;
  }
}

.p-swiper02-pagination .swiper-pagination-bullet {
  background-color: #222222;
  width: 0.625rem;
  height: 0.125rem;
  border-radius: 0;
}
@media screen and (min-width: 768px) {
  .p-swiper02-pagination .swiper-pagination-bullet {
    width: 1.0625rem;
    height: 0.1875rem;
  }
}

/* 画像サイズ調整 */
.p-htl-top-plan__swiper-slide img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-htl-top-plan__container {
  margin-left: auto;
  margin-right: auto;
  max-width: 68.75rem;
  position: relative;
  margin-right: calc(50% - 50vw);
}

.p-htl-top-plan__swiper-slide {
  width: 23.125rem;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.p-htl-top-plan__swiper-slide:hover {
  opacity: 0.7;
}

.plan-swiper {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.plan-swiper:hover {
  opacity: 0.7;
}

.p-loading {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #ffffff;
  z-index: 999;
  opacity: 1;
  visibility: visible;
  overflow: hidden;
}

.is-loaded .p-loading {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.p-loading__inner {
  position: relative;
  width: 100%;
  height: 100%;
}

.p-loading__wrapper {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: auto;
  height: auto;
}

.p-loading__image {
  width: auto;
  height: auto;
}
.p-loading__image img {
  display: block;
  max-height: 3.25rem;
  -o-object-fit: contain;
     object-fit: contain;
  vertical-align: middle;
}
@media screen and (min-width: 768px) {
  .p-loading__image img {
    max-height: 5.0625rem;
  }
}

.p-swiper-htl-safety__wrapper {
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
}
@media screen and (min-width: 768px) {
  .p-swiper-htl-safety__wrapper {
    -webkit-transition-timing-function: ease;
            transition-timing-function: ease;
    -webkit-transition-timing-function: initial;
            transition-timing-function: initial;
    display: grid;
    gap: 1.0625rem;
    grid-template-columns: repeat(3, 1fr);
  }
}

.p-htl-safety__slider-list {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

/* 画像のサイズ調整 */
.p-htl-safety-swiper-slide img {
  height: auto;
  width: 100%;
}

.sp-md-none {
  display: none;
}
@media screen and (min-width: 1024px) {
  .sp-md-none {
    display: block;
    height: inherit;
  }
}

.pc-none {
  display: block;
}
@media screen and (min-width: 1024px) {
  .pc-none {
    display: none;
  }
}

.sp-none {
  display: none;
}
@media screen and (min-width: 768px) {
  .sp-none {
    display: block;
  }
}
@media screen and (min-width: 1024px) {
  .sp-none {
    display: block;
  }
}

.u-desktop-inline {
  display: none;
}
@media screen and (min-width: 768px) {
  .u-desktop-inline {
    display: inline;
    display: initial;
  }
}

.u-desktop {
  display: none;
}
@media screen and (min-width: 768px) {
  .u-desktop {
    display: block;
  }
}

.u-mobile-inline {
  display: inline-block;
}
@media screen and (min-width: 768px) {
  .u-mobile-inline {
    display: none;
  }
}

@media screen and (min-width: 768px) {
  .u-mobile {
    display: none;
  }
}

@media screen and (min-width: 600px) {
  .u-mobile2 {
    display: none;
  }
}

.u-space {
  margin-left: 1em;
}

@media screen and (min-width: 768px) {
  .u-space2--pc {
    margin-left: 1em;
  }
}
/*# sourceMappingURL=styles.css.map */
