.mainInner { width: 740px; max-width: 90%; margin: 0 auto; }

form .ipGroup { margin-bottom: 1.5rem; }

form .ipGroup:last-child { margin-bottom: 0; }

form .ipGroup.fx { align-items: center; }

form .ipGroup > span { width: 5.5rem; text-align-last: justify; margin-right: 1rem; }

form .ipGroup input { padding: 0 .7rem; height: 2.8rem; }

form .aux { align-items: center; background: white; }

form .aux span { margin: 0 .4rem; }

.formA input { background: transparent; padding: 0 .5rem 3px; border-bottom: 1px solid #333; margin-bottom: 2.5rem; }

.formA.wht input { border-color: white; }

.formA.wht input::placeholder { color: white; }

button.ctr { margin: 3rem auto 0; }

.btn { color: white; padding: 1rem 3rem; background: #ffc101; }

.btn:hover { opacity: .7; }

.btnB { border: 1px solid #53ad5b; color: #53ad5b; padding: 1rem 3rem; }

.btnB:hover { background: #53ad5b; color: white; }

.btnB.wht { border-color: white; color: white; }

.btnB.wht:hover { background: white; color: #ffc101; }

.circleImg { padding: 5px; border-radius: 50%; }

.circleImg img { border-radius: 50%; }

.childInfo { position: relative; align-items: flex-end; }

.childInfo::after { content: ""; display: block; position: absolute; width: 100%; height: 3rem; background: #e86243; }

.childInfo .circleImg { width: 70px; position: relative; z-index: 2; background: #f7f6f0; margin: 0 0 .3rem 1rem; }

.childInfo .name { margin: 0 0 .2rem 1rem; position: relative; z-index: 2; color: white; }

.childInfo .name ruby { font-size: 1.3rem; }

.select { position: relative; }

.select select { background: white; padding: 0 1.7rem 0 .8em; height: 2.8rem; }

.select::after { content: ""; display: block; position: absolute; top: 50%; transform: translateY(-50%); right: 15px; pointer-events: none; transform: rotate(45deg) translateY(-100%); width: .5em; height: .5em; border: 2px solid #999; border-radius: 2px; border-top: 0; border-left: 0; z-index: 2; }

.checkbox { position: relative; }

.checkbox input { width: 100%; height: 100%; position: absolute; z-index: 3; visibility: hidden; }

.checkbox input:checked ~ label span::after { content: ""; display: block; position: absolute; top: 0; left: 5px; width: .5rem; height: 1rem; border: solid white; border-width: 0 3px 3px 0; transform: rotate(45deg); }

.checkbox span { position: relative; width: 1.5rem; height: 1.5rem; background: #ffc101; z-index: 2; margin-left: 1rem; }

.radioBox { position: relative; margin-right: .9rem; padding: .7rem 0; }

.radioBox:last-child { margin-right: 0; }

.radioBox input { position: absolute; visibility: hidden; z-index: 3; }

.radioBox input:checked ~ label { background: #5c80b7; color: white; }

.radioBox label { border: 1px solid #5c80b7; padding: .7rem 1rem; color: #5c80b7; }

.subTitle { display: flex; align-items: center; margin-bottom: 1.5rem; }

.subTitle::before, .subTitle::after { content: ''; display: block; height: 1px; background: #333; flex-grow: 1; }

.subTitle::before { margin-right: 1rem; }

.subTitle::after { margin-left: 1rem; }

.errMsg { margin-bottom: 2rem; padding: 1rem; border: 1px solid #af0404; background: #f0c8c8; display: none; transition: .3s; }

.errMsg p { color: #af0404; line-height: 1.7; }

.header { padding: .7rem 1rem; }

.header h1 { font-weight: normal; font-size: .9rem; }
