
* {word-break: keep-all !important;}

.font-size12 {font-size: 12px;}
.font-size14 {font-size: 14px;}
.font-size16 {font-size: 16px;}
.font-size18 {font-size: 18px;}
.font-size20 {font-size: 20px;}
.font-size22 {font-size: 22px;}
.font-size25 {font-size: 25px;}
.font-size28 {font-size: 28px;}
.font-size30 {font-size: 30px;}
.font-size34 {font-size: 34px;}
.font-size38 {font-size: 38px;}
.font-size40 {font-size: 40px;}
.font-size42 {font-size: 42px;}
.font-size50 {font-size: 50px;}
.font-size54 {font-size: 54px;}
.font-size56 {font-size: 56px;}
.font-size60 {font-size: 60px;}
.font-size70 {font-size: 70px;}
.font-size80 {font-size: 80px;}

.width80per {width: 80% !important;}

.Nanum-Myeongjo {font-family: 'Nanum Myeongjo', sans-serif;}
.Pretendard_100 {font-family: 'Pretendard_100', sans-serif;}
.Pretendard_200 {font-family: 'Pretendard_200', sans-serif;}
.Pretendard_300 {font-family: 'Pretendard_300', sans-serif;}
.Pretendard_400 {font-family: 'Pretendard_400', sans-serif;}
.Pretendard_500 {font-family: 'Pretendard_500', sans-serif;}
.Pretendard_600 {font-family: 'Pretendard_600', sans-serif;}
.Pretendard_700 {font-family: 'Pretendard_700', sans-serif;}
.Pretendard_800 {font-family: 'Pretendard_800', sans-serif;}
.Pretendard_900 {font-family: 'Pretendard_900', sans-serif;}

.GMarketSans_300 {font-family: 'GMarketSans_300', sans-serif;}
.GMarketSans_500 {font-family: 'GMarketSans_500', sans-serif;}
.GMarketSans_700 {font-family: 'GMarketSans_700', sans-serif;}

#header {display: flex;background-color: #000;height: 80px;align-items: center;position: fixed;width: 100%;top: 0px;left: 0px;z-index: 100;}
#header .header_area {width: 1700px;margin: 0px auto;display: flex;justify-content: space-between;align-items: center;}
#header .header_area > .top_logo {}
#header .header_area > .header_menuarea {display: flex;gap: 100px;}
#header .header_area > .header_menuarea > a {color: #fff;font-weight: bold;}
#header .header_area > .header_right {display: flex;gap: 20px;align-items: center;}
#header .header_area > .header_right > .outlink {background-color: #f0e528;height: 25px;display: flex;justify-content: center;align-items: center;padding: 0px 10px;border-radius: 5px;}

.content_area {margin-top: 80px;}
#main_section {position: relative;overflow: hidden;}
#main_section.main_section01 {}
#main_section.main_section02 {display: flex;justify-content: center;align-items: center;background: url("../img/main_section02_bg.png") center center no-repeat #fff;}
#main_section.main_section02 > .content {display: flex;flex-direction: column;gap: 50px;text-align: center;padding: 130px 0px 120px 0px;}
#main_section.main_section02 > .content > span {}
#main_section.main_section02 > .content > div {display: flex;flex-direction: column;gap: 10px;font-weight: bold;}
#main_section.main_section03 {background-color: #000;padding: 100px 0px 110px 0px;}
#main_section.main_section03 > div.content {width: 1700px;margin: 0px auto;display: flex;justify-content: space-between;align-items: end;}
#main_section.main_section03 img {width: 100%;}
#main_section.main_section04 {display: flex;justify-content: space-between;}
#main_section.main_section04 > div {display: flex;height: 640px;justify-content: center;align-items: end;padding-bottom: 50px;}
#main_section.main_section04 > div > a {color: #fff;display: flex;gap: 24px;text-align: center;flex-direction: column;}
#main_section.main_section04 > div > a > .title {font-weight: bold;}
#main_section.main_section04 > div > a > .title_sub {}
#main_section.main_section04 > div > a > .title_sub > span {position: relative;}
#main_section.main_section04 > div > a > .title_sub > span:after {position: absolute;display: block;content: '';left: 0px;bottom: -10px;width: 100%;height: 1px;background-color: #fff;}
#main_section.main_section04 > .content01 {background: url("../img/main_section04_bgimg01.png") center center no-repeat;flex: 1;background-size: cover;}
#main_section.main_section04 > .content02 {background: url("../img/main_section04_bgimg02.png") center center no-repeat;flex: 1;background-size: cover;}
#main_section.main_section04 > .content03 {background: url("../img/main_section04_bgimg03.png") center center no-repeat;flex: 1;background-size: cover;}
#main_section.main_section05 {background-color: #000;padding: 130px 0px 110px 0px;}
#main_section.main_section05 > .content {display: flex;width: 1500px;margin: 0px auto;flex-direction: column;gap: 75px;align-items: center;}
#main_section.main_section05 > .content > .title {display: flex;flex-direction: column;gap: 20px;text-align: center;color: #fff;}
#main_section.main_section05 > .content > .products_area {display: flex;gap: 10px;flex-wrap: wrap;justify-content: space-between;}
#main_section.main_section05 > .content > .products_area > a {display: flex;width: 365px;flex-direction: column;gap: 20px;padding-bottom: 70px;}
#main_section.main_section05 > .content > .products_area > a > .img {width: 100%;height: 365px;background-size: cover;}
#main_section.main_section05 > .content > .products_area > a > .title {margin-top: 10px;color: #fff;display: block;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;}
.stararea {display: flex;justify-content: space-between;align-items: baseline;}
.stararea > .star {
    --size: 28px;
    --rating: 0;
    --percent: calc(var(--rating) / 5 * 100%);

    width: calc(var(--size) * 5);
    height: var(--size);
    position: relative;
    background: url("../img/star-empty.png") repeat-x;
    background-size: var(--size) var(--size);
}
.stararea > .star::after{
    content:"";
    position:absolute; inset:0;
    width: var(--percent);
    background: url("../img/star-fill.png") repeat-x;
    background-size: var(--size) var(--size);
    overflow:hidden;
}
#main_section.main_section05 > .content > .products_area > a > .stararea > .review {color: #fff;}


#main_section.main_section06 {background: url("../img/main_section06_bgimg01.png") center center no-repeat;background-size: cover;padding: 100px 0px 65px 0px;}
#main_section.main_section06 > .content {display: flex;width: 1700px;margin: 0px auto;color: #fff;justify-content: space-between;align-items: end;}
#main_section.main_section06 .txt {display: flex;flex-direction: column;gap: 50px;}
#main_section.main_section06 .txt > .top {display: flex;flex-direction: column;gap: 5px;}
#main_section.main_section06 .txt > .top > span:first-child {}
#main_section.main_section06 .txt > .top > span:last-child {}
#main_section.main_section06 .txt > .bottom {display: flex;flex-direction: column;gap: 5px;}
#main_section.main_section06 .txt > .bottom > span {display: flex;gap: 10px;align-items: center;}
#main_section.main_section06 .txt > .bottom > span > b {}
#main_section.main_section06 a {color: #000;position: relative;}
#main_section.main_section06 a:after {position: absolute;display: block;content: '';left: 50%;bottom: -10px;width: 85%;height: 1px;background-color: #000;transform: translateX(-50%);}
#main_section.main_section07 {background-color: #000;padding: 100px 0px 95px 0px;}
#main_section.main_section07 > .content {width: 1700px;margin: 0px auto;display: flex;flex-direction: column;gap: 45px;align-items: center;}
#main_section.main_section07 > .content > .title {color: #fff;display: flex;flex-direction: column;gap: 10px;text-align: center;}
#main_section.main_section07 > .content > .txt_contentarea {color: #fff;display: flex;gap: 30px;width: 100%;justify-content: space-between;}
#main_section.main_section07 > .content > .txt_contentarea > div {
    width: 25%;
    display: flex;
    flex-direction: column;
    gap: 50px;
}
#main_section.main_section07 > .content > .txt_contentarea .top {
    display: flex;
    gap: 25px;
    justify-content: space-between;
    align-items: end;
    height: 250px;
}
#main_section.main_section07 > .content > .txt_contentarea .top > div {width: 100%;display: flex;flex-direction: column;gap: 25px;align-items: center;}
#main_section.main_section07 > .content > .txt_contentarea .bottom {display: flex;gap: 25px;justify-content: space-between;}
#main_section.main_section07 > .content > .txt_contentarea .bottom > div {width: 100%;display: flex;flex-direction: column;gap: 25px;align-items: center;}
#main_section.main_section07 > .content > .txt_contentarea .bottom > div > .title {text-align: center;line-height: 1.6em;}
#main_section.main_section07 > .content > .txt_contentarea .bottom > div > .title_sub {display: flex;flex-direction: column;gap: 10px;text-align: center;}
#main_section.main_section07 > .content > .txt_contentarea .bottom > div > .title_sub span {line-height: 1.4em;}
#main_section.main_section07 > .content > a {color: #fff;margin-top: 50px;}
#main_section.main_section07 > .content > a span {position: relative;}
#main_section.main_section07 > .content > a span:after {position: absolute;display: block;content: '';left: 0px;bottom: -10px;width: 100%;height: 1px;background-color: #fff;}

#footer {background-color: #fff;padding: 140px 0px 100px 0px;color: #595757;}
#footer > .content {display: flex;width: 1700px;margin: 0px auto;gap: 280px;justify-content: space-between;}
#footer > .content .section01 {flex: 1;width: 100%;display: flex;flex-direction: column;gap: 64px;}
#footer > .content .section01 > .top {display: flex;flex-direction: column;gap: 25px;}
#footer > .content .section01 > .top > p:nth-child(2) {font-weight: bold;}
#footer > .content .section01 > .link {}
#footer > .content .section01 > .link > a {display: flex;background-color: #000;color: #fff;width: 130px;height: 50px;align-items: center;justify-content: center;}
#footer > .content .section02 {flex: 2;width: 100%;display: flex;flex-direction: column;gap: 40px;}
#footer > .content .section02 > div {display: flex;flex-direction: column;gap: 7px;}
#footer > .content .section03 {flex: 1;width: 100%;display: flex;justify-content: space-between;}
#footer > .content .section03 > div {display: flex;flex-direction: column;gap: 20px;}
#footer > .content .section03 > div > a {color: #595757;}

#subbisual_area {display: flex;gap: 40px;height: 525px;flex-direction: column;align-items: center;justify-content: end;background-position: bottom center;background-repeat: no-repeat;background-size: cover;padding: 0px 0px 125px 0px;}
#subbisual_area.brand {background-image: url("../img/subheader_brand.png");}
#subbisual_area.tech {background-image: url("../img/subheader_tech.png");}
#subbisual_area.consultation {background-image: url("../img/subheader_consultation.png");}
#subbisual_area.productline {}
#subbisual_area.location {}
#subbisual_area.business {}
#subbisual_area.depth {height: 460px;}
#subbisual_area.consultation01 {background-image: url("../img/subheader_consultation01.png");}
#subbisual_area.consultation02 {background-image: url("../img/subheader_consultation02.png");}
#subbisual_area.consultation03 {background-image: url("../img/subheader_consultation03.png");}
#subbisual_area.consultation04 {background-image: url("../img/subheader_consultation04.png");}

#subbisual_area .pagetitle {color: #fff;}
#subbisual_area.productline .pagetitle,
#subbisual_area.location .pagetitle,
#subbisual_area.business .pagetitle {color: #000;}
#subbisual_area .consultation {color: #faee00;letter-spacing: -2.25px;}

.brand_area {}
.brand_area > .section01 {padding: 200px 0px 150px 0px;}
.brand_area > .section01 > .content {display: flex;flex-direction: column;width: 1500px;margin: 0px auto;gap: 30px;position: relative;}
.brand_area > .section01 > .content:after {position: absolute;display: block;content: '';left: 0px;top: -50px;width: 280px;height: 3px;background-color: #000;}
.brand_area > .section01 > .content > p {}
.brand_area > .section01 > .content > div {display: flex;flex-direction: column;gap: 50px;}
.brand_area > .section02 {background-color: #000;padding: 220px 0px 150px 0px;}
.brand_area > .section02 > .content {display: flex;width: 1600px;margin: 0px auto;gap: 220px;flex-direction: column;}
.brand_area > .section02 > .content > .datas {display: flex;gap: 60px;align-items: center;}
.brand_area > .section02 > .content > .datas .imgarea {}
.brand_area > .section02 > .content > .datas .imgarea > img {width: 100%;}
.brand_area > .section02 > .content > .datas .txtarea {display: flex;flex-direction: column;gap: 60px;letter-spacing: -1.25px;}
.brand_area > .section02 > .content > .datas .txtarea > p {color: #faee00;font-weight: bold;}
.brand_area > .section02 > .content > .datas .txtarea > div {color: #fff;display: flex;flex-direction: column;gap: 50px;}
.brand_area > .section02 > .content > .datas .txtarea > div > a {color: #fff;}
.brand_area > .section03 {background: url("../img/brand_img03.png") center center no-repeat;background-size: cover;height: 1000px;}

.tech_area {}
.tech_area > .section01 {padding: 200px 0px 150px 0px;}
.tech_area > .section01 > .content {display: flex;flex-direction: column;width: 1500px;margin: 0px auto;gap: 30px;position: relative;}
.tech_area > .section01 > .content:after {position: absolute;display: block;content: '';left: 0px;top: -50px;width: 280px;height: 3px;background-color: #000;}
.tech_area > .section01 > .content > p {}
.tech_area > .section01 > .content > div {display: flex;flex-direction: column;gap: 50px;}
.tech_area > .section02 {background-color: #000;display: flex;gap: 70px;flex-direction: column;padding-top: 115px;}
.tech_area > .section02 > p {color: #f0e528;text-align: center;}
.tech_area > .section02 > .chepter_area {display: flex;background: url("../img/chepter_area_bg.png") center center no-repeat;background-size: cover;}
.tech_area > .section02 > .chepter_area > div {width: calc(100% / 3);height: 880px;display: flex;align-items: center;justify-content: center;color: #fff;flex-direction: column;gap: 75px;position: relative;}
.tech_area > .section02 > .chepter_area > div:after {position: absolute;display: block;content: '';left: 0px;top: 0px;width: 100%;height: 100%;}
.tech_area > .section02 > .chepter_area > div > .title {display: flex;gap: 30px;letter-spacing: -0.25px;align-items: end;}
.tech_area > .section02 > .chepter_area > div > .txt {text-align: center;line-height: 1.6em;}
.tech_area > .section02 > .chepter_area > div.step01 {background-color: rgba(0,0,0,0.1);}
.tech_area > .section02 > .chepter_area > div.step02 {background-color: rgba(0,0,0,0.4);}
.tech_area > .section02 > .chepter_area > div.step03 {background-color: rgba(0,0,0,0.7);}
.tech_area > .section05 {background-color: #000;padding: 100px 0px 100px 0px;}
.tech_area > .section05 > .content {width: 1720px;margin: 0px auto;background-color: #efeeef;padding: 235px 95px 200px;display: flex;flex-direction: column;gap: 80px;}
.tech_area > .section05 > .content > .title {display: flex;flex-direction: column;gap: 15px;text-align: center;}
.tech_area > .section05 > .content > .title img {max-width: 100%;}
.tech_area > .section05 > .content > .section05_content_area {display: flex;flex-direction: column;gap: 130px;}
.tech_area > .section05 > .content > .section05_content_area > .section05_sub01 {display: flex;flex-direction: column;gap: 70px;}
.tech_area > .section05 > .content > .section05_content_area > .section05_sub01 > .title {display: flex;flex-direction: column;text-align: center;}
.tech_area > .section05 > .content > .section05_content_area > .section05_sub01 > .title > p:first-child {letter-spacing: -1.25px;}
.tech_area > .section05 > .content > .section05_content_area > .section05_sub01 > .cont01 {display: flex;flex-direction: column;gap: 50px;text-align: center;margin-top: 100px;}
.tech_area > .section05 > .content > .section05_content_area > .section05_sub01 > .cont01 > div {display: flex;flex-direction: column;gap: 40px;}
.tech_area > .section05 > .content > .section05_content_area > .section05_sub01 > .cont01 > div > .boxs {display: flex;gap: 20px;justify-content: center;}
.tech_area > .section05 > .content > .section05_content_area > .section05_sub01 > .cont01 > div > .boxs > .box {border: 4px solid #000;border-radius: 10px;display: flex;flex-direction: column;gap: 50px;padding: 240px 35px 55px 35px;position: relative;}
.tech_area > .section05 > .content > .section05_content_area > .section05_sub01 > .cont01 > div > .boxs > .box > span {position: absolute;top: -85px;left: 50%;transform: translateX(-50%);}
.tech_area > .section05 > .content > .section05_content_area > .section05_sub01 > .cont02 {display: flex;justify-content: space-between;align-items: end;}
.tech_area > .section05 > .content > .section05_content_area > .section05_sub01 > .cont02 img {width: 100%;}
.tech_area > .section05 > .content > .section05_content_area > .section05_sub02 {display: flex;flex-direction: column;gap: 60px;}
.tech_area > .section05 > .content > .section05_content_area > .section05_sub02 > .title {text-align: center;}
.tech_area > .section05 > .content > .section05_content_area > .section05_sub02 > .contxt {display: flex;flex-direction: column;gap: 50px;line-height: 1.6em;text-align: center;}
.tech_area > .section05 > .content > .section05_content_area > .section05_sub02 > .contxt > .box {border: 4px solid #000;width: 85%;margin: 0px auto;padding: 40px 0px;display: flex;flex-direction: column;gap: 20px;}
.tech_area > .section05 > .content > .section05_content_area > .section05_sub02 > .contxt > .box > p {display: flex;gap: 10px;align-items: baseline;justify-content: center;}
.tech_area > .section05 > .content .txt p {word-break: keep-all;line-height: 1.6em;}
.tech_area > .section05 > .content > .cont02 {display: flex;justify-content: space-between;gap: 30px;}
.tech_area > .section05 > .content > .cont02 img {width: 100%;}
.tech_area > .section06 {background-color: #000;padding: 100px 0px 100px 0px;}
.tech_area > .section06 > .content {width: 1720px;margin: 0px auto;background-color: #efeeef;padding: 150px 95px 150px;display: flex;flex-direction: column;gap: 80px;}
.tech_area > .section06 > .content > .txt {display: flex;flex-direction: column;gap: 80px;}
.tech_area > .section06 > .content > .txt > div {display: flex;flex-direction: column;gap: 30px;}
.tech_area > .section06 > .content > .cont01 {display: flex;justify-content: space-between;gap: 30px;}
.tech_area > .section06 > .content > .cont01 img {width: 100%;}

.tech_area > .section03 {background: url("../img/tech_section03_bg01.jpg") center center no-repeat;background-size: cover;padding: 60px 0px 40px 0px;}
.tech_area > .section03 > .content {width: 1600px;margin: 0px auto;display: flex;flex-direction: column;gap: 80px;}
.tech_area > .section03 > .content > div {display: flex;justify-content: space-between;}
.tech_area > .section03 > .content > div.section01 {color: #fff;align-items: center;justify-content: space-around;}
.tech_area > .section03 > .content > div.section01 > .left {}
.tech_area > .section03 > .content > div.section01 > .right {display: flex;flex-direction: column;gap: 20px;}
.tech_area > .section03 > .content > div.section01 > .right > p:last-child {line-height: 1.6em;}
.tech_area > .section03 > .content > div.section02 {}
.tech_area > .section03 > .content > div.section02 .imgarea {text-align: center;}
.tech_area > .section03 > .content > div.section02 > div {display: flex;flex-direction: column;gap: 20px;}
.tech_area > .section03 > .content > div.section02 > div.left {flex: 2;}
.tech_area > .section03 > .content > div.section02 > div.right {flex: 1.5;}
.tech_area > .section03 > .content > div.section02 > div img {max-width: 100%;}
.tech_area > .section03 > .content > div.section02 > div.left > div {display: flex;justify-content: center;text-align: center;}
.tech_area > .section03 > .content > div.section02 > div.left > div > p {display: flex;flex-direction: column;gap: 15px;color: #fff;padding: 0px 30px;}
.tech_area > .section03 > .content > div.section02 > div.right > div {display: flex;flex-direction: column;gap: 20px;color: #fff;text-align: center;}
.tech_area > .section04 {background-color: #efeeef;padding: 135px 0px 100px 0px;}
.tech_area > .section04 > .content {width: 1700px;margin: 0px auto;display: flex;gap: 10px;justify-content: space-between;align-items: center;}
.tech_area > .section04 > .content > .left {display: flex;flex-direction: column;gap: 60px;}
.tech_area > .section04 > .content > .left > .txt {display: flex;flex-direction: column;gap: 35px;}
.tech_area > .section04 > .content > .left > .txt .line_height {line-height: 1.6em;}
.tech_area > .section04 > .content > .right {}
.tech_area > .section04 > .content img {max-width: 100%;}

.consultation_area {background-color: #000;padding: 100px 0px 100px 0px;}
.consultation_area > .inner {width: 1680px;margin: 0px auto;}
.consultation_area > .inner > .content_area {display: flex;flex-direction: column;gap: 130px;}
.consultation_area > .inner > .content_area .contents {display: flex;flex-direction: column;gap: 85px;}
.consultation_area > .inner > .content_area .contents > .bg {height: 400px;background-size: cover;}
.consultation_area > .inner > .content_area .contents > #section01.bg {background: url("../img/consultation_bg_section01.png") center center no-repeat;}
.consultation_area > .inner > .content_area .contents > #section02.bg {background: url("../img/consultation_bg_section02.png") center center no-repeat;}
.consultation_area > .inner > .content_area .contents > #section03.bg {background: url("../img/consultation_bg_section03.png") center center no-repeat;}
.consultation_area > .inner > .content_area .contents > #section04.bg {background: url("../img/consultation_bg_section04.png") center center no-repeat;}
.consultation_area > .inner > .content_area .contents > .txtarea {display: flex;flex-direction: column;gap: 60px;align-items: center;text-align: center;}
.consultation_area > .inner > .content_area .contents > .txtarea > .title {display: flex;flex-direction: column;gap: 40px;}
.consultation_area > .inner > .content_area .contents > .txtarea > .title > p:first-child {color: #faee00;font-weight: bold;}
.consultation_area > .inner > .content_area .contents > .txtarea > .title > p:last-child {color: #fff;line-height: 1.6em;}
.consultation_area > .inner > .content_area .contents > .txtarea > a {}
.consultation_area > .inner > .content_area .contents > .txtarea > a > span {color: #fff;}

.consultation_depth_area {display: flex;flex-direction: column;gap: 220px;padding-top: 220px;}
.consultation_depth_area > .inner {width: 1520px;margin: 0px auto;}
.consultation_depth_area > .inner > .contents {display: flex;flex-direction: column;gap: 200px;}
.consultation_depth_area > .inner > .contents > .info_area {display: flex;gap: 125px;flex-direction: column;}
.consultation_depth_area > .inner > .contents > .info_area > .infos {letter-spacing: -1.25px;display: flex;flex-direction: column;gap: 35px;position: relative;}
.consultation_depth_area > .inner > .contents > .info_area > .infos img {width: 100%;}
.consultation_depth_area > .inner > .contents > .info_area > .infos:after {position: absolute;display: block;content: '';left: 0px;top: -50px;width: 200px;height: 3px;background-color: #000;}
.consultation_depth_area > .inner > .contents > .info_area > .infos > .title {position: relative;}
.consultation_depth_area > .inner > .contents > .info_area > .infos > .title.topbar {border-top: 3px solid #000;padding-top: 75px;}
.consultation_depth_area > .inner > .contents > .info_area > .infos > .txt {display: flex;flex-direction: column;gap: 50px;line-height: 1.6em;}
.consultation_depth_area > .inner > .contents > .info_area > .infos > .txt.set01 {flex-direction: row;gap: 20px;justify-content: space-between;}
.consultation_depth_area > .inner > .contents > .info_area > .infos > .txt .listdata,
.consultation_depth_area > .inner > .contents > .info_area > .infos > .txt p {display: flex;flex-direction: column;}
.consultation_depth_area > .inner > .contents > .info_area > .infos > .txt .txt_sub {display: flex;flex-direction: column;gap: 20px;}
.consultation_depth_area > .inner > .contents > .info_area > .infos > .txt .boxarea {display: flex;gap: 80px;background-color: #e6e6e6;padding: 70px 65px;justify-content: space-between;}
.consultation_depth_area > .inner > .contents > .info_area > .infos > .txt .boxarea div {display: flex;gap: 50px;flex-direction: column;text-align: center;color: #727171;}
.consultation_depth_area > .inner > .contents > .info_area > .infos > .txt .boxarea div img {width: 100%;}
.consultation_depth_area > .inner > .contents > .info_area > .infos > .txt .listdata li {padding-left: 15px;position: relative;}
.consultation_depth_area > .inner > .contents > .info_area > .infos > .txt .listdata li:after {position: absolute;display: block;content: '';left: 0px;top: 20px;width: 3px;height: 3px;background-color: #000;border-radius: 50%;}
.consultation_depth_area > .inner > .contents > .info_area > .infos > .txt.set01 .consultation03_box {display: flex;flex-direction: column;gap: 20px;text-align: center;}
.consultation_depth_area > .inner > .contents > .info_area > .infos > .txt.set01 .consultation03_box img {width: 100%;}
.consultation_depth_area > .inner > .contents > .info_area > .infos > .txt.set01 .consultation03_box p {color: #727171;}

.consultation_depth_area > .inner > .contents > .prod_area {display: flex;flex-direction: column;gap: 125px;}
.consultation_depth_area > .inner > .contents > .prod_area > .title {letter-spacing: -2.25px;position: relative;}
.consultation_depth_area > .inner > .contents > .prod_area > .title:after {position: absolute;display: block;content: '';left: 0px;top: -50px;width: 270px;height: 3px;background-color: #000;}
.consultation_depth_area > .inner > .contents > .prod_area > .prod_contents {display: flex;gap: 80px;justify-content: space-between;flex-wrap: wrap;}
.consultation_depth_area > .inner > .contents > .prod_area > .prod_contents > a {display: flex;flex-direction: column;gap: 34px;width: calc(50% - 40px);}
.consultation_depth_area > .inner > .contents > .prod_area > .prod_contents > a > span {height: 700px;background-repeat: no-repeat;background-size: cover;background-position: center center;}
.consultation_depth_area > .inner > .contents > .prod_area > .prod_contents > a > span > img {display: none;}
.consultation_depth_area > .inner > .contents > .prod_area > .prod_contents > a > p {letter-spacing: -0.25px;}

.consultation_depth_area > #consultation_depth_footer {height: 500px;background-size: cover;}
.consultation_depth_area > #consultation_depth_footer.consultation01 {background: url("../img/consultation_depth_bg_section01.png") center center no-repeat;}
.consultation_depth_area > #consultation_depth_footer.consultation02 {background: url("../img/consultation_depth_bg_section02.png") center center no-repeat;}
.consultation_depth_area > #consultation_depth_footer.consultation03 {background: url("../img/consultation_depth_bg_section03.png") center center no-repeat;}
.consultation_depth_area > #consultation_depth_footer.consultation04 {background: url("../img/consultation_depth_bg_section04.png") center center no-repeat;}
.consultation01_depth01 {height: 480px;background: url("../img/consultation01_depth01_bg.png") center center no-repeat;background-size: cover;}
.consultation02_depth01 {height: 480px;background: url("../img/consultation02_depth01_bg.png") center center no-repeat;background-size: cover;}
.consultation03_depth01 {height: 480px;background: url("../img/consultation03_depth01_bg.png") center center no-repeat;background-size: cover;}

.txt_bg {position: relative;display: inline-block;z-index: 0;}
.txt_bg::before {position: absolute;display: block;content: '';left: 0px;bottom: 0px;width: 100%;height: 60%;background: rgba(255, 224, 102, 1);z-index: -1;}

.productline_area {}
.productline_area > .inner {width: 1480px;margin: 0px auto;}
.productline_area > .inner > .product_content {display: flex;gap: 75px;padding-bottom: 30px;margin-bottom: 45px;border-bottom: 2px solid #000;}
.productline_area > .inner > .product_content > .imgarea {width: 530px;height: 530px;flex: 0 0 530px;background-repeat: no-repeat;background-position: center center;background-size: cover;}
.productline_area > .inner > .product_content > .imgarea > img {display: none;}
.productline_area > .inner > .product_content > .product_info {flex: 1;display: flex;flex-direction: column;gap: 30px;}
.productline_area > .inner > .product_content > .product_info > .title {display: flex;gap: 10px;flex-direction: column;}
.productline_area > .inner > .product_content > .product_info > .title .prod_info {}
.productline_area > .inner > .product_content > .product_info > .title .prod_title {}
.productline_area > .inner > .product_content > .product_info > .title .prod_description {}
.productline_area > .inner > .product_content > .product_info > .certification {display: flex;gap: 25px;align-items: center;}
.productline_area > .inner > .product_content > .product_info > .certification > .imgarea {}
.productline_area > .inner > .product_content > .product_info > .certification > .info {color: #fff;background-color: #595857;display: flex;height: 40px;padding: 0px 30px;border-radius: 20px;align-items: center;}
.productline_area > .inner > .product_content > .product_info > .additives {display: flex;justify-content: space-between;align-items: end;}
.productline_area > .inner > .product_content > .product_info > .additives > .additives_info {display: flex;gap: 35px;text-align: center;}
.productline_area > .inner > .product_content > .product_info > .additives > .additives_info > div {display: flex;gap: 10px;flex-direction: column;}
.productline_area > .inner > .product_content > .product_info > .additives > .prod_star {width: 220px;}
.productline_area > .inner > .product_content > .product_info > .detail_area {display: flex;justify-content: space-between;align-items: end;}
.productline_area > .inner > .product_content > .product_info > .detail_area p {display: flex;height: 36px;padding: 0px 20px;border-radius: 18px;border: 1px solid #000;align-items: center;justify-content: center;}
.productline_area > .inner > .product_content > .product_info > .detail_area a {border-bottom: 1px solid #000;}

.productline_detail_area {margin-top: 200px;}
.productline_detail_area > .inner {width: 1700px;margin: 0px auto;}
.productline_detail_area > .inner > .detail_area {display: flex;gap: 75px;flex-direction: column;}
.productline_detail_area > .inner > .detail_area > .product_info {display: flex;gap: 80px;align-items: flex-start;}
.productline_detail_area > .inner > .detail_area > .product_info > .prod {flex: 0 0 970px;overflow: hidden;display: flex;flex-direction: column;gap: 50px;}
.productline_detail_area > .inner > .detail_area > .product_info > .prod > .detail_slide_area {display: flex;flex-direction: column;gap: 30px;}
.productline_detail_area > .inner > .detail_area > .product_info > .prod > .detail_image {width: 100%;position: relative;}
.productline_detail_area > .inner > .detail_area > .product_info > .prod > .detail_image img {max-width: 100%;}
.productline_detail_area > .inner > .detail_area > .product_info > .prod > .detail_image.is-collapsed{max-height: 600px;overflow: hidden;}
.productline_detail_area > .inner > .detail_area > .product_info > .prod > .detail_image.is-collapsed::after{
    content: "";
    position: absolute;
    left: 0; right: 0; bottom: 0;
    height: 120px;
    background: linear-gradient(transparent, rgba(255,255,255,0.95));
    pointer-events: none;
}
.productline_detail_area > .inner > .detail_area > .product_info > .prod > .detail_image .btn_view_more{
    position: absolute;
    left: 50%;
    bottom: 16px;
    transform: translateX(-50%);
    padding: 10px 16px;
    border-radius: 999px;
    border: 1px solid #111;
    background: #fff;
    cursor: pointer;
    z-index: 2;
}
.productline_detail_area > .inner > .detail_area > .product_info > .prod > .detail_image.is-expanded::after{
    display: none;
}
.productline_detail_area > .inner > .detail_area > .product_info > .info {flex: 1;position: sticky;height: fit-content;top: 100px;display: flex;flex-direction: column;gap: 150px;}
.productline_detail_area > .inner > .detail_area > .product_info > .info > .top {display: flex;flex-direction: column;gap: 30px;}
.productline_detail_area > .inner > .detail_area > .product_info > .info .title {display: flex;flex-direction: column;gap: 10px;}
.productline_detail_area > .inner > .detail_area > .product_info > .info .certification {display: flex;gap: 25px;align-items: center;}
.productline_detail_area > .inner > .detail_area > .product_info > .info .certification > .imgarea {display: flex;gap: 25px;align-items: center;}
.productline_detail_area > .inner > .detail_area > .product_info > .info .certification > .info {color: #fff;background-color: #595857;display: flex;height: 40px;padding: 0px 30px;border-radius: 20px;align-items: center;}
.productline_detail_area > .inner > .detail_area > .product_info > .info .additives {display: flex;justify-content: space-between;align-items: end;}
.productline_detail_area > .inner > .detail_area > .product_info > .info .additives > .additives_info {display: flex;gap: 35px;text-align: center;}
.productline_detail_area > .inner > .detail_area > .product_info > .info .additives > .additives_info > div {display: flex;gap: 10px;flex-direction: column;}
.productline_detail_area > .inner > .detail_area > .product_info > .info .detail_area {display: flex;justify-content: space-between;align-items: end;}
.productline_detail_area > .inner > .detail_area > .product_info > .info .detail_area p {display: flex;padding: 10px 20px;border-radius: 18px;border: 1px solid #000;align-items: center;justify-content: center;}
.productline_detail_area > .inner > .detail_area > .product_info > .info > .bottom {display: flex;flex-direction: column;gap: 50px;}
.productline_detail_area > .inner > .detail_area > .product_info > .info > .bottom > a {display: flex;align-items: center;justify-content: center;border: 1px solid #000;height: 60px;}
.productline_detail_area > .inner > .detail_area > .product_review {border-top: 1px solid #000;padding-top: 55px;}
.productline_detail_area > .inner > .detail_area > .product_review > .title {letter-spacing: -1.25px;margin-bottom: 70px;}
.productline_detail_area > .inner > .detail_area > .product_review > .review_data {display: flex;flex-direction: column;gap: 50px;}
.productline_detail_area > .inner > .detail_area > .product_review > .review_data > .section01 {display: flex;gap: 20px;justify-content: space-between;}
.productline_detail_area > .inner > .detail_area > .product_review > .review_data > .section01 > div {display: flex;flex-direction: column;gap: 20px;}
.productline_detail_area > .inner > .detail_area > .product_review > .review_data > .section01 > div > p {}
.productline_detail_area > .inner > .detail_area > .product_review > .review_data > .section01 > .section01_data01 {}
.productline_detail_area > .inner > .detail_area > .product_review > .review_data > .section01 > .section01_data01 > .bar_area {display: flex;flex-direction: column;gap: 10px;}
.productline_detail_area > .inner > .detail_area > .product_review > .review_data > .section01 > .section01_data01 > .bar_area > span {color: #727171;}
.productline_detail_area > .inner > .detail_area > .product_review > .review_data > .section01 > .section01_data01 > .bar_area > .bars {display: flex;flex-direction: column;gap: 5px;}
.productline_detail_area > .inner > .detail_area > .product_review > .review_data > .section01 > .section01_data01 > .bar_area > .bars > p {display: flex;gap: 15px;align-items: center;}
.productline_detail_area > .inner > .detail_area > .product_review > .review_data > .section01 > .section01_data01 > .bar_area > .bars > p > .star {color: #727171;width: 60px;}
.productline_detail_area > .inner > .detail_area > .product_review > .review_data > .section01 > .section01_data01 > .bar_area > .bars > p > .barfill {flex: 0 0 400px;background-color: #cccccc;height: 24px;border-radius: 12px;position: relative;overflow: hidden;display: block;}
.productline_detail_area > .inner > .detail_area > .product_review > .review_data > .section01 > .section01_data01 > .bar_area > .bars > p > .barfill::before{
    content: "";
    position: absolute;
    inset: 0 auto 0 0;      /* left/top/bottom 0 */
    width: var(--fill, 0%); /* ⭐ 퍼센트 */
    background: #000;
    transition: width 0.3s ease; /* 부드럽게(원하면) */
    border-radius: 12px;
}
.productline_detail_area > .inner > .detail_area > .product_review > .review_data > .section01 > .section01_data01 > .bar_area > .bars > p > .cnt {color: #727171;width: 60px;}
.productline_detail_area > .inner > .detail_area > .product_review > .review_data > .section01 > .section01_data02 {}
.productline_detail_area > .inner > .detail_area > .product_review > .review_data > .section01 > .section01_data02 > .reviews_star {display: flex;flex-direction: column;gap: 15px;}
.productline_detail_area > .inner > .detail_area > .product_review > .review_data > .section01 > .section01_data02 > .reviews_star > .point {display: flex;gap: 15px;align-items: center;}
.productline_detail_area > .inner > .detail_area > .product_review > .review_data > .section01 > .section01_data02 > .reviews_star > .point > .dot_point {color: #727171;}
.productline_detail_area > .inner > .detail_area > .product_review > .review_data > .section01 > .section01_data02 > .reviews_star > .point > p {display: flex;flex-direction: column;gap: 5px;}
.productline_detail_area > .inner > .detail_area > .product_review > .review_data > .section01 > .section01_data02 > .reviews_star > .point > p > .stars {}
.productline_detail_area > .inner > .detail_area > .product_review > .review_data > .section01 > .section01_data02 > .reviews_star > .point > p > .review_cnt {}
.productline_detail_area > .inner > .detail_area > .product_review > .review_data > .section01 > .section01_data02 > .reviews_star > p {color: #727171;}
.productline_detail_area > .inner > .detail_area > .product_review > .review_data > .section01 > .section01_data03 {}
.productline_detail_area > .inner > .detail_area > .product_review > .review_data > .section01 > .section01_data03 > .star_box {display: flex;flex-direction: column;gap: 20px;}
.productline_detail_area > .inner > .detail_area > .product_review > .review_data > .section01 > .section01_data03 > .star_box > .box {display: flex;gap: 10px;justify-content: space-between;}
.productline_detail_area > .inner > .detail_area > .product_review > .review_data > .section01 > .section01_data03 > .star_box > .box a {width: 60px;height: 60px;border: 1px solid #000;border-radius: 5px;display: flex;align-items: center;justify-content: center;font-size: 30px;}
.productline_detail_area > .inner > .detail_area > .product_review > .review_data > .section01 > .section01_data03 > .star_box > p {color: #727171;}

.productline_detail_area > .inner > .detail_area > .product_review > .review_data > .section02 {display: flex;flex-direction: column;gap: 20px;}
.productline_detail_area > .inner > .detail_area > .product_review > .review_data > .section02 > p {text-align: center;}
.productline_detail_area > .inner > .detail_area > .product_review > .review_data > .section02 > .product_photos_area {}
.productline_detail_area > .inner > .detail_area > .product_review > .review_data > .section02 > .product_photos_area img {width: 100%;}

.location_area {}
.location_area > .inner {width: 1600px;margin: 0px auto;}
.location_area > .inner > .location_content_area {display: flex;gap: 45px;}
.location_area > .inner > .location_content_area > .info {flex: 0 0 520px;display: flex;flex-direction: column;gap: 85px;}
.location_area > .inner > .location_content_area > .info > .title {}
.location_area > .inner > .location_content_area > .info > .addr {color: #231815;line-height: 1.6em;}
.location_area > .inner > .location_content_area > .info > .help {display: flex;flex-direction: column;gap: 25px;}
.location_area > .inner > .location_content_area > .map {flex: 1;}
.location_area > .inner > .location_content_area > .map img {width: 100%;}

.business_area {}
.business_area > .inner {width: 1400px;margin: 0px auto;display: flex;flex-direction: column;gap: 170px;}
.business_area > .inner > div {display: flex;flex-direction: column;gap: 25px;}
.business_area > .inner .title {border-bottom: 3px solid #727171;padding-bottom: 25px;}
.business_area > .inner .section01 {}
.business_area > .inner .section01 > .form_area {}
.business_area > .inner .section01 > .form_area .form_setting {}
.business_area > .inner .section01 > .form_area .form_setting textarea,
.business_area > .inner .section01 > .form_area .form_setting select,
.business_area > .inner .section01 > .form_area .form_setting input[type=file],
.business_area > .inner .section01 > .form_area .form_setting input[type=text] {border: 1px solid #dddddd;height: 40px;background-color: #fbfbfc;border-radius: 5px;width: 200px;padding: 10px 10px;}
.business_area > .inner .section01 > .form_area .form_setting textarea {width: 100%;height: 300px;}
.business_area > .inner .section01 > .form_area .form_setting table {color: #525151;width: 100%;}
.business_area > .inner .section01 > .form_area .form_setting table th {text-align: left;padding-left: 30px;width: 200px;background-color: #fbfbfc;border-bottom: 1px solid #efeeed;}
.business_area > .inner .section01 > .form_area .form_setting table td {text-align: left;border-bottom: 1px solid #efeeed;padding: 20px 30px;}

.business_area > .inner .section02 {}
.business_area > .inner .section02 > .agree_area {display: flex;flex-direction: column;gap: 55px;align-items: center;}
.business_area > .inner .section02 > .agree_area .boxarea {display: flex;flex-direction: column;gap: 15px;width: 100%;}
.business_area > .inner .section02 > .agree_area .boxarea .textarea {
    border: 1px solid #dddddd;
    height: 400px;
    background-color: #fbfbfc;
    overflow: auto;
    padding: 20px;
    line-height: 1.6;
    font-size: 14px;
    color: #333;
}

.business_area .privacy-title {
    font-size: 16px;
    font-weight: 700;
    color: #000;
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 2px solid #f0e528;
}

.business_area .privacy-section {
    margin-bottom: 25px;
}

.business_area .section-title {
    font-size: 14px;
    font-weight: 600;
    color: #000;
    margin-bottom: 8px;
    margin-top: 0;
}

.business_area .section-content {
    margin: 8px 0 12px 0;
    color: #555;
    line-height: 1.5;
}

.business_area .info-list {
    background: #f8f9fa;
    padding: 12px 15px;
    border-radius: 5px;
    margin: 10px 0;
    border-left: 3px solid #f0e528;
}

.business_area .info-list p {
    margin: 5px 0;
    font-size: 13px;
    color: #333;
}

.business_area .purpose-list {
    margin: 10px 0;
    padding-left: 20px;
}

.business_area .purpose-list li {
    margin-bottom: 5px;
    color: #555;
    position: relative;
}

.business_area .purpose-list li:before {
    content: "•";
    color: #f0e528;
    font-weight: bold;
    position: absolute;
    left: -15px;
}

.business_area .agreement-statement {
    background: #fff8e1;
    padding: 15px;
    border-radius: 5px;
    margin-top: 20px;
    border: 1px solid #f0e528;
}

.business_area .agreement-statement p {
    margin: 0;
    text-align: center;
    color: #000;
    font-size: 14px;
}
.business_area > .inner .section02 > .agree_area input[type=submit] {display: flex;width: 220px;height: 60px;align-items: center;justify-content: center;color: #fff;background-color: #202121;}

/* ===================================================
   모바일 메뉴 레이어 스타일
   =================================================== */

.mobile_menu_layer {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2000;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
}

.mobile_menu_layer.active {
    opacity: 1;
    visibility: visible;
}

.mobile_menu_overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.7);
}

.mobile_menu_content {
    position: absolute;
    top: 0;
    right: 0;
    width: 400px;
    height: 100%;
    background-color: #fff;
    transform: translateX(100%);
    transition: transform 0.3s ease;
    display: flex;
    flex-direction: column;
}

.mobile_menu_layer.active .mobile_menu_content {
    transform: translateX(0);
}

.mobile_menu_header {
    padding: 20px;
    border-bottom: 1px solid #eee;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    background-color: #000;
}

.mobile_menu_header a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: rgba(255, 255, 255, 0.1);
    transition: background-color 0.3s ease;
}

.mobile_menu_header a:hover {
    background-color: rgba(255, 255, 255, 0.2);
}

.mobile_menu_header img {
    width: 20px;
    height: 20px;
    transform: rotate(45deg);
}

.mobile_menu_items {
    flex: 1;
    padding: 40px 0;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.mobile_menu_item {
    position: relative;
    border-bottom: 1px solid #f0f0f0;
}

.mobile_menu_item:last-child {
    border-bottom: none;
}

.mobile_main_menu {
    display: block;
    padding: 20px 30px;
    color: #333;
    text-decoration: none;
    font-weight: 500;
    transition: all 0.3s ease;
    position: relative;
}

.mobile_main_menu:hover {
    color: #f0e528;
    background-color: #f8f9fa;
}

.mobile_main_menu:after {
    content: '';
    position: absolute;
    right: 30px;
    top: 50%;
    transform: translateY(-50%);
    width: 8px;
    height: 8px;
    border: 2px solid #333;
    border-left: none;
    border-bottom: none;
    transform: translateY(-50%) rotate(45deg);
    transition: all 0.3s ease;
}

.mobile_menu_item:last-child .mobile_main_menu:after {
    display: block;
}

.mobile_menu_item:last-child .mobile_main_menu:hover:after {
    border-color: #f0e528;
}

.mobile_menu_item:last-child .mobile_main_menu.active:after {
    transform: translateY(-50%) rotate(135deg);
}

.mobile_submenu {
    display: none;
    background-color: #f8f9fa;
    padding: 0;
}

.mobile_submenu a {
    display: block;
    padding: 15px 30px 15px 50px;
    color: #666;
    text-decoration: none;
    font-size: 14px;
    font-family: 'Pretendard_400', sans-serif;
    transition: all 0.3s ease;
    border-bottom: 1px solid #eee;
}

.mobile_submenu a:hover {
    color: #f0e528;
    background-color: #fff;
}

.mobile_submenu a:last-child {
    border-bottom: none;
}

/* ===================================================
   네비게이션 서브메뉴 스타일
   =================================================== */

.header_menuarea {
    display: flex;
    gap: 100px;
    position: relative;
}

.menu_item {
    position: relative;
}

.main_menu {
    color: #fff;
    text-decoration: none;
    transition: all 0.3s ease;
    position: relative;
}

.main_menu:hover {
    color: #f0e528;
}

.submenu {
    position: absolute;
    top: 52px;
    left: 50%;
    transform: translateX(-50%);
    background: #fff;
    min-width: 200px;
    border-radius: 8px;
    box-shadow: 0 8px 25px rgba(0,0,0,0.15);
    opacity: 0;
    visibility: hidden;
    transform: translateX(-50%) translateY(-10px);
    transition: all 0.3s ease;
    z-index: 1500;
    padding: 15px 0;
}

.submenu::before {
    content: '';
    position: absolute;
    top: -8px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-bottom: 8px solid #fff;
}

.submenu a {
    display: block;
    padding: 10px 25px;
    color: #333;
    text-decoration: none;
    font-size: 14px;
    font-family: 'Pretendard_400', sans-serif;
    transition: all 0.3s ease;
    white-space: nowrap;
}

.submenu a:hover {
    background: #f8f9fa;
    color: #f0e528;
    padding-left: 35px;
}

.menu_item:hover .submenu {
    opacity: 1;
    visibility: visible;
    transform: translateX(-50%) translateY(0);
}

/* 모바일에서는 서브메뉴 숨김 */
@media (max-width: 768px) {
    .submenu {
        display: none !important;
    }
}

/* ===================================================
   Swiper 슬라이더 스타일
   =================================================== */

.swiper-pagination {
    z-index: 2000 !important;
    pointer-events: auto;
    bottom: 50px !important;
}

.menu_item:hover .swiper-pagination {
    pointer-events: none;
}

.swiper-pagination-bullet {
    cursor: pointer;
    background: transparent;
    border: 2px solid rgba(255, 255, 255, 0.5);
    opacity: 1;
    transition: all 0.3s ease;
    width: 12px !important;
    height: 12px !important;
    margin: 0 6px !important;
}

.swiper-pagination-bullet-active {
    background: #000 !important;
    border-color: #000;
    transform: scale(1.2);
}

/* ===================================================
   스크롤 애니메이션 (IntersectionObserver)
   =================================================== */

/* 초기 상태 - 애니메이션 전 */
.fade-in-up {
    opacity: 0;
    transform: translateY(50px);
    transition: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.fade-in-left {
    opacity: 0;
    transform: translateX(-50px);
    transition: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.fade-in-right {
    opacity: 0;
    transform: translateX(50px);
    transition: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.fade-in-scale {
    opacity: 0;
    transform: scale(0.8);
    transition: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.fade-in-delay-1 {
    transition-delay: 0.2s;
}

.fade-in-delay-2 {
    transition-delay: 0.4s;
}

.fade-in-delay-3 {
    transition-delay: 0.6s;
}

.fade-in-delay-4 {
    transition-delay: 0.8s;
}

.fade-in-delay-5 {
    transition-delay: 1.0s;
}

/* 애니메이션 활성화 상태 */
.fade-in-up.animate {
    opacity: 1;
    transform: translateY(0);
}

.fade-in-left.animate {
    opacity: 1;
    transform: translateX(0);
}

.fade-in-right.animate {
    opacity: 1;
    transform: translateX(0);
}

.fade-in-scale.animate {
    opacity: 1;
    transform: scale(1);
}

/* 스텝 애니메이션 */
.step-item {
    opacity: 0;
    transform: translateY(30px);
    transition: all 0.6s ease;
}

.step-item.animate {
    opacity: 1;
    transform: translateY(0);
}

.step-item.step01.animate {
    transition-delay: 0.1s;
}

.step-item.step02.animate {
    transition-delay: 0.3s;
}

.step-item.step03.animate {
    transition-delay: 0.5s;
}

/* 제품 카드 애니메이션 */
.product-card {
    opacity: 0;
    transform: translateY(40px);
    transition: all 0.7s ease;
}

.product-card.animate {
    opacity: 1;
    transform: translateY(0);
}

/* 성분 아이템 애니메이션 */
.ingredient-item {
    opacity: 0;
    transform: translateY(20px);
    transition: all 0.5s ease;
}

.ingredient-item.animate {
    opacity: 1;
    transform: translateY(0);
}

/* 텍스트 라인별 애니메이션 */
.text-line {
    opacity: 0;
    transform: translateY(15px);
    transition: all 0.4s ease;
}

.text-line.animate {
    opacity: 1;
    transform: translateY(0);
}

.text-line.line-1.animate {
    transition-delay: 0.1s;
}

.text-line.line-2.animate {
    transition-delay: 0.2s;
}

.text-line.line-3.animate {
    transition-delay: 0.3s;
}

.text-line.line-4.animate {
    transition-delay: 0.4s;
}

.mainSwiper {
    width: 100%;
    height: calc(100vh - 80px);
}
.mainSwiper .swiper-slide {background-size: cover;background-position: center center;background-repeat: no-repeat;}
.slider_main_inner {
    width: 1700px;
    margin: 0px auto;
    display: flex;
    position: absolute;
    bottom: 30%;
    left: 50%;
    transform: translateX(-50%);
}
.slider_main_inner .slider_main_txtarea {display: flex;flex-direction: column;gap: 46px;}
.slider_main_inner .slider_main_txtarea > div {display: flex;flex-direction: column;gap: 20px;}
.slider_main_inner .slider_main_txtarea > div > p {}
.slider_main_inner .slider_main_txtarea > div > p.title {
    display: flex;
    gap: 10px;
}
.slider_main_inner .slider_main_txtarea > a {}
.slider_main_inner .slider_main_txtarea > a > span {border-bottom: 1px solid #000;}



.detail_slide_area .swiper {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}

.detail_slide_area .swiper-slide {
    text-align: center;
    font-size: 18px;
    background-color: #444;
    display: flex;
    justify-content: center;
    align-items: center;
    background-size: cover;
    background-position: center;
}

.detail_slide_area .swiper-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.prodSwiper2 {
    height: 1000px;
    width: 100%;
}

.prodSwiper {
    height: 250px;
    box-sizing: border-box;
    padding: 10px 0;
}

.prodSwiper .swiper-slide {
    width: 25%;
    height: 100%;
    opacity: 0.4;
}

.prodSwiper .swiper-slide-thumb-active {
    opacity: 1;
}

.detail_slide_area .swiper-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.privacy_area {}
.privacy_area > .inner {width: 1600px;margin: 0px auto;}
.privacy_area > .inner > .contents {
    padding: 50px 0;
    line-height: 1.6;
    color: #333;
}

/* 메인 타이틀 */
.privacy_area .privacy-main-title {
    font-size: 36px;
    font-weight: 700;
    color: #000;
    text-align: center;
    margin-bottom: 40px;
    padding-bottom: 20px;
    border-bottom: 3px solid #f0e528;
}

/* 중요 공지 */
.privacy_area .privacy-notice {
    background: #fff3cd;
    border: 1px solid #f0e528;
    border-radius: 8px;
    padding: 20px;
    margin-bottom: 30px;
}

.privacy_area .privacy-notice p {
    margin: 0;
    color: #856404;
    font-weight: 500;
}

/* 소개 텍스트 */
.privacy_area .privacy-intro {
    margin-bottom: 40px;
    padding: 25px;
    background: #f8f9fa;
    border-radius: 8px;
    border-left: 4px solid #f0e528;
}

.privacy_area .privacy-intro p {
    margin-bottom: 15px;
    color: #495057;
}

.privacy_area .privacy-intro p:last-child {
    margin-bottom: 0;
}

/* 섹션 공통 */
.privacy_area .privacy-section {
    margin-bottom: 50px;
    padding: 30px;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
}

/* 메인 섹션 타이틀 */
.privacy_area .section-main-title {
    font-size: 24px;
    font-weight: 700;
    color: #000;
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 2px solid #f0e528;
}

/* 서브섹션 타이틀 */
.privacy_area .subsection-title {
    font-size: 18px;
    font-weight: 600;
    color: #333;
    margin: 25px 0 15px 0;
}

/* 섹션 콘텐츠 */
.privacy_area .section-content {
    color: #555;
    line-height: 1.7;
    margin-bottom: 20px;
}

/* 정보 박스 */
.privacy_area .info-box {
    background: #f8f9fa;
    padding: 20px;
    border-radius: 6px;
    margin: 20px 0;
    border-left: 3px solid #f0e528;
}

.privacy_area .info-subtitle {
    font-size: 16px;
    font-weight: 600;
    color: #000;
    margin: 15px 0 8px 0;
}

.privacy_area .info-subtitle:first-child {
    margin-top: 0;
}

.privacy_area .info-text {
    color: #666;
    margin: 0 0 15px 0;
    line-height: 1.6;
}

/* 추가 정보 */
.privacy_area .additional-info {
    background: #e9ecef;
    padding: 15px;
    border-radius: 4px;
    margin: 20px 0;
    color: #495057;
}

/* 수집 방법 목록 */
.privacy_area .collection-methods {
    margin: 15px 0;
    padding-left: 20px;
}

.privacy_area .collection-methods li {
    color: #555;
    line-height: 1.6;
}

/* 목적 섹션 */
.privacy_area .purpose-section {
    margin-top: 20px;
}

.privacy_area .purpose-title {
    font-size: 16px;
    font-weight: 600;
    color: #000;
    margin: 20px 0 10px 0;
}

.privacy_area .purpose-content {
    color: #666;
    line-height: 1.6;
    margin-left: 15px;
    border-left: 2px solid #f0e528;
    padding-left: 15px;
}

/* 보유 기간 콘텐츠 */
.privacy_area .retention-content {
    color: #555;
    line-height: 1.7;
    margin-bottom: 25px;
}

/* 보유 기간 테이블 */
.privacy_area .retention-table {
    border: 1px solid #dee2e6;
    border-radius: 6px;
    overflow: hidden;
    margin-top: 20px;
}

.privacy_area .retention-row {
    display: flex;
    border-bottom: 1px solid #dee2e6;
}

.privacy_area .retention-row:last-child {
    border-bottom: none;
}

.privacy_area .retention-item {
    flex: 3;
    padding: 15px 20px;
    background: #f8f9fa;
    font-weight: 600;
    color: #333;
    border-right: 1px solid #dee2e6;
}

.privacy_area .retention-purpose {
    flex: 2;
    padding: 15px 20px;
    color: #555;
    border-right: 1px solid #dee2e6;
}

.privacy_area .retention-period {
    flex: 1;
    padding: 15px 20px;
    color: #000;
    font-weight: 600;
    background: #fff8e1;
}

/* 폐기 콘텐츠 */
.privacy_area .discard-content {
    color: #555;
    line-height: 1.7;
    margin-bottom: 15px;
}

/* 공개 목록 */
.privacy_area .disclosure-list {
    margin: 15px 0;
    padding-left: 20px;
}

.privacy_area .disclosure-list li {
    color: #555;
    line-height: 1.6;
    margin-bottom: 8px;
}

/* 위탁 목록 */
.privacy_area .consignment-list {
    margin-top: 20px;
}

.privacy_area .consignment-item {
    background: #f8f9fa;
    padding: 15px 20px;
    margin-bottom: 15px;
    border-radius: 6px;
    border-left: 3px solid #f0e528;
}

.privacy_area .consignment-item:last-child {
    margin-bottom: 0;
}

.privacy_area .consignment-name {
    font-size: 16px;
    font-weight: 600;
    color: #000;
    margin: 0 0 8px 0;
}

.privacy_area .consignment-detail {
    color: #666;
    margin: 0;
    line-height: 1.5;
}

/* 권리 목록 */
.privacy_area .rights-list {
    margin: 15px 0;
    padding-left: 20px;
}

.privacy_area .rights-list li {
    color: #555;
    line-height: 1.7;
    margin-bottom: 12px;
    position: relative;
}

.privacy_area .rights-list li:before {
    content: "•";
    color: #f0e528;
    font-weight: bold;
    position: absolute;
    left: -15px;
}

/* 쿠키 콘텐츠 */
.privacy_area .cookie-content {
    color: #555;
    margin: 15px 0;
}

/* 쿠키 목록 */
.privacy_area .cookie-list {
    margin: 15px 0;
    padding-left: 20px;
}

.privacy_area .cookie-list li {
    color: #555;
    line-height: 1.6;
    margin-bottom: 10px;
}

/* 쿠키 설정 */
.privacy_area .cookie-settings {
    margin: 15px 0;
    padding-left: 20px;
}

.privacy_area .cookie-settings li {
    color: #555;
    line-height: 1.6;
    margin-bottom: 8px;
}

/* 담당자 정보 */
.privacy_area .officer-info {
    margin-top: 25px;
}

.privacy_area .officer-title {
    font-size: 16px;
    font-weight: 600;
    color: #000;
    margin: 20px 0 10px 0;
}

.privacy_area .officer-details {
    background: #f8f9fa;
    padding: 15px 20px;
    border-radius: 6px;
    border-left: 3px solid #f0e528;
}

.privacy_area .officer-details p {
    margin: 5px 0;
    color: #555;
}

/* 연락처 정보 */
.privacy_area .contact-info {
    margin-top: 30px;
}

.privacy_area .contact-list {
    margin-bottom: 20px;
    padding-left: 20px;
}

.privacy_area .contact-list li {
    color: #555;
    line-height: 1.6;
    margin-bottom: 8px;
}

/* 기관 목록 */
.privacy_area .agency-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 15px;
    margin-top: 20px;
}

.privacy_area .agency-item {
    background: #f8f9fa;
    padding: 15px 20px;
    border-radius: 6px;
    border-left: 3px solid #f0e528;
}

.privacy_area .agency-item p {
    margin: 5px 0;
    color: #555;
}

.privacy_area .agency-item p:first-child {
    font-weight: 600;
    color: #000;
    margin-bottom: 8px;
}

/* 시행 공지 */
.privacy_area .enforcement-notice {
    background: #fff3cd;
    border: 1px solid #f0e528;
    border-radius: 6px;
    padding: 20px;
    margin-top: 30px;
    text-align: center;
}

.privacy_area .enforcement-notice p {
    margin: 0;
    color: #856404;
    font-weight: 600;
    font-size: 16px;
}




.agreement_area {}
.agreement_area > .inner {width: 1600px;margin: 0px auto;}
.agreement_area > .inner > .contents {
    padding: 50px 0;
    line-height: 1.6;
    color: #333;
}

/* 메인 타이틀 */
.agreement_area .agreement-main-title {
    font-size: 36px;
    font-weight: 700;
    color: #000;
    text-align: center;
    margin-bottom: 40px;
    padding-bottom: 20px;
    border-bottom: 3px solid #f0e528;
}

/* 중요 공지 */
.agreement_area .agreement-notice {
    background: #fff3cd;
    border: 1px solid #f0e528;
    border-radius: 8px;
    padding: 20px;
    margin-bottom: 40px;
}

.agreement_area .agreement-notice p {
    margin: 0;
    color: #856404;
    font-weight: 500;
    font-size: 14px;
}

/* 섹션 공통 */
.agreement_area .agreement-section {
    margin-bottom: 50px;
    padding: 30px;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
}

/* 아티클 타이틀 */
.agreement_area .article-title {
    font-size: 24px;
    font-weight: 700;
    color: #000;
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 2px solid #f0e528;
}

/* 아티클 콘텐츠 */
.agreement_area .article-content {
    color: #555;
    line-height: 1.7;
    margin-bottom: 15px;
}

/* 아티클 노트 */
.agreement_area .article-note {
    background: #e9ecef;
    border-left: 3px solid #f0e528;
    padding: 15px 20px;
    margin: 20px 0;
}

.agreement_area .article-note p {
    margin: 0;
    color: #495057;
    font-weight: 500;
}

/* 정의 목록 */
.agreement_area .definition-list {
    margin: 20px 0;
    padding-left: 20px;
}

.agreement_area .definition-list li {
    color: #555;
    line-height: 1.7;
    margin-bottom: 15px;
    position: relative;
}

.agreement_area .definition-list li:before {
    content: counter(list-item) ".";
    counter-increment: list-item;
    position: absolute;
    left: -25px;
    font-weight: bold;
    color: #f0e528;
    font-size: 16px;
}

/* 아티클 목록 */
.agreement_area .article-list {
    margin: 20px 0;
}

.agreement_area .article-list li {
    color: #555;
    line-height: 1.7;
    margin-bottom: 20px;
    position: relative;
    padding-left: 30px;
}

.agreement_area .article-list li:before {
    content: counter(list-item) ".";
    counter-increment: list-item;
    position: absolute;
    left: 0;
    font-weight: bold;
    color: #f0e528;
    font-size: 16px;
}

/* 작업 목록 */
.agreement_area .task-list {
    margin: 15px 0 15px 20px;
}

.agreement_area .task-list li {
    color: #666;
    line-height: 1.6;
    margin-bottom: 8px;
    position: relative;
}

.agreement_area .task-list li:before {
    content: "•";
    color: #f0e528;
    font-weight: bold;
    position: absolute;
    left: -15px;
}

/* 조건 목록 */
.agreement_area .condition-list {
    margin: 15px 0 15px 20px;
}

.agreement_area .condition-list li {
    color: #666;
    line-height: 1.6;
    margin-bottom: 8px;
    position: relative;
}

.agreement_area .condition-list li:before {
    content: "•";
    color: #f0e528;
    font-weight: bold;
    position: absolute;
    left: -15px;
}

/* 프로시저 목록 */
.agreement_area .procedure-list {
    margin: 15px 0 15px 20px;
}

.agreement_area .procedure-list li {
    color: #666;
    line-height: 1.6;
    margin-bottom: 8px;
    position: relative;
}

.agreement_area .procedure-list li:before {
    content: "•";
    color: #f0e528;
    font-weight: bold;
    position: absolute;
    left: -15px;
}

/* 요구사항 목록 */
.agreement_area .requirement-list {
    margin: 15px 0 15px 20px;
}

.agreement_area .requirement-list li {
    color: #666;
    line-height: 1.6;
    margin-bottom: 8px;
    position: relative;
}

.agreement_area .requirement-list li:before {
    content: "•";
    color: #f0e528;
    font-weight: bold;
    position: absolute;
    left: -15px;
}

/* 결제 방법 목록 */
.agreement_area .payment-list {
    margin: 20px 0;
    padding-left: 20px;
}

.agreement_area .payment-list li {
    color: #555;
    line-height: 1.6;
    margin-bottom: 10px;
    position: relative;
}

.agreement_area .payment-list li:before {
    content: "•";
    color: #f0e528;
    font-weight: bold;
    position: absolute;
    left: -15px;
}

/* 취소 목록 */
.agreement_area .cancellation-list {
    margin: 15px 0 15px 20px;
}

.agreement_area .cancellation-list li {
    color: #666;
    line-height: 1.6;
    margin-bottom: 8px;
    position: relative;
}

.agreement_area .cancellation-list li:before {
    content: "•";
    color: #f0e528;
    font-weight: bold;
    position: absolute;
    left: -15px;
}

/* 의무 목록 */
.agreement_area .obligation-list {
    margin: 15px 0;
    padding-left: 20px;
}

.agreement_area .obligation-list li {
    color: #555;
    line-height: 1.6;
    margin-bottom: 10px;
    position: relative;
}

.agreement_area .obligation-list li:before {
    content: "(" counter(list-item) ")";
    counter-increment: list-item;
    position: absolute;
    left: -25px;
    font-weight: bold;
    color: #f0e528;
    font-size: 14px;
}

/* ===================================================
   리뷰 영역 스타일
   =================================================== */

.reviews_area {
    margin-top: 80px;
    padding: 60px 0;
    background-color: #f8f9fa;
}

.reviews_title {
    font-size: 32px;
    font-weight: 700;
    color: #333;
    text-align: center;
    margin-bottom: 50px;
    position: relative;
}

.reviews_title:after {
    content: '';
    position: absolute;
    bottom: -15px;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 3px;
    background-color: #f0e528;
}

.reviews_list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 30px;
}

.review_item {
    background: #fff;
    border-radius: 12px;
    padding: 30px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
    border: 1px solid #e9ecef;
    transition: all 0.3s ease;
    position: relative;
}

.review_item:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 30px rgba(0,0,0,0.15);
}

.review_item:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, #f0e528, #ffc107);
    border-radius: 12px 12px 0 0;
}

.review_header {
    display: flex;
    flex-direction: column;
    gap: 15px;
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #f1f3f4;
}

.reviewer_info {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.reviewer_name {
    font-size: 18px;
    font-weight: 600;
    color: #333;
    line-height: 1.2;
}

.review_date {
    font-size: 14px;
    color: #6c757d;
    font-weight: 400;
}

.review_rating {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 8px;
}

.review_rating .stars {
    display: flex;
    align-items: center;
    gap: 2px;
}

.review_rating .star {
    font-size: 16px;
    line-height: 1;
}

.rating_number {
    font-size: 14px;
    color: #6c757d;
    font-weight: 500;
}

.review_title {
    font-size: 20px;
    font-weight: 600;
    color: #333;
    margin: 25px 0 15px 0;
    line-height: 1.3;
    display: block;
}

.review_content {
    color: #495057;
    line-height: 1.7;
    font-size: 15px;
    margin-bottom: 20px;
    word-wrap: break-word;
}

.reviews_container {
    position: relative;
}

.reviews_more_area {
    text-align: center;
    margin-top: 40px;
    padding-top: 30px;
    border-top: 1px solid #e9ecef;
}

.btn_load_more_reviews {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 15px 30px;
    background: linear-gradient(135deg, #f0e528, #ffc107);
    color: #000;
    border: 2px solid transparent;
    border-radius: 25px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(240, 229, 40, 0.3);
}

.btn_load_more_reviews:hover {
    background: #fff;
    color: #000;
    border-color: #f0e528;
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(240, 229, 40, 0.4);
}

.btn_load_more_reviews:disabled {
    opacity: 0.6;
    cursor: not-allowed;
    transform: none;
    box-shadow: none;
}

.review_count {
    font-size: 14px;
    font-weight: 400;
    opacity: 0.8;
}

.review_attachment {
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid #f1f3f4;
}

.attachment_link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #007bff;
    text-decoration: none;
    font-size: 14px;
    font-weight: 500;
    padding: 8px 16px;
    border: 1px solid #007bff;
    border-radius: 6px;
    transition: all 0.3s ease;
}

.attachment_link:hover {
    background-color: #007bff;
    color: #fff;
    text-decoration: none;
}

.attachment_link:before {
    content: '📎';
    font-size: 16px;
}

.no_reviews {
    text-align: center;
    padding: 80px 40px;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
    max-width: 500px;
    margin: 0 auto;
}

.no_reviews p {
    margin: 15px 0;
    font-size: 18px;
    color: #6c757d;
}

.no_reviews p:first-child {
    font-size: 24px;
    font-weight: 600;
    color: #333;
    margin-top: 0;
}

.btn_write_review_link {
    display: inline-block;
    margin-top: 30px;
    padding: 15px 30px;
    background: linear-gradient(135deg, #f0e528, #ffc107);
    color: #000;
    text-decoration: none;
    border-radius: 8px;
    font-size: 16px;
    font-weight: 600;
    transition: all 0.3s ease;
    border: 2px solid transparent;
}

.btn_write_review_link:hover {
    background: #fff;
    color: #000;
    border-color: #f0e528;
    text-decoration: none;
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(240, 229, 40, 0.3);
}

/* 별점 표시 스타일 */
.star_box .box .star {
    display: inline-block;
    font-size: 20px;
    color: #ddd;
    text-decoration: none;
    margin: 0 1px;
    transition: color 0.3s;
}

.star_box .box .star.filled {
    color: #ffc107;
}

.star_box .box .star.empty {
    color: #ddd;
}

/* 리뷰 작성 모달 스타일 */
.review_modal_overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.7);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 10000;
    animation: fadeIn 0.3s ease-out;
}

.review_modal_container {
    background: white;
    border-radius: 12px;
    width: 90%;
    max-width: 600px;
    max-height: 90vh;
    overflow-y: auto;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
    animation: slideIn 0.3s ease-out;
}

.review_modal_header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 30px;
    border-bottom: 1px solid #eee;
    background: #000;
    color: white;
    border-radius: 12px 12px 0 0;
}

.modal_title {
    margin: 0;
    font-size: 24px;
    font-weight: 600;
}

.modal_close_btn {
    background: none;
    border: none;
    font-size: 28px;
    color: white;
    cursor: pointer;
    padding: 0;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    transition: background-color 0.2s;
}

.modal_close_btn:hover {
    background-color: rgba(255, 255, 255, 0.2);
}

.review_modal_body {
    padding: 30px;
}

.form_group {
    margin-bottom: 25px;
}

.form_group label {
    display: block;
    margin-bottom: 8px;
    font-weight: 600;
    color: #333;
    font-size: 14px;
}

.form_group label.required::after {
    content: ' *';
    color: #e74c3c;
}

.form_group input[type="text"],
.form_group input[type="email"],
.form_group textarea {
    width: 100%;
    padding: 12px 15px;
    border: 2px solid #e1e8ed;
    border-radius: 8px;
    font-size: 14px;
    transition: border-color 0.3s, box-shadow 0.3s;
    box-sizing: border-box;
}

.form_group input[type="text"]:focus,
.form_group input[type="email"]:focus,
.form_group textarea:focus {
    outline: none;
    border-color: #667eea;
    box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1);
}

.form_group textarea {
    resize: vertical;
    min-height: 100px;
    font-family: inherit;
}

.rating_input {
    display: flex;
    align-items: center;
    gap: 15px;
}

.stars {
    display: flex;
    gap: 5px;
}

.stars input[type="radio"] {
    display: none;
}

.stars label {
    font-size: 30px;
    color: #ddd;
    cursor: pointer;
    transition: color 0.2s;
}

/* 별점 채우기 로직 - JavaScript로 제어 */
.stars label.star-active {
    color: #ffc107;
}

.rating_text {
    font-size: 14px;
    color: #666;
    font-weight: 500;
}

.form_group input[type="file"] {
    width: 100%;
    padding: 8px;
    border: 2px dashed #e1e8ed;
    border-radius: 8px;
    background: #f8f9fa;
    cursor: pointer;
    transition: border-color 0.3s, background-color 0.3s;
}

.form_group input[type="file"]:hover {
    border-color: #667eea;
    background: #f0f2ff;
}

.file_help {
    display: block;
    margin-top: 5px;
    font-size: 12px;
    color: #888;
}

.checkbox_label {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    cursor: pointer;
    font-size: 14px;
    line-height: 1.5;
    color: #555;
}

.checkbox_label input[type="checkbox"] {
    margin-top: 2px;
    flex-shrink: 0;
}

.checkmark {
    position: relative;
    display: inline-block;
    width: 18px;
    height: 18px;
    background: white;
    border: 2px solid #e1e8ed;
    border-radius: 4px;
    margin-right: 10px;
    transition: all 0.2s;
}

.checkbox_label input[type="checkbox"]:checked + .checkmark::after {
    content: '✓';
    position: absolute;
    top: -2px;
    left: 2px;
    font-size: 14px;
    color: #667eea;
    font-weight: bold;
}

.form_actions {
    display: flex;
    gap: 15px;
    justify-content: flex-end;
    margin-top: 30px;
    padding-top: 20px;
    border-top: 1px solid #eee;
}

.btn_cancel,
.btn_submit {
    padding: 12px 24px;
    border: none;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
}

.btn_cancel {
    background: #f8f9fa;
    color: #666;
    border: 2px solid #e1e8ed;
}

.btn_cancel:hover {
    background: #e9ecef;
    border-color: #adb5bd;
}

.btn_submit {
    background: #000;
    color: white;
}

.btn_submit:hover:not(:disabled) {
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

.btn_submit:disabled {
    opacity: 0.7;
    cursor: not-allowed;
    transform: none;
}

/* 리뷰 헤더 스타일 */
.reviews_header {
    text-align: center;
    margin-bottom: 30px;
    padding-bottom: 15px;
    border-bottom: 2px solid #f0f0f0;
}

.reviews_title {
    margin: 0;
    font-size: 28px;
    font-weight: 700;
    color: #333;
}

/* 리뷰 작성 스티키 버튼 */
.btn_write_review_sticky {
    position: sticky;
    top: 20px;
    float: right;
    width: 50px;
    height: 50px;
    background: #000;
    color: white;
    border-radius: 50%;
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
    transition: all 0.3s ease;
    z-index: 100;
    margin-bottom: -60px; /* 헤더와 겹치지 않게 조정 */
}

.btn_write_review_sticky:hover {
    transform: scale(1.1);
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.4);
    background: #333;
}

.btn_write_review_sticky i {
    margin: 0;
}

/* 애니메이션 */
@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes slideIn {
    from {
        opacity: 0;
        transform: scale(0.9) translateY(-20px);
    }
    to {
        opacity: 1;
        transform: scale(1) translateY(0);
    }
}

/* 첨부파일 모달 스타일 */
.attachment_modal_overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.8);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 10001;
    animation: fadeIn 0.3s ease-out;
}

.attachment_modal_container {
    background: white;
    border-radius: 12px;
    width: 90%;
    max-width: 700px;
    max-height: 90vh;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
    animation: slideIn 0.3s ease-out;
}

.attachment_modal_header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 30px;
    border-bottom: 1px solid #eee;
    background: #000;
    color: white;
    border-radius: 12px 12px 0 0;
}

.attachment_modal_header .modal_title {
    margin: 0;
    font-size: 20px;
    font-weight: 600;
}

.attachment_modal_body {
    padding: 30px;
    text-align: center;
}

.attachment_image_container {
    margin-bottom: 20px;
}

.attachment_image_container img {
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.attachment_file_container {
    margin-bottom: 20px;
}

.file_icon {
    font-size: 48px;
    margin-bottom: 15px;
}

.file_name {
    font-size: 18px;
    font-weight: 600;
    color: #333;
    margin-bottom: 10px;
}

.file_info {
    color: #666;
    font-size: 14px;
}

.attachment_actions {
    margin-top: 20px;
}

.btn_download {
    display: inline-block;
    padding: 12px 24px;
    background: #000;
    color: white;
    text-decoration: none;
    border-radius: 8px;
    font-weight: 600;
    transition: all 0.3s;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

.btn_download:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
}

.member_inner {width: 1700px;margin: 0px auto;}


/* 반응형 시작 */
@media (max-width: 1700px) {
    #header .header_area {
        width: 90%;
    }
    .slider_main_inner {
        width: 90%;
    }
    #footer > .content {
        width: 90%;
    }
    #main_section.main_section03 > div.content {
        width: 98%;
    }
    #main_section.main_section05 > .content {
        width: 90%;
    }
    #main_section.main_section05 > .content > .products_area {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        width: 100%;
    }
    #main_section.main_section05 > .content > .products_area > a {
        width: 100%;
    }
    #main_section.main_section06 > .content {
        width: 90%;
    }
    #main_section.main_section07 > .content {
        width: 98%;
    }
    .brand_area > .section01 > .content {
        width: 90%;
    }
    .brand_area > .section02 > .content {
        width: 94%;
        gap: 200px;
    }
    .tech_area > .section01 > .content {
        width: 90%;
    }
    .tech_area > .section05 > .content {
        width: 95%;
    }
    .tech_area > .section05 > .content > .section05_content_area > .section05_sub01 > .cont02 {
        gap: 20px;
    }
    .tech_area > .section03 > .content {
        width: 94%;
    }
    .tech_area > .section04 > .content {
        width: 90%;
        gap: 50px;
    }
    .tech_area > .section06 > .content {
        width: 94%;
    }
    .consultation_area > .inner {
        width: 94%;
    }
    .consultation_depth_area > .inner {
        width: 90%;
    }
    .productline_detail_area {
        margin-top: 100px;
    }
    .productline_area > .inner {
        width: 90%;
    }
    .productline_detail_area > .inner {
        width: 90%;
    }
    .productline_detail_area > .inner > .detail_area > .product_info > .info .certification > .info {
        height: auto;
        padding: 5px 30px;
    }
    .productline_detail_area > .inner > .detail_area > .product_info > .prod > .detail_image.is-collapsed img {
        width: 100%;
    }
    .business_area > .inner {
        width: 84%;
    }
    .location_area > .inner {
        width: 90%;
    }
    .member_inner {
        width: 90%;
    }
    .privacy_area > .inner {
        width: 90%;
    }
    .agreement_area > .inner {
        width: 90%;
    }
    .productline_detail_area > .inner > .detail_area > .product_info > .prod {
        flex: 0 0 55%;
    }
    .productline_detail_area > .inner > .detail_area > .product_info {
        gap: 50px;
    }
}
@media (max-width: 1500px) {
    #header .header_area > .header_menuarea {
        display: none;
    }
    #hamburger_btn {
        display: flex !important;
    }
    #main_section.main_section07 > .content > .txt_contentarea > .bottom br {
        display: none;
    }
    .consultation_depth_area > .inner > .contents > .prod_area > .prod_contents {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 40px;
        width: 100%;
    }
    .consultation_depth_area > .inner > .contents > .prod_area > .prod_contents > a {
        width: 100%;
    }
    .brand_area > .section02 {
        padding: 150px 0px 150px 0px;
    }
    .brand_area > .section02 > .content > .datas {
        flex-direction: column;
    }
    .brand_area > .section02 > .content > .datas .txtarea {
        width: 100%;
        text-align: center;
    }
    .consultation_area {
        padding: 10px 0px 100px 0px;
    }
    .location_area > .inner > .location_content_area {
        flex-direction: column-reverse;
    }
    .location_area > .inner > .location_content_area > .info {
        flex: 0 0 0;
        flex-direction: column;
        gap: 30px;
    }
    .productline_area > .inner > .product_content > .product_info > .additives {
        align-items: normal;
        flex-direction: column;
        gap: 25px;
    }
    .productline_area > .inner > .product_content > .product_info > .detail_area {
        align-items: normal;
        flex-direction: column;
        gap: 20px;
        text-align: center;
    }
    .productline_area > .inner > .product_content > .product_info > .detail_area a {
        border-bottom: 0px solid #000;
    }
    .productline_detail_area > .inner > .detail_area > .product_info {
        flex-direction: column-reverse;
    }
    .productline_detail_area > .inner > .detail_area > .product_info > .info {
        gap: 50px;
        position: relative;
        top: 0px;
    }
    .productline_detail_area > .inner > .detail_area > .product_info > .prod {
        width: 100%;
    }
    #footer > .content {
        gap: 80px;
    }
    .tech_area > .section02 > .chepter_area {
        flex-direction: column;
    }
    .tech_area > .section02 > .chepter_area > div {
        width: 100%;
        height: auto;
        flex-direction: column;
        gap: 50px;
        padding: 100px 0px;
    }
    .tech_area > .section05 > .content > .section05_content_area > .section05_sub01 > .cont02 {
        flex-direction: column;
        align-items: center;
    }
    .tech_area > .section05 > .content > .section05_content_area > .section05_sub02 > .contxt > .box {
        padding: 40px 80px;
    }
    .tech_area > .section03 {
        padding: 84px 0px 40px 0px;
    }
    .tech_area > .section03 > .content > div.section01 {
        flex-direction: column;
        gap: 100px;
    }
    .tech_area > .section03 > .content > div.section02 {
        flex-direction: column;
        gap: 100px;
    }
    .tech_area > .section04 > .content {
        flex-direction: column;
    }
    .tech_area > .section04 > .content > .left {
        width: 100%;
        text-align: center;
    }
    .tech_area > .section06 > .content > .cont01 {
        flex-direction: column;
    }
}
@media (max-width: 1023px) {
    .font-size20 {font-size: 16px;}
    .font-size22 {font-size: 18px;}
    .font-size25 {font-size: 21px;}
    .font-size28 {font-size: 24px;}
    .font-size30 {font-size: 26px;}
    .font-size34 {font-size: 30px;}
    .font-size38 {font-size: 34px;}
    .font-size40 {font-size: 36px;}
    .font-size42 {font-size: 32px;}
    .font-size50 {font-size: 32px;}
    .font-size54 {font-size: 40px;}
    .font-size56 {font-size: 52px;}
    .font-size60 {font-size: 45px;}
    .font-size70 {font-size: 66px;}
    .font-size80 {font-size: 56px;}
    #main_section.main_section01 {
        height: 100vh;
    }
    .swiper-pagination {
        bottom: 110px !important;
    }
    #main_section.main_section03 > div.content {
        flex-direction: column;
        align-items: center;
    }
    #main_section.main_section03 > div.content > div {
        width: 70%;
    }
    #main_section.main_section04 {
        flex-direction: column;
    }
    #main_section.main_section04 > div {
        padding-bottom: 50px;
        padding-top: 200px;
    }
    .font-size40 {
        font-size: 36px;
    }
    .font-size25 {
        font-size: 21px;
    }
    #main_section.main_section05 > .content > .products_area {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
    #main_section.main_section05 > .content > .products_area > a {
        padding-bottom: 20px;
    }
    #main_section.main_section06 > .content {
        flex-direction: column;
        align-items: normal;
        gap: 60px;
    }
    #main_section.main_section06 a {
        color: #fff;
    }
    #main_section.main_section06 a:after {
        display: none;
    }
    #main_section.main_section07 > .content > .txt_contentarea {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }
    #main_section.main_section07 > .content > .txt_contentarea > div {
        width: 100%;
    }
    #footer {
        padding: 100px 0px 70px 0px;
    }
    #footer > .content {
        gap: 40px;
        flex-direction: column;
    }
    #footer > .content .section01 {
        gap: 34px;
    }
    #subbisual_area.depth {
        height: 400px;
        padding: 0px 5% 5%;
    }
    .consultation_depth_area {
        padding-top: 180px;
    }
    .consultation_depth_area > .inner > .contents > .prod_area > .title:after {
        top: -25px;
    }
    .consultation_depth_area > .inner > .contents > .prod_area {
        gap: 65px;
    }
    .consultation_depth_area > .inner > .contents > .prod_area > .prod_contents {
        grid-template-columns: repeat(1, 1fr);
    }
    .consultation_depth_area > .inner > .contents > .prod_area > .prod_contents > a > span {
        height: 500px;
    }
    .consultation_depth_area {
        gap: 120px;
    }
    .consultation_depth_area > .inner > .contents {
        gap: 150px;
    }
    #subbisual_area {
        height: 400px;
        padding: 0px 0px 65px 0px;
    }
    #subbisual_area > .imgarea > img {height: 80px;}
    .brand_area > .section03 {
        height: 500px;
    }
    .consultation_area > .inner > .content_area .contents > .bg {
        height: 250px;
    }
    .consultation_area > .inner > .content_area .contents {
        gap: 55px;
    }
    .consultation_area > .inner > .content_area .contents > .txtarea {
        gap: 40px;
    }
    .consultation_area > .inner > .content_area {
        gap: 80px;
    }
    .consultation03_depth01 {
        height: 300px;
    }
    .consultation_depth_area > .inner > .contents > .info_area > .infos > .txt.set01 {
        flex-direction: column;
    }
    .consultation_depth_area > #consultation_depth_footer {
        height: 400px;
    }
    .consultation01_depth01 {
        height: 300px;
    }
    .productline_area > .inner > .product_content {
        flex-direction: column;
    }
    .productline_area > .inner > .product_content > .imgarea {
        width: 100%;
        height: 530px;
        flex: auto;
    }
    .prodSwiper {
        height: 200px;
    }
    .productline_detail_area > .inner > .detail_area > .product_review {
        padding-top: 35px;
    }
    .productline_detail_area > .inner > .detail_area > .product_review > .review_data > .section01 {
        gap: 50px;
        flex-direction: column;
    }
    .productline_detail_area {
        margin-top: 150px;
    }
    .tech_area > .section05 > .content {
        gap: 50px;
    }
    .tech_area > .section05 > .content > .section05_content_area > .section05_sub01 > .cont01 > div > .boxs > .box {
        gap: 30px;
        padding: 220px 35px 55px 35px;
    }
    .tech_area > .section05 > .content > .section05_content_area > .section05_sub01 > .cont01 > div > .boxs > .box > span {
        width: 80%;
    }
    .tech_area > .section05 > .content > .section05_content_area > .section05_sub01 > .cont01 > div > .boxs > .box > span > img {
        width: 100%;
    }
    .consultation02_depth01 {
        height: 300px;
    }
    .consultation_depth_area > .inner > .contents > .info_area > .infos > .txt .boxarea {
        flex-direction: column;
    }
}
@media (max-width: 840px) {
    .slider_main_inner .slider_main_txtarea > div > p.title {
        flex-direction: column;
        gap: 0px;
    }
}
@media (max-width: 639px) {
    #header {
        height: 60px;
    }
    .content_area {
        margin-top: 60px;
    }
    .mobile_menu_content {
        width: 100%;
    }
    .mobile_menu_header {
        padding: 15px 20px;
    }
    .mobile_menu_items {
        padding: 20px 0;
        gap: 15px;
    }
    .mobile_main_menu {
        padding: 15px 20px;
        font-size: 16px;
    }
    .mobile_submenu a {
        padding: 12px 20px 12px 40px;
    }
    #header .header_area > .top_logo > img {
        height: 20px;
    }
    #header .header_area > .header_right {
        gap: 10px;
    }
    #header .header_area > .header_right a:last-child img {
        height: 24px;
    }
    #header .header_area > .header_right > .outlink {
        font-size: 10px;
    }
    #main_section.main_section02 > .content > span > img {
        height: 40px;
    }
    #main_section.main_section02 > .content {
        padding: 130px 5% 120px 5%;
    }
    #main_section.main_section05 > .content > .products_area {
        grid-template-columns: repeat(1, 1fr);
    }
    #main_section.main_section06 .txt > .bottom > span {
        flex-direction: column;
        text-align: center;
    }
    #main_section.main_section03 > div.content > div {
        width: 90%;
    }
    #main_section.main_section06 a {
        text-align: center;
        font-weight: bold;
    }
    #main_section.main_section07 > .content > .txt_contentarea {
        grid-template-columns: repeat(1, 1fr);
    }
    .font-size40 {
        font-size: 24px;
    }
    .font-size56 {
        font-size: 42px;
    }
    #subbisual_area.depth {
        height: 350px;
    }
    .font-size80 {
        font-size: 42px;
    }
    .consultation_depth_area {
        padding-top: 150px;
    }
    .productline_detail_area > .inner > .detail_area > .product_review > .review_data > .section01 > .section01_data01 > .bar_area > .bars > p {
        gap: 5px;
        align-items: flex-start;
        flex-direction: column;
    }
    .productline_detail_area > .inner > .detail_area > .product_review > .review_data > .section01 > .section01_data01 > .bar_area > .bars > p > .barfill {
        flex: 0 0 20px;
        height: 5px;
        width: 100%;
    }
    #subbisual_area > .imgarea > img {
        height: 60px;
    }
}
/* 반응형 종료 */