@charset "utf-8";

/* Parts */
.ico_question {
	margin-left: 4px;
}
.ico_question > span > img {
	width: 23px;
	height: 23px;
}

.inputWrap {
	display: flex;
	justify-content: flex-start;
	align-items: flex-end;
	width: 100%;
	max-width: 345px;
	margin: 0 auto;
	font-size: 1.4286rem/*20px*/;
	font-weight: bold;
}
.inputWrap .input {
	width: calc(100% - 52px);
}
.inputWrap .input + span {
	margin-left: 12px;
}
.input {
	padding: 10px 14px;
	border-radius: 10px;
	border: 2px solid #D3D3D3;
	vertical-align: bottom;
	text-align: right;
	font-size: 1.2858rem/*18px*/;
	font-weight: bold;
	color: #333;
}
.input.-err,
.select.-err {
	border: 2px solid #E60000;
	background-color: #FCF4F4;
}
::placeholder {color: #9E9E9E;}
.inputBox01 {
	width: 100%;
	margin: 0 auto;
	max-width: 345px;
	padding: 10px 10px;
	border: 2px solid #D3D3D3;
	background-color: #fff;
	font-size: 1.2858rem/*18px*/;
	font-weight: bold;
	color: #333;
}
.inputBox02 {
	display: block;
	padding: 10px 14px;
	border-radius: 10px;
	background: url(../img/ico_calendar.svg) right 13px center no-repeat;
	background-size: 29px 29px;
	text-align: left;
	cursor: pointer;
}
.inputBox02.show {
	border-radius: 10px 10px 0 0;
}
.inputDate {
	margin: 0;
	padding: 0;
	width: auto;
	border: none;
	border-radius: 0;
	outline: none;
	text-align: center;
	font-size: 1.2858rem/*18px*/;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	cursor: pointer;
}

.select {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	width: 100%;
	max-width: 345px;
	padding: 10px 10px;
	border-radius: 10px;
	border: 2px solid #D3D3D3;
	background-color: #fff;
	background: url(../img/arr.svg) right 12px center no-repeat;
	background-size: 16px 10px;
	font-size: 1.2858rem/*18px*/;
	font-weight: bold;
	color: #333;
}
.select.disabled {
	border-radius: 0;
	background-image: none;
	opacity: 1;
	cursor: default;
}

.txtWrap {
	width: 100%;
	max-width: 345px;
	margin: 0 auto;
}

[class*=btnType].-sim {
	padding: 16px 10px;
	border-radius: 1.6667em;
	font-size: 1.2858rem/*18px*/;
}
[class*=btnType].-sim::before {
	content: none !important;
}
.btnType01.-sim {
	border: 1px solid #C4C4C4;
	box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.16);
	color: #000;
}
.btnType01.-sim:active {color: #000;}

[id*=errBlock]:not(#errBlock_result) {
	color: #E60000;
	text-align: left;
}

[id*=errBlock]:not(#errBlock_result) > p {
	position: relative;
	padding-left: 37px;
}
[id*=errBlock]:not(#errBlock_result) > p::before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 9px;
	width: 20px;
	height: 18px;
	background: url(../img/ico_caution.svg) 0 0 no-repeat;
	background-size: 100%;
}
#errBlock_result.hide {display: none;}
#result.err {display: none;}
.errTxt01 {
	margin-bottom: 25px;
	color: #E60000;
	font-weight: bold;
	font-size: 1.7143rem/*24px*/;
}

#total, #monthly, #conditions {
	width: 100%;
	max-width: 384px;
	margin-right: auto;
	margin-left: auto;
}

#total {
	font-weight: bold;
	font-size: 1.2858rem/*18px*/;
}
#total > div {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#total .totalBlock {
	padding-bottom: 5px;
	border-bottom: 2px solid #E60000;
}
#total .totalBlock .total {
	font-size: 1.4286rem/*20px*/;
}
#total .totalBlock .total > span {
	font-size: 1.8572rem/*26px*/;
}
#total > div > span:first-child {padding-left: 20px;}
#total > div > span:last-child {padding-right: 20px;}
#total .dot {
	padding-top: 15px;
	padding-bottom: 15px;
	border-top: 2px dotted #D8D8D8;
}
#total .top {padding-top: 15px;}
#total .bottom {padding-bottom: 15px;}

#conditions {font-size: 1.1429rem/*16px*/;}
#conditions th {white-space: nowrap}
#conditions td {vertical-align: middle;}

.mlrAuto {
	margin-left: auto;
	margin-right: auto;
}

.fixedblock {
	position: fixed;
	bottom: 0;
	width: 100%;
	padding: 10px 0;
	background-color: rgba(144, 144, 144, 0.8);
	text-align: center;
}
.fixedblock [class*=btnType].-sim {
	padding: 9px;
}
.fixedblock.hide {
	display: none;
}
.result #pageTopArea {
	bottom: 90px !important;
}
.result #footerArea {
	padding-bottom: 64px;
}

@media screen and (max-width: 640px) {
	.select.s1 {
		padding: 12px 10px;
		font-size: 1.0715rem/*15px*/;
	}
}

/*---------------
monthly
------------------*/
.monthlyItem {
	border: 1px solid #CFCFCF;
}
.monthlyItem + .monthlyItem {
	border-top: none;
}
.monthlyItem .timesBlock {
	position: relative;
	padding: 8px;
	border-bottom: 1px solid #CFCFCF;
	background-color: #F6F6F6;
	font-weight: bold;
	font-size: 1.2858rem/*18px*/;
}
.monthlyItem .timesBlock .times {
	position: absolute;
	top: 50%;
	left: 11px;
	min-width: 43px;
	padding: 3px 0;
	border-radius: 4px;
	background-color: #F16464;
	text-align: center;
	color: #fff;
	font-weight: bold;
	font-size: 0.8572rem/*12px*/;
	transform: translateY(-50%);
}
.monthlyItem .timesBlock .times_last > span {
	position: absolute;
	top: 50%;
	right: 11px;
	display: inline-block;
	padding: 3px 6px;
	border-radius: 4px;
	background-color: #F16464;
	text-align: center;
	color: #fff;
	font-weight: bold;
	font-size: 0.8572rem/*12px*/;
	transform: translateY(-50%);
}

[class*="acdCnt"] > .acdCheck:checked ~ .acdLabel ~ .acdContent {
	max-height: 100000px;
	padding: 26px 18px;
}

.monthlyItem .totalBlock,
.monthlyItem .paymentBlock,
.monthlyItem .commissionBlock,
.monthlyItem .balance_nextBlock,
.monthly_total .totalBlock,
.monthly_total .paymentBlock,
.monthly_total .commissionBlock {
	display: flex;
}
.monthlyItem .paymentBlock,
.monthlyItem .commissionBlock,
.monthly_total .paymentBlock,
.monthly_total .commissionBlock {
	justify-content: flex-end;
}
.monthlyItem .totalBlock > span,
.monthlyItem .balance_nextBlock > span,
.monthlyItem .paymentBlock > span:last-child,
.monthlyItem .commissionBlock > span:last-child,
.monthly_total .totalBlock > span,
.monthly_total .paymentBlock > span:last-child,
.monthly_total .commissionBlock > span:last-child {
	width: 50%;
}
.monthlyItem .totalBlock > span:first-child,
.monthlyItem .balance_nextBlock > span:first-child,
.monthly_total .totalBlock > span:first-child {
	padding: 6px 9px;
	text-align: left;
	font-weight: bold;
}
.monthlyItem .totalBlock > span:last-child,
.monthlyItem .balance_nextBlock > span:last-child,
.monthly_total .totalBlock > span:last-child {
	padding: 6px 9px;
	border-left: 1px solid #CFCFCF;
	text-align: right;
	font-size: 1.1429rem/*16px*/;
}
.monthlyItem .balance_nextBlock > span:first-child {
	border-top: 1px solid #CFCFCF;
}
.monthlyItem .balance_nextBlock > span:last-child {
	border-top: 1px solid #CFCFCF;
	font-size: 1rem;
}
.monthlyItem .paymentBlock > span:first-child,
.monthlyItem .commissionBlock > span:first-child,
.monthly_total .paymentBlock > span:first-child,
.monthly_total .commissionBlock > span:first-child {
	width: 30%;
	padding: 1px 9px;
	border-left: 1px solid #CFCFCF;
	text-align: left;
	font-weight: bold;
	font-size: 0.8572rem/*12px*/;
}
.monthlyItem .paymentBlock > span:last-child,
.monthlyItem .commissionBlock > span:last-child,
.monthly_total .paymentBlock > span:last-child,
.monthly_total .commissionBlock > span:last-child {
	padding: 1px 9px;
	border-left: 1px solid #CFCFCF;
	text-align: right;
	font-size: 0.8572rem/*12px*/;
}
.monthlyItem .paymentBlock > span:first-child,
.monthly_total .paymentBlock > span:first-child {
	padding: 7px 9px 1px 15px;
	border-top: 1px solid #CFCFCF;
}
.monthlyItem .paymentBlock > span:last-child,
.monthly_total .paymentBlock > span:last-child {
	padding-top: 7px;
	border-top: 1px solid #CFCFCF;
}
.monthlyItem .commissionBlock > span:first-child,
.monthly_total .commissionBlock > span:first-child {
	padding: 1px 9px 7px 15px;
}
.monthlyItem .commissionBlock > span:last-child,
.monthly_total .commissionBlock > span:last-child {
	padding-bottom: 7px;
}
.monthlyItem .balance_nextBlock > span:first-child,
.monthlyItem .balance_nextBlock > span:last-child {
	padding: 8px 9px;
}

.monthly_total {
	margin-top: 20px;
	font-weight: bold;
}
.monthly_total .totaltitleBlock {
	padding: 8px;
	border: 1px solid #CFCFCF;
	background-color: #FDF1F1;
	font-size: 1.2858rem/*18px*/;
}
.monthly_total .r {
	border: 1px solid #CFCFCF;
	border-top: none;
}

/*---------------
calendar
------------------*/
.calendarBlock01 {
	margin: 0 auto;
	max-width: 345px;
	max-height: 0;
	padding: 0 18px 0;
	border-left: 2px solid #D3D3D3;
	border-right: 2px solid #D3D3D3;
	border-bottom: 2px solid #D3D3D3;
	border-radius: 0 0 10px 10px;
	background-color: #fff;
	color: #333;
	overflow: hidden;
	opacity: 0;
	transition: padding .2s, max-height .2s, opacity .3s;
}
.inputBox02.show + .calendarBlock01 {
	max-height: 1000px;
	padding: 13px 18px 20px;
	opacity: 1;
}

#calendar-prev, #calendar-next {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	position: relative;
	width: 18px;
	height: 18px;
	padding: 0;
	border-radius: 50%;
	border: none;
	background-color: #E60000;
	font-size: 0;
}
#calendar-prev {
	transform: rotate(45deg);
}
#calendar-next {
	transform: rotate(-45deg);
}
#calendar-prev::before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 8px;
	height: 8px;
	border-left: 2px solid #fff;
	border-bottom: 2px solid #fff;
	transform: translateX(calc(-50% + 1px)) translateY(calc(-50% - 1px));
}
#calendar-next::before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 8px;
	height: 8px;
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
	transform: translateX(calc(-50% - 1px)) translateY(calc(-50% - 1px));
}
[id*=calendar].hide {
	background-color: #D3D3D3 !important;
	cursor: default;
	pointer-events: none;
}

#select-calendar {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: none;
	border-radius: 0;
	background-color: #fff;
	background: url(../img/arr.svg) center bottom no-repeat;
	background-size: 16px 10px;
	outline: none;
	font-size: 1.2858rem/*18px*/;
	font-weight: bold;
	text-align: center;
	color: #333;
}

.cal-month {
	margin: 13px auto 0;
}
.cal-month thead th {
	padding-bottom: 8px;
}
.cal-month thead .ym {display: none;}
.cal-month th {
	font-size: 1.1429rem/*16px*/;
}
.cal-month td {
	width: 44px;
	height: 44px;
	padding: 0;
	border: 1px solid #ddd;
	background: #eee;
	font-size: 1.1429rem/*16px*/;
	vertical-align: middle;
}
.cal-month a {
	display: block;
	height: 100%;
	text-decoration: none;
}
.cal-month td > span {
	opacity: .3;
}
.cal-month span {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 100%;
	background: #fff;
	color: #000;
}
.cal-day-holiday span {
	color: #E60000;
}
.cal-month .cal-day-holiday {
	color: #E60000;
}
.cal-month .sat,
.cal-day-sat span {
	color: #627AFF;
}
.cal-month .selected span {
	background-color: #F16464;
	color: #fff;
}

@media screen and (max-width: 640px) {
	#select-calendar {
		margin: 0 10px;
		padding: 10px 0 10px;
	}
}

/*---------------
modal
------------------*/
.modalOverlay {
	overflow: hidden;
}
.modalWrap .closeBtn {
	position: absolute;
	top: -26px;
	right: 0;
	padding-right: 16px;
	color: #fff;
	font-weight: bold;
}
.modalWrap .closeBtn > span {
	position: absolute;
	top: 50%;
	right: 0;
	display: block;
	width: 10px;
	height: 10px;
	transform: translateY(-50%) rotate(45deg);
}
.modalWrap .closeBtn > span::before,
.modalWrap .closeBtn > span::after {
	content: '';
	display: block;
	position: absolute;
	background-color: #fff;
}
.modalWrap .closeBtn > span::before {
	top: 50%;
	left: 0;
	width: 10px;
	height: 2px;
	margin-top: -1px;
}
.modalWrap .closeBtn > span::after {
	top: 0;
	left: 50%;
	width: 2px;
	height: 10px;
	margin-left: -1px;
}
.modalContent {
	top: calc(50% - 30px);
	margin-top: 30px;
	margin-bottom: 20px;
	max-height: calc(100vh - 50px);
	transform: translateY(calc(-50% + 5px));
}
.modalCnt {
	position: relative;
	padding: 36px 18px 30px;
	max-height: calc(100vh - 130px);
	overflow-y: hidden;
}
.modalWrap .inr {
	overflow-y: auto;
	max-height: calc(100vh - 190px);
}
.modalCnt.modalSelectBrand {
	padding: 36px 15px 24px;
}
.modalWrap .modalSelectBrand .inr {
	padding: 0 3px 6px;
}

.modalWrap .inr::-webkit-scrollbar{
	width: 10px;
}
.modalWrap .inr::-webkit-scrollbar-track {
	background: #fff;
	/* border-left: solid 1px #ececec; */
}
.modalWrap .inr::-webkit-scrollbar-thumb {
	background: #ccc;
	border-radius: 10px;
	-webkit-box-shadow: inset 0 0 0 2px #fff;
	box-shadow: inset 0 0 0 2px #fff;
}

@media screen and (max-width: 640px) {
	.modalContent {
		width: 98%;
	}
}
