/* ラジオボタンデザインCSS */
input[type=radio] {
	display: none;		/* 標準スタイルを非表示にする */
}

.sq_radio {
    width: auto;
}

.sq_radio {
    display: inline-block;
    vertical-align: top;
    box-sizing: border-box;
    font-size: 0px;
    position: relative;
    user-select: none;
    -ms-user-select: none;
    -moz-user-select: none;
    -webkit-user-select: none;
    -webkit-touch-callout: none;
}
.sq_radio input[type='radio'] + .icon_box {
    display: block;
    position: absolute;
    top: 10px;
    left: 10px;
}
.sq_radio input[type='radio'] + .icon_box .icon {
    display: inline-block;
    position: relative;
    width: 20px;
    height: 20px;
    vertical-align: middle;
    cursor: pointer;
}

.sq_radio input[type='radio'] + .icon_box .icon::before {
    content: "";
    display: block;
    box-sizing: border-box;
    position: absolute;
    z-index: 1;
    top: 0px;
    left: 0px;
    width: 20px;
    height: 20px;
    background: #FFFFFF;
    border: solid 1px #9E9365;
    border-radius: 20px;
}

.sq_radio input[type='radio'] + .icon_box .icon::after {
    content: "";
    display: block;
    box-sizing: border-box;
    position: absolute;
    z-index: 2;
    top: 5px;
    left: 5px;
    width: 10px;
    height: 10px;
    border-radius: 20px;
}

.sq_radio input[type='radio']:checked + .icon_box .icon::after {
    background: #DE7016;
}

.sq_radio .txt {
    color: #333;
    cursor: pointer;
    display: inline-block;
    vertical-align: top;
    border: 1px solid #0171bd;
    border-radius: 3px;
    padding: 10px 10px 10px 40px;
    font-size: 14px;
    line-height: 20px;
    width: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.sq_radio input[type='radio']:checked ~ .txt {
    border: 2px solid #DE7016;
    padding: 9px 9px 9px 39px;
}

.txt {
    font-size: 16px;
}
