@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard-jp.min.css");

*{margin:0; padding:0; border:0; outline:0; font-family:'Pretendard JP', sans-serif; line-height:normal; vertical-align:top; letter-spacing:-0.025em;box-sizing:border-box;appearance:none;scroll-behavior:smooth;word-break:keep-all;-webkit-tap-highlight-color:rgba(0,0,0,0); -webkit-appearance:none;}

.m-only{display:none;}

body{position:relative; background-color:#000;}

section{overflow:hidden;position:relative;opacity:0;transition:0.25s ease-in-out;background-color: #000;}
.loaded section{opacity:1;}

section:before, section:after{display:none; position:absolute; left:0; z-index:1; width:100%; height:217px; content:'';}
section:before{top:0; background:linear-gradient(0deg, rgba(0, 0, 0, 0.00) 4.05%, #000 94.1%);}
section:after{bottom:0; background:linear-gradient(180deg, rgba(0, 0, 0, 0.00) 4.05%, #000 94.1%);}
section .bg{position:absolute; top:0; left:50%; bottom:0; width:100%; min-width:1480px; height:100%; transform:translateX(-50%); object-fit:cover;}
section .wrap{position:relative; max-width:1480px; min-height:100%; margin-right:auto; margin-left:auto; padding:0 20px;}
section .purple{color:#785CFE; line-height:inherit;}
section .orange{color:#FF8C00; line-height:inherit;}
section .sky{color:#82ECFF; line-height:inherit;}
.bold{font-weight:800;}

/* ========== SEC1: Hero ========== */
.sec1{height:839px;}
.sec1:before{display:block;}
.sec1:after{display:block;}
.sec1 .wrap img{position:absolute; top:0; left:-180px; width:764px;}
.sec1 .wrap .text{padding:192px 0 0 680px;}
.sec1 .wrap .text div{color:#FFF; font-style:normal; font-size:182px; font-weight:900; text-shadow:10px 10px 10px rgba(189, 175, 255, 0.70); line-height:163px; letter-spacing:-1.82px;}
.sec1 .wrap .text .btn{display:flex; width:665px; height:66px; margin:50px 0 0 20px; padding:20px 50px; border-radius:1000px; background:#FFF; box-shadow:4px 4px 4px 0 #AE9DFF; color:#823CFE; font-size:24px; font-weight:800; cursor:pointer; flex-direction:column; justify-content:center; align-items:center; gap:10px; letter-spacing:-0.72px;}

/* ========== SEC-APP-INTRO ========== */
.sec-app-intro{min-height:1108px; background-color:#101010; position:relative;}
.sec-app-intro:before{display:block; position:absolute; top:0; left:0; z-index:1; width:100%; height:187px; background:linear-gradient(180deg, #000 4.05%, rgba(0,0,0,0) 94.1%); content:'';}
.sec-app-intro .wrap{position:relative; z-index:2; padding-top:260px; text-align:center;}
.app-intro-title{color:#FFF; font-size:84px; font-weight:800; letter-spacing:-0.84px; line-height:1.2;}
.app-intro-sub1{margin-top:52px; color:#FFF; font-size:45px; font-weight:400; letter-spacing:-1.35px; line-height:1.2;}
.app-intro-sub1 .bold{font-weight:900; color:#FFF;}
.app-intro-sub2{margin-top:59px; color:#FFF; font-size:50px; font-weight:400; font-family:'Jalnan Gothic', 'Pretendard JP', sans-serif; letter-spacing:-1.5px; line-height:74px;}
.app-intro-line{width:4px; height:195px; margin:29px auto 0; background:linear-gradient(180deg, rgba(0,0,0,0) 4.05%, #FFF 100%);}

/* ========== SEC-SERVICES ========== */
.sec-services{background:#000; padding-bottom:80px;}
.sec-services .wrap{padding-top:10px; text-align:center; max-width:1200px;}
.services-title{color:#FFF; font-size:48px; font-weight:800; letter-spacing:-0.5px;}
.services-subtitle{margin-top:32px;}
.services-subtitle-bold{color:#FFF; font-size:32px; font-weight:800;}
.services-subtitle-light{color:#FFF; font-size:24px; font-weight:300; margin-top:4px;}
.services-cards{display:flex; justify-content:center; gap:12px; margin-top:32px;}
.service-card{width:320px; border-radius:12px; overflow:hidden;}
.service-card-header{display:flex; align-items:center; justify-content:center; padding:10px; background:#FF7D00; border-radius:12px 12px 0 0; color:#FFF; font-size:24px; font-weight:400; font-family:'Jalnan 2 TTF', 'Pretendard JP', sans-serif;}
.service-card-header span{margin-right:0;}
.service-card-img{width:320px; height:319px; overflow:hidden;}
.service-card-img img{width:100%; height:100%; object-fit:cover;}
.service-card-checks{display:flex; flex-direction:column; gap:10px; padding:16px 10px; background:#FFF;}
.check-item{display:flex; align-items:center; gap:10px; padding:10px; background:#FFF; box-shadow:0 0 10px 0 rgba(0,0,0,0.1);}
.check-label{background:linear-gradient(90deg, #823CFE, #FF8C00); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; font-size:18px; font-weight:800; white-space:nowrap;}
.check-text{font-size:14px; font-weight:800; color:#000; border-left:1px solid #ccc; padding-left:13px;}
.services-notice{display:flex; align-items:flex-start; justify-content:center; gap:32px; margin-top:32px;}
.notice-left{display:flex; align-items:center; gap:4px; flex-shrink:0;}
.notice-left svg{width:24px; height:24px; flex-shrink:0;}
.notice-left span{color:#FFF; font-size:24px; font-weight:800; white-space:nowrap;}
.notice-right ul{list-style:disc; color:#FFF; font-size:10px; font-weight:500; padding-left:15px; text-align:left;}
.notice-right ul li{line-height:12px; margin-bottom:4px;}

/* ========== SEC-PORTFOLIO ========== */
.sec-portfolio{overflow:hidden; height:604px; position:relative; background:#000;}
.sec-portfolio:before{display:block; position:absolute; top:0; left:0; z-index:2; width:100%; height:100%; background:linear-gradient(180deg, #000 0%, rgba(0,0,0,0.3) 40%, rgba(0,0,0,0) 54%); content:'';}
.sec-portfolio:after{display:block; position:absolute; top:0; left:0; z-index:2; width:100%; height:100%; background:linear-gradient(0deg, #000 0%, rgba(0,0,0,0.3) 40%, rgba(0,0,0,0) 54%); content:'';}
.sec-portfolio .portfolio-bg{position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover; z-index:0; opacity:0.7;}
.sec-portfolio .wrap{position:relative; z-index:3; display:flex; align-items:center; padding-top:0; height:100%;}
.portfolio-content{padding-left:160px;}
.portfolio-sub{color:#FFF; font-size:24px; font-weight:500;}
.portfolio-title{color:#FFF; font-size:56px; font-weight:700; line-height:67px;}
.portfolio-divider{width:68px; height:1px; background:#FFF; margin:12px 0;}
.portfolio-desc{color:#FFF; font-size:24px; font-weight:700; line-height:29px;}
.portfolio-img{position:absolute; right:0; top:22px; z-index:2;}
.portfolio-img img{width:747px; height:747px; object-fit:cover;}

/* ========== SEC-PARTNERS ========== */
.sec-partners{background:#000; padding:50px 0 80px; overflow:hidden;}
.sec-partners .wrap{text-align:center; max-width:1200px;}
.partners-title{color:#FF8C00; font-size:43px; font-weight:700;}
.partners-grid{display:grid; grid-template-columns:repeat(3, 148px); gap:21px; justify-content:center; margin-top:32px;}
.partner-item{display:flex; flex-direction:column; width:148px;}
.partner-item img{width:148px; height:148px; object-fit:cover; border-radius:0;}
.partner-info{display:flex; flex-direction:column; align-items:center; justify-content:center; height:64px; background:#2E2E2E;}
.partner-name{color:#FFF; font-size:20px; font-weight:700; text-align:center;}
.partner-type{color:#FFF; font-size:16px; font-weight:500;}

/* ========== SEC-IMPORTANCE ========== */
.sec-importance{background:#000; padding:60px 0 80px; position:relative;}
.sec-importance .wrap{text-align:center; max-width:1200px;}
.importance-title{font-size:64px; font-weight:700; color:#FF8C00; line-height:1.2;}
.importance-title span{display:inline;}
.importance-boxes{display:flex; justify-content:center; gap:18px; margin-top:40px;}
.importance-box{width:232px;}
.importance-box-top{display:flex; align-items:center; justify-content:center; height:123px; background:#FF8C00; color:#FFF; font-size:32px; font-weight:700; text-align:center; line-height:1.2;}
.importance-box-bottom{display:flex; align-items:center; justify-content:center; height:130px; background:#FFF; color:#000; font-size:18px; font-weight:700; text-align:center; line-height:1.4;}

/* ========== SEC-AD-TYPES ========== */
.sec-ad-types{background:#000; padding:32px 0 80px;}
.sec-ad-types .wrap{text-align:center; max-width:1200px;}
.ad-type-block{padding:76px 0;}
.ad-type-block + .ad-type-block{border-top:none;}
.ad-type-header{display:flex; align-items:center; justify-content:center; gap:0; width:918px; margin:0 auto;}
.ad-type-line{display:block; width:171px; height:1px; background:#FFF;}
.ad-type-title{color:#FF8C00; font-size:60px; font-weight:700; flex:1; text-align:center; line-height:1.2;}
.ad-type-badge{display:inline-flex; align-items:center; justify-content:center; height:79px; padding:0 16px; min-width:286px; margin-top:42px; background:#FF8C00; color:#FFF; font-size:36px; font-weight:700;}
.ad-type-badge.wide{min-width:350px;}
.ad-type-desc{margin-top:42px; color:#FFF; font-size:45px; font-weight:300; line-height:54px;}
.ad-type-desc .bold{font-weight:800;}
.ad-type-images{position:relative; width:830px; height:280px; margin:40px auto 0; overflow:hidden;}
.ad-type-images .app-screen-1{position:absolute; left:234px; top:100px; width:175px; height:174px; object-fit:cover; border-radius:50%; box-shadow:0 0 10px 0 rgba(255,140,0,0.8);}
.ad-type-images .app-screen-2{position:absolute; left:430px; top:100px; width:175px; height:174px; object-fit:cover; border-radius:50%; box-shadow:0 0 10px 0 rgba(255,140,0,0.8);}
.ad-type-images .app-icon-left{position:absolute; left:-20px; top:20px; width:237px; height:237px; object-fit:cover; transform:rotate(-15deg);}
.ad-type-images .app-icon-right{position:absolute; right:-20px; top:20px; width:237px; height:237px; object-fit:cover; transform:rotate(-165deg) scaleY(-1);}
.ad-type-tags{display:flex; gap:42px; justify-content:center; margin-top:42px;}
.tag{display:inline-flex; align-items:center; justify-content:center; min-width:112px; height:45px; padding:10px 16px; background:#823CFE; border-radius:100px; color:#FFF; font-size:21px; font-weight:600;}

/* ========== SEC-PROCESS ========== */
.sec-process{background:#000; padding:32px 0 80px;}
.sec-process .wrap{text-align:center; max-width:1200px;}
.process-title{color:#FF8C00; font-size:44px; font-weight:700;}
.process-steps{display:flex; gap:32px; justify-content:center; margin-top:32px; align-items:stretch;}
.process-step{flex:1; max-width:315px; border-radius:12px; overflow:hidden; display:flex; flex-direction:column;}
.step-header{display:flex; align-items:center; justify-content:center; padding:10px; background:#FF7D00; border-radius:12px 12px 0 0; color:#FFF; font-size:24px; font-weight:400; font-family:'Jalnan 2 TTF', 'Pretendard JP', sans-serif; flex-shrink:0;}
.step-body{display:flex; flex-direction:column; align-items:center; gap:10px; padding:16px 10px; background:#FFF; flex:1;}
.step-name{background:linear-gradient(90deg, #823CFE, #FF8C00); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; font-size:40px; font-weight:800;}
.step-desc{color:#000; font-size:24px; font-weight:800; text-align:center; line-height:29px;}
.step-result{color:#FF8C00; font-size:24px; font-weight:800; text-align:center; line-height:29px;}

/* ========== SEC-GUARANTEED ========== */
.sec-guaranteed{background:#000; padding:50px 0 80px;}
.sec-guaranteed .wrap{text-align:center; max-width:1200px;}
.guaranteed-title{color:#FF8C00; font-size:57px; font-weight:700;}
.guaranteed-desc{margin-top:12px; color:#FFF; font-size:31px; font-weight:300; line-height:1.6;}
.guaranteed-desc .bold{font-weight:800;}
.guaranteed-phones{display:flex; gap:24px; justify-content:center; align-items:flex-end; margin-top:42px; padding-left:20px;}
.guaranteed-phone-item{display:flex; flex-direction:column; align-items:center; gap:28px; width:186px;}
.phone-screen{width:186px; aspect-ratio:186/375; border-radius:35px; overflow:hidden; position:relative;}
.phone-screen img{position:absolute; max-width:none;}
.phone-screen-1 img{width:564.52%; height:336%; left:-108.06%; top:-128.8%;}
.phone-screen-2 img{width:564.52%; height:335.11%; left:-243.82%; top:-128.06%;}
.phone-screen-3 img{width:564.52%; height:334.22%; left:-379.03%; top:-128.12%;}
.phone-label{display:inline-flex; align-items:center; justify-content:center; width:100px; height:45px; background:#FF7D00; border-radius:100px; color:#FFF; font-size:21px; font-weight:700;}

/* ========== SEC5 ========== */
.sec5{height:906px;}
.sec5 .wrap{position:relative; padding-top:0; text-align:center; height:100%;}
.sec5 .wrap .video{position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); width:612px; height:612px; padding:22px; z-index:0;}
.sec5 .wrap .video video{width:100%; height:100%; object-fit:cover;}
.sec5 .wrap .video:after{position:absolute;top:0;left:0;right:0;bottom:0;background: radial-gradient(50% 50% at 50% 50%, rgba(0, 0, 0, 0) 0%, #000 100%);content:'';}
.sec5 .wrap .text{position:relative; z-index:1; padding-top:285px;}
.sec5 .wrap .text > div{display:flex; flex-direction:column; gap:12px;}
.sec5 .wrap .text > div p{color:#FFF; font-size:64px; font-weight:600; line-height:98%; letter-spacing:-1.92px;}
.sec5 .wrap .text > div p span{font-weight:900;}
.sec5 .wrap .text > p{margin-top:74px; color:#FFF; font-size:48px; font-weight:700; line-height:66px; letter-spacing:-1.44px;}
.sec5 .wrap .text > p span{font-weight:900;}

/* ========== SEC6 ========== */
.sec6{height:1429px;}
.sec6 .wrap{padding:0; text-align:center;}
.sec6 .wrap .text{font-size:48px; font-weight:700; line-height:123px; letter-spacing:-1.44px;}
.sec6 .wrap .video{position:relative; height:1306px; padding-top:592px;}
.sec6 .wrap .video video{position:absolute; top:0; left:0; right:0; bottom:0; width:100%; height:100%; object-fit:cover;}
.sec6 .wrap .video div{display:flex; position:relative; flex-direction:column; gap:8px;}
.sec6 .wrap .video div p{color:#FFF; font-size:48px; font-weight:700; letter-spacing:-1.44px;}

/* ========== SEC7 ========== */
.sec7{height:728px;}
.sec7:after{display:block;position:absolute;top: -1px;left:0;right:0;bottom: -1px;height: auto;background:radial-gradient(37.75% 50% at 50% 50%, rgba(0, 0, 0, 0.00) 48.56%, #000 100%);content:'';}
.sec7 .wrap{padding-top:311px; text-align:center;}
.sec7 .wrap .text{display:flex; position:relative; flex-direction:column; gap:8px;}
.sec7 .wrap .text p{color:#FFF; font-size:48px; font-weight:700; letter-spacing:-1.44px;}

/* ========== SEC8: Service cards grid ========== */
.sec8{height:1050px;}
.sec8 .wrap{padding-top:104px;}
.sec8 .wrap .card{display:flex; gap:22px; justify-content:center;}
.sec8 .wrap .card-box{display:flex; width:269px; flex-direction:column; gap:20px;}
.sec8 .wrap .card-item{overflow:hidden; border:1px solid rgba(255, 255, 255, 0.10); border-radius:10px; background:rgba(255, 255, 255, 0.10);}
.sec8 .wrap .card-item .text{display:flex; padding:27px 20px; color:#FFF; flex-direction:column; gap:14px;}
.sec8 .wrap .card-item .text div{font-size:24px; font-weight:700; letter-spacing:-0.72px;}
.sec8 .wrap .card-item .text ul{display:flex; list-style:none; flex-direction:column; gap:8px;}
.sec8 .wrap .card-item .text ul li{display:flex; font-size:13px; font-weight:700; letter-spacing:-0.39px; gap:6px;}
.sec8 .wrap .card-item .text ul li:before{width:14px; height:14px; background:url(../img/sec8_icon.png) no-repeat center / cover; content:'';}
.sec8 .wrap .card-item .text p{font-size:12px; font-weight:700; line-height:20px; letter-spacing:-0.36px;}
.sec8 .wrap .card-item .img{margin-bottom:-8px;}
.sec8 .wrap .card-item .img video{width:100%; height:100%; object-fit:cover;}
.sec8 .wrap .card-item .img img{width:100%; height:100%; object-fit:cover;}
.sec8 .wrap .card-box:nth-child(1) .card-item:nth-child(2) .img{aspect-ratio:1/1;}
.sec8 .wrap .card-box:nth-child(2) .card-item:nth-child(3) .img{height:169px;}
.sec8 .wrap .card-box:nth-child(3) .card-item:nth-child(1) .img{height:231px;}
.sec8 .wrap .card-box:nth-child(3) .card-item:nth-child(2) .img{height:181px;}

/* ========== SEC9: REVIEW ========== */
.sec9{height:840px;}
.sec9:before{display:block;}
.sec9:after{display:block;}
.sec9 .bg{top:0;left: calc(50% - 674px);right:auto;object-fit:contain;}
.sec9 .wrap{padding-top:86px;}
.sec9 .wrap:before{position:absolute; top:0; right:0; bottom:0; width:1065px; background:linear-gradient(270deg, #000 65.53%, rgba(0, 0, 0, 0.00) 101.68%); content:'';}
.sec9 .wrap .card{position:relative; width:520px; height:520px; margin:0 0 0 -230px; transition:0.5s ease-in-out;}
.sec9 .wrap .card-item{display:flex;position:absolute;top:175px;left:598px;gap:15px;align-items:center;padding-left: 135px;}
.sec9 .wrap .card-item .text{display:flex; width:646px; padding:20px; border:1px solid #823CFE; border-radius:8px; background:linear-gradient(90deg, rgba(120, 92, 254, 0.10) 0%, rgba(255, 140, 0, 0.10) 100%); box-shadow:0 0 4px 0 rgba(130, 60, 254, 0.40), 0 0 20px 0 rgba(255, 140, 0, 0.50); flex-direction:column; justify-content:center; align-items:flex-end; gap:27px;}
.sec9 .wrap .card-item .text p{color:#FFF; font-size:20px; font-weight:700; line-height:28px; letter-spacing:-0.6px; word-break:break-all;}

/* ========== SEC10 ========== */
.sec10{height:764px; padding-top:118px; text-align:center;}
.sec10 .text{color:#FFF;}
.sec10 .text div{font-size:48px; font-weight:700; letter-spacing:-1.44px;}
.sec10 .text p{font-size:36px; font-weight:700; line-height:85px; letter-spacing:-1.08px;}
.sec10 .swiper{margin-top:15px;}
.sec10 .swiper-slide{overflow:hidden; width:auto; width:min(448px, 60vw); border-radius:21px;}
.sec10 .swiper-slide img{width:100%;}
.brand-logo-card{display:flex; align-items:center; justify-content:center; width:100%; aspect-ratio:448/244; padding:10px; border-radius:21px; background:#FFF;}
.brand-logo-card img{max-width:80%; max-height:60%; object-fit:contain;}

/* ========== SEC12 ========== */
.sec12{height:858px;}
.sec12:after{display:block; position:absolute; top:0; left:0; right:0; bottom:0; width:100%; height:100%; background:linear-gradient(0deg, rgba(0, 0, 0, 0.10) 0%, rgba(0, 0, 0, 0.10) 100%), linear-gradient(180deg, #000 0%, rgba(0, 0, 0, 0.00) 49.83%, #000 98.72%);}
.sec12 .wrap{z-index:2; padding:89px 0 0 91px;}
.sec12 .wrap .bg2{position:relative; width:1199px; height:680px; padding:102px 0 0 66px; background:url(../img/sec12_bg_02.png) no-repeat center / cover;}
.sec12 .wrap .bg2 .text > span{color:#EB8100; font-size:24px; font-weight:700; letter-spacing:-0.72px;}
.sec12 .wrap .bg2 .text > div{margin-top:25px; color:#FFF; font-size:40px; font-weight:700; text-shadow:10px 10px 10px rgba(0, 0, 0, 0.80); letter-spacing:-1.2px;}
.sec12 .wrap .bg2 .text > div span{display:block; color:#EB8100;}
.sec12 .wrap .bg2 .text > p{margin-top:19px; color:#FFF; font-size:20px; font-weight:700; line-height:31px; letter-spacing:-0.6px;}
.sec12 .wrap .bg2 .text > .submit{display:flex; width:298px; height:64px; margin:66px 0 0 -10px; border-radius:12px; background-color:#EB8100; color:#FFF; font-size:20px; font-weight:700; cursor:pointer; justify-content:center; align-items:center; gap:10px; letter-spacing:-0.6px; text-decoration:none;}
.sec12 .wrap .bg2 .text > ul{margin:68px 0 0 -10px; list-style:none;}
.sec12 .wrap .bg2 .text > ul li{display:flex; color:#FFF; font-size:20px; font-weight:700; line-height:44px; letter-spacing:-0.6px; gap:10px; align-items:center;}
.sec12 .wrap .bg2 .text > ul li:before{display:block; width:24px; height:24px; background-repeat:no-repeat; background-position:center; background-size:cover; content:'';}
.sec12 .wrap .bg2 .text > ul li:nth-child(1):before{background-image:url(../img/sec12_icon_01.png);}
.sec12 .wrap .bg2 .text > ul li:nth-child(2):before{background-image:url(../img/sec12_icon_02.png);}
.sec12 .wrap .bg2 .form{display:flex; position:absolute; right:-63px; bottom:-2px; width:598px; height:602px; padding:32px 54px; background:url(../img/sec12_bg_03.png) no-repeat center / 100%; flex-direction:column; gap:21px;}
.sec12 .wrap .bg2 .form .form-box{display:flex; flex-direction:column; gap:13px;}
.sec12 .wrap .bg2 .form .form-list{display:flex; gap:13px;}
.sec12 .wrap .bg2 .form .form-item{position:relative; flex:1 0 0;}
.sec12 .wrap .bg2 .form .form-item input{display:flex; width:100%; height:41px; padding:10px; border:1px solid #82ECFF; border-radius:18px 0; background:rgba(255, 255, 255, 0.10); color:#FFF; font-size:14px; font-weight:700; align-items:center; gap:10px; letter-spacing:-0.42px;}
.sec12 .wrap .bg2 .form .form-item input::placeholder{color:#B7B7B7;}
.sec12 .wrap .bg2 .form .form-item .btn-select{position:absolute; top:0; left:0; right:0; bottom:0; background:transparent; font-size:0; cursor:pointer;}
.sec12 .wrap .bg2 .form .form-item .btn-select:after{position:absolute; top:7px; right:9px; width:24px; height:24px; background:url(../img/sec12_arrow.png) no-repeat center / cover; content:''; transition:0.25s ease-in-out;}
.sec12 .wrap .bg2 .form .form-item .select-list{display:flex; opacity:0; visibility:hidden; position:absolute; top:100%; left:0; right:0; z-index:2; padding:8px; border:1px solid #82ECFF; border-radius:16px; background-color:#FFF; box-shadow:0 1px 2px 0 rgba(0, 0, 0, 0.04); list-style:none; transition:0.25s ease-in-out; flex-direction:column; gap:4px;}
.sec12 .wrap .bg2 .form .form-item .select-list li button{display:flex; width:100%; height:48px; padding:0 12px; border-radius:12px; background:transparent; font-size:16px; font-weight:400; cursor:pointer; align-items:center; letter-spacing:-0.091px;}
.sec12 .wrap .bg2 .form .form-item.active .select-list{opacity:1; visibility:visible; top:calc(100% + 8px);}
.sec12 .wrap .bg2 .form .form-item.active .btn-select:after{transform:rotate(180deg);}
.sec12 .wrap .bg2 .form .form-item .select-list li.active button{background-color:#f7f7f7;}
.sec12 .wrap .bg2 .form .form-item textarea{display:flex; width:100%; height:77px; padding:10px; border:1px solid #82ECFF; border-radius:18px 0; background:rgba(255, 255, 255, 0.10); color:#FFF; font-size:14px; font-weight:700; align-items:center; gap:10px; letter-spacing:-0.42px; resize:none;}
.sec12 .wrap .bg2 .form .form-item textarea::placeholder{color:#B7B7B7;}
.sec12 .wrap .bg2 .form .form-agree{display:flex; gap:10px;}
.sec12 .wrap .bg2 .form .form-agree p{color:#FFF; font-size:14px; font-weight:700; letter-spacing:-0.42px;}
.sec12 .wrap .bg2 .form .form-agree input{opacity:0; position:absolute; top:0; left:0;}
.sec12 .wrap .bg2 .form .form-agree label{display:flex; color:#FFF; font-size:14px; font-weight:700; cursor:pointer; gap:8px;}
.sec12 .wrap .bg2 .form .form-agree label:before{width:28px; height:28px; margin:-6px; background:url(../img/check_icon.png) no-repeat center / cover; content:'';}
.sec12 .wrap .bg2 .form .form-agree input:checked + label:before{background-image:url(../img/check_icon_on.png);}
.sec12 .wrap .bg2 .form .form-text{display:flex; width:491px; padding:20px; border-radius:12px; background:rgba(255, 255, 255, 0.10); flex-direction:column; align-items:flex-start; gap:10px;}
.sec12 .wrap .bg2 .form .form-text p{color:#B7B7B7; font-size:14px; font-weight:700; line-height:21px; letter-spacing:-0.42px;}
.sec12 .wrap .bg2 .form .form-text p span{color:#FFF; line-height:inherit;}
.sec12 .wrap .bg2 .form .form-submit{display:flex; width:100%; height:64px; border:0; border-radius:18px 0; background:linear-gradient(270deg, #775DFE 0%, #823CFE 100%); color:#FFF; font-size:18px; font-weight:700; cursor:pointer; justify-content:center; align-items:center; letter-spacing:-0.42px;}
.sec12 .wrap .bg2 .form .form-submit:active{background:linear-gradient(270deg, #6648e0 0%, #6c2ed6 100%);}
.sec12 .wrap .bg2 .form .form-submit:disabled{background:#555; cursor:not-allowed;}

/* ========== FLOATING ========== */
.floating{display:flex; position:fixed; right:39px; bottom:43px; z-index:9999; flex-direction:column;gap:18px;align-items:end;}
.floating button{position:relative; background-color:transparent; cursor:pointer;}
.floating button div{position:relative; width:50px; height:50px; border-radius:50%; background-repeat:no-repeat; background-position:center; font-size:0;}
.floating .top div{background-image:url(../img/top_icon.png); background-size:19px; background-color:rgba(255, 255, 255, 0.10);}
.floating .kakao{position:relative; text-decoration:none; cursor:pointer;}
.floating .kakao div{position:relative; width:50px; height:50px; border-radius:50%; background-repeat:no-repeat; background-position:center; font-size:0; z-index:1; background-image:url(../img/kakao_icon.png); background-size:17px; background-color:#FEE500;}
.floating .kakao span{display:flex;position:absolute;top:0;right:0;bottom:0;width:122px;height: 50px;margin:auto 0;padding:13px;border-radius:25px;background:#FFF;color:#000;font-size:16px;font-weight:500;align-items:center;gap:10px;letter-spacing:-0.5px;}

/* ========== RESPONSIVE: 1480px ========== */
@media (max-width:1480px){
    section .wrap{max-width:1040px;}

    .sec1 .wrap img{left:-280px;}
    .sec1 .wrap .text{padding-left:455px;}
    .sec1 .wrap .text div{font-size:130px; text-shadow:8px 8px 8px rgba(189, 175, 255, 0.70); line-height:98%; letter-spacing:-1.44px;}
    .sec1 .wrap .text .btn{width:491px;}

    .app-intro-title{font-size:64px;}
    .app-intro-sub1{font-size:36px;}
    .app-intro-sub2{font-size:40px; line-height:60px;}

    .services-title{font-size:36px;}
    .services-subtitle-bold{font-size:26px;}
    .services-subtitle-light{font-size:20px;}

    .portfolio-content{padding-left:80px;}
    .portfolio-title{font-size:46px;}
    .portfolio-img img{width:600px; height:600px;}

    .importance-title{font-size:52px;}

    .ad-type-header{width:100%;}
    .ad-type-title{font-size:48px;}
    .ad-type-badge{font-size:30px; height:65px;}
    .ad-type-desc{font-size:36px; line-height:44px;}

    .process-title{font-size:36px;}

    .guaranteed-title{font-size:46px;}
    .guaranteed-desc{font-size:26px;}

    .sec5 .wrap .text > div p{font-size:48px;}
    .sec5 .wrap .text > p{font-size:30px; line-height:1.4;}

    .sec6 .wrap .text{font-size:38px;}
    .sec6 .wrap .video div p{font-size:38px;}

    .sec7 .wrap .text p{font-size:38px;}

    .sec9 .bg{left:-794px;}
    .sec9 .wrap{transform:translateX(-178px);}
    .sec9 .wrap:before{right:-253px;}

    .sec10 .text div{font-size:38px;}
    .sec10 .text p{font-size:30px;}
    .sec10 .swiper-slide{width:auto;}

    .sec12 .wrap{padding-left:0;}
    .sec12 .wrap .bg2{width:1000px; padding:130px 0 0 36px; background-size:contain;}
    .sec12 .wrap .bg2 .text > span{font-size:20px; letter-spacing:-0.6px;}
    .sec12 .wrap .bg2 .text > div{margin-top:15px; font-size:32px;}
    .sec12 .wrap .bg2 .text > p{margin-top:12px; font-size:18px;}
    .sec12 .wrap .bg2 .text > ul{margin-top:60px;}
    .sec12 .wrap .bg2 .text > ul li{font-size:18px;}
    .sec12 .wrap .bg2 .form{right:0; width:560px; height:564px; padding:32px;}
    .sec12 .wrap .bg2 .form .form-item textarea{height:55px;}
}

@media (min-width:1001px){
    .sec9 .wrap .card.active2{margin:-12px 0 0 -243px; transform:rotate(-30deg);}
    .sec9 .wrap .card.active3{margin:-16px 0 0 -262px; transform:rotate(-60deg);}
    .sec9 .wrap .card.active4{margin:-12px 0 0 -281px; transform:rotate(-90deg);}
    .sec9 .wrap .card.active5{margin:8px 0 0 -288px; transform:rotate(-120deg);}
    .sec9 .wrap .card-item:nth-child(2){top:553px; left:495px; transform:rotate(30deg);}
    .sec9 .wrap .card-item:nth-child(3){top:830px; left:218px; transform:rotate(60deg);}
    .sec9 .wrap .card-item:nth-child(4){top:932px; left:-161px; transform:rotate(90deg);}
    .sec9 .wrap .card-item:nth-child(5){top:828px; left:-531px; transform:rotate(120deg);}
    .sec9 .wrap .card-item:before{width:120px;height:120px;margin:5px 0 0 -4px;background:url(../img/sec9_img.png) no-repeat center / cover;content:'';flex-shrink:0;display:none;}
}

/* ========== RESPONSIVE: Mobile (max 1000px) ========== */
@media (max-width:1000px){
    .pc-only{display:none;}
    .m-only{display:block;}
    span.m-only{display:inline;}

    section:before, section:after{height:110px;}
    section .wrap{max-width:392px; padding:0 16px;}

    /* SEC1 Mobile */
    .sec1{height:369px;}
    .sec1:before{height:94px;}
    .sec1:after{height:153px;}
    .sec1 .wrap{max-width:360px;}
    .sec1 .wrap img{top:16px; left:-88px; width:254px;}
    .sec1 .wrap .text{padding-top:98px; padding-left:151px;}
    .sec1 .wrap .text div{font-size:48px; font-weight:700;}
    .sec1 .wrap .text .btn{position:absolute; left:0; right:0; bottom:8px; z-index:3; width:290px; height:37px; margin:0 auto; padding:0; font-size:16px; letter-spacing:-0.48px;}

    /* SEC-APP-INTRO Mobile */
    .sec-app-intro{min-height:auto; padding-bottom:40px;}
    .sec-app-intro:before{height:110px;}
    .sec-app-intro .wrap{padding-top:120px;}
    .app-intro-title{font-size:32px; letter-spacing:-0.32px;}
    .app-intro-sub1{margin-top:24px; font-size:18px; letter-spacing:-0.54px;}
    .app-intro-sub1 br{display:none;}
    .app-intro-sub2{margin-top:24px; font-size:22px; line-height:32px;}
    .app-intro-line{height:100px; margin-top:20px;}

    /* SEC-SERVICES Mobile */
    .sec-services{padding-bottom:40px;}
    .sec-services .wrap{padding-top:10px; max-width:392px;}
    .services-title{font-size:20px;}
    .services-subtitle{margin-top:16px;}
    .services-subtitle-bold{font-size:18px;}
    .services-subtitle-light{font-size:14px;}
    .services-cards{flex-direction:column; align-items:center; gap:16px; margin-top:24px;}
    .service-card{width:100%; max-width:320px;}
    .service-card-img{width:100%; height:auto; aspect-ratio:1/1;}
    .services-notice{flex-direction:column; align-items:center; gap:16px; margin-top:24px;}
    .notice-left span{font-size:18px;}
    .notice-right ul{font-size:10px;}

    /* SEC-PORTFOLIO Mobile */
    .sec-portfolio{height:auto; padding:60px 0;}
    .sec-portfolio .wrap{flex-direction:column; align-items:center; text-align:center; padding:0 16px;}
    .portfolio-content{padding-left:0;}
    .portfolio-sub{font-size:18px;}
    .portfolio-title{font-size:32px; line-height:40px;}
    .portfolio-divider{margin:12px auto;}
    .portfolio-desc{font-size:16px; line-height:22px;}
    .portfolio-desc br{display:none;}
    .portfolio-img{position:relative; top:auto; right:auto; margin-top:24px;}
    .portfolio-img img{width:100%; max-width:360px; height:auto;}

    /* SEC-PARTNERS Mobile */
    .sec-partners{padding:40px 0;}
    .sec-partners .wrap{max-width:392px;}
    .partners-title{font-size:24px;}
    .partners-grid{grid-template-columns:repeat(3, 100px); gap:12px; margin-top:24px;}
    .partner-item{width:100px;}
    .partner-item img{width:100px; height:100px;}
    .partner-name{font-size:13px;}
    .partner-type{font-size:10px;}
    .partner-info{height:48px;}

    /* SEC-IMPORTANCE Mobile */
    .sec-importance{padding:40px 0;}
    .sec-importance .wrap{max-width:392px;}
    .importance-title{font-size:28px;}
    .importance-boxes{flex-direction:column; align-items:center; gap:12px;}
    .importance-box{width:100%; max-width:320px;}
    .importance-box-top{height:80px; font-size:22px;}
    .importance-box-bottom{height:auto; padding:16px; font-size:14px;}

    /* SEC-AD-TYPES Mobile */
    .sec-ad-types{padding:20px 0 40px;}
    .sec-ad-types .wrap{max-width:392px;}
    .ad-type-block{padding:40px 0;}
    .ad-type-header{width:100%;}
    .ad-type-line{width:40px;}
    .ad-type-title{font-size:24px;}
    .ad-type-badge{font-size:16px; height:40px; min-width:auto; padding:0 20px; margin-top:16px; background:transparent; border:1px solid #FFF; color:#FFF;}
    .ad-type-desc{margin-top:16px; font-size:14px; line-height:22px;}
    .ad-type-images{width:100%; height:150px; margin-top:16px;}
    .ad-type-images .app-screen-1{left:calc(50% - 80px); top:25px; width:70px; height:70px;}
    .ad-type-images .app-screen-2{left:calc(50% + 10px); top:25px; width:70px; height:70px;}
    .ad-type-images .app-icon-left{left:10px; top:15px; width:80px; height:80px;}
    .ad-type-images .app-icon-right{right:10px; top:15px; width:80px; height:80px;}
    .ad-type-tags{display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:16px; max-width:280px; margin-left:auto; margin-right:auto;}
    .tag{min-width:auto; height:40px; padding:8px 16px; font-size:15px; background:transparent; border:1px solid #823CFE; color:#FFF;}

    /* SEC-PROCESS Mobile */
    .sec-process{padding:20px 0 40px;}
    .sec-process .wrap{max-width:392px;}
    .process-title{font-size:24px;}
    .process-steps{flex-direction:column; align-items:center; gap:16px; margin-top:24px;}
    .process-step{max-width:100%; width:100%;}
    .step-name{font-size:28px;}
    .step-desc{font-size:18px; line-height:24px;}
    .step-result{font-size:18px; line-height:24px;}

    /* SEC-GUARANTEED Mobile */
    .sec-guaranteed{padding:40px 0;}
    .sec-guaranteed .wrap{max-width:100%; padding:0 16px;}
    .guaranteed-title{font-size:24px;}
    .guaranteed-desc{font-size:14px; line-height:1.5;}
    .guaranteed-desc br{display:none;}
    .guaranteed-phones-swiper{margin-top:24px; padding-bottom:52px;}
    .guaranteed-phones-swiper .swiper-slide{width:186px;}
    .guaranteed-phones-swiper .guaranteed-phone-item{width:186px; gap:16px;}
    .guaranteed-phones-swiper .phone-screen{width:186px;}
    .guaranteed-phones-swiper .phone-label{width:80px; height:36px; font-size:14px;}
    .guaranteed-phones-swiper .swiper-pagination{bottom:0;}
    .guaranteed-phones-swiper .swiper-pagination-bullet{opacity:0.2; width:10px; height:10px; background:#FFF;}
    .guaranteed-phones-swiper .swiper-pagination-bullet-active{opacity:1; background:#FFF;}

    /* SEC5 Mobile */
    .sec5{height:400px;}
    .sec5 .wrap .video{width:280px; height:280px; padding:9px;}
    .sec5 .wrap .video:after{background: radial-gradient(50% 50% at 50% 50%, rgba(0, 0, 0, 50%) 0%, #000 100%);}
    .sec5 .wrap .text{padding-top:100px;}
    .sec5 .wrap .text > div{gap:8px;}
    .sec5 .wrap .text > div p{font-size:24px;}
    .sec5 .wrap .text > div p .purple{color:#82ECFF;}
    .sec5 .wrap .text > p{margin-top:21px; font-size:18px; line-height:28px; letter-spacing:-0.54px;}

    /* SEC6 Mobile */
    .sec6{height:467px;}
    .sec6 .wrap .text{padding-top:54px; padding-bottom:32px; font-size:20px; line-height:28px;}
    .sec6 .wrap .video{width:286px; height:298px; margin:0 auto; padding-top:125px;}
    .sec6 .wrap .video div{gap:4px;}
    .sec6 .wrap .video div p{font-size:16px;}

    /* SEC7 Mobile */
    .sec7{height:354px; padding:40px 0;}
    .sec7:after{top:40px;bottom:40px;}
    .sec7 .bg{top:40px;bottom:40px;min-width:484px;height: 274px;}
    .sec7 .wrap{padding-top:106px;}
    .sec7 .wrap .text{z-index:3; gap:4px;}
    .sec7 .wrap .text p{font-size:24px;}

    /* SEC-REVIEW Mobile */
    .sec-review{padding:40px 0 60px;}
    .sec-review .wrap{max-width:100%; padding:0;}
    .sec-review .title{color:#FFF; font-size:32px; font-weight:700; text-align:center; letter-spacing:-0.96px;}
    .sec-review .card{margin-top:24px; padding:0 16px 52px;}
    .sec-review .card-item .text{width:320px; padding:20px; border:1px solid #823CFE; border-radius:8px; background:linear-gradient(90deg, rgba(120, 92, 254, 0.10) 0%, rgba(255, 140, 0, 0.10) 100%); box-shadow:0 0 4px 0 rgba(130, 60, 254, 0.40), 0 0 20px 0 rgba(255, 140, 0, 0.50);}
    .sec-review .card-item .text p{color:#FFF; font-size:11px; font-weight:600; line-height:18px; letter-spacing:-0.33px;}
    .sec-review .card-item .text p:last-child{margin-top:12px; opacity:0.6;}
    .sec-review .swiper-pagination{bottom:0;}
    .sec-review .swiper-pagination-bullet{opacity:0.2; width:10px; height:10px; background:#FFF;}
    .sec-review .swiper-pagination-bullet-active{opacity:1; background:#FFF;}

    /* SEC9 Mobile */
    .sec9{height:auto;}
    .sec9:before{display:none;}
    .sec9:after{display:none;}
    .sec9 .title{color:#FFF; font-size:40px; font-weight:600; text-align:center; letter-spacing:-0.8px;}
    .sec9 .bg{display:none;}
    .sec9 .wrap{max-width:100%;padding-top:63px;padding-right:0;padding-left:0;transform:none;}
    .sec9 .wrap:before{display:none;}
    .sec9 .wrap .card{width:100%; height:auto; margin:33px 0 0 0; padding:0 16px 52px;}
    .sec9 .wrap .card-box{display:flex;}
    .sec9 .wrap .card-item{position:relative;top:auto;left:auto;width:auto;gap:0;padding-left:0;}
    .sec9 .swiper-pagination{bottom:0;}
    .sec9 .swiper-pagination-bullet{opacity:0.2; width:10px; height:10px; background:#FFF;}
    .sec9 .swiper-pagination-bullet-active{opacity:1; background:#FFF;}
    .sec9 .wrap .card-item .text{width:320px; gap:12px;}
    .sec9 .wrap .card-item .text p{font-size:11px; font-weight:600; line-height:18px; letter-spacing:-0.33px;}
    .sec9 .wrap .card-item .text p br{display:none;}

    /* SEC10 Mobile */
    .sec10{height:auto; padding-top:120px; padding-bottom:61px;}
    .sec10 .text div{font-size:32px; line-height:44px; letter-spacing:-0.96px;}
    .sec10 .text p{font-size:20px; line-height:27px; letter-spacing:-0.6px;}
    .sec10 .swiper{margin-top:55px; padding:0 16px;}
    .sec10 .swiper-slide{width:min(235px, 55vw);}

    /* SEC12 Mobile */
    .sec12{height:auto;}
    .sec12 .bg{display:none;}
    .sec12 .wrap{padding:0 16px 124px;}
    .sec12 .wrap .bg2{width:100%; height:auto; padding:0; background:none;}
    .sec12 .wrap .bg2 .text > div{margin-top:19px; font-size:16px; line-height:21px; letter-spacing:-0.48px;}
    .sec12 .wrap .bg2 .text > p{margin-top:8px; font-size:14px; font-weight:500; line-height:18px; letter-spacing:-0.42px;}
    .sec12 .wrap .bg2 .text > .submit{width:100%; height:44px; margin:35px 0 0 0; border-radius:10px; font-size:14px; letter-spacing:-0.42px;}
    .sec12 .wrap .bg2 .text > ul{display:none;}
    .sec12 .wrap .bg2 .form{position:relative; right:auto; bottom:auto; width:100%; height:auto; margin-top:54px; padding:0; background:none;}
    .sec12 .wrap .bg2 .form .form-text{width:100%;}
    .sec12 .wrap .bg2 .form .form-text p br{display:none;}

    /* Floating Mobile */
    .floating{right:16px; bottom:16px;}
    .floating .top{display:none;}
    .floating .kakao div{width:40px; height:40px;}
    .floating .kakao span{display:none;}
}
