/*!버튼*/
.btn { height:30px; border:1px solid var(--point); background:var(--point); color:#fff; padding:0 9px; font-size:13px; text-align:center; border-radius:5px; display: inline-flex; align-items: center; justify-content: center; font-weight: 500; white-space: nowrap;} 
/*&유형*/
.btn_txt { color:var(--point); white-space:nowrap; text-decoration: underline; } 
.btn_txt:hover { text-decoration: underline; } 
a.btn_line { border-bottom:1px solid #333; color:#333; padding-bottom:5px; } 
.btn.oval { border-radius: 30px !important; } 
.btn.line { background-color: #fff; border:1px solid var(--point); color:var(--point) } 
/*&크기*/
.btn.big { width:100%; box-sizing:border-box; height:60px; font-size:22px; box-shadow:2px 3px 5px rgba(0,0,0,0.3); } 
.btn.l { height:44px; line-height: 44px; font-size:14px; font-weight: 700; padding-inline: 35px; font-weight: 500; } 
.btn.m { height:40px; font-size:14px; font-weight: 500; } 
.btn.s { height:21px; font-size:11px; padding-inline: 12px; } 
/*&컬러*/
.btn.white { background:#fff; border-color:var(--point); color:var(--point); border-width: 2px; } 
.btn.light { background-color: #86a49d; color:#fff; border:none; } 
.btn.lightgray { background-color: #e5ebea; color:var(--point); border:none; } 
.btn.gray { background-color: #9d9d9d; color:#fff; border:none } 
/*&아이콘*/
.btn .icon { display: inline-flex; align-items: center; } 
.btn .icon::before { content:''; display: inline-block; width:12px; height: 12px; background-size: contain; background-repeat: no-repeat; } 
.btn .icon.more::before { background-image: url(../img/icon_more.png); vertical-align: -3px; } 
.btn .icon.after { margin-left:10px; } 
.btn .icon.before { margin-right:10px; } 
.btn .icon.go::before { background-image: url(../img/icon_arrow.png); } 
.btn .icon.reset::before { background-image: url(../img/icon_reset.png); } 

/*&묶음*/
.com_btn_wrap { text-align: center; margin-top:30px; display: flex; align-items: center; justify-content: center;} 
.com_btn_wrap .btn {width:100%; flex:1; border-radius: 10px;} 
.com_btn_wrap .btn+.btn { margin-left:10px; } 
.com_btn_wrap .btn.l { font-weight: 700; height: 44px; } 
.com_btn_wrap .btn.line.l { border-width: 2px; } 


/*checkbox*/
.com_chk { display: none; } 
.com_chk + label, .com_chk + label:before { cursor: pointer; } 
.com_chk + label { padding-left: 28px; display: inline-block; } 
.com_chk + label:before { content: ""; display: inline-block; width: 20px; height: 20px; margin-right: 8px; vertical-align: -5px; margin-left: -28px; border: solid 1.5px #d6d6d6; background-color: #fff; background-image: url(../img/checkbox_off.png); background-position: center; background-size: 20px auto; background-repeat: no-repeat; } 
.com_chk:checked + label:before { background-color: var(--point); border: none; background-image: url(../img/checkbox_on.png); } 
input[type=radio].com_chk + label:before { background-image: url(../img/radio_off.png); background-position: center; background-size: 20px auto; background-repeat: no-repeat; } 
input[type=radio].com_chk:checked + label:before { background-color: transparent; border: none; background-image: url(../img/radio_on.png); } 
.com_chk.circle + label { position: relative; } 
.com_chk.circle + label:before { border-radius: 100%; } 
.com_chk:disabled + label { opacity: 0.4; } 
.com_chk + label .icon_must { color:#f52d2d } 
.com_chk.button + label:before { display:none } 
.com_chk.button + label { border-radius: 50px; display: inline-flex; align-items: center; justify-content: center; height: 50px; border:1px solid var(--point); color:var(--point); font-size: 13px; font-weight: 700; letter-spacing: -0.75px; color: var(--point); padding-inline: 25px; } 