.wide .txtbox {box-sizing:border-box;}
.wide .txtbox p { margin:0; font-weight:400; color:#111; line-height:1.75em; word-break:keep-all; letter-spacing:-0.015em;}
.title-wrap span {color:#1244c3; text-transform:inherit; letter-spacing:0.1em; font-weight: 900;}
.wide .title-wrap h1,.title-wrap .title {color:#151515; text-transform:inherit; letter-spacing:0.025em; margin:0; padding:15px 0 0;}
.relative-box{position: relative;}

a.link-btn { display:inline-block; background:#fff; color:#000; font-size:16px; letter-spacing:0.05em ;padding:2px 16px; line-height:38px; box-sizing:border-box; font-weight:600; border: 1px solid #000; min-width: 150px; position: relative;}
a.link-btn:hover { transition:.3s;background: #1244c3; color: #fff; border: 1px solid #1244c3; }
a.link-btn-2 {
display:inline-block; background:transparent; color:#fff; font-size:16px; letter-spacing:0.05em ;padding:2px 16px; line-height:38px; box-sizing:border-box; font-weight:600; border: 1px solid #fff; min-width: 150px; position: relative;}
a.link-btn-2:hover { transition:.3s;background: #fff; color: #000; border: 1px solid #fff; }
a.link-btn::after {content:""; background: url(../images/comm/btn-light-arrow.png) no-repeat 0px 0px;display: inline-block; width: 6px; height: 10px; background-size: contain; position: absolute; right: 20px; top: 50%; transform:translate(-50%,-50%);}
a.link-btn:hover:after {content:""; background: url(../images/comm/btn-w-light-arrow.png) no-repeat 0px 0px;display: inline-block; width: 6px; height: 10px; background-size: contain;}


.bottom .title-wrap {text-align:center;}
.bottom .title-wrap .title::before {margin:10px auto;}

@media (min-width:320px) {
	.wide {display:block;}
	.wide > div {display:block; width:100%; }
	.wide .txtbox {padding:30px;}
	.wide .title-wrap span {font-size:13px;}
	.wide .title-wrap h1, .title-wrap .title {font-size:30px;}
	.wide .txtbox p {max-width:100%; padding:10px 0;}
}

@media (min-width: 768px) {
	.media-slider button.slick-arrow {display:inline-block!important;}
	.wide > div {display:table-cell; vertical-align:middle; width:50%;}
	.media-list .thumb {height:150px; }
}


@media (min-width:1180px) {
	.wide {width:100%; display:table;}
	.wide .txtbox {padding:50px;}
	.wide .txtbox p { padding:10px 0 10px;}
	.wide .title-wrap span {font-size:1.1em;}
	.wide .title-wrap h1,.title-wrap .title {font-size:45px; }
	a.link-btn {padding:4px 20px; line-height:50px; min-width: 200px;}
	a.link-btn-2 {padding:4px 20px; min-width: 200px;}
}

@media (min-width:1420px) {
	.wide .txtbox { padding:100px 80px;}
	.wide .txtbox p {font-size:18px; max-width:65%; }
	.title-wrap span {font-size:20px; }
	.wide .title-wrap h1,.title-wrap .title {font-size:54px; }
}

.scroll-item {
    display: block;
    opacity: 1;
    position: absolute;
    left: 50%;
    bottom: 10px;
    transform: translate(-50%, 0px);
    z-index: 1;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0em;
    transition: 0.3s;
    color: #3a3a3a;
    text-align: center;
}

.scroll-arrow-container {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.scroll-arrow {
    width: 14px;
    height: 14px;
    border-left: 2px solid #3a3a3a;
    border-bottom: 2px solid #3a3a3a;
    transform: rotate(-45deg);
    animation: scroll-down 1.5s infinite;
    opacity: 0;
}

.scroll-arrow:nth-child(1) {
    animation-delay: 0s;
}
.scroll-arrow:nth-child(2) {
    animation-delay: 0.3s;
}
.scroll-arrow:nth-child(3) {
    animation-delay: 0.6s;
}

@keyframes scroll-down {
    0% {
        transform: translateY(0) rotate(-45deg);
        opacity: 0;
    }
    30% {
        opacity: 1;
    }
    100% {
        transform: translateY(10px) rotate(-45deg);
        opacity: 0;
    }
}

@media (min-width: 1440px) {
    .scroll-item { bottom: 14px; }
}

/* quickMenu */
.quickMenu-box {display: block; position: fixed; bottom: 40px; right: 10px; width: 60px; z-index: 99; text-align: center; padding: 0; overflow: hidden;}
.quickMenu-box li a{display: block; width: 60px; height: 60px; font-weight: 600;}
.quickMenu-box .quickMenu-icon{max-width: 24px;}
.quickMenu-box .quickMenu-link{display: table;}
.quickMenu-box .quickMenu-con{display: table-cell; vertical-align: middle; border-radius: 50%; }
.quickMenu-box li:first-child .quickMenu-con{background: #eaedf0; color: #aaa;}
.quickMenu-box li:nth-child(2){margin-top: 10px;}
.quickMenu-box li:nth-child(2) .quickMenu-con{background: #00a2b2; color: #fff;}
.quickMenu-box .quickMenu-txt{font-size: 12px;}
@media(min-width: 600px) {
    .quickMenu-box{display: block;}
}
@media(min-width: 992px) {
    .quickMenu-box { display:block; width: 80px; position: fixed; right: 40px; top: 40%; bottom: inherit;}
    .quickMenu-box li a{width: 80px; height: 80px;}
    .quickMenu-box .quickMenu-icon{max-width: 40px;}
    .quickMenu-box .quickMenu-txt{font-size: 14px;;}
}
.main-visual-frame{ overflow: hidden;}
.main-visual-frame .main{padding: 66px 0 80px; background: linear-gradient(135deg, #ffefe1 10%, #fffcfa 40%, #ffffff 50%); height: 100%; position: relative;}
@media (min-width:768px) {
    .main-visual-frame .main{padding: 76px 0 90px;}
}
@media (min-width:1440px) {
    .main-visual-frame .main{padding: 170px 0 40px; position: relative; height: 100vh;}
    .main-visual-frame .main .main-con{position: absolute; top: calc(50% + 60px); left: 50%; transform: translate(-50%,-50%);}
}
/* 높이 작업*/
@media (max-height: 768px) {
  .main-visual-frame .main { height: auto; padding: 75px 0 100px;  position: relative;}
  .main-visual-frame .main .main-con { position: static; transform: none; top: auto; left: auto;}
}
/* 메인슬라이드*/
.swiper-slide:not(.swiper-slide-active) .main-top-con { opacity: 0;}/*슬라이드 뒤에 컨텐츠 안비치게 처리*/
.main .main-top-con{text-align: center; padding-bottom: 140px; transition: opacity 0.5s ease;}
.main .slogan-big-txt{ vertical-align: middle; word-break: keep-all;}
.main .main-swiper{overflow: visible;}
.main .main-swiper .autoplay-progress { position: absolute; left: 50px; bottom: 20px; z-index: 1; width: 100px; height: 3px; background-color: #ddd; overflow: hidden;}
.main .main-swiper .autoplay-progress svg { --progress: 0; position: absolute; left: 0; top: -4px; width: 100%; stroke-width: 3px; stroke: #222; fill: none; stroke-dashoffset: calc(100 * (1 - var(--progress))); stroke-dasharray: 100;}
.main .main-swiper .all-box{position: absolute; left: calc(50% + 40px); bottom: 20px; transform: translateX(-50%); text-align: left; width: 100%; max-width: 400px; height: 30px; z-index: 1;}
.main .main-swiper .all-box .progress-box{font-size: 22px; position: absolute; left: 0; bottom: 0px; right: auto; text-align: left; width: 100%; max-width: 200px; height: 30px; display: none;}
.main .main-swiper .progress-box .swiper-pagination{text-align: left; left: 30px;}
.main .main-swiper .progress-box .swiper-pagination .total{position: absolute; right: 0px; top: 0; color: #ccc;}
.main .main-swiper .all-box .arrow-box{ position: absolute; left: 0; bottom: 10px; right: auto; text-align: left; width: 100%; max-width: 250px; height: 30px;}
.main .main-swiper .all-box .arrow-box .swiper-button-prev, .main .main-swiper .all-box .arrow-box .swiper-button-next{position: absolute; top: auto; bottom: -2px; right: 0; left: auto; width: 30px;height: 30px;}
.main .main-swiper .all-box .arrow-box .swiper-button-next{ margin-right: -35px;}
.main .main-swiper .swiper-button-prev:before,
.main .main-swiper .swiper-button-next:before { content: ""; display: inline-block; width: 10px;  height: 10px; border-top: 2px solid #ccc; border-left: 2px solid #ccc; transition: 0.5s;}
.main .main-swiper .swiper-button-prev:hover:before,
.main .main-swiper .swiper-button-next:hover:before {border-top: 2px solid #222; border-left: 2px solid #222;}
.main .main-swiper .swiper-button-prev:before { transform: rotate(135deg);}
.main .main-swiper .swiper-button-next:before { transform: rotate(135deg);}
.main .main-swiper .swiper-button-prev:after,
.main .main-swiper .swiper-button-next:after {display: none;}
.main .main-right-img-box{vertical-align: middle; position: relative; margin-top: 30px; }
.main .main-right-img-box .main-right-in-img{padding-bottom: 64%; margin: 0 auto; position: relative; overflow: hidden; border-radius: 5px;}
.main .main-right-img-box .main-right-in-img img{ min-height: 222px; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); max-width: none; width: 100%;  transition: .3s;}
.main .main-right-img-box .circular-rotation { width: 260px; height: 260px; background: #fff; border: 1px solid #ddd; border-radius: 50%; margin: 0 auto; position: relative; }
.main .main-right-img-box .circle-point { width: 15px; height: 15px; border-radius: 50%; background: #00a2b2; position: absolute; top: 50%; left: 50%; transform: translate(-136px, -50%); }
.main .main-right-img-box .circle-rotate-wrapper { width: 100%; height: 100%; position: absolute; top: 0; left: 0; transform-origin: center center;}
.main .main-right-img-box .rotate-anim { animation: rotateCircle 20s linear infinite;}

@keyframes rotateCircle {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes rotateCircle {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.main .main-right-img-box .circle-img{border-radius: 50%; overflow: hidden; position: absolute;  bottom: -50px; width: 100%; height: 100%; max-width: 260px; max-height: 260px; left: calc(50% + 30px); transform: translateX(-50%);}
.custom-pagination { display: flex; gap: 12px; align-items: center;}
.custom-pagination .swiper-pagination-bullet { width: 10px; height: 10px; background: #ccc; border-radius: 50%; opacity: 1; transition: background 0.3s;}
.custom-pagination .swiper-pagination-bullet-active { background: #007aff;}
.autoplay-toggle { font-size: 18px; color: #ccc; cursor: pointer; user-select: none; font-weight: 800; margin-top: 4px; display: inline-block; position: absolute; z-index: 10;}

/*메인문구 애니메이션 */
.slogan-big-txt > div {opacity: 0;}
.slogan-big-txt.animated .slogan-mini-txt{padding-left: 0.2rem;}
.slogan-big-txt.animated > div {animation: sloganFadeIn 1s ease forwards;}
.slogan-big-txt.animated > div:nth-child(2) {animation-delay: 0.6s;}
.slogan-big-txt.animated > div:nth-child(3) {animation-delay: 1.2s;}

.main-top-con.no-ani-txt .slogan-big-txt > div {opacity: 1;}
.main-top-con.no-ani-txt .slogan-big-txt.animated > div {animation: none;}
.main-top-con.no-ani-txt .slogan-big-txt.animated > div:nth-child(2) {animation-delay: 0;}
.main-top-con.no-ani-txt .slogan-big-txt.animated > div:nth-child(3) {animation-delay: 0;}

@keyframes sloganFadeIn {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (min-width:768px) {
    .main .main-right-img-box{width: 500px; display: inline-block;}
    .main .main-swiper .autoplay-progress{width: 170px; bottom: 25px; left: 60px;}
    .main .main-swiper .autoplay-progress svg{top: -8px;}
    .main .main-swiper .all-box{bottom: 0px;}
    .main .main-swiper .all-box .progress-box{font-size: 24px; max-width: 280px; display: inline-block;}
    .main .main-swiper .all-box .arrow-box{max-width: 330px;}
    .main .main-swiper .swiper-button-prev:before,
    .main .main-swiper .swiper-button-next:before { width: 12px;  height: 12px;}
}
@media (min-width:992px) {
    .main .main-top-con{text-align: left; padding-bottom: 80px;}
    .main .slogan-big-txt{font-size: 35px; width: calc(100% - 510px); display: inline-block;}
    .main .main-right-img-box{margin-top: 0;}
    .main .main-swiper .all-box{left: 0; transform: none;}
}

@media (min-width:1440px) {
    .main .slogan-big-txt{width: calc(50% - 26px); margin-right: 20px; font-size: 55px;}
    .main .main-right-img-box{width:50%;}
    .main .main-swiper .autoplay-progress{width: 230px;}
    .main .main-swiper .all-box{bottom: 90px;}
    .main .main-swiper .all-box .progress-box{max-width: 350px; font-size: 30px;}
    .main .main-swiper .all-box .arrow-box{ max-width: 480px;}
    .main .main-swiper .all-box .arrow-box .swiper-button-prev, .main .main-swiper .all-box .arrow-box .swiper-button-next{bottom: 3px;}
}
@media (min-width:1550px) {
    .main .slogan-big-txt{font-size: 60px;}
}

/* CON */
.main-padding-con{margin: 30px 0; padding: 60px 0; position: relative;}
@media (min-width:1440px) {
    .main-padding-con{margin: 50px 0; padding: 120px 0; position: relative;}
}

/* main-shot */
.main-con.mc2{overflow: hidden;}
.main-shot-box-2 ul{padding: 0;}
.main-shot-box-2 { width: 100%; height: 70px; overflow: hidden; position: relative;}
.main-shot-box-2 ul { display: flex; flex-direction: column; transition: transform 0.4s ease-in-out;}
.main-shot-box-2 li { height: 70px;  display: flex; justify-content: left; align-items: center;}
.main-shot-box-2 ul li img{max-height: 70px;}
.main-vaccine-point-2{margin-top: 40px; text-align: right;}
.main-vaccine-point-2 img{max-width: 100%;}
.main-shot-box-2 .main-shot-01{color: #c5111a;}
.main-shot-box-2 .main-shot-02{color: #00508c;}
.main-shot-box-2 .main-shot-03{color: #4d7b2d;}
.main-shot-box-2 .main-shot-04{color: #80766f;}
.main-shot-box-2 .main-shot-05{color: #009ad6;}
.main-shot-box-2 .main-shot-06{color: #671c7a;}
@media (min-width:992px) {
    .main-shot-box-2 ul li img{max-height:100%;}
    .main-shot-box-2 {height: 100px; }
    .main-shot-box-2 li {height: 100px; }
}
@media (min-width:1200px) {
}
@media (min-width:1440px) {
}

/* main-info */
.main-info{background: linear-gradient(180deg, #fff6f2 0%, #fff7f5 50%, #ffffff 100%); padding: 0;}
.main-con.mc3 .mc-right { margin-top: 50px;}
.main-con.mc3 .mc-left .mi-left-txt{word-break: keep-all;}
.main-con.mc3 .mi-img-box { display: flex; flex-direction: column; gap: 20px; margin: auto; }
.main-con.mc3 .mi-img-1 img { width: 100%; height: auto;}
.main-con.mc3 .mi-img-2 { display: flex; gap: 20px;}
.main-con.mc3 .mi-img-2 div { flex: 1;}
.main-con.mc3 .mi-img-2 img { width: 100%; height: auto;}
.main-con.mc3 .mi-img-3 .mi-img-3-01{margin: 10px 5px; border-radius: 5px; overflow: hidden;}
.main-con.mc3 .mi-img-3 .mi-img-3-01 img{width: 100%;}
.main-con.mc3 .mi-img-3 .mi-img-3-02{width: calc(100% / 2 - 12px); display: inline-block; vertical-align: middle; margin: 0 5px; border-radius: 5px; overflow: hidden;}
.main-con.mc3 .mi-img-3 .mi-img-3-02 img{width: 100%;}
.section-3-br br{display: none;}
@media (min-width:504px) {
    .section-3-br br{display: block;}
}
@media (min-width:992px) {
    .main-info{padding: 0;}
    .main-con.mc3 .mc-right { margin-top: 70px;}
    .main-con.mc3 .mi-img-3 .mi-img-3-01{width: calc(33% - 14px); display: inline-block; vertical-align: middle; margin: 0 5px;}
    .main-con.mc3 .mi-img-3 .mi-img-3-02{width: calc(33% - 14px); display: inline-block; vertical-align: middle; margin: 0 5px;}
}

/*메인 꽉찬 경우*/
.main-top-big .main-swiper .swiper-slide .main-top-con{ width: 100%; height: 70vh; background-image: url(../images/main/main-visual-image-v4-01.jpg); background-repeat: no-repeat; background-size: cover; border-radius: 10px; overflow: hidden; position: relative; background-position: 80% center;}
.main-top-big .main-top-con:before{content: ""; position: absolute; left: 0; top: 0; width: 100%; height: 100%; background: linear-gradient(to bottom, rgba(130, 100, 73, 0.5), rgba(0, 0, 0, 0.3));}
.main-top-big .main-top-con .slogan-big-txt{position: absolute; left: 0px; top: 50%; transform: translateY(-50%); color: #fff; width: 100%;}
.main-top-big.main .main-swiper .slogan-big-txt .color-4{color: #fff;}
.main-top-big.main .main-swiper .all-box .progress-box{display: none;}
@media (min-width:361px) {
    .main-top-big .main-swiper .swiper-slide .main-top-con{height: 60vh;}
}
@media (min-width:992px) {
    .main-top-big .main-swiper .swiper-slide .main-top-con{height: 70vh;}
    .main-top-big .main-top-con .slogan-big-txt{left: 40px; width: calc(100% - 80px);}
    .main-top-big .main-top-con:before{content: ""; background: linear-gradient(to right, rgba(130, 100, 73, 0.5), rgba(0, 0, 0, 0));}
}

/* 메인 풀페이지 후 레이아웃*/
.layout-2 {width:100%; margin:0 auto; position:relative; padding:50px 0px; height:auto;}
.sec2-box {position:absolute; left:50%; top:50%; margin:auto; width:100%; transform:translate(-50%,-50%); padding-top:56px;}
@media (min-width:1440px){
    .sec2-box {padding-top:150px}
    .layout-2 {height:100vh; padding: 0;}
}
/* 세로 높이 작업*/
@media (max-height: 768px) {
  .sec2-box {padding-top:56px}
  .layout-2 {height:auto; padding: 0;}
   #section-2 .sec2-box {padding-bottom:56px;}
   #section-3 .sec2-box {padding-bottom:56px;}
}

/* 푸터 및 풀페이지 모바일 컨텐츠 세로 크기 조절*/
.footer-box {position: fixed;top: 100%;left: 0;width: 100%;height: 232px;z-index: 5;transform: translateY(0);transition: transform 0.5s ease-in-out;}
.footer-box.sub-footer {position:static; transform:translateY(0); }
.fp-viewing-mFooter .footer-box { transform: translateY(-232px);}
@media (max-width: 1440px), (max-height: 768px) {
    .footer-box { position: static !important; transform: none !important; height: auto !important; margin-bottom: 0 !important; width: 100% !important; z-index: 1 !important; transition: none !important; box-sizing: border-box; display: block !important;}
    .layout-2 .sec2-box { position: relative; left: auto; top: inherit; transform: none;}
    .fp-section.fp-table {height: 100% !important;}
    .foot-info + .foot-info{margin-top: 5px;}
}

/* 메인컨텐츠 서브컨텐츠 스크롤로 인해 밀림현상 */
@media (min-width: 1441px) and (min-height: 769px) {
  .main-page {padding-right: 15px !important;}
  .main-page .rd-navbar-static {margin-right: 15px !important;}
}
.con-bg-bnt{ background: #fff; transition: 0.5s; min-width: 130px; font-weight: 400; border-color: rgba(1, 1, 1, .8); color: #008c9a; border: 1px solid #008c9a!important; padding: 0.9em 2em 0.9em; border-radius: 5px; overflow: hidden;}
.con-bg-bnt:hover { border: 1px solid #03363b!important; color: #03363b;}

@media (min-width: 992px) {
    .con-bg-bnt { padding: 16px 20px; min-width: 180px; min-height: 66px;}
}
