@charset "utf-8";
/* ===============================
    0. 메인 공통
   =============================== */
.container-wrap > div:not(.main-visual) {
    width: 1200px;
    margin-right: auto;
    margin-left: auto;
}

/* === 타이틀 & 탭 === */
.main-title {
    padding-bottom: 15px;
    font-size: 26px;
    font-weight: 700;
}
.main-stock .tab-wrap .tab-btns,
.main-announcement .tab-wrap .tab-btns,
.main-notice .tab-wrap .tab-btns {
    position: absolute;
    top: 0;
    right: 0;
}

/* === 테이블 === */
.main-grid {
    width: 100%;
}

.main-grid thead th {
    font-weight: 500;
}

.main-grid tbody td {
    text-align: center;
}

.main-grid tbody td.text-right {
    text-align: right;
}

.main-grid tbody td.text-left {
    text-align: left;
}

.main-grid tbody td a {
    display: block;
}

/* ===============================
    1. 메인 비쥬얼
   =============================== */
.main-visual {
    position: relative;
}

.main-visual .slick-slide {
    height: 325px;
}

.main-visual .slick-slide a {
    display: flex;
    justify-content: center;
    position: relative;
    width: 100%;
    height: 100%;
}

.main-visual .slick-slide img{
    max-width: 100%;
    height: 100%;
    object-fit: cover;
}

/* 슬라이드 버튼들 */
.main-visual .controller {
    display: flex;
    gap: 0 6px;
    position: absolute;
    top: 40px;
    left: 50%;
    min-height: 28px;
    margin-left: 447px;
}

.main-visual .controller .controller-item {
    display: flex;
    align-items: center;
    background-color: rgba(0 0 0 / 40%);
}

.main-visual .controller .controller-item .page-num {
    color: var(--color-white);
    font-size: 12px;
}

.main-visual .controller .controller-item .page-num .dash {
    margin: 0 2px;
    font-weight: 500;
}

.main-visual .controller .controller-item .page-num .num {
    display: inline-block;
    width: 10px;
    font-weight: 900;
    text-align: center;
}

/* prev,next */
.main-visual .controller .controller-item:first-child {
    padding: 0 10px;
    border-radius: 18px;
}

.main-visual .controller .controller-item .prev,
.main-visual .controller .controller-item .next {
    width: 15px;
    height: 28px;
}

.main-visual .controller .controller-item .prev {
    background: no-repeat url("../images/main/ico-main-visual-prev.svg") center;
}
.main-visual .controller .controller-item .next {
    background: no-repeat url("../images/main/ico-main-visual-next.svg") center;
}

/* play, stop */
.main-visual .controller .controller-item:last-child {
    width: 28px;
    border-radius: 50%;
}

.main-visual .controller .controller-item .power {
    width: 100%;
    height: 100%;
}

.main-visual .controller .controller-item .power.stop {
    background: no-repeat url("../images/main/ico-main-visual-stop.svg") center;
}

.main-visual .controller .controller-item .power.play {
    background: no-repeat url("../images/main/ico-main-visual-play.svg") center;
}

/* ===============================
    2. K-OTC 현재 정보
   =============================== */
.main-status {
    position: relative;
    width: 1200px !important;
    margin-top: -96px;
    margin-bottom: 40px;
    padding: 12px 0px;
    border-radius: 10px;
    background-color: var(--color-white);
    box-shadow: 0 0 10px rgba(0 0 0 / 7%);
}

.main-status .main-status-list {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0 70px;
    text-align: center;
}

.main-status .main-status-list > a {
    position: relative;
}

.main-status .main-status-list > a:not(:last-child)::before {
    content: "";
    position: absolute;
    top: 50%;
    right: -35px;
    width: 1px;
    height: 46px;
    background-color: var(--color-light-gray);
    transform: translateY(-50%);
}

.main-status .main-status-list dt {
    font-weight: 500;
    font-size: 15px;
    color: #0b266c;
}

.main-status .main-status-list dd .num {
    font-size: 30px;
    font-weight: 700;
}

.main-status .main-status-list dd .str {
    margin-left: 3px;
    color: #000;
    font-size: 12px;
}

/* ===============================
    3. 현재가 검색
   =============================== */
.main-current-search {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px 0;

    padding: 13px 0;
    margin-bottom: 20px;
    border-radius: 10px;
    background-color: #e2f3fc;
}

.main-current-search .input-group {
    position: relative;
    display: flex;
    align-items: center;
    gap: 0;
}

.main-current-search .input-group label {
    font-weight: 700;
    font-size: 18px;
    margin-right: 42px;
}

.main-current-search .input-group input {
    width: 469px;
    height: 32px;
    padding: 0 11px 0px 11px;
    border-radius: 5px;
    border: none;
    margin-right: 8px;
}

.main-current-search .input-group input::placeholder {
    color: var(--color-light-gray);
}

.main-current-search .input-group .btn_search {
    position: relative;
    top: 0;
    margin-left : 0;
    width: 60px;
    height: 32px;
    color: #fff;
    background: #4E78BA;
    border: 1px solid #4E78BA;
    border-radius: 5px;
    font-size: 13px;
    font-weight: 600;
    margin-right: 4px;
}

.main-current-search .input-group .btn_search:hover {
    background: #5685CE;
    border: 1px solid #4E78BA;
}

.main-current-search .input-group .btn_search2 {
    position: relative;
    top: 0;
    right: 2px;
    width: 62px;
    height: 32px;
    color: #333;
    background: #E8E8E8;
    border: 1px solid #C5C2C2;
    border-radius: 5px;
    font-size: 13px;
    font-weight: 600;
}
.main-current-search .input-group .btn_search2:hover {
    background: #F0F0F0;
    border: 1px solid #C4C4C4;
}
.main-current-search .current-list {
    display: flex;
    gap: 0 60px;
}

.main-current-search .current-list li {
    position: relative;
}

.main-current-search .current-list li:not(:last-child)::before {
    content: "";
    position: absolute;
    right: -31px;
    top: 50%;
    width: 0px;
    height: 10px;
    background-color: #000;
    transform: translateY(-50%);
    border-right: 1px solid #000;
}

.main-current-search .current-list .num {
    margin-left: 14px;
    font-weight: 500;
}

.main-current-search .current-list .up,
.main-current-search .current-list .down {
    display: inline-block;
    padding-left: 14px;
    font-size: 15px;
    background-repeat: no-repeat;
    background-position: left center;
}

.main-current-search .current-list .up {
    background-image: url("../images/common/ico-number-up.svg");
    color: var(--color-point-red);
}

.main-current-search .current-list .down {
    background-image: url("../images/common/ico-number-down.svg");
    color: var(--color-point-blue);
}


/* ===============================
    4. 종목정보
   =============================== */
.main-stock {
    position: relative;
    margin-bottom: 20px;
}

.main-stock .main-title {
    /*padding-bottom: 0;*/
}

/* 그리드 헤드 */
.main-stock-grid thead th {
    padding: 15px 0;
    letter-spacing: 1.4px;
}

/* 그리드 바디 */
.main-stock-grid tbody p {
    margin-top: 5px;
    background-color: var(--color-light-gray2);
    line-height: 40px;
    font-weight: 500;
    min-height:40px
}

.main-stock-grid tbody td {
	vertical-align: middle;
}

.main-stock-grid tbody td:first-child p {
    border-top-left-radius: 3px;
    border-bottom-left-radius: 3px;
}

.main-stock-grid tbody td:last-child p {
    border-top-right-radius: 3px;
    border-bottom-right-radius: 3px;
}

.main-stock-grid tbody tr:first-child td p {
    margin-top: 0;
}

.main-stock-grid tbody a {
    width: 310px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-weight: 500;
}

.main-stock-grid .up p::before,
.main-stock-grid .down p::before,
.main-stock-grid .up-arr p::before,
.main-stock-grid .down-arr p::before {
    content: "";
    display: inline-block;
    margin-right: 10px;
    width: 10px;
    height: 8px;
}

.main-stock-grid .up p::before {
    background: no-repeat url("/public/assets/images/common/ico-number-up.svg");
}

.main-stock-grid .down p::before {
    background: no-repeat url("/public/assets/images/common/ico-number-down.svg");
}

.main-stock-grid .up-arr p::before {
    background: no-repeat url("/public/assets/images/common/ico-number-up-arr.svg");
}

.main-stock-grid .down-arr p::before {
    background: no-repeat url("/public/assets/images/common/ico-number-down-arr.svg");
}

/* ===============================
    5. 공시정보
   =============================== */
.main-announcement {
    position: relative;
    margin-bottom: 20px;
}

/* 그리드 헤더 */
.main-announcement-grid thead th {
    position: relative;
    padding: 11px 0;
    border-top: 1px solid var(--color-font-default);
    border-bottom: 1px solid var(--color-light-gray3);
}

/* .main-announcement-grid thead th:not(:last-child)::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    width: 1px;
    height: 16px;
    background-color: var(--color-light-gray);
    transform: translateY(-50%);
} */

/* 그리드 바디 */
.main-announcement-grid tbody td {
    position: relative;
    border-bottom: 1px solid var(--color-light-gray);
    line-height: 40px;
    font-weight: 500;
}

.main-announcement-grid tbody a {
    width: 720px;
    padding: 0 12px 0 70px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-weight: 500;
}

/* ===============================
    6. 시장정보
   =============================== */
.main-notice {
    position: relative;
    margin-bottom: 20px;
}

.main-notice-list {
    display: flex;
    gap: 0 24px;
}
.main-notice-list li {
    position: relative;
    flex: 1;
    padding: 30px 30px 60px 30px;
    min-height: 220px;
    border-radius: 20px;
    background-color: #f6f6f8;
    border: var(--border-style-03);
    transition: 0.5s;
}

.main-notice-list li:hover {
    background-color: var(--color-white);
    border: var(--border-style-02);
    box-shadow: 0 0 10px rgba(0 0 0 / 10%);
}

.main-notice-list h3 {
    padding-bottom: 15px;
    font-weight: 500;
    color: #7f7f7f;
}
.main-notice-list .title {
    display: block;
    font-weight: 500;
    line-height: 19px;
}

.main-notice-list .date {
    position: absolute;
    left: 30px;
    bottom: 30px;
    color: #979797;
    font-size: 13px;
}

/* ===============================
    7. 기타정보
   =============================== */
.main-inquiry {
    display: flex;
    gap: 0 24px;
    margin-bottom: 20px;
}

.main-inquiry-banner {
    width: 420px;
    height: 173px;
    background-repeat: no-repeat;
    background-position: right top;
    border-radius: 10px;
    transition: 0.5s;
}

.main-inquiry-banner.banner-01 {
    background-image: url("../images/main/img-banner1.png");
}

.main-inquiry-banner.banner-01:hover {
    background-image: url("../images/main/img-banner1-on.png");
}

.main-inquiry-banner.banner-02 {
    background-image: url("../images/main/img-banner2.png");
}

.main-inquiry-banner.banner-02:hover {
    background-image: url("../images/main/img-banner2-on.png");
}

.main-inquiry-banner a {
    display: block;
    height: 100%;
    padding: 37px 27px;
}

.main-inquiry-banner h3 {
    padding-bottom: 15px;
    line-height: 24px;
    font-size: 20px;
    font-weight: 700;
}

.main-inquiry-banner p {
    line-height: 16px;
    font-size: 12px;
    font-weight: 500;
}

.main-inquiry-files {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.main-inquiry-files li {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 20px;
    font-weight: 500;
    border-radius: 10px;
    background: #f4f8fb;
}

.main-inquiry-files .down {
    width: 23px;
    height: 23px;
    border-radius: 50%;
    background: no-repeat url("../images/main/ico-inquiry-down.svg") center;
    transition: 0.5s;
}

.main-inquiry-files .down:hover {
    background: no-repeat url("../images/main/ico-inquiry-down-on.svg") center;
}

/* ===============================
    8. 참여증권사
   =============================== */
.main-sponsor {
    position: relative;
    display: flex;
    align-items: center;
    margin: 34px 0 58px;
    gap: 20px;
}

.main-sponsor h2 {
    width: 87px;
    font-size: 19px;
    font-weight: 700;
}

.main-sponsor-list {
    flex: 1;
    position: relative;
    width: 800px;
    padding: 0 80px;
}

.main-sponsor-list .slick-slide {
    position: relative;
    height: 61px;
    margin: 0 4.5px;
    border-radius: 5px;
    background-color: #f6f6f8;
    border-radius: 5px;
    overflow: hidden;
}

/* 이전 다음 버튼 */
.main-sponsor-list .slick-arrow {
    position: absolute;
    top: 50%;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    border: 1px solid var(--color-light-gray3);
    font-size: 0;
    line-height: 0;
    transform: translateY(-50%);
    transition: 0.5s;
}

.main-sponsor-list .slick-arrow:hover {
    border: var(--border-style-02);
}

.main-sponsor-list .slick-arrow.slick-prev {
    left: 0;
    background: no-repeat url("../images/main/ico-sponsor-prev.svg") center;
}

.main-sponsor-list .slick-arrow.slick-prev:hover {
    background: no-repeat url("../images/main/ico-sponsor-prev-on.svg") center;
}

.main-sponsor-list .slick-arrow.slick-next {
    right: 0;
    background: no-repeat url("../images/main/ico-sponsor-next.svg") center;
}

.main-sponsor-list .slick-arrow.slick-next:hover {
    background: no-repeat url("../images/main/ico-sponsor-next-on.svg") center;
}

/* 페이징 */
.main-sponsor .controller {
    display: flex;
    gap: 4px;

    position: absolute;
    top: calc(100% + 17px);
    left: calc(50% + 55px);
    padding-right: 12px;
    transform: translateX(-50%);
}

.main-sponsor .controller .slick-dots {
    display: flex;
    gap: 4px;
}

.main-sponsor .controller .slick-dots li button {
    display: block;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background-color: #e2e2e2;
    font-size: 0;
    transition: width 0.3s;
}

.main-sponsor .controller .slick-dots .slick-active button {
    width: 17px;
    background-color: var(--color-primary-blue);
    border-radius: 7px;
}

.main-sponsor .controller .power {
    position: absolute;
    top: 0;
    right: 0;
    width: 7px;
    height: 7px;
}

.main-sponsor .controller .power.stop {
    background: no-repeat url("../images/main/ico-main-sponsor-stop.svg") center;
}

.main-sponsor .controller .power.play {
    background: no-repeat url("../images/main/ico-main-sponsor-play.svg") center;
}
.more-btn {
    font-size: 13px;
    border-radius: 21px;
    display:inline-block;
    width:50px;
    text-align:center;
    background:#f4f8fb;
    position:absolute;
    top:7px;
    left:100px;
    color: #7a8085;
}

