/* *** 공통 적인 부분 ( 추후에 분리해야 할 수도 있음 ) *** */
#container { font-family: 'Pretendard-Medium'; background-color: #fff; margin-top: 40px }
#header { margin:0 auto; max-width:450px; background: #fff;      /* 배경 (필요에 따라) */}

section.sect_class { padding: 3rem 2rem 3rem 2rem; border-bottom:.1rem solid #eee; }
.main_title { font-family: 'Pretendard-Bold'; font-size: 2rem; }
.second_title { font-size:1.8rem; }
.sub_title { font-size: 1.6rem; color: #595959; }
.popupbtn_frame { display:flex; }
.popup_button { display: flex; padding: .4rem 2rem; border: .1rem solid #c2c2c2; border-radius: .4rem; font-size: 1.3rem;
  cursor: pointer; }
.popup_btn { cursor: pointer; -webkit-tap-highlight-color: transparent; }
.slide_wrap { padding: 0 1rem .2rem 0; }
.w100 { width: calc(100% + 4rem); transform: translateX(-2rem); }

/* *** 팝업 공통 *** */

/* 팝업 전체 어두운 배경 */
.popup_overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.5); display: none;
  justify-content: center; align-items: flex-end; /* 하단에 위치하도록 변경 */ z-index: 1000; }

/* 팝업 박스 */
.popup_container { background: #fff; width: 100%; max-width: 450px; border-radius: 15px 15px 0 0; /* 상단만 라운딩 */ opacity: 0; 
  transform: translateY(100%); /* 화면 아래에서 시작 */ transition: transform 0.35s ease-out, opacity 0.35s ease-out; }

/* 팝업 활성화 시 */
.popup_overlay.active { display: flex; }
.popup_overlay.active .popup_container { transform: translateY(0); /* 자연스럽게 위로 */ opacity: 1; }

/* 팝업 내용 영역 */
.popup_wrap { position: relative; max-height: 90vh; /* 화면 넘칠 경우 스크롤 */ overflow-y: auto; }
.popup_title { font-family: 'Pretendard-Bold'; font-size: 2rem; padding: 2rem 5rem 2rem 2rem; border-bottom: .1rem solid #c2c2c2; }
.popup_detail { padding: 2rem 2rem 6rem; }

/* 닫기 버튼 */
.popup_close { position: absolute; top: 0; right: 0; padding: 2rem; cursor: pointer; font-weight: bold; font-size: 2rem;
  font-family: 'Pretendard-Bold';}

/* 제목 스타일 ( 이건 수정 필요 ) */
.popdetail_title { font-size: 18px; font-weight: bold; margin-bottom: 12px; }

/* /// 팝업 공통 /// */


/* *** 뒤로가기 버튼 ( 상단고정 ) *** */
.top_fixed {
  position: fixed;
  top: 0;
  left: 50%;
  width: 100%;
  z-index: 1000;
  text-align: left;
  max-width: 450px;
  transform: translateX(-50%);
  border: .1rem solid #eee;
  background-color: #fff;
}
.header_fix { display: flex; justify-content: space-between; }
.move_btn {
  width: 10px;
  padding: 10px 12px;
  cursor: pointer;
  font-size: 18px;
  display: flex;
  align-items: center;
  font-family: 'Pretendard-Bold';
  /* background-color: #fff; */
}
.right_button { padding-right: 2rem; display: flex; align-items: center; }
.share_button { display: flex; justify-content: flex-end; }
/* #header .share_image { position: absolute; width: 100%; height: 100%; }
#header .share_img { width: 100%; top: 0; right: 0; }
#header .share_link { top: 0; } */
/* /// 뒤로가기 버튼 ( 상단고정 ) /// */



/* *** 패럴 배경 *** */
.main_image {
  /* width: 100%; */
  max-width: 450px;       /* 필요시 */
  aspect-ratio: 450 / 240; /* 보여줄 영역 비율 */
  overflow: hidden;
  position: relative;
}

.img_move {
  width: 100%;
  height: auto;
  /* min-height: 120%; */
  position: absolute;
  top: 0;
  left: 0;
  will-change: transform;
  transform: translateY(-15%);
}

/* /// 패럴 배경 /// */


/* *** Section1 *** */
section#Section1 {
  padding-top: 0;
}
.main_keyword {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 1.6rem;
  color: #595959;
  margin: 2rem 0 1rem 0;
  gap: 5%;
}
.share_icon { width: 5%; position: relative; }
.share_icon .common_img { vertical-align: middle; }
.main_sinfo { font-size: 1.72rem; color: #595959; margin: 1rem 0; margin-right: 8%; }
/* /// Section1 /// */

/* *** Section2 *** */
.choice_prg { margin-top: 1.6rem; }
/* /// Section2 /// */



/* *** Section3 *** */
.youtube_wrap { position: relative; height: 0; padding-top: 0px; 
  padding-bottom: 56.25%; overflow: hidden; margin: 1rem 0 2rem; }
.youtube_wrap iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

#Section3 .info_content { font-size: 1.6rem; display:flex; margin: 3rem 0; }
#Section3 .ltitle_txt { font-size: 1.46rem; }
.info_ltitle { color: #595959; width: 35%; }
.info_rtitle { width: 100%; }
.info_rdetail { width: 65%; }
.spec_info .info_rdetail { display: flex; font-size: 1.4rem; }
.spec_info .rtitle_txt { display: flex; width: 100%; }
.spec_info .spec_title { width: 28%; }
.spec_info .spec_detail { width: 72%; }
.spec_info .rdetail_txt, .spec_info .rtitle_txt { margin-bottom: .2rem; line-height: 2.2rem; }

.winfo_detail { margin-top: 1rem; }
.wdetail_button { display: flex; }
.wdetail_btn {
  padding: .6rem .8rem;
  border: .1rem solid #c2c2c2;
  border-radius: .4rem;
  background-color: #fff;
  font-size: 1.2rem;
}
.reviews_write {
  margin-top: 1rem;
}
#Section3 .review_write { color: #595959; font-size: 1.25rem; }
.usrslide_frame {
  padding: 1.6rem;
  background-color: #F8F8F8;
  border: .1rem solid #C2C2C2;
  border-radius: 1rem;
  font-size: 1.2rem;
}
.uimage_id {
  display: flex;
  align-items: center;
  gap: 2%;
}
.uimage { width: 8%; }
.review_user { margin-top: 1rem; }
.rv_user {
  white-space: normal;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
#Section3 .rvcontent_txt {
  -webkit-line-clamp: 4;
  font-size: 1.46rem;
  line-height: 1.88rem;
  height: 7.52rem;
}
.user_review .rv_content { padding: 1.4rem 0; }
.user_review .popup_button { font-size: 1.1rem; }

.price_compare .info_ltitle {
  margin-top: .6rem;
}
.price_compare .rdetail_txt {
  display: flex;
  gap: 5%;
  align-items: center;
}
.site_image { width: 25%; }
.danawa_link, .goodshop_link, .happy_link { color: #000; }
span.cash_lowest { margin-left: 1rem; font-size: 1.28rem; }
.compare_info { font-size: .9rem; margin-top: .4rem; }

#Section3 .realprice.info_content { margin-bottom: 1rem; }
.product_prices {
  background-color: #f8f8f8;
  border: .1rem solid #c2c2c2;
  border-radius: .8rem;
  font-family: 'Pretendard-Regular';
  font-size: 1.4rem;
}
.lowest_product {
  padding: 1.6rem 1.2rem;
  border-bottom: .1rem solid #aaa;
}
.low_prices {
  display: flex;
  gap: 5%;
  align-items: center;
}
.low_btn {
  background-color: #ff0000;
  color: #fff;
  font-size: 1.6rem;
  padding: .6rem 1rem;
  border: .1rem solid #c2c2c2;
  border-radius: .6rem;
}
.low_price {
  color: #ff0000;
  display: flex;
  font-size: 2.2rem;
  font-family: 'Pretendard-Bold';
}
.low_button { position: relative; }
.won {
  margin-left: .4rem;
}
.price_datetime {
  margin-top: 1rem;
  font-family: 'Pretendard-Medium';
  color: #595959;
  font-size: 1.6rem;
}
.prd_content {
  padding: 1.6rem 1.2rem;
  border-bottom: .1rem solid #c2c2c2;
}
.product_price {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2%;
  width: 100%;
}
.product_price.lowest_prd { color: #ff0000; }
.prd_mall { width: 30%; }
.prd_prices {
  display: flex;
  align-items: center;
  font-size: 1.76rem;
  font-family: 'Pretendard-SemiBold';
  width: 70%;
  justify-content: flex-end;
}
.lowest_stress {
  margin-right: .4rem;
  font-size: 1.28rem;
}
.buy_button {
  background-color: #fff;
  padding: .6rem 1rem;
  border: .1rem solid #c2c2c2;
  border-radius: .4rem;
  font-family: 'Pretendard-Regular';
  font-size: 1.2rem;
}
.lowest_prd .buy_button {
  color: #fff;
  background-color: #ff0000;
}
.prd_link {
  position: relative;
  margin-left: .4rem;
}
.products_detail {
  display: flex;
  margin-top: .6rem;
}
.prd_ldetail {
  width: 30%;
  display: flex;
  align-items: flex-end;
  padding-bottom: .4rem;
}
.product_content .popup_button {
  font-size: 0.96rem;
  padding: .4rem .34rem;
}
.prd_rdetail {
  width: 70%;
  padding-left: 1rem;
}
.prd_score {
  display: flex;
  align-items: center;
  gap: 1%;
}
.star_image { width: 6%; }
.star_score { font-size: 1.16rem; }
.prd_details { margin-top: .4rem; }
.detail_txt {
  font-size: 1.3rem;
  color: #595959;
  white-space: normal;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.buy_notice { padding: 1rem 0; }
.maketing {
  font-family: 'Pretendard-SemiBold';
  color: #787878;
  font-size: .8rem;
  text-align: center;
}
/* .rdetail_button { color: #9e9e9e; }
.order_btn { cursor: pointer ;}
.order_btn.select { color: #000; }
.pslide_frame {
  background-color: #f8f8f8;
  padding: 1.4rem;
  border: .1rem solid #c2c2c2;
  border-radius: .6rem;}
.price_mall {
  display: flex;
  align-items: center;
  width:100%;
  position: relative;
}
.prd_price {
  font-family: 'Pretendard-Bold';
  color: #002afd;
  font-size: 1.7rem;
  width: 50%;
}
.low_icon {
  width: 7%;
  margin-right: 2%;
}
.prd_mall {
  margin-right: 6%;
  width: 30%;
}
.link_icon {
  font-size: 1.4rem;
  width: 5%;
  text-align: right;
}
.prd_name {
  font-size: 1.4rem;
  margin: 1rem 0;
  white-space: normal;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.prd_detail {
  margin: 1rem 0;
}
.pdetail_button {
  display: flex;
}
.pdetail_btn, .wdetail_btn {
  padding: .6rem .8rem;
  border: .1rem solid #c2c2c2;
  border-radius: .4rem;
  background-color: #fff;
  font-size: 1.2rem;
} */



#Section3 .popup_overlay .popup_title {
  white-space: normal;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.popup_overlay .prd_image {
  display: flex;
  width: 100%;
  justify-content: center;
}
.popup_overlay .prd_img { width: 50%; }
/* .popup_overlay .prd_specs { display:flex; gap: 1rem; margin: 2rem 0; } */
.popup_overlay .left_titles { color: #595959; font-size: 1.6rem; }
.popup_overlay .right_details { font-size: 1.6rem; }
/* .popup_overlay .prd_specs .ltitle_txt, .popup_overlay .prd_specs .rdetail_txt { margin-bottom: .6rem; min-height: 1.9rem; } */
.ad_info {
  color: #787878;
  font-size: 1rem;
  text-align: center;
  margin-top: 2rem;
}

#popup1 .popup_title { font-family: 'Pretendard-Medium'; font-size: 1.74rem; }
#popup1 .recommand_why { font-size: 1.46rem; font-family: 'Pretendard-ExtraLight'; line-height: 2.2rem; }

#popup2 .popup_title { font-size: 1.6rem; }
#popup2 .uimage { width: 6%; }
#popup2 .review_user { margin-top: 0; margin-left: .6rem; }
#popup2 .rv_content { font-size: 1.46rem; }

#popup3 .popup_title { padding-right: 5.4rem; }
#popup3 .common_img {
  vertical-align: middle;
}
/* #popup3 .product_price { margin-top: 2rem; width: calc(100% + 3rem); } */
#popup3 .product_price { position: relative; gap: 3%; }
#popup3 .popup_close { padding: 2.4rem 2rem; }
#popup3 .prd_mall { width: 25%; }
#popup3 .popup_prices {
  display: flex;
  align-items: center;
  font-size: 1.76rem;
  font-family: 'Pretendard-SemiBold';
  width: 50%;
  justify-content: flex-end;
}
#popup3 .popup_price, #popup3 .won { color: #002afd; }
#popup3 .popup_link { position: relative; margin-left: .4rem; width: 5%; }
#popup3 .buy_button {
  padding: 0;
  border: 0;
  border-radius: 0;
  font-size: 2rem; 
}
#popup3 .popup_score {
  display: flex;
  align-items: center;
  gap: 4%;
  justify-content: flex-end;
  width: 10%;
}
#popup3 .star_image {
  width: 40%;
  display: flex;
  align-items: center;
}
#popup3 .product_intro, #popup3 .product_keyword, #popup3 .product_detail {
  width: calc(100% + 3.6rem);
}
#popup3 .product_intro {
  font-family: 'Pretendard-SemiBold';
  font-size: 1.52rem;
  margin-top: 2rem;
}
#popup3 .product_keyword {
  font-size: 1.42rem;
  color: #595959;
}
#popup3 .prdspec_info { font-size: 1.32rem; margin: 1rem 0; }
#popup3 .product_detail {
  font-family: 'Pretendard-Medium';
  font-weight: 600;
  font-size: 1.42rem;
  line-height: 2.3rem;
  margin-top: 1rem;
}
#popup3 .prd_specs { display:flex; gap: 1rem; margin-bottom: 2rem; }
#popup3 .prd_specs { line-height: 2rem; font-size:1.6rem; }
#popup3 .ltitle_txt, #popup3 .rdetail_txt { line-height: 2rem; margin-bottom: .4rem; }
#popup3 .prd_circle, #popup3 .prd_colon { margin-bottom: .4rem; color: #595959; }
#popup3 .star_score { font-size: 1.35rem; }
#popup3 .detail_txt { font-size: 1.46rem; display: block; }
#popup3 .prd_detail_txt { text-indent: -1.46rem; padding-left: 1.46rem; }

/* /// Section3 /// */


/* Section4 *** 사용자 답변 종합한 결과 *** */

#Section4 .main_title { margin-bottom: .6rem; }
.assist_title { font-family: 'Pretendard-Bold'; font-size: 1.6rem; }
.part_desc { color: #595959; margin-top: 1rem; }
/* Category *** 사용자 답변 말풍선 *** */
.user_select { margin: 3rem 0; }
.uselect_group { display: flex; flex-direction: column; }
.uselect_line { padding: .4rem; display: flex; gap: 1%; }
.uselect_txt { font-family: 'Pretendard-Bold'; color: #000; padding: .6rem 1rem; border-radius: 1.2rem; }
.userline2 { padding-left: 5rem; }
.usertxt1 { background-color: #b8e9ff; }
.usertxt2 { background-color: #b8e9ff; }
.usertxt3 { background-color: #b8e9ff; }
.usertxt4 { background-color: #b8e9ff; }
.usertxt5 { background-color: #b8e9ff; }
.usertxt6 { background-color: #b8e9ff; }
/* Category /// 사용자 답변 말풍선/// */

/* Category *** 사용자 프로그램 이용률 *** */
.user_program.sub_cate { margin-top: 2rem; }
.uprogram_title { display: flex; gap: .6rem; }
.vcheck { width: 2.6rem; }
.user_program { font-size: 1.6rem; }
.uprogram_image { display: flex; gap: 3%; flex-wrap: nowrap; margin: 1rem 0 0; }
img.uprg_img { width: 16%; }
ul.prog_ul { padding-left: 2rem; }
li.prog_name { list-style: disc; list-style-position: outside; color: #595959; }
/* .program_per { font-size: 2.2rem; color: #002afd; margin: .4rem 0 1rem 0; } */
/* Category /// 사용자 프로그램 이용률/// */

/* Section4 /// 사용자 답변 종합한 결과 /// */


/* Section5 *** 전문가가 선택한 이유 *** */

.why_reason { margin-top: 2rem; }
/* *** 슬라이드 *** */
.wslide_frame.slide_frame {
  padding: 3rem 1.6rem 1.6rem;
  background-color: #F8F8F8;
  border: .1rem solid #C2C2C2;
  border-radius: 1rem;
}
.ws_question {
  color: #595959;
  display: flex;
  gap: .4rem;
  font-size: 1.5rem;
}
.wsq_txt {
  white-space: normal;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.ws_answer {
  display: flex;
  font-size: 1.8rem;
  margin: 1rem 0 2rem;
  line-height: 2.2rem;
  gap: .4rem;
}
.wslide_wrap .ws_answer {
  height: 11rem;
}
.wsa_txt {
  white-space: normal;
  display: -webkit-box;
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
#Section5 .wsq_txt { height: 3.6rem; }
#Section5 .wsa_txt { height: 11rem; }
.whydetail_txt.popup_button {
  background-color: #fff;
}

.popup_overlay .wsa_txt, .popup_overlay .wsq_txt { -webkit-line-clamp: unset;}
.popup_overlay .ws_question { font-size: 1.8rem; }
.popup_overlay .ws_answer { font-size: 2rem; line-height: 2.6rem; margin: 2rem 0; }
/* /// 슬라이드 /// */

/* Section5 /// 전문가가 선택한 이유 /// */


/* Section6 *** 사용자 리뷰 *** */
.rvslide_container {
  margin-top: 2rem;
}
.rvslide_frame {
  padding: 2rem 2rem 1rem 2rem;
  background-color: #f8f8f8;
  border: .1rem solid #c2c2c2;
  border-radius: 1rem;
}
.rv_mall { display: flex; align-items: center; font-family: 'Pretendard-Bold'; font-size: 2rem; gap: 1rem; }
img.common_img.rvmall_img { width: 40%; }
#Section6 .rv_content { height: 12rem; }
.rv_content {
  font-family: 'Pretendard-Light';
  font-size: 2rem;
  padding: 2rem 0;
  line-height: 2.4rem;
}
.rvcontent_txt {
  white-space: normal;
  display: -webkit-box;
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.rv_detail { display: flex; justify-content: space-between; align-items: center; }
.rvdetail_btn.popup_button { background-color: #fff; }
.rv_wtime { color: #595959; }
.no_review {
  display: flex;
  justify-content: center;
  margin: 3rem 0;
}
.noreview_image {
  background-color: #ccc;
  width: 98%;
}

.popup_btn {
  pointer-events: auto;
}


.popup_overlay .rvcontent_txt { -webkit-line-clamp: unset; }
.popup_overlay .rv_detail { justify-content: flex-end; }
#popup5 .rvcontent_txt { font-family: 'Pretendard-Light'; color: #595959; font-size: 1.6rem; line-height: 2.4rem;}
#popup5 img.common_img.rvmall_img { width: 30%; }

/* Section6 /// 사용자 리뷰 /// */




/* Section7 *** 사용자들이 선택한 기능 *** */

/* Category *** 막대차트 선택 keyword *** */
.merit_chart { font-size: 1.7rem; margin: 2rem 0; }
.chart_qper { display: flex; justify-content: space-between; align-items: center; }
.chart_q { color: #595959; width: 70%; font-size: 1.2rem; }
.chart_graph { background-color: #c2c2c2; margin: .8rem 0 2rem 0; padding: .2rem; }
.chart_graph_bar { background-color: #000; height: 100%; top: 0; left: 0; z-index: 1; width: 0; transition: width 2s ease; }
/* Category /// 막대차트 선택 keyword /// */

/* Category *** 빅데이터 선택 keyword *** */
.merit_bigdata { margin: 5rem 0 4rem; }
.bigdata_info { text-align: center; color: #595959; }
/* Category /// 빅데이터 선택 keyword /// */

/* Section7 /// 사용자들이 선택한 기능 /// */



/* Section8 *** 컴하우 콘텐츠 *** */


/* Category *** 컴하우 만족도 이미지 *** */
.content_rate { margin-bottom: 4rem; }
/* Category /// 컴하우 만족도 이미지 /// */


/* Category *** 다른 콘텐츠 소개 *** */
.content_guide { margin-top: 2rem; }
.content_guide .apply_title { margin: 1rem 0 2rem; }
.keyword_group {
  font-family: 'Pretendard-Bold';
}
.keyword_line {
  display: flex;
  gap: 2%;
  margin-bottom: 1rem;
}
.keyword_act {
  position: relative;
  background-color: #eee;
  padding: .4rem .6rem;
  border-radius: 1rem;
}
.add_service { margin: 3.4rem 0 2rem; }
/* Category /// 다른 콘텐츠 소개 /// */



/* Section8 /// 컴하우 콘텐츠 /// */





/* Section9 *** 설문조사 *** */

.survey_image {
  margin-top: 2rem; position: relative;
}


/* Section9 /// 설문조사 /// */






/* Section9 *** with(위에 중복?) *** */

section#Section9 { padding-bottom: 3rem; }
.with_cate { margin-top: 3rem; }
.add_service2 { margin: 2rem 0 0rem; }
.with_title { font-size: 2.4rem; color: #002afd; font-family: 'Pretendard-SemiBold'; }
#Section9 .slide_iframe { position: relative; }

/* ** 슬라이드 X (임시) ** */
.service_slide2 {
  display: flex;
  gap: 2%;
}
.sslide_wrap2.slide_wrap {
  padding: 0;
  width: 50%;
}
/* // 슬라이드 X (임시) // */
/* Section9 /// with(위에 중복?) /// */






/* Section10 *** 자주묻는 질문 *** */
#Section10 { padding-top: 3rem; }
.QnA_title { display: flex; justify-content: space-between; }
.main_title { font-family: 'Pretendard-Bold'; font-size: 2rem; }
#Section10 .main_title { display: flex; align-items: center; flex-wrap: wrap; }
.kakaocs_image { width: 38%; position: relative; }
.qna_group { margin-top: 2rem; font-family: 'Pretendard-Light'; font-size: 1.8rem; }
.question { margin-bottom: 1.4rem;}
.open_link { position: absolute; top:0; left:0; width:100%; height:100%; }

/* #popup5 */
.popup_overlay .qna_question { font-size: 1.8rem; }
.popup_overlay .qna_answer { font-size:1.8rem; margin: .6rem 0 1.6rem 0; padding: 2rem 1.4rem; background-color: #eee; 
  border-radius: .6rem; font-family: 'Pretendard-Light';}

/* Section10 /// 자주묻는 질문 /// */