@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');

/* MATERIALS */


/* INTERFACE */

body{
	-webkit-text-size-adjust:100%;
	margin:0;
	padding:5%;
	background-color:#f4b321;
	color:#000;
	font-family:"Noto Sans JP", sans-serif;
}

#form_contents_area{
	max-width:750px;
	margin:0 auto;
	padding:5%;
	background-color:#fff;
	border-top:5px solid #000;
}

#form_contents_area h1{
	margin:0 0 1em;
	font-size:30px;
	line-height:1.3;
	color:#000;
}

#form_contents_area p{
	font-size:16px;
	line-height:1.6;
}

#form_contents_area table.basic{
	margin:0 0 1em;
	border-collapse:collapse;
	font-size:16px;
}

#form_contents_area table.basic th{
	padding:0 0 0.5em 0;
	text-align:left;
	vertical-align:top;
	font-weight:500;
	white-space:nowrap;
}

#form_contents_area table.basic td{
	padding:0 0 0.5em;
}

#form_contents_area ul.note{
	margin:0 0 1em;
	padding:0 0 0 1em;
	text-indent:-1em;
	list-style-type:none;
	font-size:14px;
}

#form_contents_area p.margin{
	margin:1em 0 2em;
}

#form_contents_area input{
	background: #fff;
	border: none;
	border-radius: 0;
	font: inherit;
	outline: none;
	width:50%;
	box-sizing:border-box;
	padding:10px;
	border:1px solid #ccc;
	font-size:15px;
}

#form_contents_area select{
	background: #fff;
	border: none;
	border-radius: 0;
	font: inherit;
	outline: none;
	font-size:15px;
}

#form_btn_area{
	margin:3em 0 0;
	text-align:center;
}

#form_contents_area button{
	background: #000;
	border: none;
	border-radius: 0;
	font: inherit;
	outline: none;
	margin:0 10px;
	padding:10px 20px;
	font-size:16px;
	color:#fff;
	border-radius:5px;
	cursor:pointer;
}

#form_contents_area button.back{
	background: #777;
}

@media only screen and (max-width:767px){
	#form_contents_area{
		padding:10% 5%;
	}
	
	#form_contents_area input{
		width:100%;
	}
	#form_contents_area button{
		margin:0 5px;
	}
}


/* reservation/admin additions */
.form-page,
.admin-page {
  width: 100%;
  min-height: 100vh;
  box-sizing: border-box;
  background-color:#fff;
}

.form-wrap,
.admin-wrap {
  max-width: 960px;
  margin: 0 auto;
  padding: 40px 20px;
  box-sizing: border-box;
}

.reservation-form p {
  margin-bottom: 20px;
}

.reservation-form input,
.reservation-form select {
  width: 100%;
  max-width: 520px;
  box-sizing: border-box;
  padding: 10px;
  font-size: 16px;
}

.reservation-form button,
.admin-nav a {
  display: inline-block;
  padding: 10px 18px;
  border: 1px solid currentColor;
  text-decoration: none;
  cursor: pointer;
}

.form-buttons {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}

.admin-nav {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin: 20px 0;
}

.admin-count {
  margin: 20px 0;
  font-weight: bold;
}

.admin-table-wrap {
  overflow-x: auto;
}

.admin-table {
  width: 100%;
  border-collapse: collapse;
}

.admin-table th,
.admin-table td {
  border: 1px solid #ccc;
  padding: 10px;
  text-align: left;
  white-space: nowrap;
}

.admin-table th {
  background: rgba(0,0,0,.06);
}
