@charset "UTF-8";

/* リキッドレイアウト対応 */
body {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  background-color: #f5f5f7;
  color: #222;
}

.u-desktop {
  display: none;
}

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

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

html {
  font-size: 16px;
}

@media (max-width: 375px) {
  html {
    font-size: 4.2666666667vw;
  }
}

@media screen and (min-width: 768px) {
  html {
    font-size: 1.5384615385vw;
  }
}

@media (min-width: 1040px) {
  html {
    font-size: 16px;
  }
}

/* pcの電話番号発信対応 */
@media screen and (min-width: 768px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}

/* ホバー */
a {
  text-decoration: none;
  color: inherit;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

@media screen and (min-width: 768px) {
  a:hover {
    opacity: 0.8;
  }
}

.inner {
  max-width: 1040px;
  padding-left: 10px;
  padding-right: 10px;
  height: inherit;
  margin-right: auto;
  margin-left: auto;
  position: relative;
}

@media screen and (min-width: 768px) {
  .inner {
    padding-right: 20px;
    padding-left: 20px;
  }
}

body.no-scroll {
  overflow: hidden;
}

*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

/* Remove default padding */
ul,
ol {
  padding: 0;
}

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

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

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

/* Remove list styles on ul, ol elements with a class attribute */
ul,
ol {
  list-style: none;
}

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

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

/* Natural flow and rhythm in articles by default */
article > * + * {
  margin-top: 1em;
}

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

select {
  background: url(../images/pdwn.svg) no-repeat right 10px center !important;
}

/* Blur images when they have no alt attribute */
img:not([alt]) {
  filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feGaussianBlur stdDeviation="10" /></filter></svg>#filter');
  -webkit-filter: blur(10px);
  filter: blur(10px);
}

/* フォームリセット */
input,
/* button, */
select,
textarea {
  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;
}

.calender {
  width: 355px;
  width: 22.1875rem;
  display: inline-block;
  padding: 20px 10px;
  padding: 1.25rem 10px;
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.3);
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.3);
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .calender {
    padding-bottom: 65px;
  }
}

.calender table.calender__body,
.calender tr.calender__days,
.calender td.calender__day {
  border-color: #ccc;
}

td.calender__day.checkin button,
td.calender__day.checkout button {
  background-color: #336cc4;
  color: #fff;
}

td.calender__day.checkout button {
  background-color: #00bbff;
}

td.calender__day.period button {
  background-color: #00bbff;
}

td.calender__day.checkin ~ [class*=" day"] button {
  background-color: #00bbff;
}

.calender__days:has(td.calender__day.checkin)
  ~ .calender__days
  [class*=" day"]
  button {
  background-color: #00bbff;
}

.calender__item:has(td.calender__day.checkin)
  + .calender__item
  .calender__days
  [class*=" day"]
  button {
  background-color: #00bbff;
}

td.calender__day.checkout ~ [class*=" day"] button {
  background-color: transparent !important;
}

.calender__days:has(td.calender__day.checkout)
  ~ .calender__days
  [class*=" day"]
  button {
  background-color: transparent !important;
}

.calender__item:has(td.calender__day.checkout)
  + .calender__item
  .calender__days
  [class*=" day"]
  button {
  background-color: transparent !important;
}

td.calender__day.checkin button .calender__price,
td.calender__day.checkout button .calender__price {
  color: #fff;
}

/* td.calender__day.checkin ~ td button {
    background-color: #8595ac;
    color: #fff;
}

td.calender__day.checkin ~ td button  .calender__price {
  color: #fff;
}

td.calender__day.checkout ~ td button {
  background-color: inherit;
  color:inherit;
}

td.calender__day.checkout ~ td button .calender__price {
  color: #336cc4;
} */

.calender__items {
  position: relative;
}

.calender__arrows {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: absolute;
  top: 0;
}

.calender__arrows.left {
  left: 10px;
  left: 0.625rem;
}

.calender__arrows.right {
  right: 10px;
  right: 0.625rem;
}

.calender__arrows p {
  display: none;
}

.calender__arrow {
  display: block;
  border: 1px solid #222;
  width: 24px;
  width: 1.5rem;
  height: 24px;
  height: 1.5rem;
  color: #065fd4;
  border-radius: 50%;
  text-align: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
}

.calender__arrow i.fas {
  -webkit-transform: translateY(-2px);
  transform: translateY(-2px);
}

.calender__item {
  /* width: 355px;
    width: 22.1875rem; */
}

.calender__item.second {
  display: none;
}

.calender__month {
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  text-align: center;
}

.calender__body {
  border-collapse: collapse;
  margin-top: 20px;
  margin-top: 1.25rem;
}

.calender td {
  border: 1px solid #333;
  padding: 0;
}

.calender__header {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.42857143;
  padding-bottom: 8px;
  padding-bottom: 0.5rem;
}

.calender__day {
  width: 46px;
  width: 2.875rem;
  height: 56px;
  height: 3.5rem;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.42857143;
  text-align: center;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}

.calender__day button {
  color: #222;
  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;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  padding: 4px 3.05px;
  padding: 0.25rem 0.190625rem;
  height: 100%;
  width: 100%;
  border: none;
}

.calender__day button:active {
  background-color: #065fd4;
}

.calender__price {
  font-size: 10px;
  font-size: 0.625rem;
  line-height: 1.2;
  color: #065fd4;
  text-align: left;
}

.calender__header:nth-child(7),
.calender__day:nth-child(7) button {
  color: #065fd4;
}

.calender__header:nth-child(1),
.calender__day:nth-child(1) button {
  color: #ff0000;
}

.calender__day.full {
  opacity: 0.4;
  pointer-events: none;
}

.calender__day.full .calender__price {
  text-align: center;
}

.calender__day.out {
  opacity: 0.4;
  background-color: #ccc;
  pointer-events: none;
}

.calender__flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.calender__description {
  display: inline-block;
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 1.41666667;
  margin-top: 20px;
  margin-top: 1.25rem;
}

.calender__description span {
  font-weight: 700;
}

.y-top .calender__description {
  display: none;
}

.calender__decided {
  display: inline-block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.42857143;
  padding: 7px 22px;
  padding: 0.4375rem 1.375rem;
  border: 1px solid #999;
  border-radius: 0.3125rem;
  -webkit-box-shadow: 0 -3px 6px rgba(0, 0, 0, 0.16) inset;
  box-shadow: 0 -3px 6px rgba(0, 0, 0, 0.16) inset;
  margin-top: 10px;
  margin-top: 0.625rem;
}

.calender__close {
  font-size: 14px;
  font-size: 0.875rem;
  color: #065fd4;
  position: absolute;
  bottom: 27px;
  bottom: 1.6875rem;
  right: 20px;
  right: 1.25rem;
}

.calender__close .fas {
  margin-right: 10px;
  margin-right: 0.625rem;
}

.calender__arrow:hover,
.calender__day:hover {
  /* background-color: #336cc4; */
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
  /* color: #fff; */
}

.calender__day:hover button,
.calender__day:hover button p,
.calender__day:nth-child(1):hover button,
.calender__day:nth-child(7):hover button {
  /* color: #fff; */
}

@media screen and (min-width: 768px) {
  .calender {
    width: 59.953125rem;
  }

  .calender__items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1.25rem;
    max-width: 57.375rem;
  }

  .calender__item {
    width: auto;
  }

  .calender__item.second {
    display: block;
  }

  .calender__arrows p {
    display: block;
    font-size: 0.875rem;
    color: #065fd4;
  }

  .calender__arrows.left p {
    margin-left: 0.625rem;
  }

  .calender__arrows.right p {
    margin-right: 0.625rem;
  }

  .calender__day {
    width: 4.0625rem;
  }

  .calender__flex {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }

  .calender__decided {
    padding: 0.4375rem 1.875rem;
    margin-top: 1.25rem;
    -webkit-transform: translateX(254%);
    transform: translateX(254%);
  }

  .calender__close {
    /* display: none; */
  }
}

@media (max-width: 374px) {
  .calender__item {
    width: 88vw;
  }

  .calender__day button {
    padding: 0.0625rem 0.125rem;
  }

  .calender__price {
    font-size: 2.6vw;
    word-break: break-all;
  }

  .calender__day {
    width: 12.8vw;
    height: auto;
    aspect-ratio: 46/56;
    font-size: 3.7vw;
  }
}

.finder {
  position: relative;
  z-index: 2;
}

.finder form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  max-width: 355px;
  max-width: 22.1875rem;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
}

.finder .form-all {
  padding: 10px;
  padding: 0.625rem;
  background-color: #000;
}

.finder__block {
  background-color: #fff;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  border: 1px solid #999;
  border-radius: 5px;
}

.finder__block:nth-child(2),
.finder__btn {
  margin-top: 10px;
  margin-top: 0.625rem;
}

.finder__block:nth-child(2) {
  padding-top: 4.5px;
  padding-top: 0.28125rem;
  padding-bottom: 3.5px;
  padding-bottom: 0.21875rem;
}

/* ----------------------0403----------------------------- */

.date-reset {
  width: 140px;
  height: 40px;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.42857143;
  text-align: center;
  display: block;
  background-color: #fff;
  border: 1px solid #999;
  border-radius: 5px;
  margin: auto;
  margin-top: 20px;
  margin-bottom: 30px;
  -webkit-box-shadow: 0px -3px 6px rgba(0, 0, 0, 0.16) inset;
  box-shadow: 0px -3px 6px rgba(0, 0, 0, 0.16) inset;
}

/* ------------------------ここまで------------------------- */

.finder__container {
  display: block;
}

.finder__container.check {
  width: 50%;
}

.finder__container.check:first-child {
  padding: 5.2px 0 6.8px 35.5px;
  padding: 0.325rem 0 0.425rem 2.21875rem;
  position: relative;
}

.finder__container.check:nth-child(2) {
  padding: 5.2px 0 6.8px 10.5px;
  padding: 0.325rem 0 0.425rem 0.65625rem;
  border-left: 1px solid #999;
  position: relative;
}

.finder__container.check:first-child::before {
  content: "";
  display: inline-block;
  width: 14px;
  width: 0.875rem;
  height: 14px;
  height: 0.875rem;
  background-image: url(../images/calender.png);
  background-size: contain;
  vertical-align: middle;
  position: absolute;
  top: 50%;
  left: 9px;
  left: 0.5625rem;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.finder__container.check > p:first-child {
  font-size: 10px;
  font-size: 0.625rem;
  line-height: 1.5;
}

.finder__container.check > p:nth-child(2) {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.42857143;
}

.finder__container.check > p#checkin_ymd,
.finder__container.check > p#checkout_ymd {
  cursor: pointer;
  caret-color: transparent;
}

.finder__container.middle {
  width: 33.33%;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.42857143;
}

.finder__container.room {
  padding: 9.5px 0 11.5px 35px;
  padding: 0.59375rem 0 0.71875rem 2.1875rem;
  position: relative;
}

.finder__container.room::after {
  content: "";
  display: inline-block;
  width: 14px;
  width: 0.875rem;
  height: 14px;
  height: 0.875rem;
  background-image: url(../images/man.png);
  background-size: contain;
  vertical-align: middle;
  position: absolute;
  top: 50%;
  left: 8px;
  left: 0.5rem;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.finder__container.people {
  padding: 9.5px 0 11.5px 8px;
  padding: 0.59375rem 0 0.71875rem 0.5rem;
  position: relative;
  border-left: 1px solid #999;
}

.finder__container.people::after {
  /* border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 6px solid #000;
  content: "";
  position: absolute;
  right: 14px;
  right: 0.875rem;
  top: 18px;
  top: 1.125rem;
  width: 0;
  z-index: 0; */
}

.finder__btn {
  /* background-color: #336cc4; */
  border-radius: 5px;
}

.finder__btn button {
  width: 100%;
  height: 100%;
  font-size: 16px;
  font-size: 1rem;
  color: #fff;
  padding: 8px 53px;
  padding: 0.5rem 3.3125rem;
  background-color: #336cc4;
  border: none;
  border-radius: 5px;
}

@media screen and (min-width: 768px) {
  .finder form {
    width: 100%;
    max-width: 62.5rem;
    -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;
    padding: 1.875rem;
  }

  .finder__block:first-child {
    width: 42.2%;
  }

  .finder__block:nth-child(2) {
    width: 35%;
  }

  .finder__btn {
    width: 20.2%;
  }

  .finder__block:nth-child(2),
  .finder__btn {
    margin-top: 0;
  }

  .finder__container.check > p:nth-child(2) {
    letter-spacing: 0.07em;
  }

  .finder__container.check:nth-child(2) {
    padding: 0.325rem 0 0.425rem 0.8rem;
  }

  .finder__container.people > select {
    letter-spacing: 0.1em;
  }

  .finder__container.people::after {
    top: 1.0625rem;
    right: 0.6875rem;
  }
}

.flow-bar {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  max-width: 660px;
  max-width: 41.25rem;
}

.flow-bar__item {
  position: relative;
  height: 30px;
  height: 1.875rem;
}

.flow-bar__item img {
  height: 100%;
}

.flow-bar__item span {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  font-size: 14px;
  font-size: 0.875rem;
  color: #222;
  line-height: 1.42857143;
}

.flow-bar__item.current span {
  color: #fff;
}

.flow-bar > div:nth-child(2) p {
  -webkit-transform: translateX(-4px);
  transform: translateX(-4px);
}

.flow-bar > div:last-child p {
  -webkit-transform: translateX(-7px);
  transform: translateX(-7px);
}

.follow-plan {
  display: none;
}

@media screen and (min-width: 768px) {
  .follow-plan {
    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;
    max-width: 28%;
    width: 100%;
    position: absolute;
    right: 0;
    top: 5rem;
  }

  .follow-plan > div {
    display: inline-block;
    background-color: #fff;
    padding: 0.875rem 0.625rem;
    -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  }

  .follow-plan__title {
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.5;
  }

  .follow-plan__date,
  .follow-plan__people,
  .follow-plan__price {
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 1.42857143;
    padding-left: 3em;
    text-indent: -3em;
  }

  .follow-plan__date > span,
  .follow-plan__people > span {
    font-weight: 700;
  }

  .follow-plan__date {
    margin-top: 0.875rem;
  }

  .follow-plan__people {
    margin-top: 0.625rem;
  }

  .follow-plan__caption,
  .follow-plan__price > span:last-child {
    font-size: 0.875rem;
    font-weight: 700;
    line-height: 1.42857143;
  }

  .follow-plan__price {
    margin-top: 0.625rem;
  }

  .follow-plan__price > span:first-child {
    font-size: 1.375rem;
    font-weight: 700;
    line-height: 1.45454545;
    color: #cc0000;
    margin-left: 1.625rem;
  }

  .follow-plan__description {
    font-size: 0.75rem;
    font-weight: 400;
    line-height: 1.5;
    margin-top: 0.75rem;
  }
}

html {
  position: relative;
}

.footer {
  background-color: #222;
  color: #fff;
  padding-top: 30px;
  padding-top: 1.875rem;
  padding-bottom: 86px;
  padding-bottom: 5.375rem;
  text-align: center;
  height: 207px;
  height: 12.9375rem;
  position: absolute;
  width: 100%;
  bottom: 0;
  left: 0;
}

.footer__links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 9px;
  gap: 0.5625rem;
}

.footer__link {
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.5;
}

.footer__copy {
  font-size: 10px;
  font-size: 0.625rem;
  margin-top: 26px;
  margin-top: 1.625rem;
}

@media screen and (min-width: 768px) {
  .footer {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
    height: 9.375rem;
  }

  .footer__links {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 0;
  }

  .footer__link {
    border-right: 1px solid #fff;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
  }

  .footer__copy {
    margin-top: 2.4375rem;
  }
}

.mv {
  height: 213px;
  height: 13.3125rem;
  position: relative;
  width: 100vw;
  z-index: 0;
}

.swiper-container {
  bottom: 0;
  height: 100%;
  left: 0;
  overflow: hidden;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
}

.swiper-container .swiper-wrapper {
  height: 100%;
}

.swiper-container .swiper-slide {
  height: 100%;
  width: 100%;
  position: relative;
}

.swiper-container .slide-img {
  height: 100%;
  width: 100%;
}

.swiper-container .main_img {
  display: block;
  height: 100%;
  width: 100%;
}

.swiper-container .swiper-slide .main_img img {
  -o-object-fit: cover;
  display: block;
  height: 100%;
  object-fit: cover;
  -o-object-position: 50% -9%;
  object-position: 50% -9%;
  width: 100%;
  position: absolute;
}

@media screen and (min-width: 768px) {
  .mv {
    height: 22.5rem;
    position: relative;
    width: 100vw;
  }

  .swiper-container .swiper-slide .main_img img {
    -o-object-position: 50% 17%;
    object-position: 50% 17%;
  }
}

.header {
  background-color: #fff;
  position: relative;
  height: 42px;
  height: 2.625rem;
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 10;
  border-bottom: 1px solid #ccc;
}

.header__top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  height: 100%;
  position: relative;
}

.header__left {
  width: 198px;
  width: 12.375rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.header__logo {
  width: 124.61px;
  width: 7.788125rem;
  display: block;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.header__text {
  font-family: "Noto Serif JP", serif;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  .header {
    z-index: 94;
    height: 3.75rem;
  }

  .header__left {
    position: static;
    width: 15.3125rem;
    -webkit-transform: none;
    transform: none;
    gap: 0.3125rem;
  }

  .header__logo {
    width: 9.375rem;
  }

  .header__text {
    font-size: 1.125rem;
  }
}

@media (max-width: 374px) {
  .header__text {
    font-size: 3.73vw;
    font-weight: 500;
  }
}

.header__hamburger {
  width: 22px;
  width: 1.375rem;
  z-index: 9999;
  position: fixed;
  top: 14px;
  top: 0.875rem;
  right: 16px;
  right: 1rem;
  border: none;
  background: transparent;
}

.header__hamburger span {
  position: relative;
  display: block;
  height: 2px;
  height: 0.125rem;
  width: 22px;
  width: 1.375rem;
  background-color: #000;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}

.header__hamburger.is-open span {
  background-color: #222;
  width: 22px;
  width: 1.375rem;
}

.header__hamburger span:nth-child(1) {
  top: 0;
}

.header__hamburger span:nth-child(2) {
  margin: 4px 0;
  margin: 0.25rem 0;
}

.header__hamburger span:nth-child(3) {
  top: 0;
}

.header__hamburger.is-open span {
  background-color: #fff;
}

.header__hamburger.is-open span:nth-child(1) {
  top: 4px;
  top: 0.25rem;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

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

.header__hamburger.is-open span:nth-child(3) {
  top: -8px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

body.fix {
  overflow: hidden;
  height: 100%;
}

@media screen and (min-width: 768px) {
  .header__hamburger {
    position: relative;
    top: 1.1875rem;
    right: 0.8125rem;
  }

  .header__hamburger span {
    width: 1.875rem;
  }

  .header__hamburger.is-open span {
    width: 1.875rem;
  }

  .header__hamburger.is-open span:nth-child(1) {
    top: 8px;
  }

  .header__hamburger span:nth-child(2) {
    margin: 6.5px 0;
  }
}

.drawer {
  position: fixed;
  display: none;
  top: 0;
  right: 0;
  bottom: 0;
  background-color: #222;
  color: #fff;
  text-align: left;
  width: 240px;
  width: 15rem;
  height: 100vh;
  z-index: 8888;
  padding: 28px 20px;
  padding: 1.75rem 1.25rem;
}

.drawer__title {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 700;
}

.drawer__items {
  margin-top: 16px;
  margin-top: 1rem;
}

.drawer__item {
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5;
  padding: 13.5px 0;
  padding: 0.84375rem 0;
  border-bottom: 1px solid #707070;
  position: relative;
}

@media screen and (min-width: 768px) {
  .drawer {
    width: 18.75rem;
  }
}

@media (min-width: 1000px) {
  .header__hamburger.is-open {
    /* ドロワーメニューと一緒に画面右端に移動 */
    position: fixed;
    top: 1.25rem;
    right: 1.25rem;
  }
}

.y-header .header__left {
  width: 210px;
  width: 13.125rem;
}

.y-header .header__text {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 700;
  margin-left: 10px;
  margin-left: 0.625rem;
}

@media screen and (min-width: 768px) {
  .y-header .header__left {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 14.6875rem;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }

  .y-header .header__hamburger {
    position: absolute;
  }
}

@media (min-width: 1000px) {
  .y-header .header__hamburger.is-open {
    /* ドロワーメニューと一緒に画面右端に移動 */
    position: fixed;
    top: 1.25rem;
    right: 1.25rem;
  }
}

.login {
  background-color: #fff;
  padding: 20px 20px 30px;
  padding: 1.25rem 1.25rem 1.875rem;
  max-width: 435px;
  max-width: 27.1875rem;
  width: 100%;
  -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
}

.login__title h3 {
  text-align: center;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.45;
}

.login__input input {
  display: block;
  border: 1px solid #999;
  border-radius: 5px;
  width: 100%;
  padding: 13px 10px;
  padding: 0.8125rem 0.625rem;
  margin-left: auto;
  margin-right: auto;
  margin-top: 20px;
  margin-top: 1.25rem;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.42857143;
}

.login__password {
  position: relative;
  display: inline-block;
  width: 100%;
}

.login__icon {
  position: absolute;
  right: 20px;
  right: 1.25rem;
  top: 54%;
  width: 19.61px;
  width: 1.225625rem;
  height: 15.56px;
  height: 0.9725rem;
  cursor: pointer;
}

.login__description {
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 1.66666667;
  margin-top: 10px;
  margin-top: 0.625rem;
}

.login__btn {
  width: 100%;
  border: 1px solid #336cc4;
  border-radius: 5px;
  background-color: #336cc4;
  padding-top: 15px;
  padding-top: 0.9375rem;
  padding-bottom: 15px;
  padding-bottom: 0.9375rem;
  text-align: center;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.42857143;
  color: #fff;
  margin-top: 20px;
  margin-top: 1.25rem;
}

@media screen and (min-width: 768px) {
  .login {
    padding: 1.25rem 2.5rem 2.5rem;
  }
}

.login_form-button {
  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;
  gap: 10px;
  gap: 0.625rem;
}

.login__btn--red {
  background-color: #cc0000;
  border: 1px solid #cc0000;
}

.login__btn--white {
  background-color: #fff;
  border: 1px solid #999999;
  color: #222222;
}

.pagination-wrapper {
  position: absolute;
  bottom: 227px;
  bottom: 14.1875rem;
  text-align: center;
  width: 100%;
  font-size: 12px;
  font-size: 0.75rem;
}

@media screen and (min-width: 768px) {
  .pagination-wrapper {
    bottom: 10.875rem;
  }
}

.pagination-container {
  display: inline-block;
  max-width: 1000px;
  width: 100%;
  text-align: left;
  white-space: nowrap;
  overflow: scroll;
  /*IE(Internet Explorer)・Microsoft Edgeへの対応*/
  -ms-overflow-style: none;
  /*Firefoxへの対応*/
  scrollbar-width: none;
}

/*Google Chrome、Safariへの対応*/
.pagination-container::-webkit-scrollbar {
  display: none;
}

.pagination-container.padding {
  padding-right: 10px;
  padding-left: 10px;
}

@media screen and (min-width: 768px) {
  .pagination-container.padding {
    padding-right: 20px;
    padding-left: 20px;
  }
}

.plan-detail__slider {
  max-width: 661px;
  max-width: 41.3125rem;
  overflow: hidden;
  position: relative;
}

.plan-detail__slider .room-swiper {
  position: relative;
}

.plan-detail__slider .swiper-container {
  width: 100%;
  max-width: 355px;
  margin: 0 auto;
  overflow: visible;
  /* これで左右の画像の端が見えるようになります */
}

.plan-detail__slider .swiper-slide {
  width: 355px;
  height: 266px;
  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;
}

.plan-detail__slider .swiper-slide img {
  width: 355px;
  height: 266px;
  -o-object-fit: cover;
  object-fit: cover;
}

.plan-detail__slider .swiper-button-next,
.plan-detail__slider .swiper-button-prev {
  width: 30px;
  height: 30px;
  background-color: #222;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  z-index: 10;
  color: #fff;
}

.plan-detail__slider .swiper-button {
  width: 30px;
  width: 1.875rem;
  height: 40px;
  height: 2.5rem;
  font-size: 22px;
  font-size: 1.375rem;
  position: absolute;
}

.plan-detail__slider .swiper-button-next {
  border-radius: 5px 0 0 5px;
  top: 58%;
  right: 0;
}

.plan-detail__slider .swiper-button-prev {
  border-radius: 0 5px 5px 0;
  top: 58%;
  left: 0;
}

.plan-detail__slider .swiper-pagination {
  width: 29px;
  width: 1.8125rem;
  height: 20px;
  height: 1.25rem;
  font-size: 14px;
  font-size: 0.875rem;
  margin-right: auto;
  margin-left: auto;
  position: absolute;
  bottom: -25px;
  bottom: -1.5625rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  color: #222;
  z-index: 9999;
  display: inline-block;
}

@media screen and (min-width: 375px) {
  .plan-detail__slider .swiper-button-next {
    top: 51%;
    right: 50%;
    -webkit-transform: translateX(177px);
    transform: translateX(177px);
  }

  .plan-detail__slider .swiper-button-prev {
    top: 51%;
    left: 50%;
    -webkit-transform: translateX(-177px);
    transform: translateX(-177px);
  }
}

.plan {
  background-color: #fff;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.plan__room__img {
  padding-top: 50.14%;
  position: relative;
}

.plan__room__img img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  -o-object-fit: cover;
  object-fit: cover;
}

.plan-room__body {
  padding: 10px 10px 20px;
  padding: 0.625rem 0.625rem 1.25rem;
}

.plan-room__title {
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.07em;
  color: #065fd4;
}

.plan-room__detail {
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 1.5;
  margin-top: 12px;
  margin-top: 0.75rem;
  letter-spacing: 0.11em;
}

.plan-item {
  border-top: 1px solid #ccc;
  padding: 13px 10px 13px;
  padding: 0.8125rem 0.625rem 0.8125rem;
  position: relative;
}

.plan-item::after {
  font-family: "Font Awesome 5 Free";
  content: "\f054";
  font-size: 20px;
  font-weight: 700;
  position: absolute;
  width: 10px;
  width: 0.625rem;
  height: 17.25px;
  height: 1.078125rem;
  right: 10px;
  top: 40%;
  color: #336cc4;
}

.plan-item:hover::after {
  color: #00aaff;
}

.plan-item__title {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.42857143;
  letter-spacing: 0.05em;
}

.plan-item__detail {
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 1.6;
  letter-spacing: 0.05em;
  margin-top: 12.7px;
  margin-top: 0.79375rem;
}

.plan-item__price {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.42857143;
  margin-top: 10.6px;
  margin-top: 0.6625rem;
  letter-spacing: 0.05em;
}

.plan-item__price span {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.444444444;
  color: #cc0000;
}

@media screen and (min-width: 768px) {
  .plan {
    max-width: 62.5rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    margin-left: auto;
    margin-right: auto;
  }

  .plan-room {
    -webkit-box-flex: 355;
    -ms-flex: 355;
    flex: 355;
    -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  }

  .plan-room__body {
    padding: 0.625rem 1.25rem 1.25rem;
  }

  .plan-room__title {
    letter-spacing: 0.14em;
  }

  .plan-room__detail {
    letter-spacing: 0.07em;
  }

  .plan__items {
    -webkit-box-flex: 645;
    -ms-flex: 645;
    flex: 645;
    -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  }

  .plan-item {
    border: none;
    padding: 0.625rem 1.25rem 0.8125rem;
    border-top: 1px solid #ccc;
  }

  .plan-item::after {
    right: 1.1875rem;
    top: 37%;
    color: #336cc4;
  }

  .plan-item__detail {
    line-height: 1.5;
  }

  .plan-item__price {
    margin-top: 0.5375rem;
  }
}

.reserve-detail {
  max-width: 355px;
  max-width: 22.1875rem;
  width: 100%;
  max-height: calc(100vh - 40px);
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  border: 1px solid #000;
  border-radius: 5px;
  padding-top: 14px;
  padding-top: 0.875rem;
  background-color: #fff;
  /* overflow: scroll; */
}

.reserve-detail__screen {
  height: 300px;
  height: 18.75rem;
  /* overflow: scroll; */
  overflow-y: scroll;
  padding: 0 10.5px;
  padding: 0 0.65625rem;
}

.reserve-detail__screen::-webkit-scrollbar {
  width: 10px;
  height: 3px;
}

.reserve-detail__screen::-webkit-scrollbar-track {
  background: #def0ff;
}

.reserve-detail__screen::-webkit-scrollbar-thumb {
  background: #aaa;
}

.reserve-detail__item {
  margin-top: 20px;
  margin-top: 1.25rem;
  padding-left: 12px;
  padding-left: 0.75rem;
  padding-right: 12px;
  padding-right: 0.75rem;
}

@media screen and (max-width: 767px) {
  .reserve-detail--pc {
    margin-top: 10px;
  }

  .reserve-detail__item {
    padding: 0;
    padding-top: 10px;
  }

  .reserve-detail__item .detail-item__title {
    margin-bottom: 20px;
    position: relative;
  }

  .reserve-detail__item .detail-item__title::after {
    content: "";
    position: absolute;
    width: 100%;
    bottom: -3px;
    left: 0%;
    height: 2px;
    background-color: #000;
  }

  .reserve-detail__item table {
    width: 100%;
  }

  .reserve-detail__item table tr {
    display: flex;
  }

  .reserve-detail__item table tr td {
    width: 100%;
    padding-bottom: 10px;
    display: block;
    height: auto;
  }

  .reserve-detail__item table tr:nth-child(1) {
    display: none;
  }

  .reserve-detail__item table tr:nth-child(2) {
    display: block;
    flex-wrap: wrap;
  }

  .reserve-detail__item table tr:nth-child(2) td:nth-child(1) {
    /* width: 50%; */
  }

  .reserve-detail__item table tr:nth-child(2) td:nth-child(1)::before {
    content: "【 大人 】";
    font-weight: bold;
    display: block;
    font-size: 13px;
    margin-bottom: 5px;
  }

  .reserve-detail__item table tr:nth-child(2) td:nth-child(2) {
    /* width: 50%; */
  }

  .reserve-detail__item table tr:nth-child(2) td:nth-child(2)::before {
    content: "【 小学生（12歳以下）】";
    font-weight: bold;
    display: block;
    font-size: 13px;
    margin-bottom: 5px;
  }

  .reserve-detail__item table tr:nth-child(2) td:nth-child(3) {
    padding-top: 20px;
  }

  .reserve-detail__item table tr:nth-child(2) td:nth-child(3)::before {
    content: "【 幼児（6歳未満）】";
    font-weight: bold;
    display: block;
    font-size: 13px;
    margin-bottom: 5px;
  }

  .reserve-detail__item table tr:nth-child(3) {
    flex-direction: column;
  }
}

.reserve-detail__title {
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5;
  font-weight: 700;
  color: #222;
  padding-left: 12px;
  padding-left: 0.75rem;
}

.detail-item__title {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 700;
  color: #222;
}

.container {
  display: inline-block;
  position: relative;
  width: 62px;
  width: 3.875rem;
  height: 40px;
  height: 2.5rem;
  border: 1px solid #999;
  border-radius: 5px;
  padding: 7px 5px 10px 9px;
  padding: 0.4375rem 0.3125rem 0.625rem 0.5625rem;
  background-color: #fff;
}

.container::after {
  /* border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 6px solid #000;
    content: "";
    position: absolute;
    right: 4px;
    right: 0.25rem;
    top: 16px;
    top: 1rem;
    width: 0;
    z-index: 5; */
}

.container + span {
  margin-left: 10px;
  margin-left: 0.625rem;
}

.detail-item__input {
  max-width: 360px;
  max-width: 22.5rem;
  width: 100%;
  margin-top: 5px;
  margin-top: 0.3125rem;
}

.detail-item__input tr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.detail-item__child {
  max-width: 259px;
  max-width: 16.1875rem;
  width: 100%;
  margin-left: -3px;
  margin-left: -0.1875rem;
}

.detail-item__child tr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-top: 9px;
  margin-top: 0.5625rem;
}

.baby .detail-item__child tr:first-child {
  margin-top: 0;
}

.detail-item__property {
  font-size: 14px;
  font-size: 0.875rem;
  color: #000;
  -webkit-box-flex: 97;
  -ms-flex: 97;
  flex: 97;
}

.detail-item__value {
  font-size: 14px;
  font-size: 0.875rem;
  -webkit-box-flex: 86;
  -ms-flex: 86;
  flex: 86;
}

.detail-item__btn {
  -webkit-box-flex: 70;
  -ms-flex: 70;
  flex: 70;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.detail-item__child.elementary .detail-item__property {
  -webkit-box-flex: 86;
  -ms-flex: 86;
  flex: 86;
}

.baby {
  width: 100%;
  background-color: #f5f5f7;
  padding: 10px;
  padding: 0.625rem;
  margin-top: 2px;
  margin-top: 0.125rem;
}

.baby > p {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 700;
  text-align: left;
}

.baby .detail-item__property {
  -webkit-box-flex: 81;
  -ms-flex: 81;
  flex: 81;
}

.baby .detail-item__child {
  margin-top: 5px;
  margin-top: 0.3125rem;
}

.detail-btn__img img {
  width: 20px;
  width: 1.25rem;
}

.detail-btn__text {
  margin-left: 2px;
}

select {
  width: 100%;
  height: 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.reserve-detail__submit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  gap: 0.625rem;
  padding-top: 14px;
  padding-top: 0.875rem;
  padding-left: 12px;
  padding-left: 0.75rem;
  padding-right: 12px;
  padding-right: 0.75rem;
  border-top: 1px solid #ccc;
  margin-top: 10px;
  margin-top: 0.625rem;
}

.reserve-detail__submit {
  margin-top: 0;
  background-color: #fff;
  width: 100%;
  padding-bottom: 10px;
  padding-bottom: 0.625rem;
  margin-top: 10px;
  margin-top: 0.625rem;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

.reserve-detail__submit button {
  font-size: 14px;
  font-size: 0.875rem;
  color: #000;
  border: 1px solid #222;
  border-radius: 5px;
  width: 50%;
  padding: 12px 0;
  padding: 0.75rem 0;
}

.reserve-detail__submit button:last-child {
  border: 1px solid #336cc4;
  background-color: #336cc4;
  color: #fff;
  padding: 12px 0;
  padding: 0.75rem 0;
}

.baby .container {
  background-color: #fff;
}

@media screen and (min-width: 768px) {
  .reserve-detail.reserve-detail--pc {
    max-width: 47.875rem;
    max-height: 21.875rem;
    background-color: #def0ff;
    padding: 0.40625rem 0;
    position: absolute;
    overflow: hidden;
  }

  .reserve-detail .form-number--pc {
    padding: 0.28125rem 0.65625rem;
  }

  .reserve-detail__item {
    margin-top: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .reserve-detail--pc table {
    border-collapse: collapse;
    max-width: 45.9375rem;
    width: 100%;
    background-color: #fff;
    color: #000;
  }

  .reserve-detail--pc table,
  .reserve-detail--pc th,
  .reserve-detail--pc td {
    border: 1px solid #666;
  }

  .reserve-detail__screen {
    /* max-width: 45.9375rem; */
    width: 100%;
    padding: 0 10px 4.4375rem;
    margin-right: auto;
    margin-left: auto;
  }

  .reserve-detail--pc td.detail-item__input--meal-bedding,
  .reserve-detail--pc td.detail-item__input--meal {
    padding-bottom: 0.0625rem;
  }

  .reserve-detail--pc td.detail-item__input--meal,
  .reserve-detail--pc td.detail-item__input--noneed {
    padding-left: 1.8125rem;
  }

  .reserve-detail--pc td.detail-item__input--bedding,
  .reserve-detail--pc td.detail-item__input--noneed {
    padding-top: 0.1875rem;
  }

  .detail-item__input--meal-bedding label {
    margin-right: 0.3125rem;
  }

  .detail-item__input--meal label {
    margin-right: 3.0625rem;
  }

  .detail-item__input--bedding label {
    margin-right: 2.875rem;
  }

  .detail-item__input--noneed label {
    margin-right: 0.4375rem;
  }

  .reserve-detail--pc td.detail-item__input--meal-bedding,
  .reserve-detail--pc td.detail-item__input--bedding,
  .reserve-detail--pc td.detail-item__input--meal,
  .reserve-detail--pc td.detail-item__input--noneed {
    border: none;
  }

  .reserve-detail--pc th {
    background-color: #222;
    color: #fff;
    font-size: 0.75rem;
    font-weight: 400;
    line-height: 1.41666667;
    text-align: left;
    padding: 0.20625rem 0 0.21875rem 0.625rem;
  }

  .reserve-detail--pc .detail-item th:first-child {
    width: 119px;
  }

  .reserve-detail--pc .detail-item th:nth-child(2) {
    width: 159px;
  }

  .reserve-detail--pc .detail-item th:nth-child(3) {
    width: 165px;
  }

  .reserve-detail--pc td {
    text-align: left;
    font-size: 0.875rem;
    vertical-align: top;
    padding: 7px 0 5px 10px;
  }

  .reserve-detail--pc .container {
    display: inline-block;
    position: relative;
    width: 3.875rem;
    height: 30px;
    border: 1px solid #999;
    border-radius: 5px;
    padding: 0.25rem 0.3125rem 0.3125rem 0.5625rem;
    background-color: #fff;
  }

  .reserve-detail--pc .container::after {
    top: 12px;
  }

  .reserve-detail__submit {
    margin-top: 0;
    background-color: #fff;
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    padding-bottom: 0.625rem;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    z-index: 6;
  }

  .reserve-detail--pc .reserve-detail__submit input:last-child {
    margin-right: 0;
    margin-left: auto;
    padding: 3px 51px;
  }
}

.section-sub-title {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.4285714286;
  border-left: 4px solid #cc0000;
  padding-left: 6px;
  padding-left: 0.375rem;
  background-color: #ffdddd;
  padding-block: 7px;
  padding-block: 0.4375rem;
}

.back-btn {
  position: fixed;
  bottom: 20px;
  bottom: 1.25rem;
  right: 10px;
  right: 0.625rem;
  width: 46px;
  width: 2.875rem;
  height: 46px;
  height: 2.875rem;
  line-height: 50px;
  text-align: center;
  background-color: #888;
  border-radius: 5px;
  z-index: 9;
}

.back-btn a {
  display: block;
  width: 100%;
  height: 100%;
  cursor: pointer;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  position: relative;
}

.back-btn a::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  content: "\f077";
  font-size: 25px;
  color: #fff;
  position: absolute;
  width: 10px;
  width: 0.625rem;
  height: 17px;
  height: 1.0625rem;
  top: -6%;
  left: 25%;
  margin: auto;
  text-align: center;
  opacity: 0.5;
}

@media screen and (min-width: 768px) {
  .back-btn a::before {
    top: -16%;
    left: 22%;
  }
}

@media screen and (min-width: 960px) {
  .back-btn a::before {
    top: -6%;
    left: 25%;
  }
}

.y-flow-bar {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 100%;
  max-width: 660px;
  max-width: 41.25rem;
  margin-inline: auto;
  padding-top: 20px;
  padding-top: 1.25rem;
  background-color: #fff;
  padding-inline: 10px;
  padding-inline: 0.625rem;
}

@media screen and (min-width: 768px) {
  .y-flow-bar {
    padding-inline: 0;
  }
}

.y-flow-bar__item {
  position: relative;
  height: 30px;
  height: 1.875rem;
}

.y-flow-bar__item img {
  height: 100%;
}

.y-flow-bar__item span {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  font-size: 14px;
  font-size: 0.875rem;
  color: #222;
  line-height: 1.42857143;
  width: 80%;
  text-align: center;
}

.y-flow-bar__item.current span {
  color: #fff;
}

.l-inner {
  width: 100%;
  padding-right: 10px;
  padding-left: 10px;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (min-width: 768px) {
  .l-inner {
    max-width: 1080px;
    padding-right: 20px;
    padding-left: 20px;
  }
}

.l-plan {
  margin-top: 10px;
  margin-top: 0.625rem;
  margin-bottom: 250px;
  margin-bottom: 15.625rem;
}

@media screen and (min-width: 768px) {
  .l-plan {
    margin-top: 1.25rem;
    margin-bottom: 15.8125rem;
  }
}

.top-yazaki-form {
  /* margin-top: -25px;
    margin-top: -1.5625rem; */
  border-top: 1px solid #ccc;
  border-top: 0.0625rem solid #ccc;
}

@media screen and (min-width: 768px) {
  .top-yazaki-form {
    border-top: none;
  }
}

.confirm-page {
  margin-top: 43px;
  margin-top: 2.6875rem;
}

.confirm-page .left-block__contents.reserve-content {
  padding-top: 20px;
  padding-top: 1.25rem;
}

.confirm-page-title {
  display: inline-block;
  width: 100%;
  background-color: #fff;
  padding-top: 12px;
  padding-top: 0.75rem;
  padding-bottom: 12px;
  padding-bottom: 0.75rem;
  margin-right: auto;
  margin-left: auto;
  text-align: center;
  border-bottom: 1px solid #ccc;
  position: relative;
}

.confirm-page-title h1 {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.4444444;
}

/* .confirm-page-title::before {
  font-family: "Font Awesome 5 Free";
  content: "\f053";
  font-size: 20px;
  font-weight: 700;
  position: absolute;
  width: 8px;
  width: 0.5rem;
  height: 13.8px;
  height: 0.8625rem;
  left: 2%;
  top: 21%;
} */

.confirm-page-title .history_back {
  position: absolute;
  left: 20px;
  top: 50%;
  margin-top: -12px;
}

.confirm-page .main {
  max-width: 1000px;
  max-width: 62.5rem;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (min-width: 768px) {
  .confirm-page .main {
    padding-bottom: 14.4375rem;
  }

  .confirm-page-title .history_back {
    display: none;
  }
}

.confirm-page .confirm > button {
  display: block;
  width: 100%;
  color: #222;
  background-color: #fff;
  border: 1px solid #707070;
  font-weight: 700;
  font-size: 16px;
  font-size: 1rem;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  border-radius: 5px;
  padding: 12px 0;
  padding: 0.75rem 0;
}

.cancel-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  background: rgba(0, 0, 0, 0.5);
  overflow: auto;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.cancel-modal.active {
  opacity: 1;
  visibility: visible;
  z-index: 999;
}

.cancel-modal__body {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 310px;
  width: 19.375rem;
  height: 257px;
  height: 16.0625rem;
  background-color: #fff;
  border-radius: 10px;
}

.cancel-modal-close {
  position: absolute;
  right: 3px;
  top: -40px;
}

.cancel-modal-close__body {
  background: transparent;
  border-color: transparent;
  padding: 0;
  margin: 0;
  cursor: pointer;
  width: 28px;
  display: block;
  height: 28px;
}

.cancel-modal-close span {
  position: relative;
  width: 100%;
  height: 2px;
  height: 0.125rem;
  background: #fff;
  display: block;
}

.cancel-modal-close span:nth-child(1) {
  top: 2px;
  top: 0.125rem;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.cancel-modal-close span:nth-child(2) {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.cancel-modal__content {
  padding: 20px 10px;
  padding: 1.25rem 0.625rem;
}

.cancel-modal__title {
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  text-align: center;
}

.cancel-modal__description {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.71428571;
  text-align: center;
  margin-top: 20px;
  margin-top: 1.25rem;
}

.cancel-modal__content button {
  display: block;
  width: 100%;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5;
  padding-top: 12px;
  padding-top: 0.75rem;
  padding-bottom: 14px;
  padding-bottom: 0.875rem;
}

.cancel-modal__content button:first-of-type {
  background-color: #cc0000;
  color: #fff;
  border-radius: 5px;
  margin-top: 20px;
  margin-top: 1.25rem;
}

.cancel-modal__content button:last-of-type {
  background-color: #fff;
  border: 1px solid #222;
  border-radius: 5px;
  margin-top: 9px;
  margin-top: 0.5625rem;
}

.confirm-page .confirm > button {
  display: block;
  width: 100%;
  color: #222;
  background-color: #fff;
  border: 1px solid #707070;
  font-weight: 700;
  font-size: 16px;
  font-size: 1rem;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  border-radius: 5px;
  padding: 12px 0;
  padding: 0.75rem 0;
}

.cancel-complete {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  background: rgba(0, 0, 0, 0.5);
  overflow: auto;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.cancel-complete.active {
  opacity: 1;
  visibility: visible;
  z-index: 999;
}

.cancel-complete__body {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 310px;
  width: 19.375rem;
  height: 209px;
  height: 13.0625rem;
  background-color: #fff;
  border-radius: 10px;
}

.cancel-complete-close {
  position: absolute;
  right: 3px;
  top: -40px;
}

.cancel-complete-close__body {
  background: transparent;
  border-color: transparent;
  padding: 0;
  margin: 0;
  cursor: pointer;
  width: 28px;
  display: block;
  height: 28px;
}

.cancel-complete-close span {
  position: relative;
  width: 100%;
  height: 2px;
  height: 0.125rem;
  background: #fff;
  display: block;
}

.cancel-complete-close span:nth-child(1) {
  top: 2px;
  top: 0.125rem;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.cancel-complete-close span:nth-child(2) {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.cancel-complete__content {
  padding: 20px 10px;
  padding: 1.25rem 0.625rem;
}

.cancel-complete__title {
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  text-align: center;
}

.cancel-complete__description {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.71428571;
  text-align: center;
  margin-top: 20px;
  margin-top: 1.25rem;
}

.cancel-complete__content button {
  display: block;
  width: 100%;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5;
  padding-top: 12px;
  padding-top: 0.75rem;
  padding-bottom: 14px;
  padding-bottom: 0.875rem;
  background-color: #fff;
  border: 1px solid #222;
  border-radius: 5px;
  margin-top: 31px;
  margin-top: 1.9375rem;
}

.confirm-page .confirm {
  padding: 20px 10px 314px;
  padding: 1.25rem 0.625rem 19.625rem;
}

.confirm-page .footer {
  margin-top: 10px;
  margin-top: 0.625rem;
}

.confirm-page .right-block {
  display: none;
}

@media screen and (min-width: 768px) {
  .confirm-page-title {
    width: 100%;
    background-color: inherit;
    padding-top: 1.875rem;
    padding-bottom: 1.875rem;
    border: none;
    font-size: 16px;
  }

  .confirm-page-title h2 {
    font-size: 1.375rem;
    line-height: 1.45454545;
  }

  .confirm-page .right-block {
    display: block;
    width: 28%;
    margin-right: 0.5625rem;
  }

  .confirm-page .right-block__submit {
    display: block;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-right: 0;
    margin-left: auto;
    font-size: 0.875rem;
    line-height: 1.42857143;
    color: #065fd4;
    margin-top: 1.875rem;
    text-decoration: underline;
  }

  .confirm-page {
    margin-top: 3.75rem;
  }

  .confirm-page .form {
    background-color: #fff;
    padding: 1.25rem 0 2.5rem;
  }

  .confirm-page .reserver,
  .confirm-page .representative,
  .confirm-page .information,
  .confirm-page .dinner {
    border-bottom: none;
    padding-top: 1.25rem;
    padding-bottom: 0;
  }

  .confirm-page .confirm {
    display: none;
  }

  .confirm-page .confirm {
    padding: 1.25rem 0.625rem 3.75rem;
  }

  .confirm-page .footer {
    margin-top: 0.875rem;
  }
}

.form01 {
  margin-top: 43px;
  margin-top: 2.6875rem;
}

.flow-bar {
  background-color: #fff;
  padding-left: 10px;
  padding-left: 0.625rem;
  padding-right: 10px;
  padding-right: 0.625rem;
  padding-top: 20px;
  padding-top: 1.25rem;
  padding-bottom: 20px;
  padding-bottom: 1.25rem;
}

@media screen and (min-width: 768px) {
  .flow-bar {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
}

.reserve-content {
  background-color: #fff;
  padding-left: 10px;
  padding-left: 0.625rem;
  padding-right: 10px;
  padding-right: 0.625rem;
  padding-top: 3px;
  padding-top: 0.1875rem;
  padding-bottom: 20px;
  padding-bottom: 1.25rem;
}

.reserve-content__title {
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
}

.reserve-content__detail {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.42857143;
  margin-top: 10px;
  margin-top: 0.625rem;
  padding-left: 4.4em;
  text-indent: -4.4em;
}

.reserve-content__detail > span {
  font-weight: 700;
  margin-right: 20px;
  margin-right: 1.25rem;
}

@media screen and (min-width: 768px) {
  .reserve-content {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
}

.form01 .main {
  max-width: 1000px;
  max-width: 62.5rem;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 60px;
  margin-bottom: 3.75rem;
}

@media screen and (min-width: 768px) {
  .form01 .main {
    margin-bottom: 11.0625rem;
  }
}

.form01 form {
  background-color: #fff;
  margin-top: 10px;
  margin-top: 0.625rem;
}

.form01 input,
.form01 select,
.form01 textarea {
  display: block;
  width: 100%;
  max-width: 660px;
  max-width: 41.25rem;
  border: 1px solid #999;
  border-radius: 5px;
  padding: 9px 10px;
  padding: 0.5625rem 0.625rem;
  margin-top: 7px;
  margin-top: 0.4375rem;
}

.form01 label {
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 700;
  margin-top: 25px;
  margin-top: 1.5625rem;
}

.form01 label > span {
  margin-right: 10px;
  margin-right: 0.625rem;
}

.required {
  display: inline-block;
  text-align: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 40px;
  width: 2.5rem;
  height: 20px;
  height: 1.25rem;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 400;
  color: #cc0000;
  background-color: #ffdddd;
}

.any {
  display: inline-block;
  text-align: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 40px;
  width: 2.5rem;
  height: 20px;
  height: 1.25rem;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 400;
  background-color: #ddd;
}

input::-webkit-input-placeholder {
  color: #ccc;
}

input::-moz-placeholder {
  color: #ccc;
}

input::-ms-input-placeholder {
  color: #ccc;
}

input::placeholder {
  color: #ccc;
}

.description-text {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.71428571;
  margin-top: 10px;
  margin-top: 0.625rem;
}

.reserver,
.representative,
.information,
.dinner {
  padding-left: 10px;
  padding-left: 0.625rem;
  padding-right: 10px;
  padding-right: 0.625rem;
  padding-top: 25px;
  padding-top: 1.5625rem;
  padding-bottom: 25px;
  padding-bottom: 1.5625rem;
  /* border-bottom: 1px solid #ccc; */
}

.small-description {
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 1.66666667;
  margin-top: 12px;
  margin-top: 0.75rem;
}

.form01 select {
  /* -moz-appearance: menulist;
    -webkit-appearance: menulist; */
}

.form01 select::-ms-expand {
  display: block;
}

@media screen and (min-width: 768px) {
  .reserver,
  .representative,
  .information,
  .dinner {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
}

.reserver {
  padding-top: 20px;
  padding-top: 1.25rem;
}

.reserver label.first {
  margin-top: 20px;
  margin-top: 1.25rem;
}

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

  .reserver select {
    width: 30%;
  }
}

.representative__check {
  position: relative;
  margin-top: 10px;
  margin-top: 0.625rem;
}

.representative__check input {
  display: inline-block;
  width: 18px;
  width: 1.125rem;
  height: 18px;
  height: 1.125rem;
  background-repeat: 3px;
  margin-left: 0;
  position: relative;
  top: 4px;
}

.representative__check span {
  font-size: 14px;
  font-size: 0.875rem;
  padding-left: 5px;
  padding-left: 0.3125rem;
}

@media screen and (min-width: 768px) {
  .representative {
    padding-top: 26px;
  }

  .representative select {
    width: 26%;
  }
}

input.input-check {
  display: inline-block;
  width: 24px;
  width: 1.5rem;
  height: 24px;
  height: 1.5rem;
  border-radius: 50%;
  position: relative;
  top: 6px;
  margin-top: 11px;
  margin-top: 0.6875rem;
  margin-right: 1px;
}

.information a {
  display: inline;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.71428571;
  text-decoration: underline;
}

.information label {
  margin-top: 19px;
  margin-top: 1.1875rem;
}

.information label.ferry {
  margin-top: 27px;
  margin-top: 1.6875rem;
}

.text-link {
  color: #065fd4;
  text-decoration: underline;
}

.upgrade-text {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.71428571;
  padding: 10px;
  padding: 0.625rem;
  background-color: #ffe9e9;
  margin-top: 20px;
  margin-top: 1.25rem;
}

.inquiries {
  padding: 25px 10px 30px;
  padding: 1.5625rem 0.625rem 1.875rem;
}

.inquiries label {
  margin-top: 17px;
  margin-top: 1.0625rem;
}

.inquiries textarea {
  height: 140px;
  height: 8.75rem;
}

.payment__contents {
  margin-top: 10px;
  margin-top: 0.625rem;
  background-color: #fff;
  padding: 20px 10px;
  padding: 1.25rem 0.625rem;
  border-bottom: 1px solid #ccc;
}

.payment__flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-top: 13px;
  margin-top: 0.8125rem;
}
.payment__flex.parts {
  justify-content: flex-start;
}

.payment__caption,
.payment__price-right {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.42857143;
}

.payment__price-left {
  margin-top: 10px;
  margin-top: 0.625rem;
}

.payment__price-right > span {
  font-size: 22px;
  font-size: 1.375rem;
  font-weight: 700;
  line-height: 1.45454545;
  color: #cc0000;
  /* margin-left: 26px;
    margin-left: 1.625rem; */
}

.payment__description {
  text-align: right;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.5;
  margin-top: 12px;
  margin-top: 0.75rem;
}
.payment__description.parts {
  text-align: left;
}

.confirm {
  background-color: #fff;
  padding: 20px 10px 60px;
  padding: 1.25rem 0.625rem 3.75rem;
  text-align: center;
  /* border-bottom: 1px solid #ccc; */
}

.confirm a,
.confirm button {
  display: block;
  width: 100%;
  font-size: 14px;
  font-size: 0.875rem;
  border: none;
  border-radius: 5px;
  background-color: #336cc4;
  color: #fff;
  padding: 12px 0;
  padding: 0.75rem 0;
}

.yazaki-form01 .confirm a,
.yazaki-form02 .confirm a,
.yazaki-form03 .confirm a,
.yazaki-form01 .confirm button,
.yazaki-form02 .confirm button,
.yazaki-form03 .confirm button {
  background-color: #cc0000;
}

@media screen and (min-width: 768px) {
  .confirm {
    padding: 1.875rem 1.3125rem 1.875rem;
  }
}

.form-footer {
  height: 60px;
  height: 3.75rem;
  position: absolute;
  width: 100%;
  bottom: 0;
  left: 0;
  background-color: #fff;
  font-size: 10px;
  font-size: 0.625rem;
  text-align: center;
  padding-top: 21.5px;
  padding-top: 1.34375rem;
  padding-bottom: 21.5px;
  padding-bottom: 1.34375rem;
}

@media screen and (min-width: 768px) {
  .form-footer {
    height: 4.6875rem;
  }
}

.form01 .right-block {
  display: none;
}

@media screen and (min-width: 768px) {
  .form01 .right-block {
    display: block;
    width: 28%;
    margin-right: 0.5625rem;
  }

  .left-block {
    width: 70%;
  }

  .left-block > .reserve-content,
  .left-block > .payment__contents {
    display: none;
  }

  .form01 {
    margin-top: 5rem;
  }

  .main {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    position: relative;
  }

  .reserve-content {
    padding-top: 0.9375rem;
  }

  .reserve-content__detail {
    margin-top: 0.75rem;
  }

  .form01 form {
    margin-top: 0;
  }

  .reserve-content__detail {
    padding-left: 3.4em;
    text-indent: -3em;
  }

  .reserve-content__detail > span {
    margin-right: 0;
  }

  .payment__contents {
    padding: 0.4375rem 0.625rem 1.1875rem;
  }

  .payment__price-left {
    font-size: 0.875rem;
  }

  .form01 .inquiries {
    padding: 1.5625rem 1.25rem 1.875rem;
  }
}

p.question {
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 700;
  margin-top: 15px;
  margin-top: 0.9375rem;
}

p.question.name {
  margin-top: 20px;
  margin-top: 1.25rem;
}

p.answer {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.42857143;
  margin-top: 10px;
  margin-top: 0.625rem;
  padding-bottom: 15px;
  padding-bottom: 0.9375rem;
  border-bottom: 1px solid #ccc;
}

.representative .answer {
  margin-top: 20px;
  margin-top: 1.25rem;
}

.form02 {
  margin-top: 43px;
  margin-top: 2.6875rem;
}

.form02 .main {
  max-width: 1000px;
  max-width: 62.5rem;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 120px;
  margin-bottom: 7.5rem;
}

.form02 form {
  background-color: #fff;
  margin-top: 10px;
  margin-top: 0.625rem;
}

.form02 .reserver,
.form02 .representative,
.form02 .information,
.form02 .dinner,
.form02 .inquiries {
  border-bottom: none;
  padding: 20px 10px 0;
  padding: 1.25rem 0.625rem 0;
}

@media screen and (min-width: 768px) {
  .form02 .main {
    margin-bottom: 9.6875rem;
  }

  .form02 .reserver,
  .form02 .representative,
  .form02 .information,
  .form02 .dinner,
  .form02 .inquiries {
    padding: 1.25rem 1.25rem 0;
  }
}

.form02 .right-block {
  display: none;
}

@media screen and (min-width: 768px) {
  .form02 .right-block {
    display: block;
    width: 28%;
    margin-right: 0.5625rem;
  }

  .form02 {
    margin-top: 5rem;
  }

  .form02 form {
    margin-top: 0;
  }
}

.form03 {
  margin-top: 43px;
  margin-top: 2.6875rem;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 2.1485714;
}

.form03 .main {
  max-width: 1000px;
  max-width: 62.5rem;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 70px;
  margin-bottom: 4.375rem;
}

.form03-inner {
  background-color: #fff;
  padding-left: 10px;
  padding-left: 0.625rem;
  padding-right: 10px;
  padding-right: 0.625rem;
}

.form03-inner__section.sp {
  margin-top: 10px;
  margin-top: 0.625rem;
  background-color: #fff;
}

.form03-inner__section.reserve-content.sp {
  padding: 20px 10px;
  padding: 1.25rem 0.625rem;
}

.yazaki-form03 {
  margin-bottom: 275px;
  margin-bottom: 17.188rem;
}

@media screen and (min-width: 768px) {
  .form03 .main {
    margin-bottom: 11.1875rem;
  }

  .form03-inner {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  .yazaki-form03 {
    margin-bottom: 10.9375rem;
  }
}

.form03-upper {
  background-color: #fff;
  padding-top: 30px;
  padding-top: 1.875rem;
  padding-bottom: 30px;
  padding-bottom: 1.875rem;
  border-bottom: 1px solid #ccc;
}

.form03-upper__message {
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.45;
  text-align: center;
}

.form03-upper__message + p {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 2.1485714;
  margin-top: 20px;
  margin-top: 1.25rem;
}

.form03-upper__title {
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  margin-top: 20px;
  margin-top: 1.25rem;
}

.form03-upper__idpass {
  width: 100%;
  border-collapse: collapse;
  margin-top: 10px;
  margin-top: 0.625rem;
  border-bottom: 1px solid #ccc;
}

.form03-upper__idpass tr,
.form03-upper__idpass td {
  border: 1px solid #999;
}

.form03-upper__idpass td {
  padding: 11px 0 10px 11px;
  padding: 0.6875rem 0 0.625rem 0.6875rem;
}

.form03-upper__property {
  width: 33.5%;
  background-color: #f5f5f7;
}

.form03-upper__value {
  width: 66.5%;
}

.form03-upper__description {
  margin-top: 20px;
  margin-top: 1.25rem;
  text-align: center;
}

.activity {
  padding-top: 20px;
  padding-top: 1.25rem;
  padding-bottom: 30px;
  padding-bottom: 1.875rem;
  line-height: 1.71428571;
  background-color: #fff;
  border-bottom: 1px solid #ccc;
}

.activity__description {
  margin-top: 10px;
  margin-top: 0.625rem;
}

.activity__description + a {
  color: #065fd4;
  text-decoration: underline;
}

.form03 .activity .upgrade-text {
  padding: 10px 20px;
  padding: 0.625rem 1.25rem;
}

.form03 .activity .upgrade-text > span {
  font-weight: 700;
}

.form03 .confirm {
  padding-top: 20px;
  padding-top: 1.25rem;
  padding-bottom: 40px;
  padding-bottom: 2.5rem;
  border-bottom: none;
}

.activity__loginn {
  text-align: left;
}

.form03 .confirm .detail-link {
  margin-top: 20px;
  margin-top: 1.25rem;
}

.form03 .form01-header {
  margin-top: 10px;
  margin-top: 0.625rem;
}

.form03 .payment__contents {
  border-bottom: none;
}

.form03 .form-footer {
  margin-top: 10px;
  margin-top: 0.625rem;
  border-top: 1px solid #ccc;
}

.form03 .right-block {
  display: none;
}

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

  .form03 .right-block {
    display: block;
    width: 28%;
    margin-right: 0.5625rem;
  }

  .form03 {
    margin-top: 5rem;
  }

  .form03 form {
    margin-top: 0;
  }

  .form01-header.pc,
  .form03 .payment__contents.sp {
    display: none;
  }

  .form03 .detail-link {
    max-width: 18.75rem;
    margin-right: auto;
    margin-left: auto;
  }

  .form03 .form01-header {
    margin-top: 0;
  }

  .form03 .form-footer {
    margin-top: 6.5rem;
  }
}

.login-page {
  background-color: #f5f5f7;
}

.login-page main {
  padding-top: 63px;
  padding-top: 3.9375rem;
}

@media screen and (min-width: 768px) {
  .login-page main {
    padding-top: 5.625rem;
  }
}

.login__inner {
  padding-top: 63px;
  padding-top: 3.9375rem;
  height: 100vh;
}

@media screen and (min-width: 768px) {
  .login__inner {
    padding-top: 5.625rem;
    padding-bottom: 264px;
  }
}

.login-page .login {
  padding-top: 20px;
  padding-top: 1.25rem;
  margin-left: auto;
  margin-right: auto;
  width: 94.666667%;
}

.mypage-title {
  display: inline-block;
  width: 100%;
  background-color: #fff;
  padding-top: 72px;
  padding-top: 4.5rem;
  padding-bottom: 12px;
  padding-bottom: 0.75rem;
  margin-right: auto;
  margin-left: auto;
  text-align: center;
  border-bottom: 1px solid #ccc;
}

.mypage-title h1 {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.4444444;
}

.mypage-body {
  padding-right: 10px;
  padding-left: 10px;
  padding-bottom: 282px;
  padding-bottom: 17.625rem;
}

@media screen and (min-width: 768px) {
  .mypage-body {
    padding-right: 20px;
    padding-left: 20px;
    padding-bottom: 13.1875rem;
  }
}

.mypage-body__description {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.71428571;
  padding-top: 21px;
  padding-top: 1.3125rem;
  padding-bottom: 20px;
  padding-bottom: 1.25rem;
}

.mypage-body__content.reserve-content {
  padding: 12px 20px 30px;
  padding: 0.75rem 1.25rem 1.875rem;
  border-top: 4px solid #336cc4;
}

.mypage-body__main {
  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-shadow: 0 1px 2px rgba(112, 112, 112, 0.2);
  box-shadow: 0 1px 2px rgba(112, 112, 112, 0.2);
}

.mypage-body__links {
  padding: 20px 20px 20px 20px;
  padding: 1.25rem 1.25rem 1.25rem 1.25rem;
  background-color: #fff;
  border-top: 1px solid #ccc;
}

.mypage-body__links a {
  display: block;
  text-align: center;
  width: 100%;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
  border: 1px solid #222;
  border-radius: 5px;
  padding-top: 13px;
  padding-top: 0.8125rem;
  padding-bottom: 13px;
  padding-bottom: 0.8125rem;
}

.mypage-body__links a:first-child {
  background-color: #336cc4;
  border-color: #336cc4;
  color: #fff;
}

.mypage-body__links a:nth-child(2) {
  background-color: #fff;
  margin-top: 20px;
  margin-top: 1.25rem;
}

.mypage .footer {
  margin-top: 131px;
  margin-top: 8.1875rem;
}

.mypage .footer {
  margin-top: 14px;
  margin-top: 0.875rem;
}

@media screen and (min-width: 768px) {
  .mypage-title {
    width: 100%;
    background-color: inherit;
    padding-top: 5.625rem;
    padding-bottom: 0;
    border: none;
  }

  .mypage-title h1 {
    font-size: 1.375rem;
    line-height: 1.45454545;
  }

  .mypage-body {
    padding-right: 10px;
    padding-left: 10px;
    max-width: 62.5rem;
    margin-right: auto;
    margin-left: auto;
  }

  .mypage-body__description {
    padding-top: 1.25rem;
    padding-bottom: 1.875rem;
    text-align: center;
  }

  .mypage-body__content.reserve-content {
    padding: 1.5rem 1.25rem 1.875rem;
    border-top: none;
  }

  .mypage-body__main {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    max-width: 62.5rem;
    width: 100%;
    border-left: 4px solid #336cc4;
  }

  .mypage-body__content.reserve-content {
    width: 72.9%;
    padding: 1.25rem 0 1.875rem 1.5rem;
  }

  .mypage-body__content p.reserve-content__detail:first-of-type {
    margin-top: 1.25rem;
  }

  .mypage-body__content p.reserve-content__detail:nth-of-type(2) {
    margin-top: 0.625rem;
  }

  .mypage-body__links {
    width: 27.1%;
    border-top: none;
    border-left: 1px solid #ccc;
  }

  .mypage-body__links a {
    font-size: 0.875rem;
    line-height: 1.42857143;
  }

  .mypage-body__links a:first-child {
    padding-top: 0.625rem;
    padding-bottom: 0.625rem;
  }

  .mypage-body__links a:nth-child(2) {
    border: none;
    padding: 0;
    color: #065fd4;
    text-decoration: underline;
    font-weight: 400;
  }
}

.mypage-body__main {
  margin-top: 15px;
  margin-top: 0.9375rem;
}

.reserve-content__titles {
  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) {
  .reserve-content__titles {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }
}

.reserve-content__cancel-btn {
  display: inline-block;
  background-color: #ff0000;
  font-size: 12px;
  font-size: 0.75rem;
  color: #fff;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 5px 5px;
  padding: 0.3125rem 0.3125rem;
}

@media screen and (min-width: 768px) {
  .reserve-content__cancel-btn {
    padding: 0.125rem 0.625rem;
  }
}

.reserve-content__title {
  margin-top: 12px;
  margin-top: 0.75rem;
}

@media screen and (min-width: 768px) {
  .reserve-content__title {
    margin-top: 0;
    margin-left: 15px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
}

.return__button {
  display: block;
  border: 1px solid #cc0000;
  border-radius: 5px;
  background-color: #cc0000;
  padding-top: 15px;
  padding-top: 0.9375rem;
  padding-bottom: 15px;
  padding-bottom: 0.9375rem;
  text-align: center;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.42857143;
  color: #fff;
  margin-top: 20px;
  margin-top: 1.25rem;
}

.password-resetting .login__description {
  font-size: 14px;
  font-size: 0.875rem;
}

.password-resetting .login {
  margin-top: 63px;
  margin-top: 3.9375rem;
  margin-left: auto;
  margin-right: auto;
  width: 94.666667%;
}

.password-resetting .footer {
  margin-top: 20px;
  margin-top: 1.25rem;
}

@media screen and (min-width: 768px) {
  .password-resetting .login {
    margin-top: 5.625rem;
  }
}

.reply {
  max-width: 572px;
  max-width: 35.75rem;
  margin-right: auto;
  margin-left: auto;
  padding-top: 58px;
  padding-top: 3.625rem;
  padding-bottom: 137px;
  padding-bottom: 8.5625rem;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.42857143;
}

.reply h1 {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.444444;
}

.reply p {
  margin-top: 48px;
  margin-top: 3rem;
}

.reply p span {
  color: #ff0000;
}

.reservation-details {
  background-color: #f5f5f7;
}

.section-title {
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
  border-left: 4px solid #336cc4;
  padding-left: 6px;
  padding-left: 0.375rem;
}

.reservation-menu {
  background-color: #fff;
}

.pagination {
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 1.41666667;
  margin-top: 19px;
  margin-top: 1.1875rem;
  word-break: break-all;
}

.reservation-details main {
  margin-bottom: 263px;
  margin-bottom: 16.4375rem;
  /* overflow: hidden; */
}

@media screen and (min-width: 768px) {
  .reservation-details main {
    margin-bottom: 18.0625rem;
  }
}

.reservation-details .flex {
  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: 10px;
  padding-left: 10px;
}

.left-block {
  display: contents;
  padding-right: 10px;
  padding-left: 10px;
}

@media screen and (min-width: 768px) {
  .reservation-details .flex {
    max-width: 62.5rem;
    -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;
    margin-right: auto;
    margin-left: auto;
    padding-left: 20px;
    padding-right: 20px;
  }

  .left-block {
    display: block;
    max-width: 41.3125rem;
    width: 66%;
    padding-right: 20px;
    padding-left: 20px;
    background-color: #fff;
  }

  .reservation-details .left-block {
    margin-top: 5.625rem;
  }

  .reservation-details .finder form {
    display: block;
  }

  .reservation-details .finder__block {
    width: 100%;
  }

  .right-block {
    width: 30%;
    max-width: 18.75rem;
  }

  .reservation-details .finder__block:first-child {
    display: block;
  }

  .reservation-details .finder__container.check {
    width: 100%;
  }
}

.reservation-top {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
  margin-top: 73px;
  margin-top: 4.5625rem;
}

.reservation-top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
  gap: 5.6%;
}

.reservation-top__body {
  width: 60.3333333%;
}

.reservation-top__title {
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5;
}

.reservation-top__plan {
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 1.41666667;
  margin-top: 10px;
  margin-top: 0.625rem;
}

.reservation-top__img {
  width: 33.802817%;
  aspect-ratio: 3/2;
}

.reservation-top__img img {
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: top left;
  object-position: top left;
  height: 100%;
}

@media screen and (min-width: 768px) {
  .reservation-top {
    background-color: #fff;
    margin-top: 0;
    padding-top: 1.0625rem;
    padding-left: 1.25rem;
  }

  .reservation-top {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  .reservation-top__body {
    width: 100%;
  }

  .reservation-top__title {
    font-size: 1.375rem;
    line-height: 1.45454545;
  }

  .reservation-top__plan {
    color: #999;
  }

  .reservation-top__img {
    width: 47.385779%;
    margin-top: 0.625rem;
  }
}

.right-block {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
}

.reservation-finder {
  margin-top: 20px;
  margin-top: 1.25rem;
}

.reservation-finder .finder form.finder__box {
  padding: 14px 10px;
  padding: 0.875rem 0.625rem;
  background-color: #222;
}

.reservation-finder .finder form .finder__block {
  border: none;
}

.reservation-finder .finder__container.room {
  padding: 9.5px 0 6.5px 35px;
  padding: 0.59375rem 0 0.40625rem 2.1875rem;
}

.reservation-finder .finder__container.people {
  padding: 9.5px 0 6.5px 8px;
  padding: 0.59375rem 0 0.40625rem 0.5rem;
}

.reservation-finder .finder__container.people::after {
  right: 6px;
  right: 0.375rem;
}

@media screen and (min-width: 768px) {
  .reservation-details .flex {
    position: relative;
    max-width: 65rem;
    width: 100%;
  }

  .right-block {
    position: sticky;
    top: 4.425rem;
    height: 25rem;
    z-index: 55;
  }

  .reservation-finder .finder__block:first-child {
    background-color: #000;
  }

  .reservation-finder .finder__container.check {
    background-color: #fff;
    border: 1px solid #999;
    border-radius: 5px;
  }

  .reservation-finder .finder__container.check:nth-child(2),
  .reservation-finder .finder__block:nth-child(2) {
    margin-top: 0.625rem;
  }

  .finder__container.check:nth-child(2) {
    padding: 5.2px 0 3.8px 35.5px;
    position: relative;
  }

  .finder__container.check:first-child {
    padding: 5.2px 0 4.8px 35.5px;
  }

  .finder__container.check:nth-child(2)::before {
    content: "";
    display: inline-block;
    width: 14px;
    height: 14px;
    background-image: url(../images/calender.png);
    background-size: contain;
    vertical-align: middle;
    position: absolute;
    top: 50%;
    left: 9px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }

  .reservation-finder .finder__container.room {
    padding: 0.34375rem 0 0.40625rem 2.1875rem;
  }

  .reservation-finder .finder__container.people {
    padding: 0.34375rem 0 0.40625rem 0.5rem;
  }

  .reservation-finder .finder__container.people::after {
    top: 0.8125rem;
    right: 0.625rem;
  }

  .right-block .l-inner {
    padding-right: 0;
    padding-left: 0;
  }

  .reservation-details .pagination {
    padding-bottom: 1.25rem;
  }
}

.reservation-price {
  background-color: #fff;
  padding: 19px 10px;
  padding: 1.1875rem 0.625rem;
  margin-top: 10px;
  margin-top: 0.625rem;
}

.reservation-price__price {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.42857143;
  text-align: right;
}

.reservation-price__price span:first-child {
  font-size: 22px;
  font-size: 1.375rem;
  color: #cc0000;
  font-weight: 700;
  margin-left: 9px;
  margin-left: 0.5625rem;
}

.reservation-price__price span:nth-child(2) {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 700;
}

.reservation-price__contents a {
  width: 100%;
  display: block;
  border: 1px solid #336cc4;
  border-radius: 5px;
  background-color: #336cc4;
  padding-top: 10px;
  padding-top: 0.625rem;
  padding-bottom: 13px;
  padding-bottom: 0.8125rem;
  text-align: center;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5;
  color: #fff;
  margin-top: 14px;
  margin-top: 0.875rem;
}

.reservation-price__description {
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 1.5;
  text-align: center;
  margin-top: 10px;
  margin-top: 0.625rem;
}

@media screen and (min-width: 768px) {
  .reservation-price {
    padding: 0.875rem 0.625rem 1.25rem;
    margin-right: 0;
    margin-left: 0;
  }
}

.reservation-price__soldout {
  padding: 14px 10px 20px;
  padding: 0.875rem 0.625rem 1.25rem;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.71428571;
}

.soldout__description {
  background-color: #ffe9e9;
  padding: 10px;
  padding: 0.625rem;
}

.reservation-price__soldout a {
  color: #065fd4;
  text-align: center;
  text-decoration: underline;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: 10px;
  margin-top: 0.625rem;
}

.reservation-plan {
  -webkit-box-ordinal-group: 4;
  -ms-flex-order: 3;
  order: 3;
  background-color: #fff;
  padding-top: 13px;
  padding-top: 0.8125rem;
  padding-left: 10px;
  padding-left: 0.625rem;
  padding-right: 10px;
  padding-right: 0.625rem;
  margin-top: 20px;
  margin-top: 1.25rem;
}

.reservation-plan .reservation-menu__inner {
  padding-bottom: 25.5px;
  padding-bottom: 1.59375rem;
  border-bottom: 1px solid #ccc;
}

.reservation-plan p {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.85714286;
  margin-top: 14px;
  margin-top: 0.875rem;
}

.reservation-plan p.detail {
  margin-top: 24px;
  margin-top: 1.5rem;
}

@media screen and (min-width: 768px) {
  .reservation-plan {
    margin-top: 0;
    padding-top: 1.25rem;
    padding-left: 0rem;
    padding-right: 0rem;
  }
}

.reservation-room {
  -webkit-box-ordinal-group: 5;
  -ms-flex-order: 4;
  order: 4;
  padding-top: 20.5px;
  padding-top: 1.28125rem;
  padding-left: 10px;
  padding-left: 0.625rem;
  padding-right: 10px;
  padding-right: 0.625rem;
}

.reservation-room .reservation-menu__inner {
  padding-bottom: 30px;
  padding-bottom: 1.875rem;
  border-bottom: 1px solid #ccc;
}

.reservation-room__body {
  padding-top: 45px;
  padding-top: 2.8125rem;
}

.reservation-room__body > p {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.85714286;
}

.reservation-room .plan-detail__slider {
  margin-top: 14px;
  margin-top: 0.875rem;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (min-width: 768px) {
  .reservation-room {
    padding-left: 0rem;
    padding-right: 0rem;
  }

  .reservation-room__body > p > span {
    font-weight: 700;
  }

  .reservation-room__body {
    padding-top: 2.625rem;
  }
}

.reservation-detail {
  -webkit-box-ordinal-group: 6;
  -ms-flex-order: 5;
  order: 5;
  padding-right: 10px;
  padding-left: 10px;
}

.reservation-detail > div > div {
  padding-top: 11.5px;
  padding-top: 0.71875rem;
  padding-bottom: 14.5px;
  padding-bottom: 0.90625rem;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.625;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border-bottom: 1px solid #ccc;
}

.reservation-detail > div.f14 {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.8;
}

.reservation-detail > div > span {
  display: inline-block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 700;
  color: #336cc4;
  width: 132px;
  width: 8.25rem;
}

.reservation-detail > div > span.co {
  margin-top: 12px;
  margin-top: 0.75rem;
}

.reservation-detail > div > span.br {
  margin-bottom: 10px;
  margin-bottom: 0.625rem;
}

@media screen and (min-width: 768px) {
  .reservation-detail {
    padding-right: 0;
    padding-left: 0;
  }

  .reservation-detail > div {
    padding-left: 0.09375rem;
  }

  .reservation-detail > div:nth-child(3) {
    padding-bottom: 0.53125rem;
  }

  .reservation-detail > div > span {
    color: #222;
  }
}

.reservation-cancel {
  -webkit-box-ordinal-group: 7;
  -ms-flex-order: 6;
  order: 6;
  padding-top: 20.5px;
  padding-top: 1.28125rem;
  padding-left: 10px;
  padding-left: 0.625rem;
  padding-right: 10px;
  padding-right: 0.625rem;
}

.reservation-cancel .reservation-menu__inner {
  padding-bottom: 30.5px;
  padding-bottom: 1.90625rem;
  border-bottom: 1px solid #ccc;
}

.reservation-cancel__table {
  border-collapse: collapse;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.63;
  text-align: center;
  margin-top: 20px;
  margin-top: 1.25rem;
  max-width: 355px;
  max-width: 22.1875rem;
}

.reservation-cancel__table tr,
.reservation-cancel__table th,
.reservation-cancel__table td {
  border: 1px solid #707070;
  word-break: break-word;
}

.reservation-cancel__table td {
  width: 5%;
}

.reservation-cancel__table td.number {
  width: 6%;
}

.reservation-cancel__table .grey-table {
  background-color: #f5f5f7;
}

@media screen and (min-width: 768px) {
  .reservation-cancel {
    padding-left: 0;
    padding-right: 0;
  }

  .reservation-cancel__table {
    margin-top: 0.8125rem;
  }
}

.reservation-others {
  -webkit-box-ordinal-group: 8;
  -ms-flex-order: 7;
  order: 7;
  padding-top: 20.5px;
  padding-top: 1.28125rem;
  padding-bottom: 28.5px;
  padding-bottom: 1.78125rem;
  padding-left: 10px;
  padding-left: 0.625rem;
  padding-right: 10px;
  padding-right: 0.625rem;
}

.reservation-others p {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.85714286;
}

.reservation-others__title {
  margin-bottom: 10px;
  margin-bottom: 0.625rem;
}

.reservation-others p > span {
  font-weight: 700;
}

@media screen and (min-width: 768px) {
  .reservation-others {
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 1.40625rem;
  }
}

.reservation-submit {
  -webkit-box-ordinal-group: 9;
  -ms-flex-order: 8;
  order: 8;
  background-color: #fff;
  padding-top: 19.5px;
  padding-top: 1.21875rem;
  padding-bottom: 27.5px;
  padding-bottom: 1.71875rem;
  padding-left: 10px;
  padding-left: 0.625rem;
  padding-right: 10px;
  padding-right: 0.625rem;
}

.reservation-submit a {
  width: 100%;
  display: inline-block;
  border: 1px solid #336cc4;
  border-radius: 5px;
  background-color: #336cc4;
  padding-top: 13px;
  padding-top: 0.8125rem;
  padding-bottom: 13px;
  padding-bottom: 0.8125rem;
  text-align: center;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5;
  color: #fff;
}

@media screen and (min-width: 768px) {
  .reservation-submit {
    padding-top: 1.78125rem;
    padding-left: 1.1875rem;
    padding-right: 1.25rem;
  }
}

.reservation-pagination {
  -webkit-box-ordinal-group: 10;
  -ms-flex-order: 9;
  order: 9;
  padding-left: 10px;
  padding-left: 0.625rem;
  padding-right: 10px;
  padding-right: 0.625rem;
}

@media screen and (min-width: 768px) {
  .reservation-pagination {
    padding-top: 5rem;
  }
}

.reservation-details .calender1 {
  position: absolute;
  /* top: 120%;
  left: -269.5%; */
  top: 0;
  left: -10px;
  z-index: 111;
  opacity: 0;
  /* visibility: hidden; */
  display: none;
  -webkit-transition: opacity 0.3s ease, visibility 0.3s ease;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

.reservation-details .calender2 {
  position: absolute;
  top: 121%;
  right: -17.4%;
  z-index: 111;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.3s ease, visibility 0.3s ease;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

.reservation-details .calender1.is-visible,
.reservation-details .calender2.is-visible {
  opacity: 1;
  /* visibility: visible; */
  display: block;
}

@media screen and (min-width: 768px) {
  .reservation-details .calender1 {
    position: absolute;
    /* top: 120%;
    left: -263.5%; */
    top: 160px;
    left: -690px;
    z-index: 111;
    opacity: 0;
    /* visibility: hidden; */
    -webkit-transition: opacity 0.3s ease, visibility 0.3s ease;
    transition: opacity 0.3s ease, visibility 0.3s ease;
  }

  .reservation-details .calender2 {
    position: absolute;
    top: 121%;
    right: 3.6%;
    z-index: 111;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity 0.3s ease, visibility 0.3s ease;
    transition: opacity 0.3s ease, visibility 0.3s ease;
  }

  .reserve-detail.reserve-detail--pc {
    top: 97%;
    left: -172%;
    width: calc(100% + 495px);
  }

  .reservation-finder .finder form.form-number--pc {
    background-color: #def0ff;
    padding: 0.40625rem 1.28125rem 0.65625rem;
  }

  .reservation-details .reserve-detail.reserve-detail--pc {
    /* padding: 0; */
  }
}

.top .finder .form-all {
  margin-top: -30px;
  margin-top: -1.875rem;
}

.results {
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 1.5;
  color: #1e1e1e;
  margin-top: 20px;
  margin-top: 1.25rem;
  max-width: 1040px;
  margin-right: auto;
  margin-left: auto;
}

.results > span {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 700;
}

.finder__container.check.js-calender1,
.finder__container.check.js-calender2 {
  position: relative;
}

.top .calender1 {
  position: absolute;
  top: 120%;
  left: -6.5%;
  z-index: 111;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.3s ease, visibility 0.3s ease;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

.top .calender2 {
  position: absolute;
  top: 121%;
  right: -6.4%;
  z-index: 111;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.3s ease, visibility 0.3s ease;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

.top .calender1.is-visible,
.top .calender2.is-visible {
  opacity: 1;
  visibility: visible;
}

.finder__container.check.js-calender1,
.finder__container.check.js-calender2 {
  -webkit-transition: opacity 0.3s ease, visibility 0.3s ease;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

.finder__container.check.js-calender1::after,
.finder__container.check.js-calender2::after {
  content: "";
  position: absolute;
  top: 50px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  z-index: 1;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 10px 10px 10px;
  border-color: transparent transparent #fff transparent;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.3s ease, visibility 0.3s ease;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

.finder__container.check.js-calender1::after {
  left: 50%;
}

.finder__container.check.js-calender2::after {
  left: 63%;
}

.finder__container.check.js-calender1.is-active::after,
.finder__container.check.js-calender2.is-active::after {
  opacity: 1;
  visibility: visible;
}

@media screen and (min-width: 768px) {
  .top .calender1 {
    left: 6%;
  }

  .top .calender2 {
    left: -96%;
  }
}

.overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.7);
  /* z-index: 5; */
  z-index: 1;
}

.finder__block2 {
  position: relative;
  z-index: 3;
}

.reserve-detail--sp {
  display: none;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 15;
}

.reserve-detail--pc {
  display: none;
  /* position: absolute; */
  position: static;
  top: 48.5%;
  z-index: 4;
  left: 29%;
}

@media screen and (min-width: 768px) {
  .top .reserve-detail.reserve-detail--pc {
    top: 97%;
    left: 22.5%;
  }
}

.reserve-detail--sp {
  display: none;
  /* 最初は非表示 */
  position: fixed;
  /* 画面上に固定 */
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  /* 中央に配置 */
  z-index: 100;
  /* オーバーレイよりも上に */
}

.no-results {
  display: none;
}

.no-results.sp-results {
  display: block;
  display: block;
  font-size: 0.875rem;
  line-height: 1.71428571;
  padding: 0.625rem;
  background-color: #ffe9e9;
  margin-top: 1.25rem;
  text-align: left;
}

.results-inner {
  padding-top: 1px;
}

@media screen and (min-width: 768px) {
  .no-results {
    display: block;
    font-size: 0.875rem;
    line-height: 1.71428571;
    padding: 0.625rem;
    background-color: #ffe9e9;
    margin-top: 1.25rem;
  }
}

.l-plan .plan:not(:first-child) {
  margin-top: 30px;
  margin-top: 1.875rem;
}

@media screen and (min-width: 768px) {
  .l-plan .plan:not(:first-child) {
    margin-top: 1.25rem;
  }
}

.yazaki-application {
  background-color: #fff;
  font-size: 14px;
  font-size: 0.875rem;
  padding: 20px 10px;
  padding: 1.25rem 0.625rem;
}

@media screen and (min-width: 768px) {
  .yazaki-application {
    padding-inline: 1.25rem;
  }
}

.yazaki-application .section-title {
  border-left: 4px solid #cc0000;
  border-left: 0.25rem solid #cc0000;
}

.yazaki-application__junkyard-block {
  margin-top: -6px;
  margin-top: -0.375rem;
}

@media screen and (min-width: 768px) {
  .yazaki-application__junkyard-block {
    margin-top: 1.25rem;
  }
}

.yazaki-application input,
.yazaki-application select,
.yazaki-application textarea {
  display: block;
  width: 100%;
  max-width: 660px;
  max-width: 41.25rem;
  border: 1px solid #999;
  border-radius: 0.3125rem;
  padding: 9px 10px;
  padding: 0.5625rem 0.625rem;
}

.yazaki-application input.input-check {
  -moz-appearance: none;
  appearance: none;
  -webkit-appearance: none;
  display: inline-block;
  width: 24px;
  width: 1.5rem;
  height: 24px;
  height: 1.5rem;
  border: 1px solid #707070;
  border: 0.0625rem solid #707070;
  border-radius: 50%;
  position: relative;
  background-color: #fff;
}

.yazaki-application input.input-check::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 14px;
  width: 0.875rem;
  height: 14px;
  height: 0.875rem;
  border-radius: 50%;
  background-color: transparent;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.yazaki-application input.input-check:checked::before {
  background-color: #cc0000;
}

.yazaki-application__items {
  margin-top: 22px;
  margin-top: 1.375rem;
}

.yazaki-application__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
}

.yazaki-application__item:nth-child(n + 2) {
  margin-top: 10px;
  margin-top: 0.625rem;
}

.yazaki-application__item-label {
  width: 37.1408%;
}

@media screen and (min-width: 768px) {
  .yazaki-application__item-label {
    width: 25%;
  }
}

.yazaki-application__item-selects {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  width: 62.8169%;
}

@media screen and (min-width: 768px) {
  .yazaki-application__item-selects {
    width: 100%;
    -webkit-box-orient: initial;
    -webkit-box-direction: initial;
    -ms-flex-direction: initial;
    flex-direction: initial;
  }
}

.yazaki-application__item-selects .yazaki-application__item-selects--medium {
  width: 100%;
}

@media screen and (min-width: 768px) {
  .yazaki-application__item-selects .yazaki-application__item-selects--medium {
    width: 18.75rem;
  }
}

.yazaki-application__item-selects .yazaki-application__item-selects--small {
  margin-top: 16px;
  margin-top: 1rem;
  margin-left: 0;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .yazaki-application__item-selects .yazaki-application__item-selects--small {
    width: 11.25rem;
    margin-left: 0.625rem;
    margin-top: 0;
  }
}

.yazaki-application__container {
  position: relative;
}

.yazaki-application__container::before {
  /* border-left: 5px solid transparent;
    border-left: 0.3125rem solid transparent;
    border-right: 5px solid transparent;
    border-right: 0.3125rem solid transparent;
    border-top: 5px solid #000;
    border-top: 0.3125rem solid #000;
    content: "";
    position: absolute;
    right: 10px;
    right: 0.625rem;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 0;
    z-index: 0; */
}

.yazaki-application__container--small::before {
  top: 60%;
}

@media screen and (min-width: 768px) {
  .yazaki-application__container--small::before {
    top: 50%;
  }
}

.yazaki-application__container--small {
  display: none;
}

.notice {
  padding: 20px 0;
  padding: 1.25rem 0;
  background-color: #fff;
}

@media screen and (min-width: 768px) {
  .notice {
    padding: 1.25rem 0 0;
    background-color: transparent;
  }
}

.notice__box {
  background-color: #ffe9e9;
  padding: 10px;
  padding: 0.625rem;
}

@media screen and (min-width: 768px) {
  .notice__box {
    padding: 1.25rem;
  }
}

.notice__box-title {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  color: #222222;
  line-height: 1.3571428571;
}

.notice__box-text {
  margin-top: 10px;
  margin-top: 0.625rem;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: normal;
  letter-spacing: 0.1em;
  color: #222222;
  line-height: 1.3571428571;
}

.yazaki-booking-confirmation.yazaki-form03 {
  margin-top: 0;
}

@media screen and (min-width: 768px) {
  .yazaki-booking-confirmation.yazaki-form03 {
    margin-top: 1.875rem;
    margin-bottom: 18.1875rem;
  }
}

.mypage-title.yazaki-booking-confirmation__title {
  padding-top: 50px;
  padding-top: 3.125rem;
}

@media screen and (min-width: 768px) {
  .mypage-title.yazaki-booking-confirmation__title {
    padding-top: 5.75rem;
  }
}

.yazaki-booking-confirmation__title h2 {
  font-size: 20px;
  font-size: 1.25rem;
}

.cancel__link {
  display: block;
  text-align: right;
  font-size: 14px;
  font-size: 0.875rem;
  color: #065fd4;
  line-height: 1.3571428571;
  font-weight: normal;
  margin-top: 21px;
  margin-top: 1.3125rem;
  margin-right: 20px;
  margin-right: 1.25rem;
  text-decoration: underline;
}

.payment__cancel-link {
  display: block;
  text-align: center;
  border: 1px solid #707070;
  padding: 15px 0;
  padding: 0.9375rem 0;
  border-radius: 0.3125rem;
  font-size: 16px;
  font-size: 1rem;
  color: #222222;
  line-height: 1.3125;
  font-weight: bold;
  margin-top: 21px;
  margin-top: 1.3125rem;
}

.yazaki-form03 .payment__contents {
  /* padding-bottom: 304px;
  padding-bottom: 19rem; */
}

@media screen and (min-width: 768px) {
  .yazaki-form03 .payment__contents {
    padding-bottom: 0.625rem;
  }
}

.employee__page.edit main {
  padding-bottom: 304px;
  padding-bottom: 19rem;
}

@media screen and (min-width: 768px) {
  .employee__page.edit main {
    padding-top: 5.625rem;
    padding-bottom: 1.875rem;
    margin-bottom: 15.8125rem;
  }
}

.yazaki-employee-edit-title h2 {
  font-size: 20px;
  font-size: 1.25rem;
}

@media screen and (min-width: 768px) {
  .yazaki-employee-edit-title h2 {
    padding-top: 0;
  }
}

.mypage-title.yazaki-employee-edit-title {
  padding-top: 50px;
  padding-top: 3.125rem;
}

@media screen and (min-width: 768px) {
  .mypage-title.yazaki-employee-edit-title {
    padding-top: 0;
  }
}

.edit__lv2-item {
  font-size: 14px;
  font-size: 0.875rem;
}

.edit-container {
  margin-top: 20px;
  margin-top: 1.25rem;
}

.edit__form {
  background-color: #fff;
}

@media screen and (min-width: 768px) {
  .edit__form {
    padding: 1.25rem;
  }
}

.edit__item {
  padding-bottom: 19px;
  padding-bottom: 1.1875rem;
  border-bottom: 1px solid #cccccc;
}

.edit__item:not(:first-child) {
  padding-top: 19px;
  padding-top: 1.1875rem;
}

.edit__item-text {
  margin-top: 11px;
  margin-top: 0.6875rem;
}

.edit__item-text input[type="tel"],
.edit__item-text input[type="email"] {
  border: #999999 1px solid;
  padding: 0.5625rem 0.625rem;
  width: 100%;
  border-radius: 5px;
}

.edit__item-radio {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.edit__item-text-radio span {
  margin-right: 40px;
  margin-right: 2.5rem;
  padding-left: 30px;
  padding-left: 1.875rem;
  cursor: pointer;
  position: relative;
}

.edit__item-text-radio span::before {
  content: "";
  position: absolute;
  width: 24px;
  width: 1.5rem;
  height: 24px;
  height: 1.5rem;
  left: 0;
  border-radius: 50%;
  border: 1px solid #707070;
  background: #fff;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.edit__item-text-radio span::before:hover::before {
  border: 1px solid #707070;
  -webkit-transition: all 0.2s ease 0s;
  transition: all 0.2s ease 0s;
}

.edit__item-text-radio span::before:active::before {
  border: 1px solid #707070;
  -webkit-transition: all 0.2s ease 0s;
  transition: all 0.2s ease 0s;
  background: rgba(73, 115, 255, 0.2);
}

.edit__item-text-radio span::after {
  content: "";
  position: absolute;
  width: 14px;
  width: 0.875rem;
  height: 14px;
  height: 0.875rem;
  background: #cc0000;
  border-radius: 50%;
  left: 4.7px;
  left: 0.29375rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  display: none;
}

.edit__item-text-radio [type="radio"] {
  display: none;
}

.edit__item-radio label [type="radio"]:checked + span::after {
  display: block;
}

[type="text"] {
  width: 100%;
  border: 1px solid #999999;
  padding: 10px 10px;
  padding: 0.625rem 0.625rem;
  border-radius: 0.3125rem;
}

@media screen and (min-width: 768px) {
  [type="text"] {
    padding: 0.5625rem 0.625rem;
  }
}

[type="text"]::-webkit-input-placeholder {
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: -0.03em;
}

[type="text"]::-moz-placeholder {
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: -0.03em;
}

[type="text"]::-ms-input-placeholder {
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: -0.03em;
}

[type="text"]::placeholder {
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: -0.03em;
}

.edit__item-annotation {
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 1.6666666667;
  color: #222;
  font-weight: normal;
  margin-top: 8px;
  margin-top: 0.5rem;
  letter-spacing: -0.15em;
}

.edit__lv2-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 20px;
  gap: 1.25rem;
}

.edit__lv2-item:not(:first-child) {
  margin-top: 8px;
  margin-top: 0.5rem;
}

@media screen and (min-width: 768px) {
  .edit__lv2-item:not(:first-child) {
    margin-top: 0.625rem;
  }
}

.edit__lv2-item-title {
  text-align: left;
  max-width: 57px;
  max-width: 3.5625rem;
  width: 100%;
}

.edit__lv2-item-text {
  width: 100%;
}

.edit__item-select {
  margin-top: 20px;
  margin-top: 1.25rem;
}

.edit__item-select-box {
  display: grid;
  grid-template-columns: 10rem 1fr;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.edit__item-select-box:not(:first-child) {
  margin-top: 10px;
  margin-top: 0.625rem;
}

.edit__item-select-title {
  width: 160px;
  width: 10rem;
}

.edit__item-select-input {
  width: 100%;
}

.edit__item-select-input-items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.edit__item-select-input-item {
  position: relative;
}

.edit__item-select-input-item::after {
  position: absolute;
  content: "";
  background: url(../../assets/images/select-triangle.png) no-repeat center
    center/contain;
  width: 16px;
  width: 1rem;
  height: 7px;
  height: 0.4375rem;
  right: 10px;
  right: 0.625rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.edit__item-select-input-item:nth-child(1) {
  max-width: 300px;
  max-width: 18.75rem;
  width: 100%;
}

.edit__item-select-input-item:nth-child(2) {
  max-width: 180px;
  max-width: 11.25rem;
  width: 100%;
}

.select__company-name,
.select__company-branch,
.select__company-department {
  width: 100%;
  border: 1px solid #999999;
  padding: 12px 10px;
  padding: 0.75rem 0.625rem;
  border-radius: 0.3125rem;
}

.select__company-name,
.select__company-department {
  max-width: 300px;
  max-width: 18.75rem;
  width: 100%;
}

.select__company-branch {
  margin-left: 10px;
  margin-left: 0.625rem;
}

.select__company-branch {
  max-width: 180px;
  max-width: 11.25rem;
  width: 100%;
}

.edit__item-select--number {
  max-width: 527px;
  max-width: 32.9375rem;
  width: 100%;
}

.edit__item-text-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.edit__item-text-box:nth-child(2) {
  margin-top: 10px;
  margin-top: 0.625rem;
}

.edit__item-text-box-pass {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.3571428571;
  color: #222;
  font-weight: normal;
  max-width: 120px;
  max-width: 7.5rem;
  width: 100%;
  letter-spacing: -0.2em;
}

.edit__item-text-box-input {
  width: 100%;
}

.edit__button {
  margin-top: 20px;
  margin-top: 1.25rem;
  text-align: center;
}

.edit__button input {
  background-color: #cc0000;
  width: 100%;
  color: #fff;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.3571428571;
  font-weight: normal;
  padding: 10px 0;
  padding: 0.625rem 0;
  border-radius: 0.3125rem;
  letter-spacing: -0.05em;
}

@media screen and (min-width: 768px) {
  .edit__button input {
    max-width: 22.1875rem;
    width: 100%;
  }
}

.employee__page {
  background-color: #fff;
}

@media screen and (min-width: 768px) {
  .employee__page {
    background-color: #f5f5f7;
  }
}

.yazaki__employee {
  padding-top: 43px;
  padding-top: 2.6875rem;
  padding-bottom: 304px;
  padding-bottom: 19rem;
}

@media screen and (min-width: 768px) {
  .yazaki__employee {
    padding-top: 5.625rem;
    padding-bottom: 12.5rem;
  }
}

.employee__page .mypage-title.y-mypage-title {
  padding-top: 0;
}

.employee-box {
  margin-top: 20px;
  margin-top: 1.25rem;
}

@media screen and (min-width: 768px) {
  .employee-box {
    background-color: #fff;
    padding: 1.875rem;
  }
}

.employee-box__container {
  margin-top: 14px;
  margin-top: 0.875rem;
}

@media screen and (min-width: 768px) {
  .employee-box__container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.25rem;
  }
}

.employee-box__title {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  line-height: 1.3571428571;
  color: #222222;
}

.employee-box__text {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: normal;
  line-height: 1.3571428571;
  color: #222222;
  margin-top: 15px;
  margin-top: 0.9375rem;
}

.employee-box__item {
  border-bottom: 1px solid #cccccc;
  padding-top: 10px;
  padding-top: 0.625rem;
  padding-bottom: 10px;
  padding-bottom: 0.625rem;
}

.employee-box__item-title {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  line-height: 1.3571428571;
  color: #222222;
}

.company__info-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 11px;
  margin-top: 0.6875rem;
}

.company__info-title {
  width: 64px;
  width: 4rem;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  line-height: 1.3571428571;
  color: #222222;
}

.company__info-text {
  margin-left: 20px;
  margin-left: 1.25rem;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: normal;
  line-height: 1.3571428571;
  color: #222222;
}

.employee__button {
  margin-top: 30px;
  margin-top: 1.875rem;
  text-align: center;
}

.employee__button a {
  text-align: center;
  display: inline-block;
  color: #fff;
  font-weight: bold;
  line-height: 1.3571428571;
  background-color: #cc0000;
  max-width: 355px;
  max-width: 22.1875rem;
  width: 100%;
  padding: 10px 0;
  padding: 0.625rem 0;
  border-radius: 0.3125rem;
}

.employee__page .yazaki-application {
  padding-inline: 0;
}

.employee__page .yazaki-application__item-label {
  width: 16%;
}

.yazaki-form__section {
  border-bottom: 1px solid #ccc;
  border-bottom: 0.0625rem solid #ccc;
  background-color: #fff;
}

.yazaki-form .section-title {
  border-left: 4px solid #cc0000;
  border-left: 0.25rem solid #cc0000;
}

.yazaki-form__sub-title {
  margin-top: 20px;
  margin-top: 1.25rem;
}

.yazaki-form03 .yazaki-form__sub-title .section-sub-title {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.4285714286;
  padding-left: 6px;
  padding-left: 0.375rem;
  background-color: #000;
  padding-block: 7px;
  padding-block: 0.4375rem;
  color: #fff;
  border-left: none;
}

@media screen and (min-width: 768px) {
  .yazaki-form01 .login {
    padding-bottom: 0.625rem;
  }
}

.yazaki-form__item {
  margin-top: 10px;
  margin-top: 0.625rem;
}

.yazaki-form__title {
  margin-top: 10px;
  margin-top: 0.625rem;
  color: #fff;
  background-color: #222;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.4285714286;
  padding-left: 10px;
  padding-left: 0.625rem;
  padding-block: 3px;
  padding-block: 0.1875rem;
}

.yazaki-form__lv2-items
  .yazaki-form__lv2-item:nth-child(n + 2)
  .yazaki-form__title {
  margin-top: 30px;
  margin-top: 1.875rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form__lv2-items
    .yazaki-form__lv2-item:nth-child(n + 2)
    .yazaki-form__title {
    margin-top: 2.3125rem;
  }
}

.yazaki-form__dl {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.0833333333;
  margin-top: 10px;
  margin-top: 0.625rem;
  padding-bottom: 12px;
  padding-bottom: 0.75rem;
}

.yazaki-form__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  padding-left: 1px;
  padding-top: 1px;
  margin-top: -1px;
}

.yazaki-form__dt {
  border: #ccc 1px solid;
  background-color: #f5f5f7;
  padding: 10px;
  flex: auto;
}
.yazaki-form__dd {
  border: #ccc 1px solid;
  padding: 10px;
  flex: auto;
}
.yazaki-form__dt,
.yazaki-form__dd {
  margin-top: -1px;
  margin-left: -1px;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .yazaki-form__content {
    /* margin-top: 0.6875rem; */
    flex-direction: row;
  }
  .yazaki-form__dt {
    width: 300px;
  }
}

.yazaki-form__head-description {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.7142857143;
  margin-top: 20px;
  margin-top: 1.25rem;
}

.yazaki-form__head-btn-block {
  margin-top: 14px;
  margin-top: 0.875rem;
}

.yazaki-form__head-btn-block button {
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background: #fff;
  text-decoration: none;
  border-radius: 0.3125rem;
  border: 1px solid #999;
  border: 0.0625rem solid #999;
  width: 250px;
  width: 15.625rem;
  height: 44px;
  height: 2.75rem;
  -webkit-box-shadow: inset 0 -0.1875rem 0.375rem rgba(0, 0, 0, 0.16);
  box-shadow: inset 0 -0.1875rem 0.375rem rgba(0, 0, 0, 0.16);
}

.yazaki-form__head-btn-block button:before,
.yazaki-form__head-btn-block button:after {
  position: absolute;
  content: "";
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.yazaki-form__head-btn-block button:before {
  background-image: url(../images/human-icon.png);
  width: 20px;
  width: 1.25rem;
  height: 28px;
  height: 1.75rem;
  left: 20px;
  left: 1.25rem;
}

.yazaki-form__head-btn-block button:after {
  background-image: url(../images/diagonally-up-arrow.png);
  width: 16px;
  width: 1rem;
  height: 16px;
  height: 1rem;
  right: 20px;
  right: 1.25rem;
}

.yazaki-form__input-contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  margin-left: -5px;
  margin-left: -0.3125rem;
  margin-top: 6px;
  margin-top: 0.375rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form__input-contents {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    margin-top: 0;
  }
}

@media screen and (min-width: 768px) {
  .yazaki-form__input-block:nth-child(n + 2) {
    margin-left: 1.25rem;
  }
}

.yazaki-form__input-block input {
  margin-right: 10px;
  margin-right: 0.625rem;
}

.yazaki-form01 .yazaki-form__input--large {
  width: 100%;
}

.yazaki-form__container {
  margin-top: 25px;
  margin-top: 1.5625rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-column-gap: 1.25rem;
    -moz-column-gap: 1.25rem;
    column-gap: 1.25rem;
    margin-top: 0.875rem;
  }
}

.yazaki-form .yazaki-form__label {
  margin-top: 14px;
  margin-top: 0.875rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form .yazaki-form__label {
    margin-top: 0.5rem;
  }
}

.yazaki-form-modal {
  display: none;
  height: 100vh;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 100;
}

.yazaki-form-modal__overlay {
  background: rgba(0, 0, 0, 0.7);
  height: 100vh;
  position: absolute;
  width: 100%;
}

.yazaki-form-modal__content {
  left: 50%;
  padding: 10px;
  padding: 0.625rem;
  position: absolute;
  text-align: right;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  max-width: 355px;
  max-width: 22.1875rem;
  width: 100%;
}

.yazaki-form-modal__content .yazaki-form__modal-btn.js-modal-close {
  background: none;
  border: none;
}

.yazaki-form-modal__content img {
  max-width: 355px;
  max-width: 22.1875rem;
  width: 100%;
}

.yazaki-form__modal-btn img {
  width: 26px;
  width: 1.625rem;
  height: 26px;
  height: 1.625rem;
  margin-left: auto;
}

.yazaki-form01 .yazaki-form__input input {
  width: 100%;
  max-width: 100%;
}

.yazaki-form01-cancel__alert-text {
  color: #ff0000;
  margin-top: 3px;
  margin-top: 0.1875rem;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1;
}

.yazaki-form01-cancel form {
  background-color: #fff;
}

.yazaki-form01.yazaki-form01-cancel input,
.yazaki-form01.yazaki-form01-cancel select,
.yazaki-form01.yazaki-form01-cancel textarea {
  background-color: #ffe9e9;
  border: 1px solid #ff0000;
  border: 0.0625rem solid #ff0000;
}

.yazaki-form01-cancel__input {
  border: 1px solid #ff0000;
  border: 0.0625rem solid #ff0000;
}

.yazaki-form01.yazaki-form01-cancel .reserver {
  padding-top: 1px;
  padding-top: 0.0625rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form01.yazaki-form01-cancel .reserver {
    padding-top: 1.25rem;
  }
}

.yazaki-form01-cancel .y-flow-bar {
  padding-top: 26px;
  padding-top: 1.625rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form01-cancel .y-flow-bar {
    padding-top: 1.25rem;
  }
}

.yazaki-form01.yazaki-form01-cancel .yazaki-application {
  padding-top: 29px;
  padding-top: 1.8125rem;
  margin-top: 10px;
  margin-top: 0.625rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form01.yazaki-form01-cancel .yazaki-application {
    padding-top: 1.25rem;
    padding-bottom: 0;
    margin-top: 0;
  }
}

.yazaki-form01-employee .reserver {
  padding-bottom: 0;
  margin-top: 10px;
  margin-top: 0.625rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form01-employee .reserver {
    margin-top: 0;
  }
}

.yazaki-form01-employee .yazaki-form__flow-bar {
  margin-top: 0;
}

.yazaki-form01-employee__wrapper-text {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: normal;
  line-height: 1.4285714286;
  margin-top: 20px;
  margin-top: 1.25rem;
}

.yazaki-form01-employee__wrapper-text a {
  color: #065fd4;
  text-decoration: underline;
}

.yazaki-form01-employee__item {
  border-bottom: 1px solid #ccc;
  border-bottom: 0.0625rem solid #ccc;
  margin-top: 20px;
  margin-top: 1.25rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form01-employee__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.yazaki-form01-employee__item:nth-child(n + 2) {
  margin-top: 0;
  padding-block: 9px;
  padding-block: 0.5625rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form01-employee__item:nth-child(n + 2) {
    padding-block: 0.625rem;
  }
}

.yazaki-form01-employee__dt {
  width: 100%;
  font-weight: bold;
}

@media screen and (min-width: 768px) {
  .yazaki-form01-employee__dt {
    width: 8.25rem;
    font-size: 0.875rem;
    line-height: 1.4285714286;
  }
}

.yazaki-form01-employee__dd {
  margin-top: 6px;
  margin-top: 0.375rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form01-employee__dd {
    margin-top: 0;
  }
}

.yazaki-form01-employee__lv2-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-block: 5px;
  padding-block: 0.3125rem;
}

.yazaki-form01-employee__lv2-item:last-of-type {
  padding-bottom: 10px;
  padding-bottom: 0.625rem;
}

.yazaki-form01-employee__lv2-item-term {
  width: 94px;
  width: 5.875rem;
}

.yazaki-form01-employee__lv3-item {
  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) {
  .yazaki-form01-employee__lv3-item {
    -webkit-box-orient: initial;
    -webkit-box-direction: initial;
    -ms-flex-direction: initial;
    flex-direction: initial;
  }
}

.yazaki-form01-employee__lv3-item-description:nth-child(n + 2) {
  margin-left: 0;
}

@media screen and (min-width: 768px) {
  .yazaki-form01-employee__lv3-item-description:nth-child(n + 2) {
    margin-left: 1.25rem;
  }
}

.yazaki-form01-employee .confirm a {
  font-size: 16px;
  font-size: 1rem;
}

.yazaki-form01-employee .yazaki-form__flow-bar {
  padding-top: 0;
}

.yazaki-form01-employee.yazaki-form01 .reserver {
  padding-top: 18px;
  padding-top: 1.125rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form01-employee.yazaki-form01 .reserver {
    padding-top: 0;
  }
}

.yazaki-form01-employee .representative {
  margin-top: 20px;
  margin-top: 1.25rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form01-employee .representative {
    margin-top: 0;
  }
}

.yazaki-form01-employee__contents {
  margin-top: -8px;
  margin-top: -0.5rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form01-employee__contents {
    margin-top: 0;
  }
}

.yazaki-form01-employee .yazaki-form__input-contents {
  margin-top: -3px;
  margin-top: -0.1875rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form01-employee .yazaki-form__input-contents {
    margin-top: 0.375rem;
  }
}

.yazaki-form01-employee.yazaki-form01 .yazaki-form label {
  margin-top: 0;
}

@media screen and (min-width: 768px) {
  .yazaki-form01-employee__section {
    padding-top: 1.25rem;
  }
}

@media screen and (min-width: 768px) {
  .yazaki-form01-employee .confirm {
    padding-top: 1.25rem;
  }
}

.yazaki-form01-employee__info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 24px;
  margin-top: 1.5rem;
}

.yazaki-form01-employee__info-optional {
  padding: 1px 8px;
  padding: 0.0625rem 0.5rem;
  font-size: 12px;
  font-size: 0.75rem;
  background-color: #ddd;
}

.yazaki-form01-employee__info-title {
  font-weight: bold;
  margin-left: 10px;
  margin-left: 0.625rem;
}

.yazaki-form01 {
  margin-top: 43px;
  margin-top: 2.6875rem;
  max-width: 1000px;
  max-width: 62.5rem;
  margin-right: auto;
  margin-left: auto;
  font-size: 14px;
  font-size: 0.875rem;
  margin-bottom: 60px;
  margin-bottom: 3.75rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form01 {
    margin-top: 5rem;
    -webkit-column-gap: 1.25rem;
    -moz-column-gap: 1.25rem;
    column-gap: 1.25rem;
    margin-bottom: 10.90625rem;
  }
}

.yazaki-form01 .right-block__contents,
.yazaki-form01 .right-block__payment {
  max-width: 280px;
  max-width: 17.5rem;
  width: 100%;
}

.yazaki-form01 .left-block {
  padding-right: 0;
  padding-left: 0;
  margin-top: 0;
  background-color: inherit;
}

.yazaki-form01 .left-block .left-block__lower {
  margin-top: 10px;
  margin-top: 0.625rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form01 .left-block .left-block__lower {
    margin-top: 1.25rem;
  }
}

.yazaki-form01 .reserve-content__detail > span {
  margin-right: 0;
}

.yazaki-form01 form {
  margin-top: 0;
  background-color: #fff;
}

.yazaki-form01 .left-block,
.yazaki-form01 .flow-bar {
  max-width: 700px;
  max-width: 43.75rem;
  width: 100%;
}

.yazaki-form01 .right-block__contents,
.yazaki-form01 .right-block__payment {
  max-width: 280px;
  max-width: 17.5rem;
  width: 100%;
}

.yazaki-form02__content {
  display: block;
}

.yazaki-form02__input-block input {
  margin-right: 10px;
  margin-right: 0.625rem;
}

.yazaki-form01 .detail-link {
  color: #065fd4;
  text-decoration: underline;
}

.yazaki-form02__container {
  position: relative;
  max-width: 318px;
  max-width: 19.875rem;
  width: 100%;
  font-size: 14px;
  font-size: 0.875rem;
}

.yazaki-form02__container::before {
  /* border-left: 5px solid transparent;
    border-left: 0.3125rem solid transparent;
    border-right: 5px solid transparent;
    border-right: 0.3125rem solid transparent;
    border-top: 5px solid #000;
    border-top: 0.3125rem solid #000;
    content: "";
    position: absolute;
    right: 10px;
    right: 0.625rem;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 0;
    z-index: 0; */
}

.yazaki-form01 .section-title {
  border-left: 4px solid #cc0000;
  border-left: 0.25rem solid #cc0000;
}

.yazaki-form01 .confirm a {
  border: 1px solid #cc0000;
  background-color: #cc0000;
}

.yazaki-form01 input.input-check {
  -moz-appearance: none;
  appearance: none;
  -webkit-appearance: none;
  display: inline-block;
  width: 24px;
  width: 1.5rem;
  height: 24px;
  height: 1.5rem;
  border: 1px solid #707070;
  border: 0.0625rem solid #707070;
  border-radius: 50%;
  position: relative;
  background-color: #fff;
}

.yazaki-form01 input.input-check::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 14px;
  width: 0.875rem;
  height: 14px;
  height: 0.875rem;
  border-radius: 50%;
  background-color: transparent;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.yazaki-form01 input.input-check:checked::before {
  background-color: #cc0000;
}

.yazaki-form01 .reserver,
.yazaki-form01 .representative,
.yazaki-form01 .information,
.yazaki-form01 .dinner {
  border-bottom: none;
}

@media screen and (min-width: 768px) {
  .yazaki-form01 .reserver,
  .yazaki-form01 .representative,
  .yazaki-form01 .information,
  .yazaki-form01 .dinner {
    padding-inline: 1.25rem;
  }
}

.yazaki-form01 .reserver {
  padding-top: 9px;
  padding-top: 0.5625rem;
  background-color: #fff;
}

@media screen and (min-width: 768px) {
  .yazaki-form01 .reserver {
    padding-top: 1.0625rem;
  }
}

.yazaki-form01 .representative {
  background-color: #fff;
}

.yazaki-form01 .information {
  padding-top: 17px;
  padding-top: 1.0625rem;
}

.yazaki-form01 .reserver {
  padding-top: 0;
}

@media screen and (min-width: 768px) {
  .yazaki-form01 .reserver {
    padding-top: 1.25rem;
  }
}

.yazaki-form01 textarea {
  max-width: 100%;
}

.yazaki-form01 .yazaki-form02__line {
  border: 1px solid #ccc;
  border: 0.0625rem solid #ccc;
  margin-inline: 10px;
  margin-inline: 0.625rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form01 .yazaki-form02__line {
    margin-inline: 1.25rem;
  }
}

.yazaki-form01 .inquiries {
  border-bottom: 1px solid #ccc;
  border-bottom: 0.0625rem solid #ccc;
}

@media screen and (min-width: 768px) {
  .yazaki-form01 .inquiries {
    padding-inline: 1.25rem;
  }
}

.yazaki-form01 .payment__contents {
  border-bottom: none;
}

.yazaki-form01 .confirm {
  border-bottom: none;
}

.yazaki-form__flow-bar {
  max-width: 100%;
  background-color: #fff;
  margin-top: 10px;
  margin-top: 0.625rem;
  padding-top: 10px;
  padding-top: 0.625rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form__flow-bar {
    margin-top: 1.25rem;
    padding-top: 0;
  }
}

@media screen and (min-width: 768px) {
  .yazaki-form01 .reserve-content {
    padding-top: 0.1875rem;
    border-bottom: 0.0625rem solid #ccc;
  }
}

.yazaki-form01 input,
.yazaki-form01 textarea {
  display: block;
  width: 100%;
  max-width: 100%;
  border: 1px solid #999;
  border-radius: 0.3125rem;
  padding: 9px 10px;
  padding: 0.5625rem 0.625rem;
  margin-top: 7px;
  margin-top: 0.4375rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form01 input,
  .yazaki-form01 textarea {
    max-width: 41.25rem;
  }
}

.yazaki-form01 label {
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 700;
  margin-top: 25px;
  margin-top: 1.5625rem;
}

.yazaki-form01 label > span {
  margin-right: 10px;
  margin-right: 0.625rem;
}

.yazaki-form01__contents {
  margin-top: -9px;
  margin-top: -0.5625rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form01__contents {
    margin-top: 0;
  }
}

.yazaki-form01 .check {
  width: auto;
  width: initial;
  display: inline-block;
}

.yazaki-form01 input::-webkit-input-placeholder {
  color: #999;
}

.yazaki-form01 input::-moz-placeholder {
  color: #999;
}

.yazaki-form01 input::-ms-input-placeholder {
  color: #999;
}

.yazaki-form01 input::placeholder {
  color: #999;
}

.yazaki-form01 .representative__check input {
  display: inline-block;
  width: 18px;
  width: 1.125rem;
  height: 18px;
  height: 1.125rem;
  margin-left: 0;
  position: relative;
  top: 3px;
  top: 0.1875rem;
}

.yazaki-form01__label-tel {
  margin-top: 9px;
  margin-top: 0.5625rem;
}

.yazaki-form01__price-block {
  padding: 20px;
  padding: 1.25rem;
  border-top: 1px solid #ccc;
  border-top: 0.0625rem solid #ccc;
  border-bottom: 1px solid #ccc;
  border-bottom: 0.0625rem solid #ccc;
  background-color: #fff;
}

.yazaki-form01__price-block-contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.yazaki-form01__price-block-title {
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
}

.yazaki-form01__price-block-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
}

.yazaki-form01__price-block-content-total {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.4285714286;
}

.yazaki-form01__price-block-price {
  margin-left: 26px;
  margin-left: 1.625rem;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.4285714286;
}

.yazaki-form01__price-block-price span {
  font-size: 22px;
  font-size: 1.375rem;
  font-weight: 700;
  line-height: 1.5;
  color: #cc0000;
}

.yazaki-form01__price-description {
  text-align: right;
  margin-top: 11px;
  margin-top: 0.6875rem;
  font-size: 12px;
  font-size: 0.75rem;
}

.yazaki-form01 .confirm {
  border-top: 1px solid #ccc;
  border-top: 0.0625rem solid #ccc;
  border-bottom: 1px solid #ccc;
  border-bottom: 0.0625rem solid #ccc;
}

@media screen and (min-width: 768px) {
  .yazaki-form01 .confirm {
    border-top: none;
    border-bottom: none;
  }
}

.yazaki-form01 .payment__contents {
  border-bottom: none;
}

@media screen and (min-width: 768px) {
  .yazaki-form01 .payment__contents {
    border-bottom: 0.0625rem solid #ccc;
  }
}

.yazaki-form__items {
  margin-top: 20px;
  margin-top: 1.25rem;
}

.yazaki-form01 .yazaki-form__item {
  margin-top: 0;
}

.yazaki-form01 .yazaki-form__item:nth-child(n + 2) {
  margin-top: 20px;
  margin-top: 1.25rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form01 .yazaki-form__item:nth-child(n + 2) {
    margin-top: 2.5rem;
  }
}

.yazaki-form01 .yazaki-form__sub-title {
  margin-top: 0;
}

.yazaki-form01 .yazaki-form__label {
  font-weight: normal;
}

.yazaki-form01__line {
  border: 0.5px solid #ccc;
  border: 0.03125rem solid #ccc;
}

@media screen and (min-width: 768px) {
  .yazaki-form01__line {
    margin-inline: 1.25rem;
  }
}

.yazaki-form01 .yazaki-form label {
  margin-top: 7px;
  margin-top: 0.4375rem;
  font-weight: normal;
}

.yazaki-form01 .right-block__contents,
.yazaki-form01 .right-block__payment {
  width: 100%;
  max-width: 100%;
}

.yazaki-form01 .reserve-content__detail {
  line-height: 1.7142857143;
  padding-left: 43px;
  padding-left: 2.6875rem;
  text-indent: -43px;
  text-indent: -2.6875rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form01 .reserve-content__detail {
    padding-left: 2.5625rem;
    text-indent: -2.5625rem;
    margin-top: 1.25rem;
    line-height: 1.7142857143;
  }
}

.yazaki-form01 .login {
  padding-inline: 10px;
  padding-inline: 0.625rem;
  max-width: 100%;
  margin-top: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
  padding-bottom: 20px;
  padding-bottom: 1.25rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form01 .login {
    padding-inline: 1.25rem;
  }
}

.yazaki-form01__btn-contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 1.25rem;
  -moz-column-gap: 1.25rem;
  column-gap: 1.25rem;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.yazaki-form01 .login__btn {
  max-width: 170px;
  max-width: 10.625rem;
  padding-block: 10px;
  padding-block: 0.625rem;
}

.yazaki-form01 .login__input {
  margin-top: 20px;
  margin-top: 1.25rem;
}

.yazaki-form01__login-text {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.4285714286;
  margin-top: 10px;
  margin-top: 0.625rem;
}

.yazaki-form01 .login__btn--white {
  text-align: center;
}

.yazaki-form01__login-text {
  text-align: center;
}

.yazaki-form01__login-text {
  margin-top: 20px;
  margin-top: 1.25rem;
  text-decoration: underline;
  color: #065fd4;
}

.yazaki-form01 .login__icon {
  position: absolute;
  content: "";
  right: 20px;
  right: 1.25rem;
  top: 57%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 20px;
  width: 1.25rem;
  height: 16px;
  height: 1rem;
  cursor: pointer;
}

.yazaki-form01 .yazaki-application__item-label label {
  font-weight: normal;
  margin-top: 0;
}

.yazaki-form01 .yazaki-application__item-selects input {
  margin-top: 0;
}

@media screen and (min-width: 768px) {
  .yazaki-application__item-selects--alert {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

.yazaki-form01__cancel-information {
  background-color: #fff;
  padding-inline: 10px;
  padding-inline: 0.625rem;
  padding-top: 20px;
  padding-top: 1.25rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form01__cancel-information {
    padding-inline: 1.25rem;
  }
}

.yazaki-form01__cancel-information-block {
  background-color: #ffe9e9;
  padding: 20px;
  padding: 1.25rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form01__cancel-information-block {
    padding-top: 1.5rem;
  }
}

.yazaki-form01__cancel-information-title {
  text-align: left;
  font-size: 16px;
  font-size: 1rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form01__cancel-information-title {
    text-align: center;
    font-weight: bold;
    line-height: 1.5;
  }
}

.yazaki-form01__cancel-information-text {
  margin-top: 10px;
  margin-top: 0.625rem;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: normal;
  line-height: 2;
}

.yazaki-form01__cancel-alert {
  background-color: #fff;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  line-height: 1.4285714286;
  padding-inline: 44px;
  padding-inline: 2.75rem;
  position: relative;
  padding-top: 20px;
  padding-top: 1.25rem;
}

.yazaki-form01__cancel-alert::before {
  position: absolute;
  content: "";
  background-image: url(../images/alert-icon.png);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  width: 20px;
  width: 1.25rem;
  height: 20px;
  height: 1.25rem;
  left: 20px;
  left: 1.25rem;
}

.yazaki-form01__cancel-alert--inner {
  background-color: #fff;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  line-height: 1.4285714286;
  padding-inline: 24px;
  padding-inline: 1.5rem;
  position: relative;
  padding-top: 20px;
  padding-top: 1.25rem;
  padding-bottom: 20px;
  padding-bottom: 1.25rem;
}

.yazaki-form01__cancel-alert--inner::before {
  position: absolute;
  content: "";
  background-image: url(../images/alert-icon.png);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  width: 20px;
  width: 1.25rem;
  height: 20px;
  height: 1.25rem;
  left: 0px;
  left: 0rem;
}

.yazaki-form01 .representative__check .check {
  accent-color: #f00;
}

.yazaki-form01.yazaki-form01-employee .yazaki-form label {
  font-weight: normal;
  margin-top: 10px;
  margin-top: 0.625rem;
}

.yazaki-form01 .yazaki-application {
  padding-top: 8px;
  padding-top: 0.5rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form01 .yazaki-application {
    padding-top: 1.25rem;
    padding-bottom: 0;
  }
}

.yazaki-form01 .login__input input,
.yazaki-form01 .login__password input {
  max-width: 100%;
}

.yazaki-form02 {
  margin-top: 43px;
  margin-top: 2.6875rem;
  max-width: 1000px;
  max-width: 62.5rem;
  margin-right: auto;
  margin-left: auto;
  font-size: 14px;
  font-size: 0.875rem;
  margin-bottom: 60px;
  margin-bottom: 3.75rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form02 {
    margin-top: 5rem;
    -webkit-column-gap: 1.25rem;
    -moz-column-gap: 1.25rem;
    column-gap: 1.25rem;
    margin-bottom: 10.90625rem;
  }
}

.yazaki-form02 .right-block__contents,
.yazaki-form02 .right-block__payment {
  max-width: 280px;
  max-width: 17.5rem;
  width: 100%;
}

.yazaki-form02 .reserve-content__detail > span {
  margin-right: 0;
}

.yazaki-form02 .left-block,
.yazaki-form02 .flow-bar {
  max-width: 700px;
  max-width: 43.75rem;
  width: 100%;
}

.yazaki-form02 .right-block__contents,
.yazaki-form02 .right-block__payment {
  max-width: 280px;
  max-width: 17.5rem;
  width: 100%;
}

.yazaki-form02__content {
  display: block;
}

.yazaki-form02__input-block input {
  margin-right: 10px;
  margin-right: 0.625rem;
  font-size: 14px;
  font-size: 0.875rem;
}

.yazaki-form02 .detail-link {
  color: #065fd4;
  text-decoration: underline;
}

.yazaki-form02__container {
  position: relative;
  max-width: 318px;
  max-width: 19.875rem;
  width: 100%;
  font-size: 14px;
  font-size: 0.875rem;
}

.yazaki-form02__container::before {
  /* border-left: 5px solid transparent;
    border-left: 0.3125rem solid transparent;
    border-right: 5px solid transparent;
    border-right: 0.3125rem solid transparent;
    border-top: 5px solid #000;
    border-top: 0.3125rem solid #000;
    content: "";
    position: absolute;
    right: 10px;
    right: 0.625rem;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 0;
    z-index: 0; */
}

.yazaki-form02 .section-title {
  border-left: 4px solid #cc0000;
  border-left: 0.25rem solid #cc0000;
}

.yazaki-form02 .confirm a {
  border: 1px solid #cc0000;
  background-color: #cc0000;
}

.yazaki-form02 input.input-check {
  -moz-appearance: none;
  appearance: none;
  -webkit-appearance: none;
  display: inline-block;
  width: 24px;
  width: 1.5rem;
  height: 24px;
  height: 1.5rem;
  border: 1px solid #707070;
  border: 0.0625rem solid #707070;
  border-radius: 50%;
  position: relative;
  background-color: #fff;
}

.yazaki-form02 input.input-check::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 14px;
  width: 0.875rem;
  height: 14px;
  height: 0.875rem;
  border-radius: 50%;
  background-color: transparent;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.yazaki-form02 input.input-check:checked::before {
  background-color: #cc0000;
}

.yazaki-form02 .reserver,
.yazaki-form02 .representative,
.yazaki-form02 .information,
.yazaki-form02 .dinner {
  border-bottom: none;
}

@media screen and (min-width: 768px) {
  .yazaki-form02 .reserver,
  .yazaki-form02 .representative,
  .yazaki-form02 .information,
  .yazaki-form02 .dinner {
    padding-inline: 1.25rem;
  }
}

.yazaki-form02 .information {
  padding-top: 20px;
  padding-top: 1.25rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form02 .information {
    padding-top: 1.5625rem;
  }
}

.yazaki-form02 textarea {
  max-width: 100%;
}

.yazaki-form02__line {
  border: 0.5px solid #ccc;
  border: 0.03125rem solid #ccc;
  margin-inline: 10px;
  margin-inline: 0.625rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form02__line {
    margin-inline: 1.25rem;
  }
}

.yazaki-form02 .inquiries {
  border-bottom: 1px solid #ccc;
  border-bottom: 0.0625rem solid #ccc;
}

@media screen and (min-width: 768px) {
  .yazaki-form02 .inquiries {
    padding-inline: 1.25rem;
  }
}

.yazaki-form02 .left-block {
  background-color: #fff;
}

.yazaki-form02 .confirm {
  padding-top: 20px;
  padding-top: 1.25rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form02 .confirm {
    border-bottom: none;
  }
}

.yazaki-form__flow-bar {
  max-width: 100%;
  background-color: #fff;
}

.yazaki-form02 .yazaki-form__flow-bar {
  margin-top: -10px;
  margin-top: -0.625rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form02 .yazaki-form__flow-bar {
    margin-top: 0;
  }
}

@media screen and (min-width: 768px) {
  .yazaki-form02 .reserve-content {
    padding-top: 0.1875rem;
    border-bottom: 0.0625rem solid #ccc;
  }
}

.yazaki-form02 .payment__caption {
  font-size: 16px;
  font-size: 1rem;
  margin-top: 21px;
  margin-top: 1.3125rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form02 .payment__caption {
    margin-top: 0;
  }
}

.yazaki-form02 .payment__contents {
  padding: 0 0 17px 0;
  padding: 0 0 1.0625rem 0;
  border-bottom: 0;
  border-bottom: initial;
}

@media screen and (min-width: 768px) {
  .yazaki-form02 .payment__contents {
    padding: 0.875rem 0.625rem 1.1875rem;
  }
}

.yazaki-form02 .payment__flex {
  margin-top: 5px;
  margin-top: 0.3125rem;
}

.yazaki-form02 form {
  background-color: #fff;
}

.yazaki-form02 input,
.yazaki-form02 select,
.yazaki-form02 textarea {
  display: block;
  width: 100%;
  max-width: 660px;
  max-width: 41.25rem;
  border: 1px solid #999;
  border-radius: 5px;
  padding: 9px 10px;
  padding: 0.5625rem 0.625rem;
  margin-top: 7px;
  margin-top: 0.4375rem;
}

.yazaki-form02 label {
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 700;
  margin-top: 25px;
  margin-top: 1.5625rem;
}

.yazaki-form02 label > span {
  margin-right: 10px;
  margin-right: 0.625rem;
}

.yazaki-form02 .reserve-content__detail {
  padding-left: 34px;
  padding-left: 2.125rem;
  text-indent: -43px;
  text-indent: -2.6875rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form02 .reserve-content__detail {
    padding-left: 3.8125rem;
    text-indent: -2.5625rem;
    margin-top: 1.25rem;
    line-height: 1.7142857143;
    padding-left: 2.5rem;
  }
}

.yazaki-form02 input,
.yazaki-form02 select,
.yazaki-form02 textarea {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: normal;
  line-height: 1.4285714286;
}

.yazaki-form02__description-text {
  margin-top: -4px;
  margin-top: -0.25rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form02__description-text {
    margin-top: 0rem;
  }
}

.yazaki-form02__dinner {
  margin-top: -6px;
  margin-top: -0.375rem;
}

.yazaki-form02 .upgrade-text {
  margin-top: 10px;
  margin-top: 0.625rem;
}

.yazaki-form02 .confirm a {
  font-size: 16px;
  font-size: 1rem;
}

.yazaki-form02 .payment__contents {
  border-bottom: none;
}

@media screen and (min-width: 768px) {
  .yazaki-form02 .payment__contents {
    border-bottom: 0.0625rem solid #ccc;
  }
}

.yazaki-form03 {
  margin-top: 43px;
  margin-top: 2.6875rem;
  max-width: 1000px;
  max-width: 62.5rem;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (min-width: 768px) {
  .yazaki-form03 {
    margin-top: 5rem;
    -webkit-column-gap: 1.25rem;
    -moz-column-gap: 1.25rem;
    column-gap: 1.25rem;
  }
}

.yazaki-form03 .yazaki-form__flow-bar {
  margin-top: -10px;
  margin-top: -0.625rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form03 .yazaki-form__flow-bar {
    margin-top: 0;
  }
}

@media screen and (min-width: 768px) {
  .yazaki-form03 .reserve-content {
    padding-top: 0.1875rem;
    border-bottom: 0.0625rem solid #ccc;
  }
}

.yazaki-form03 .left-block,
.yazaki-form03 .flow-bar {
  max-width: 700px;
  max-width: 43.75rem;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .yazaki-form03 .right-block__contents,
  .yazaki-form03 .right-block__payment {
    max-width: 17.5rem;
    width: 100%;
  }
}

.yazaki-form03 .form {
  background-color: #fff;
  margin-top: 10px;
  margin-top: 0.625rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form03 .form {
    margin-top: 1.875rem;
  }
}
.yazaki-form03 .form__section.information,
.yazaki-form03 .form__section.dinner,
.yazaki-form03 .form__section.inquiries {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}

.yazaki-form03 .yazaki-form__section.form__section.inquiries {
  display: block;
}

.yazaki-form03 .form__section.information .section-title,
.yazaki-form03 .form__section.dinner .section-title,
.yazaki-form03 .form__section.inquiries .section-title {
  width: 100%;
  margin-bottom: 20px;
  margin-bottom: 1.25rem;
}
.yazaki-form03 .form__section.information .question,
.yazaki-form03 .form__section.dinner .question,
.yazaki-form03 .form__section.inquiries .question {
  margin: 0;
  margin-top: -1px;
  padding: 10px;
  border: #ccc 1px solid;
  box-sizing: border-box;
  flex: auto;
  width: 100%;
  background-color: #f5f5f7;
}

.yazaki-form03 .form__section.information .answer,
.yazaki-form03 .form__section.dinner .answer,
.yazaki-form03 .form__section.inquiries .answer {
  width: 100%;
  margin: 0;
  margin-top: -1px;
  margin-left: -1px;
  padding: 10px;
  border: #ccc 1px solid;
  box-sizing: border-box;
  flex: auto;
  align-self: stretch;
}
@media screen and (min-width: 768px) {
  .yazaki-form03 .form__section.information .question,
  .yazaki-form03 .form__section.dinner .question,
  .yazaki-form03 .form__section.inquiries .question {
    width: 280px;
  }

  .yazaki-form03 .form__section.information .answer,
  .yazaki-form03 .form__section.dinner .answer,
  .yazaki-form03 .form__section.inquiries .answer {
    width: calc(100% - 280px);
  }
}

.form__section.representative .answer {
  border: none;
}

.yazaki-form03 .form__section {
  margin-bottom: 0;
}

.yazaki-form03__content {
  padding-bottom: 20px;
  padding-bottom: 1.25rem;
}

.yazaki-form03 .flow-bar {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}

.yazaki-form03 .flow-bar__item {
  max-width: 164px;
  max-width: 10.25rem;
  width: 100%;
}

.yazaki-form03__content-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.4285714286;
  padding-left: 1px;
  padding-top: 1px;
  margin-top: -1px;
}

.yazaki-form03__dt {
  width: 100%;
  border: #ccc 1px solid;
  background-color: #f5f5f7;
  padding: 10px;
  flex: auto;
}
.yazaki-form03__dd {
  border: #ccc 1px solid;
  padding: 10px;
  flex: auto;
}

.yazaki-form03 .reserve-content__detail > span {
  margin-right: 0;
}

.yazaki-form03 .reserve-content__detail {
  padding-left: 43px;
  padding-left: 2.6875rem;
  text-indent: -43px;
  text-indent: -2.6875rem;
}

.yazaki-form03__dt,
.yazaki-form03__dd {
  margin-top: -1px;
  margin-left: -1px;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .yazaki-form03__content-item {
    flex-direction: row;
  }
  .yazaki-form03__dt {
    width: 200px;
  }
  .yazaki-form03 .reserve-content__detail {
    padding-left: 2.5rem;
    text-indent: -2.5625rem;
    margin-top: 1.25rem;
    line-height: 1.7142857143;
  }
}

.yazaki-form03 .section-title {
  border-left: 4px solid #cc0000;
  border-left: 0.25rem solid #cc0000;
}

.yazaki-form03 .confirm {
  border-top: 1px solid #ccc;
  border-top: 0.0625rem solid #ccc;
  border-bottom: 1px solid #ccc;
  border-bottom: 0.0625rem solid #ccc;
}

@media screen and (min-width: 768px) {
  .yazaki-form03 .confirm {
    border-bottom: none;
    border-top: none;
  }
}

.yazaki-form03 .payment__contents {
  border-bottom: none;
}

@media screen and (min-width: 768px) {
  .yazaki-form03 .payment__contents {
    border-bottom: 0.0625rem solid #ccc;
    padding-top: 0.875rem;
  }
}

.yazaki-form03 .confirm a {
  background-color: #cc0000;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
}

.yazaki-form03 .reserver,
.yazaki-form03 .representative,
.yazaki-form03 .information,
.yazaki-form03 .dinner {
  padding-bottom: 0;
}

@media screen and (min-width: 768px) {
  .yazaki-form03 .reserver,
  .yazaki-form03 .representative,
  .yazaki-form03 .information,
  .yazaki-form03 .dinner {
    border-bottom: none;
    padding-inline: 1.25rem;
  }
}

@media screen and (min-width: 768px) {
  .yazaki-form03 .inquiries {
    padding-inline: 1.25rem;
  }
}

.yazaki-form03 .representative .answer {
  border-bottom: none;
}

@media screen and (min-width: 768px) {
  .yazaki-form03 .representative .answer {
    /* border-bottom: 0.0625rem solid #ccc; */
  }
}

p.yazaki-form__answer--borderNone {
  border-bottom: none;
}

@media screen and (min-width: 768px) {
  p.yazaki-form__answer--borderNone {
    border-bottom: 0.0625rem solid #ccc;
  }
}

.yazaki-form03__content {
  padding-bottom: 0px;
  padding-bottom: 0rem;
  /* border-bottom: 1px solid #ccc;
    border-bottom: 0.0625rem solid #ccc; */
}

.yazaki-form03 .left-block {
  background-color: #fff;
}

.yazaki-form03 .reserve-content__detail {
  text-indent: -41px;
  text-indent: -2.5625rem;
  margin-top: 20px;
  margin-top: 1.25rem;
  line-height: 1.7142857143;
}

.yazaki-form03 .reserve-content__detail > span {
  margin-right: 0;
}

.yazaki-form03__wrapper-items {
  font-size: 14px;
  font-size: 0.875rem;
  margin-top: 20px;
}

.yazaki-form03__wrapper-item {
  /* border-bottom: 1px solid #ccc;
    border-bottom: 0.0625rem solid #ccc; */
  /* padding-block: 8px;
    padding-block: 0.5rem; */
  display: flex;
  align-items: center;
  flex-direction: column;
}

.yazaki-form03__wrapper-item:last-child {
}

.yazaki-form03__wrapper-item-name {
  margin-top: -1px;
  padding: 10px;
  font-weight: bold;
  width: 100%;
  border: #ccc 1px solid;
  flex: auto;
  background-color: #f5f5f7;
}

.yazaki-form03__wrapper-item-answer {
  margin-top: -1px;
  padding: 10px;
  width: 100%;
  border: #ccc 1px solid;
  flex: auto;
  align-self: stretch;
}

@media screen and (min-width: 768px) {
  .yazaki-form03__wrapper-item {
    flex-direction: row;
  }
  .yazaki-form03__wrapper-item-name {
    width: 200px;
    margin-left: -1px;
  }
  .yazaki-form03__wrapper-item-answer {
    margin-left: -1px;
  }
}

.yazaki-form03 .confirm {
  padding-top: 20px;
  padding-top: 1.25rem;
}

.yazaki-form03 .payment__caption {
  font-size: 16px;
  font-size: 1rem;
  margin-top: 21px;
  margin-top: 1.3125rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form03 .payment__caption {
    margin-top: 0;
  }
}

.yazaki-form03
  .yazaki-form__lv2-items
  .yazaki-form__lv2-item:nth-child(n + 2)
  .yazaki-form__title {
  margin-top: 30px;
  margin-top: 1.875rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form03
    .yazaki-form__lv2-items
    .yazaki-form__lv2-item:nth-child(n + 2)
    .yazaki-form__title {
    margin-top: 0.75rem;
  }
}

.yazaki-form04 .form03-upper__property {
  width: 29%;
}

@media screen and (min-width: 768px) {
  .yazaki-form04 .form03-upper__property {
    width: 15%;
  }
}

.yazaki-form04 .yazaki-form__flow-bar {
  margin-top: -10px;
  margin-top: -0.625rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form04 .yazaki-form__flow-bar {
    margin-top: 0;
  }
}

.yazaki-form04 {
  padding-top: 43px;
  padding-top: 2.6875rem;
  max-width: 1000px;
  max-width: 62.5rem;
  margin-right: auto;
  margin-left: auto;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 2.1485714;
  padding-bottom: 70px;
  padding-bottom: 4.375rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form04 {
    padding-top: 5rem;
    -webkit-column-gap: 1.25rem;
    -moz-column-gap: 1.25rem;
    column-gap: 1.25rem;
    padding-bottom: 9.6875rem;
  }
}

.yazaki-form04 .left-block,
.yazaki-form04 .flow-bar {
  max-width: 700px;
  max-width: 43.75rem;
  width: 100%;
}

.yazaki-form04 .right-block__contents,
.yazaki-form04 .right-block__payment {
  max-width: 280px;
  max-width: 17.5rem;
  width: 100%;
}

.yazaki-form04 .form03-upper__description--lower {
  text-align: left;
  line-height: 1.4285714286;
}

@media screen and (min-width: 768px) {
  .yazaki-form04 .form03-upper__description--lower {
    text-align: center;
  }
}

.yazaki-form04 .confirm .detail-link--lower {
  background-color: #cc0000;
  color: #fff;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
}

@media screen and (min-width: 768px) {
  .yazaki-form04 .confirm .detail-link--lower {
    max-width: 22.1875rem;
    width: 100%;
  }
}

@media screen and (min-width: 768px) {
  .yazaki-form04 .form04-upper__message {
    text-align: center;
    font-weight: normal;
    margin-top: 0.875rem;
  }
}

@media screen and (min-width: 768px) {
  .yazaki-form04 .form03-inner__section {
    padding-inline: 0;
  }
}

.yazaki-form04 .reserve-content__detail > span {
  margin-right: 0;
}

.yazaki-form04 .reserve-content__detail {
  padding-left: 43px;
  padding-left: 2.6875rem;
  text-indent: -43px;
  text-indent: -2.6875rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form04 .reserve-content__detail {
    padding-left: 2.5rem;
    text-indent: -2.5625rem;
    margin-top: 1.25rem;
    line-height: 1.7142857143;
  }
}

.yazaki-form4__spacer {
  padding-block: 5px;
  padding-block: 0.3125rem;
  background-color: #eee;
  width: 100vw;
  margin: 0 calc(50% - 50vw);
}

.yazaki-form04 .upgrade-text {
  padding-inline: 20px;
  padding-inline: 1.25rem;
}

.yazaki-form04__upgrade-text--accent {
  font-weight: 700;
}

.yazaki-form04__btn {
  margin-top: 14px;
  margin-top: 0.875rem;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .yazaki-form04__btn--cancel {
    margin-top: 1.625rem;
  }
}

.yazaki-form04__btn a {
  display: inline-block;
  max-width: 355px;
  max-width: 22.1875rem;
  width: 100%;
}

.yazaki-form04 .confirm {
  border-bottom: none;
  padding-inline: 0;
}

.yazaki-form04--cancel .form03-upper {
  border-bottom: none;
}

.yazaki-form04--cancel .confirm {
  padding-top: 0;
}

.yazaki-form04 .form04-upper__message {
  font-weight: normal;
  text-align: left;
}

@media screen and (min-width: 768px) {
  .yazaki-form04 .form04-upper__message {
    text-align: center;
  }
}

.yazaki-form04 .reserve-content {
  padding-bottom: 17px;
  padding-bottom: 1.0625rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form04 .reserve-content {
    padding-top: 0.1875rem;
    border-bottom: 0.0625rem solid #ccc;
  }
}

.yazaki-form04 .left-block {
  background-color: #fff;
}

.yazaki-form04 .payment__flex,
.yazaki-form04--cancel .payment__flex {
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
}

@media screen and (min-width: 768px) {
  .yazaki-form04--cancel__message {
    margin-left: 3.3125rem;
  }
}

.yazaki-form04 .form04-upper__message {
  margin-top: 25px;
  margin-top: 1.5625rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form04 .form04-upper__message {
    margin-top: 1rem;
  }
}

.yazaki-form04 .form03-upper__title {
  margin-top: 15px;
  margin-top: 0.9375rem;
}

.yazaki-form04 .form03-upper__idpass td {
  padding: 6px 11px;
  padding: 0.375rem 0.6875rem;
}

.yazaki-form04 .section-title {
  padding-left: 10px;
  padding-left: 0.625rem;
  border-left: 4px solid #cc0000;
}

.yazaki-form04 .upgrade-text {
  margin-top: 15px;
  margin-top: 0.9375rem;
}

.yazaki-form04 .activity__loginn {
  margin-top: -8px;
  margin-top: -0.5rem;
}

.yazaki-form04 .confirm {
  padding-bottom: 40px;
  padding-bottom: 2.5rem;
}

.yazaki-form04 .confirm a {
  padding-block: 5px;
  padding-block: 0.3125rem;
}

.yazaki-form04 .reserve-content__detail {
  padding-left: 34px;
  padding-left: 2.125rem;
  text-indent: -43px;
  text-indent: -2.6875rem;
  line-height: 1.7142857143;
  margin-top: 16px;
  margin-top: 1rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form04 .reserve-content__detail {
    padding-left: 2.5rem;
    text-indent: -2.5625rem;
    margin-top: 1.25rem;
  }
}

.yazaki-form04 .payment__caption {
  font-size: 16px;
  font-size: 1rem;
  margin-top: 21px;
  margin-top: 1.3125rem;
}

@media screen and (min-width: 768px) {
  .yazaki-form04 .payment__caption {
    margin-top: 0;
  }
}

.yazaki-form04 .payment__contents {
  padding: 0 0 17px 0;
  padding: 0 0 1.0625rem 0;
  border-bottom: 0;
  border-bottom: initial;
}

@media screen and (min-width: 768px) {
  .yazaki-form04 .payment__contents {
    padding: 0.875rem 0.625rem 1.1875rem;
    border-bottom: 0.0625rem solid #ccc;
  }
}

.yazaki-form04 .payment__flex {
  margin-top: 5px;
  margin-top: 0.3125rem;
}

.yazaki-form4__description {
  margin-top: -4px;
  margin-top: -0.25rem;
}

.y-login-page {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.42857143;
}

.y-login-page-box {
  padding-right: 10px;
  padding-left: 10px;
}

.y-login-page__logo {
  width: 100%;
  max-width: 260px;
  max-width: 16.25rem;
  margin-right: auto;
  margin-left: auto;
  padding-top: 100px;
  padding-top: 6.25rem;
}

.y-login {
  margin-right: auto;
  margin-left: auto;
  padding: 20px 20px 30px;
  padding: 1.25rem 1.25rem 1.875rem;
  margin-top: 19.6px;
  margin-top: 1.225rem;
}

.y-login-page label {
  display: block;
}

.y-login-page label:nth-of-type(2) {
  margin-top: 14px;
  margin-top: 0.875rem;
}

.y-login-page label:nth-of-type(3) {
  margin-top: 9.8px;
  margin-top: 0.6125rem;
}

.y-login-page input {
  margin-top: 4px;
  margin-top: 0.25rem;
}

.y-login-page .login__input input {
  padding: 9.5px 10px;
  padding: 0.59375rem 0.625rem;
}

.y-login-page .login__icon {
  top: 38%;
}

.y-login-page .login__onetime {
  display: inline-block;
  width: 84.23px;
  width: 5.264375rem;
  height: 35.85px;
  height: 2.240625rem;
  margin-top: 20.3px;
  margin-top: 1.26875rem;
  right: auto;
  position: static;
}

.y-login-page .login__check {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.y-login-page .login__checkbox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 24px;
  margin-top: 1.5rem;
  vertical-align: middle;
}

.y-login-page .login__checkbox label {
  margin-left: 10px;
  margin-left: 0.625rem;
}

.y-login-page .login__checkbox input {
  width: 18px;
  width: 1.125rem;
  height: 18px;
  height: 1.125rem;
  margin: 0;
  padding: 0;
  position: relative;
  top: 4px;
}

.y-login-page .login__check .login__btn {
  width: 24.3%;
  padding-top: 5px;
  padding-top: 0.3125rem;
  padding-bottom: 5px;
  padding-bottom: 0.3125rem;
  margin-right: 0;
  margin-left: auto;
}

.y-login-page__description {
  max-width: 435px;
  max-width: 27.1875rem;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  margin-top: 20px;
  margin-top: 1.25rem;
}

.y-login-page__description .description__text {
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 1.66666667;
  padding: 10px;
  padding: 0.625rem;
  background-color: #fff;
}

.y-login-page__description a {
  display: inline-block;
  color: #065fd4;
  text-decoration: underline;
  margin-top: 27px;
  margin-top: 1.6875rem;
}

@media screen and (min-width: 768px) {
  .y-login {
    padding: 1.25rem 2.5rem 1.875rem;
  }

  .y-login-page__description {
    margin-top: 0.75rem;
  }

  .y-login-page__description a {
    margin-top: 1.25rem;
  }
}

.login__error {
  margin-top: 20px;
  margin-top: 1.25rem;
  font-size: clamp(14px, 14px + 0vw, 14px);
  font-size: clamp(0.875rem, 0.875rem + 0vw, 0.875rem);
  color: #ff0000;
  line-height: 1.4285714286;
  letter-spacing: -2px;
  letter-spacing: -0.125rem;
  font-weight: bold;
  position: relative;
  padding-left: 24px;
  padding-left: 1.5rem;
}

.login__error::before {
  position: absolute;
  content: "";
  width: 20px;
  width: 1.25rem;
  height: 20px;
  height: 1.25rem;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  background: url(../images/login-error.png) no-repeat center center/contain;
}

.login__error-text {
  margin-top: 4px;
  margin-top: 0.25rem;
  font-size: clamp(14px, 14px + 0vw, 14px);
  font-size: clamp(0.875rem, 0.875rem + 0vw, 0.875rem);
  color: #ff0000;
  line-height: 1.4285714286;
  letter-spacing: -2px;
  letter-spacing: -0.125rem;
  font-weight: normal;
}

.login__input--error input {
  display: block;
  border: 1px solid #ff0000;
  border-radius: 5px;
  width: 100%;
  padding: 13px 10px;
  padding: 0.8125rem 0.625rem;
  margin-left: auto;
  margin-right: auto;
  margin-top: 20px;
  margin-top: 1.25rem;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.42857143;
  background-color: #ffe9e9;
}

.password__link {
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  text-align: center;
  text-decoration: underline;
  color: #065fd4;
  margin-top: 20px;
  margin-top: 1.25rem;
}

.mypage-title.y-mypage-title {
  padding-top: 50px;
  padding-top: 3.125rem;
}

@media screen and (min-width: 768px) {
  .mypage-title.y-mypage-title {
    padding-top: 5.75rem;
  }
}

.y-mypage-title h2 {
  font-size: 20px;
  font-size: 1.25rem;
}

.section__title {
  font-size: 16px;
  font-size: 1rem;
  font-weight: bold;
  padding-left: 10px;
  padding-left: 0.625rem;
  line-height: 1.3125;
  position: relative;
}

.section__title::before {
  position: absolute;
  content: "";
  width: 4px;
  width: 0.25rem;
  height: 100%;
  background-color: #cc0000;
  left: 0;
  top: 0;
}

.employee__info {
  margin-top: 14px;
  margin-top: 0.875rem;
  padding: 16px 20px;
  padding: 1rem 1.25rem;
  background-color: #fff;
}

@media screen and (min-width: 768px) {
  .employee__info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
}

.employee__info-name {
  font-size: 20px;
  font-size: 1.25rem;
  color: #222;
  line-height: 1.35;
  font-weight: bold;
}

.employee__info-kana {
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 1.3333333333;
  margin-top: 7px;
  margin-top: 0.4375rem;
}

.employee__info-button {
  display: block;
  text-align: right;
  text-decoration: underline;
  color: #065fd4;
  font-weight: normal;
  line-height: 1.3571428571;
}

@media screen and (min-width: 768px) {
  .employee__info-button {
    padding: 0.625rem 3.125rem 0.625rem 1.875rem;
    display: inline-block;
    margin-left: auto;
    color: #222222;
    text-decoration: none;
    font-weight: bold;
    border: 1px solid #999999;
    -webkit-box-shadow: 0px -3px 6px rgba(0, 0, 0, 0.16) inset;
    box-shadow: 0px -3px 6px rgba(0, 0, 0, 0.16) inset;
    border-radius: 0.3125rem;
  }
}

.employee__title {
  margin-top: 20px;
  margin-top: 1.25rem;
}

.y-mypage-body__main {
  margin-top: 33px;
  margin-top: 2.0625rem;
}

@media screen and (min-width: 768px) {
  .y-mypage-body__main {
    margin-top: 2.5rem;
  }
}

.y-mypage-body__main-text {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: normal;
  line-height: 1.7142857143;
  margin-top: 8px;
  margin-top: 0.5rem;
}

@media screen and (min-width: 768px) {
  .y-mypage-body__main-text {
    margin-top: 0.75rem;
  }
}

.y-mypage-body__box {
  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-shadow: 0 1px 2px rgba(112, 112, 112, 0.2);
  box-shadow: 0 1px 2px rgba(112, 112, 112, 0.2);
}

@media screen and (min-width: 768px) {
  .y-mypage-body__box {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }
}

.y-mypage-body__box {
  margin-top: 20px;
  margin-top: 1.25rem;
}

@media screen and (min-width: 768px) {
  .y-mypage-body__box {
    margin-top: 0.625rem;
  }
}

.y-mypage-body__content.reserve-content {
  border-top: 4px solid #cc0000;
  padding: 18px 20px 20px;
  padding: 1.125rem 1.25rem 1.25rem;
}

@media screen and (min-width: 768px) {
  .y-mypage-body__content.reserve-content {
    border-top: none;
    border-left: 4px solid #cc0000;
  }
}

.y-reserve-content__title {
  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) {
  .y-reserve-content__title {
    gap: 0.625rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }
}

.y-reserve-content__title span {
  max-width: 94px;
  max-width: 5.875rem;
  width: 100%;
  display: inline-block;
  text-align: center;
  font-size: 12px;
  font-size: 0.75rem;
  background-color: #000000;
  padding: 4px;
  padding: 0.25rem;
  color: #fff;
}

@media screen and (min-width: 768px) {
  .y-reserve-content__title span {
    max-width: 7.375rem;
  }
}

.y-reserve-content__detail {
  margin-top: 13px;
  margin-top: 0.8125rem;
}

.y-mypage-body__links a:first-child {
  background-color: #cc0000;
  border-color: #cc0000;
  color: #fff;
}

.y-mypage-body__links a:nth-child(2) {
  background-color: #fff;
  margin-top: 20px;
  margin-top: 1.25rem;
}

.yazaki-mypage main {
  margin-bottom: 100px;
  margin-bottom: 6.25rem;
}

.reserve-content__cancel-btn.reserve-content__cancel-btn--black {
  background-color: #000;
}

.y-top .mv {
  height: 170px;
  height: 10.625rem;
}

.y-top .mv > .mv__img {
  display: block;
  height: 100%;
  margin-top: 48px;
  margin-top: 3rem;
}

.y-top .mv > .mv__img img {
  -o-object-fit: cover;
  object-fit: cover;
  height: 100%;
}

@media screen and (min-width: 768px) {
  .y-top .mv {
    height: 19.3125rem;
    position: relative;
    /* width: 100vw; */
    width: 100%;
  }
}

.login-detail {
  padding-right: 10px;
  padding-left: 10px;
  background-color: #fff;
  padding-bottom: 30px;
  padding-bottom: 1.875rem;
}

.login-detail__inner {
  background-color: #fff;
  margin-right: auto;
  margin-left: auto;
  margin-top: -48px;
  margin-top: -3rem;
  z-index: 2;
  position: relative;
}

.login-detail__upper {
  text-align: center;
}

.login-detail__title {
  font-size: 22px;
  font-size: 1.375rem;
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  padding: 25px 35px 14px;
  padding: 1.5625rem 2.1875rem 0.875rem;
  position: relative;
}

@media screen and (min-width: 768px) {
  .login-detail__title {
    font-size: 1.875rem;
  }
}

.login-detail__title::after {
  content: "";
  display: inline-block;
  width: 80px;
  width: 5rem;
  height: 2px;
  height: 0.125rem;
  background-color: #cc0000;
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.login-detail__description {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.85714286;
  padding-top: 20px;
  padding-top: 1.25rem;
}

.login-detail__link {
  padding-top: 32px;
  padding-top: 2rem;
  margin-bottom: 30px;
  margin-bottom: 1.875rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2.25%;
}

.login-detail__link > button {
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
  text-align: center;
  padding-top: 11px;
  padding-top: 0.6875rem;
  padding-bottom: 11px;
  padding-bottom: 0.6875rem;
  width: 50%;
  border-radius: 5px;
  border: none;
}

.login-detail__link > button:first-child {
  background-color: #000;
}

.login-detail__link > button:nth-child(2) {
  background-color: #cc0000;
}

.login-detail__lower {
  padding: 20px 20px 20px;
  padding: 1.25rem 1.25rem 1.25rem;
  background-color: #f5f5f7;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.login-detail__img {
  position: relative;
  overflow: hidden;
  aspect-ratio: 315/178;
  width: 100%;
}

.login-detail__img img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  -o-object-fit: cover;
  object-fit: cover;
}

.hotel__title {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.44444444;
  margin-top: 10px;
  margin-top: 0.625rem;
}

.hotel__address {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.85714286;
  margin-top: 10px;
  margin-top: 0.625rem;
}

.hotel__description {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.85714286;
  margin-top: 8.5px;
  margin-top: 0.53125rem;
  padding-top: 8.5px;
  padding-top: 0.53125rem;
  border-top: 1px solid #ccc;
}

.hotel > button {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.42857143;
  text-align: center;
  display: block;
  width: 100%;
  padding-top: 10px;
  padding-top: 0.625rem;
  padding-bottom: 10px;
  padding-bottom: 0.625rem;
  background-color: #fff;
  border: 1px solid #999;
  border-radius: 9px;
  margin-top: 10px;
  margin-top: 0.625rem;
  -webkit-box-shadow: 0px -3px 6px rgba(0, 0, 0, 0.16) inset;
  box-shadow: 0px -3px 6px rgba(0, 0, 0, 0.16) inset;
}

@media screen and (min-width: 768px) {
  .login-detail {
    background-color: #fff;
  }

  .login-detail__inner {
    max-width: 62.5rem;
    width: 100%;
  }

  .login-detail__link {
    max-width: 30rem;
    margin-right: auto;
    margin-left: auto;
  }

  .login-detail__lower {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    gap: 2%;
    background-color: #f5f5f7;
    padding: 2.0625rem 1.875rem 1.875rem 1.875rem;
  }

  .login-detail__img {
    width: 26.6%;
  }

  .login-detail__hotel-detail {
    width: 71.17%;
  }

  .login-detail__img img {
    top: 0;
    -webkit-transform: translate(-50%, 0%);
    transform: translate(-50%, 0%);
  }

  .hotel > button {
    width: 20%;
  }
}

.member-reserve {
  background-image: url(../images/mv02@2x.jpg);
  background-size: cover;
  height: 100%;
  padding: 20px 10px;
  padding: 1.25rem 0.625rem;
}

.member-reserve .member-reserve__title {
  text-align: center;
  color: #fff;
  text-shadow: 2px 2px 3px rgba(0, 0, 0, 0.4);
}

.member-reserve__inner {
  background-color: #fff;
  width: 355px;
  width: 22.1875rem;
  margin-left: auto;
  margin-right: auto;
  margin-top: 20px;
  margin-top: 1.25rem;
}

.member-reserve .m-number__title {
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
}

.member-reserve__number {
  padding: 20px 10px 0;
  padding: 1.25rem 0.625rem 0;
  border-bottom: 1px solid #707070;
}

.m-number__title {
  text-align: center;
}

.m-number__wrapper {
  padding-bottom: 14px;
  padding-bottom: 0.875rem;
}

.m-number__wrapper .reserve-detail table {
  text-align: left;
}

.m-number__wrapper:nth-of-type(2) {
  border-top: 1px solid #ccc;
}

.m-number .m-number__sub-title.twin {
  /* margin-top: 20px;
  margin-top: 1.25rem; */
}

.m-number .m-number__sub-title.cottage {
  /* margin-top: 10.5px;
  margin-top: 0.65625rem; */
}

.m-number .m-number__sub-title {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}

.rooom-detail-link {
  font-size: 0.85rem;
  color: #065fd4;
}

.m-number__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-top: 4px;
  margin-top: 0.25rem;
}

.m-number__items select {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.42857143;
}

.m-number__room {
  width: 24.5%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border: 1px solid #999;
  border-radius: 5px;
  padding: 11px 0 11px 2.4%;
  padding: 0.6875rem 0 0.6875rem 2.4%;
}

.m-number__items .select-wrap {
  position: relative;
}

.m-number__items .select-wrap::after {
  /* border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 6px solid #000;
    content: "";
    position: absolute;
    right: 11px;
    right: 0.6875rem;
    top: 18px;
    top: 1.125rem;
    width: 0;
    z-index: 0; */
}

.m-number__items .m-number__room .select-wrap {
  width: 100%;
}

.m-number__items .m-number__room .select-wrap::after {
  top: 10px;
  top: 0.625rem;
}

.m-number__items .select-wrap.ad {
  position: relative;
}

.m-number__items .select-wrap.ad::before {
  content: "";
  display: inline-block;
  width: 14px;
  width: 0.875rem;
  height: 14px;
  height: 0.875rem;
  background-image: url(../images/man-grey.png);
  background-size: contain;
  vertical-align: middle;
  position: absolute;
  top: 50%;
  left: 8px;
  left: 0.5rem;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.m-number__people {
  width: 65%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border: 1px solid #999;
  border-radius: 5px;
  padding-top: 4.5px;
  padding-top: 0.28125rem;
  padding-bottom: 3.5px;
  padding-bottom: 0.21875rem;
}

.m-number__room + span {
  display: block;
  padding-top: 14px;
  padding-top: 0.875rem;
}

.m-number__people .select-wrap {
  width: 50%;
}

.m-number__people .select-wrap.ad select {
  padding: 19px 0 3.5px 28.18%;
  padding: 1.1875rem 0 0.21875rem 28.18%;
}

.m-number__people .select-wrap.ch select {
  padding: 19px 0 3.5px 9.09%;
  padding: 1.1875rem 0 0.21875rem 9.09%;
  border-left: 1px solid #999;
}

.m-number__items .select-wrap.ad span {
  position: relative;
}

.m-number__items .select-wrap.ad span::after {
  content: "大人";
  display: inline-block;
  width: 20px;
  height: 15px;
  font-size: 10px;
  font-size: 0.625rem;
  position: absolute;
  top: -14px;
  top: -0.875rem;
  left: 30px;
  left: 1.875rem;
}

/* .m-number__items .select-wrap.ch span {
  position: relative;
} */

/* .m-number__items .select-wrap.ch span::after {
  content: "子供";
  display: inline-block;
  width: 20px;
  height: 15px;
  font-size: 10px;
  font-size: 0.625rem;
  position: absolute;
  top: -14px;
  top: -0.875rem;
  left: 10px;
  left: 0.625rem;
} */

.m-number__items .finder__container.middle.room {
  border: 1px solid #999;
  border-radius: 5px;
  font-size: 16px;
  font-size: 1rem;
  left: 1.5;
  height: 50px;
  height: 3.125rem;
  width: 29.3%;
}

@media screen and (min-width: 768px) {
  .member-reserve__number {
    padding: 1.25rem 5rem 0.125rem 2.5rem;
  }

  .m-number__wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    position: relative;
    align-items: center;
  }

  .m-number__wrapper:first-of-type {
    margin-top: 1.25rem;
  }

  .m-number__sub-title {
    width: 23%;
  }

  .m-number__items {
    width: 77%;
  }

  .m-number__wrapper:nth-of-type(2) {
    border-top: none;
  }

  .m-number__room {
    width: 11.8%;
    padding: 11px 0 11px 1.3%;
  }

  .m-number__people {
    width: 82%;
  }

  .m-number__items select {
    font-size: 1rem;
    line-height: 1.5;
  }

  .m-number__people .select-wrap.ad select {
    padding: 0.28125rem 0 0.46875rem 27%;
  }

  .m-number__items .select-wrap.ad::before {
    left: 0.625rem;
  }

  .m-number__items .select-wrap.ad span::after {
    width: 2rem;
    height: 1.5rem;
    font-size: 1rem;
    top: 0;
    left: 2.25rem;
  }

  .m-number__people .select-wrap.ch select {
    padding: 0.28125rem 0 0.46875rem 17.3%;
  }

  .m-number__items .select-wrap.ch span::after {
    width: 2rem;
    height: 1.5rem;
    font-size: 1rem;
    top: 0;
    left: 0.6875rem;
  }
}

.overlay1,
.overlay2 {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.7);
  z-index: 5;
}

.member-reserve .reserve-detail.reserve-detail--sp1 {
  display: none;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 15;
}

.member-reserve .reserve-detail.reserve-detail--sp2 {
  display: none;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 15;
}

.member-reserve .reserve-detail.reserve-detail--pc1 {
  display: none;
  position: absolute;
  top: 97%;
  left: 13%;
  width: inherit;
  max-width: 766px;
  max-width: 47.875rem;
  z-index: 55;
}

@media screen and (max-width: 767px) {
  .member-reserve .reserve-detail.reserve-detail--pc1 {
    position: static;
    z-index: 4;
  }
}

.member-reserve .reserve-detail.reserve-detail--pc2 {
  position: absolute;
  display: none;
  top: 97%;
  left: 13%;
  width: calc(100% + 495px);
}

@media screen and (max-width: 767px) {
  .member-reserve .reserve-detail.reserve-detail--pc2 {
    position: static;
    z-index: 4;
    width: inherit;
    max-width: 47.875rem;
  }
}

.member-reserve__inner {
  max-width: 1000px;
  max-width: 62.5rem;
  width: 100%;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .member-reserve__inner.sp-postion {
    z-index: 8;
    overflow-y: scroll;
    top: 30px;
  }
}

.member-reserve__date {
  margin-top: 20px;
  margin-top: 1.25rem;
  margin-bottom: 20px;
  margin-bottom: 1.25rem;
  padding-right: 10px;
  padding-right: 0.625rem;
  padding-left: 10px;
  padding-left: 0.625rem;
}

.m-date .m-section-title {
  text-align: center;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
}

.m-date .calender {
  -webkit-box-shadow: none;
  box-shadow: none;
  padding-right: 0;
  padding-left: 0;
  width: 335px;
  width: 20.9375rem;
}

.m-date .calender__day {
  width: 63px;
  width: 3.9375rem;
}

.m-date .calender__item {
  width: 335px;
  width: 20.9375rem;
}

.m-date .calender__body {
  margin-right: auto;
  margin-left: auto;
  margin-top: 12px;
  margin-top: 0.75rem;
}

.m-date .calender__day button {
  padding: 4px 2px;
  padding: 0.25rem 0.125rem;
  line-height: 1.9;
}

.m-date .calender__price {
  font-weight: 400;
  text-align: center;
}

.m-date .calender__price.vacant {
  font-size: 16px !important;
  font-size: 1rem !important;
  font-weight: 700;
}

.m-date .finder__block {
  margin-top: 10px;
  margin-top: 0.625rem;
  padding-top: 7.5px;
  padding-top: 0;
  padding-bottom: 6.5px;
  padding-bottom: 0;
  text-align: left;
}

.m-date .finder__container.check:first-child {
  padding: 7px 0 7px 35.5px;
  border: #fff 2px solid;
  border-radius: 5px;
}

.m-date .finder__container.check:nth-child(2) {
  padding: 7px 0 7px 35.5px;
  border: #fff 2px solid;
  border-radius: 5px;
}

.m-date .finder__block .checkin {
  border-color: #336cc4 !important;
  background-color: rgb(203 242 255 / 50%);
}

.m-date .finder__block .checkout {
  border-color: #336cc4 !important;
  background-color: rgb(203 242 255 / 50%);
}

.m-date .finder__container.check:nth-child(2)::before {
  content: "";
  display: inline-block;
  width: 14px;
  width: 0.875rem;
  height: 14px;
  height: 0.875rem;
  background-image: url(../images/calender.png);
  background-size: contain;
  vertical-align: middle;
  position: absolute;
  top: 50%;
  left: 9px;
  left: 0.5625rem;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

@media screen and (min-width: 768px) {
  .m-date .calender {
    width: 57.25rem;
    margin-right: 2.5rem;
    margin-left: 2.1875rem;
  }

  .m-date .calender__item {
    width: auto;
  }

  .m-date .calender__day button {
    padding: 0.25rem 0.28125rem;
  }

  .m-date .finder__block {
    max-width: 42.5rem;
    width: 100%;
    margin-right: auto;
    margin-left: auto;
  }
}

.m-date__submit {
  padding: 20px 10px;
  padding: 1.25rem 0.625rem;
  border-top: 1px solid #ccc;
}

.m-date__submit button {
  display: block;
  width: 100%;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5;
  background-color: #cc0000;
  color: #fff;
  padding-top: 13px;
  padding-top: 0.8125rem;
  padding-bottom: 13px;
  padding-bottom: 0.8125rem;
  border-radius: 5px;
  border: none;
}

@media screen and (min-width: 768px) {
  .m-date__submit button {
    max-width: 31.25rem;
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    padding: 0.8125rem 0 1.25rem;
  }
}

.faq {
  padding: 40px 10px 215px;
  padding: 2.5rem 0.625rem 13.4375rem;
}

@media screen and (min-width: 768px) {
  .faq {
    padding: 2.5rem 0.625rem 6.25rem;
  }
}

.faq__inner {
  padding: 40px 10px 100px;
  padding: 2.5rem 0.625rem 6.25rem;
}

@media screen and (min-width: 768px) {
  .faq__inner {
    padding: 2.5rem 0.625rem 6.25rem;
  }
}

.faq__title {
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
}

.faq__title > span {
  font-size: 14px;
  font-size: 0.875rem;
}

.faq__list {
  width: 100%;
  margin: 0 auto;
  font-size: 14px;
  font-size: 0.875rem;
}

.faq__parent {
  border: 1px solid #999;
  border-radius: 5px;
  cursor: pointer;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  padding-top: 10px;
  padding-top: 0.625rem;
  padding-bottom: 10px;
  padding-bottom: 0.625rem;
  padding-right: 20px;
  padding-right: 1.25rem;
  font-weight: 700;
  line-height: 1.6;
  position: relative;
  margin-top: 14px;
  margin-top: 0.875rem;
  padding-left: calc(2.5em + 12px);
  text-indent: calc(-2.5em - 2px);
}

.faq__parent:first-child {
  margin-top: 20px;
  margin-top: 1.25rem;
}

.faq__parent span {
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5;
  background-color: #222;
  color: #fff;
  padding: 0 8px 2px 6px;
  padding: 0 0.5rem 0.125rem 0.375rem;
  margin-right: 10px;
  margin-right: 0.625rem;
}

.faq__parent::after {
  content: "\f078";
  font-weight: 700;
  font-family: "Font Awesome 5 Free";
  height: 28px;
  height: 1.75rem;
  position: absolute;
  top: 30%;
  right: -16px;
  right: -1rem;
  -webkit-transition: all 0.3s 0s ease;
  transition: all 0.3s 0s ease;
}

.faq__parent.open::after {
  content: "\f077";
  font-weight: 700;
  font-family: "Font Awesome 5 Free";
  height: 28px;
  height: 1.75rem;
  position: absolute;
  top: 30%;
  right: -16px;
  right: -1rem;
  -webkit-transition: all 0.3s 0s ease;
  transition: all 0.3s 0s ease;
}

.faq__child {
  padding: 10px 0 16px 10px;
  padding: 0.625rem 0 1rem 0.625rem;
  line-height: 1.625;
  letter-spacing: 0.03em;
  font-weight: 400;
  padding-left: 2.5em;
  text-indent: -2.5em;
}

.faq__child span {
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5;
  color: #cc0000;
  background-color: #fff;
  padding: 0 8px 2px;
  padding: 0 0.5rem 0.125rem;
  margin-right: 10px;
  margin-right: 0.625rem;
}

@media screen and (min-width: 768px) {
  .faq__list {
    max-width: 62.5rem;
    width: 100%;
  }

  .faq__parent {
    border: 1px solid #999;
    border-radius: 5px;
    cursor: pointer;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    padding: 0.625rem 0 0.625rem 0.625rem;
    font-weight: 700;
    line-height: 1.6;
    position: relative;
    margin-top: 0.875rem;
    text-indent: 0px;
  }

  .faq__parent::after {
    content: "\f078";
    font-weight: 700;
    font-family: "Font Awesome 5 Free";
    padding-right: 10px;
    width: 1.75rem;
    height: 1.75rem;
    position: absolute;
    right: 0;
    -webkit-transition: all 0.3s 0s ease;
    transition: all 0.3s 0s ease;
  }

  .faq__parent.open::after {
    content: "\f077";
    font-weight: 700;
    font-family: "Font Awesome 5 Free";
    padding-right: 10px;
    width: 1.75rem;
    height: 1.75rem;
    position: absolute;
    right: 0;
    -webkit-transition: all 0.3s 0s ease;
    transition: all 0.3s 0s ease;
  }

  .faq__child {
    font-size: 1rem;
    letter-spacing: 0.025em;
    line-height: 2;
  }
}

.faq-kome {
  text-indent: 0rem;
}

.faq__child {
  font-size: 0.85rem;
}

.faq__parent {
  background-color: #fff;
}

.faq-kome li {
  margin-left: 1rem;
  text-indent: -1rem;
}

.faq-kome li::before {
  content: "※";
}

.faq-table {
  background-color: #fff;
  border-collapse: collapse;
  line-height: 1.1;
  margin: 10px 0;
}

.faq-table th,
.faq-table td {
  border: #ccc 1px solid;
  padding: 5px;
}

.faq-table th {
  background-color: #f5f5f7;
  color: #6c6c6c;
}

/* 231115追加 */
li.error-txt {
  color: #ff0000;
}
li.parsley-required {
  color: #ff0000;
}
li.parsley-remote,
li.parsley-type {
  color: #ff0000;
}

a .adult_label1,
a .adult_label2 {
  display: block;
  transform: translate(0px, 5px);
}

a #child_label1,
a #child_label2 {
  display: block;
  transform: translate(-20px, 5px);
}

@media screen and (min-width: 768px) {
  a .adult_label1,
  a .adult_label2 {
    transform: translate(-40px, 5px);
  }

  a #child_label1,
  a #child_label2 {
    transform: translate(-65px, 5px);
  }
}

@media screen and (max-width: 768px) {
  .sp-postion {
    position: fixed;
    top: 50px;
    height: calc(100% - 70px);
    width: 95%;
  }

  .top .finder.sp-postion .form-all {
    margin-top: 0;
  }

  .top .finder.sp-postion .form-all {
    height: 100%;
  }

  .top .finder.sp-postion .form-all .reserve-detail--pc {
    height: calc(100% - 240px);
    max-width: inherit;
    padding-bottom: 5px;
  }

  .top .finder.sp-postion .form-all .reserve-detail__screen {
    height: 100%;
  }

  .finder.sp-postion .form-all {
    max-width: inherit;
  }

  .finder.sp-postion .form-all .reserve-detail__submit {
    justify-content: center;
    padding: 5px;
    border-radius: 5px;
  }

  .reserve-detail__item.detail-item:first-child {
    margin-top: 0;
    padding-top: 0;
  }
}

.member-reserve__inner .reserve-detail__item.detail-item::after,
.l-inner .reserve-detail__item.detail-item::after {
  display: block;
  font-size: 13px;
  /* content: "※ お子様はベットのみ利用の場合は税込3,300円が発生いたします。精算は現地にてお願いいたします。"; */
  text-align: left !important;
}

/* yazaki日付選択調整 */
.js-child1.adlut_label1 {
  position: absolute;
  left: 0px;
  padding: 0.35rem 0 0.35rem 13%;
}

.js-child2.adlut_label2 {
  position: absolute;
  left: 0px;
  padding: 0.35rem 0 0.35rem 13%;
}

.js-child1 #child_label1 {
  position: absolute;
  left: 0px;
  padding: 0.35rem 0 0.35rem 13%;
}

.js-child2 #child_label2 {
  position: absolute;
  left: 0px;
  padding: 0.35rem 0 0.35rem 13%;
}

@media screen and (max-width: 768px) {
  .js-child1.adlut_label1 {
    padding-left: 27px;
  }

  .js-child2.adlut_label2 {
    padding-left: 27px;
  }
}

/* 追加 */
.pdf_link {
  display: flex;
  margin: auto;
  justify-content: center;
  align-items: center;
  font-size: 14px;
  gap: 10px;
  padding: 10px;
  max-width: 500px;
  border: #999 1px solid;
  border-radius: 5px;
  margin-bottom: 20px;
  -webkit-box-shadow: 0px -3px 6px rgba(0, 0, 0, 0.16) inset;
  box-shadow: 0px -3px 6px rgba(0, 0, 0, 0.16) inset;
}
.pdf_link img {
  width: 12px;
}

.sel-cal {
  display: flex;
  margin: auto;
  justify-content: center;
  align-items: center;
  max-width: 230px;
  gap: 10px;
  margin-top: 20px;
  margin-bottom: 20px;
}
.sel-cal select {
  border: #999 1px solid;
  border-radius: 5px;
  padding: 10px;
  padding-right: 0;
  background: url(../images/pdwn.svg) no-repeat right 10px center !important;
}

.confirm a.before_pg {
  display: inline-block;
  margin: auto;
  /* margin-top: -10px; */
  color: #065fd4;
  text-align: center;
  text-decoration: underline;
  background: none;
  border: none;
  width: auto;
  font-size: 14px;
  font-weight: normal;
}
.before_pg:hover {
  text-decoration: none;
  opacity: 1;
}

/* 調整 */
.yazaki-form03 .yazaki-form__lv2-items .yazaki-form__lv2-item {
  display: flex;
  flex-direction: column;
  margin-top: -1px;
}
.yazaki-form03 .yazaki-form__lv2-items .yazaki-form__lv2-item:first-child {
  margin-top: 20px;
}
.yazaki-form03
  .yazaki-form__lv2-items
  .yazaki-form__lv2-item
  .yazaki-form__title {
  margin-top: 0 !important;
  border: #ccc 1px solid;
  background-color: #f5f5f7;
  padding: 10px;
  color: #222;
  box-sizing: border-box;
}

.yazaki-form03 .yazaki-form__lv2-items .yazaki-form__lv2-item .yazaki-form__dl {
  border: #ccc 1px solid;
  padding: 10px;
  flex: auto;
  margin-top: -1px;
}

.yazaki-form03
  .yazaki-form__lv2-items
  .yazaki-form__lv2-item
  .yazaki-form__dl
  .yazaki-form__content {
  padding: 0;
  margin: 0;
  flex-direction: row;
}
.yazaki-form03
  .yazaki-form__lv2-items
  .yazaki-form__lv2-item
  .yazaki-form__dl
  .yazaki-form__content
  .yazaki-form__dt,
.yazaki-form03
  .yazaki-form__lv2-items
  .yazaki-form__lv2-item
  .yazaki-form__dl
  .yazaki-form__content
  .yazaki-form__dd {
  background-color: #fff;
  width: inherit;
  margin: 0;
  border: none;
  flex: none;
  padding: 2px 0px;
}

@media screen and (min-width: 768px) {
  .yazaki-form03
    .yazaki-form__lv2-items
    .yazaki-form__lv2-item
    .yazaki-form__dl {
    margin-top: 0;
  }
  .yazaki-form03
    .yazaki-form__lv2-items
    .yazaki-form__lv2-item
    .yazaki-form__title {
    width: 190px;
  }
  .yazaki-form03 .yazaki-form__lv2-items .yazaki-form__lv2-item {
    flex-direction: row;
  }
}

.yazaki-rewrap {
  display: flex;
  flex-direction: column;
}

.yazaki-rewrap .question.name {
  width: 100%;
  border: #ccc 1px solid;
  background-color: #f5f5f7;
  padding: 10px;
  margin-top: 0;
}
.yazaki-rewrap .yazaki-form03__dl {
}
.yazaki-rewrap .yazaki-form03__content-item {
  padding-top: 5px;
}
.yazaki-rewrap .yazaki-form03__dt,
.yazaki-rewrap .yazaki-form03__dd {
  border: none;
  margin: 0;
  width: inherit;
  flex: none;
  padding: 0;
}
.yazaki-rewrap .yazaki-form03__dt {
  background-color: #fff;
  width: 80px;
}

.yazaki-rewrap .yazaki-form03__dd {
}
.yazaki-rewrap .yazaki-form03__content {
  padding: 0 10px;
  padding-bottom: 10px;
  border: 1px solid #ccc;
  flex: auto;
  width: 100%;
  align-self: stretch;
}

@media screen and (min-width: 768px) {
  .yazaki-rewrap {
    flex-direction: row;
    margin-top: -1px;
  }

  .yazaki-rewrap .question.name {
    width: 200px;
  }
  .yazaki-rewrap .question.name,
  .yazaki-rewrap .yazaki-form03__content {
    margin-left: -1px;
  }
}

@media screen and (max-width: 768px) {
  .yazaki-rewrap .question.name,
  .yazaki-rewrap .yazaki-form03__content {
    margin-top: -1px;
  }
}

/* 一般修正 */
.form02 .form__section.reserver {
  display: flex;
  flex-wrap: wrap;
}

.form02 .form__section.reserver .reserver__title.section-title {
  width: 100%;
  margin-bottom: 20px;
}

.form02 .form__section.reserver .question,
.form02 .form__section.reserver .answer {
  width: 100%;
  padding: 10px;
  margin: 0;
  box-sizing: border-box;
  border: 1px solid #ccc;
  margin-top: -1px;
  align-self: stretch;
}

.form02 .form__section.reserver .question {
  background-color: #f5f5f7;
}

.form02 .form__section.reserver .answer.harf01,
.form02 .form__section.reserver .answer.harf02 {
  /* width: 50%; */
  flex: auto;
}
.form02 .form__section.reserver .answer.harf01 {
  padding-right: 0;
  border-right: none;
  width: inherit;
}
.form02 .form__section.reserver .answer.harf02 {
  width: 75%;
  padding-left: 0;
  border-left: none;
  flex: auto;
}

@media screen and (min-width: 768px) {
  .form02 .form__section.reserver {
    flex-direction: row;
  }
  .form02 .form__section.reserver .question {
    width: 25%;
  }
  .form02 .form__section.reserver .answer {
    width: 75%;
    flex: auto;
    margin-left: -1px;
  }
  .form02 .form__section.reserver .answer.harf01 {
    width: inherit;
    border-right: none;
  }
  .form02 .form__section.reserver .answer.harf02 {
    width: 65%;
    border-left: none;
    padding-left: 0;
  }
}

/* 区切り */

.form02 .form__section.information {
  display: flex;
  flex-wrap: wrap;
}

.form02 .form__section.information .information__title.section-title {
  width: 100%;
  margin-bottom: 20px;
}

.form02 .form__section.information .question,
.form02 .form__section.information .answer {
  width: 100%;
  padding: 10px;
  margin: 0;
  box-sizing: border-box;
  border: 1px solid #ccc;
  margin-top: -1px;
  align-self: stretch;
}

.form02 .form__section.information .question {
  background-color: #f5f5f7;
}

@media screen and (min-width: 768px) {
  .form02 .form__section.information {
    flex-direction: row;
  }

  .form02 .form__section.information .question {
    width: 50%;
  }

  .form02 .form__section.information .answer {
    width: 50%;
    flex: auto;
    margin-left: -1px;
  }
}

/* 区切り */

.form02 .form__section.dinner,
.form02 .form__section.inquiries {
  display: flex;
  flex-wrap: wrap;
}

.form02 .form__section.dinner .dinner__title.section-title,
.form02 .form__section.inquiries .inquiries__title.section-title {
  width: 100%;
  margin-bottom: 20px;
}

.form02 .form__section.dinner .question,
.form02 .form__section.dinner .answer,
.form02 .form__section.inquiries .question,
.form02 .form__section.inquiries .answer {
  width: 100%;
  padding: 10px;
  margin: 0;
  box-sizing: border-box;
  border: 1px solid #ccc;
  margin-top: -1px;
  align-self: stretch;
}

.form02 .form__section.dinner .question,
.form02 .form__section.inquiries .question {
  background-color: #f5f5f7;
}

@media screen and (min-width: 768px) {
  .form02 .form__section.dinner,
  .form02 .form__section.inquiries {
    flex-direction: row;
  }

  .form02 .form__section.dinner .question,
  .form02 .form__section.inquiries .question {
    width: 50%;
  }

  .form02 .form__section.dinner .answer,
  .form02 .form__section.inquiries .answer {
    width: 50%;
    flex: auto;
    margin-left: -1px;
  }
}

/* 一般修正 確認 */
.confirm-page .form__section.reserver {
  display: flex;
  flex-wrap: wrap;
}

.confirm-page .form__section.reserver .reserver__title.section-title {
  width: 100%;
  margin-bottom: 20px;
}

.confirm-page .form__section.reserver .question,
.confirm-page .form__section.reserver .answer {
  width: 100%;
  padding: 10px;
  margin: 0;
  box-sizing: border-box;
  border: 1px solid #ccc;
  margin-top: -1px;
  align-self: stretch;
}

.confirm-page .form__section.reserver .question {
  background-color: #f5f5f7;
}

.confirm-page .form__section.reserver .answer.harf01,
.confirm-page .form__section.reserver .answer.harf02 {
  /* width: 50%; */
  flex: auto;
}

.confirm-page .form__section.reserver .answer.harf01 {
  padding-right: 0;
  border-right: none;
  width: inherit;
}

.confirm-page .form__section.reserver .answer.harf02 {
  width: 75%;
  padding-left: 0;
  border-left: none;
  flex: auto;
}

@media screen and (min-width: 768px) {
  .confirm-page .form__section.reserver {
    flex-direction: row;
  }

  .confirm-page .form__section.reserver .question {
    width: 25%;
  }

  .confirm-page .form__section.reserver .answer {
    width: 75%;
    flex: auto;
    margin-left: -1px;
  }

  .confirm-page .form__section.reserver .answer.harf01 {
    width: inherit;
    border-right: none;
  }

  .confirm-page .form__section.reserver .answer.harf02 {
    width: 65%;
    border-left: none;
    padding-left: 0;
  }
}

/* 区切り */

.confirm-page .form__section.information {
  display: flex;
  flex-wrap: wrap;
}

.confirm-page .form__section.information .information__title.section-title {
  width: 100%;
  margin-bottom: 20px;
}

.confirm-page .form__section.information .question,
.confirm-page .form__section.information .answer {
  width: 100%;
  padding: 10px;
  margin: 0;
  box-sizing: border-box;
  border: 1px solid #ccc;
  margin-top: -1px;
  align-self: stretch;
}

.confirm-page .form__section.information .question {
  background-color: #f5f5f7;
}

@media screen and (min-width: 768px) {
  .confirm-page .form__section.information {
    flex-direction: row;
  }

  .confirm-page .form__section.information .question {
    width: 50%;
  }

  .confirm-page .form__section.information .answer {
    width: 50%;
    flex: auto;
    margin-left: -1px;
  }
}

/* 区切り */

.confirm-page .form__section.dinner,
.confirm-page .form__section.inquiries {
  display: flex;
  flex-wrap: wrap;
}

.confirm-page .form__section.dinner .dinner__title.section-title,
.confirm-page .form__section.inquiries .inquiries__title.section-title {
  width: 100%;
  margin-bottom: 20px;
}

.confirm-page .form__section.dinner .question,
.confirm-page .form__section.dinner .answer,
.confirm-page .form__section.inquiries .question,
.confirm-page .form__section.inquiries .answer {
  width: 100%;
  padding: 10px;
  margin: 0;
  box-sizing: border-box;
  border: 1px solid #ccc;
  margin-top: -1px;
  align-self: stretch;
}

.confirm-page .form__section.dinner .question,
.confirm-page .form__section.inquiries .question {
  background-color: #f5f5f7;
}

@media screen and (min-width: 768px) {
  .confirm-page .form__section.dinner,
  .confirm-page .form__section.inquiries {
    flex-direction: row;
  }

  .confirm-page .form__section.dinner .question,
  .confirm-page .form__section.inquiries .question {
    width: 50%;
  }

  .confirm-page .form__section.dinner .answer,
  .confirm-page .form__section.inquiries .answer {
    width: 50%;
    flex: auto;
    margin-left: -1px;
  }
}

/* 新規追加 */
.form__section.subject {
  border-bottom: none;
  padding-inline: 1.25rem;
  padding-bottom: 26px;
  padding-top: 20px;
}
.subject_inner {
  margin-top: 20px;
  padding: 10px;
  padding-inline: 15px;
  padding-bottom: 20px;
  border: #ccc 1px solid;
}
.form__section.subject .payment__flex {
  justify-content: flex-start;
  margin-top: 0;
  align-items: baseline;
}
.form__section.subject .payment__flex .payment__price-left {
  margin-top: 0;
  margin-right: 10px;
}
.form__section.subject .payment__description {
  text-align: left;
  margin-top: 0;
}
.black_obi_ttl {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.4285714286;
  padding-left: 6px;
  padding-left: 0.375rem;
  background-color: #000;
  padding-block: 7px;
  padding-block: 0.4375rem;
  color: #fff;
  margin-top: 15px;
}
.menu_name {
  padding-top: 10px;
  font-size: 0.85rem;
  border-top: #ccc 1px solid;
}
.menu_list {
  font-size: 0.7rem;
  color: #888888;
  padding-bottom: 10px;
  margin-top: 5px;
}

.finder__container.check.checkin_div.js-sel-in {
  border: 2px solid #fff;
  border-radius: 5px;
}
.finder__container.check.checkin_div.js-sel-in.checkin {
  border-color: #336cc4;
  background-color: rgb(203 242 255 / 50%);
}
.finder__container.check.js-sel-out {
  border: 2px solid #fff;
  border-radius: 5px;
}
.finder__container.check.js-sel-out.checkout {
  border-color: #336cc4;
  background-color: rgb(203 242 255 / 50%);
}

/* 20240219追加 */
@media screen and (min-width: 768px) and (max-width: 864px) {
  .footer {
    bottom: auto;
  }

  body.employee__page.edited .footer {
    bottom: 0;
  }
}

.confirm a.prev-link {
  background: none;
  display: inline-block;
  width: auto;
  color: #336cc4;
  text-decoration: underline;
}

.login__message {
  margin-top: 10px;
}

.login__message p {
  color: red;
}

.y-login-page ul + .login__icon {
  top: 27%;
}

@media screen and (min-width: 768px) {
  .select2-container--default .select2-results > .select2-results__options {
    font-size: 14px;
  }
}

@media screen and (max-width: 767px) {
  .select2-hidden-accessible {
    width: 210px !important;
  }
}

.employee__page.edit .edit-container__inner.l-inner {
  padding-bottom: 100px;
}

@media screen and (min-width: 768px) {
  .employee__page.edit
    .yazaki-application__contents
    .yazaki-application__item-selects {
    flex-grow: 1;
  }
}
/* -------------0314------------------------- */
.cancel-policy {
  padding-top: 90px;
  padding-bottom: 165px;
}
.cancel-policy .l-inner h2 {
  font-size: 22px;
  text-align: center;
}
.cancel-policy .l-inner > div {
  background: #ffffff;
  padding: 20px 20px 30px 20px;
  margin-top: 40px;
}
.cancel-policy .l-inner > div .text-box {
  border-bottom: solid 1px #cccccc;
  margin-top: 20px;
}
.cancel-policy .l-inner > div .text-box p {
  margin-bottom: 20px;
  font-size: 14px;
  display: flex;
}
.cancel-policy .l-inner > div table {
  border-collapse: collapse;
  margin-top: 20px;
  width: 450px;
  font-size: 14px;
}
.cancel-policy .l-inner > div table th {
  background: #f5f5f7;
  font-weight: 400;
}
.cancel-policy .l-inner > div table th,
td {
  padding: 0 5px;
  height: 50px;
}
.cancel-policy .l-inner > div table td {
  width: 50px;
  text-align: center;
}
.cancel-policy .l-inner > div table tr:nth-of-type(2) th:nth-of-type(2) {
  width: 155px;
}
.cancel-policy .l-inner > div table tr:nth-of-type(2) th:nth-of-type(1) {
  width: 50px;
}
.cancel-policy .l-inner > div .cancel-policy-table {
  overflow-x: auto;
  padding-bottom: 10px;
}

.cancel-policy .l-inner > div .cancel-policy-table::-webkit-scrollbar {
  height: 24px;
  width: 25px;
}
.cancel-policy .l-inner > div .cancel-policy-table::-webkit-scrollbar-thumb {
  background-color: #999999;
  border: 4px solid transparent;
  background-clip: padding-box;
}
.cancel-policy .l-inner > div .cancel-policy-table::-webkit-scrollbar-track {
  background-color: #f5f5f7;
  margin-top: 2px;
  margin-bottom: 2px;
}
.cancel-policy .l-inner .bread {
  display: flex;
  margin-top: 60px;
  gap: 20px;
  padding: 0 20px;
}
.cancel-policy .l-inner .bread li {
  position: relative;
  font-size: 12px;
}
.cancel-policy .l-inner .bread li::after {
  content: ">";
  display: block;
  position: absolute;
  top: 0;
  right: -15px;
}
.cancel-policy .l-inner .bread li:last-of-type::after {
  content: none;
}
@media screen and (max-width: 768px) {
  .cancel-policy {
    padding-top: 90px;
    padding-bottom: 220px;
  }
}
.cancel-policy.y-cancel-policy .section-title {
  border-left: #cc0000 4px solid;
}
@media screen and (min-width: 768px) {
  #calender_inner .calender__decided {
    transform: translateX(175%);
  }
}
@media screen and (max-width: 768px) {
  #calender_inner .calender__decided {
    display: block;
  }
  #calender_inner .calender__close {
    right: 38%;
  }
}
/* -------------ここまで---------------------- */
/* -------------0621---------------------------- */
.cancel-btn {
  margin-top: 10px;
  display: inline-block;
  width: fit-content;
  margin-left: auto;
  font-size: 12px;
  color: #065fd4;
}
.cancel-btn:hover {
  text-decoration: underline;
}
.cancel-btn.y-cancel-btn {
  margin-bottom: 30px;
}
.reservation-price__contents .top_btn {
  color: #336cc4;
  border: none;
  background: transparent;
  text-align: center;
  width: fit-content;
  margin: auto;
  font-size: 14px;
  padding-bottom: 0;
}
.reservation-price__contents .top_btn:hover {
  text-decoration: underline;
}
/* -------------0621ここまで---------------------- */

/* -------------0710ここまで---------------------- */
.m-number__title {
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
}
/* -------------0710ここまで---------------------- */
/* -------------0717---------------------- */
.reserve-detail__item {
  margin-bottom: 20px;
}
.reserve-detail__item:last-of-type {
  margin-bottom: 0px;
}
/* .right-block .reservation-finder .reserve-detail__item {
  margin-bottom: 20px;
}
.right-block .reservation-finder .reserve-detail__item:last-of-type {
  margin-bottom: 0px;
} */
.reserve-detail__item .child-bed {
  font-size: 14px;
  text-align: left;
  margin-top: 4px;
}
/* -------------0717---------------------- */
