:root {
	--font-main-color: #333333;
	--font-sub-color: #fff;
	--font-required-color: #c1272d;
	--font-family: 'Noto Sans JP', 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', 'Meiryo', sans-serif;
	--border-color: #adadad;
	--btn-color: #333333;
	--bg-color: #333333;
	--bg-contents-color: #eaeef2;
	--bg-breadcrumbs-color: #adadad;
}

* {
	box-sizing: border-box;
}

body {
	margin: 0;
	height: 100vh;
	display: grid;
	grid-template-rows: 70px auto 40px;
}
th{
	font-weight: 600;
}

.btn-yellow{
	border: 2px solid #F19600!important;
	background-color: #F19600!important;
	color: #fff!important;
	transition : 0.5s!important;
}
.btn-yellow:hover{
	border: 2px solid #F19600!important;
	background-color: #fff!important;
	color: #F19600!important;
	transition : 0.5s!important;
}
.wid-100{
	width: 100%!important;
}
.wid-50{
	width: 50px!important;
}
.unset{
	width: unset!important;
}
.text-center {
	text-align: center;
}
.bg {
	background: var(--bg-contents-color);
	padding-bottom: 20px;
}
.weight-midium{
	font-weight: 500;
}
.mt--1em{
	margin-top: 1em;
}
.mt--2em{
	margin-top: 2em;
}
.mb--02em{
	margin-bottom: 0.2em;
}
.mb--1em{
	margin-bottom: 1em !important;
}

.gap--1em{
	gap: 1em;
}
.gap--2em{
	gap: 2em;
}
.font-required{
	display: flex !important;
	align-items: center;
}
.font-required > span{
	margin-left: 0.5em;
	font-size: 14px !important;
	color: var(--font-required-color);
}
.mgn-t-30{
	margin-top: 30px;
}

.font-12{
	font-size: 12px;
}
.mgn-0{
	margin: 0;
}


header {
	border-bottom: 1px solid #adadad;
	position: relative;
}

header .user-menubox{
	display: flex;
	gap: 1.5em;
	position: absolute;
	top: 50%;
	right: 2%;
	transform: translateY(-50%);
}

header .user-menubox a{
	text-decoration: none;
	color: var(--font-main-color);
	display: flex;
	align-items: center;
	font-size: 14px;
}
header .user-menubox .user{
	gap: 0.5em;
	line-height: 1;
}
header .user-menubox .user span{
	margin-right: 0.3em;
}
header .user-menubox .user i::before{
	content: '';
	width: 0.7em;
	height: 0.7em;
	display: inline-block;
	border-right: 1px solid var(--font-main-color);
	border-bottom: 1px solid var(--font-main-color);
	transform: rotate(45deg) translateY(-50%);
}

.header-imgbox {
	max-width: 200px;
	width: 80%;
	padding: 0px 0 0px 10px;
	text-align: center;
}

.header-imgbox img {
	width: 100%;
}

.form-inner {
	max-width: 300px;
	width: 85%;
	margin: 0 auto;
}
.form-inner--mid{
	width: 90%;
	max-width: 342px;
	margin: 0 auto;
}
.form-inner--lx{
	width: 90%;
	margin: 0 auto;
}
.form-body{
	padding-bottom: 5%;
}
.form-body h2 {
	margin: 3em 0;
	font-family: var(--font-family);
	font-size: 22px;
	text-align: center;
	line-height: 1;
	color: var(--font-main-color);
}

.form-body a {
	color: var(--font-main-color);
	font-family: var(--font-family);
	font-size: 14px;
}
.form-body select{
	width: 100%;
	padding: 0.2em 1em 0.2em 0.5em;
	border: 1px solid var(--border-color);
	border-radius: 3px;
	font-size: 18px;
	font-family: var(--font-family);
	appearance: none;
}
.form-body .select-wrapper{
	position: relative;
}
.form-body .select-wrapper::after{
	content: '';
	width: 0.5em;
	height: 0.5em;
	display: inline-block;
	border-right: 1px solid var(--font-main-color);
	border-bottom: 1px solid var(--font-main-color);
	position: absolute;
	top: 50%;
	right: 1em;
	transform: translateY(-80%) rotate(45deg);
	
}
.form-body__flex{
	display: flex;
}
.form-body__flex > div{
	flex-grow: 1;
}
.form-body__bg-card{
	background: var(--font-sub-color);
	padding: 0.6em 1em;
	border-radius: 3px;
}
.form-body__bg-card table{
	width: 100%;
}
.form-body__input-group>div {
	margin-bottom: 5%;
}

.form-body__input-group>div span {
	display: block;
	font-family: var(--font-family);
	font-size: 18px;
}

.form-body__input-group>div input {
	font-size: 18px;
	width: 100%;
	padding: 0.25em;
	border: 1px solid var(--border-color);
	border-radius: 3px;
	display: block;
}
.form-body__input-group>div input[type="date"]{
	width: auto;
}
.form-body__btn-group {
	margin: 0 auto;
	max-width: 300px;
	display: flex;
	flex-flow: column;
}

.form-body__btn-group .btn {
	font-size: 18px;
	font-family: var(--font-family);
	background-color: var(--btn-color);
	color: var(--font-sub-color);
	padding: 1em 0;
	border-radius: 3px;
	margin-top: 10%;
	text-align: center;
	text-decoration: none;
	line-height: 1;
	cursor: pointer;
	border: 1px solid var(--btn-color);
	transition : 0.5s;
}
.form-body__btn-group .btn:hover {
	border: 1px solid var(--btn-color);
	background-color: #fff;
	color: var(--btn-color);
	transition : 0.5s;
}

.form-body__btn-group .btn--next {
	position: relative;
	font-size: 18px;
	font-family: var(--font-family);
	background-color: var(--btn-color);
	color: var(--font-sub-color);
	padding: 1em 0;
	border: 1px solid var(--btn-color);
	border-radius: 3px;
	margin-top: 10%;
	text-align: center;
	text-decoration: none;
	line-height: 1;
	cursor: pointer;
	transition : 0.5s;
}
.form-body__btn-group .btn--next:hover {
	background-color: var(--font-sub-color);
	color: var(--btn-color);
	border: 1px solid var(--btn-color);
	transition : 0.5s;
}
.form-body__btn-group .btn--next::before{
	content: '';
	position: absolute;
	top: 50%;
	right: 1.3em;
	transform: translate(0, -50%) rotate(-45deg);
	display: inline-block;
	width: 0.8em;
	height: 0.8em;
	border-right: 1px solid var(--font-sub-color);
	border-bottom: 1px solid var(--font-sub-color);
	transition : 0.5s;
}
.form-body__btn-group .btn--next:hover::before{
	border-right: 1px solid var(--btn-color);
	border-bottom: 1px solid var(--btn-color);
	transition : 0.5s;
}
.form-body__btn-group .btn--prev {
	position: relative;
	font-size: 18px;
	font-family: var(--font-family);
	background-color: var(--font-sub-color);
	color: var(--font-main-color);
	padding: 1em 0;
	border: 1px solid var(--font-main-color);
	border-radius: 3px;
	margin-top: 10%;
	text-align: center;
	text-decoration: none;
	line-height: 1;
	cursor: pointer;
	transition : 0.5s;
}
.form-body__btn-group .btn--prev:hover {
	border: 1px solid var(--font-main-color);
	background-color: var(--btn-color);
	color: var(--font-sub-color);
	transition : 0.5s;
}
.form-body__btn-group .btn--prev::before{
	content: '';
	position: absolute;
	top: 50%;
	left: 1.3em;
	transform: translate(0, -50%) rotate(-45deg);
	display: inline-block;
	width: 0.8em;
	height: 0.8em;
	border-top: 1px solid var(--font-main-color);
	border-left: 1px solid var(--font-main-color);
	transition : 0.5s;
}
.form-body__btn-group .btn--prev:hover::before{
	content: '';
	position: absolute;
	top: 50%;
	left: 1.3em;
	transform: translate(0, -50%) rotate(-45deg);
	display: inline-block;
	width: 0.8em;
	height: 0.8em;
	border-top: 1px solid var(--font-sub-color);
	border-left: 1px solid var(--font-sub-color);
	transition : 0.5s;
}

.form-reservation h2{
	margin: 2em 0;
}
.form-reservation p{
	font-size: 18px;
	margin: 2em 0;
}


/*ホバーしたらドロップダウンメニューを表示するナビゲーション*/
ul {
	padding: 0;
	list-style: none;
}

a {
	text-decoration: none;
}

.list {
	display: flex;
	justify-content: center;
	gap: 2em;
	padding:10px;
	margin-bottom: 0;
}
.list__item {
	padding-bottom: 5px;
	position: relative;
}
.list__item::before {
	background: #005D77;
	content: '';
	width: 100%;
	height: 2px;
	position: absolute;
	left: 0;
	bottom: 0;
	margin: auto;
	transform-origin: center top;
	transform: scale(0, 1);
	transition: transform .3s;
}
.list__item:hover::before {
	transform-origin: center top;
	transform: scale(1, 1);
}
.online a{
	color: #005D77!important;
	font-weight: bold;
}
footer {
	background-color: var(--bg-color);
	color: var(--font-sub-color);
	font-family: var(--font-family);
}

footer > div {
	text-align: center;
}
footer .footer-copyright {
	padding: 8px 0;
	border-top: 1px solid var(--font-sub-color);
	line-height: 1;
}

footer small {
	font-size: 12px;
}
.flexbox{
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
}


.sales{
	text-align: center;
	margin-top: 30px;
}
.wh-box{
	display: inline-block;
	background-color: #fff;
	padding: 10px 10px;
	border: 2px solid #005D77;
	width: 200px;
}
.wh-box p{
	padding: 0;
	margin: 0;
}

.sales_bold{
	font-weight: bold;
	font-size: 20px;
}
.sales_registration{
	background-color: #fff;
	margin: 40px;
	padding:  0 10px 5px;
	border-top: solid 3px #005D77;
}
.sales_registration_table{
	border-collapse: collapse;
	width: 100%;
	margin-top: 20px;
}
.sales_registration_table,.sales_registration_table th,.sales_registration_table td{
	border:1px solid #808080;
	background-color: #fff;
	padding: 3px 5px;
}
.registration_top{
	width: 100%;
}
.category-title{
	font-weight: bold;
	font-size: 20px;
	margin: 0 auto;
	margin-top: 10px;
	border-left: 5px solid #005D77;
	padding: 1rem;
	display: inline-block;
}

.newadd-btn input{
	border: 2px solid #005D77;
	background-color: #005D77;
	color: #fff;
	transition : 0.5s;
}
.newadd-btn input:hover{
	border: 2px solid #005D77;
	background-color: #fff;
	color: #005D77;
	transition : 0.5s;
}
.whbg{
	background-color: #fff;
	margin: 40px;
	padding:  0 10px 5px;
}

.add_table{
	border-collapse: collapse;
	margin-top: 20px;
	width: 100%;
}
.add_table,.add_table th,.add_table td{
	border:1px solid #808080;
	background-color: #fff;
	padding: 3px 5px;
}
.add_table th{
	width: 350px;
	vertical-align: middle;
}
.add_table td input,.add_table td textarea{
	width: 100%;
	field-sizing: content;
	min-height: min-content;
}
.add_table td input[type=time],.add_table td input[type=date],.add_table td input[type=radio]{
	width: unset;
}
.add_table td input[type=radio]{
	vertical-align: middle; 
}
.add-btn-area{
	text-align: center;
}
.edit-btn,.newadd-btn{
	display: inline-block;
	margin: 30px;
}
.edit-btn input,.newadd-btn input{
	width: 200px;
}

.reserv_table{
	border-collapse: collapse;
	margin-top: 20px;
	width: 100%;
}
.reserv_table,.reserv_table th,.reserv_table td{
	border:1px solid #808080;
	background-color: #fff;
	padding: 3px 5px;
}

.search_table{
	border-collapse: collapse;
	margin-top: 20px;
}
.search_table,.search_table th,.search_table td{
	background-color: #fff;
	padding: 3px 5px;
}
.search_table td input{
	width: 400px;
}
.search_table td input[type=radio]{
	width: unset;
}
.search_table td label{
	margin-right: 20px;
}

.radio-plain {
	width: 20px;
	height: 20px;
	position:relative;
	top:-1px;
}

.user-point{
	border: 3px solid #005D77;
	border-radius: 20px;
	padding:0 0 20px 20px;
	margin-left: 20px;
	width: 600px;
}
.user-point td p{
	border-left: 5px solid #005D77;
	margin: 0;
	padding-left: 10px;
	font-weight: 600;
}

.property{
	margin: 20px 0 10px;
	font-size: 18px;
}

.group-btn{
	display: inline-block;
}

.display-order{
	width:60px;
}


.add_table img{
	width: 200px;
}
















