@import url(//netdna.bootstrapcdn.com/font-awesome/3.2.1/css/font-awesome.css);

/* ラジオボタン装飾 */
.radio_btn {
    margin: 0 0 40px 0;
    padding: 11px 5px;
    /*max-width: 390px;*/
    border: 1px solid #cccccc;
    box-sizing: border-box;
}
.radio_label {
  position: relative;
  cursor: pointer;
  padding-left: 30px;
}

.radio_label::before,
.radio_label::after {
  content: "";
  display: block; 
  border-radius: 50%;
  position: absolute;
  transform: translateY(-50%);
  top: 50%;
}

.radio_label::before {
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 50%;
  width: 20px;
  height: 20px;
  left: 5px;
}

.radio_label::after {
  background-color: #f08733;
  border-radius: 50%;
  opacity: 0;
  width: 16px;
  height: 16px;
  left: 7.4px
}

input:checked + .radio_label::after {
  opacity: 1;
}

.visually-hidden {
 position: absolute;
 white-space: nowrap;
 border: 0;
 clip: rect(0 0 0 0);
 clip-path: inset(50%);
 overflow: hidden;
 height: 1px;
 width: 1px;
 margin: -1px;
 padding: 0;
}
@media only screen and (max-width: 600px) {
    .radio_label {
        display: block;
        margin: 8px 0;
    }
}

/* チェックボックス */
.checkbox_list{
	float:left;
	margin:0 auto 50px auto;
	width: 100%;
    text-align: center;
	border-spacing: 0;
}
.list dl{
	width: 100%;
	border:1px solid #e4e4e4;
}
.list dl dt{
	width: 10%;
	padding:2%;
	display:inline-block;
	vertical-align:middle;
}
.list dl dd{
	width: 81%;
	padding:2%;
	display:inline-block;
	vertical-align:middle;
	border-left:1px dotted #e4e4e4;
}
.list dl.disabled,
.list dl:disabled{
	background:#efefef;
	cursor:not-allowed;
}
/* checkbox01 */
input[type=checkbox] {
	display: none;
}
.checkbox01 {
	position: relative;
	line-height:2.6;
	padding: 10px 20px 10px 51px;
    background: #f08733;
    color: #fff;
    border-radius: 30px;
}
.checkbox01:hover {
    cursor: pointer;
}
.checkbox01:hover:after {
	border-color: #0171bd;
}
.checkbox01:after, .checkbox01:before{
	position: absolute;
	content: ""; 
	display: block;
	top: 50%;
}
.checkbox01:after {
	left: 20px;
	margin-top: -12px;
	width: 18px;
	height: 18px;
	border: 2px solid #f0f0f0;
    background: #fff;
}
.checkbox01:before {
	left: 26px;
	margin-top: -13px;
	width: 7px;
	height: 11px;
	border-right: 6px solid #B80003;
	border-bottom: 6px solid #B80003;
	transform: rotate(45deg);
	opacity: 0;
    z-index: 1;
}
input[type=checkbox]:checked + .checkbox01:before {
	opacity: 1;
}