.thankyou {
	padding: 30px 0;
	text-align: center;
}
h2#txt_order {
	background: url(../images/title_yoyaku.gif) no-repeat center right;
	text-align: left;
	text-indent: -10000px;
	overflow: hidden;
}


/*フォームのデザイン*/
#page-reservation table.std {
	width: 800px;
	margin-left: auto;
	margin-right: auto;
}

table.std{
border:1px solid #e0e000;border-collapse:collapse;
background-color:#ffffff;
empty-cells:show;
}
table.std th {
border:1px solid #e0e000;
white-space:nowrap;
font-weight:normal;
padding:2px 5px;
text-align:right;white-space:nowrap;
text-align:right;
}
table.std td {
	border:1px solid #e0e000;
	padding-left: 5px;
}
#page-reservation #blockB {
	display: none;
}
#page-reservation #blockA {
	width: 860px;
	float: none;
	padding-left: 0px;
}
#page-reservation form div.btn {
	text-align: center;
	margin-top: 1em;
}
.oneblock {
	display: inline-block;
	padding-left: 5px;
}
#page-reservation #blockA h3 {
	background: none;
	border-bottom: 1px solid #666;
	padding: 0 0 5px;
	font-size: 1em;
	line-height: 140%;
	position: relative;
/* 	margin-top: 20px; */
	margin: 0 0 10px;
	text-shadow: none;
}
#page-reservation #search { display: none;}

/* =================================================
   予約フォーム：スマホ最適化（本採用・確定版）
   ================================================= */

/* 入力欄の視認性強化（PC / スマホ共通） */
#page-reservation #form input[type="text"],
#page-reservation #form input[type="tel"],
#page-reservation #form input[type="email"],
#page-reservation #form select,
#page-reservation #form textarea {
  border: 2px solid #9aa4b2;
  background-color: #ffffff;
  border-radius: 6px;
  padding: 8px 10px;
  box-sizing: border-box;
}

#page-reservation #form input:focus,
#page-reservation #form select:focus,
#page-reservation #form textarea:focus {
  outline: none;
  border-color: #4a90e2;
  box-shadow: 0 0 0 2px rgba(74,144,226,0.25);
}

/* 日付入力欄 */
#page-reservation #firstdate,
#page-reservation #seconddate {
  border-color: #4a90e2;
  background-color: #f7fbff;
}

/* ===== スマホ時：th / td を縦積み ===== */
@media screen and (max-width: 768px) {

  #page-reservation table.std,
  #page-reservation table.std tbody,
  #page-reservation table.std tr,
  #page-reservation table.std th,
  #page-reservation table.std td {
    display: block;
    width: 100%;
  }

  #page-reservation table.std tr {
    margin-bottom: 16px;
    padding-bottom: 12px;
    border-bottom: 1px solid #ddd;
  }

  #page-reservation table.std th {
    text-align: left !important;
    background-color: #ffffd8;
    font-weight: bold;
    padding: 10px 8px 6px;
    border-bottom: none;
  }

  #page-reservation table.std td {
    padding: 6px 8px 12px;
    border-top: none;
  }

  /* iOSズーム防止 */
  #page-reservation #form input,
  #page-reservation #form select,
  #page-reservation #form textarea {
    font-size: 16px;
  }

  /* チェックボックス縦並び */
  #page-reservation .oneblock {
    display: block;
    margin-bottom: 6px;
  }

  /* 送信ボタン */
  #page-reservation .btn input.submit {
    width: 100%;
    font-size: 18px;
    padding: 14px 0;
  }
}

/* =========================================
   時刻セレクト：モバイルだけ最小限に拡張
   ========================================= */
@media screen and (max-width: 768px) {
  #form select.timeSelector {
    width: 8.5em;      /* ← これが肝（必要最小限） */
    max-width: none;
  }
}

/* =========================================
   Pikaday：安定動作の最終定義
   ========================================= */

#page-reservation .pika-single {
  padding: 0 !important;
  margin: 0 !important;
  box-sizing: border-box;
}

#page-reservation .pika-lendar {
  margin: 0 !important;
  padding: 0 !important;
}

#page-reservation .pika-table {
  width: 100% !important;
  max-width: 100% !important;
  table-layout: fixed !important;
  border-collapse: collapse !important;
  border-spacing: 0 !important;
  display: table !important;
}

#page-reservation .pika-table th,
#page-reservation .pika-table td {
  width: calc(100% / 7);
  padding: 4px 0 !important;
  box-sizing: border-box;
}

/* スマホ時のみ：説明文を左寄せ */
@media screen and (max-width: 768px) {
  #page-reservation .btn p.info {
    text-align: left;
    margin: 0 1rem 0.75rem;
    line-height: 1.6;
  }
}

@media screen and (max-width: 768px) {

  #page-reservation .btn input.submit {
    width: 100%;
    max-width: 360px;     /* ← 視認性と押しやすさの最適点 */
    margin: 0 auto 0.75rem;
    display: block;

    font-size: 18px;
    font-weight: bold;
    padding: 14px 0;

    border-radius: 8px;
  }
}

/* スマホ時のみ：注意文（caution）を左寄せ */
@media screen and (max-width: 768px) {
  #page-reservation td.caution {
    text-align: left;
    padding-left: 1rem;
    padding-right: 1rem;
    line-height: 1.6;
  }
}
@media screen and (max-width: 768px) {
  #page-reservation form div.btn {
    text-align: left;
    padding-left: 1rem;
    padding-right: 1rem;
  }
}

@media screen and (max-width: 768px) {
  #page-reservation .btn input.submit {
    width: 100%;
    max-width: 360px;
    margin: 0 0 0.75rem 0; /* 左寄せ */
    display: block;
  }
}

@media screen and (max-width: 768px) {
  #page-reservation .btn input.button {
    width: auto;
    font-size: 14px;
    opacity: 0.7;
    margin: 0;
  }
}
