.pc-only { display: block; }
.mo-only { display: none; }

.menu-type-img { overflow: hidden;}
.menu-type-img img {  width: 100%;  transition: transform 0.4s ease;}
.menu-type-img:hover img {  transform: scale(1.08); }

/* 슬라이드 배너 */
.banner-slide {  position: relative; width: 100%;  overflow: hidden;}
.banner-slide .banner-img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; z-index: 1;}
.banner-link { display: block; width: 100%; height: 100%; position: relative; text-decoration: none; color: inherit; }
/* 배너 텍스트 */
.banner-content { position: absolute; top: 15%; left: 50%; transform: translateX(-50%); width: calc(100% - 40px); max-width: 1200px; padding: 0 20px; margin: 0 auto; z-index: 10; text-align: left; color: #333;}
.banner-content .bcp-main { font-size: 2.4rem;  font-weight: 600;  margin-bottom: 10px;}
.banner-content .bcp-sub { font-size: 1.4rem;  font-weight: 400;}
.banner-content a { text-decoration: none;}
.banner-btn { display: inline-block;  background-color: #e7882c;  color: #fff;  padding: 10px 20px;  text-decoration: none;  border-radius: 40px;  transition: background-color 0.3s;}
.bcp-f{color: #fff;}

.swiper {width: 100%;  height: 800px; }
.swiper-slide { height: 100%; }
.swiper-pagination-bullet { width: 25px !important;  height: 4px !important;  border-radius: 10px !important; /* 네모로 만들기 */ background: rgba(256, 256, 256, 0.6) !important;  margin: 20px 4px !important;}
.swiper-pagination-bullet-active {  background: #fff !important;}
.swiper-button-prev,
.swiper-button-next { position: absolute !important;  top: 50% !important;  transform: translateY(-50%) !important;  color: #fff !important;  padding: 10px !important;  z-index: 10 !important;}
.swiper-button-prev { left: 40px !important;}
.swiper-button-next {  right: 40px !important;}

/* 메인 2개 배너 (식단정보,앱주문) */
.main-twinbanner{max-width: 1200px; margin: 0 auto; padding-top: 120px;}
.main-twinbanner-container {display: flex; gap: 20px;}
.m-twinbanner { flex: 1; display: flex; align-items:center;  justify-content: space-between; background-color: #abd267; color: white; padding: 20px 40px; border-radius:10px; }
.m-twinbanner:nth-child(2) {background-color: #faa52b;}
.m-twinbanner-text { display: flex; flex-direction: column; }
.m-twinbanner-text .small { font-size: 16px; }
.m-twinbanner-text .large { font-size: 26px; font-weight: bold; }
.m-twinbanner img { width:120px; height: 120px; object-fit: contain; }

.m-twinbanner .large{
  display:flex;
  align-items:center;
  gap:6px;
}

.m-twinbanner .arrow{
  font-size:26px;          /* 너무 크면 두꺼워 보이므로 약간 줄임 */
  font-weight:100;
  display:inline-block;
  transform:scaleY(1.4);   /* 세로로 길게 */
  margin-left:6px;
  transition:all 0.25s ease;
}

.m-twinbanner:hover .arrow{
  transform:translateX(5px);
  opacity:1;
}


/*   */
.one-stop {max-width: 1200px; margin: 0 auto; padding-top: 120px; text-align: center; }
.one-stop-title { margin-bottom: 80px; }
.icon-wrap { display: flex; justify-content: space-between;  flex-wrap: wrap; gap:40px;}
.icon-box { width: calc(100% / 6 - 40px); text-align: center; }
.icon-img { background: #f2f2f2; padding: 40px 10px; border-radius: 30px; display: flex;  justify-content: center;  align-items: center; }
.icon-img img { width: 80px; height: auto;}
.icon-box h4 { margin-top: 15px;  font-size: 18px;  font-weight: 600;}
.icon-box p { color: #333; padding:6px 0;}

/*   */
.menu-type { max-width: 1200px; margin: 0 auto; padding-top: 120px;}
.menu-type-title { margin-bottom: 80px; }
.menu-type-container { display: flex; justify-content: space-between;  gap: 40px; border-radius: 10px; text-align: center;}
.menu-type-item { flex-basis: calc((100% - 80px) / 4); /* gap을 제외한 정확한 3등분 */   border-radius: 10px;  }
.menu-type-item img {  width: 100%;  height: auto;  max-width: 100%;  object-fit: contain;  margin-bottom: 20px;  border-radius: 10px; }
.menu-type-item h4 { font-size: 26px; margin-bottom: 5px; color:#000; padding:0 10px; }
.menu-type-item p { font-size: 16px; color:#000; padding:0 10px; }
.m-subbanner-btn:hover{  background: #fff;  color: #000;}
 
/* 메인 1개 배너 (당일배송) */
.main-subbanner2 { max-width: 1200px; margin: 0 auto; padding-top: 120px;}
.m-subbanner2 {display: flex; flex-direction: column; justify-content: center; padding: 40px 50px; min-height: 160px; color: #333; border-radius: 10px; background: url('../img/Same-day-delivery_p.jpg') center / cover no-repeat;}
.main-subbanner2 .small { font-size: 16px; }
.main-subbanner2 .large { font-size: 26px; font-weight: bold; padding:5px 0;}


/* 3개 배너 포인트  */
.point { max-width: 1200px; margin: 0 auto; padding-top: 120px;}
.point-grid {  display: grid; grid-template-columns: 1.0fr 1.0fr; grid-template-rows: repeat(2, 300px);  gap: 20px;}
.point-item.big { grid-row: span 2; }
.point-item { position: relative;  border-radius: 10px;  background-size: cover;  background-position: center;  overflow: hidden;  }
.point-item h4 {text-align: left;  }
.point-item .text { position: absolute; top: 40px; left: 40px;  z-index: 2;}
.point-item .text p { padding-top:10px; font-size:16px;}
.point- item::before {  content: "";  position: absolute;  inset: 0;  background: rgba(0, 0, 0, 0.05); /* 어두운 정도 조절 */  z-index: 1;}

/* 메인 1개 배너 ( ) */
.main-subbanner{ max-width: 1200px;  margin: 0 auto 120px;  padding-top: 100px; }
.m-subbanner {position: relative; display: flex; align-items: center; justify-content: flex-start; color:#333; padding: 40px 50px; border-radius: 10px; background-image: url('../img/app_banner_p.jpg'); background-size: cover; background-position: center;	min-height: 220px;}
.m-subbanner-content{  position: relative;  z-index: 1;  display: flex;  flex-direction: column;  gap: 10px;}
.m-subbanner-text .small { font-size: 16px; max-width:400px;}
.m-subbanner-text .large {  font-size: 26px;  font-weight: bold; padding:5px 0;}
.m-subbanner-btn{  display: inline-block;  padding:5px; text-align: center; background:#333;  color: #fff;  border-radius: 30px;  font-size: 15px;  transition: 0.25s; width:160px; margin-top:10px;}


/* 고객사 슬라이드 배너 */
.client-logo {
  padding: 120px 0;
  text-align: center;
}

.client-title {
  margin-bottom: 80px;
}

.logo-slider {
  overflow: hidden;
  width: 100%;
  background: #fff;
}

.logo-track {
  display: flex;
  width: max-content;
}

.logo-track img {
  height: 30px;
  margin-right: 120px;
  flex-shrink: 0;
}

/* 위 줄 */
.track-1 {
  animation: scroll 140s linear infinite;
  margin-bottom: 60px;
}

/* 아래 줄 */
.track-2 {
  animation: scroll 160s linear infinite;
}

.logo-slider:hover .logo-track {
  animation-play-state: paused;
}

@keyframes scroll {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}

 /* */
.inquiry-box {  position: relative;  padding: 140px 20px;  text-align: center;  color: #fff;  overflow: hidden;}
.parallax-bg {  position: absolute;  top: 0;  left: 0;  width: 100%;  height: 200%;  background-image: url('../img/inquiry-box-bg.jpg');   background-size: cover;  background-position: center;  z-index: 1;}
.parallax-bg .overlay {  position: absolute;  top: 0;  left: 0;  width: 100%;  height: 200%;  background-color: rgba(0,0,0,0.4);  z-index: 2;}
.parallax-c {  position: relative;  z-index: 3;}
.inquiry-text {}
.it-txt { font-size: 34px;  font-weight: 600;  margin-bottom: 20px; }
.it-subtxt { font-size: 20px;  margin-bottom: 50px; }
.inquiry-buttons {  display: flex;  gap: 10px;  justify-content: center;  flex-wrap: wrap;  margin-top:20px;	}
.inquiry-buttons .btn { display: flex; align-items: center; justify-content: center; color: #fff; font-size: 18px; font-weight: bold; height: 60px; border-radius: 80px; border: 2px solid #fff; text-decoration: none; min-width:160px; }
.inquiry-buttons .btn:hover {  background-color: rgba(255,255,255,0.1);}

.gallery-swiper{ max-width: 1200px;	 margin-top:60px; height: auto; padding-bottom: 20px; /* ✅ 아래 여백 확보 (스크롤바 높이보다 약간 크게) */ position: relative;}
.gallery {  margin: 0 auto;  padding: 120px 20px 120px;  background-color: #f9f9f9;	}
.gallery-swiper .swiper-slide { position: relative; width: 100%; height: 100%; aspect-ratio: 4 / 3; /* 가로 4 : 세로 3 비율 */ overflow: hidden; border-radius: 8px; display: flex;  justify-content: center; align-items: center;}
.gallery-swiper img {  width: 100%;  height: 100%;  object-fit: cover;  display: block;}
.gallery-swiper .swiper-scrollbar {  position: static !important;   margin-top: 10px !important;  height: 5px !important;  background: #f0f0f0 !important;  border-radius: 3px !important;  width:100% !important;	}
.gallery-swiper .swiper-scrollbar-drag {  background: #e7882c !important;  border-radius: 3px !important;}
.image-item {  overflow: hidden;  border-radius: 10px;  height: 200px; 	  transition: transform 0.3s ease;}
.image-item img {  width: 100%;  height: 100%;  display: block;  object-fit: cover;   object-position: center;	  transition: transform 0.3s ease;}
.image-item:hover img {  transform: scale(1.03) translateY(-5px);}

@media (max-width: 1024px){
}

@media (max-width: 767px) {
.pc-only { display: none; }
.mo-only { display: block;}	
	
.logo-track img {margin-right: 80px;}	
.banner-slide { height: 50vh;  }
.banner-content { width: calc(100% - 24px); padding: 0 12px; top: 6%; transform: translateX(-50%); text-align: left; }
.banner-content .bcp-main {  font-size: 26px;  font-weight: 600;  margin-bottom: 10px;}
.banner-content .bcp-sub {  font-size: 16px;  font-weight: 400;}
.swiper {width: 100%;  height: 76vh;}

.main-twinbanner { padding:80px 20px 0px; }
.m-twinbanner {flex-direction: row; padding:10px 20px; }
.main-twinbanner-container { flex-direction: column;}
.m-twinbanner img {width: 90px; height: 90px;}
.m-twinbanner-text .small { font-size: 15px; padding-right:40px; }	
.m-twinbanner-text .large { font-size: 22px; }
	
.main-subbanner{ padding:80px 20px 0; }
.m-subbanner{display: flex; justify-content: flex-start; flex-direction:column;  align-items: flex-start;  background-image: url('../img/app_banner_m.jpg'); padding:20px; text-align: left; }
.m-subbanner-content {  width: 100%;  text-align: left; }	
.m-subbanner-btn { font-size: 13px; width:90px;  margin-left: 0;  }
.m-subbanner-text {padding-top:10px;}	
.m-subbanner-text .small { font-size: 15px; max-width:260px; }	
.m-subbanner-text .large { font-size: 22px; padding:0px;}	

.one-stop { padding:80px 20px 0px; }
.one-stop-title {  margin-bottom: 40px; }
.icon-wrap { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.icon-box { width: 100%;}
.icon-img { padding: 25px 10px; }
.icon-img img { width: 60px; }

.one-stop-title h2 { font-size: 22px; }
.icon-box h4 { font-size: 18px; }
.icon-box p { font-size: 15px; }	

.main-subbanner2 { padding:80px 20px 0; }
.m-subbanner2 {display: flex; justify-content: flex-start; align-items: baseline; flex-direction:column; background-image: url('../img/Same-day-delivery_m.jpg');  padding:20px 20px; min-height: 100px;}
.main-subbanner2 .small { font-size: 15px; }
.main-subbanner2 .large { font-size: 22px; font-weight: bold; padding:0 0;}
	
	
.menu-type {padding:80px 20px 0;}
.menu-type-container { flex-direction: column; gap: 20px; }
.menu-type-title {  margin-bottom: 40px; }	
.menu-type-item { flex-basis: 100%; padding: 20px 0px; }
.menu-type-item h4 {font-size:22px;}
.menu-type-item p {font-size:15px;}	

.point{padding:80px 20px 0;}	
.point-grid { grid-template-columns: 1fr; grid-template-rows: auto;}
.point-item.big { grid-row: auto;  height: 360px; font-size:24px;}
.point-item {  height: 250px;}
.point-item .text {top:20px; left:20px; }	
.point-item .text p { font-size:15px; }		
	
.client-logo { padding: 100px 0px; }
.gallery {   padding: 80px 20px 80px; }

.inquiry-buttons .btn {  color: #fff;  padding: 12px 30px;  text-decoration: none;  font-size: 18px;  font-weight: bold;  min-width: 120px;  border-radius: 80px;  border:2px solid #fff; min-width:160px;}	
.it-txt { font-size: 24px;  font-weight: 600;  margin-bottom: 20px; }
.it-subtxt { font-size: 15px;  margin-bottom: 50px; }

}



/* 왼쪽 버튼은 왼쪽 끝에서 */
.swiper-button-prev { display: none !important;}

/* 오른쪽 버튼은 오른쪽 끝에서 */
.swiper-button-next {  display: none !important;}