﻿.applyM{width:100%;     max-width: 1370px; margin: 0 auto;}
.applyM hr{margin: 10px 0;}
div{border: 0px solid #000;}
.top_title1 { text-align: center; margin: 6rem 0px; font-size: 4rem; font-weight: bold; }
.info{border: 0px solid #000; width: 100%; background-color: #f0f0f0; -webkit-border-radius: 10px;
-moz-border-radius: 10px;
border-radius: 10px;  margin-bottom: 30px;}

.radio-inline{font-size: 18px !important;}
.form-horizontal .form-group {margin: 0px;}
.form-horizontal .form-group div{margin: 0px; padding: 0;}
.form-control{width: 90%;}
.FrontM{display: inline-flex;justify-content: center;align-items: center;width: 100%;gap: 10%;padding: 50px 0;}
.FrontM a{padding: 5%;position: relative;border: 2px solid #000;}
.FrontM a p{position: absolute;transform: translate(0, -50%);right: 0;width: 100%;
text-align: center;font-size: 27px;text-decoration:none;color:#000;}
select[multiple]{height: 60px;}
.btn-group{}
.m_download{color: #fff;background-color: #2578b4; font-size: 16px; padding: 5px 10px; width: 100%;}
.sin { /*font-weight: bold;*/ padding: 0rem 7rem; margin-top: 5rem; font-size: 3.5rem; margin-bottom: 2rem; }
.sin b{color:red;font-size:17px;}
.smsrule{font-size:20px;margin:0;line-height:2;padding-bottom:15px;}

#step0{}
#step0 .churchSC .step0T{text-align: center;padding: 70px 0 30px;}
#step0 .churchSC .step0T h1{margin:0;font-size:27px;line-height:2;font-weight:bold;}
#step0 .churchSC .step0M{display: inline-flex;width: 100%;gap: 20px;flex-wrap: wrap;
flex-direction: column;align-content: center;text-align: center;}
#step0 .churchSC .step0M .name,
#step0 .churchSC .step0M .pastor{width:50%;}
#step0 .churchSC .step0M .nameBT{padding: 5px;border: 2px solid #000;cursor: pointer;}
#step0 .churchSC .step0M .nameBT h1{margin:0;font-size:24px;padding:5px 10px;display: inline-block;}
#step0 .churchSC .step0M .form-control{font-size:18px;}
#step0 .churchM{padding:50px 30px;}
#step0 .churchM table{width:100%;border:none;}
#step0 .churchM table tr td{padding:5px;font-size:18px;}
#step0 .churchM table tr td:last-child{text-align:center;}

#step1 .form-group h1 { margin: 0; font-size: 18px; line-height: 1.5; gap: 1rem; display: flex; align-items: center; }
#step1 .form-group input { font-size: 17px; width: 90%; }
#step1 .form-group .sampleM a{font-size: 20px;color: #FF0000;font-weight: bold;letter-spacing: .7px;line-height: 2;}
#step1 .form-group .upload-actions{display: inline-flex;gap: 15px;padding: 10px 0 0;}
#step1 #footer-btn{display: inline-flex;justify-content: center;width: 100%;}
#step1 #footer-btn .flex-wrap{padding: 10px;font-size: 18px;display: inline-flex;gap: 15px;}
#step1 #footer-btn .flex-wrap #pre-submit{background-color: #129aa9;
    color: #fff;
    padding: 1.3rem 2.4rem;
    border: 0px;
    border-radius: 5px;}
#step1 #footer-btn .flex-wrap #pre-submit[disabled]{
        background-color: rgb(239 239 239) !important;
    color: rgb(16 16 16 / 77%) !important;
    border-color: light-dark(rgba(118, 118, 118, 0.3), rgba(195, 195, 195, 0.3))!important;}
#step1 #footer-btn .flex-wrap a{background-color: #D70000;color: #fff;padding: 10px 15px;}
#step1 #chunrchNumberBOX .certificate-row{width:100%;}

.CaptchaM { width: 100%; text-align: center; padding: 3rem 0; }
    .CaptchaM .form-CaptchaM { padding: 3rem 0; display: inline-flex; align-items: center; justify-content: center; gap: 20px; background-color: #f0f0f0; width: 100%; border-radius: 10px; }
.CaptchaM .form-CaptchaM .form-CaptchaL .replceCaptchaBT h5{margin: 0;padding: 10px;
cursor: pointer;font-size: 15px;color: #000;font-weight: bold;}

/*#modal*/
#modal.modal-overlay {
    z-index:999;
    visibility: hidden;
    width: 40vw;
    /*position: absolute;
    left: 0;
    top: 0;*/
    position: fixed;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.25);
    box-shadow: 0 8px 32px 0 rgba(31, 38, 135, 0.37);
    backdrop-filter: blur(1.5px);
    -webkit-backdrop-filter: blur(1.5px);
    border-radius: 10px;
    border: 1px solid rgba(255, 255, 255, 0.18);
}
#modal .modal-window {
    background: rgb(255 255 255);
    backdrop-filter: blur( 13.5px );
    -webkit-backdrop-filter: blur( 13.5px );
    border-radius: 5px; 
    width: 100%;
    height: 100%;
    position: relative;
    padding: 10px;
}
#modal .title { color: black; font-size: 1.5rem; text-align: center;   padding: 1rem; }
.spancolorred{ color: #e70000;  }
 #modal .title span.titlespanclose{ color: #94979b;  }
#modal .title span.titlespanok, .spancolorblue { color: #139dac; }
#modal .title span {   font-weight: bold;  }




#modal .close-area { display: inline; float: right; padding-right: 1rem; cursor: pointer; color: black; font-size: 2rem; font-weight: bold; }
#modal .content { margin-top: 20px; padding: 0px 1rem; color: black;  text-align:center;}

#modal  b{font-size:2rem;line-height:2; padding-left: 1rem;}
#modal .content #smsrequest-check { font-size: 1.4rem; line-height: 1.5; padding: 0.2rem 0; margin: 0;   border-top: 1px solid #ddd;   border-bottom: 1px solid #ddd;}
#modal .modal-bottom { display: inline-flex; width: 100%; align-items: center; justify-content: center; gap: 1rem; padding: 2rem 0;   }
#modal .modal-bottom button { font-size: 1.6rem; color: #fff; padding: 0.5rem 2rem; border-radius: 5px; }
#modal .modal-bottom button:nth-child(1) { background-color: #139dac; border: 0px; }
#modal .modal-bottom button:nth-child(2) { background-color: #adb5bd; border: 0px; }

#modal .p1title { font-size: 1.5rem; padding: 0; font-weight: bold; }
#modal #smsrequest-check > div { border-bottom: 0px solid #5b5b5b; }


/*신청결과 페이지*/ 
.applyOK { height: 100vh; display: flex; align-items: center; justify-content: center;     flex-direction: column;     gap: 3rem;}
.applyOK div { font-size: 2.5rem; font-weight: bold;     line-height: 1.5;}
.applyNo h1 { font-size: 3rem; line-height: 1.5; margin: 0; text-align: center; padding: 20px; font-weight: bold; } 
.applyOK .apok-list { position: relative; padding-left: 5rem; margin-bottom: 1rem; counter-increment: step-counter; font-size: 2.0rem; }
.applyOK .apok-list::before { content: counter(step-counter); position: absolute; left: 0; top: 0; width: 2.8rem; height: 2.8rem; background: #000; color: white; border-radius: 50%; display: flex; font-weight: bold; justify-content: center; align-items: center; }
.applyOK .apoklists { padding:3rem 0;}


/*.info_detail */
.info_detail { padding: 2rem; font-size: 1.8rem; word-break:keep-all;} 
.info_detail_sec1, .info_detail_sec2, .info_detail_sec3, .info_detail_sec0 { padding: 2rem 6rem; }
.info_detail_sec-title { font-weight: bold; font-size: 2rem;  }
.info_detail_sec-list-counter .info_detail_sec-item::before { content: counter(step-counter); font-size: 1.5rem;  position: absolute; left: 0; top: 3px; width: 2.5rem; height: 2.5rem; background: #0599aa; color: white; border-radius: 50%; display: flex; font-weight: bold; justify-content: center; align-items: center; }
.info_detail_sec-list-counter .info_detail_sec-item { position: relative; padding-left: 4rem; margin-bottom: 1rem; counter-increment: step-counter;  }
.info-extra { padding: 3rem 0; font-size: 2.0rem; font-weight: bold; text-align: center; }
.info_detail_sec-list { padding: 1rem 0; padding-left: 2.6rem;     line-height: 1.8; } 
.info_detail span.extra-text { font-size: 1.5rem; display: flex; align-items: center; gap: 1rem; padding-left: 3rem; }
.info_detail span.extra-text i{ font-size: 1.2rem; }
.info_detail span.extra-text a{ text-decoration:none; transition:all .2s;     font-size: 1.3rem; }
.info_detail span.extra-text a:hover{     font-weight: 500; }

/**gibugumform*/

.gibugumform { background-color: #f0f0f0; width: 100%; border-radius: 10px; }
.gibugum_checklist { background: #eee; border-radius: 10px; margin: 3rem 0 0; }

.info_detail_sec-item-table {  padding: 2rem; }
.info_detail_sec-item-table .info_detail_sec-item { display: flex; justify-content: space-between; border-bottom: 2px solid #ddd; }
.info_detail_sec-item-table .info_detail_sec-item > div { width: 25%; padding: 0.5rem 1rem; }
.info_detail_sec-item-table .info_detail_sec-item-title {  border-bottom: 2px solid #aaa;  font-weight:bold; }

.whitebox {
    background: #ffffffcf;
    padding: 2rem;
    border-radius: 1rem;     font-size: 1.5rem;
    margin: 2rem 0; line-height: 1.4;
}
.graybox {
    background: #e1e1e1cf;
    padding: 2rem;
    border-radius: 1rem;     font-size: 1.5rem;
    margin: 2rem 0; line-height: 1.4;
}

:root{
--brand-red:#ca0000; /* 포인트 컬러 */
--brand-teal:#139dac; /* 보조 포인트 */
--ink:#1f2937;
--muted:#6b7280;
--bg:#f8fafc;
--card:#ffffff;
--border:#e5e7eb;
--radius:1.5rem;
--shadow:0 6px 20px rgba(0,0,0,.08);
--sticky-h: 72px;
}

.app_info_link >a {
    --pad: 0.8rem 2.3rem;
    appearance: none;
    border: 1px solid #ffffff00;
	background:linear-gradient(0deg, var(--brand-teal), var(--brand-teal)); color:#fff;  
    padding: var(--pad);
    border-radius: 999px;
    cursor: pointer;
    white-space: nowrap;
    font-weight: 600;
    font-size: 1.4rem;
    transition: all .2s ease;
    box-shadow: 0 1px 0 rgba(0, 0, 0, .02);
	text-decoration: none;    display: flex;
    align-items: center;
    gap: 1rem;
} 
.app_info_link >a:hover{border-color:#cdd3da; transform:translateY(-1px);border: 1px solid var(--border);
    background: #cdd3da;    color: var(--ink); }
.app_info_link { 
        margin: 1rem 1rem 0;    display: flex;
    gap: 2rem;
    align-items: center;
}


/* 카드/섹션 */
section{ scroll-margin-top: var(--sticky-h); } 
.card{background:var(--card); border:1px solid var(--border); border-radius:var(--radius); box-shadow:var(--shadow); padding:clamp(15px, 4rem, 4vw);}
.card2{ border:0px solid var(--border); border-radius:var(--radius); box-shadow:var(--shadow); }
.grid{display:grid; gap:1.5rem}
@@media (min-width:900px){.grid.cols-2{grid-template-columns:1.2fr .8fr}}


.cta{ 
	display:inline-flex; align-items:center; gap:1rem; padding:1rem 2rem ; border-radius:2.5rem; border:1px solid var(--border);
	background:#fff; font-weight:700; cursor:pointer; transition:.2s ease; text-decoration:none
}
.cta:hover{transform:translateY(-1px); box-shadow:var(--shadow)}
.cta.primary{background:var(--brand-red); border-color:var(--brand-red); color:#fff}
.cta.ghost{background:#fff;}


.box{background: #fff; border-radius: 1rem;     padding: 3rem;}

.list {
    padding-left: 2rem;
    margin: 0;
    line-height: 1.8;
}
.info_detail_sec2 .list li {
    margin-bottom: 2rem;
}

.info h2{margin:0 0 2.5rem; font-size:3.5rem}
.info h3{margin:3rem 0 1.5rem; font-size:2.3rem}
.info p{line-height:1.6; color:#111827;}

::marker {
    font-weight: bold;
}

@media(max-width:1024px) {  
html, body {
        font-size: 12px;
    }

/*기부금*/

.info_detail_sec-list {
    padding: 1rem 0;
    padding-left: 1rem; 
    line-height: 1.8;
}

.info_detail_sec1, .info_detail_sec2, .info_detail_sec3, .info_detail_sec0 {
    padding: 2rem 0rem;
}
.info-extra { 
    text-align: left;
}

.app_info_link { 
    gap: 1rem; margin: 1rem 0rem 0;
    align-items: center;
    flex-wrap: wrap;  justify-content: center;
}
 

.whitebox > a {
    text-align: center;
            /* margin: 1rem auto; */
        padding: 2rem 0 !important;
}

.app_info_link >a:nth-of-type(1), .app_info_link >a:nth-of-type(2){width: calc(50% - 0.5rem);;}

.app_info_link >a:nth-of-type(3){width:100%;}





}


@media(max-width:768px) { 


/* #step1 .form-group h1 {font-size: 15px;} */
/* #step1 .form-group input {font-size: 15px;} */
/* #step1 .form-group .sampleM a {font-size: 15px;} */
.form-control{width: 100%;}
/* .info{margin-bottom: 10px;} */
/* .info_detail{padding: 15px 0; font-size: 14px; text-align: center;} */
/* .radio-inline{font-size: 14px !important;} */
.info_detail_sec-list-counter .info_detail_sec-item { 
    text-align: left;
}

.top_title1 { 
    margin: 6rem 0px;
    font-size: 3rem; 
}



div#step1 .gibugumform >div {
    padding: 2rem !important;
}
.sin { 
    padding: 0rem 2rem;
    margin-top: 3rem;
}


.gibugum_checklist >div {
    padding: 2rem !important;
}

.info_detail span.extra-text { 
    gap: 0.5rem; 
    flex-wrap: wrap;
}
.info_detail span.extra-text a {
    width:100%;
}
    .info_detail_sec-list { 
        padding-left: 2.7rem; 
    }

.app_info_link >a:nth-of-type(1), .app_info_link >a:nth-of-type(2){width: 100%;}
 


}


@media(max-width:568px) { 
html, body {
        font-size: 10px;
    }




    .info_detail_sec-list {
        padding-left: 0.5rem;
    }

.info_detail_sec-list-counter .info_detail_sec-item { 
    padding-left: 3.2rem; 
}
.info_detail span.extra-text {
   padding-left: 0.5rem;
}

    div#step1 .gibugumform >div {  
    padding: 2rem 6rem;
    flex-direction: column;
	align-items: flex-start!important;
    }
div#step1 .gibugumform >div> div {width: 100%; padding: 0.5rem 0;}
#step1 .form-group input { 
    width: 100%;
}


    .gibugum_checklist >div {
        padding: 2rem 1rem !important;
    }



.info_detail_sec0 {
    word-break: break-all;
}




}