/* 종합 컨설팅 */
#consolting {
  width:100%;
  display:flex;
  justify-content: space-between;
  margin-top:140px;
  position:relative;
}
.con_left {
  width:25%;
  position:sticky;
  align-self: flex-start;
  height:auto;
  top:32px;
}
.con_category > li > a {
  font-size:26px;
  font-weight: 700;
  color:var(--color-cc);
  transition: .3s;
}
.con_category > li.choice > a {
  color:black;
}
.con_category > li:not(:first-of-type) {
  padding-top:36px;
}
.con_category > li:hover {
  cursor: pointer;
  transition: .3s;
}
.con_category > li:not(.choice):hover a {
  color:#999;
}

/* right */
.con_right {
  width:75%;
}
.round_title8 {
  padding-left:8px;
}


/**/
/**/
/**/
/* start */
.celebWrap, .studioWrap {
  width:100%;
  height: auto;
  display:flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap:32px 12px;
  flex-wrap:wrap;
}
.celebBox, .studioBox {
  width:32.5%;
  height:auto;
}
.celeb_imgBox, .studio_imgBox {
  width:100%;
  aspect-ratio:1/1;
  overflow:hidden;
  border-radius: 20px;
  border:1px solid #F5F5F5;
}
.celeb_imgBox > img,
.studio_imgBox > img {
  width:100%;
  object-fit: cover;
  transition:.3s;
  cursor: pointer;
}
.celeb_imgBox > img:hover,
.studio_imgBox > img:hover {
  transform:scale(1.1);
}
.celeb_txtBox { /* text */
  width:100%;
  padding:0 16px 0 16px;
  display:flex;
  gap:6px;
  justify-content: flex-start;
  align-items: center;
  margin-top:12px;
}
.celeb_txtBox > .name {
  font-size:18px;
  font-weight: 600;
  color:var(--color-1d1d1f);
}
.celeb_txtBox > .country {
  font-size:14px;
  color:var(--color-76);
  background-color: rgba(0,0,0,0.05);
  padding:2px 6px;
  border-radius: 80px;
  border:solid 1px #767676;
}


/* 파트너스 */
/* 신원리조트 */
.partnersC_wrap {
  width:100%;
  height:465px;
  display: flex;
  justify-content: space-between;
  align-items:flex-end;
}
.partnersC_wrap > .left {
  width:35%;
  height:100%;
  background-color:var(--color-fa);
  border-radius: 20px;
  padding:52px 0;
  text-align:center;
}
.partnersC_wrap > .left h1 {
  font-size:42px;
  font-weight: bold;
  line-height: 120%;
  padding-bottom:52px;
}
.partnersC_wrap > .left img {
  display: block;
  margin: 0 auto;
}
.partnersC_wrap > .right {
  width:60%;
  height:100%;
  padding-bottom:24px;
  text-align:left;
  position:relative;
  display:flex;
  justify-content: flex-start;
  align-items: flex-end;
  flex-wrap:wrap;
}
.partnersC_wrap > .right h2 {
  font-size:24px;
  font-weight: bold;
  line-height: 200%;
  padding-bottom:16px;
}
.partnersC_wrap > .right p {
  font-size:18px;
  line-height: 190%;
}
.partnersC_wrap > .right p:first-of-type {
  margin-bottom:12px;
}
.partnersC_wrap > .right h3 {
  font-size:80px;
  font-weight: bold;
  line-height: 120%;
  color:var(--color-f9);
  position:absolute;
  left:0;
  top:54px;
  z-index: -1;
}

.part_hotel_container {
  width:100%;
  margin-top:140px;
}
.hotel_title {
  font-size:36px;
  font-weight: 600;
  margin-bottom:32px;
  display: block;
  text-align: center;
}
.best3_hotel {
  width:100%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.hotel_box {
  width:32.5%;
  height:auto;
}
.hotelImg {
  width: 100%;
  height:300px;
  /* aspect-ratio:4/3; */
  overflow: hidden;
  border-radius: 20px;
  cursor: pointer;
}
.hotelImg img {
  width:100%;
  object-fit: cover;
  transition:.3s;
} 
.hotelImg img:hover {
  transform: scale(1.1);
}
.hotelText {
  padding:0 16px;
  margin-top:24px;
}
.hotelText h2 {
  font-size:24px;
  font-weight: 800;
  padding-bottom:8px;
}
.hotelText > p:first-of-type {
  font-size:16px;
  color:var(--color-76);
  line-height: 150%;
  margin-bottom:12px;
}
.hotelText > p:last-of-type {
  font-size:14px;
  font-weight: 600;
  padding:4px 10px;
  border-radius: 100px;
  background-color: rgba(0,0,0,0.05);
  width:fit-content
}
.infoH {
  width:100%;
  margin-top:42px;
}
.infoH > div {
  display: flex;
  justify-content: flex-start;
  width:100%;
  font-size:14px;
}
.infoH > div > p.cate {
  width:20%;
  font-weight: 600;
  word-break: break-all;
}
.infoH > div > p:not(.cate) {
  width:80%;
  word-break: keep-all;
}
.infoH > div:last-child {
  margin-top:6px;
}
.infoH > div > p:last-child {
  color:var(--color-76);
}

.hotel_list_wrap {
  margin-top:140px;
}
.hotel_list_wrap h4 {
  padding-left:16px;
  padding-bottom:16px;
}
.hotelList {
  width:100%;
  border-collapse: collapse;
}
.hotelList thead th {
  border-top:solid 2px black;
  border-bottom:solid 1px black;
  height:74px;
}
.hotelList tbody td {
  text-align:center;
  height:50px;
  border-bottom:solid 1px #F0F1F3;
}
.hotelList tbody .point {
  background-color:#FAFAFA;
}

.plusService_wrap {
  margin-top:140px;
}
.plusService_wrap h1 {
  font-size: 36px;
  font-weight: 600;
  text-align:center;
}
.plusService_wrap > p {
  padding-top:6px;
  padding-bottom:32px;
  font-size:18px;
  text-align:center;
}
.service_wrap {
  display:flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap:24px;
}
.service_box {
  width:32.5%;
  height:400px;
  border-radius: 20px;
  overflow:hidden;
  position: relative;
  padding:36px;;
}
.service_box img {
  width:100%;
  object-fit: cover;
  position: absolute;
  inset:0;
  transition:.3s;
  cursor: pointer;
}
.service_box img:hover {
  transform: scale(1.1);
}
.service_box h2,
.service_box p {
  position: absolute;
  z-index: 2;
  color:white;
  bottom:36px;
}
.service_box h2 {
  bottom:64px;
}

/* 태블릿 (769px - 1024px) */
@media screen and (min-width: 769px) and (max-width: 1024px) {
  #consolting {
    flex-direction: column !important;
    margin-top: 80px !important;
  }

  .con_left {
    width: 100% !important;
    height: auto !important;
    position: static !important;
    margin-bottom: 40px !important;
  }

  .con_category {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 20px !important;
    justify-content: center !important;
  }

  .con_category > li {
    margin: 0 !important;
    padding: 0 !important;
  }

  .con_category > li:not(:first-of-type) {
    padding-top: 0 !important;
  }

  .con_category > li a {
    font-size: 22px !important;
  }

  .con_right {
    width: 100% !important;
  }

  /* 신원리조트 파트너스 */
  .partnersC_wrap {
    flex-direction: column !important;
    height: auto !important;
    align-items: center !important;
    gap: 30px !important;
  }

  .partnersC_wrap > .left {
    width: 100% !important;
    height: auto !important;
    padding: 40px 20px !important;
  }

  .partnersC_wrap > .left h1 {
    font-size: 32px !important;
    padding-bottom: 30px !important;
  }

  .partnersC_wrap > .left img {
    max-width: 200px !important;
  }

  .partnersC_wrap > .right {
    width: 100% !important;
    padding: 0 20px 24px !important;
  }

  .partnersC_wrap > .right h2 {
    font-size: 20px !important;
  }

  .partnersC_wrap > .right p {
    font-size: 16px !important;
  }

  .partnersC_wrap > .right p br {
    display: none !important;
  }

  .partnersC_wrap > .right h3 {
    font-size: 50px !important;
    position: static !important;
    margin-bottom: 20px !important;
  }

  /* 호텔 섹션 */
  .part_hotel_container {
    margin-top: 80px !important;
  }

  .hotel_title {
    font-size: 28px !important;
    margin-bottom: 24px !important;
  }

  .best3_hotel {
    flex-wrap: wrap !important;
    gap: 30px !important;
  }

  .hotel_box {
    width: 48% !important;
  }

  .hotelImg {
    height: 220px !important;
    border-radius: 16px !important;
  }

  .hotelText {
    margin-top: 16px !important;
    padding: 0 12px !important;
  }

  .hotelText h2 {
    font-size: 20px !important;
  }

  .hotelText > p:first-of-type {
    font-size: 14px !important;
  }

  .hotelText > p:first-of-type br {
    display: none !important;
  }

  .infoH {
    margin-top: 24px !important;
  }

  .infoH > div {
    font-size: 12px !important;
  }

  /* 호텔 리스트 */
  .hotel_list_wrap {
    margin-top: 80px !important;
  }

  .hotelList thead th {
    height: 60px !important;
    font-size: 14px !important;
  }

  .hotelList tbody td {
    height: 45px !important;
    font-size: 13px !important;
  }

  /* 여가서비스 */
  .plusService_wrap {
    margin-top: 80px !important;
  }

  .plusService_wrap h1 {
    font-size: 28px !important;
  }

  .plusService_wrap > p {
    font-size: 16px !important;
    padding-bottom: 24px !important;
  }

  .service_wrap {
    flex-wrap: wrap !important;
  }

  .service_box {
    width: 48% !important;
    height: 300px !important;
    border-radius: 16px !important;
    padding: 24px !important;
  }

  .service_box h2 {
    bottom: 48px !important;
    font-size: 18px !important;
  }

  .service_box p {
    font-size: 14px !important;
    bottom: 24px !important;
  }
}

/* 모바일 (768px 이하) */
@media screen and (max-width: 768px) {
  #consolting {
    flex-direction: column !important;
    margin-top: 60px !important;
  }

  .con_left {
    width: 100% !important;
    height: auto !important;
    position: static !important;
    margin-bottom: 30px !important;
  }

  .con_category {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 15px !important;
    justify-content: center !important;
  }

  .con_category > li {
    margin: 0 !important;
    padding: 0 !important;
  }

  .con_category > li:not(:first-of-type) {
    padding-top: 0 !important;
  }

  .con_category > li a {
    font-size: 18px !important;
  }

  .con_right {
    width: 100% !important;
  }

  /* 신원리조트 파트너스 */
  .partnersC_wrap {
    flex-direction: column !important;
    height: auto !important;
    align-items: center !important;
    gap: 24px !important;
  }

  .partnersC_wrap > .left {
    width: 100% !important;
    height: auto !important;
    padding: 30px 16px !important;
    border-radius: 16px !important;
  }

  .partnersC_wrap > .left h1 {
    font-size: 24px !important;
    padding-bottom: 24px !important;
  }

  .partnersC_wrap > .left img {
    max-width: 150px !important;
  }

  .partnersC_wrap > .right {
    width: 100% !important;
    padding: 0 16px 20px !important;
  }

  .partnersC_wrap > .right h2 {
    font-size: 16px !important;
    line-height: 160% !important;
    padding-bottom: 12px !important;
  }

  .partnersC_wrap > .right p {
    font-size: 14px !important;
    line-height: 170% !important;
  }

  .partnersC_wrap > .right p br {
    display: none !important;
  }

  .partnersC_wrap > .right h3 {
    font-size: 36px !important;
    position: static !important;
    margin-bottom: 16px !important;
  }

  .partnersC_wrap > .right .right_txt {
    width: 100% !important;
  }

  /* 호텔 섹션 */
  .part_hotel_container {
    margin-top: 60px !important;
  }

  .hotel_title {
    font-size: 24px !important;
    margin-bottom: 20px !important;
  }

  .best3_hotel {
    flex-direction: column !important;
    gap: 30px !important;
  }

  .hotel_box {
    width: 100% !important;
  }

  .hotelImg {
    height: 200px !important;
    border-radius: 12px !important;
  }

  .hotelText {
    margin-top: 12px !important;
    padding: 0 8px !important;
  }

  .hotelText h2 {
    font-size: 18px !important;
    padding-bottom: 6px !important;
  }

  .hotelText > p:first-of-type {
    font-size: 13px !important;
    margin-bottom: 8px !important;
  }

  .hotelText > p:first-of-type br {
    display: none !important;
  }

  .hotelText > p:last-of-type {
    font-size: 12px !important;
  }

  .infoH {
    margin-top: 20px !important;
  }

  .infoH > div {
    font-size: 12px !important;
    flex-direction: column !important;
    gap: 4px !important;
  }

  .infoH > div > p.cate {
    width: 100% !important;
  }

  .infoH > div > p:not(.cate) {
    width: 100% !important;
  }

  .infoH > div:last-child {
    margin-top: 12px !important;
  }

  /* 호텔 리스트 */
  .hotel_list_wrap {
    margin-top: 60px !important;
    overflow-x: auto !important;
  }

  .hotel_list_wrap h4 {
    padding-left: 8px !important;
    padding-bottom: 12px !important;
    font-size: 14px !important;
  }

  .hotelList {
    min-width: 500px !important;
  }

  .hotelList thead th {
    height: 50px !important;
    font-size: 13px !important;
  }

  .hotelList tbody td {
    height: 40px !important;
    font-size: 12px !important;
  }

  /* 여가서비스 */
  .plusService_wrap {
    margin-top: 60px !important;
  }

  .plusService_wrap h1 {
    font-size: 24px !important;
  }

  .plusService_wrap > p {
    font-size: 14px !important;
    padding-top: 4px !important;
    padding-bottom: 20px !important;
  }

  .service_wrap {
    flex-direction: column !important;
    gap: 16px !important;
  }

  .service_box {
    width: 100% !important;
    height: 250px !important;
    border-radius: 12px !important;
    padding: 20px !important;
  }

  .service_box h2 {
    bottom: 44px !important;
    font-size: 16px !important;
  }

  .service_box p {
    font-size: 13px !important;
    bottom: 20px !important;
  }
}

/* 소형 모바일 (375px 이하) */
@media screen and (max-width: 375px) {
  #consolting {
    margin-top: 40px !important;
  }

  .con_left {
    margin-bottom: 20px !important;
  }

  .con_category {
    gap: 10px !important;
  }

  .con_category > li a {
    font-size: 16px !important;
  }

  /* 신원리조트 파트너스 */
  .partnersC_wrap {
    gap: 20px !important;
  }

  .partnersC_wrap > .left {
    padding: 24px 12px !important;
    border-radius: 12px !important;
  }

  .partnersC_wrap > .left h1 {
    font-size: 20px !important;
    padding-bottom: 20px !important;
  }

  .partnersC_wrap > .left img {
    max-width: 120px !important;
  }

  .partnersC_wrap > .right {
    padding: 0 12px 16px !important;
  }

  .partnersC_wrap > .right h2 {
    font-size: 14px !important;
    padding-bottom: 10px !important;
  }

  .partnersC_wrap > .right p {
    font-size: 13px !important;
    line-height: 160% !important;
  }

  .partnersC_wrap > .right h3 {
    font-size: 28px !important;
    margin-bottom: 12px !important;
  }

  /* 호텔 섹션 */
  .part_hotel_container {
    margin-top: 40px !important;
  }

  .hotel_title {
    font-size: 20px !important;
    margin-bottom: 16px !important;
  }

  .best3_hotel {
    gap: 24px !important;
  }

  .hotelImg {
    height: 180px !important;
    border-radius: 10px !important;
  }

  .hotelText {
    margin-top: 10px !important;
    padding: 0 6px !important;
  }

  .hotelText h2 {
    font-size: 16px !important;
  }

  .hotelText > p:first-of-type {
    font-size: 12px !important;
  }

  .hotelText > p:last-of-type {
    font-size: 11px !important;
  }

  .infoH {
    margin-top: 16px !important;
  }

  .infoH > div {
    font-size: 11px !important;
  }

  /* 호텔 리스트 */
  .hotel_list_wrap {
    margin-top: 40px !important;
  }

  .hotelList thead th {
    height: 45px !important;
    font-size: 12px !important;
  }

  .hotelList tbody td {
    height: 36px !important;
    font-size: 11px !important;
  }

  /* 여가서비스 */
  .plusService_wrap {
    margin-top: 40px !important;
  }

  .plusService_wrap h1 {
    font-size: 20px !important;
  }

  .plusService_wrap > p {
    font-size: 13px !important;
    padding-bottom: 16px !important;
  }

  .service_wrap {
    gap: 12px !important;
  }

  .service_box {
    height: 220px !important;
    border-radius: 10px !important;
    padding: 16px !important;
  }

  .service_box h2 {
    bottom: 36px !important;
    font-size: 15px !important;
  }

  .service_box p {
    font-size: 12px !important;
    bottom: 16px !important;
  }
}