/* 메인 */
.visual{width:100%;height:100vh;}
.visual_slide{width:100%;height:100%;overflow:hidden;background:#000}
.visual_slide .swiper-slide img{opacity:0.3;width:100%;height:100%;object-fit:cover;transform: scale(1.3);transition: transform 3s ease;}
.visual_slide .swiper-slide-active{z-index:10;}
.visual_slide .swiper-slide-active img {transform: scale(1);}
.visual_txt{position:absolute;width:1400px;top:65%;left:50%;transform:translate(-50%,-50%);color:#fff;transition: all 0.8s ease;}
.visual_slide .swiper-slide-active .visual_txt {top:45%;opacity: 1;}
.visual_txt span{font-weight:700;letter-spacing:0;display:block;margin-bottom:30px;}
.visual_txt span strong{font-weight:900;margin-right:3px;}
.visual_txt h1{font-weight:200}
.visual_txt h1 b{font-weight:bold}
.visual_txt p{margin-top:30px;font-weight:400}
.visual_btn{display:flex;position:absolute;bottom:200px;left:50%;transform:translateX(-50%);width:1400px;z-index:10;gap:15px}
.visual_btn div{cursor:pointer;display:flex;align-items:center;justify-content:center;width:70px;height:70px;border:1px solid #fff;border-radius:60px;opacity:1;transition:all .3s;}
.visual_btn div img{width:12px;filter:invert(1) brightness(10);}
.visual_btn div:hover{border:1px solid #e60012;background:#e60012;}

/* 공통 */
.sec_main_tit{opacity:0;transform: translateY(50px);transition: all 0.8s ease;;}
.sec_main_tit span{display:block;margin-bottom:15px;font-weight:700;text-transform: uppercase;}
.sec_main_tit h1{font-weight:bold;}
.sec_main_tit h1 b{}
.sec_main_tit p{color:#555;margin-top:20px;}
.sec_main_tit.on {opacity: 1;transform: translateY(0);}
/* 섹션 1*/
.about{background:#232429;padding-top:200px;padding-bottom:30px;position:relative;}
.about .sec_main_tit{color:#fff;}
.about .sec_main_tit p{color:#fff;}
.ab_wrap{}
.about ul{display:flex;margin:0 auto;margin-top:80px;width:90%;justify-content:space-between;}
.about ul li{position:relative;width:18%;padding:60px 0;background:#32343d;border-radius:20px;font-weight:500;}
.about ul li img{display:block;margin:0 auto;width:70px;}
.about ul li p{color:#fff;margin-top:25px;text-align:center;}

.greeting{background:#232429;padding:180px 0;height:90vh;width:100%;position: relative;z-index:0; overflow: hidden;}
.gr_inner{}
.greeting h1{color:#fff;text-align:center;}
.greeting h1 b{font-weight:bold}
.greeting p{font-weight:600;opacity:0;position:relative;margin-top:70px;color:#fff;text-align:center}
.greeting p b{font-weight:bold;font-size:32px;margin-top:10px;display:block;}
.greeting img{width:100%;height:100%;object-fit:cover;margin:0 auto;display:block;position:absolute;top:30%;left:50%;transform:translateX(-50%) scale(0.5);z-index:-1;}

/* 섹션 2 */
.renewal{padding:200px 0;position:relative;z-index:0}
.renewal .sec_main_tit{}
.renewal_box{margin-top:80px;display:flex;justify-content:space-between;}
.renewal_last_list{margin-top:-200px;}
.renewal_box ul{width:45%;}
.renewal_box ul li{width:100%}
.renewal_box ul li:last-child{margin-top:100px;}
.renewal_img{width:100%;position:relative;}
.renewal_img img{width:100%;}
.renewal_img:before{content:"";position:absolute;width:60%;height:100%;top:0;right:0;background:#fff; transition: width 0.8s ease;}
.renewal_img.active::before { width: 0;}
.renewal_txt{width:100%;padding:30px;}
.renewal_txt h2{}
.renewal_txt h4{margin-top:10px;line-height:28px;}
.renewal_txt span{font-size:26px;font-weight:900;color:#000;opacity:0.1;margin-bottom:20px;display:block;letter-spacing:0.2px;}
.renewal_txt p{margin-top:20px;color:#555;}
.renewal-pagination{position:absolute;right:0;top:0;}

/* 4단게 전략 */
.renewal_step{padding-top:180px;border-top:1px solid #e4e4e4;}
.renewal_step .ctt{width:1600px;}
.renewal_step .sec_main_tit{text-align:center;}
.step_btn{margin-top:60px;display:flex;}
.step_btn button{width:25%;background:none;border:0;border-bottom:2px solid #e4e4e4;padding-bottom:25px;}
.step_btn button.active{border-bottom:2px solid #e60012}
.step_num{}
.step_num p{font-weight:600;margin-top:5px;}
.tab-btn .step_num span{border:1px solid #e60012;color:#e60012;width:40px;height:40px;border-radius:40px;line-height:40px;margin:0 auto;margin-bottom:15px;display:block;font-size:15px;font-weight:bold;}
.tab-btn .step_num b{color:#999}
.tab-btn .step_num p{color:#ccc}
.tab-btn.active .step_num span{background:#e60012;color:#fff;}
.tab-btn.active .step_num b{color:#e60012;}
.tab-btn.active .step_num p{color:#000;}
.step_slide{margin-top:60px;}
.renewal_step ul{}
.renewal_step ul li{}
.step_list_wrap{}
.step_list{display:flex;flex-wrap:wrap;justify-content:space-between;}
.step_list p{padding:60px;background:#f9f9f9;border-radius:20px;text-align:center;overflow:hidden;width:22%;font-size:20px;font-weight:600;line-height:28px;}
.step_list img{height:100px;margin:0 auto;display:block;margin-bottom:15px;}

/* 오파트너스 장점 */
.merit{padding:200px 0;}
.merit .ctt{}
.merit_txt{transform:scale(0.5) translateY(100px);text-align:center;}
.merit_txt h1{}
.merit_txt h1 b{font-weight:bold;}
.merit_txt p{margin-left:auto;margin-top:70px;font-weight:500;line-height:36px;}

/* 전략 */
.plan{background:#232429;padding:180px 0;}
.plan .sec_main_tit h1{color:#fff;}
.plan ul{position:relative;padding-top:100px;display:flex;align-items:center;justify-content:space-between;}
.plan ul li{cursor:pointer;position:relative;width:30%;height:500px;border-radius:20px;transition:all .5s;}
.plan_inner{padding:60px;width:100%;height:100%;}
.plan1{background:#1a5a7d;transform:rotate(-3deg) perspective(1000px) translateZ(0);}
.plan2{background:#7d1a1a;transform:rotate(0deg) perspective(1000px) translateZ(0);;margin-top:-30px;}
.plan3{background:#ed8c1d;transform:rotate(3deg) perspective(1000px) translateZ(0);}
.plan_txt{}
.plan ul li p{font-size:26px;line-height:36px;font-weight:bold;color:#fff}
.plan_txt div{margin-top:25px;}
.plan ul li div span{font-size:16px;line-height:26px;color:#fff;display:flex;padding-bottom:10px;}
.plan ul li div span i{margin-right:10px}
.plan ul li:hover{transform: perspective(1000px) translateZ(-30px);margin-top:-100px;box-shadow:0 0 45px rgba(0,0,0,0.7)}
.plan ul li img{position:absolute;right:60px;bottom:40px;width:120px;display:block;}

/* 성과 */
.result{padding:180px 0;}
.result_sec_tit{display:flex;justify-content:space-between;align-items:end;}
.result .sec_main_tit p{font-size:15px;color:#999}
.result_slide_wrap{margin-top:60px;position:relative;}
.result_slide{}
.result_box{display:flex;align-items:center;justify-content:space-between;}
.result_img{width:45%;position:relative}
.result_img img{width:100%}
.result-inner-pagination{position:absolute;top:30px !important;left:30px !important;bottom:auto !Important;z-index:10}
.result-inner-pagination span{background:#fff;}
.result_txt{width:50%;}
.result_txt span{font-weight:bold;display:block;margin-bottom:6px;}
.result_txt h2{font-weight:bold;}
.result_txt p{margin-top:15px;color:#555;word-break:keep-all;line-height:1.7em;margin-top:30px;padding-top:30px;border-top:1px solid #e4e4e4;}
.result-pagination{display:none;}
.result-pagination span{width:30px;height:30px;font-size:14px;text-align:center;line-height:30px;}
.result_btn{display:flex;justify-content:space-between;width:160px;z-index:10;}
.result_btn div{cursor:pointer;display:flex;align-items:center;justify-content:center;width:70px;height:70px;border:1px solid #e60012;border-radius:60px;opacity:1;transition:all .3s;}
.result_btn div img{width:12px;}
.result_btn div:hover{border:1px solid #e60012;background:#e60012;}
.result_btn div:hover img{filter:invert(1) brightness(10)}

/* 개원입지 */
.location{background:#f9f9f9;padding:180px 0;}
.location .sec_main_tit{text-align:center;}
.location .sec_main_tit img{width:45px;position:relative;top:-3px;}
.location_list_wrap{margin-top:60px;display:flex;flex-wrap:wrap;align-items: center;gap:50px 20px;}
.location_list{width:30%;border-radius:10px;overflow:hidden;}
.location_img{}
.location_img img{width:100%}
.location_txt{min-height:183px;background:#fff;padding:35px;}
.location_txt b{margin-bottom:5px;}
.location_txt h2{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.location_txt div{height: 30px;overflow: hidden;text-overflow: ellipsis;width: 100%;}
.location_txt p{font-size:16px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;width:100%;color:#555;margin-top:10px;}
.location_txt span{ color: #999; letter-spacing: 0px;display: block;margin-top: 10px;}


.location_inner_slide{position:relative;}
.location-inner-pagination{position:absolute;top:30px !important;left:30px !important;bottom:auto !Important;z-index:10}
.location-inner-pagination span{background:#fff;}

.location_btn{display:flex;align-items:center;gap:0 12px;justify-content:center;margin-top:50px;}
.location_btn a{display:block;}
.location_btn a img{filter: invert(1) brightness(0); width: 10px;}
.location_paging{display:flex;gap:8px;}
.location_paging button{background:#fff;border:1px solid #e4e4e4;font-size:12px;color:#999;text-align:center;width:25px;height:25px;line-height:25px;border-radius:25px;}
.location_paging .location_page_active{background:#000;color:#fff;border:1px solid #000}

/* 자주묻는질문 */
.faq{padding:180px 0;}

/* 상담 */
.consult{padding:150px 0;background:#770009;}
.consult .ctt{display:flex;align-items:start;justify-content:space-between;}
.consult .sec_main_tit h1{color:#fff;}
.consult .sec_main_tit span{color:#ffdba8}
.consult .sec_main_tit h4{color:#ffb0b6;padding-top:35px;margin-top:35px;border-top:1px solid rgba(255,255,255,0.3);}
.consult .sec_main_tit h4 p{color:#fff;font-size:16px;font-weight:400;margin-top:15px;}
.consult_btn{display:flex;gap:20px;margin-top:30px;}
.consult_btn a{padding-top:40px;background: #870e17;border-radius: 10px;height: 200px;width:46%;color:#fff;font-weight:bold;text-align:center;transition:all .5s;}
.consult_btn a img{display:block;margin:0 auto;margin-bottom:15px;width:60px;}
.consult_btn a:last-child{font-weight:800;letter-spacing:0}
.consult_btn a:hover{background:#a81823}
.consult_btn strong{display:block;font-size:15px;color:#fff;font-weight:500;}
.consult_btn b{display:block;font-size:22px;font-weight:bold;margin-top:5px;}
.consult_form{width:600px}
.consult_form form{}
.consult_form2{display:flex;justify-content:space-between;}
.consult_form2 .consult_form_group{width:48.5%}
.consult_form_group{margin-bottom:15px;}
.consult_form_flex{display:flex;justify-content:space-between;align-items:center;}
.consult_form_flex input{width:31% !Important}
.consult_form_group input{background:none;}
.consult_select{padding:25px;background:rgba(0,0,0,0.3);border-radius:5px;position:relative;}
.consult_select span{cursor:pointer;display:flex;justify-content:space-between;align-items:center;color:#fff;font-size:18px;font-weight:600;}
.consult_select span img{width:12px;filter:invert(1) brightness(10);}
.consult_select ul{z-index:999;display:none;background:#fff;border-radius:5px;position:absolute;top:75px;left:0;width:100%;height:200px;overflow-y:auto;}
.consult_select ul li{cursor:pointer;font-size:18px;padding:15px 25px;color:#555;font-weight:500;}
.consult_select ul li:hover{background:#f8f8f8;color:#000}
.consult_form_group textarea{}
.consult_form_group  input,
.consult_form_group  textarea {width: 100%;padding: 25px;border:0;outline:0;background:rgba(0,0,0,0.3);border-radius:5px;box-sizing: border-box;color:#ffff;font-size:18px;font-weight:600;}
.consult_form_group input::placeholder,
.consult_form_group textarea::placeholder{
  color: #fff;opacity: 0.5;font-size:18px;font-weight:600;}
.form_btn{margin-top:20px}
.form_btn button{margin-top:20px;display:block;width:100%;border-radius:10px;padding:25px;text-align:center;color:#fff;font-size:16px;font-weight:600;border:0;background:none;border:1px solid #fff;transition:all .3s;}
.form_btn button:hover{border:1px solid #000;background:#000;}
.form_btn p{display:flex;align-items:center;justify-content:space-between;opacity:0.5;padding:15px 0;}
.form_btn p:hover{opacity:1;}
.agree_on{opacity:1 !important;font-weight:bold}
.form_btn span{cursor:pointer;color: #fff;font-size: 13px;display: flex;gap: 5px;border-radius: 3px;}
.form_btn span img{filter:invert(1) brightness(10);width:10px}
.form_btn p b{cursor:pointer;filter:invert(1) brightness(10);width:10px}
.agree{display:none;z-index:999;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:600px;height:400px;background:#fff;padding:60px;overflow-y:scroll;line-height:1.7em;}
.agree_close{position:absolute;top:30px;right:30px;}
.agree_close img{width:15px;cursor:pointer;transform:rotate(45deg)}
.agree h2{font-size:15px;margin-bottom:10px}
.agree h4{font-size:14px;margin-bottom:10px}
.agree span{font-size:13px;margin-bottom:10px;color:#000}
.agree p{font-size:12px;margin-bottom:10px}


.result-modal {position: fixed;top: 0;left: 0;width: 100%;height: 100%;display: flex;justify-content: center;align-items: center;background-color: rgba(0, 0, 0, 0.5);z-index: 1000;}
.modal-content {background-color: white;padding: 30px;border-radius: 15px;box-shadow: 0 0 20px rgba(0, 0, 0, 0.3);width: 90%;max-width: 500px;min-height: 200px;display: flex;flex-direction: column;}
.modal-header {display: flex;justify-content: space-between;align-items: center;margin-bottom: 15px;border-bottom: 1px solid #eee;padding-bottom: 15px;}
.modal-header h3 {font-size: 1.5rem;margin: 0;}
.close-modal {cursor: pointer;font-size: 24px;font-weight: bold;}
.modal-body {margin-top: 20px;font-size: 1.1rem;line-height: 1.5;text-align: center;}

@media screen and (max-width:799px){
  .sec_main_tit{transform:translateY(0);opacity:1;}
  
/* 메인슬라이드 */
  .visual{height:500px;}
  .visual_txt{width:90%;}
  .visual_txt p{font-size:15px;line-height:1.6}
  .visual_btn{width:90%;bottom:60px}
  .visual_btn div{width:40px;height:40px}
  .visual_btn div img{width:8px;}
  
  /* 오파트너스소개 */
  .about{padding:80px 0}
  .about ul{gap:20px 0;flex-wrap:wrap;margin-top:35px;}
  .about ul li{width:100%;display:flex;align-items:center;flex-wrap:wrap;padding:30px;}
  .about ul li img{margin:0;margin-right:15px;}
  .about ul li p{text-align:left;margin-top:0;}
  
 /* 인사말 */
  .greeting{padding:120px 0;height:auto;}
  .greeting h1{font-size:22px;line-height:1.5;}
  .greeting h1 b {color: #ff4848;}
  .greeting p{margin-top:35px;}
  .greeting img{top:0%;left:0;transform:translate(0,0);opacity:0.2;}
  .greeting p{opacity:1;font-size:15px;line-height:1.6;}
  .greeting p b{font-size:20px;}
  
  /* 리뉴얼 */
  .renewal{padding:80px 0;}
  .renewal_box{flex-wrap:wrap;margin-top:30px;}
  .renewal_box ul{width:100%}
  .renewal_txt span{display:none;}
  .renewal_txt{padding:30px 20px;}
  .renewal_txt h4{line-height:25px;margin-top:8px;}
  .renewal_txt p{word-break:keep-all;margin-top:10px;line-height:1.6;color:#555}
  .renewal_last_list{margin-top:30px}
  .renewal_box ul li:last-child{margin-top:30px;}
  
  /* 4단계 전략 */
  .renewal_step{padding-top:80px}
  .renewal_step .ctt{width:90%}
  .step_btn{flex-wrap:wrap;margin-top:35px;}
  .step_btn button{width:50%}
  .tab-btn .step_num b{font-size:15px;}
  .step_num p {font-size: 13px;}
  .step_btn button:nth-child(n+3){margin-top:25px}
  .step_slide{margin-top:35px}
  .step_list{gap:15px}
  .step_list p{width:46%;padding:30px 0;font-size:14px;line-height:20px;}
  .step_list img{height:70px}
  
  /* 장점 */
  .merit{padding:80px 0;}
  .merit_txt h1{font-size:22px;}
  .merit_txt p{font-size:15px;line-height:26px;margin-top:30px;}
  
  /* 전략 */
  .plan{padding:80px 0}
  .plan ul{padding-top:40px;flex-wrap:wrap;gap:20px 0;}
  .plan ul li{transform:rotate(0deg);width:100%;height:auto;}
  .plan ul li:hover{margin-top:0;transform:scale(1);}
  .plan_inner{padding:35px;}
  .plan ul li p {font-size: 18px;line-height: 29px;}
  .plan ul li div span {font-size: 14px;line-height: 19px;word-break:keep-all}
  .plan ul li div span br{display:none;}
  .plan ul li img {position: relative;right: 0;bottom: 0;width: 80px;display: block;margin-lefT: auto;}
  .plan2{margin-top:0;}
  
  .result{padding:80px 0;}
  .result_sec_tit{flex-wrap:wrap;}
  .result_sec_tit .sec_main_tit{width:100%;text-align:center;}
  .result .sec_main_tit p {font-size: 13px;}
  .result_btn{margin:0 auto;margin-top:25px;width:90px;}
  .result_btn div{width:40px;height:40px}
  .result_btn div img{width:8px;}
  
  /* 컨설팅 리뷰 */
  .result_slide_wrap{margin-top:30px}
  .result_box{flex-wrap:wrap}
  .result_img{width:100%}
  .result_txt{width:100%;margin-top:25px;}
  .result_txt p{margin-top:20px;padding-top:20px;}
  
  /* 최신개원입지 */
  .location{padding:80px 0}
  .location .sec_main_tit img {width: 25px;}
  .location_list_wrap{gap:20px;margin-top:35px;}
  .location_list{width:46%}
  .location_txt{padding:20px;min-height:auto;}
  .location_txt b{font-size:13px;}
  .location_txt h2{font-size:15px;}
  .location_txt p{font-size:13px;white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;}
  /* faq */
  .faq{padding:80px 0}
 
  /* 상담 */
  .consult{padding:80px 0}
  .consult .ctt{flex-wrap:wrap;}
  .consult .sec_main_tit{width:100%}
  .consult .sec_main_tit h4{margin-top:20px;padding-top:20px;}
  .consult .sec_main_tit h4 p{margin-top:5px;font-size:13px;}
  .consult_btn strong{font-size:13px;}
  .consult_btn b{font-size:18px;}
  .consult_form{width:100%;margin-top:30px;}
  .consult_select span{font-size:14px;}
  .consult_form_group input, .consult_form_group textarea{font-size:14px}
    .consult_form_group input::placeholder, .consult_form_group textarea::placeholder{font-size:14px}
  .consult_form2{flex-wrap:wrap;}
  .consult_form2 .consult_form_group{width:100%}
  .form_btn button{font-size:14px;}
}