.ct_text_area {  position: absolute; top: 90px; left: calc(50% - 357px/2 - 271.5px); }

/* Replaces apply_head_text.png, which had the old brand name baked into the pixels. */
.ct_head_text { font-family: var(--font-ui); font-weight: 600; font-size: 34px; line-height: 1.25; letter-spacing: -0.01em; color: var(--neutral-50); }
.ct_head_text span { display: block; }

.head_text { text-align: center; font-family: var(--font-ui); font-weight: 600; font-size: 36px; line-height: 130%; letter-spacing: -0.01em; color: var(--color-primary);}
.sub_text { font-weight: 400; font-size: 16px; line-height: 150%; color: var(--neutral-600);}

.inner_area { margin-top: 110px; width: 900px; margin: 110px auto 0 auto; }
.apply_seq_area { margin-top: 70px; display: flex; align-items: center; justify-content: space-between;}
.apply_seq_item  { position: relative; display: flex; flex-direction: column; align-items: center; width: 280px; height: 338px; background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius-card); box-sizing: border-box;}
.seq_number { position: absolute; top: -20px; width: 40px; height: 40px; line-height: 40px; background: var(--color-brand); border-radius: 50%; text-align: center; font-family: var(--font-ui); font-weight: 600; font-size: 20px; color: var(--neutral-50); }
.seq_head_text { margin-top: 45px; margin-bottom: 17px; font-family: var(--font-ui); font-weight: 600; font-size: 20px; line-height: 130%; text-align: center; color: var(--color-primary);}
.seq_text { font-size: 14px; line-height: 150%; text-align: center; color: var(--neutral-600);}


#apply_form { margin-top: 30px; overflow: hidden; width: 900px; height: 288px; background-color: #FFFFFF;}
.apply_input_area {margin-left: 70px; margin-top: 50px;}
.input_row { margin-bottom: 30px;}
.input_head { width: 133px; display: inline-block; font-family: var(--font-ui); font-weight: 600; font-size: 16px; line-height: 112%; color: var(--color-primary);}
.input_head_dot { margin-right: 6px; margin-bottom: 4px; display: inline-block; width: 4px; height: 4px; border-radius: 50%; background-color: var(--color-brand); }
.apply_input { padding-left: 15px;  width: 627px; height: 48px; border-radius: var(--radius-button); border: 1px solid var(--color-border); outline: none; font-family: var(--font-body); font-size: 15px; color: var(--neutral-900);}
.apply_input::placeholder { color: var(--neutral-400); }
.terms_link { font-weight: 400; font-size: 14px; line-height: 160%; color: var(--color-brand); cursor: pointer;}
.check_terms { display: inline-block; margin-left: 10px; margin-right: 8px;}
.apply_submit_btn { margin-top: 30px; margin-left: 350px; width: 200px; height: 54px; background: var(--color-brand); border-radius: var(--radius-button); font-family: var(--font-ui); font-weight: 600; font-size: 16px; color: var(--neutral-50); border: none; outline: none; cursor: pointer;}


/* checkbox */
.checkbox_container { display: inline-block; width: 16px; height: 16px; position: relative; cursor: pointer; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }
.checkbox_container input { position: absolute; opacity: 0; cursor: pointer; height: 0; width: 0; }
.checkmark { position: absolute; top: 0; left: 0; height: 16px; width: 16px; border: 1px solid var(--neutral-200); border-radius: 4px; }
.checkbox_container:hover input ~ .checkmark { background-color: var(--neutral-200); }
.checkbox_container input:checked ~ .checkmark { background-color: var(--color-brand); border-color: var(--color-brand); }
.checkmark:after { content: ""; position: absolute; display: none; }
.checkbox_container input:checked ~ .checkmark:after { display: block; }
.checkbox_container .checkmark:after { left: 5px; top: 2px; width: 4px; height: 8px; border: solid white; border-width: 0 1.2px 1.2px 0; -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); }




/*  Modal  */
.modal { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 1;}
.modal_content{ display: flex; flex-flow: column; align-items: center; width: 560px; height: 612px;  margin: calc( 50vh - 300px ) auto; overflow: hidden; background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius-sheet); box-shadow: var(--shadow-modal);}
.modal_layer { position:fixed; top:0; left:0; width:100%; height:100%; background:rgba(0, 0, 0, 0.5); z-index:-1; }
.modal_header { width: 500px; height: 80px; display: flex; justify-content: space-between;  align-items: center;}
.modal_body { margin-top: 30px; margin-bottom: 30px; width: 500px; height: 417px; overflow-y: auto; font-size: 15px; line-height: 160%; color: var(--neutral-600);}
.modal_header_phrase { font-family: var(--font-ui); font-weight: 600; font-size: 20px; line-height: 130%; color: var(--color-primary); }
.modal_separator {width: 100%; border-top: 1px solid var(--color-border);}
.modal_confirm { width: 560px; height: 54px; background-color: var(--color-brand); color: var(--neutral-50); font-family: var(--font-ui); font-weight: 600; font-size: 16px; line-height: 54px; text-align: center; cursor: pointer;}
.close_modal_btn { cursor: pointer;}




.terms_content table { border-collapse: collapse; }
.terms_content tr { height: 60px;}
.terms_content table  tr:first-child { background: var(--neutral-100);}
.terms_content td { border: 1px solid var(--color-border);}
.terms_content td > p { padding: 5px;}