.lead { font-size:16px; color:#555; letter-spacing:-0.02em; line-height:1.75; font-weight:400}
@media screen and (max-width:640px) {
input {
	-webkit-appearance: none;
   -webkit-border-radius: 0;
}
.lead { font-size:17px}
}


/*메인배너*/
.main-carousel{height:900px; padding:0; display:block;padding-top:0px}
.main-carousel .li{height:900px; background-size:cover; background-position:center; position:relative}
.main-carousel .img01 { background-image: linear-gradient( rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5) ),url(../img/main_banner_img01.jpg)}
.main-carousel .img02 { background-image: linear-gradient( rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3) ),url(../img/main_banner_img02.jpg)}
.main-carousel .img03 { background-image: linear-gradient( rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3) ),url(../img/main_banner_img03.jpg)}
.main-carousel .li .copy_area_wrap {max-width:1400px; margin:auto; padding:0 60px}
.main-carousel .li .copy_area{position: absolute; top:50%; left:20%; -ms-transform: translateY(-50%); transform: translateY(-50%);margin:0 auto; color:#fff; z-index:2}
.main-carousel .li .copy_area h2{font-size:65px;font-weight:400; line-height:1.3; letter-spacing:1px; text-align:left}
/*.main-carousel .li .copy_area h2:after { content: " ";display: block; margin-top:30px; text-align:left; width:40px; height: 3px; background-color:#fff; clear: both;}*/
.main-carousel .li .copy_area h3{font-size:20px;font-weight:700;text-align:left;margin:15px 0 55px 0; color:#e4e4e4; line-height:1.6; font-family: 'Roboto', sans-serif;}
.main-carousel .li .copy_area h4{font-size:14px;font-weight:600;text-align:left; width:160px; border:1px solid rgba(255, 255, 255, .4)}
.main-carousel .li .copy_area h4:hover { background-color:#fdb812; border:1px solid #fdb812; color:#222; -webkit-transition: all 0.2s ease-in-out;-moz-transition: all 0.2s ease-in-out;-ms-transition: all 0.2s ease-in-out;-o-transition: all 0.2s ease-in-out;transition: all 0.2s ease-in-out;}
.main-carousel .li .copy_area h4 a{color:#fff;padding:10px 40px;display:block; text-align:center; letter-spacing:1px}
.main-carousel .li .copy_area .reservation {}
.main-carousel .li .copy_area .reservation a {font-size:18px; color:#e4e4e4; line-height:1.6; font-family: 'Roboto', sans-serif;}
.main-carousel .li .copy_area .reservation a .reser-img {
	width:149px; height: 21px; background: url("../img/arrow.png") no-repeat; position: absolute;
	bottom:-3%; left:-2%
}
.main-carousel .li .copy_area_movie{width:100%; position:relative}
.main-carousel .li .copy_area_movie h2{color:#fff; position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); font-size:40px; line-height:2em; text-align:left; z-index:1;}
.main-carousel .li .copy_area_movie h2:after {content: " ";display: block; margin:50px 0 0; width:40px; height: 3px; background-color:#fff; clear: both;}
.main-carousel .li .copy_area_movie h3{color:#fff; position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); font-size:42px; line-height:2em; text-align:left; margin:15px 0 40px 0; z-index:1;}
.main-carousel .owl-dots{position:absolute;width:100%; text-align:center; margin:0 auto; bottom:135px;}
.main-carousel .owl-dots .owl-dot{background:rgba(255, 255, 255, 0.5);width:30px;height:5px;display:inline-block;margin-left:10px; border:0}
.main-carousel .owl-dots .owl-dot.active{background:rgba(255, 255, 255, 1)}
.main-carousel .owl-nav{position:absolute;width:100%;bottom:50%}
.main-carousel .owl-nav .owl-prev{width:80px;height:80px;background:url(../img/btn_banner_prev.png) no-repeat;text-indent:-9999px;position:absolute;left:100px}
.main-carousel .owl-nav .owl-next{width:80px;height:80px;background:url(../img/btn_banner_next.png) no-repeat;text-indent:-9999px;position:absolute;right:100px}


@media screen and (max-width:600px) {
	.main-carousel{padding-top:110px}
	.main-carousel .li { height:650px}
	.main-carousel .img01 { background-image: linear-gradient( rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5) ),background-image:url("../img/m-main01.jpg");}
	.main-carousel .img02 { background-image: linear-gradient( rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5) ),background-image:url("../img/m-main02.jpg");}
	.main-carousel .img03 { background-image: linear-gradient( rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5) ),background-image:url("../img/m-main03.jpg");}
	
	.main-carousel .li .copy_area h2 {font-size: 36px; letter-spacing:-3px}
	.main-carousel .li .copy_area h3 { max-width:400px; margin:10px auto 15px auto; font-size: 17px; font-weight: 700; letter-spacing:-0.5px}
	.main-carousel .owl-nav { display:none}

}
/*메인배너*/






.contents1 {width:100%; padding:150px 0}

.contents1 h3 {font-size: 40px; letter-spacing: -0.02em; color: #121c20;  font-weight: 700; text-transform : uppercase; text-align: center; padding:80px 0}
.contents1 .m-flex { display: flex;justify-content: space-between; flex-wrap: wrap; text-align: center;}
.contents1 .m-flex .menu { width:25%}
.contents1 .m-flex .menu .mtxt1 {margin: 20px 0; font-size: 26px; color:#111c20; font-weight: 500; padding:0}
.contents1 .m-flex .menu .mtxt2 {font-size: 16px; color:#6a6a6a; line-height: 1.6em;font-family: 'Roboto', sans-serif; min-width: 200px; padding: 0 10px 30px 10px;}



@media screen and (max-width:768px) {
 .contents1 .m-flex .menu { width:50%}
}


@media screen and (max-width:640px) {
 .contents1 { padding:50px 0}
 .contents1 h3 { padding:0 0 80px 0}
 .contents1 .m-flex .menu { width:100%}
}



.contents2 {width:100%; padding:150px 0}
.contents2 .c-flex {width: 100%;display: flex; justify-content: space-between; flex-wrap: wrap; text-align:center}
.contents2 .c-flex .chefs { width:25%}
.contents2 .c-flex .chefs .chefs-img img { width:100%}
.contents2 .c-flex .ctxt1 {margin-top: 30px; font-size: 26px; color: #111c20; font-weight: 500;}
.contents2 .ctxt2 {font-size: 16px; color: #6a6a6a; font-family: 'Roboto', sans-serif; margin-top: 10px; padding-bottom:10%}


@media screen and (max-width:768px) {
  .contents2 .c-flex .chefs { width:50%}
}

@media screen and (max-width:640px) {
  .contents2 { padding:50px 0}
  .contents2 .c-flex .chefs { width:100%}
}


.contents3 { width:100%; padding:.contents1 h350px 0; }
.contents3. inner { max-width:1400px; margin:0 auto} 
.contents3  h3 {font-size: 40px; letter-spacing: -0.02em; color: #121c20; font-weight:bold; text-align:center; padding-bottom:100px}
.contents4 .history-inner .h-txt h3{text-transform : uppercase; text-align: center; padding:80px 0; font-weight:bold;}

@media screen and (max-width:640px) {
.contents3 { padding:50px 0}
.contents3 h3 { padding:0 0 80px 0; font-size:32px}

}


.contents4 .history-inner .h-txt h3 {font-size: 40px; letter-spacing: -0.02em; color: #121c20; position: relative; margin: 200px 0 100px 0; font-weight: 700; text-transform : uppercase; text-align: center}
.contents4 .history-inner .history {display: flex; justify-content: center; align-items: center; position: relative; flex-wrap: wrap}
.contents4 .history-inner .history::after {z-index: -1; width: 100%; height:500px; position: absolute; content: ""; background-color: #f9f9ff; }
.contents4 .history-inner .history .h-img {padding: 0 10px 80px 0;}
.contents4 .history-inner .history .h-img img {width: 80%;}
.contents4 .history-inner .history .history-txt { padding:0 20px}
.contents4 .history-inner .history .history-txt .htxt1 {font-size: 35px; color:#111c20; font-weight: 500}
.contents4 .history-inner .history .history-txt .htxt2 {font-size:16px; color: #6a6a6a; line-height: 1.6em; margin-top: 30px; font-family: 'Roboto', sans-serif; min-width:200px}

@media screen and (max-width:640px) {
.contents4 .history-inner .h-txt h3 { margin:50px 0 50px 0}
.contents4 .history-inner .history::after { height:800px;  position: absolute; top:50px}
.contents4 .history-inner .history .history-txt .htxt1 { font-size:32px}
.contents4 .history-inner .history .h-img img { display:block; margin:0 auto}

}

.contents5 { padding:150px 0}
.contents5 .s6-inner { margin: 0 auto; max-width: 1400px;}
.contents5 .s6-inner .s6-flex {display:flex; flex-wrap: wrap}
.contents5 .s6-inner .s6-flex .s6-img {margin-left: 3%; margin-bottom: 3%}
.contents5 .s6-inner .s6-flex .s6-img:hover {opacity: 0.5}
.contents5 .s6-inner .s6-flex .s6-img img {width: 100%}

.contents5 .s6-inner .s6-flex .s6-img:nth-child(1),
.contents5 .s6-inner .s6-flex .s6-img:nth-child(4) {width: 65.666%;}
.contents5 .s6-inner .s6-flex .s6-img:nth-child(2),
.contents5 .s6-inner .s6-flex .s6-img:nth-child(3) {width: 31.333%}
.contents5 .s6-inner .s6-flex .s6-img:nth-child(2n+1) {margin-left: 0}

@media (max-width: 576px) {
.contents5 { padding:50px 0}
.contents5 .s6-inner .s6-flex .s6-img:nth-child(1), .contents5 .s6-inner .s6-flex .s6-img:nth-child(4) { width: 100%; margin-left:0}
.contents5 .s6-inner .s6-flex .s6-img:nth-child(2), .contents5 .s6-inner .s6-flex .s6-img:nth-child(3) { width: 48.5%;}
.contents5 .s6-inner .s6-flex .s6-img:nth-child(2) { margin-left:0}
.contents5 .s6-inner .s6-flex .s6-img:nth-child(3) { margin-left:3%}
 
}

/*서브상단*/
.sub_visual{position:relative;max-width:2560px;margin:0 auto;height:522px;overflow:hidden;background-repeat:no-repeat;background-position:center top}
.sub_visual.visual01 .bg{background-image:url(../img/sub_visual01.jpg)}
.sub_visual.visual02 .bg{background-image:url(../img/sub_visual02.jpg)}
.sub_visual.visual03 .bg{background-image:url(../img/sub_visual03.jpg)}
.sub_visual.visual04 .bg{background-image:url(../img/sub_visual04.jpg)}
.sub_visual.visual05 .bg{background-image:url(../img/sub_visual05.jpg)}




.sub_visual .title_warp { max-width:1240px; margin:0 auto; }
.sub_visual .title_warp .title_page { height:522px; position: relative;text-align:center; margin:0 auto; transform:translateY(40%);  z-index:2}
.sub_visual h3{font-size:14px;font-weight:500; padding-bottom:20px; letter-spacing:1px; color:#fff; opacity:0.8}
.sub_visual .main_title{font-size:45px; font-weight:500; text-align:center; color:#fff; letter-spacing:-1px }
.sub_visual .inBox {font-size:14px; padding-top:10px; color:#fff}
.sub_visual .inBox i { font-size:14px; color:#fff; display:inline-block;}
.sub_visual .inBox a { padding:0 13px 0 0}
.sub_visual .inBox span {padding:0 13px; opacity:0.8}
.sub_visual .inBox span.strong { opacity:1; padding:0 0 0 13px}
.sub_visual .cover{position:absolute;top:0;left:0;width:100%;height:100%;background:url(../img/sub_visual_cover.png) center bottom no-repeat;
-webkit-background-size:cover;-moz-background-size:cover;-o-background-size:cover;background-size:cover;min-width:1200px;opacity:.6;z-index:1}
.sub_visual .bg{position:absolute;top:0;left:0;width:100%;height:100%;background-position:center center;background-repeat:no-repeat;background-size:cover;}
.sub_visual.tmp {height:100px; background-color:#000;}
.sub_visual.tmp .title_warp {display:none;}

.sub_visual h3,
.sub_visual .main_title ,
.sub_visual .inBox {
	animation-duration: 0.7s;
	animation-fill-mode: both;
	animation-iteration-count: 1;
	animation-timing-function: ease;
	-webkit-animation-duration: 0.7s;
	-webkit-animation-fill-mode: both;
	-webkit-animation-iteration-count: 1;
	-webkit-animation-timing-function: ease;
	animation-delay: 0.3s; 
	-webkit-animation-delay: 0.3s;
	animation-name:visual-tit;
	 -webkit-animation-name:visual-tit;
}

.sub_visual .main_title {animation-delay: 0.6s; -webkit-animation-delay: 0.6s;} 
.sub_visual .inBox {animation-delay: 0.9s; -webkit-animation-delay: 0.9s;} 
 
.sub_visual .bg{ 
	content:'';
	animation-duration: 3s;
	animation-fill-mode: both;
	animation-iteration-count: 1;
	animation-timing-function: ease;
	-webkit-animation-duration: 3s;
	-webkit-animation-fill-mode: both;
	-webkit-animation-iteration-count: 1;
	-webkit-animation-timing-function: ease;
	animation-delay: 0.4s;
	 -webkit-animation-delay: 0.4s;
	animation-name:visual-zoom;
	 -webkit-animation-name:visual-zoom;
}
 

 
@keyframes visual-zoom {
	0% {transform:scale(1.2);}
	100% {transform:scale(1);}
}
@-webkit-keyframes visual-zoom {
	0% {transform:scale(1.2);}
	100% {transform:scale(1);}
}

@keyframes visual-tit {
	0% {opacity:0; -webkit-opacity:0; transform:translateY(20px);}
	100% {opacity:1; -webkit-opacity:1; transform:translateY(0px);}
}
@-webkit-keyframes visual-tit {
	0% {opacity:0; -webkit-opacity:0; transform:translateY(20px);}
	100% {opacity:1; -webkit-opacity:1; transform:translateY(0px);}
}




 @media screen and (max-width: 640px) { 
    .sub_visual { height:422px}
	.sub_visual .title_warp { width:100%;}
	.sub_visual .title_warp .title_page { height:422px}
	.sub_visual h3 { font-size:12px}
	.sub_visual .main_title { font-size:34px;}
	.sub_visual .inBox { font-size:12px}
 }
/*서브상단*/





/*서브 제목*/
.content_wrap { width:100%;}
.content_wrap .txtCon { max-width:1400px; margin:0 auto; padding:20px 20px 50px 20px; clear:both}
.content_wrap .txtCon .sub_title{margin:80px 0; padding:0; text-align:center;}
.content_wrap .txtCon .sub_title h2 {font-size:42px; color:#000; padding-bottom:20px}
.content_wrap .txtCon .sub_title p {font-size: 16px; color:#555; font-weight:300; word-break:keep-all;}
.content_wrap .txtCon .content_area { width:100%;}
.content_wrap .txtboard { max-width:1400px; margin:0 auto; padding:20px 20px 50px 20px; font-size:12px; line-height:1.75; letter-spacing:-0.02em; clear:both}
.content_wrap .txtboard span { font-size:14px}

@media screen and (max-width:640px) {
	.content_wrap .txtCon .sub_title{margin:50px 0 50px}
	.content_wrap .txtCon .sub_title h2 { font-size:32px}
}
/*서브 제목*/







/*서브 하단 네비*/
.share-area {float: right; display:block; padding-top:16px;box-sizing: border-box;}
.share-area .hide-wrap{width:151px;height:34px;overflow:hidden;float:left}
.share-area .hide-wrap .hide-area{width:151px;height:34px;position:relative;left:200px}
.share-area .hide-wrap .hide-area ul {overflow: hidden; padding:0; margin:0}
.share-area .hide-wrap .hide-area ul li {float: left;margin-left: 13px; cursor:pointer}
.share-area .hide-wrap .hide-area ul li:first-child {margin-left: 0;}
.share-area .share-btn{width:34px;height:34px;background-image:url(../img/share_open_bt.png);float:right;text-indent:-9999px;padding-left:18px;box-sizing:unset;background-repeat:no-repeat;background-position-x:right;transition:all .5s ease;     background-color: inherit; border:0; margin-right:20px}
.share-area .share-btn.active {background-image: url(../img/share_close_bt.png);border-left: 1px solid #fff;}
@media screen and (max-width: 770px) {

	 .share-area { display:none}
}
@media screen and (max-width: 640px) {
	 .share-area .share-btn { display:none}
	 .share-area { display:none}
}
/*서브 하단 네비*/








/*푸터*/
#footer{ width:100%; height:auto; background:#30343b; clear:both}
.foot_menu{width:100%; padding:20px 20px; background:#30343b; border-bottom:1px solid rgba(255,255,255,0.07);  }
.foot_menu .inner { max-width:1380px; padding:0 20px}
.foot_menu .fm{ float:left}
.foot_menu .fm li{ display:inline-block; line-height:2em; margin-right:15px; padding-right:15px; border-right:1px solid rgba(255,255,255,0.07); }
.foot_menu .fm li a{ font-size:1.08em; color:rgba(255,255,255,0.9);}
.foot_menu .fm li a.point{color:#32c0eb;}
.foot_menu .fm li:last-child{border-right:0; margin-right:0}
.foot_menu .sns{  float:right}
.foot_menu .sns li{ display:inline-block; margin-left:10px}
.foot_menu .sns li:first-child {margin-left:0;}

.foot_menu .sns li a { color:#777}
.foot_menu .sns li a:hover { color:#fff}
.foot_menu .menu { margin-top:20px; }
.foot_menu #phone { display:inline-block; color:#fff; font-size:12px; text-align:center; padding: 0px 20px; background-color:#6C6}
.foot_menu #kakao{ display:inline-block; color:#000; font-size:12px; text-align:center; padding: 0px 20px; background-color:#ffeb33}

.footer_in{ max-width:1380px; height:auto; padding:38px 20px; margin:0 auto; box-sizing:border-box}
.footer_in address h1{ font-size:16px; line-height:1.8; padding-bottom:10px; color:#fff; font-weight:bold; }
.footer_in address p{ overflow:hidden; font-size:13px; color:rgba(255,255,255,0.4);}
.footer_in address p strong{ font-weight: 500;  color:rgba(255,255,255,0.5);}
.footer_in address p span{display:inline-block;margin-right:10px; line-height:1.8em;}
.footer_in address p.addr{margin-top:18px;}
.footer_in address p.copylight{ font-size:13px; color:#999; margin-top:18px;}



.footer_in address{float:left; width:65%; font-style:normal}
.footer_in .customer{float:right; color:rgba(255,255,255,0.5); margin-left:20px; padding-left:30px; border-left:1px solid rgba(255,255,255,0.05); font-size:13px;}
.footer_in .customer .main_tel{font-size:15px; font-weight:300; color:#fff; margin-bottom:20px; margin-top:20px;}
.footer_in .customer .main_tel span{font-size:20px; font-weight:bold; color:#32c0eb; display:block; margin-top:10px;}
@media screen and (max-width: 1700px) {
#footer { margin-top:0}
}

@media screen and (max-width: 640px) {
	.footer_in address { width:100%}
	.footer_in .customer { width:100%; border-left:0; margin-left:0; padding-left:0}
	.foot_menu .sns { float:left; padding-top:20px}
	.foot_menu .fm { margin-bottom:20px}
}
/*푸터*/






.tl_pop_con{background:#fff;} 
.tl_pop_con h2.f_pop_tit{width:100%;height:80px;line-height:80px;background:#076aa3;font-size:20px;color:#fff;}
.tl_pop_con h2.f_pop_tit img {display:inline-block;margin-left:50px;margin-right:5px;margin-top:-10px;width:120px;}
.tl_pop_con h2.f_pop_tit span {display:inline-block; padding-left:50px;}
.f_pop_wrap {line-height:23px;text-align:justify;word-break:break-all;font-size:15px;overflow-y:auto;}
.f_pop_wrap strong {color:#00a19a;font-weight:normal;}
.f_pop_wrap p { color:#333; padding:40px 50px; line-height:1.6;}
.mfp-close:after { content: ''; display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; background: url("../img/w_btn_close.png") no-repeat center center; -webkit-transition: -webkit-transform 300ms; transition: -webkit-transform 300ms; transition: transform 300ms; transition: transform 300ms, -webkit-transform 300ms; border-radius: 50%; }
.mfp-close { width: 40px; height: 40px; text-indent: -999px;opacity: 1; overflow: hidden; background-color:transparent; border:0; }
button.mfp-close:hover:after { -webkit-transform: rotate(270deg); -ms-transform: rotate(270deg); transform: rotate(270deg); }


/* 텍스트 애니메이션 */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.text-animate-line {
    display: inline-block;
    opacity: 0;
}

/* 스크롤 시에만 애니메이션 시작 */
#problem-text-section.animate-started .text-animate-line {
    animation: fadeInUp 0.8s ease-out forwards;
}

#problem-text-section.animate-started .text-animate-line[data-delay="0"] {
    animation-delay: 0.2s;
}

#problem-text-section.animate-started .text-animate-line[data-delay="1"] {
    animation-delay: 0.6s;
}

#problem-text-section.animate-started .text-animate-line[data-delay="2"] {
    animation-delay: 1s;
}

#problem-text-section.animate-started .text-animate-line[data-delay="3"] {
    animation-delay: 1.4s;
}

/* 보라색 텍스트에 추가 효과 */
.text-animate-line.font-bold {
    position: relative;
    padding-bottom: 8px;
}

.text-animate-line.font-bold::after {
    content: '';
    position: absolute;
    bottom: 0px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 3px;
    background: linear-gradient(90deg, #8B5FF1, #CA86FC);
    border-radius: 2px;
}

/* 스크롤 시에만 언더라인 애니메이션 */
#problem-text-section.animate-started .text-animate-line.font-bold::after {
    animation: underlineGrow 0.8s ease-out forwards;
}

#problem-text-section.animate-started .text-animate-line[data-delay="1"]::after {
    animation-delay: 0.9s;
}

#problem-text-section.animate-started .text-animate-line[data-delay="2"]::after {
    animation-delay: 1.3s;
}

#problem-text-section.animate-started .text-animate-line[data-delay="3"]::after {
    animation-delay: 1.7s;
}

@keyframes underlineGrow {
    from {
        width: 0;
    }
    to {
        width: 60%;
    }
}

/* 첫 번째 텍스트에 살짝 더 큰 효과 */
#problem-text-section.animate-started .text-animate-line[data-delay="0"] {
    animation: fadeInUp 1s ease-out forwards;
    transform-origin: center;
    padding-bottom: 0;
}

/* 첫 번째 텍스트에는 언더라인 없음 */
#problem-text-section.animate-started .text-animate-line[data-delay="0"]::after {
    display: none;
}

/* 모바일에서 애니메이션 간소화 */
@media screen and (max-width: 768px) {
    #problem-text-section.animate-started .text-animate-line {
        animation-duration: 0.6s;
    }
    
    #problem-text-section.animate-started .text-animate-line[data-delay="0"] {
        animation-delay: 0.1s;
    }
    
    #problem-text-section.animate-started .text-animate-line[data-delay="1"] {
        animation-delay: 0.4s;
    }
    
    #problem-text-section.animate-started .text-animate-line[data-delay="2"] {
        animation-delay: 0.7s;
    }
    
    #problem-text-section.animate-started .text-animate-line[data-delay="3"] {
        animation-delay: 1s;
    }
}

/* 이미지 애니메이션 - 페이드인 + 아래에서 위로 + 확대 */
.image-animate {
    opacity: 0;
    transform: translateY(60px) scale(0.85);
    transition: none;
}

#image-animation-section.animate-started .image-animate {
    animation: imageZoomFadeUp 1.2s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}

@keyframes imageZoomFadeUp {
    0% {
        opacity: 0;
        transform: translateY(60px) scale(0.85);
    }
    50% {
        opacity: 0.7;
        transform: translateY(20px) scale(0.95);
    }
    100% {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

/* 모바일에서 이미지 애니메이션 */
@media screen and (max-width: 768px) {
    .image-animate {
        transform: translateY(40px) scale(0.9);
    }
    
    #image-animation-section.animate-started .image-animate {
        animation: imageZoomFadeUpMobile 1s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
    }
    
    @keyframes imageZoomFadeUpMobile {
        0% {
            opacity: 0;
            transform: translateY(40px) scale(0.9);
        }
        50% {
            opacity: 0.7;
            transform: translateY(15px) scale(0.96);
        }
        100% {
            opacity: 1;
            transform: translateY(0) scale(1);
        }
    }
}

/* 형광펜 효과 - 스크롤 트리거 */
.highlight-word {
    position: relative;
    display: inline-block;
    background-image: linear-gradient(transparent 0%, transparent 50%, #FFEB3B 50%, #FFEB3B 100%);
    background-size: 0% 100%;
    background-repeat: no-repeat;
    background-position: left center;
    padding: 2px 5px;
    color: inherit;
    transition: color 0.3s ease;
}

/* 검정색 유지 */
.highlight-word.highlight-black {
    color: #000;
}

/* 빨간색으로 변경될 텍스트 */
.highlight-word.highlight-red {
    color: #000;
}

/* 각 단어별 타이밍 설정 - 스크롤 시에만 시작 */
#highlight-text-section.animate-started .highlight-word[data-delay="0"] {
    animation: highlightOnly 0.8s ease-out 0.5s forwards;
}

#highlight-text-section.animate-started .highlight-word[data-delay="1"] {
    animation: highlightOnly 0.8s ease-out 1.7s forwards;
}

#highlight-text-section.animate-started .highlight-word.highlight-red[data-delay="3"] {
    animation: highlightAndColorRed 0.8s ease-out 4.3s forwards;
}

#highlight-text-section.animate-started .highlight-word.highlight-red[data-delay="4"] {
    animation: highlightAndColorRed 0.8s ease-out 5.5s forwards;
}

/* 검정색 유지하는 형광펜 효과 */
@keyframes highlightOnly {
    0% {
        background-size: 0% 100%;
    }
    100% {
        background-size: 100% 100%;
    }
}

/* 빨간색으로 변경하는 형광펜 효과 */
@keyframes highlightAndColorRed {
    0% {
        background-size: 0% 100%;
        color: #000;
    }
    60% {
        background-size: 100% 100%;
        color: #000;
    }
    100% {
        background-size: 100% 100%;
        color: #FF3B3B;
        font-weight: 700;
    }
}

/* 타이핑 효과 */
.typing-word {
    display: inline-block;
    opacity: 0;
    position: relative;
}

/* 검정색 타이핑 */
.typing-word.typing-black {
    color: #000;
    font-weight: 400;
}

/* 스크롤 시에만 타이핑 효과 시작 */
#highlight-text-section.animate-started .typing-word[data-delay="2"] {
    animation: typingEffect 0.8s steps(10) 2.9s forwards;
}

@keyframes typingEffect {
    0% {
        opacity: 0;
        max-width: 0;
        overflow: hidden;
    }
    1% {
        opacity: 1;
        max-width: 0;
    }
    100% {
        opacity: 1;
        max-width: 200px;
        overflow: visible;
    }
}

/* 형광펜 강조 펄스 효과 */
.highlight-word::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(255, 235, 59, 0.4);
    opacity: 0;
    pointer-events: none;
}

/* 스크롤 시에만 펄스 효과 시작 */
#highlight-text-section.animate-started .highlight-word[data-delay="0"]::after {
    animation: highlightPulse 0.4s ease-in-out 1.3s 2;
}

#highlight-text-section.animate-started .highlight-word[data-delay="1"]::after {
    animation: highlightPulse 0.4s ease-in-out 2.5s 2;
}

#highlight-text-section.animate-started .highlight-word[data-delay="3"]::after {
    animation: highlightPulse 0.4s ease-in-out 5.1s 2;
}

#highlight-text-section.animate-started .highlight-word[data-delay="4"]::after {
    animation: highlightPulse 0.4s ease-in-out 6.3s 2;
}

@keyframes highlightPulse {
    0%, 100% {
        opacity: 0;
    }
    50% {
        opacity: 1;
    }
}

/* 모바일에서 애니메이션 속도 조정 */
@media screen and (max-width: 768px) {
    .highlight-word {
        padding: 1px 3px;
    }
    
    /* 스크롤 시에만 애니메이션 시작 */
    #highlight-text-section.animate-started .highlight-word[data-delay="0"] {
        animation: highlightOnly 0.6s ease-out 0.3s forwards;
    }
    
    #highlight-text-section.animate-started .highlight-word[data-delay="1"] {
        animation: highlightOnly 0.6s ease-out 1.2s forwards;
    }
    
    #highlight-text-section.animate-started .highlight-word.highlight-red[data-delay="3"] {
        animation: highlightAndColorRed 0.6s ease-out 2.8s forwards;
    }
    
    #highlight-text-section.animate-started .highlight-word.highlight-red[data-delay="4"] {
        animation: highlightAndColorRed 0.6s ease-out 3.7s forwards;
    }
    
    #highlight-text-section.animate-started .typing-word[data-delay="2"] {
        animation: typingEffect 0.6s steps(10) 2s forwards;
    }
}
















