
.cards {box-sizing:border-box}

html{scroll-behavior:smooth;}

h2 {background:none;}



#header {height:111px; border-bottom:1px solid rgba(7,86,63,.1);box-shadow:0 5px 25px rgba(20,50,40,.07)}

#wrap {background:url(/images/kyfesta/content/mvisual_bg.jpg) no-repeat 50% 111px;}



section[id]{scroll-margin-top:120px;}

.apply{background:#087347;color:#fff;border-radius:22px;padding:11px 18px;font-size:11px;font-weight:800}

.hamb{display:none;border:0;background:none;font-size:22px;color:#087347}

.hero{margin-top: 0 !important;  padding-top: 0; min-height:645px;overflow:hidden}

.hero-inner{max-width:1000px;margin:auto;padding:0 50px 52px;display:grid;grid-template-columns:1.1fr .9fr;align-items:center}

.hero-logo{margin:20px 0 13px; font-family:Inter,sans-serif;font-weight:900; color:#006838;}
.hero-logo .ky{display:inline;font-size:130px; line-height:0.8; }
.hero-logo .festa{display:inline;font-size:130px;line-height:1;color:#f07e00;}
.hero-logo .year{display:block;font-size:42px;line-height:0.8;color:#262d2c;margin-top:13px}

.hero-inner p.slogan{font-size:23px;font-weight:600;margin:45px 0 15px;color:#006838;}
.hero-inner p.slogan em{font-style:normal;color:#f07e00;}
.hero-inner p.intro{font-size:16x;line-height:1.5;color:#2e3834;}
.hero-inner p.intro strong{color:#006838;}



.hero-logo span {
    display: inline-block;
    opacity: 0;
    transform: translateY(35px) scale(0.8);
    animation: heroLetterIn 5s cubic-bezier(.34, 1.56, .64, 1) infinite;
}

/* K */
.hero-logo span:nth-of-type(1) {
    animation-delay: 0.1s;
}

/* Y */
.hero-logo span:nth-of-type(2) {
    animation-delay: 0.22s;
}

/* F */
.hero-logo span:nth-of-type(3) {
    animation-delay: 0.34s;
}

/* E */
.hero-logo span:nth-of-type(4) {
    animation-delay: 0.46s;
}

/* S */
.hero-logo span:nth-of-type(5) {
    animation-delay: 0.58s;
}

/* T */
.hero-logo span:nth-of-type(6) {
    animation-delay: 0.70s;
}

/* A */
.hero-logo span:nth-of-type(7) {
    animation-delay: 0.82s;
}

@keyframes heroLetterIn {
    0% {
        opacity: 0;
        transform: translateY(35px) scale(0.8);
    }

    65% {
        opacity: 1;
        transform: translateY(-7px) scale(1.05);
    }

    82% {
        transform: translateY(3px) scale(0.98);
    }

    100% {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}


@keyframes heroLetterIn {
    0% {
        opacity: 0;
        transform: translateY(35px) rotate(-8deg) scale(0.8);
    }

    60% {
        opacity: 1;
        transform: translateY(-8px) rotate(3deg) scale(1.06);
    }

    80% {
        transform: translateY(3px) rotate(-1deg) scale(0.98);
    }

    100% {
        opacity: 1;
        transform: translateY(0) rotate(0) scale(1);
    }
}


@media (prefers-reduced-motion: reduce) {
    .hero-logo span {
        animation: none;
        opacity: 1;
        transform: none;
    }
}




.hero-logo-wrap {
    position: relative;
    width: 100%;
    max-width: 500px;
}

.hero-logo {
    width: 100%;
    max-width: 500px;
}
/* KY와 FESTA 사이 */
.title-line {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin: 10px 0 10px;
}

.title-line::before,
.title-line::after {
    content: "";
    height: 3px;
    background: #006838;
    border-radius: 3px;
    flex: 1;
}

.title-line span {
    flex: 0 0 auto;
    color: #006838;
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
}


/* =========================
   오른쪽 연결의 힘 / 2026
========================= */

.festa-year {
    position: absolute;
    right: 35px;
    top: -10px;
    text-align: right;
}

.festa-year p {
    margin: 0px;
    color: #07563f;
    font-size: 20px;
    font-weight: 600;
    letter-spacing: -0.5px;
    white-space: nowrap;
}

.festa-year strong {
    display: block;
    color: #006b45;
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: -0.5px;
}

.festa-year span {
    color: #f07e00;
}



@media(max-width:770px){

    .festa-year {
        position: absolute;
        right: 20%;
        top: 30px;
        text-align: right;
    }

    .festa-year img {width:55%;}

}


@media(max-width:450px){

    .festa-year {
        position: absolute;
        right: 20%;
        top: -10px;
        text-align: right;
    }

    .festa-year img {width:60%;}

}


.copy{padding-top:60px;}

.pill{background:#fff;border:1px solid #bed28e;border-radius:20px;padding:6px 13px;font-size:13px;font-weight:800;color:#087347}

.pill b{color:#f17600}

.hero h1{margin:17px 0 13px;line-height:.82;letter-spacing:-5px}

.hero h1 i{display:block;font-style:normal;color:#087347;font-size:67px}

.hero h1 em{font-style:normal;color:#f17600;font-size:64px;text-shadow:4px 0 #087347}

.hero h1 strong{font-size:47px;color:#087347;margin-left:10px}

.hero h3{display:inline-block;border-top:2px solid #087347;padding-top:7px;color:#087347;font-size:18px;margin:0}



.hinfo{display:flex;gap:15px; margin-top:30px;}

.hinfo div{background:#fff;border:1px solid #e0e7d7;border-radius:10px;padding:10px 17px;font-size:13px; font-weight: 500; box-shadow: 0px 0px 5px #eee;}

.hinfo b{display:block;font-size:15px;margin-top:2px; color:#000;}

.chips{display:flex;gap:8px;flex-wrap:wrap;margin:15px 0 25px;}

.chips span{font-size:12px; font-weight:bold; background:#f5f8dd;border:1px solid #dce8bf;padding:4px 12px 5px;border-radius:35px;color:#087347}

.buttons{display:flex;gap:8px}

.buttons a{border-radius:22px;font-size:13px;font-weight:900; word-break: keep-all;}
.buttons a.green, .buttons a.orange{padding:11px 16px; color:#fff; }

.green{background:#087347;}
.orange{background:#f07e00;}

.green small{font-size:7px;margin-left:6px}



.white{padding:11px 20px; background:#fff;border:1px solid #d7dfd1}

.art{height:390px;position:relative; display: inline-block;}

.blob{position:absolute;width:400px;height:360px;background:#dceca6;border-radius:48% 52% 50% 50%;right:0;top:15px}


.art img{ display: block; position:absolute;width:450px;max-width:none;right:-30px;top:-55px;}


/* =========================
   35주년 배지
========================= */

.anniversary-badge {
    position: absolute;

    /* 캐릭터 오른쪽 위치 */
    right: -45px;
    top: 100%;

    width: 110px;
    height: 110px;

    z-index: 10;

    
}


/* 회전하는 원 */
.badge-circle {
    position: absolute;
    inset: 0;

    border: 2px dashed #f58220;
    border-radius: 50%;

    background-color:rgba(255, 255, 255, 0.8);

    box-sizing: border-box;

    animation: badgeRotate 8s linear infinite;
}


/* 가운데 글자 */
.badge-content {
    position: absolute;
    inset: 0;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    text-align: center;
}

.badge-content strong {
    color: #f58220;
    font-size: 32px;
    font-weight: 700;
    line-height: 1;
    margin-top: 10px;
}

.badge-content span {
    color: #07563f;
    font-size: 13px;
    font-weight: 500;
    line-height: 1;
    margin-top: 10px;
}

.badge-content em {
    color: #07563f;
    font-size: 7px;
    font-style: normal;
    line-height: 1;
    margin-top: 5px;
    letter-spacing: .3px;
}


/* =========================
   회전
========================= */

@keyframes badgeRotate {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}



.badge{position:absolute;left:35px;bottom:55px;background:#fff;border:2px dashed #f17600;width:75px;height:75px;
	border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#f17600}

.badge b{font-size:20px}.badge small{font-size:7px;color:#087347;text-align:center}


.section{padding:110px 6%;background:#fff}

.pale{background:#f5f9df}

.title{text-align:center;margin-bottom:34px}

.title.left{text-align:left}

.title small,
.ntop small{font-size:12px;color:#087347;font-weight:900;letter-spacing:2px}

.title h2{font-size:38px;letter-spacing:-2px;margin:0px; padding:0;}

.title h2 span{color:#f17600}

.title p{font-size:17px;color:#84918b}

.photos{max-width:1050px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:9px}

.photos img{width:100%;height:125px;object-fit:cover;border-radius:10px;object-position:center}

.cards{max-width:1050px;margin:50px auto 0;display:grid;gap:7px}

.cards.six{ display: grid !important;
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;}

.cards.five{grid-template-columns:repeat(5,1fr) }

.cards article{background:#fff;border:1px solid #e3e9dd;border-radius:10px;text-align:center;padding:20px 8px;min-height:150px;font-size:45px}

.cards article b{display:block;color:#087347;font-size:17px;line-height:0.8;margin:9px 0;}

.cards article p{font-size:13px;color:#2e3834;line-height:1.4; padding:0px 5%;}

.cards article span{display:block;}

.festival .cards article b{color:#087347}


/*   
.notice-wrap{
    width:100%;
    max-width:1050px;
    margin:0 auto;
    display:grid;
    grid-template-columns:1.2fr .8fr;
    gap:15px;
    box-sizing:border-box;
}

.notice{
    width:100%;
    min-width:0;
    background:#fff;
    border:1px solid #e1e9d7;
    border-radius:11px;
    padding:18px 35px 35px;
    box-sizing:border-box;
}

.ntop{display:flex;justify-content:space-between;align-items:end;border-bottom:2px solid #087347;padding-bottom:15px}

.ntop h2{margin-top: -15px; padding-top: 0px; font-size:23px; line-height:0.5; letter-spacing:-2px;}

.ntop a{background:#fff; font-size:13px; margin-top: 0px; padding:7px 15px; border:1px solid #e3e9dd; border-radius:50px; font-weight:500}
.ntop a:hover{background:#f17600;  border:1px solid #f17600; border-radius:50px; color:#fff;}

.notice ul{list-style:none;padding:0;margin:10px 0 0;}

.notice li{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    border-bottom:1px solid #edf0ea;
    padding:15px 10px 9px;
    font-size:14px;
    font-weight:500;
    letter-spacing:-1px;
}


.notice li:last-child{border-bottom:none;}

.notice li a{
    position:relative; flex:1;
    min-width:0;
    display:block;
    padding-left:9px;
    text-align:left;
    color:#555;
    line-height:1.6;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}


.notice li a::before{
    content:"";
    position:absolute;
    left:0;
    top:50%;
    width:4px;
    height:4px;
    border-radius:50%;
    background:#b9d78a;
    transform:translateY(-50%);
}

.notice li a:hover{ color:#087347;}


.notice li span{
    flex:0 0 80px;
    color:#999;
    text-align:right;
    white-space:nowrap;
}


@media screen and (max-width:767px){

    .notice-wrap{
        width:100%;
        max-width:100%;
        grid-template-columns:1fr;
        gap:14px;
        margin:0;
        box-sizing:border-box;
    }

    .notice{
        width:100%;
        min-width:0;
        padding:18px 16px 25px;
        box-sizing:border-box;
    }

    .ntop{
        padding-bottom:12px;
    }

    .ntop h2{
        margin-top:0;
        font-size:21px;
        line-height:1.2;
        letter-spacing:-1.5px;
    }

    .ntop a{
        font-size:12px;
        padding:6px 13px;
    }

    .notice li{
        display:flex;
        gap:8px;
        padding:11px 4px 8px;
        font-size:12px;
        letter-spacing:-.5px;
    }

    .notice li a{
        flex:1 1 auto;
        min-width:0;
        font-size:13px;
        white-space:nowrap;
        overflow:hidden;
        text-overflow:ellipsis;
    }

    .notice li span{
        flex:0 0 auto;
        font-size:12px;
        white-space:nowrap;
    }
}
*/


/* ========================================
   KY FESTA 메인 공지사항
======================================== */

.kyfesta_notice {
    width: 100%;
    margin: 0px;
}




.main-board.typeG {
    width: 100%;
    max-width:1050px;
    margin:0 auto;
    display:grid;
    grid-template-columns: 1fr;
    gap:15px;
    box-sizing:border-box;
}


.main-board.typeG .board-item {
  position: relative;
  float: none;
    width: 100%;
}



.main-board.typeG .board-content {
  width: 100%;
  margin: 0 0 30px 0;
  padding: 0;
  overflow: hidden;
  display: none;
  top: 0;
  position: relative;
}


.main-board.typeG .board-content .ul .li {
  float: left;
  width: 23%;
  height: 210px;
  margin:0 1%;
  padding: 35px 30px 25px;
  border-radius: 10px;
  border: 1px solid #e3e9dd;
  background-color: #fff;
  box-sizing: border-box;

}

.main-board.typeG .board-more a{
   display:block; background:#087347;color:#fff;border-radius:50px; width:140px; padding:10px 0px;
   text-align:center;font-size:14px;font-weight:500;margin:0px auto;
}

.main-board.typeG .board-more a:hover{
   background:#01582e;
}


.main-board.typeG .content-link {
  position: relative;
}

.main-board.typeG .content-text {
  width: 100%;
  line-height: 1;
  display: block;
}

.main-board.typeG .content-title, .main-board.typeG .content-title + em {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  word-break: break-all;
  word-wrap: break-word;
}

.main-board.typeG .content-title {
  overflow: hidden;
  white-space: normal;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  word-break: keep-all;
  font-size: 16px;
  line-height: 25px;
  color: #555;
  display: block;
  width: 100%;
  height: 70px;
  top: 0px;
  position: absolute;
  z-index: 2;
  font-weight: 700;
}

.main-board.typeG .content-title:before {
  content: "";
  position: absolute;
  opacity: 0;
  left: 0;
  top: 15px;
  width: 0;
  height: 8px;
  background-color: rgba(124, 189, 39, 0.2);
  transition: width 0.6s ease;
  z-index: -1;
}

.main-board.typeG .content-title + em {
  display: block;
  font-size: 15px;
  height: 15px;
}

.main-board.typeG .content-title {
  position: relative;
}

.main-board.typeG .content-title .new {
  position: absolute;
  top: 0px;
  left: auto;
  right: 10px;
  margin: 0;
  text-align: center;
  width: 11px;
  height: 11px;
}

.main-board.typeG .content-title .new::before {
  top: 0px;
  left: 5px;
  width: 11px;
  height: 11px;
  background: url(/images/glocal/content/notice_new.gif) no-repeat;
}

.main-board.typeG .content-link.new-icon .content-title {
  padding-right: 20px;
}

.main-board.typeG .content-link:hover .content-title:before, .main-board.typeG .content-link:focus .content-title:before, .main-board.typeG .content-link:active .content-title:before {
  width: 100%;
  opacity: 1;
  visibility: visible;
}

.main-board.typeG .content-date {
  display: block;
  margin-top: 25px;
  padding-top: 25px;
  border-top: 1px dotted #e3e9dd;
}

.main-board.typeG .content-date span {
  display: block;
  color: #999;
  font-size: 15px;
  line-height: 1;
}



.main-board.typeG .board-item:after, .main-board.typeG .content-link:after {
  content: "";
  display: inline-block;
  clear: both;
}




.main-board.typeG .board-item.n1 .board-title {
  top: 64px;
}


.main-board.typeG .board-item.active .board-content {
  display: block;
  z-index: 5;
}

.main-board.typeG .board-item.active .board-title span, .main-board.typeG .board-item .board-title:hover span, .main-board.typeG .board-item .board-title:focus span,
.main-board.typeG .board-item .board-title:active span {
  color: #222;
  white-space: nowrap;
}

.main-board.typeG .board-item.active .board-title span:before, .main-board.typeG .board-item .board-title:hover span:before, .main-board.typeG .board-item .board-title:focus span:before, .main-board.typeG .board-item .board-title:active span:before, .main-board.typeG .board-item.active .board-title span:after, .main-board.typeG .board-item .board-title:hover span:after, .main-board.typeG .board-item .board-title:focus span:after, .main-board.typeG .board-item .board-title:active span:after {
  opacity: 1;
  visibility: visible;
  height: 1px;
}

.main-board.typeG .board-item.active .board-title span:before, .main-board.typeG .board-item .board-title:hover span:before, .main-board.typeG .board-item .board-title:focus span:before, .main-board.typeG .board-item .board-title:active span:before {
  width: 100%;
  background-color: #7CBD27;
}

.main-board.typeG .board-item.active .board-title span:after, .main-board.typeG .board-item .board-title:hover span:after, .main-board.typeG .board-item .board-title:focus span:after, .main-board.typeG .board-item .board-title:active span:after {
  width: 18px;
  height: 18px;
  background-color: #81c427;
  margin-left: 6px;
}



.main-board.typeG .board-item.active .board-content {
  display: inline-block;
  z-index: 5;
}



@media(max-width:800px){

    .main-board.typeG .content-title {
      height: 50px;
    }

    .main-board.typeG .board-content .ul .li {
      width: 48%;
      height: 210px;
      margin:1%;

    }
}




@media(max-width:450px){

    .main-board.typeG .board-content .ul .li {
      width: 99%;
      height: 150px;
      margin:1%;
      padding: 25px 30px 17px;

    }


    .main-board.typeG .content-date {
      display: block;
      margin-top: 17px;
      padding-top: 17px;
    }

}



.reserve{border:1px solid #e1e9d7;border-radius:11px;padding:30px 35px 35px; background:linear-gradient(140deg,#fff,#edf4c8)}


.reserve small{margin-top: 20px; font-size:12px;color:#fff;font-weight:500; padding:7px 15px; background-color: #f17600; border-radius:7px;}

.reserve h2{margin-top: 10px; padding-top: 0; font-size:23px;color:#087347;  line-height:1.3; letter-spacing:-2px;}

.reserve p{margin-top:15px; font-size:14px;line-height:1.3}

.reserve p.target {color:#333; font-weight:500; line-height:1.5}

.reserve p.target span {font-size:15px; color:#f17600; font-weight:600;}

.reserve a{display:block; background:#087347;color:#fff;border-radius:50px;padding:12px 20px;text-align:center;font-size:17px;font-weight:600;margin-top:20px}


.days{max-width:1050px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:9px}

.days article{border:1px solid #e0e7dd;border-radius:10px;overflow:hidden}

.days header{background:#087347;color:#fff;padding:20px 25px; font-size:13px}

.days header b{font-size:23px;line-height:1.3;}

.days header span{display: block; font-size:15px; font-weight:400; color:rgba(255, 255, 255, 0.8);}

.days article:nth-child(2) header{background:#2d8c5d}

.days article:nth-child(3) header{background:#f17600}


.day-schedule{
    margin:0;
    padding:0;
}

.schedule-item{
    display:flex;
    align-items:flex-start;
    width:100%;
    box-sizing:border-box;
    padding:15px 18px;
    border-bottom:1px solid #eef1eb;
}
.schedule-item:last-child{
    border-bottom:none;
}

.schedule-item dt{
    flex:0 0 85px;
    width:85px;
    margin:0;
    padding:0;
    font-size:13px;
    font-weight:600;
    line-height:1.7;
    white-space:nowrap;
    letter-spacing:-1px;
}

.schedule-item dt.t1{
    color:#087849;
}

.schedule-item dt.t2{
    color:#2d8c5d;
}

.schedule-item dt.t3{
    color:#f17600;
}

.schedule-item dd{
    flex:1;
    float: left;
    margin:0;
    padding:0;

}

.schedule-item dd ul{
    list-style:none;
    margin:0;
    padding:0;
}

.schedule-item dd li{
    position:relative;
    padding-left:8px;
    margin-bottom:6px;
    color:#333;
    font-size:14px;
    line-height:1.6;
    word-break:keep-all;
    letter-spacing:-1px;
}

.schedule-item dd li:last-child{
    margin-bottom:0;
}

.schedule-item dd li::before{
    content:"";
    position:absolute;
    left:0;
    top:9px;
    width:4px;
    height:4px;
    border-radius:50%;
    background:#b9d78a;
}

.schedule-item dd li span{
    color:#555;
}




.venue{width:100%;
    max-width:1050px;
    margin:0 auto;
    box-sizing:border-box; display:grid;grid-template-columns:1.2fr .8fr;gap:15px}

.venue img{display:block;
    width:100%;
    max-width:100%;
    height:auto;
    object-fit:contain;
    border-radius:12px;}

.venue>div p{padding:13px;font-size:10px}




/* A ~ D */
.venue-program{
    margin:0;
    padding:0;
}

.venue-item{
    display:flex;
    align-items:center;
    width:100%;
    min-height:70px;
    margin-bottom:7px;
    padding:10px 16px;
    box-sizing:border-box;

    background:#fff;
    border:1px solid #e1e9d7;
    border-radius:12px;
}

.venue-item dt{
    flex:0 0 43px;
    width:43px;
    height:43px;
    margin:0 16px 0 0;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:13px;
    color:#fff;
    font-size:21px;
    font-weight:700;
}

.venue-item dt.m1{
    background:#087849;  
}
.venue-item dt.m2{
    background:#348754; 
}

.venue-item dt.m3{
    background:#4c91d0; 
}

.venue-item dt.m4{
    background:#f17600; 
}



.venue-item dd{
    flex:1;
    min-width:0;
    margin:0;
    padding:0;
}

.venue-item dd strong{
    display:block;
    margin-bottom:2px;

    color:#333;
    font-size:15px;
    line-height:1.5;
}

.venue-item dd p{
    margin:0; padding:0;
    color:#777;
    font-size:13px;
    line-height:1.3;
}

.venue-detail{
    margin:5px 0 0;
    padding:13px 14px;

    background:#fff;
    border:1px solid #e1e9d7;
    border-radius:12px;

    box-sizing:border-box;
}

.venue-detail-row{
    display:flex;
    align-items:flex-start;
    width:100%;
    margin-bottom:5px;
}

.venue-detail-row:last-child{
    margin-bottom:0;
}

.venue-detail-row dt{
    flex:0 0 65px;
    width:65px;
    margin:0;
    padding:0;

    color:#087849;
    font-size:12px;
    font-weight:700;
    line-height:1.5;
    letter-spacing:-1px;
    white-space:nowrap;
}

.venue-detail-row dd{
    flex:1;
    min-width:0;
    margin:0;
    padding:0;

    color:#555;
    font-size:12px;
    line-height:1.5;
    word-break:keep-all;
}


.audience{max-width:1000px;margin:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:8px}

.audience article{background:#fff;border:1px solid #e3e9dd;border-radius:10px;text-align:center;padding:20px 8px;min-height:150px;font-size:45px}

.audience b{display:block;color:#087347;font-size:17px;line-height:0.8;margin:15px 0 9px;}

.audience article span.emoji1{background: #f1fae0; padding:4px 8px 8px 8px; font-size:30px; border-radius:12px;}
.audience article span.emoji2{background: #fff3e7; padding:4px 8px 8px 8px; font-size:30px; border-radius:12px;}
.audience article span.emoji3{background: #eaf3e2; padding:4px 8px 8px 8px; font-size:30px; border-radius:12px;}
.audience article span.emoji4{background: #eef3f7; padding:4px 8px 8px 8px; font-size:30px; border-radius:12px;}

.audience p{font-size:13px;color:#2e3834;line-height:1.4; padding:10px 5% 0px;}

.audience a{font-size:12px; font-weight:500; color:#f17600;border:1px solid #f8d0a9; background: #fef1e5; border-radius:35px;padding:4px 10px 5px} 

.audience a:hover{color:#fff;border:1px solid #f17600; background: #f17600;} 






@media(max-width:1050px){
 .hero-inner{grid-template-columns:1fr .7fr}
 .cards.six {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }

}



@media(max-width:900px){
	.hero-inner{grid-template-columns:1fr}


    .hero-inner p.intro{font-size:14px;line-height:1.5;}

    .title h2{font-size:30px;}
    .title p{font-size:15px; word-break: keep-all;}

	.blob{right:50%;transform:translateX(50%);width:310px;height:270px}
	.venue{grid-template-columns:1fr}
	.cards article p{letter-spacing: -1px;}
	.notice-wrap{grid-template-columns:1fr}
	.audience{grid-template-columns:repeat(2,1fr)}
}

@media(max-width:800px){
 .hero{padding-top:135px}
 .hero-inner{grid-template-columns:1fr}

	.art{ order:-1;
        width:100%;
        height:290px;
        display:flex;
        justify-content:center;
        align-items:flex-start;
        box-sizing:border-box;
        margin-bottom:0;
        position:relative;}

	.art img{ 
        right:auto;
        left:auto;
    width:70%;
        height:auto;
        margin:0 auto;
        display:block;
        transform:translateY(-50px)}

    .anniversary-badge {
    position: absolute;

    /* 캐릭터 오른쪽 위치 */
    right:0%;
    top: 70%;
	}

}

@media(max-width:768px){

	.art{ height:350px;}
	.art img{ width:60%;}


	.hamb{display:block;margin-left:auto}
	.hero-inner{padding:0px 18px 35px}
	.hero h1 i{font-size:54px}
	.hero h1 em{font-size:52px}
	.hero h1 strong{font-size:38px}
	.hinfo{display:block}
	.hinfo div{margin-bottom:6px}
	.blob{width:270px;height:240px}
	.section{padding:58px 18px}
	.photos{grid-template-columns:1fr}
	.photos img:not(:first-child){display:none}
	.cards.six {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
	.cards.five{grid-template-columns:repeat(2,1fr)}
	.days{grid-template-columns:1fr}
	.audience{grid-template-columns:1fr}
	.reserve p{letter-spacing:-0.5px;}

	.venue{
        display:grid;
        grid-template-columns:1fr;
        gap:15px;
        width:100%;
        max-width:100%;
        min-width:0;
    }

    .venue > img{
        width:100%;
        max-width:100%;
        height:auto;
        margin:0 auto;
    }

}





@media(max-width:650px){

	#wrap {background:url(/images/kyfesta/content/mvisual_bg2.jpg) no-repeat 50% 111px;}

	.art{ height:250px;}
	.art img{ width:60%;}

}



@media(max-width:450px){

 .hero-logo .ky{font-size:80px}
 .hero-logo .festa{font-size:80px}
 .hero-logo .year{font-size:48px}
 .slogan{font-size:20px}
.art{  height:230px;}
.art img{width:77%;}
}