.btn_close_policy{width: 2rem!important}
.mt-5 {
    margin-top: 5rem
}

.mt-6 {
    margin-top: 6rem
}

.mt-7 {
    margin-top: 7rem !important
}

.mt-8 {
    margin-top: 8rem
}

.mt-9 {
    margin-top: 9rem
}

.mt-10 {
    margin-top: 10rem
}


/* common*/
.point-color {
    color: #00b3ff
}

.black-text {
    color: #000
}

.sub-color {
    color: #bb7444;
}

section {
    padding: 10rem 0;
    letter-spacing: -1px;
    word-break: keep-all;
    word-wrap: break-word;
}

.container {
    text-align: center;
    position: relative;
    max-width: 1100px;

}

/*visual*/

iframe{vertical-align: top}
 .visual_w {background: url(../images/bg_visual.jpg) repeat center top;}

.bg01{background: #ffedd2}
.bg02{background: #fffbee}
.bg{background:url(../images/bg.jpg) repeat}
.red_bg{background: #b31c27}

.vod{width: 100%; height: 100vh;}
@media(max-width:1024px) {
    .vod{ height: 56vh;}

    
}

@media(max-width:767px) {
    .vod{ height: 31vh;}

    
}



.conts-wrap-p01{height: 2467px;}


.vod_w{background: #fdf7d9; width: 981px; margin: 80px auto 0; padding-bottom: 80px;}
.vod_w p:nth-of-type(2){padding:50px 0}


.vod_group {}
.vod_group dl{display: flex; justify-content: flex-start; margin-top: 5rem; flex-wrap: wrap;
align-items: center}
.vod_group dl dd:first-child{width: 50%; height: 30rem; margin-right: 6rem}
.vod_group iframe{border-radius: 1rem; border: 2px solid #000; width:100%; height: 100% }

footer{padding: 3rem 0}
footer img{width: 120px;}


/*260113˾*/

/*.popup,.popup2{position: absolute;  z-index: 999; color: #fff; background: #000;
text-align: right; top: 50px; left: 20px;font-size: 1.5rem;}
.popup{left:650px}
.popup2{left: 2rem; width: 560px;}
.popup2 iframe{width: 100%}

.popup p:nth-of-type(2),.popup2 p:nth-of-type(2){padding: .5rem; font-size: 1.5rem }
.popup .bottom,.popup2 .bottom{padding: 1rem;}

#layerPopup:before{display:block; content:""; position:fixed; left:0; top:0; width:100%; height:100%; background:rgba(0,0,0,.5);}

.popup input[type="checkbox"],
.popup2 input[type="checkbox"]{margin: 0 .5rem; }

.popup a,
.popup2 a{color: #fff; }*/


/*260113˾*/

/* Popups (PC 기본) */
.popup,.popup2,.popup3{
  position:absolute;
  z-index:9999;
  color:#fff;
  background:#000;
  text-align:right;
  top:50px;
  left:0;
  font-size:1.5rem;
}
.popup{left:650px;}
.popup2{
  left:50%;
  transform:translateX(-50%);
}
.popup3{left:0;}

/* popup 콘텐츠 공통 */
.popup img,
.popup2 img,
.popup3 img{display:block; max-width:100%; height:auto;}

.popup2 iframe{
  width:560px;
  height:315px;
  display:block;
}

/* 하단(닫기/체크) */
.popup .bottom,.popup2 .bottom,.popup3 .bottom{padding:1rem;}
.popup input[type="checkbox"],
.popup2 input[type="checkbox"],
.popup3 input[type="checkbox"]{margin:0 .5rem;}
.popup a,.popup2 a,.popup3 a{color:#fff;}

/* ===== 모바일에서: 기존 index 처럼 "화면에 꽉 맞게" + 닫기 버튼 항상 보이게 ===== */
@media(max-width:767.97px){
  .popup,.popup2,.popup3{
    position:fixed;
    top:50px;
    left:50%;
    transform:translateX(-50%);
    margin:0;
    width:92vw;
    max-width:92vw;
    max-height:calc(100vh - 80px);
    overflow:hidden; /* 내부 스크롤 방지 */
    box-sizing:border-box;
  }

  .popup table,
  .popup2 table,
  .popup3 table{width:100%;}

  /* 이미지가 화면을 넘치지 않도록 축소 */
  .popup img,
  .popup2 img,
  .popup3 img{
    width:100%;
    height:auto;
    max-height:calc(100vh - 140px);
    object-fit:contain;
  }

  /* 유튜브 팝업(iframe) - 반응형 16:9 */
  .popup2 iframe{
    width:100%;
    height:auto;
    aspect-ratio:16/9;
  }

  /* 하단 영역이 항상 보이도록 */
  .popup .bottom,
  .popup2 .bottom,
  .popup3 .bottom{
    font-size:1.3rem;
    line-height:1.3;
    padding:.8rem;
    background:#000;
  }
}

@media(max-width:1100px) {
    img{width: 100%}
    
    .red_bg .title img{width: 290px}
    .vod_group dl img{width: 250px;}
    .vod_group dl dd:first-child{ height: 27rem; }

}

@media(max-width:767.97px) {
    .visual_w{background-size: cover; padding: 8rem 0;}
    footer{padding-bottom: 7rem}
   .m_block{display: block}
    .vod_group li{width: 100%;}
    .vod_group dl{justify-content: center; }
    .vod_group dl dd:first-child{width: 100%; margin: auto 0 3rem; margin-right:0}
    
    .vod_group dl img{width: 150px;}
    
    .vod_group dl dd:first-child{ height: 27rem; }
    footer img{margin-bottom: 2rem; width: 90px;}
    
    .popup,
    .popup2{ top: 50px; left: 0; margin:0}
    
    .popup2{width: 100%}
    .popup2 iframe{ vertical-align: top}

    
}


@media(min-width:768px) {
    .fixed_form{display: none}
}

@media(max-width:767.99px) {
    
.fixed_form{position: fixed; bottom: 0; padding: 1rem 0; display: block; width: 100%}
    .fixed_form .form01{width: 75%; margin: auto; color: #000; font-size: 3rem; }
    .fixed_form .col-md-6{width: 50%; padding: 0 10px}
    .fixed_form .col-md-4{width: 33%; padding: 0 10px}
    #contact .form-group input,
    #contact .form-group select,
    #contact .form-group textarea {height: 3.5rem }
    
    .fixed_form input[type="submit"]{padding: 5px 0; background-size: cover}
.fixed_form ::-webkit-input-placeholder {
    font-weight: normal;
    color: #666; font-size: 11px;
}
    .fixed_form select{font-size: 11px!important;}
    .fixed_policy{padding: 0 7px!important; margin-bottom: 5px; }

    
    footer .container{padding-bottom:180px}
    
}




/* =========================
   POPUP LAYOUT OVERRIDES
   - PC: 좌/중/우 배치
   - Mobile: 화면 안에 고정 + 닫기 영역 항상 보이게
   ========================= */

/* PC / Tablet 기본 */
.popup, .popup2, .popup3{
  position: absolute;
  z-index: 9999;
  top: 50px;
  background: #000;
  color: #fff;
  text-align: right;
  font-size: 1.5rem;
}
.popup{ left: 20px; }
.popup2{ left: 50%; transform: translateX(-50%); }
.popup3{ right: 20px; left: auto; }

.popup img, .popup2 img, .popup3 img{ width: 100%; height: auto; display:block; }
.popup .bottom, .popup2 .bottom, .popup3 .bottom{ padding: 1rem; }
.popup a, .popup2 a, .popup3 a{ color: #fff; }

.popup2 iframe{
  width: 560px;
  height: 315px;
  border: 0;
  vertical-align: top;
}

/* Mobile: 팝업이 화면 밖으로 넘어가지 않게 + 닫기 영역 고정 */
@media (max-width: 767.97px){
  .popup, .popup2, .popup3{
    position: fixed;
    top: 10px;
    left: 50%;
    transform: translateX(-50%) !important; /* popup2의 transform 통일 */
    width: calc(100% - 20px);
    max-width: 420px;
    max-height: calc(100vh - 20px);
    overflow: hidden;
    border-radius: 10px;
    box-sizing: border-box;
  }

  .popup table, .popup2 table, .popup3 table{
    display: flex;
    flex-direction: column;
    height: 100%;
    width: 100%;
  }

  /* 콘텐츠 영역은 스크롤 가능(이미지/영상) */
  .popup table tr:first-child,
  .popup2 table tr:first-child,
  .popup3 table tr:first-child{
    flex: 1 1 auto;
    overflow: auto;
  }

  /* 하단(오늘하루X/닫기)은 항상 보이도록 */
  .popup table tr:last-child,
  .popup2 table tr:last-child,
  .popup3 table tr:last-child{
    flex: 0 0 auto;
    background: #000;
  }

  .popup2 iframe{
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 16 / 9;
    display: block;
  }
}

