/* ============================================================
   フォント
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500&family=Noto+Serif+JP:wght@400;700&family=Shippori+Mincho+B1&family=Ibarra+Real+Nova:wght@600&display=swap');

/* ============================================================
   表示切り替え
   ============================================================ */
.only-pc     { display: block; }
.only-tablet { display: block; }
.only-sp     { display: block; }
@media (max-width: 992px)                        { .only-pc      { display: none; } }
@media (max-width: 720px)                        { .only-tablet  { display: none; } }
@media (min-width: 992px)                        { .only-sp      { display: none; } }
@media (max-width: 992px) and (min-width: 720px) { .only-sp      { display: none; } }

/* ============================================================
   ▼ 元CSS（.reservation 関連）そのまま保持
   ============================================================ */
.reservation { width: 100%; padding-top:50px;}

.reservation__content {
  margin: 0 auto;
  padding: 50px 0 ;
  max-width: 1000px;
  text-align: center;
	background:#F6F4ED;
}
@media (max-width: 720px) { .reservation__content { padding: 70px 25px 35px; } }

.reservation__title {
  position: relative;
  margin-bottom: 23px;
  padding-bottom: 10px;
  font-size: 24px;
  font-family: 'Noto Serif JP', sans-serif;
font-weight:bold;
}


.reservation__description {
  margin: 0 auto 10px;
  color: #323333;
  letter-spacing: .05em;
  font-size: 16px;
  font-family: 'Noto Serif JP', sans-serif;
  line-height: 2;
}
@media (max-width: 720px) { .reservation__description { text-align: left; } .reservation__description  { font-size: 12px; } .reservation__title  { font-size: 20px; }}
.reservation__description a span { font-size: 1.5rem; }

.reservation__form {
  margin: 50px auto 50px;
  max-width: 1000px;
}
@media (max-width: 720px) { .reservation__form { margin: 0 auto 40px; padding: 0 25px; } }

.reservation__form .form-row {
  display: flex; padding: 35px 0;
  width: 100%; border-top: 1px solid #c2c3c4; align-items: center;
}
@media (max-width: 720px) { .reservation__form .form-row { padding: 20px 0; flex-wrap: wrap; } }

.reservation__form .form-text {
  margin-bottom: 5px; color: #3d3736;
  letter-spacing: .03em; font-size: 12px;
  font-family: 'Noto Sans JP', sans-serif; line-height: 20px;
}
@media (max-width: 720px) { .reservation__form .form-text { margin-bottom: 15px; } }
.reservation__form .form-text span { color: #c6bb80; }

.reservation__form .form-label {
  min-width: 250px; max-width: 250px;
  font-size: 13px; font-family: 'Noto Sans JP', sans-serif;
}
@media (max-width: 720px) {
  .reservation__form .form-label { margin-bottom: 15px; min-width: 100%; max-width: 100%; }
}
.reservation__form .form-label .label-text { display: inline-block; color: #3d3736; }
.reservation__form .form-label.is-required::after {
  display: inline-block; padding-left: 3px; color: #c6bb80; content: '[必須]';
}

.reservation__form .form-input-wrapper { width: 100%; color: #3d3736; font-family: 'Noto Sans JP', sans-serif; }
.reservation__form .form-input-wrapper .wpcf7-not-valid-tip {
  position: absolute; color: #cc0012; white-space: nowrap; font-size: 12px; transform: translateY(8px);
}
@media (max-width: 720px) { .reservation__form .form-input-wrapper .wpcf7-not-valid-tip { position: static; } }

.reservation__form .form-input-wrapper input[type=text],
.reservation__form .form-input-wrapper input[type=email],
.reservation__form .form-input-wrapper input[type=tel] {
  padding: 5px; width: 370px;
  border: .6px solid #727172; border-radius: 2px;
  background: transparent; font-size: 13px;
}
@media (max-width: 720px) {
  .reservation__form .form-input-wrapper input[type=text],
  .reservation__form .form-input-wrapper input[type=email],
  .reservation__form .form-input-wrapper input[type=tel] { width: 285px; border-radius: 6px; font-size: 16px; }
}
.reservation__form .form-input-wrapper input[type=radio] { margin: 5px 3px 0 5px; }

.reservation__form .form-input-wrapper select {
  padding: 5px 28px 5px 5px; width: 250px; height: 28px;
  border: .6px solid #727172; border-radius: 2px;
  background-image: url('../../images/common/form_select_btn.png');
  background-position: right 0 center; background-size: 28px 28px; background-repeat: no-repeat;
  color: #3d3736; font-size: 13px; -webkit-appearance: none; appearance: none;
}
@media (max-width: 720px) { .reservation__form .form-input-wrapper select { border-radius: 6px; font-size: 16px; } }
.reservation__form .form-input-wrapper select::-ms-expand { display: none; }

.reservation__form .form-input-wrapper textarea {
  padding: 5px; min-width: 370px; max-width: 370px; width: 370px;
  border: .6px solid #727172; border-radius: 2px; background: transparent; font-size: 13px;
}
@media (max-width: 720px) {
  .reservation__form .form-input-wrapper textarea { min-width: 100%; max-width: 100%; width: 100%; border-radius: 6px; font-size: 16px; }
}

.reservation__form .form-input-wrapper .wpcf7-radio { font-size: 13px; }
.reservation__form .form-input-wrapper .wpcf7-radio .wpcf7-list-item.first { margin: 0; }
.reservation__form .form-input-wrapper .wpcf7-radio input[type=radio] { display: none; }
.reservation__form .form-input-wrapper .wpcf7-radio .wpcf7-list-item-label { position: relative; padding-left: 20px; }
.reservation__form .form-input-wrapper .wpcf7-radio .wpcf7-list-item-label::before {
  position: absolute; top: 3px; left: 0; display: block;
  width: 13px; height: 13px; border: 1px solid #3d3736; border-radius: 50%; content: '';
}
.reservation__form .form-input-wrapper .wpcf7-radio input:checked + .wpcf7-list-item-label::after {
  position: absolute; top: 6px; left: 3px;
  width: 9px; height: 9px; border-radius: 50%; background: #c9b250; content: '';
}
.reservation__form .form-input-wrapper .form-caution-space .wpcf7-not-valid-tip { position: static; }
.reservation__form .form-input-wrapper .is-center { padding-top: 10px; }
.reservation__form .form-input-wrapper.is-small input { width: 320px; }
@media (max-width: 720px) { .reservation__form .form-input-wrapper.is-small input { width: 260px; } }

.reservation__form .form-submit { margin: 0 auto; }
.reservation__form .form-submit input[type=submit] {
  display: flex; padding: 0;
  width: 270px; height: 50px;
  outline: none; border: none;
  background: url('../../images/common/button_back_light.png');
  background-size: 270px 50px;
  color: #3d3736; font-size: 16px;
  font-family: 'Ibarra Real Nova', serif;
  transition: .5s; -webkit-appearance: none; -moz-appearance: none; appearance: none;
  align-items: center; justify-content: center;
}
@media (max-width: 720px) {
  .reservation__form .form-submit input[type=submit] { width: 250px; height: 50px; background-size: 250px 50px; font-size: 14px; }
}
.reservation__form .form-submit input[type=submit]:hover {
  background: url('../../images/common/button_back_dark.png'); background-size: 270px 50px; cursor: pointer;
}
@media (max-width: 720px) { .reservation__form .form-submit input[type=submit]:hover { background-size: 250px 50px; } }

.reservation__form .form-item { margin-bottom: 20px; }
.reservation__form .form-item .item-title { position: relative; padding-left: 12px; color: #3d3736; font-size: 14px; }
.reservation__form .form-item .item-title:before {
  position: absolute; top: 50%; left: 0; width: 8px; height: 8px;
  border-radius: 50%; background: #3d3736; content: ''; transform: translateY(-40%);
}
.reservation__form .form-item .form-row { display: flex; padding: 8px 0; border-top: 0; align-items: center; flex-wrap: nowrap; }
.reservation__form .form-item .form-label { min-width: 100px; max-width: 100px; font-size: 13px; }
@media (max-width: 720px) { .reservation__form .form-item .form-label { margin-bottom: 0; min-width: 80px; max-width: 80px; } }
.reservation__form .form-item input[type=text] { padding: 5px; width: 200px; border: .6px solid #727172; border-radius: 2px; background: transparent; font-size: 13px; }
@media (max-width: 720px) { .reservation__form .form-item input[type=text] { width: 100%; border-radius: 6px; font-size: 16px; } }
.reservation__form .form-item .wpcf7-not-valid-tip { position: static; }

.reservation__form .wpcf7-response-output {
  margin: -20px 0 0 0 !important; padding: 0 !important; border: 0 solid !important;
  text-align: center; font-size: 12px; font-family: 'Ibarra Real Nova', serif;
}

.tac { text-align: center; }
/* ============================================================
   ▲ 元CSS ここまで
   ============================================================ */


/* ============================================================
   ▼ 貸衣装フォーム 新デザイン
   ============================================================ */
:root {
  --rf-input-bg:      #F6F4ED;
  --rf-input-border:  #CBC8BE;
  --rf-required-bg:   #F70707;
  --rf-separator:     #A6A6A6;
  --rf-footer-bg:     #F6F4ED;
  --rf-title-color:   #333333;
  --rf-label-color:   #222222;
  --rf-placeholder:   #222222;
  --rf-bring-bg:      #F4ECC1;
  --rf-bring-text:    #916C1C;
  --rf-footer-title:  #6B5A29;
  --rf-serif:         'Noto Serif JP', serif;
  --rf-sans:          'Noto Sans JP', sans-serif;
}

/* ─── セクション ─── */
.rental-section {
  display: grid;
  grid-template-columns: 200px 1fr;
	column-gap: 100px;
  align-items: start;
  padding: 48px 0;
}
.rental-section + .rental-section {
  border-top: 1px solid var(--rf-separator);
}
.rental-section:last-of-type {
  border-bottom: 1px solid var(--rf-separator);
}

.rental-section__title {
  margin: 0;
  padding-top: 0;
  font-size: 22px;
  font-family: var(--rf-serif);
  font-weight: 700;
  color: var(--rf-title-color);
  letter-spacing: .04em;
  line-height: 1.4;
}
.rental-section__body {
  display: flex;
  flex-direction: column;
}

@media (max-width: 720px) {
  .rental-section { grid-template-columns: 1fr; row-gap: 16px; padding: 32px 0; }
  .rental-section__title { font-size: 18px; padding-bottom: 10px; border-bottom: 1.5px solid var(--rf-separator); }
  .rental-section:last-of-type { border-bottom: none; }
}

/* ─── 各行 ─── */
.r-row {
  display: grid;
  grid-template-columns: 200px 1fr;
  column-gap: 20px;
  align-items: center;
  padding: 18px 0;
}
.rental-section__body .r-row:first-child {
  padding-top: 0;
}

@media (max-width: 720px) {
  .r-row { grid-template-columns: 1fr; row-gap: 8px; padding: 14px 0; }
}

/* ─── 送信ボタン ─── */
.rental-submit-wrap {
  display: flex;
  justify-content: center;
  padding: 40px 0;
}

/* ─── ② ラベル：bold に変更 ─── */
.r-label {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  padding-top: 0;
  font-size: 13px;
  font-family: var(--rf-sans);
  font-weight: 700; /* ② bold追加 */
  color: var(--rf-label-color);
  line-height: 1.6;
}
.r-label--required::after {
  content: '必須';
  display: inline-block;
  padding: 1px 5px;
  background: var(--rf-required-bg);
  color: #fff; font-size: 10px; font-weight: 500;
  letter-spacing: .04em; line-height: 1.6;
  flex-shrink: 0;
}
.r-label--optional::after {
  content: '任意';
  display: inline-block;
  padding: 1px 5px;
  background: #515050;
  color: #fff; font-size: 10px; font-weight: 500;
  border-radius: 2px; letter-spacing: .04em; line-height: 1.6;
  flex-shrink: 0;
}

/* ─── 入力エリア ─── */
.r-input { width: 100%; }

.r-input input[type="text"],
.r-input input[type="email"],
.r-input input[type="tel"] {
  display: block; width: 100%;
  padding: 13px 14px;
  background: var(--rf-input-bg);
  border: 1px solid var(--rf-input-border);
  border-radius: 3px;
  font-size: 13px; font-family: var(--rf-sans);
  color: #333333;
  box-sizing: border-box; outline: none;
  transition: border-color .2s; -webkit-appearance: none;
}
.r-input input[type="text"]::placeholder,
.r-input input[type="email"]::placeholder,
.r-input input[type="tel"]::placeholder {
  color: var(--rf-placeholder);
  opacity: 0.5;
  font-size: 12px;
  font-family: var(--rf-sans);
}
.r-input input[type="text"]:focus,
.r-input input[type="email"]:focus,
.r-input input[type="tel"]:focus { border-color: #8b6f5c; }
@media (max-width: 720px) {
  .r-input input[type="text"],
  .r-input input[type="email"],
  .r-input input[type="tel"] { font-size: 16px; border-radius: 6px; }
}

.r-input textarea {
  display: block; width: 100%;
  padding: 13px 14px;
  background: var(--rf-input-bg);
  border: 1px solid var(--rf-input-border);
  border-radius: 3px;
  font-size: 13px; font-family: var(--rf-sans);
  color: #333333;
  box-sizing: border-box; outline: none;
  line-height: 1.7;
  min-height: 76px; height: 76px;
  resize: vertical;
  transition: border-color .2s;
}
.r-input textarea:focus { border-color: #8b6f5c; }
.r-input textarea::placeholder {
  color: var(--rf-placeholder);
  opacity: 0.5;
  font-size: 12px;
  font-family: var(--rf-sans);
}

.r-input select {
  display: block; width: 100%;
  padding: 13px 40px 13px 14px;
  background-color: var(--rf-input-bg);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='7' viewBox='0 0 12 7'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23888' stroke-width='1.6' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 14px center;
  border: 1px solid var(--rf-input-border); border-radius: 3px;
  font-size: 13px; font-family: var(--rf-sans); color: #333333;
  appearance: none; -webkit-appearance: none;
  box-sizing: border-box; outline: none; cursor: pointer;
  transition: border-color .2s;
}
.r-input select::-ms-expand { display: none; }
.r-input select:focus { border-color: #8b6f5c; }
.r-input select option[value=""] { color: var(--rf-placeholder); }
@media (max-width: 720px) { .r-input select { font-size: 16px; border-radius: 6px; } }

/* チェックボックス */
.r-input .wpcf7-checkbox .wpcf7-list-item { display: block; margin: 0 0 12px; }
.r-input .wpcf7-checkbox .wpcf7-list-item.first { margin-top: 2px; }
.r-input .wpcf7-checkbox .wpcf7-list-item label {
  display: flex; align-items: center; gap: 10px;
  font-size: 13px; font-family: var(--rf-sans); color: var(--rf-label-color); cursor: pointer;
}
.r-input .wpcf7-checkbox input[type="checkbox"] {
  flex-shrink: 0; width: 16px; height: 16px;
  border: 1.5px solid #222222; border-radius: 2px;
  background: transparent;
  appearance: none; -webkit-appearance: none;
  position: relative; cursor: pointer;
  transition: background .15s, border-color .15s;
}
.r-input .wpcf7-checkbox input[type="checkbox"]:checked { background: #222222; border-color: #222222; }
.r-input .wpcf7-checkbox input[type="checkbox"]:checked::after {
  content: ''; position: absolute;
  left: 4px; top: 1px; width: 4px; height: 9px;
  border: 2px solid #fff; border-top: none; border-left: none;
  transform: rotate(40deg);
}

.r-input .wpcf7-not-valid-tip { display: block; margin-top: 4px; color: #cc0012; font-size: 12px; }

.r-includes-heading {
  margin: 0 0 4px; font-size: 15px;
  font-family: var(--rf-sans); color: #333333; font-weight: 400;
}
.r-note { margin: 2px 0 0; font-size: 13px; font-family: var(--rf-sans); color: #333333; line-height: 1.9; }

.r-bring-box {
  padding: 16px 20px;
  background: var(--rf-bring-bg); border-radius: 3px;
  font-size: 13px; font-family: var(--rf-sans); color: #333333; line-height: 1.9;
}
.r-bring-box__title {
  display: block; font-size: 14px; font-weight: 700;
  color: var(--rf-bring-text); margin-bottom: 6px;
  font-family: var(--rf-sans);
}

.costume-section { display: none; }
.costume-section.is-visible { display: block !important; }

/* ─── フッター ─── */
.rental-footer-box {
  padding: 80px 24px 80px;
  background: var(--rf-footer-bg);
}
.rental-footer-box__inner {
  margin: 0 auto; max-width: 700px;
  padding: 48px 40px;
  background: #ffffff;
  border-radius: 6px;
  text-align: center;
}
.rental-footer-box__name {
  margin: 0 0 22px;
  font-size: 24px;
  font-family: var(--rf-serif);
  font-weight: 700;
  color: var(--rf-footer-title);
  letter-spacing: .08em;
}
/* ③ SP時の改行用 span：デフォルト非表示 */
.rental-footer-name-break {
  display: inline;
}
.rental-footer-box__line {
  width: 32px; height: 1px;
  background: var(--rf-footer-title);
  margin: 0 auto 32px;
}
.rental-footer-box__contacts {
  display: flex; align-items: center; justify-content: center;
  gap: 48px; margin-bottom: 16px;
}
.rental-footer-box__tel,
.rental-footer-box__fax {
  display: flex; align-items: center; gap: 8px;
  font-size: 24px;
  font-family: var(--rf-serif);
  color: #000000; letter-spacing: .04em;
}
.rental-footer-box__tel img,
.rental-footer-box__fax img { width: 20px; height: auto; vertical-align: middle; }
.rental-footer-box__hours { margin: 0; font-size: 11px; font-family: var(--rf-sans); color: #000000; letter-spacing: .04em; }

@media (max-width: 540px) {
  .rental-footer-box__contacts { flex-direction: column; gap: 14px; }
  .rental-footer-box__tel, .rental-footer-box__fax { font-size: 20px; }
  /* ③ SP時：インターナショナル を改行で表示 */
  .rental-footer-name-break { display: block; }
}

/* ─── ヒーロータイトルSVG ─── */
.baseCover__title {
  display: flex;
  align-items: center;
  justify-content: center;
}
.baseCover__title img {
  width: 520px;
  max-width: 80%;
  height: auto;
}

/* ─── カスタムドロップダウン（ご希望衣装） ─── */
.r-custom-select-wrap {
  position: relative;
  width: 100%;
}

/* ネイティブselectを非表示（CF7バリデーション・送信のため残す） */
.r-custom-select-wrap select {
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}

/* 選択中の値を表示するボックス */
.r-custom-select-trigger {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 13px 14px;
  background: var(--rf-input-bg);
  border: 1px solid var(--rf-input-border);
  border-radius: 3px;
  font-size: 13px;
  font-family: var(--rf-sans);
  color: #333333;
  cursor: pointer;
  line-height: 1.6;
  min-height: 48px;
  transition: border-color .2s;
  box-sizing: border-box;
}
.r-custom-select-trigger:hover,
.r-custom-select-wrap.is-open .r-custom-select-trigger {
  border-color: #8b6f5c;
}
.r-custom-select-trigger__text {
  flex: 1;
}
.r-custom-select-trigger__text.is-placeholder {
  color: rgba(34, 34, 34, 0.5);
  font-size: 12px;
}
/* 矢印 */
.r-custom-select-trigger__arrow {
  flex-shrink: 0;
  width: 12px;
  height: 7px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='7' viewBox='0 0 12 7'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23888' stroke-width='1.6' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  transition: transform .2s;
}
.r-custom-select-wrap.is-open .r-custom-select-trigger__arrow {
  transform: rotate(180deg);
}

/* 選択肢リスト */
.r-custom-select-options {
  display: none;
  position: absolute;
  top: calc(100% + 2px);
  left: 0;
  right: 0;
  background: #fff;
  border: 1px solid var(--rf-input-border);
  border-radius: 3px;
  z-index: 100;
  box-shadow: 0 4px 12px rgba(0,0,0,.08);
  overflow: hidden;
}
.r-custom-select-wrap.is-open .r-custom-select-options {
  display: block;
}

.r-custom-select-option {
  padding: 12px 14px;
  font-size: 13px;
  font-family: var(--rf-sans);
  color: #333333;
  line-height: 1.7;
  cursor: pointer;
  transition: background .15s;
  white-space: normal; /* ← 折り返しを許可 */
  word-break: break-all;
}
.r-custom-select-option:hover {
  background: var(--rf-input-bg);
}
.r-custom-select-option.is-selected {
  background: var(--rf-input-bg);
  font-weight: 500;
}
.r-custom-select-option.is-placeholder {
  color: rgba(34,34,34,0.4);
  font-size: 12px;
}

.rtp{align-items:flex-start!important;}


/* ============================================================
   ▲ 貸衣装フォーム 新デザイン ここまで
   ============================================================ */

.r-custom-select-trigger,
.r-custom-select-option {
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}


/* button要素のデフォルトスタイルリセット */
button.r-custom-select-trigger,
button.r-custom-select-option {
  -webkit-appearance: none;
  appearance: none;
  background: none;
  border: none;
  text-align: left;
  width: 100%;
  font-family: var(--rf-sans);
}

/* triggerは既存スタイルを上書き */
button.r-custom-select-trigger {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 13px 14px;
  background: var(--rf-input-bg);
  border: 1px solid var(--rf-input-border);
  border-radius: 3px;
  font-size: 13px;
  color: #333333;
  cursor: pointer;
  line-height: 1.6;
  min-height: 48px;
  box-sizing: border-box;
}

/* ─── ラジオボタン完全リセット＆四角スタイル ─── */
.r-input .wpcf7-radio input[type="radio"] {
  display: none;
}
.r-input .wpcf7-radio .wpcf7-list-item {
  display: block;
  margin: 3px 3px 12px 4px;
}
.r-input .wpcf7-radio .wpcf7-list-item.first {
  margin: 3px 3px 12px 4px;
}
.r-input .wpcf7-radio .wpcf7-list-item-label {
  position: relative;
  padding-left: 26px;
  font-size: 13px;
  font-family: var(--rf-sans);
  color: var(--rf-label-color);
  cursor: pointer;
  line-height: 1.6;
}
.r-input .wpcf7-radio .wpcf7-list-item-label::before {
  position: absolute;
  top: 2px;
  left: 0;
  width: 16px;
  height: 16px;
  border: 1.5px solid #222222;
  border-radius: 2px;        /* 四角 */
  background: transparent;
  content: '';
  box-sizing: border-box;
}
.r-input .wpcf7-radio .wpcf7-list-item-label::after {
  content: none;             /* afterをデフォルト無効化 */
}
.r-input .wpcf7-radio input[type="radio"]:checked + .wpcf7-list-item-label::before {
  background: #222222;
  border-color: #222222;
}
.r-input .wpcf7-radio input[type="radio"]:checked + .wpcf7-list-item-label::after {
  content: '';
  position: absolute;
  top: 3px;
  left: 5px;
  width: 4px;
  height: 9px;
  border: 2px solid #fff;
  border-top: none;
  border-left: none;
  transform: rotate(40deg);
  background: none;
  border-radius: 0;
}

/* ─── サイズ入力グリッド ─── */
.r-size-grid {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.r-size-row {
  display: flex;
  align-items: center;
  gap: 8px;
}
.r-size-label {
  min-width: 72px;
  font-size: 13px;
  font-family: var(--rf-sans);
  color: var(--rf-label-color);
}
.r-size-unit {
  font-size: 13px;
  font-family: var(--rf-sans);
  color: var(--rf-label-color);
}
.r-input input.r-size-input {
  width: 80px;
  padding: 8px 10px;
  background: var(--rf-input-bg);
  border: 1px solid var(--rf-input-border);
  border-radius: 3px;
  font-size: 13px;
  font-family: var(--rf-sans);
  color: #333333;
  box-sizing: border-box;
  outline: none;
  text-align: center;
}
.r-input input.r-size-input:focus {
  border-color: #8b6f5c;
}

.reservation__complete{margin:0 auto;padding:70px 0 120px 0;max-width:800px;text-align:center}@media(max-width: 720px){.reservation__complete{padding:70px 25px}}.reservation__complete__title{position:relative;margin-bottom:23px;padding-bottom:10px;font-size:27px;font-family:"Shippori Mincho B1",serif}@media(max-width: 720px){.reservation__complete__title{font-size:20px}}.reservation__complete__title::after{position:absolute;bottom:0;left:50%;width:60px;height:1px;background:#323333;content:"";transform:translateX(-50%)}.reservation__complete__description{margin:0 auto;max-width:600px;color:#323333;letter-spacing:.05em;font-size:12px;font-family:"Shippori Mincho B1",serif;line-height:2}@media(max-width: 720px){.reservation__complete__description{text-align:left}}