* {
  margin: 0;
  padding: 0;
  list-style: none;
  text-decoration: 0;
  color: black;
}

img {
  display: block;
}

/* main_visual */
.main_visual {
  overflow: hidden;
}

.main_visual .swiper-slide {
  width: 100%;
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.main_visual .main__visual__1 {
  background-color: #482913;
}

.main_visual .main__visual__2 {
  background-color: #902913;
  background: url(../img/main/m__visual__02.png);
  background-size: cover;
  background-repeat: no-repeat;
}

.main_visual .main__visual__3 {
  background-color: #C1631E;
  background: url(../img/main/m__visual__03.png);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}


.main_visual .main_l {
  background: url(../img/main/main_visual_left.png) no-repeat center;
  background-size: cover;
  width: 70px;
  height: 113px;
  top: 67%;
  left: 1%;
  position: absolute;
  z-index: 1;
  cursor: pointer;
}

.main_visual .main_r {
  background: url(../img/main/main_visual_right.png) no-repeat center;
  background-size: cover;
  width: 70px;
  height: 113px;
  top: 67%;
  right: 1%;
  position: absolute;
  z-index: 1;
  cursor: pointer;
}

.main_visual .swiper-pagination-bullet {
  width: 25.6px;
  height: 25.6px;
  display: inline-block;
  border-radius: 100%;
  background: #F6F3E6;
  /* opacity: .2; */
}

.swiper-container-horizontal>.swiper-pagination-bullets {
  bottom: -5%;
}

.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0px 6px;
}

.main_visual .flex_wrap {
  display: flex;
  gap: 6rem;
}

.main_visual .flex_wrap .left {
  padding-top: 14rem;
}

.main_visual .flex_wrap .left .mark {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.main_visual .flex_wrap .left p {
  font-family: 'KCC-Ganpan';
  font-size: 4.125rem;
  color: #F6F3E6;
  line-height: 1.2;
}

.main_visual .main__visual__2 .flex_wrap,
.main_visual .main__visual__3 .flex_wrap {
  gap: 0;
}

.main_visual .main__visual__2 .flex_wrap .left {
  transform: translate(100px, 30px);
}

.main_visual .main__visual__3 .flex_wrap .left {
  transform: translate(100px, 30px);
  z-index: 1;
}

.main_visual .main__visual__3 .flex_wrap .right {
  transform: translate(-100px, 0px);
}

/* m1 */
.m1 {
  background: url(../img/main/m1_bg.png) no-repeat center;
  background-size: cover;
  height: 100vh;
  background-position-y: -3px;
  display: flex;
  padding-inline: 6.25rem 12rem;
  gap: 6.25rem;
}

.m1 .left {
  align-self: flex-end;
  margin-bottom: 0.2rem;
  /* padding-top: 5.8rem; */
}

.m1 .right {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  align-self: center;
}

/* m2 */
.m2 {
  background: url(../img/main/m2_bg.png) no-repeat center;
  background-size: cover;
  height: 100vh;
}

.m2 .m2_content .content {
  display: none;
}

.m2 .m2_content .content:last-child .right img {
  padding-left: 2rem;
}

.m2 .m2_content .content .right img {
  padding-top: 2.5rem;
}

.m2 .m2_content .content.active {
  display: block;
  display: flex;
  gap: 3rem;
  justify-content: center;
  align-items: center;
  padding-top: 2rem;
  padding-bottom: 1rem;
}

.m2 .m2_btn {
  display: flex;
  gap: 2.5rem;
  justify-content: center;
  align-items: center;
  padding-bottom: 2rem;
}

.m2 .m2_btn .btn {
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: var(--kcc);
  font-size: 1rem;
  text-align: center;
  position: relative;
  z-index: 1;
  height: 103px;
  width: 91px;
  text-transform: uppercase;
  cursor: pointer;
}

.m2 .m2_btn .btn::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  background: url(../img/main/m2_btn.png) no-repeat center;
  background-size: cover;
  width: 91px;
  height: 90px;
  z-index: -1;
}

.m2 .m2_btn .btn.active {
  display: block;
  color: #231815;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  line-height: 1;
  position: relative;
  z-index: 1;
  height: 136px;
  width: 111px;
}

.m2 .m2_btn .btn.active::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  background: url(../img/main/m2_btn_active.png) no-repeat center;
  background-size: cover;
  width: 111px;
  height: 119px;
  z-index: -1;
}

/* m3 */
.m3 {
  background: url(../img/main/m3_bg.png) no-repeat center;
  background-size: cover;
  height: 100vh;
  padding-block: 20.5rem 4rem;
  overflow: hidden;
  position: relative;
}

.m3 .slide_box {
  width: 1575px;
  height: 882px;
  background-color: #fff;
  border: 3px solid #0444AA;
  border-radius: 2.5rem;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

.m3 .slide_box .flex_wrap {
  width: 1450px;
  height: 100%;
  margin: 0 auto;
  display: flex;
  align-items: center;
  gap: 2.5rem;
}

.m3 .slide_box .m3_txt h2 {
  font-family: var(--kcc);
  font-size: 2.75rem;
  line-height: 1.2;
  font-weight: 100;
  text-transform: uppercase;
}

.m3 .slide_box .m3_txt p {
  font-size: 1.25rem;
  color: #231815;
  font-family: var(--prevar);
  font-weight: 300;
  letter-spacing: -0.8px;
  margin-block: 4rem 3.5rem;
}

.m3 .slide_box .m3_img {
  width: 1062px;
}

.m3 .slide_box .m3_r {
  background: url(../img/main/m3_btn.png) no-repeat center;
  background-size: cover;
  width: 55px;
  height: 55px;
  bottom: 10%;
  right: 4%;
  position: absolute;
  z-index: 1;
  cursor: pointer;
}

.m3_txt {
  padding-top: 10rem;
}

.m3_txt .swiper-slide.swiper-slide {
  opacity: 0;
  visibility: hidden;
}

.m3_txt .swiper-slide.swiper-slide-active {
  opacity: 1;
  visibility: visible;
  transition: all 0.3s;
}

.m3 .person {
  position: absolute;
  top: 6.5rem;
  left: 33rem;
}

.m3 .bubble {
  position: absolute;
  top: 12rem;
  left: 9rem;
  z-index: 2;
}

.m3 .mark {
  position: absolute;
  top: 14rem;
  right: 15rem;
  z-index: 2;
}

/* sub1_1 */
.sub1_intro {
  background: url(../img/sub1/sub1_bg.jpg) no-repeat center;
  background-size: cover;
  position: relative;
  height: 90vh;
  padding-top: 8rem;
  display: flex;
  justify-content: center;
  overflow: hidden;
}

.sub1_intro .txt_box {
  position: relative;
  display: flex;
  flex-direction: column;
  position: relative;
  padding: 5rem 5rem;
}

.sub1_intro .txt_box::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 1105px;
  height: 720px;
  background: url(../img/sub1/sub1_bubble.png) no-repeat center;
  background-size: cover;
}

.sub1_intro .txt_box .txt_top {
  display: flex;
  z-index: 1;
}

.sub1_intro .txt_box .txt_top img {
  align-self: flex-start;
}

.sub1_intro .txt_box .txt_top img:nth-child(2) {
  margin-inline: 1rem 0.5rem;
}

.sub1_intro .txt_box .txt_top img:nth-child(3) {
  padding-top: 1rem;
}

.sub1_intro .txt_box .txt_bot {
  font-family: var(--kcc);
  font-size: 2.25rem;
  color: #231815;
  z-index: 1;
  line-height: 1.2;
}

.sub1_intro .txt_box .txt_bot span {
  color: #A40016;
}

.sub1_intro .point {
  position: absolute;
  top: -3rem;
  left: -4rem;
}

.sub1_intro .line {
  position: absolute;
  top: -1.3rem;
  right: -4rem;
}

.sub1_intro .spoon {
  position: absolute;
  bottom: 9rem;
  left: -4.5rem;
}

.sub1_intro .person {
  position: absolute;
  bottom: -1.3rem;
  right: 13rem;
}

.sub1_1 {
  background: url(../img/main/m3_bg.png) no-repeat center;
  background-size: cover;
  height: 100vh;
  padding-block: 20.5rem 4rem;
  overflow: hidden;
  position: relative;
}

.sub1_1 .slide_box {
  width: 1575px;
  height: 882px;
  background-color: #fff;
  border: 3px solid #0444AA;
  border-radius: 2.5rem;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

.sub1_1 .slide_box .flex_wrap {
  width: 1450px;
  height: 100%;
  margin: 0 auto;
  display: flex;
  align-items: center;
  gap: 2.5rem;
}

.sub1_1 .slide_box .sub1_txt h2 {
  font-family: var(--kcc);
  font-size: 2.75rem;
  line-height: 1.2;
  font-weight: 100;
  text-transform: uppercase;
}

.sub1_1 .slide_box .sub1_txt p {
  font-size: 1.25rem;
  color: #231815;
  font-family: var(--prevar);
  font-weight: 300;
  letter-spacing: -0.8px;
  margin-block: 4rem 3.5rem;
}

.sub1_1 .slide_box .sub1_img {
  width: 1062px;
}


.sub1_1 .slide_box .sub1_1_r {
  background: url(../img/main/m3_btn.png) no-repeat center;
  background-size: cover;
  width: 55px;
  height: 55px;
  bottom: 10%;
  right: 4%;
  position: absolute;
  z-index: 1;
  cursor: pointer;
}

.sub1_1 .sub1_txt {
  padding-top: 10rem;
}

.sub1_1 .sub1_txt .swiper-slide.swiper-slide {
  opacity: 0;
  visibility: hidden;
}

.sub1_1 .sub1_txt .swiper-slide.swiper-slide-active {
  opacity: 1;
  visibility: visible;
  transition: all 0.3s;
}

.sub1_1 .person {
  position: absolute;
  top: 6.5rem;
  left: 33rem;
}

.sub1_1 .bubble {
  position: absolute;
  top: 12rem;
  left: 9rem;
  z-index: 2;
}

.sub1_1 .mark {
  position: absolute;
  top: 14rem;
  right: 15rem;
  z-index: 2;
}




/* sub2 */
.sub2_1 {
  /* background: url(../img/sub2/sub2_bg01.png) no-repeat center; */
  background: url(../img/sub2/sub2_bg01_1.png) no-repeat top;
  background-size: 150%;
  background-position-y: -31rem;
  overflow: hidden;
}

.sub2_1 .sub2_top {
  padding-top: 5rem;
}

.sub2_1 .swiper-slide {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.sub2_1 .swiper-slide>img {
  height: 875px;
}

.sub2_1 .txt_wrap {
  display: flex;
  gap: 3rem;
  justify-content: center;
  margin-top: 5rem;
}

.sub2_1 .txt_wrap li {
  display: flex;
  gap: 1rem;
  font-family: var(--kcc);
  font-size: 2.25rem;
  align-items: flex-start;
  text-transform: uppercase;
  /* padding-top: 1rem; */
}

.sub2_2 {
  background: url(../img/sub2/sub2_bg02.png) no-repeat center;
  background-size: cover;
  overflow: hidden;
  margin-top: -2rem;
  padding-top: 7rem;
}

.sub2_2 .sub2_bot .swiper-slide {
  transform: scale(0.6);
  cursor: pointer;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.sub2_2 .sub2_bot .swiper-slide.swiper-slide-active {
  transform: scale(1);
}

.sub2_2 .sub2_bot .swiper-slide.swiper-slide-active p {
  background-color: #A40016;
  border-radius: 1rem;
  color: #fff;
  font-size: 1.625rem;
  padding: 0.2rem 2.1rem;
  text-transform: uppercase;
  margin-top: 1rem;
}

.sub2_2 .sub2_bot {
  position: relative;
}

.sub2_2 .sub2_bot p {
  font-family: var(--kcc);
  font-size: 2rem;
  text-align: center;
}

.sub2_2 .sub2_bot .sub2_r {
  background: url(../img/sub2/sub2_next.png) no-repeat center;
  background-size: cover;
  width: 60px;
  height: 115px;
  position: absolute;
  top: 30%;
  right: 32%;
  cursor: pointer;
  z-index: 99;
}

.sub2_2 .sub2_bot .sub2_l {
  background: url(../img/sub2/sub2_prev.png) no-repeat center;
  background-size: cover;
  width: 60px;
  height: 115px;
  position: absolute;
  top: 30%;
  left: 34%;
  cursor: pointer;
  z-index: 99;
}

.sub2_2 .img_wrap {
  width: 1355px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  margin-top: 6rem;
}

.sub2_2 .img_wrap2 {
  width: 1355px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  margin-top: 3rem;
}

.sub2_2 .img_wrap2 img {
  width: 100%
}

/* 2025 06 25 */
.container {
  position: relative;
  width: 1355px;
  margin: 0 auto;
}

.container .sub2_bottom {
  display: flex;
  justify-content: center;
  /* width: 100%; */
  border: 3px solid #191919;
  background: #f5f2e5;
  border-radius: 2rem;
  padding: 3rem;
}

.container .sub2_bottom li {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(100% / 3);
  text-align: center;
}

.container .sub2_bottom2 {
  display: flex;
  justify-content: center;
  gap: 2rem;
  position: relative;
}

.container .sub2_bottom2 li:first-child {
  position: absolute;
  bottom: -1rem;
  left: 3rem;
  z-index: 1;
}

.sub_text {
  font-family: var(--kcc);
  font-size: 3rem;
  text-align: center;
  margin: 5rem 0 3rem;
}

/* 
.container .sub2_bottom2 {
  display: flex;
  justify-content: center;
  padding: 3rem;
  margin-top: 3rem;
}

.container .sub2_bottom2 li {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(100% / 4);
  text-align: center;
}

.container .sub2_bottom2 li img {
  width: 60%
} */


.product__common {
  background: url(../img/sub2/product_bg_1.png) no-repeat center;
  background-size: cover;
  position: relative;
  padding-top: 3rem;
  padding-bottom: 5rem;
}



/* .product {}

.product::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 42%;
  content: '';
  background: url(../img/sub2/product_bg_22.png) no-repeat center;
  background-size: cover;
} */


/* sub3_1 */
.sub3_1 {
  background: url(../img/sub3/sub3_bg_2.png) no-repeat center;
  background-size: 155%;
  position: relative;
  height: 100vh;
  padding-top: 8rem;
  display: flex;
  justify-content: center;
}

.sub3_1 .txt_box {
  position: relative;
  border-radius: 2.5rem;
  border: 3px solid #510011;
  padding-inline: 5.5em 4.5rem;
  padding-top: 2rem;
  background-color: #F7F7F7;
  height: 700px;
}

.sub3_1 .txt_box .txt_top {
  display: flex;
  justify-content: space-between;
}

.sub3_1 .txt_box .tab_content {
  margin-top: 1rem;
}

.sub3_1 .txt_box .tab_content p {
  font-family: var(--kcc);
  font-size: 2.25rem;
  color: #191919;
}

.sub3_1 .tab_content p {
  display: none;
}

.sub3_1 .tab_content p.active {
  display: block;
}

.sub3_1 .top_r div {
  display: none;
}

.sub3_1 .top_r div.active {
  display: block;
}

.sub3_1 .tab_list {
  display: flex;
  gap: 0.5rem;
}

.sub3_1 .tab_list li {
  position: relative;
  height: 100%;
}

/* .sub3_1 .tab_list li .active_txt {
    visibility: hidden;
    opacity: 0;
} */
.sub3_1 .tab_list li:last-child:hover .active_txt {
  visibility: visible;
  opacity: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all 0.5s;
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.5);
  color: #fff;
  width: 100%;
  height: 100%;
  font-family: var(--kcc);
  font-size: 2.25rem;
}


.sub3_1 .tab_list li .active_txt {
  visibility: visible;
  opacity: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all 0.5s;
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.5);
  color: #fff;
  width: 100%;
  height: 100%;
  font-family: var(--kcc);
  font-size: 2.25rem;
  text-decoration: none;
}

.sub3_1 .tab_list li.active .active_txt {
  visibility: hidden;
  opacity: 0;
}

.sub3_1 .tab_list iframe {
  border: 1px solid #191919;
  display: block;
  pointer-events: none;
}

.sub3_1 .tab_list li.active iframe {
  pointer-events: auto;
}

.sub3_1 .line {
  position: absolute;
  top: -1.3rem;
  right: -2.5rem;
}

.sub3_1 .spoon {
  position: absolute;
  bottom: -1rem;
  left: -7.5rem;
}

.sub3_1 .point {
  position: absolute;
  top: -3rem;
  left: -4rem;
}

/* 2025 06 10 */
.sub3_2wrap {
  position: relative;
  width: 60%;
  margin: 0 auto;
  margin-top: 3rem;
}

.sub3_2 {
  background: url(../img/sub3/sub3_bg_2.png) no-repeat center 43%;
  background-size: auto;
  /* background-size: 155%; */
  position: relative;
  height: 100vh;
  padding-top: 2rem;
}

.sub3_2 h2 {
  font-family: var(--kcc);
  font-size: 3.25rem;
  color: #191919;
  text-align: center;
  /* margin-bottom: -10rem; */
}

.sub3_2 .txt_box {
  position: relative;
  width: 100%;
  margin: 0 auto;
  border-radius: 2.5rem;
  /* border: 3px solid #510011; */
  /* padding-inline: 5.5em 4.5rem; */
  /* padding: 3rem 5rem; */
  /* padding-top: 3rem; */
  /* background-color: #F7F7F7; */
  /* height: 470px; */
  overflow: hidden;
  /* margin-top: -3rem */
}

.sub3_2 .point {
  position: absolute;
  top: -50px;
  left: 30px;
}

.sub3_2 .line {
  position: absolute;
  top: -30px;
  right: 50px;
}

.sub3_2 .spoon {
  position: absolute;
  bottom: -40px;
  left: -50px
}

.sub3_2 .txt_box .swiper-slide {}

.sub3_2 .txt_box .swiper-slide img {
  width: 80%;
  margin: 0 auto;
  padding: 2rem;
  background: #f7f7f7;
  border-radius: 2.5rem;
  border: 3px solid #510011
}

.sub3_2 .txt_box .bottom_r {
  position: absolute;
  bottom: 0;
  right: 53px;
  z-index: 1;
}

.sub3_2 .txt_box .bottom_r img {
  width: 80%
}

.sub3_bottom {
  align-items: center;
}

.sub3_2 .sub3_bottom .sub3_r {
  background: url(../img/sub2/sub2_next.png) no-repeat center;
  background-size: cover;
  width: 60px;
  height: 115px;
  position: absolute;
  top: 30%;
  right: -16px;
  cursor: pointer;
  z-index: 99;
}

.sub3_2 .sub3_bottom .sub3_l {
  background: url(../img/sub2/sub2_prev.png) no-repeat center;
  background-size: cover;
  width: 60px;
  height: 115px;
  position: absolute;
  top: 30%;
  left: 0;
  cursor: pointer;
  z-index: 99;
}






/* sub4 */
.sub4 {
  background: url(../img/sub4/sub4_bg_2.png) no-repeat center;
  background-size: cover;
  position: relative;
  height: 100vh;
  padding-top: 8rem;
  display: flex;
  justify-content: center;
  /* padding-bottom: 3rem; */
  background-size: 155%;
  /* background-position-y: 3rem; */
}

.sub4 .txt_box {
  position: relative;
  border-radius: 2.5rem;
  border: 3px solid #0444AA;
  padding-inline: 3.7rem;
  padding-block: 3.5rem 4.5rem;
  background-color: #F7F7F7;
  display: flex;
  align-self: flex-start;
  gap: 2rem;
}

.sub4 .txt_box .right {
  align-self: flex-end;
  margin-bottom: 2rem;
}

.sub4 .txt_box .right li {
  display: flex;
  gap: 1.3rem;
  align-items: center;
  font-family: var(--kcc);
  font-size: 2rem;
  margin-bottom: 2rem;
}

.sub4 .bubble {
  position: absolute;
  top: -4rem;
  right: -6.5rem;
}

.sub4 footer {
  padding-top: 10rem;
}

/* 상세페이지 */
.product .flex_box {
  max-width: 1600px;
  margin: 0 auto;
  display: flex;
  padding-top: 2vw;
  padding-bottom: 10vh;
}

.product .flex_box .right {
  padding-top: 4vw;
}

.product .flex_box .right div:first-of-type {
  margin-bottom: 10vw;
}

.product .flex_box .right div:last-of-type {
  padding-left: 4.5vw;
}

.product {
  background: url(../img/sub2/product_bg_1.png) no-repeat center;
  background-size: cover;
  position: relative;
}

.product::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 42%;
  content: '';
  background: url(../img/sub2/product_bg_22.png) no-repeat center;
  background-size: cover;
}

.product .flex_box .left,
.product .flex_box .right {
  z-index: 99;
}

.sub2_top .swiper-slide a,
.sub2_bot .swiper-slide a {
  width: fit-content;
}

.sub2_top .swiper-slide a img,
.sub2_bot .swiper-slide a img {
  margin: 0 auto;
}


.review,
.c_inner_box {
  background: url(../img/main/g5_bg.png) no-repeat center;
  background-size: cover;
}


/* 반응형 */
@media screen and (max-width: 1281px) {

  .container .sub2_bottom2 {
    gap: 1.75rem;
    text-align: center;
  }

  .sub_text {
    font-family: var(--kcc);
    font-size: 2.5rem;
    text-align: center;
    margin: 5rem 0 3rem;
  }

  .main_visual .swiper-slide {
    height: 90vh;
  }

  .main_visual .flex_wrap {
    gap: 0rem;
  }

  .main_visual .flex_wrap .left p {
    font-size: 3rem;
  }

  .main_visual .main_l {
    top: 54%;
  }

  .main_visual .main_r {
    top: 54%;
  }

  .main_visual .flex_wrap .left {
    padding-top: 4rem;
    padding-left: 8rem;
    flex-basis: 26%;
  }

  .main_visual .flex_wrap .right img {
    width: 80%;
    margin: 0 auto;
  }

  .swiper-container-horizontal>.swiper-pagination-bullets {
    bottom: -4%;
  }

  .main_visual .swiper-pagination-bullet {
    width: 20px;
    height: 20px;
  }

  /* m1 */
  .m1 {
    flex-direction: column-reverse;
    gap: 5rem;
    height: 100%;
    padding-top: 5rem;
  }

  .m1 .left {
    align-self: center;
  }

  .m1 .left img {
    width: 70%;
    margin: 0 auto;
  }

  .m1 .right {
    flex-direction: row;
    width: 100%;
  }

  /* m2 */
  .m2 .m2_content .content img {
    width: 500px;
    margin: 0 auto;
  }

  .m2 .m2_content .content.active {
    gap: 4rem;
    padding-bottom: 4rem;
  }

  /* m3 */
  .m3 .slide_box {
    width: 1140px;
    /* width: 1470px; */
    height: fit-content;
  }

  .m3 .slide_box .m3_img {
    width: 48%;
  }

  .m3 .slide_box .m3_img img {
    width: 655px;
    height: 500px;
    object-fit: cover;
  }

  .m3 .slide_box .flex_wrap {
    width: 1360px;
    padding: 5rem 3rem;
  }

  .m3 .slide_box .m3_txt p {
    margin-block: 2rem 3.5rem;
  }

  .m3 .bubble {
    left: 2rem;
  }

  .m3 .person {
    left: 27rem;
  }

  .m3 .mark {
    top: 15rem;
    right: 4rem;
  }

  .m3 .mark img {
    width: 130px;
  }

  .m3_txt {
    padding-top: 0;
  }

  .m3 {
    padding-block: 20.5rem 0rem;
  }



  /* sub1_1 */
  .sub1_intro .txt_box .txt_top img:first-child {
    width: 360px;
  }

  .sub1_intro .txt_box .txt_top img:nth-child(2) {
    width: 64px;
  }

  .sub1_intro .txt_box .txt_top img:nth-child(3) {
    width: 64px;
    padding-top: 0.5rem;
  }

  .sub1_intro .txt_box .txt_bot {
    font-size: 2rem;
  }

  .sub1_intro .txt_box::before {
    width: 959px;
    height: 625px;
  }

  .sub1_intro .person img {
    width: 220px;
  }

  .sub1_intro .person {
    position: absolute;
    bottom: -1.3rem;
    right: 12rem;
  }

  .sub1_intro .spoon {
    bottom: 7rem;
    left: -6.5rem;
  }

  .sub1_1 .slide_box {
    width: 1140px;
    height: fit-content;
  }

  .sub1_1 .slide_box .sub1_img {
    width: 48%;
  }

  .sub1_1 .slide_box .sub1_img img {
    width: 655px;
    height: 500px;
    object-fit: cover;
  }

  .sub1_1 .slide_box .flex_wrap {
    width: 1360px;
    padding: 5rem 3rem;
  }

  .sub1_1 .slide_box .sub1_txt p {
    margin-block: 2rem 3.5rem;
  }

  .sub1_1 .bubble {
    left: 2rem;
  }

  .sub1_1 .person {
    left: 27rem;
  }

  .sub1_1 .mark {
    top: 15rem;
    right: 4rem;
  }

  .sub1_1 .mark img {
    width: 130px;
  }

  .sub1_1 .sub1_txt {
    padding-top: 0;
  }

  .sub1_1 {
    padding-block: 20.5rem 0rem;
  }


  /* sub2 */
  .sub2_1 .swiper-slide>img {
    height: 695px;
  }

  .sub2_1 .txt_wrap li {
    font-size: 1.5rem;
    align-items: center;
  }

  .sub2_1 .txt_wrap li img {
    width: 45px;
  }

  .sub2_1 .txt_wrap {
    margin-top: 1rem;
    gap: 2rem;
  }

  .sub2_1 {
    background-size: 175%;
  }

  .sub2_2 .sub2_bot img {
    width: 270px;
  }

  .sub2_2 .sub2_bot {
    padding-top: 3rem;
  }

  .sub2_2 .sub2_bot .sub2_r {
    top: 30%;
    right: 33%;
  }

  .sub2_2 .img_wrap {
    width: 1215px;
  }

  .sub2_2 .img_wrap img {
    width: 30%;
    object-fit: contain;
  }

  .sub2_top .swiper-slide a img {
    max-width: 72%;
  }


  /* sub3 */
  .sub3_1 {
    height: 100%;
  }

  .sub3_2 {
    height: 100%;
    padding-inline: 20px
  }

  .sub3_2 .sub3_2wrap {
    width: 100%
  }

  .sub3_2 .txt_box {
    width: 100%;
    height: fit-content;
    padding: 0
  }

  .sub3_1 .txt_box .txt_top .top_l img {
    width: 390px;
  }

  .sub3_1 .txt_box {
    padding-top: 3rem;
    height: fit-content;
    padding-bottom: 3rem;
  }

  .sub3_1 .tab_list li .active_txt {
    font-size: 2rem;
  }

  .sub3_1 .tab_list li iframe {
    width: 450px;
    height: 300px;
  }

  .sub3_1 .tab_list li img {
    width: 450px;
    height: 300px;
  }

  .sub3_1 .txt_box .txt_top .top_r img {
    width: 100px;
  }

  .sub3_2 .txt_box .bottom_r img {
    width: 100px
  }

  .sub3_1 .spoon {
    display: none;
  }

  /* sub4 */
  .sub4 {
    height: 100%;
  }

  .sub4 .txt_box .left img:first-child {
    width: 200px;
  }

  .sub4 .txt_box .left img:last-child {
    width: 200px;
  }

  .sub4 .txt_box .right li {
    margin-bottom: 1.5rem;
  }

  .sub4 .txt_box .right {
    margin-bottom: 0;
  }

  .sub4 .bubble img {
    width: 250px;
  }

  .sub4 .bubble {
    right: -3.5rem;
  }

  .product .flex_box .left img {
    max-width: 86%;
    margin: 0 auto;
  }

  .product .flex_box .right div:first-of-type img {
    max-width: 80%;
  }

  .product .flex_box .right div:last-of-type img {
    max-width: 90%;
  }

  /* .product .flex_box .right {
        padding-top: 7vw;
    } */

  .container {
    position: relative;
    width: 100%;
    margin: 0 auto;
  }

  .container .sub2_bottom {
    display: flex;
    justify-content: center;
    /* width: 100%; */
    border: 3px solid #191919;
    background: #f5f2e5;
    border-radius: 2rem;
    padding: 3rem;
  }

  .container .sub2_bottom li {
    display: flex;
    justify-content: center;
    align-items: center;
    width: calc(100% / 3);
    text-align: center;
  }

  .container .sub2_bottom2 li:first-child {
    position: static;
  }

  .container .sub2_bottom2 li img {
    width: 100%;
  }

}

@media screen and (max-width: 1200px) {
  .main_visual .flex_wrap .left p {
    font-size: 2.5rem;
  }

  .main_visual .flex_wrap .right img {
    width: 80%;
    margin: 0 auto;
  }

  .main_visual .flex_wrap .left {

    padding-top: 5rem;
  }

  .main_visual .flex_wrap {
    gap: 3rem;
  }

  .swiper-container-horizontal>.swiper-pagination-bullets {
    bottom: 3%;
  }


  .m1 .right img {
    width: 100%;
  }

  .m1 .left img {
    width: 95%;
  }

  .m2 {
    height: 100%;
  }

  .m2 .m2_content .content img {
    width: 80%;
  }

  .sub1_intro {
    height: 100%;
    padding-bottom: 14rem;
  }

  .sub1_1 {
    height: 100%;
  }

  .sub3_1 {
    height: 100%;
  }

  .sub3_1 .txt_box {
    padding-bottom: 3rem;
  }
}

@media screen and (max-width: 885px) {
  .main_visual .flex_wrap {
    gap: 3rem;
    flex-direction: column;
    align-items: flex-start;
    padding: 5rem 0;
  }

  .main_visual .flex_wrap .left {
    padding-top: 0;
    padding-left: 2rem;
  }

  .main_visual .flex_wrap .right img {
    width: 60%;
  }

  .main_visual .main_l {
    display: none;
  }

  .main_visual .main_r {
    display: none;

    /* top: 60%;
        right: 2%;
        width: 60px;
        height: 65px; */
  }

  .main_visual .swiper-slide {
    height: 100%;
  }

  .swiper-container-horizontal>.swiper-pagination-bullets {
    bottom: -5%;
  }

  /* m1 */
  .m1 {
    height: 100%;
    flex-direction: column-reverse;
    padding-inline: 2rem;
    gap: 4rem;
    padding-top: 4rem;
  }

  .main_visual .flex_wrap .left p {
    font-size: 3rem;
  }

  .main_visual .flex_wrap .left .mark img {
    width: 80%;
  }

  .m1 .right img {
    width: 100%;
  }

  .m1 .right {
    flex-direction: row;
    flex-wrap: wrap;
    width: 100%;
    gap: 1rem;
    justify-content: center;
  }


  /* m2 */
  .m2 {
    padding-inline: 2rem;
  }

  .m2 .m2_content .content:last-child .right img {
    padding-left: 0;
  }

  .m2 .m2_content .content .right img {
    padding-top: 1rem;
  }

  .m2 .m2_content .content.active {
    gap: 0rem;

  }

  .m2 .m2_btn {
    padding-bottom: 0;
  }

  .m2 .m2_btn .btn.active {
    height: 119px;
    width: 89px;
  }

  .m2 .m2_btn .btn.active::before {
    width: 91px;
    height: 97px;
  }

  /* m3 */
  .m3 {
    padding-block: 14rem 4rem;
    padding-inline: 2rem;
    height: 100%;
  }

  .m3 .slide_box {
    width: 700px;
    height: fit-content;
    padding-block: 2rem 8rem;
  }

  .m3 .slide_box .flex_wrap {
    width: 100%;
    padding: 0;
    flex-direction: column;
    align-items: initial;
  }

  .m3 .slide_box .m3_img img {
    width: 90%;
    height: initial;
    margin: 0 auto;
  }

  .m3 .slide_box .m3_img {
    width: 100%;
  }

  .m3_txt {
    padding-top: 0;
    padding-inline: 2rem;
  }

  .m3 .slide_box .m3_txt p {
    margin-block: 1rem 0rem;
    max-width: 90%;
    letter-spacing: initial;
  }

  .m3 .slide_box .m3_txt p br {
    display: none;
  }

  .m3 .slide_box .m3_txt h2 br {
    display: none;
  }

  .m3 .bubble {
    top: 9rem;
    left: 2rem;
  }

  .m3 .bubble img {
    width: 57%;
  }

  .m3 .person {
    top: 3.5rem;
    left: 31rem;
  }

  .m3 .person img {
    width: 80%;
  }

  .m3 .mark {
    display: none;
  }

  .m3 .slide_box .m3_r {
    bottom: 5%;
  }

  .m3 .slide_box .m3_txt h2 {
    font-size: 2rem;
  }

  /* sub1_1 */
  .sub1_intro {
    padding-bottom: 8rem;
    padding-inline: 2rem;
    padding-top: 3rem;
  }

  .sub1_intro .txt_box::before {
    width: 700px;
    height: 447px;
    background-size: contain;
  }

  .sub1_intro .txt_box {
    padding: 3rem;
    width: 100%;
    height: 100%;
  }

  .sub1_intro .txt_box .txt_top {
    align-items: center;
  }

  .sub1_intro .txt_box .txt_top img {
    align-self: initial;
  }

  .sub1_intro .txt_box .txt_top img:first-child {
    width: 40%;
  }

  .sub1_intro .txt_box .txt_top img:nth-child(2),
  .sub1_intro .txt_box .txt_top img:nth-child(3) {
    width: 10%;
  }

  .sub1_intro .txt_box .txt_top img:nth-child(3) {
    padding-top: 0;
  }

  .sub1_intro .txt_box .txt_bot {
    font-size: 1.5rem;
    line-height: 1.3;
  }

  .sub1_intro .person {
    right: -7rem;
  }

  .sub1_intro .person img {
    width: 45%;
  }

  .sub1_intro .point,
  .sub1_intro .line,
  .sub1_intro .spoon {
    display: none;
  }

  .sub1_1 {
    padding-block: 14rem 4rem;
    padding-inline: 2rem;
    height: 100%;
  }

  .sub1_1 .slide_box {
    width: 700px;
    height: fit-content;
    padding-block: 2rem 8rem;
  }

  .sub1_1 .slide_box .flex_wrap {
    width: 100%;
    padding: 0;
    flex-direction: column;
    align-items: initial;
  }

  .sub1_1 .slide_box .sub1_img img {
    width: 90%;
    height: initial;
    margin: 0 auto;
  }

  .sub1_1 .slide_box .sub1_img {
    width: 100%;
  }

  .sub1_1 .sub1_txt {
    padding-top: 0;
    padding-inline: 2rem;
  }

  .sub1_1 .slide_box .sub1_txt p {
    margin-block: 1rem 0rem;
    max-width: 90%;
  }

  .sub1_1 .slide_box .sub1_txt p br {
    display: none;
  }

  .sub1_1 .slide_box .sub1_txt h2 br {
    display: none;
  }

  .sub1_1 .bubble {
    top: 9rem;
    left: 2rem;
  }

  .sub1_1 .bubble img {
    width: 57%;
  }

  .sub1_1 .person {
    top: 3.5rem;
    left: 31rem;
  }

  .sub1_1 .person img {
    width: 80%;
  }

  .sub1_1 .mark {
    display: none;
  }

  .sub1_1 .slide_box .sub1_1_r {
    bottom: 5%;
  }

  .sub1_1 .slide_box .sub1_txt h2 {
    font-size: 2rem;
  }


  /* sub2_1 */
  .sub2_1 {
    background-size: 245%;
    background-position-y: -20rem;
  }

  .sub2_1 .swiper-slide>img {
    width: 80%;
    height: 100%;
  }

  .sub2_1 .txt_wrap {
    gap: 1rem;
    justify-content: center;
    flex-direction: column;
    padding-inline: 2rem;
  }

  .sub2_1 .txt_wrap li img {
    width: 30px;
  }

  .sub2_1 .txt_wrap li {
    font-size: 1.375rem;
  }

  .sub2_2 .sub2_bot img {
    width: 25%;
  }

  .sub2_2 .sub2_bot .sub2_r {
    width: 45px;
    height: 50px;
    top: 35%;
    right: 30%;
  }

  .sub2_2 .sub2_bot .sub2_l {
    width: 45px;
    height: 50px;
    top: 35%;
    left: 30%;
  }

  .sub2_2 .sub2_bot .swiper-slide.swiper-slide-active p {
    font-size: 1.25rem;
  }

  .sub2_2 .img_wrap {
    justify-content: center;
    margin-top: 6rem;
    flex-wrap: wrap;
    width: 100%;
    gap: 1rem;
  }

  .sub2_2 .img_wrap img {
    width: 45%;
  }

  .sub2_top .swiper-slide a img {
    max-width: 90%;
  }

  .sub2_1 .txt_wrap {
    margin-top: 3rem;
  }


  /* 2025 06 25 */
  .container {
    width: calc(100% - 2rem);
    padding: 0 1rem;
    display: block
  }

  .container .sub_bottom {
    width: 100%;

  }

  .sub2_2 .sub_bottom li {
    width: calc(100% / 3);
  }

  .sub2_2 .img_wrap2 {
    width: 100%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    margin-top: 3rem;
  }

  .container .sub2_bottom {
    flex-direction: column;
    justify-content: center;
    gap: 1rem;
    margin-top: 0;
  }

  .container .sub2_bottom li {
    width: 100%;
    justify-content: flex-start;
  }

  .container .sub2_bottom li img {
    width: 100%
  }





  .sub2_2 .img_wrap2 img {
    width: 100%
  }

  .sub2_2 {
    margin-top: -3rem;
    padding-top: 3rem;
  }

  .sub3_1 {
    background-size: cover;
    padding-top: 4rem;
  }

  .sub3_1 .tab_list {
    gap: 2rem;
    flex-direction: column;
  }

  .sub3_1 .txt_box {
    /* padding-inline: 3rem; */
  }

  .sub3_1 .tab_list li iframe {
    width: 470px;
    height: 330px;
  }

  /* .sub3_1 .tab_list li.active iframe {
        width: 470px;
        height: 330px;
    } */
  .sub3_1 .tab_list li img {
    width: 100%;
    object-fit: cover;
    height: 330px;
  }

  .sub3_1 .txt_box .txt_top .top_l img {
    width: 300px;
  }

  .sub3_2 h2 {
    font-size: 2.25rem
  }

  .sub3_1 .txt_box .txt_top .top_r img {
    width: 65%;
  }

  .sub3_2 .txt_box .bottom_r img {
    width: 65%
  }

  .sub3_1 .txt_box .tab_content p {
    font-size: 2rem;
  }

  .sub3_1 .tab_list li .active_txt {
    font-size: 1.75rem;
  }

  .sub3_1 .tab_list li:last-child:hover .active_txt {
    font-size: 1.75rem;
  }

  .sub3_1 .point,
  .sub3_1 .line,
  .sub3_1 .spoon {
    display: none;
  }

  .sub3_2 .point,
  .sub3_2 .line,
  .sub3_2 .spoon {
    display: none;
  }

  /* sub4 */
  .sub4 {
    height: 100%;
    background-size: cover;
    padding-top: 4rem;
  }

  .sub4 .txt_box .right li {
    font-size: 1.375rem;
  }

  .sub4 .txt_box .right li img {
    width: 8%;
  }

  .sub4 .txt_box {
    padding-inline: 6rem;
    gap: 2rem;
    flex-direction: column;
  }

  .sub4 .txt_box .left {
    align-self: center;
  }

  .sub4 .txt_box .left img:first-child {
    width: 140px;
  }

  .sub4 .txt_box .left img:last-child {
    width: 140px;
    margin-left: 1rem;
  }

  .sub4 .txt_box .right li {
    gap: 0.5rem;
    margin-bottom: 0;
  }

  .sub4 .txt_box .right li:nth-child(2) {
    margin-block: 1rem;
  }

  .sub4 .bubble img {
    width: 180px;
  }

  .sub4 .bubble {
    position: absolute;
    top: -2rem;
    right: -0.5rem;
  }

  .product .flex_box {
    flex-direction: column;
    padding-top: 6vw;
  }

  .product .flex_box .left img {
    max-width: 39%;
  }

  .product .flex_box .right {
    padding-top: 6vw;
    position: relative;
  }

  .product .flex_box .right::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 33%;
    background-color: #482913;
    content: '';
  }

  .product .flex_box .right div:first-of-type img {
    max-width: 70%;
    margin: 0 auto;
    z-index: 2;
    position: relative;
  }

  .product .flex_box .right div:first-of-type {
    margin-bottom: 15vw;
    padding-inline: 5vw;
  }

  .product .flex_box .right div:last-of-type img {
    z-index: 2;
    position: relative;
  }

  .container .sub2_bottom2 {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    position: relative;
    padding-bottom: 2rem;
  }

  .container .sub2_bottom2 li {
    width: 50%;
  }

  .container .sub_text {
    font-size: 1.25rem;
  }

}

@media screen and (max-width: 450px) {
  .main_visual .flex_wrap .left p {
    font-size: 1.5rem;
  }

  .main_visual .flex_wrap .right img {
    width: 70%;
  }

  .main_visual .flex_wrap {
    gap: 0;
    padding: 2rem 0;
  }

  .main_visual .flex_wrap .left {
    padding-left: 20px
  }

  .main_visual .main_l,
  .main_visual .main_r {
    display: none;
  }

  .main_visual .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
  }

  .main_visual .flex_wrap .left .mark img {
    width: 40px;
  }

  .swiper-container-horizontal>.swiper-pagination-bullets {
    bottom: 27%;
  }

  .main_visual .main__visual__2 .flex_wrap .left {
    transform: translate(0, 0);
  }

  .main_visual .main__visual__3 .flex_wrap .left {
    transform: translate(0, 0);
    z-index: 1;
  }

  .main_visual .main__visual__3 .flex_wrap .right {
    transform: translate(0, 0);
  }

  /* m1 */
  .m1 {
    gap: 3rem;
    padding-inline: 20px;
  }

  .m1 .left img {
    width: 100%;
  }

  /* m2 */
  .m2 {
    background-image: none;
    background-color: #F6F3E6;
    padding-inline: 20px;
  }

  .m2 .m2_content .content.active {
    gap: 1rem;
    padding-bottom: 1rem;
  }

  .m2 .m2_content .content img {
    width: 100%;
  }

  .m2 .m2_btn .btn {
    font-size: 0.875rem;
    border-radius: 2rem;
  }

  .m2 .m2_btn {
    padding-bottom: 2rem;
    gap: 1rem;
  }

  .m2 .m2_btn .btn.active::before {
    /* width: 91px;
        height: 97px; */
    display: none;
  }

  .m2 .m2_btn .btn::before {
    /* width: 91px;
        height: 97px; */
    display: none;
  }

  .m2 .m2_btn .btn br {
    display: none;
  }

  .m2 .m2_btn .btn {
    color: #231815;
    border: 1px solid #231815;
    height: initial;
    width: initial;
    background-color: transparent;
  }

  .m2 .m2_btn .btn.active {
    color: #fff;
    background-color: #231815;
  }

  .m2 .m2_btn .btn.active {
    height: initial;
    width: initial;
    line-height: initial;
  }

  .m2 .m2_btn .btn:first-child {
    width: 130px;
    height: 35px;
  }

  .m2 .m2_btn .btn:last-child {
    height: 35px;
    width: 80px;
  }

  /* m3 */
  .m3 {
    padding-block: 5rem 4rem;
    padding-inline-start: 20px;
  }

  .m3 .slide_box {
    width: 380px;
    padding-block: 2rem 8rem;
  }

  .m3 .bubble {
    top: 2rem;
    left: 1rem;
  }

  .m3 .bubble img {
    width: 45%;
  }

  .m3 .slide_box .m3_txt h2 {
    font-size: 1.25rem;
  }

  .m3 .slide_box .m3_txt p {
    margin-block: 0.5rem 0rem;
    font-size: 1rem;
  }

  .m3 .slide_box .flex_wrap {
    gap: 2rem;
  }

  .m3 .slide_box .m3_r {
    width: 40px;
    height: 40px;
    bottom: 5%;
    right: 10%;
  }

  .m3 .slide_box {
    padding-block: 2rem 6rem;
  }

  /* sub1 */
  .sub1_intro .txt_box .txt_bot {
    font-size: 0.875rem;
  }

  .sub1_intro .txt_box .txt_bot br {
    display: none;
  }

  .sub1_intro .txt_box .txt_top img:first-child {
    width: 50%;
  }

  .sub1_intro .txt_box .txt_top img:nth-child(3) {
    margin-left: -4px;
  }

  .sub1_intro {
    padding-inline: 20px;
    padding-top: 1rem;
  }

  .sub1_intro .txt_box::before {
    /* width: 385px;
        height: 275px; */
    display: none;
  }

  .sub1_intro .txt_box {
    padding: 2rem;
  }

  .sub1_intro .person img {
    width: 35%;
  }

  .sub1_intro .person {
    right: -11rem;
    bottom: -1rem;
  }

  .sub1_1 {
    padding-block: 5rem 4rem;
    padding-inline: 20px;
  }

  .sub1_1 .slide_box {
    width: 380px;
    padding-block: 2rem 8rem;
  }

  .sub1_1 .bubble {
    top: 2rem;
    left: 1rem;
  }

  .sub1_1 .bubble img {
    width: 45%;
  }

  .sub1_1 .slide_box .sub1_txt h2 {
    font-size: 1.25rem;
  }

  .sub1_1 .slide_box .sub1_txt p {
    margin-block: 0.5rem 0rem;
    font-size: 1rem;
  }

  .sub1_1 .slide_box .flex_wrap {
    gap: 2rem;
  }

  .sub1_1 .slide_box .sub1_1_r {
    width: 40px;
    height: 40px;
    bottom: 5%;
    right: 10%;
  }

  .sub1_1 .slide_box {
    padding-block: 2rem 6rem;
  }


  /* sub2 */
  .sub2_1 .swiper-slide>img {
    width: 90%;
  }

  .sub2_1 .txt_wrap li {
    font-size: 1rem;
    gap: 0.5rem;
  }

  .sub2_1 .txt_wrap li img {
    width: 22px;
  }

  .sub2_1 .txt_wrap {
    gap: 0.5rem;
  }

  .sub2_1 .sub2_top {
    padding-top: 3rem;
  }

  .sub2_1 {
    background-size: 320%;
  }

  .sub2_1 .txt_wrap {
    margin-top: 1rem;
    padding-inline: 20px;
  }

  .sub2_1 .txt_wrap {
    gap: 1rem;
    justify-content: center;
    flex-direction: column;
    padding-inline: 20px;
  }

  .sub2_2 {
    padding-top: 2rem;
  }

  .sub2_2 .sub2_bot img {
    width: 30%;
  }

  .sub2_2 .sub2_bot .sub2_r {
    width: 30px;
    height: 23px;
    top: 37%;
    right: 23%;
  }

  .sub2_2 .sub2_bot .sub2_l {
    width: 30px;
    height: 23px;
    top: 37%;
    left: 23%;
  }

  .sub2_2 .sub2_bot .swiper-slide.swiper-slide-active p {
    font-size: 1.125rem;
  }

  .sub2_2 .img_wrap {
    margin-top: 4rem;
    width: 90%;
    padding-inline: 20px;
    position: relative;
    z-index: 1;
    padding-bottom: 3rem;
  }

  .sub2_2 .img_wrap img {
    width: 100%;
  }

  .sub2_1 .txt_wrap li br {
    display: none;
  }


  /* sub3 */
  .sub3_1 .tab_list li iframe {
    height: 230px;
    width: 100%;
  }

  .sub3_1 .tab_list li img {
    height: 230px;
  }

  .sub3_1 .tab_list {
    gap: 1rem;
  }

  .sub3_1 .txt_box .txt_top .top_l img {
    width: 200px;
  }

  .sub3_2 .txt_box .bottom_r {
    right: 16px
  }

  .sub3_2 .txt_box .bottom_r img {
    width: 60px
  }

  .sub3_2 h2 {
    font-size: 2rem
  }

  .sub3_2 .sub3_2wrap {
    margin-top: 2rem
  }

  .sub3_1 .txt_box .tab_content p {
    font-size: 1.375rem;
  }

  .sub3_1 .txt_box .txt_top .top_r img {
    width: 58px;
  }

  .sub3_1 .txt_box .tab_content {
    margin-top: 0.5rem;
  }

  .sub3_1 {
    padding-inline: 20px;
    position: relative;
    z-index: 1;
    padding-bottom: 3rem;
  }

  .sub3_1 .txt_box {
    padding-inline: 2rem;
  }

  .sub3_1 .tab_list li .active_txt {
    font-size: 1.5rem;
  }

  .sub3_1 .tab_list li:last-child:hover .active_txt {
    font-size: 1.5rem;
  }

  /* sub4 */
  .sub4 {
    position: relative;
    z-index: 1;
    padding-bottom: 3rem;
    padding-inline: 20px;
  }

  .sub4 .txt_box .right li {
    font-size: 1rem;
  }

  .sub4 .txt_box .left img:first-child {
    width: 95px;
  }

  .sub4 .txt_box .left img:last-child {
    width: 80px;
  }

  .sub4 .bubble img {
    width: 105px;
  }

  .sub4 .txt_box .right li br {
    display: none;
  }

  .sub4 .txt_box {
    padding-block: 2.5rem 2.5rem;
    padding-inline: 2rem;
  }

  .product .flex_box .right::before {
    height: 39%;
  }

  .product .flex_box .right {
    padding-top: 4vh;
  }

  .product .flex_box .right div:first-of-type {
    margin-bottom: 12vh;
  }

  .product .flex_box .right div:last-of-type img {
    max-width: 95%;
  }

  .product .flex_box .right div:first-of-type img {
    max-width: 76%;
  }

  .sub_wrap h2 {
    font-size: 20px;
  }

  .product .flex_box .left img {
    max-width: 45%;
  }
}

@media screen and (max-width: 391px) {
  .swiper-container-horizontal>.swiper-pagination-bullets {
    bottom: 23%;
  }

  .m3 .slide_box {
    width: 345px;
  }

  .m3_txt {
    padding-inline: 20px;
  }

  .sub1_1 .slide_box {
    width: 345px;
  }

  .sub1_txt {
    padding-inline: 20px;
  }

  .sub1_intro .txt_box::before {
    width: 350px;
    height: 275px;
  }
}