@charset "utf-8";
@import url(../css/font.css);

*{margin: 0; padding: 0; box-sizing: border-box; font-weight: 500; font-size: 14px; font-family: 'Pretendard-Regular', Nanum Gothic, '나눔고딕', Malgun gothic, '맑은고딕', Dotum, '돋움', 'AppleSDGothicNeo', arial,sans-serif; color: #252523;}
*::-webkit-scrollbar{display: none;}
li{list-style: none;}
a{text-decoration: none !important; display: block;}
button{all: unset; cursor: pointer;}
input{border: none;}
select {border: none;}

html, body {
    height: 100%;
}

body {
    display: flex;
    flex-direction: column;
}

.wrapper {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

header {
    background: #fff;
    color: #fff;
    /*padding: 1rem 0;*/
    border-bottom: 1px solid #b1b4b6;
}



.navbar .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/*.btn { background-color: #f29c1c !important;}*/

.logo-dropdown {
    position: relative;
    display: inline-block;
}

.logo-dropdown .logo {
    text-decoration: none;
    color: #fff;
}

.logo-dropdown .dropdown-content {
    display: none;
    position: absolute;
    background-color: #f9f9f9;
    min-width: 160px;
    box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
    z-index: 1;
    left: 70px;
}

.logo-dropdown .dropdown-content a {
    color: black;
    padding: 12px 16px;
    text-decoration: none;
    display: block;
}

.logo-dropdown .dropdown-content a:hover {
    background-color: #f1f1f1;
}

.logo-dropdown:hover .dropdown-content {
    display: block;
}

.arrow {
    margin-left: 10px;
}

.navbar .nav-links {
    margin-bottom: 0;
    list-style: none;
}
.navbar .nav-links li {
    display: inline;
    margin-left: 1rem;
}
.navbar .nav-links a {
    text-decoration: none;
    color: #fff;
    padding: 0.5rem 1rem;
    transition: background 0.3s;
}
.navbar .nav-links a:hover {
    background: #575757;
    border-radius: 5px;
}
.nav-content {border-bottom: 1px solid #b1b4b6;}
.tabs .tab a:hover, .tabs .tab a.active { background-color: rgba(0,0,0, 0.1) !important; transition: background-color .3s;}
.container {
    max-width: 100%;
    margin: 0 auto;
    padding: 0 2rem;
    text-align: center;
}

.container .content-text {
    color: #fff;
    padding: 5em;
}

.container .content-text p {
    font-weight: bold;
    font-size: 3.0rem;
    color: white;
}

main {
    flex: 1;
    padding: 2rem 0;
    background-image: url('../images/main-bg.jpg');
    background-size: auto;
    background-repeat: no-repeat;
}

footer {
    background: #333;
    color: #fff;
    text-align: center;
    padding: 1rem 0;
}

footer .container p {
    margin-bottom: 0;
    color: white;
}

/* 로그인 모달 스타일 */
.modal {
    /* display: none;   */
    position: fixed;
    z-index: 1;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0, 0, 0, 0.4);
}

.modal-content {
    background-color: #fefefe;
    margin: 15% auto;
    padding: 20px;
    border: 1px solid #888;
    width: 30%;
}

.close-button {
    color: #aaa;
    float: right;
    font-size: 28px;
    font-weight: bold;
}

.close-button:hover,
.close-button:focus {
    color: black;
    text-decoration: none;
    cursor: pointer;
}

.login-container {
    background-color: #f1f1f1;
    padding: 1em 3em 1em 3em;
    border-radius: 5px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    max-width: 400px;
    /*margin: 50px auto;*/
}

.login-container h2 {
    text-align: center;
    margin-bottom: 35px;
}

.form-group {
    margin-bottom: unset !important;
}

.form-group label {
    display: block;
    font-weight: bold;
    margin-bottom: 5px;
}

.form-group input {
    width: 100%;
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 3px;
}

.login-btn {
    display: block;
    width: 90%;
    padding: 10px;
    background-color: #383d38;
    color: white;
    border: none;
    border-radius: 3px;
    cursor: pointer;
}

.login-btn:hover {
    background-color: #45a049;
}

.login-container {
    display: inline-block;
}
.login-container h5 {
    padding: 0 0 5rem 0;
}
.login-container.show {
    display: block;
}

.guess-btn {
    width: 100px;
    padding: 10px;
    background-color: #0056b3;
    color: white;
    border: none;
    border-radius: 5px;
    cursor: pointer;
}

.guess-btn:hover {
    background-color: #004494;
}

.duplicate-check-btn {
    display: inline-block;
    background-color: #383d38;
    color: #fff;
    /*padding: 10px 20px;*/
    border: none;
    border-radius: 3px;
    cursor: pointer;
    font-size: 14px;
    transition: background-color 0.3s;
}

.duplicate-check-btn:hover {
    background-color: #45a049;
}

/* 회원가입 */
.select-company { text-align: right;}
.duplicate-check-btn { width: 12em; height: 3.3em;}
.id-input-group {display: flex;}

/* 방문 등 나의신청 진행보기 */
.navWrap {
    display: flex;
    justify-content: center;
    align-items: center;
}

.navList {
    width: 140px;
    height: 140px;
    display: flex;
    align-items: center;
    justify-content: center;
    /*padding: 15px 10px 0 10px;*/
    cursor: pointer;
    background: #12204b;
    border-radius: 18% !important;
}

.category {
    font-size: 16px;
    /*margin-top: -10px;*/
    /*margin-left: -45px;*/
    /*color: #fff;*/
}

.category-btn {
    display: flex;
}

.category-btn .visit{display: flex;flex-direction: column;align-content: center;align-items: center;margin-right: 50px;}
.category-btn .visit:hover .navList{background: #183381;box-shadow: 0 15px 15px rgba(54,83,169, 0.3);}
.category-btn .visit:last-child{margin-right: 0}

.navList img {
    width: 100px;
}

.target-group1 {
    /*background-color: #14457a;*/
    background-color: #eaeefb;
    padding: 0 60px;
    margin-right: 20px;
    height: 310px;
    border-radius: 12px;
}

.target-group1 .top-img{width: 40px;}
.target-group1 .top-img,
.target-group1 p { position: relative; left: -178px;}

.target-group2 .top-img,
.target-group2 p { position: relative; left: -175px;}

.target-group1 div h1,
.target-group2 div h1 {
    text-align: center;
    font-size: 18px;
    margin-top: 20px;
    color: black;
}

.target-group1 div h1>span{font-size: 18px;}


.target-group2 {
    background-color: #007bff;
    padding: 0 35px 0 50px;
    margin-right: 10px;
    height: 255px;
}

.target-group2 a li,
.target-group1 a li {
    border-radius: 50%;
}

.target-group3 {
    padding-top: 35px;
    background-color: #fff;
    height: 255px;
    max-width: 150px;
}


.target-group3 a h1 {
    text-align: center; color: #000000;
    margin-top: -10px;
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 20px;
}

/* 상단 메뉴바 */
.main-menu { padding: 0;  margin: 0; list-style: none; width: 65%; text-align: left;}
.main-menu li {  display: inline-block; margin: 0 10px;}
.main-menu li a { text-decoration: none; color: #000 !important; cursor: pointer;}
/*.menu { color: #000000;}*/

/* materialize-custom */
.nav-wrapper { background: #fff;}
.nav-wrapper ul.left { padding-left: 12em;}
.nav-mobile {
    padding-right: 10px;
}
nav ul li a { color : #000 !important;}
nav ul li a>.menu{margin: 25px; font-size: 16px;}
nav ul li a:hover {color : #1565A2; text-decoration: none;}
nav ul li a:after{content: ''; border: 1px solid #eee;}
nav ul li:last-child a:after{content: none;}

nav .brand-logo { padding : 0 1em 0 1em !important; }
nav i.material-icons { color: #000 !important;}
.side-nav { width: 200px !important;}

@media only screen and (max-width: 992px) {
    nav .brand-logo { left: 27% !important; transform : translateX(-50%);}
}

@media only screen and (min-width: 641px) and  (max-width: 992px) {
    .navWrap { display: grid;}
    .container .content-text p { font-size: 2.5rem; }
    .target-group1 { margin-right: unset; margin-bottom: 10px;}
}

@media only screen and (min-width: 581px) and (max-width: 640px) {
    .navWrap { display: grid; transform: scale(0.85)}
    .container .content-text p { font-size: 2.2rem; }
    .target-group1 { margin-right: unset; margin-bottom: 10px;}
}

@media only screen and (max-width: 580px) {
    .navWrap { display: grid; transform: scale(0.85)}
    .container .content-text { padding : 2em;}
    .container .content-text p { font-size: 1.5rem; }
    .target-group1 { margin-right: unset; margin-bottom: 10px;}

}



/* 공통 */
.flex { display: flex;}
.inline { display: inline-block;}
.alignCenter { align-items: center;}
