#optionList h3 {
	font-weight : bold;
	margin-bottom : 1em;
}
#optionList > #description {
	margin-bottom : 16px;
	padding : 1em;
	background-color : #f7f7f7;
}
#optionList > ul > li:not(:last-child) {
	margin-bottom : 40px;
}
#optionList > ul > li h4 {
	font-weight : bold;
	padding : 1em;
	color : #ffffff;
	background-color : #666666;
}

#optionList > ul > li h4 span {
	margin-right : 1em;
	padding : 0.275em 0.725em;
	border-radius : 3px;
	background-color : #468daf;
}
#optionList > ul > li > .description {
	font-size : 0.825em;
	padding : 1em;
	background-color : #f7f7f7;
}

/* itemList */
#optionList .itemList {
	border-top : 1px dotted #000000;
}
#optionList .itemList > li {
	display : grid;
	grid-template-columns : auto 80px 1fr;
	grid-gap : 16px;
	padding : 1em;
	border-bottom : 1px dotted #000000;
}
#optionList .itemList > li.attention {
	grid-template-columns : 1fr;
	font-size : 0.825em;
	background-color : #f7f7f7;
}
#optionList .itemList > li .checkbox {
	display : flex;
	justify-content : center;
	align-items : center;
}
#optionList .itemList > li .checkbox label {
	display : block;
	position : relative;
	width : 25px;
	height : 25px;
	cursor : pointer;
	border : 2px solid #dddddd;
	border-radius : 2px;
}
#optionList .itemList > li .checkbox label:after {
	display : inline-block;
	position : absolute;
	width : 22px;
	height : 9px;
	content : "";
	transform : rotate(-45deg);
	opacity : 0;
	border-bottom : 4px solid #468def;
	border-left : 4px solid #468def;
}
#optionList .itemList > li .checkbox input[type="checkbox"] {
	display : none;
}
#optionList .itemList > li .checkbox input[type="checkbox"]:checked + label:after {
	opacity : 1;
}


#optionList .itemList > li .radio {
	display : flex;
	justify-content : center;
	align-items : center;
}
#optionList .itemList > li .radio label {
	display : block;
	position : relative;
	width : 25px;
	height : 25px;
	cursor : pointer;
	border : 2px solid #dddddd;
	border-radius : 50%;
}
#optionList .itemList > li .radio label:after {
	display : inline-block;
	position : absolute;
	top : 3px;
	left : 3px;
	width : 15px;
	height : 15px;
	content : "";
	opacity : 0;
	border-radius : 50%;
	background-color : #468def;
}
#optionList .itemList > li .radio input[type="radio"] {
	display : none;
}
#optionList .itemList > li .radio input[type="radio"]:checked + label:after {
	opacity : 1;
}

#optionList .itemList > li .image img {
	width : 100%;
	height : 100%;
	object-fit : contain;
}
#optionList .itemList > li .name {
	font-weight : bold;
}
#optionList .itemList > li .description {
	font-size : 0.725em;
	margin-bottom : 0.5em;
}
#optionList .itemList > li .info {
	font-size : 0.725em;
	line-height : 1.45;
	color : #666666;
}
#optionList .itemList > li .info .price {
	font-size : 1.225em;
	font-weight : bold;
	color : #468daf;
}
