@charset "UTF-8";
:root {
  --gray: #f7f7f7;
  --gray_border: #a4a4a4;
  --deep_gray: #666;
  --light_blue: #dff2fc;
  --red: #f00;
  --light_red: #fce5d8;
  --deep_red: #7e2c2c;
  --link: #0089bf; }

html {
  height: 100%; }

body {
  height: 100%; }

.page-applycancelcomplete .wrapper,
.page-alert .wrapper {
  display: flex;
  height: 100%;
  flex-direction: column;
  justify-content: space-between; }

/* ヘッダー */
#header {
  border: none;
  background: var(--gray); }

.pane-header > .container {
  height: 70px; }

.block-header-logo {
  width: max-content; }

/* パンくず */
.block-topic-path {
  display: none; }

/* エラー */
.alert {
  margin-top: 50px;
  padding: 20px;
  padding-left: 100px;
  color: var(--red);
  line-height: 1.8;
  border: 1px solid var(--red);
  background: url(/shop/reserve/img/icon/icon_alert.png) no-repeat 50px 50% var(--light_red);
  background-size: 21px; }
  @media only screen and (max-width: 750px) {
    .alert {
      padding-left: 40px;
      background-position: 10px 50%; } }

/* ボタン */
.action .btn {
  margin-top: 20px; }

.action-buttons {
  margin-top: 60px; }

.action {
  display: flex;
  flex-direction: column;
  align-items: center; }
  .action .block-inquiry--customer-back,
  .action .btn-default {
    max-width: 400px;
    padding: 22px;
    color: var(--deep_red);
    font-size: 18px;
    font-weight: bold;
    border-radius: 99999px;
    border: 2px solid var(--deep_red);
    background: #fff;
    transition: 0.2s; }
  .action .btn-default.block-apply--forward,
  .action .block-inquiry-completed--back-to-home,
  .action .block-purchase-history-detail--cancel,
  .action .block-withdrawal--forward,
  .action .block-order-cancellation-completed--back-to-mypage,
  .action .btn-primary {
    max-width: 400px;
    padding: 22px;
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    border-radius: 99999px;
    border: 2px solid var(--deep_red) !important;
    background: var(--deep_red) !important;
    transition: 0.2s; }

/* フッター */
.pane-footer {
  padding-block: 30px;
  background: var(--gray); }

footer .block-footer--inner {
  display: flex;
  width: 100%;
  max-width: 1380px;
  margin-inline: auto;
  padding-inline: 20px;
  gap: 20px;
  align-items: center;
  justify-content: space-between; }
  footer .block-footer--inner .block-footernav {
    margin: 0;
    padding: 0; }
  footer .block-footer--inner .block-copyright {
    display: flex;
    gap: 20px;
    align-items: flex-end;
    transform: translateY(-0.8em);
    flex-shrink: 0; }
    @media only screen and (max-width: 750px) {
      footer .block-footer--inner .block-copyright {
        flex-direction: column;
        align-items: center; } }
  footer .block-footer--inner .block-logos {
    display: flex;
    gap: 20px;
    align-items: flex-end; }
  @media only screen and (max-width: 750px) {
    footer .block-footer--inner {
      flex-direction: column;
      align-items: center;
      gap: 40px; }
      footer .block-footer--inner .block-footernav {
        margin: 0;
        padding: 0; }
      footer .block-footer--inner .block-logos .company {
        width: 183px; }
      footer .block-footer--inner .block-logos .bcorp {
        width: 29px; } }

footer .block-footernav--item-list {
  display: flex;
  font-size: 12px;
  gap: 5px 15px;
  flex-wrap: wrap; }
  @media only screen and (max-width: 750px) {
    footer .block-footernav--item-list {
      justify-content: center; } }
  footer .block-footernav--item-list li {
    padding: 0;
    border: none; }
    footer .block-footernav--item-list li:nth-of-type(n+2) {
      position: relative;
      padding-left: 15px; }
      footer .block-footernav--item-list li:nth-of-type(n+2):before {
        content: "/";
        position: absolute;
        top: 0;
        left: 0; }

footer .block-copyright {
  margin: 0; }

/* 予約入力 */
#app {
  padding-bottom: 230px;
  max-width: 1040px;
  padding-inline: 20px; }
  @media only screen and (max-width: 750px) {
    #app {
      padding-bottom: 140px; } }
  #app > #app {
    padding-bottom: 0; }
  #app .block-apply--header {
    margin-block: 80px 60px;
    padding: 0;
    font-size: 34px; }
    @media only screen and (max-width: 750px) {
      #app .block-apply--header {
        font-size: 24px;
        margin-block: 40px; } }
  #app .block-apply--store {
    margin: 0;
    margin-bottom: 80px;
    padding: 15px 20px;
    font-size: 20px;
    font-weight: bold;
    line-height: 1.5;
    background: var(--gray); }
    @media only screen and (max-width: 750px) {
      #app .block-apply--store {
        margin-bottom: 40px;
        font-size: 14px; } }
  #app .fieldset .form-label {
    margin-bottom: 40px;
    padding: 0;
    padding-bottom: 18px;
    font-size: 18px;
    border-bottom: 1px solid var(--gray_border);
    background: none; }
  #app .fieldset .form-label .is-required,
  #app .fieldset .form-control .is-required {
    padding: 1px 6px 2px;
    margin-left: 10px;
    color: #fff !important;
    border-radius: 3px;
    background: var(--red); }
  #app .fieldset .form-control .form-radio-wrap input[type="radio"] {
    width: 6%;
    margin-right: 0; }
  #app .fieldset .form-control .form-select-wrap {
    font-size: 18px; }
  #app .form-label-content {
    gap: 25px; }
  #app .block-apply--total_qty .form-control {
    max-width: 430px; }

#app .fieldset .form-group:nth-of-type(n+2) {
  margin-top: 100px; }

#app .fieldset .form-control .form-radio-wrap {
  width: 100%;
  padding: 0;
  border: none; }
  @media only screen and (max-width: 750px) {
    #app .fieldset .form-control .form-radio-wrap:nth-of-type(n+2) {
      margin-top: 30px; } }

#app .fieldset .form-control .form-radio-wrap .form-label-wrap-text {
  width: auto;
  padding-left: 0;
  flex: 1; }

#app .fieldset .form-control .form-radio-wrap .form-label-wrap-text .form-label-name {
  margin-bottom: 10px;
  font-size: 18px;
  line-height: 1.5; }

#app .fieldset .form-control .form-radio-wrap .form-label-wrap-text .form-label-desc {
  margin-bottom: 8px;
  font-size: 14px; }

#app .fieldset .form-control .form-radio-wrap .form-label-wrap-text .form-label-price {
  font-size: 16px; }

#app .block-apply--option .form-control {
  margin-top: 40px;
  width: 100%;
  padding-inline: 20px; }
  @media only screen and (max-width: 750px) {
    #app .block-apply--option .form-control {
      padding-inline: 0; } }

.form-control-option-name {
  font-size: 18px;
  font-weight: bold; }

#app .block-apply--option .form-control .form-control-option .form-control-option--items > div:nth-child(1) {
  margin-bottom: 10px; }

#app .block-apply--option .form-control .form-control-option .form-control-option--minutes {
  font-weight: bold; }

#app .form-control-option--input-component select,
#app .form-control-option--param-select select {
  width: 430px; }

#app .form-control-option--input-component .radio-item:nth-of-type(n+2),
#app .form-control-option--input-component .checkbox-item:nth-of-type(n+2) {
  margin-top: 8px; }

#app .block-apply--option .form-control .form-control-option .form-control-option--param {
  margin-top: 10px; }

#app .block-apply--option .form-control .form-control-option .form-control-option--param-qty {
  font-weight: bold; }

#app .form-control-option--input-component > textarea {
  width: 100%; }

/* カレンダー */
#app .calendar-header-frame {
  justify-content: center; }

#app .calendar-header-frame h2 {
  flex: initial;
  min-width: 200px; }

#app .calendar-header-frame #prev,
#app .calendar-header-frame #next {
  width: 30px; }
  #app .calendar-header-frame #prev .arrow,
  #app .calendar-header-frame #next .arrow {
    padding-block: 10px;
    border-color: var(--gray_border); }
    #app .calendar-header-frame #prev .arrow:before,
    #app .calendar-header-frame #next .arrow:before {
      width: 6px;
      height: 6px;
      border-color: var(--gray_border); }

#app table.calendar tr.week td {
  font-size: 18px; }

#app table.calendar tr td {
  font-size: 18px; }

#app table.calendar tr td.select {
  background: var(--light_blue); }

#app table.calendar tr td .day {
  font-weight: bold; }

#app #daily-calendar-button #daily-prev,
#app #daily-calendar-button #daily-next {
  width: 10%;
  min-width: 90px;
  padding-block: 10px;
  font-size: 16px;
  border-color: var(--gray_border); }
  #app #daily-calendar-button #daily-prev:before,
  #app #daily-calendar-button #daily-next:before {
    width: 6px;
    height: 6px;
    top: calc(50% - 2px);
    border-color: var(--gray_border); }

#app .daily-calendar .time-list .time.active {
  background: var(--light_blue); }

#app .daily-calendar .time-list .time {
  min-width: 100px; }
  @media only screen and (max-width: 750px) {
    #app .daily-calendar .time-list .time {
      min-width: 80px; } }

#app .daily-calendar .time-list .time-text {
  font-size: 18px; }

#app .daily-calendar .time-list .status-text {
  padding-block: 5px; }

/* 申込者情報の入力 */
#app .form-group.block-apply--applicant .form-label {
  margin-block: 80px 60px;
  padding: 0;
  font-size: 34px;
  text-align: center;
  border: none; }
  @media only screen and (max-width: 750px) {
    #app .form-group.block-apply--applicant .form-label {
      font-size: 24px;
      margin-block: 40px; } }
#app .form-group.block-apply--applicant .form-control {
  width: 100%; }

#app .block-apply--applicant .form-control .form-control-separate {
  border: none; }

#app .block-apply--applicant .form-control .form-control-title {
  padding: 0;
  font-size: 18px;
  border: none; }

#app .block-apply--applicant .form-control .form-control-param {
  gap: 0 30px; }

#app .block-apply--applicant .form-control .form-control-param > span.checktype_name label, #app .block-apply--applicant .form-control .form-control-param > span.checktype_kana label {
  width: max-content;
  font-weight: bold;
  text-align: left; }

#app .block-apply--applicant .form-control .form-control-param > span {
  width: 350px; }
  #app .block-apply--applicant .form-control .form-control-param > span input {
    width: 100%; }

#app .form-control-separate.block-apply--name .form-control-param > span,
#app .form-control-separate.block-apply--kname .form-control-param > span {
  width: calc(190px + 4em); }
  @media only screen and (max-width: 750px) {
    #app .form-control-separate.block-apply--name .form-control-param > span:nth-of-type(n+2),
    #app .form-control-separate.block-apply--kname .form-control-param > span:nth-of-type(n+2) {
      margin-top: 10px; } }

#app .block-apply--coupon .form-control,
#app .block-apply--method .form-control {
  width: 100%;
  margin-top: 30px;
  padding-inline: 20px; }
  @media only screen and (max-width: 750px) {
    #app .block-apply--coupon .form-control,
    #app .block-apply--method .form-control {
      padding-inline: 0; } }

/* 予約内容の確認 */
#app .eat_reservation_title {
  margin-block: 80px 60px;
  padding: 0;
  font-size: 34px;
  text-align: center;
  border: none;
  background: none; }
  @media only screen and (max-width: 750px) {
    #app .eat_reservation_title {
      font-size: 24px;
      margin-block: 40px; } }

@media only screen and (max-width: 750px) {
  .page-applyconfirm .confirmation-reservation_title h1 {
    padding-inline: 0; } }

#app.block-inquiry--confirmation-form {
  padding-inline: 0; }
#app .eat_wrapper {
  max-width: 100%;
  padding-inline: 0; }
  #app .eat_wrapper .fieldset .form-group {
    flex-direction: column; }
    #app .eat_wrapper .fieldset .form-group:nth-of-type(n+2) {
      margin-top: 30px; }
  #app .eat_wrapper .fieldset .form-label {
    color: var(--deep_gray);
    font-size: 18px;
    font-weight: bold;
    border: none; }
  #app .eat_wrapper .fieldset .form-control {
    margin-top: 0px;
    font-size: 18px;
    font-weight: bold; }

.confirmation-reservation_title h1 {
  padding-inline: 20px; }

.eat_reservation_confirm {
  width: 100%;
  padding-inline: 20px; }
  @media only screen and (max-width: 750px) {
    .eat_reservation_confirm {
      padding-inline: 0; } }

.eat_reservation_confirm_content {
  border-bottom: none; }
  .eat_reservation_confirm_content:nth-of-type(n+2) {
    margin-top: 90px; }

.eat_reservation_confirm_content_sub {
  margin-bottom: 30px;
  padding-bottom: 10px;
  font-size: 18px;
  font-weight: bold;
  border-bottom: 1px solid var(--gray_border); }

.form-group.block-inquiry--confirmation-name,
.form-group.block-inquiry--confirmation-mail,
.form-group.block-inquiry--confirmation-tel {
  padding-left: 20px; }
  @media only screen and (max-width: 750px) {
    .form-group.block-inquiry--confirmation-name,
    .form-group.block-inquiry--confirmation-mail,
    .form-group.block-inquiry--confirmation-tel {
      padding-left: 0; } }
  .form-group.block-inquiry--confirmation-name .form-label,
  .form-group.block-inquiry--confirmation-mail .form-label,
  .form-group.block-inquiry--confirmation-tel .form-label {
    color: var(--deep_gray); }

.eat_course_reservation_content {
  padding-left: 20px; }
  @media only screen and (max-width: 750px) {
    .eat_course_reservation_content {
      padding-left: 0; } }
  .eat_course_reservation_content .eat_course_select_content_img {
    width: 112px;
    flex-shrink: 0; }
  .eat_course_reservation_content .eat_course_select_content_text {
    flex: 1; }
  .eat_course_reservation_content .eat_course_select_content_text_course_name,
  .eat_course_reservation_content .eat_course_select_content_text_course_price {
    font-size: 18px;
    font-weight: bold; }
  .eat_course_reservation_content .eat-reservation-confirm-content--point {
    color: #000;
    font-size: 16px;
    font-weight: normal; }

.eat_reservation_confirm_content_option .form-group.apply-confirm-option {
  padding-left: 20px; }
  @media only screen and (max-width: 750px) {
    .eat_reservation_confirm_content_option .form-group.apply-confirm-option {
      padding-left: 0; } }
.eat_reservation_confirm_content_option .apply-confirm-option--img, .eat_reservation_confirm_content_option .apply-confirm-goods--img {
  width: 112px;
  flex-shrink: 0; }

#app .eat_reservation_confirm_content_option .form-group.apply-confirm-option {
  flex-direction: row; }
  #app .eat_reservation_confirm_content_option .form-group.apply-confirm-option .apply-confirm-option--name,
  #app .eat_reservation_confirm_content_option .form-group.apply-confirm-option .apply-confirm-option-price {
    font-size: 18px;
    font-weight: bold; }
  #app .eat_reservation_confirm_content_option .form-group.apply-confirm-option .apply-confirm-option--value {
    font-size: 14px; }

#app .apply-confirm-option, #app .apply-confirm-goods {
  border-bottom: none; }

.eat_reservation_confirm_content_option, .eat_reservation_confirm_content_goods {
  border-bottom: none; }

#app .block-inquiry--confirmation-total-price .form-label {
  color: var(--deep_gray);
  font-weight: normal !important; }
#app .block-inquiry--confirmation-total-price .form-control {
  font-size: 30px !important; }
#app .block-inquiry--confirmation-total-price + br {
  display: none; }

#app .block-inquiry--confirmation-point + br {
  display: none; }
  #app .block-inquiry--confirmation-point + br + .form-group {
    margin-top: 0 !important; }

#app .block-inquiry--confirmation-method {
  padding-left: 20px; }
  @media only screen and (max-width: 750px) {
    #app .block-inquiry--confirmation-method {
      padding-left: 0; } }

#app .apply-confirm-comment {
  margin-top: 90px; }
  #app .apply-confirm-comment textarea {
    width: calc(100% - 20px);
    margin-left: 20px; }
    @media only screen and (max-width: 750px) {
      #app .apply-confirm-comment textarea {
        width: 100%;
        margin-left: 0; } }

.legend {
  margin-top: 90px;
  padding: 5px 20px;
  border: none;
  background: var(--gray); }

.block-member-info--message-use-spoofing-protection {
  margin-top: 30px;
  padding-left: 20px;
  font-size: 18px; }
  @media only screen and (max-width: 750px) {
    .block-member-info--message-use-spoofing-protection {
      padding-left: 0; } }
  .block-member-info--message-use-spoofing-protection .block-order-estimate--order-terms-link {
    color: var(--link); }

.eat_reservation_confirm_content_point_description {
  padding-left: 20px;
  font-size: 18px;
  line-height: 1; }
  @media only screen and (max-width: 750px) {
    .eat_reservation_confirm_content_point_description {
      padding-left: 0; } }

.block-member-info--items-use-spoofing-protection {
  margin-top: 20px;
  padding-left: 20px; }
  @media only screen and (max-width: 750px) {
    .block-member-info--items-use-spoofing-protection {
      padding-left: 0; } }
  .block-member-info--items-use-spoofing-protection .form-control {
    font-weight: normal !important; }

.page-applyconfirm #app .fieldset .form-label {
  margin-bottom: 0; }
.page-applyconfirm .apply-confirm-option--content, .page-applyconfirm .apply-confirm-goods--content {
  flex: 1; }
  .page-applyconfirm .apply-confirm-option--content .apply-confirm-option-price, .page-applyconfirm .apply-confirm-goods--content .apply-confirm-option-price {
    font-size: 16px !important; }

/* 予約申し込み完了 */
.eat_wrapper {
  max-width: 1040px;
  padding-inline: 40px; }
  @media only screen and (max-width: 750px) {
    .eat_wrapper {
      padding-inline: 20px; } }

.eat_reservation_title {
  margin-block: 80px 60px;
  padding: 0;
  background: none; }
  @media only screen and (max-width: 750px) {
    .eat_reservation_title {
      margin-block: 40px; } }

.eat_reservation_title h1 {
  padding: 0;
  font-size: 34px;
  text-align: center;
  border: none; }
  @media only screen and (max-width: 750px) {
    .eat_reservation_title h1 {
      font-size: 24px; } }

.block-inquiry-completed {
  margin: 0; }

.block-inquiry-completed--customer-name {
  margin-top: 60px;
  padding: 5px 20px;
  font-size: 20px;
  font-weight: bold;
  border: none;
  background: var(--gray); }

.block-inquiry-completed--message {
  width: 100%;
  margin-top: 80px;
  padding-inline: 20px;
  font-size: 18px;
  font-weight: bold;
  text-align: left; }
  @media only screen and (max-width: 750px) {
    .block-inquiry-completed--message {
      padding-inline: 0; } }

.eat_reservation_completion_number {
  width: calc(100% - 40px);
  margin-top: 40px;
  padding-block: 60px;
  font-size: 18px;
  border: 1px solid var(--gray_border); }
  @media only screen and (max-width: 750px) {
    .eat_reservation_completion_number {
      width: 100%; } }

/* エラー画面 */
.page-alert .block-common-alert {
  max-width: 1040px;
  margin: 0 auto;
  padding: 0 20px;
  color: initial;
  border: none;
  background: none; }
  .page-alert .block-common-alert .block-common-alert--message {
    padding: 50px 20px;
    color: var(--red);
    text-align: center;
    border: 1px solid var(--red);
    background: var(--light_red); }
  .page-alert .block-common-alert .block-common-alert--link {
    max-width: 400px;
    margin: 200px auto 0;
    padding: 22px;
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
    border-radius: 99999px;
    border: 2px solid var(--deep_red) !important;
    background: var(--deep_red) !important;
    transition: 0.2s; }
    @media only screen and (max-width: 750px) {
      .page-alert .block-common-alert .block-common-alert--link {
        margin-top: 100px; } }

/* 予約履歴一覧 */
.page-applyhistory .block-purchase-history {
  width: 100%;
  max-width: 1040px;
  margin: 0 auto;
  padding-inline: 20px;
  padding-bottom: 60px; }
  @media only screen and (max-width: 750px) {
    .page-applyhistory .block-purchase-history {
      padding-bottom: 120px; } }
.page-applyhistory .block-purchase-history--header {
  margin-block: 80px 60px;
  padding: 0;
  font-size: 34px;
  text-align: center; }
  @media only screen and (max-width: 750px) {
    .page-applyhistory .block-purchase-history--header {
      font-size: 24px;
      margin-block: 40px; } }
.page-applyhistory .block-purchase-history--customer-name {
  margin-top: 60px;
  padding: 5px 20px;
  font-size: 20px;
  font-weight: bold;
  border: none;
  background: var(--gray); }
  @media only screen and (max-width: 750px) {
    .page-applyhistory .block-purchase-history--customer-name {
      font-size: 14px; } }
.page-applyhistory .block-purchase-history--search-item {
  margin-top: 40px; }
  .page-applyhistory .block-purchase-history--search-item .form-label {
    margin-bottom: 10px;
    font-size: 18px; }
  .page-applyhistory .block-purchase-history--search-item .form-control {
    margin-top: 10px; }
  @media only screen and (max-width: 750px) {
    .page-applyhistory .block-purchase-history--search-item [name="reservation_id"] {
      width: 100%; } }
.page-applyhistory .action-buttons {
  margin-top: 0; }
.page-applyhistory .block-purchase-history--search-btn {
  width: 200px;
  padding-block: 10px; }
.page-applyhistory .block-purchase-history--pager-top {
  margin-top: 50px; }
.page-applyhistory .pager-total {
  margin-block: 30px;
  font-size: 16px; }
.page-applyhistory .block-purchase-history--table {
  font-size: 16px; }
  @media only screen and (max-width: 750px) {
    .page-applyhistory .block-purchase-history--table {
      font-size: 14px; } }
  .page-applyhistory .block-purchase-history--table:nth-of-type(n+2) {
    margin-top: 20px; }
  .page-applyhistory .block-purchase-history--table th, .page-applyhistory .block-purchase-history--table td {
    padding: 8px 20px;
    border: 1px solid var(--gray_border); }
    @media only screen and (max-width: 750px) {
      .page-applyhistory .block-purchase-history--table th, .page-applyhistory .block-purchase-history--table td {
        padding: 5px; } }
  .page-applyhistory .block-purchase-history--table th {
    color: #fff;
    background: var(--gray_border); }
  .page-applyhistory .block-purchase-history--table tr th {
    border-top-color: #fff;
    border-bottom-color: #fff; }
.page-applyhistory .block-purchase-history--reservation-dt .btn-default {
  margin-top: 10px;
  padding: 5px 23px;
  color: var(--deep_red);
  font-size: 12px;
  font-weight: bold;
  border: 1.5px solid var(--deep_red);
  border-radius: 99999px; }
.page-applyhistory .block-purchase-history--reservation-id a {
  color: var(--link); }
.page-applyhistory .block-purchase-history--status .status-order, .page-applyhistory .block-purchase-history--status .status-cancel, .page-applyhistory .block-purchase-history--status .status-income, .page-applyhistory .block-purchase-history--status .status-reserve, .page-applyhistory .block-purchase-history--status .status-rship, .page-applyhistory .block-purchase-history--status .status-ship, .page-applyhistory .block-purchase-history--status .status-verify, .page-applyhistory .block-purchase-history--status .status-return, .page-applyhistory .block-purchase-history--status .status-visit, .page-applyhistory .block-purchase-history--status .status-status_, .page-applyhistory .block-purchase-history--status .status-status_1, .page-applyhistory .block-purchase-history--status .status-status_2, .page-applyhistory .block-purchase-history--status .status-status_3, .page-applyhistory .block-purchase-history--status .status-status_4, .page-applyhistory .block-purchase-history--status .status-status_9 {
  min-height: 0;
  padding: 0;
  border: none; }
  .page-applyhistory .block-purchase-history--status .status-order > span, .page-applyhistory .block-purchase-history--status .status-cancel > span, .page-applyhistory .block-purchase-history--status .status-income > span, .page-applyhistory .block-purchase-history--status .status-reserve > span, .page-applyhistory .block-purchase-history--status .status-rship > span, .page-applyhistory .block-purchase-history--status .status-ship > span, .page-applyhistory .block-purchase-history--status .status-verify > span, .page-applyhistory .block-purchase-history--status .status-return > span, .page-applyhistory .block-purchase-history--status .status-visit > span, .page-applyhistory .block-purchase-history--status .status-status_ > span, .page-applyhistory .block-purchase-history--status .status-status_1 > span, .page-applyhistory .block-purchase-history--status .status-status_2 > span, .page-applyhistory .block-purchase-history--status .status-status_3 > span, .page-applyhistory .block-purchase-history--status .status-status_4 > span, .page-applyhistory .block-purchase-history--status .status-status_9 > span {
    margin: 0;
    padding: 0; }
  .page-applyhistory .block-purchase-history--status .status-order .status-message, .page-applyhistory .block-purchase-history--status .status-cancel .status-message, .page-applyhistory .block-purchase-history--status .status-income .status-message, .page-applyhistory .block-purchase-history--status .status-reserve .status-message, .page-applyhistory .block-purchase-history--status .status-rship .status-message, .page-applyhistory .block-purchase-history--status .status-ship .status-message, .page-applyhistory .block-purchase-history--status .status-verify .status-message, .page-applyhistory .block-purchase-history--status .status-return .status-message, .page-applyhistory .block-purchase-history--status .status-visit .status-message, .page-applyhistory .block-purchase-history--status .status-status_ .status-message, .page-applyhistory .block-purchase-history--status .status-status_1 .status-message, .page-applyhistory .block-purchase-history--status .status-status_2 .status-message, .page-applyhistory .block-purchase-history--status .status-status_3 .status-message, .page-applyhistory .block-purchase-history--status .status-status_4 .status-message, .page-applyhistory .block-purchase-history--status .status-status_9 .status-message {
    font-size: 16px; }
    @media only screen and (max-width: 750px) {
      .page-applyhistory .block-purchase-history--status .status-order .status-message, .page-applyhistory .block-purchase-history--status .status-cancel .status-message, .page-applyhistory .block-purchase-history--status .status-income .status-message, .page-applyhistory .block-purchase-history--status .status-reserve .status-message, .page-applyhistory .block-purchase-history--status .status-rship .status-message, .page-applyhistory .block-purchase-history--status .status-ship .status-message, .page-applyhistory .block-purchase-history--status .status-verify .status-message, .page-applyhistory .block-purchase-history--status .status-return .status-message, .page-applyhistory .block-purchase-history--status .status-visit .status-message, .page-applyhistory .block-purchase-history--status .status-status_ .status-message, .page-applyhistory .block-purchase-history--status .status-status_1 .status-message, .page-applyhistory .block-purchase-history--status .status-status_2 .status-message, .page-applyhistory .block-purchase-history--status .status-status_3 .status-message, .page-applyhistory .block-purchase-history--status .status-status_4 .status-message, .page-applyhistory .block-purchase-history--status .status-status_9 .status-message {
        font-size: 14px; } }
  .page-applyhistory .block-purchase-history--status .status-order [class^="status-progress"], .page-applyhistory .block-purchase-history--status .status-cancel [class^="status-progress"], .page-applyhistory .block-purchase-history--status .status-income [class^="status-progress"], .page-applyhistory .block-purchase-history--status .status-reserve [class^="status-progress"], .page-applyhistory .block-purchase-history--status .status-rship [class^="status-progress"], .page-applyhistory .block-purchase-history--status .status-ship [class^="status-progress"], .page-applyhistory .block-purchase-history--status .status-verify [class^="status-progress"], .page-applyhistory .block-purchase-history--status .status-return [class^="status-progress"], .page-applyhistory .block-purchase-history--status .status-visit [class^="status-progress"], .page-applyhistory .block-purchase-history--status .status-status_ [class^="status-progress"], .page-applyhistory .block-purchase-history--status .status-status_1 [class^="status-progress"], .page-applyhistory .block-purchase-history--status .status-status_2 [class^="status-progress"], .page-applyhistory .block-purchase-history--status .status-status_3 [class^="status-progress"], .page-applyhistory .block-purchase-history--status .status-status_4 [class^="status-progress"], .page-applyhistory .block-purchase-history--status .status-status_9 [class^="status-progress"] {
    margin-block: 10px 5px; }

/* 予約履歴詳細 */
.page-applyhistorydetail .block-purchase-history-detail {
  width: 100%;
  max-width: 1040px;
  margin: 0 auto;
  padding-inline: 20px;
  padding-bottom: 60px; }
  @media only screen and (max-width: 750px) {
    .page-applyhistorydetail .block-purchase-history-detail {
      margin-bottom: 0;
      padding-bottom: 120px; } }
.page-applyhistorydetail .block-purchase-history-detail--header {
  margin-block: 80px 60px;
  padding: 0;
  font-size: 34px;
  text-align: center; }
  @media only screen and (max-width: 750px) {
    .page-applyhistorydetail .block-purchase-history-detail--header {
      font-size: 24px;
      margin-block: 40px; } }
.page-applyhistorydetail .block-purchase-history-detail--customer-name,
.page-applyhistorydetail .block-purchase-history-detail--company-name {
  min-height: 40px;
  padding: 5px 20px;
  font-size: 20px;
  font-weight: bold;
  border: none;
  background: var(--gray); }
  @media only screen and (max-width: 750px) {
    .page-applyhistorydetail .block-purchase-history-detail--customer-name,
    .page-applyhistorydetail .block-purchase-history-detail--company-name {
      float: none;
      width: 100%;
      margin: 0; } }
.page-applyhistorydetail .block-purchase-history-detail--company-name {
  padding-block: 8px;
  font-size: 14px;
  font-weight: normal; }
.page-applyhistorydetail .block-purchase-history-detail--body {
  clear: both;
  padding-inline: 20px;
  padding-top: 30px; }
  @media only screen and (max-width: 750px) {
    .page-applyhistorydetail .block-purchase-history-detail--body {
      padding-inline: 0; } }
.page-applyhistorydetail .block-purchase-history-detail--order-info-table,
.page-applyhistorydetail .block-purchase-history-detail--payment-info-items {
  margin-top: 20px;
  font-size: 16px; }
  @media only screen and (max-width: 750px) {
    .page-applyhistorydetail .block-purchase-history-detail--order-info-table,
    .page-applyhistorydetail .block-purchase-history-detail--payment-info-items {
      font-size: 14px; } }
  .page-applyhistorydetail .block-purchase-history-detail--order-info-table th, .page-applyhistorydetail .block-purchase-history-detail--order-info-table td,
  .page-applyhistorydetail .block-purchase-history-detail--payment-info-items th,
  .page-applyhistorydetail .block-purchase-history-detail--payment-info-items td {
    padding: 8px 20px;
    border: 1px solid var(--gray_border); }
    @media only screen and (max-width: 750px) {
      .page-applyhistorydetail .block-purchase-history-detail--order-info-table th, .page-applyhistorydetail .block-purchase-history-detail--order-info-table td,
      .page-applyhistorydetail .block-purchase-history-detail--payment-info-items th,
      .page-applyhistorydetail .block-purchase-history-detail--payment-info-items td {
        padding: 5px; } }
  .page-applyhistorydetail .block-purchase-history-detail--order-info-table th,
  .page-applyhistorydetail .block-purchase-history-detail--payment-info-items th {
    width: 26%;
    color: #fff;
    background: var(--gray_border); }
    @media only screen and (max-width: 750px) {
      .page-applyhistorydetail .block-purchase-history-detail--order-info-table th,
      .page-applyhistorydetail .block-purchase-history-detail--payment-info-items th {
        width: 28%; } }
  .page-applyhistorydetail .block-purchase-history-detail--order-info-table tr th,
  .page-applyhistorydetail .block-purchase-history-detail--payment-info-items tr th {
    border-top-color: #fff;
    border-bottom-color: #fff; }
.page-applyhistorydetail .block-purchase-history-detail--payment-info-items {
  margin-bottom: 10px; }
.page-applyhistorydetail .block-purchase-history-detail--status .status-order, .page-applyhistorydetail .block-purchase-history-detail--status .status-cancel, .page-applyhistorydetail .block-purchase-history-detail--status .status-income, .page-applyhistorydetail .block-purchase-history-detail--status .status-reserve, .page-applyhistorydetail .block-purchase-history-detail--status .status-rship, .page-applyhistorydetail .block-purchase-history-detail--status .status-ship, .page-applyhistorydetail .block-purchase-history-detail--status .status-verify, .page-applyhistorydetail .block-purchase-history-detail--status .status-return, .page-applyhistorydetail .block-purchase-history-detail--status .status-visit, .page-applyhistorydetail .block-purchase-history-detail--status .status-status_, .page-applyhistorydetail .block-purchase-history-detail--status .status-status_1, .page-applyhistorydetail .block-purchase-history-detail--status .status-status_2, .page-applyhistorydetail .block-purchase-history-detail--status .status-status_3, .page-applyhistorydetail .block-purchase-history-detail--status .status-status_4, .page-applyhistorydetail .block-purchase-history-detail--status .status-status_9 {
  min-height: 0;
  padding: 0;
  border: none; }
  .page-applyhistorydetail .block-purchase-history-detail--status .status-order > span, .page-applyhistorydetail .block-purchase-history-detail--status .status-cancel > span, .page-applyhistorydetail .block-purchase-history-detail--status .status-income > span, .page-applyhistorydetail .block-purchase-history-detail--status .status-reserve > span, .page-applyhistorydetail .block-purchase-history-detail--status .status-rship > span, .page-applyhistorydetail .block-purchase-history-detail--status .status-ship > span, .page-applyhistorydetail .block-purchase-history-detail--status .status-verify > span, .page-applyhistorydetail .block-purchase-history-detail--status .status-return > span, .page-applyhistorydetail .block-purchase-history-detail--status .status-visit > span, .page-applyhistorydetail .block-purchase-history-detail--status .status-status_ > span, .page-applyhistorydetail .block-purchase-history-detail--status .status-status_1 > span, .page-applyhistorydetail .block-purchase-history-detail--status .status-status_2 > span, .page-applyhistorydetail .block-purchase-history-detail--status .status-status_3 > span, .page-applyhistorydetail .block-purchase-history-detail--status .status-status_4 > span, .page-applyhistorydetail .block-purchase-history-detail--status .status-status_9 > span {
    margin: 0;
    padding: 0; }
  .page-applyhistorydetail .block-purchase-history-detail--status .status-order .status-message, .page-applyhistorydetail .block-purchase-history-detail--status .status-cancel .status-message, .page-applyhistorydetail .block-purchase-history-detail--status .status-income .status-message, .page-applyhistorydetail .block-purchase-history-detail--status .status-reserve .status-message, .page-applyhistorydetail .block-purchase-history-detail--status .status-rship .status-message, .page-applyhistorydetail .block-purchase-history-detail--status .status-ship .status-message, .page-applyhistorydetail .block-purchase-history-detail--status .status-verify .status-message, .page-applyhistorydetail .block-purchase-history-detail--status .status-return .status-message, .page-applyhistorydetail .block-purchase-history-detail--status .status-visit .status-message, .page-applyhistorydetail .block-purchase-history-detail--status .status-status_ .status-message, .page-applyhistorydetail .block-purchase-history-detail--status .status-status_1 .status-message, .page-applyhistorydetail .block-purchase-history-detail--status .status-status_2 .status-message, .page-applyhistorydetail .block-purchase-history-detail--status .status-status_3 .status-message, .page-applyhistorydetail .block-purchase-history-detail--status .status-status_4 .status-message, .page-applyhistorydetail .block-purchase-history-detail--status .status-status_9 .status-message {
    font-size: 16px; }
    @media only screen and (max-width: 750px) {
      .page-applyhistorydetail .block-purchase-history-detail--status .status-order .status-message, .page-applyhistorydetail .block-purchase-history-detail--status .status-cancel .status-message, .page-applyhistorydetail .block-purchase-history-detail--status .status-income .status-message, .page-applyhistorydetail .block-purchase-history-detail--status .status-reserve .status-message, .page-applyhistorydetail .block-purchase-history-detail--status .status-rship .status-message, .page-applyhistorydetail .block-purchase-history-detail--status .status-ship .status-message, .page-applyhistorydetail .block-purchase-history-detail--status .status-verify .status-message, .page-applyhistorydetail .block-purchase-history-detail--status .status-return .status-message, .page-applyhistorydetail .block-purchase-history-detail--status .status-visit .status-message, .page-applyhistorydetail .block-purchase-history-detail--status .status-status_ .status-message, .page-applyhistorydetail .block-purchase-history-detail--status .status-status_1 .status-message, .page-applyhistorydetail .block-purchase-history-detail--status .status-status_2 .status-message, .page-applyhistorydetail .block-purchase-history-detail--status .status-status_3 .status-message, .page-applyhistorydetail .block-purchase-history-detail--status .status-status_4 .status-message, .page-applyhistorydetail .block-purchase-history-detail--status .status-status_9 .status-message {
        font-size: 14px; } }
  .page-applyhistorydetail .block-purchase-history-detail--status .status-order [class^="status-progress"], .page-applyhistorydetail .block-purchase-history-detail--status .status-cancel [class^="status-progress"], .page-applyhistorydetail .block-purchase-history-detail--status .status-income [class^="status-progress"], .page-applyhistorydetail .block-purchase-history-detail--status .status-reserve [class^="status-progress"], .page-applyhistorydetail .block-purchase-history-detail--status .status-rship [class^="status-progress"], .page-applyhistorydetail .block-purchase-history-detail--status .status-ship [class^="status-progress"], .page-applyhistorydetail .block-purchase-history-detail--status .status-verify [class^="status-progress"], .page-applyhistorydetail .block-purchase-history-detail--status .status-return [class^="status-progress"], .page-applyhistorydetail .block-purchase-history-detail--status .status-visit [class^="status-progress"], .page-applyhistorydetail .block-purchase-history-detail--status .status-status_ [class^="status-progress"], .page-applyhistorydetail .block-purchase-history-detail--status .status-status_1 [class^="status-progress"], .page-applyhistorydetail .block-purchase-history-detail--status .status-status_2 [class^="status-progress"], .page-applyhistorydetail .block-purchase-history-detail--status .status-status_3 [class^="status-progress"], .page-applyhistorydetail .block-purchase-history-detail--status .status-status_4 [class^="status-progress"], .page-applyhistorydetail .block-purchase-history-detail--status .status-status_9 [class^="status-progress"] {
    margin-block: 10px 5px; }
.page-applyhistorydetail .block-purchase-history-detail--order-detail-items {
  margin-top: 20px;
  font-size: 16px; }
  @media only screen and (max-width: 750px) {
    .page-applyhistorydetail .block-purchase-history-detail--order-detail-items {
      font-size: 14px; } }
  .page-applyhistorydetail .block-purchase-history-detail--order-detail-items th, .page-applyhistorydetail .block-purchase-history-detail--order-detail-items td {
    padding: 8px 20px;
    border: 1px solid var(--gray_border); }
    @media only screen and (max-width: 750px) {
      .page-applyhistorydetail .block-purchase-history-detail--order-detail-items th, .page-applyhistorydetail .block-purchase-history-detail--order-detail-items td {
        padding: 5px; } }
  .page-applyhistorydetail .block-purchase-history-detail--order-detail-items th {
    color: #fff;
    background: var(--gray_border); }
  .page-applyhistorydetail .block-purchase-history-detail--order-detail-items tr th {
    border-left-color: #fff;
    border-right-color: #fff; }
.page-applyhistorydetail .block-purchase-history-detail--requests-for-order {
  margin-top: 50px; }
.page-applyhistorydetail .action-buttons {
  margin-top: 0; }

/* チェックイン */
.page-checkin .block-apply-checkin {
  padding-bottom: 60px; }
.page-checkin .block-apply-checkin--header {
  margin-block: 80px 60px;
  padding: 0;
  font-size: 34px;
  text-align: center; }
  @media only screen and (max-width: 750px) {
    .page-checkin .block-apply-checkin--header {
      font-size: 24px;
      margin-block: 40px; } }
.page-checkin .block-apply-checkin--qr-caution {
  width: 100%;
  font-size: 18px;
  font-weight: bold;
  text-align: center; }
.page-checkin .block-apply-checkin--qr-caution-annotation {
  display: block;
  margin-top: 60px;
  font-size: 18px; }
  @media only screen and (max-width: 750px) {
    .page-checkin .block-apply-checkin--qr-caution-annotation {
      margin-top: 40px;
      font-size: 16px; } }
.page-checkin .block-apply-checkin--qr {
  margin-top: 50px; }
  @media only screen and (max-width: 750px) {
    .page-checkin .block-apply-checkin--qr {
      margin-top: 30px; } }

/* キャンセル */
.page-applycancel .block-order-cancellation {
  max-width: 1040px;
  margin: 0 auto;
  padding-inline: 20px;
  padding-bottom: 60px; }
  @media only screen and (max-width: 750px) {
    .page-applycancel .block-order-cancellation {
      padding-bottom: 120px; } }
.page-applycancel .legend {
  margin-top: 40px;
  padding: 0;
  padding-bottom: 10px;
  font-size: 24px;
  font-weight: bold;
  border-bottom: 1px solid var(--gray_border);
  background: none; }
.page-applycancel .fieldset-vertical {
  padding-inline: 20px; }
  @media only screen and (max-width: 750px) {
    .page-applycancel .fieldset-vertical {
      padding-inline: 0; } }
  .page-applycancel .fieldset-vertical .form-group {
    margin-top: 30px; }
  .page-applycancel .fieldset-vertical .form-label {
    margin-bottom: 10px;
    font-size: 18px; }
.page-applycancel .block-order-cancellation--message {
  margin-top: 40px;
  text-align: center; }
  @media only screen and (max-width: 750px) {
    .page-applycancel .block-order-cancellation--message {
      text-align: left; } }

/* キャンセル完了 */
.page-applycancelcomplete .block-order-cancellation-completed--message {
  font-size: 18px;
  font-weight: bold;
  text-align: center; }
  @media only screen and (max-width: 750px) {
    .page-applycancelcomplete .block-order-cancellation-completed--message {
      font-size: 16px; } }

/* モーダル */
.page-applycancel .modal-dialog,
.page-applyconfirm .modal-dialog {
  max-width: 1000px; }
.page-applycancel .modal-content,
.page-applyconfirm .modal-content {
  position: relative;
  padding: 40px 60px 50px;
  background: var(--gray); }
.page-applycancel .modal-header,
.page-applyconfirm .modal-header {
  color: #000;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  background: none; }
.page-applycancel .modal-close,
.page-applyconfirm .modal-close {
  position: absolute;
  top: 15px;
  right: 15px;
  color: #000; }
.page-applycancel .block-member-terms--header,
.page-applyconfirm .block-member-terms--header {
  display: none; }
.page-applycancel .modal-body,
.page-applyconfirm .modal-body {
  padding-top: 20px; }
  .page-applycancel .modal-body > p,
  .page-applyconfirm .modal-body > p {
    margin-bottom: 20px;
    text-align: center; }
.page-applycancel .block-member-terms--body,
.page-applyconfirm .block-member-terms--body {
  height: 450px;
  padding: 20px;
  font-size: 14px; }
.page-applycancel .modal-footer,
.page-applyconfirm .modal-footer {
  display: flex;
  flex-direction: column;
  gap: 20px;
  align-items: center; }
  .page-applycancel .modal-footer .btn-secondary,
  .page-applyconfirm .modal-footer .btn-secondary {
    max-width: 400px;
    padding: 22px;
    color: var(--deep_red);
    font-size: 18px;
    font-weight: bold;
    border-radius: 99999px;
    border: 2px solid var(--deep_red);
    background: #fff;
    transition: 0.2s; }
  .page-applycancel .modal-footer .btn-primary,
  .page-applyconfirm .modal-footer .btn-primary {
    max-width: 400px;
    padding: 22px;
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    border-radius: 99999px;
    border: 2px solid var(--deep_red) !important;
    background: var(--deep_red) !important;
    transition: 0.2s; }
