@charset "utf-8";

.fixed_counsel {position:fixed; left:0; right:0; bottom:0; z-index:111111; width:100%; pointer-events:none;}
.fixed_counsel * {box-sizing:border-box;}
.fixed_counsel_inner {margin:0; padding:14px 12px; border-radius:1.5rem 1.5rem 0 0; background:#454b56; box-shadow:0 -.3rem 1.2rem rgba(0,0,0,.18); pointer-events:auto;}
.fixed_counsel_fields {display:grid; grid-template-columns:1fr 1.5fr 1.5fr; gap:4px;}
.fixed_counsel_fields input,
.fixed_counsel_fields select,
.fixed_counsel_submit {min-width:0; width:100%; height:38px; border:0; border-radius:1rem; font-size:15px;}
.fixed_counsel_fields input {padding:0 1rem; color:#555; background:#fff;}
.fixed_counsel_fields select {padding:0 12px 0 4px; color:#777; background:#fff url('/images/common/icon_sel_arr.png') no-repeat right 3px center; background-size:7px auto; appearance:none; -webkit-appearance:none;}
.fixed_counsel_bottom {display:grid; grid-template-columns:minmax(0,1fr) 120px; align-items:center; gap:8px; margin-top:8px;}
.fixed_counsel_submit {padding:0 .6rem; color:#fff; font-size:17px; font-weight:500; white-space:nowrap; background:#31bdc5;}
.fixed_counsel_agreements {display:flex; flex-direction:column; align-items:flex-start; gap:4px; color:#fff; font-size:13px; line-height:1.4;}
.fixed_counsel_check {display:flex; flex-wrap:wrap; align-items:center; gap:3px; min-width:0;}
.fixed_counsel_check input {flex:0 0 auto; width:16px; height:16px; margin:0; accent-color:#31bdc5;}
.fixed_counsel_check label {color:#fff;}
.fixed_counsel_check a {color:#cdd2da; text-decoration:underline;}
body:not(.legacy_counsel_bar) {padding-bottom:140px;}
body:not(.legacy_counsel_bar) #rquick {bottom:max(24rem, 140px);}
body:not(.legacy_counsel_bar) #qcounsel {margin-bottom:19rem;}
#gnb .gnb_scroll {bottom:var(--mobile-counsel-height, 0px); overscroll-behavior:contain;}

@media all and (max-width:420px) {
	.fixed_counsel_fields input,
	.fixed_counsel_fields select {font-size:15px;}
	.fixed_counsel_submit {font-size:17px;}
}

@media all and (max-width:340px) {
	.fixed_counsel_fields input,
	.fixed_counsel_fields select {padding-left:.5rem; padding-right:.5rem; font-size:14px;}
	.fixed_counsel_fields select {padding-left:4px; padding-right:12px;}
	.fixed_counsel_bottom {grid-template-columns:minmax(0,1fr) 105px;}
	.fixed_counsel_submit {font-size:16px;}
	.fixed_counsel_agreements {font-size:12px;}
	.fixed_counsel_check {gap:.2rem;}
	.fixed_counsel_check input {width:16px; height:16px;}
}
