#main {
	display: none;
}

button {
	align-items: center;
	appearance: none;
	background-color: transparent;
	border: none;
	cursor: pointer;
	display: flex;
	justify-content: center;
	outline: none;
	padding: 0;
}

#start {
	align-items: center;
	bottom: 0;
	display: flex;
	flex-direction: column;
	height: 100vh;
	justify-content: center;
	overflow: hidden;
	position: relative;
	top: 0;
	width: 100%;
}

button.start {
	align-items: center;
	border: 1rem dashed #333;
	border-radius: 5rem;
	box-shadow: 5rem 5rem 0 #333;
	color: #333;
	display: flex;
	font-size: 18rem;
	font-weight: bold;
	height: 90rem;
	justify-content: center;
	margin: 10rem auto;
	min-height: 32rem;
	text-align: center;
	width: 200rem;
	word-break: auto-phrase;
	transition: 0.3s ease-in-out;
}

button.start:active {
	background: #333;
	box-shadow: 0 0 0;
	color: #FFF;
	transform: translate(5rem, 5rem);
}

.header {
	position: relative;
}

.step__wrap {
	align-items: center;
	display: flex;
	font-size: 14rem;
	height: 20rem;
	justify-content: space-between;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 2;
}

#step1,
#step2,
#step3,
#step4,
#step5 {
	align-items: center;
	background: #fff;
	border-bottom: 1rem solid #2c3338;
	border-left: 0 solid transparent;
	border-right: 0 solid transparent;
	border-top: 1rem solid #2c3338;
	display: flex;
	height: 20rem;
	justify-content: center;
	position: relative;
	text-align: center;
	z-index: 0;
}

#step1,
#step5 {
	width: 17%;
}

#step2,
#step3,
#step4 {
	width: 22%;
}

#step2::before,
#step3::before,
#step4::before,
#step5::before {
	content: "";
	display: inline-block;
	left: 0;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10rem 0 10rem 8rem;
	border-color: transparent transparent transparent #2c3338;
	position: absolute;
	z-index: 1;
}

#step1::after,
#step2::after,
#step3::after,
#step4::after {
	content: "";
	display: inline-block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10rem 0 10rem 8rem;
	border-color: transparent transparent transparent #fff;
	position: absolute;
	right: -8rem;
	z-index: 2;
}

[id*="step"].active {
	background: #2c3338 !important;
	color: #fff !important;
}

[id*="step"].active::before {
	z-index: 3;
}

[id*="step"].active::after {
	border-color: transparent transparent transparent #2c3338 !important;
}

#date {
	align-items: center;
	background: #fae3d9;
	display: flex;
	flex-wrap: nowrap;
	font-size: 18rem;
	gap: 10rem;
	height: 50rem;
	justify-content: center;
	margin-bottom: 10rem;
	padding: 2rem;
	position: absolute;
	top: 20rem;
	width: 100%;
	z-index: 2;
}

#date input {
	border: none;
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	width: 10em;
}

#date input[type="time"] {
	max-width: 5em;
}

.scroll__wrap {
	margin: 0 auto 100rem;
	max-width: 1800rem;
	overflow-x: auto;
	width: 100%;
}

.scroll__wrap table {
	margin: auto;
	width: max-content;
}

.small__wrap {
	background: #fff;
	height: calc(100vh - 140rem);
	margin: auto;
	padding: 0 0 70rem;
	position: relative;
	top: 70rem;
	width: 100%;
}

.toggle {
	background: #61c0bf;
	border-bottom: 1rem solid #fff;
	color: #2c3338;
	font-size: 30rem;
	height: 70rem;
	line-height: 70rem;
	margin: 0;
	position: relative;
	text-align: center;
	z-index: 1;
}

.toggle::after {
	border-left: 10rem solid transparent;
	border-right: 10rem solid transparent;
	border-top: 16rem solid #2c3338;
	bottom: 0;
	content: "";
	display: block;
	height: 0;
	position: absolute;
	right: 16rem;
	top: 28rem;
	width: 0;
}

.toggle.active::after {
	transform: rotate(180deg);

}

#save {
	display: flex;
	flex-wrap: wrap;
	height: 100%;
	padding-bottom: 70rem;
}

#nav__wrap {
	box-shadow: 3rem 0 10px 0px rgba(0, 0, 0, 0.2);
	display: flex;
	flex-direction: column;
	height: calc(100vh - 270rem);
	max-width: 35%;
	overflow-y: auto;
	width: 100%;
}

#nav__wrap li {
	align-items: center;
	background: #61c0bf;
	box-shadow: 3rem 0 10px 0px rgba(0, 0, 0, 0.2);
	color: #2c3338;
	display: flex;
	flex: 1 1 0%;
	font-size: 20rem;
	justify-content: space-between;
	line-height: 1;
	margin-bottom: 1px;
	padding: 20rem 10rem;
	position: relative;
}

#nav__wrap li.active {
	filter: hue-rotate(45deg);
	font-size: 110%;
	font-weight: bold;
}

#nav__wrap li.active::after {
	border-bottom: 10rem solid transparent;
	border-left: 16rem solid #2c3338;
	border-top: 10rem solid transparent;
	content: "";
	display: block;
	height: 0;
	width: 0;
}

#content__wrap {
	height: calc(100vh - 270rem);
	max-width: 65%;
	overflow-y: auto;
	padding: 0 10rem;
	width: 100%;
}

ul.content.save {
	flex-wrap: wrap;
}

ul.content.save {
	display: none;
	flex-wrap: wrap;
	gap: 5rem 10rem;
	height: max-content;
	justify-content: flex-start;
	padding: 10rem 0;
}

ul.content.save li {
	flex: 1 1 calc(50% - 5rem);
	margin-top: 5rem;
	max-width: calc(50% - 5rem);
	min-height: 50rem;
	padding: 0 5rem;
	width: 100%;
}

ul.content.save li.description {
	font-size: 12rem;
	font-style: italic;
	margin-top: -10rem;
	width: 100%;
}

ul.save li label input {
	display: none;
}

ul.save li label span {
	align-items: center;
	background: #fff;
	border: 1rem dashed #333;
	border-radius: 5rem;
	box-shadow: 5rem 5rem 0 #333;
	color: #333;
	display: flex;
	font-size: 22rem;
	font-weight: bold;
	height: 100%;
	justify-content: center;
	min-height: 64rem;
	text-align: center;
	width: 100%;
	word-break: auto-phrase;
	transition: 0.3s ease-in-out;
}

ul.save li label input:checked+span {
	background: #333 !important;
	box-shadow: 0 0 0;
	color: #FFF !important;
	transform: translate(5rem, 5rem);
}

ul.save li label[class^="man"] span {
	background: #4bbcf4 !important;
	color: var(--color-white) !important;
}

ul.save li label[class^="woman"] span {
	background: #ffb6b9 !important;
	color: var(--color-white) !important;
}

ul.items {
	display: none;
	flex-wrap: wrap;
	gap: 10rem 20rem;
	justify-content: flex-start;
	overflow: hidden;
	padding: 20rem 0;
	transition: max-height 0.5s ease-out;
	transition: opacity 0.5s ease-out, max-height 0.5s ease-out;
}

ul.items li {
	border: 1rem solid #2b333880;
	border-radius: 5rem;
	box-shadow: 3rem 0 10px 0px rgba(0, 0, 0, 0.2);
	flex: 1 1 calc(50% - 10rem);
	font-size: 20rem;
	gap: 10rem;
	line-height: 1.5;
	margin: 5rem 0;
	max-width: calc(50% - 10rem);
	width: calc(100% - 10rem);
}

ul.items li input {
	align-items: center;
	background: var(--color-black3);
	border-radius: 2rem;
	color: var(--color-white);
	display: flex;
	font-size: 18px;
	font-weight: bold;
	height: 100%;
	justify-content: space-evenly;
	margin: 0 5rem;
	padding: 0;
	text-align: center;
	width: 2em;
}

dl.calc {
	display: flex;
	flex-direction: column;
	gap: 10rem;
	height: 100%;
	justify-content: space-between;
	margin: 0;
	padding: 10rem 0;
	width: 100%;
}

dl.calc dt {
	line-height: 1;
	overflow-wrap: break-word;
	padding: 0 5rem;
	text-align: center;
	word-break: auto-phrase;
}

dl.calc dt .price {
	display: block;
	font-size: 24rem;
	font-weight: bold;
	line-height: 1.25;
	word-break: auto-phrase;
}

@media(max-width:480px) {
	ul.items {
		gap: 0;
	}

	ul.items li {
		flex: 1 1 100%;
		max-width: 100%;
	}

	dl.calc dt {
		text-align: left;
	}

	dl.calc dt .price {
		display: flex;
		justify-content: space-between;
	}

	dl.calc dt .price span {
		display: block;
		font-size: 20rem;
	}

}

dl.calc dd {
	align-items: center;
	display: flex;
	flex-direction: column;
	height: auto;
	margin: 0 0 0 auto;
	width: 100%;
}


dl.calc dd .changebtns {
	align-items: center;
	display: flex;
	flex-wrap: nowrap;
	height: 100%;
	justify-content: space-evenly;
	margin-left: auto;
	max-width: 8em;
	width: 100%;
}


#confirms {
	background: #2c3338;
	bottom: 145rem;
	box-shadow: 0px 2rem 2rem 0px rgba(0, 0, 0, 0.5), inset 0px -3rem 6rem -2rem rgba(0, 0, 0, 0.3);
	display: none;
	font-size: 20rem;
	margin: 0;
	min-width: 50%;
	padding: 10rem;
	position: fixed;
	right: 0;
	width: max-content;
	z-index: 2;
}

#confirms:empty {
	display: none;
}

#confirm {
	background: #2c3338;
}

#confirm dl {
	align-items: center;
	color: #fff;
	display: flex;
	font-weight: bold;
	justify-content: space-between;
	margin: 0;
	padding: 5rem;
}

#confirm dl:first-child {
	padding-top: 10rem;
}

#confirm dl:last-child {
	padding-bottom: 10rem;
}

#confirm dl dt {
	line-height: 1;
}

#confirm dl dt small {
	display: block;
	font-weight: normal;
}

#resluts dl dd,
#confirm dl dd {
	margin: 0;
}

#confirm dl dd strong {
	font-size: 28rem;
}

#results {
	background: #fff;
	border-radius: 5rem;
	bottom: 0rem;
	color: #2c3338;
	font-size: 36rem;
	font-weight: bold;
	line-height: 1.25;
	margin: 20rem auto;
	padding: 5rem 10rem;
	width: calc(100% - 10rem);
}

#results:empty {
	display: none;
}

#results dl {
	align-items: center;
	display: flex;
	justify-content: space-between;
	margin: 0;
	word-break: keep-all;
}

#results dl dd {
	margin: 0;
}

.calculate__wrap {
	align-items: center;
	background: #2c3338;
	bottom: 70rem;
	display: flex;
	height: 70rem;
	padding: 10rem 10rem 5rem;
	position: fixed;
	width: 100%;
	z-index: 1;
}

#calculate {
	align-items: center;
	background: #555;
	border-radius: 5rem;
	color: white;
	display: flex;
	font-size: 30rem;
	font-weight: bold;
	height: 40rem;
	justify-content: flex-end;
	margin: auto;
	max-width: 10em;
	padding: 0 15rem 0 0;
	text-align: right;
	width: 100%;
}

#calculate::before {
	color: #fff;
	content: '合計';
	font-size: 20rem;
	margin: 0 auto 0 10rem;
}

.minus,
.plus {
	background: #e3eaed;
	box-shadow: 0px 2rem 2rem 0px rgba(0, 0, 0, 0.5), inset 0px -3rem 6rem -2rem rgba(0, 0, 0, 0.3);
	border-radius: 50%;
	font-size: 36rem;
	font-weight: bold;
	height: 36rem;
	line-height: 36rem;
	/*
	position: absolute;
	*/
	top: 1rem;
	right: 3rem;
	transition: all 0.3s;
	width: 36rem;
}

.minus:hover,
.plus:hover {
	transform: scale(1.05);
}

.minus {
	border: 1rem solid #e92b2c;
	color: #e92b2c;
}

.plus {
	border: 1rem solid #3382f8;
	color: #3382f8;
}

.change__wrap {
	content: '';
	display: inline-block;
	height: 40rem;
	position: relative;
	width: 42rem;
	border-radius: 100vh;
	background: #f2f5f6;
	background: linear-gradient(to bottom, #f2f5f6 0%, #e3eaed 37%, #96a1a5 100%);

	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f2f5f6', endColorstr='#96a1a5', GradientType=0);
}

.btns {
	background: #2c3338;
	bottom: 0rem;
	color: #fff;
	display: flex;
	flex-wrap: nowrap;
	gap: 10rem;
	height: 70rem;
	justify-content: space-around;
	line-height: 1;
	padding: 10rem 10rem 10rem 80rem;
	position: fixed;
	right: 0;
	width: 100%;
	z-index: 2;
}

button.clear,
#cart,
#saveBtn,
#customerBtn,
#inputBtn {
	align-items: center;
	border-radius: 50%;
	box-shadow: 0px 2rem 2rem 0px rgba(0, 0, 0, 0.5), inset 0px -3rem 6rem -2rem rgba(0, 0, 0, 0.3);
	display: none;
	height: 50rem;
	justify-content: center;
	width: 50rem;
}

button.clear {
	background: #3382f8;
	display: flex;
	margin: 0 auto 0 10rem;
	padding: 0 5rem 5rem 0;
}

#cart {
	background: #00d084;
	margin: 0 10rem 0 0;
	padding: 5rem 0 0 5rem;
}

#customerBtn {
	background: #f78da7;
	margin: 0 10rem 0 0;
	padding: 0 0 0;
}

#inputBtn {
	background: #ffa500;
	margin: 0 10rem 0 0;
	padding: 5rem 0 0 0;
}

#saveBtn {
	background: #cf2e2e;
	border-radius: 5rem;
	margin: 0 10rem 0 auto;
	padding: 5rem 0 0 0;
}

button svg {
	height: 40rem;
	width: 40rem;
}

#depositDisplay {
	align-items: center;
	background: #555;
	border-radius: 5rem;
	color: white;
	display: flex;
	font-size: 40rem;
	font-weight: bold;
	height: 60rem;
	justify-content: flex-end;
	margin-bottom: 20rem;
	padding: 10rem 15rem 10rem 0;
}

#depositDisplay::after {
	align-items: center;
	color: #fff;
	content: var(--after-content, "");
	display: flex;
	font-size: 40rem;
	height: 60rem;
	line-height: 1;
}

#checkout {
	background: #000;
	padding: 10rem;
}

#calculator {
	background: #ccc;
	border-radius: 20rem;
	box-shadow: 0px 2rem 2rem 0px rgba(0, 0, 0, 0.5), inset 0px -3rem 6rem -2rem rgba(0, 0, 0, 0.3);
	margin: auto;
	padding: 20rem;
	width: max-content;
}

.calculator-buttons {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 10rem;
	height: 390rem;
	margin: auto;
	width: 290rem;
}

.calculator-buttons button {
	align-items: center;
	background: #333;
	border: none;
	box-shadow: 0px 2rem 2rem 0px rgba(0, 0, 0, 0.5), inset 0px -3rem 6rem -2rem rgba(0, 0, 0, 0.3);
	border-radius: 50%;
	color: white;
	cursor: pointer;
	display: flex;
	font-size: 60rem;
	height: 90rem;
	justify-content: center;
	line-height: 60rem;
	margin: auto;
	padding: 10rem;
	width: 90rem;
}

.calculator-buttons button.clear {
	background: #6495ed;
}

.calculator-buttons button.equal {
	background: #ffa500;
	display: none;
}

textarea {
	font-size: 18px;
	min-height: 4em;
	width: 100%;
}





.monthly-archives {
	display: flex;
	font-size: 18px;
	gap: 10rem;
	justify-content: space-around;
}

.monthly-archives li {
	max-width: max-content;
	margin: 10rem 5rem;
	width: 100%;
}

.monthly-archives button {
	align-items: center;
	border: 1rem dashed #333;
	border-radius: 5rem;
	box-shadow: 5rem 5rem 0 #333;
	color: #333;
	display: flex;
	font-size: 18rem;
	font-weight: bold;
	justify-content: center;
	margin: auto;
	padding: 5rem 10rem;
	text-align: center;
	word-break: auto-phrase;
	transition: 0.3s ease-in-out;
}

.daily-archives {
	display: flex;
	flex-wrap: nowrap;
}

/*
.daily-archives {
	display: none;
}
*/
.active>.daily-archives {
	display: block;
}

#records__wrap {
	display: flex;
	flex-wrap: wrap;
	gap: 50rem;
	justify-content: space-between;
	margin: auto;
	max-width: 1600rem;
}

#records {
	max-width: 1000rem;
	margin: 0 auto;
	padding: 10rem;
	width: 100%;
}

#records table {
	border-collapse: collapse;
	box-sizing: border-box;
	min-width: max-content;
	width: max-content;
}

#records table thead th {
	background: #4bbcf4;
}

#records table,
#records table td,
#records table th {
	border: 1rem solid #595959;
}

#records table td,
#records table th {
	font-size: 16rem;
	padding: 5rem 10rem;
}

#records table th {
	color: #333;
	background-color: #DEE1E6;
}

#records table td.size {
	text-align: center;
}

#records table td.quantity,
#records table td.price {
	text-align: right;
}

#records table td.clientele {
	display: flex;
	flex-wrap: wrap;
	padding: 0;
}

#records table td.clientele ul.terms {
	align-items: center;
	display: flex;
	flex-direction: column;
	font-size: 12rem;
	justify-content: space-around;
	padding: 2rem;
	width: max-content;
}

#records table td.clientele ul.terms li {
	margin: 0;
}

.parent-term {
	font-size: 10rem;
}

#records table td.clientele ul.terms:nth-last-of-type() {}

#chart__wrap {
	display: none;
	max-width: 550rem;
	width: 100%;
}

.chartbtn__wrap {
	display: flex;
	justify-content: space-around;
	margin: 10rem auto;
}

.chartbtn__wrap button {
	background: #000;
	border-radius: 5rem;
	color: #fff;
	font-size: 18rem;
	padding: 5rem 10rem;
}

.result_list {
	background: #ccc;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-evenly;
	padding: 10rem;
}

.result_list h2 {
	border-bottom: 1rem dotted;
	margin: 0 auto 10rem;
	width: 100%;
}

.result_list h3 {
	border-bottom: 1rem dotted;
	font-size: 16rem;
	margin: 0 auto 10rem;
	text-align: center;
	width: 100%;
}

.result_list span {
	font-size: 14rem;
	margin: 5rem;
}