Watch Hearts2Hearts originals, variety shows, behind-the-scenes content, guest appearances, performances, and more all in one place.

Hearts2Hearts Original

Variety

Music Videos

Performances

Music Show

Miscellaneous

window.addEventListener("scroll", function () { const btn = document.getElementById("scroll-to-top"); if (!btn) return; if (document.documentElement.scrollTop > 200) { btn.style.display = "block"; } else { btn.style.display = "none"; } });

Cast:

Genres:

Episode List
const interviewsnradioSeries={ title:"Interviews & Radio", year:"2025", rating:"13+", language:"ENG SUB", description:"A collection of interviews, radio broadcasts, and promotional appearances featuring Hearts2Hearts across various Korean and international media.", cast:"Carmen, Jiwoo, Yuha, Stella, Juun, A-na, Ian, Ye-on", genres:"Interview • Radio" }; const interviewsnradioEpisodes=[ { title:"[FULL/SUB+] EP#237 집중💛 아돌라에 하투하 나옵니탱🍋|아이돌 라디오(IDOL RADIO) 시즌4|MBC 260708 방송", duration:"1h 56m", id:"Ta0Rem7MXoo" }, { title:"[FULL] 하츠투하츠의 새콤달콤한 매력에 빠질 준비 되셨나요?🍋 청량하고 상큼한 Hearts2Hearts(하츠투하츠) 보는 라디오 | 12시엔 주현영 | 260624", duration:"36m", id:"uYK1zsKiR8c" }, { title:"볼륨 초대석 : 최효정의 비밀정원 with 하츠투하츠(Hearts2Hearts) full ver. / [오마이걸 효정의 볼륨을 높여요] | KBS 260623 방송", duration:"39m", id:"cnSlVfZHsbo" }, { title:"Global Spin Live: Hearts2Hearts", duration:"48m", id:"ub_9CPk5aEI" }, { title:"(ENG) 퇴근을 건 밸런스게임 시작합니다 💨 하츠투하츠 지우&주은 탈출 가능? | Hearts2Hearts 지우&주은 | 퇴근파서블 | IDOL RADIO UNIVERSE", duration:"3m", id:"n1D7uVdh_HE" }, { title:"Hearts2Hearts 하츠투하츠 メンバーが日本語で自己紹介&特技を披露!話題曲 'RUDE!' の“ナレーションチャレンジ”生パフォーマンスも【めざましテレビ未公開インタビュー】", duration:"10m", id:"lnBKV0_wiZs" }, { title:"Hearts2Hearts ke Jakarta, Seru Jadi Reporter hingga Main Angklung", duration:"39m", id:"2Y3ECktDlyk" }, { title:"Hearts2Hearts Talk North America Tour, Debut Life, 'RUDE!', and What's Next in 2026", duration:"14m", id:"eZkr63kyqfc" }, { title:"라이징 고수 with 하츠투하츠 / [박명수의 라디오쇼] | KBS 260306 방송", duration:"34m", id:"mUuAqnZoTqk" }, { title:"[FULL] 하츄들 모여라~🙌🏻 스포왕에 💗우주즈💗 등장! | 스포왕 고영배 | MBC 260301 방송", duration:"1h 3m", id:"ErsxVS1MqUQ" }, { title:"💗 스텔라 & 유하 💕 | 하츠투하츠(Hearts2Hearts) | 프로듀스1077 | 배성재의 텐 | 20260226", duration:"1h 13m", id:"FmTfEffk_qs" }, { title:"(ENG) 소녀들의 웃음에 FOCUS할 시간🩵 오늘 아침에 등장한 ✨하츠투하츠✨ 비하인드 | Hearts2Hearts | 오늘 아침 윤상입니다 | BEHIND Mhz", duration:"7m", id:"COBb2_LZ7JM" }, { title:"[FULL] ✨하츠투하츠✨ FOCUS 할 수 밖에 없는 소녀들의 오늘 아침 첫 등장🎶🩷 | 오늘 아침 윤상입니다 | MBC 251023 방송", duration:"1h 3m", id:"aJDmODZxVm0" }, { title:"[FULL] 온 세상을 ✨집중✨시킬 8명의 소녀들 💕하츠투하츠(Hearts2Hearts)보는 라디오 | 웬디의 영스트리트 | 251021", duration:"41m", id:"RQXx-kN7ZMs" }, { title:"Hearts2Hearts Talks Performing At Wango Tango, Debut Track 'The Chase' & More!", duration:"5m", id:"yIIV-Wkoodw" }, { title:"[INTERVIEW] Hearts2Hearts Interview with #ChannelK #KRazeeTalks", duration:"6m", id:"_KWaatRaGDM" }, { title:"[FULL] 정희에 갓기 요정들 강림‼️ ✨하츠투하츠✨를 더 알고 싶어💖 | 정오의 희망곡 김신영입니다 | MBC 250304 방송", duration:"57m", id:"8oDlOCB5s6A" }, { title:"가광 초대석, 누구세요? with Hearts2Hearts(하츠투하츠) full ver. / [이은지의 가요광장] | KBS 250307 방송", duration:"37m", id:"E42V6pSPWBw" } ]; const interviewsnradioPlayer=document.querySelector(".interviewsnradio-player"); const interviewsnradioList=document.querySelector(".interviewsnradio-list"); document.querySelector(".interviewsnradio-title").textContent=interviewsnradioSeries.title; document.querySelector(".interviewsnradio-year").textContent=interviewsnradioSeries.year; document.querySelector(".interviewsnradio-rating").textContent=interviewsnradioSeries.rating; document.querySelector(".interviewsnradio-count").textContent=interviewsnradioEpisodes.length+" Episodes"; document.querySelector(".interviewsnradio-language").textContent=interviewsnradioSeries.language; document.querySelector(".interviewsnradio-description").textContent=interviewsnradioSeries.description; document.querySelector(".interviewsnradio-cast").textContent=interviewsnradioSeries.cast; document.querySelector(".interviewsnradio-genres").textContent=interviewsnradioSeries.genres; function interviewsnradioLoadEpisode(index){ const episode=interviewsnradioEpisodes[index]; interviewsnradioPlayer.src= "https://www.youtube-nocookie.com/embed/"+episode.id; document.querySelectorAll(".interviewsnradio-card").forEach(function(card,i){ if(i===index){ card.classList.add("active"); }else{ card.classList.remove("active"); } }); } interviewsnradioEpisodes.forEach(function(episode,index){ const card=document.createElement("div"); card.className="interviewsnradio-card"; const number=document.createElement("div"); number.className="interviewsnradio-number"; number.textContent=interviewsnradioEpisodes.length-index; const thumb=document.createElement("img"); thumb.className="interviewsnradio-thumb"; thumb.src="https://i.ytimg.com/vi/"+episode.id+"/hqdefault.jpg"; const text=document.createElement("div"); text.className="interviewsnradio-card-text"; const title=document.createElement("div"); title.className="interviewsnradio-card-title"; title.textContent=episode.title; const duration=document.createElement("div"); duration.className="interviewsnradio-duration"; duration.textContent=episode.duration; text.appendChild(title); text.appendChild(duration); card.appendChild(number); card.appendChild(thumb); card.appendChild(text); card.addEventListener("click",function(){ interviewsnradioLoadEpisode(index); document.querySelector(".interviewsnradio-player-wrap").scrollIntoView({ behavior:"smooth", block:"start" }); }); interviewsnradioList.appendChild(card); }); interviewsnradioLoadEpisode(0); const interviewsnradioTop=document.querySelector(".interviewsnradio-top"); window.addEventListener("scroll",function(){ if(window.scrollY>300){ interviewsnradioTop.classList.add("show"); }else{ interviewsnradioTop.classList.remove("show"); } }); interviewsnradioTop.addEventListener("click",function(){ window.scrollTo({ top:0, behavior:"smooth" }); });

Cast:

Genres:

Episode List
const guestSeries = { title: "Guest Variety Shows", year: "2025", rating: "13+", language: "ENG SUB", description: "A collection of Hearts2Hearts' guest appearances across various YouTube channels, featuring collaborations, interviews, games, talk shows, and special content with other artists and creators.", cast: "Carmen, Jiwoo, Yuha, Stella, Juun, A-na, Ian, Ye-on", genres: "Variety • Talk Show" }; const guestEpisodes = [ { title:"What Acting Advice Would You Give Hearts2Hearts’ JIWOO and YUHA? | Quiet Game Club EP.02", duration:"29m", id:"K8iH7w7piag" }, { id:"nVV2WjTThjE", title:"Heart-to-Heart: Who Will Be the Futsal King? Minho Team vs. Changmin Team Futsal Match", duration:"18m" }, { id:"3VV4sfS5f1w", title:"SM 2nd Gen vs 5th Gen | Choi Minho Takes on Hearts2Hearts (feat. MAX Changmin.) ", duration:"20m" }, { id:"RzcIatCkydc", title:"DMZ와 MZ의 만남 기쁘다!🍓🌴😊| 월간 할머니집 EP.03", duration:"25m" }, { id:"Idogbb3HV9k", title:"하투하는 레몬탱🍋 아맹은 제육탱🌶️[SUB]", duration:"25m" }, { id:"X9PyU8nuosg", title:"하츠투하츠 지우, 유하에게 축구 게임을 할 때 훈수를 둔다면? | 조용한 게임부 EP01", duration:"27m" }, { id:"ZBZ9_MFYg1Y", title:"【배좋좋 ep10】하투하와 지금부터 배구공 탱탱탱! 다 이겨, 하투하 (ENG SUB)", duration:"43m" }, { id:"v66pVw6TR2Q", title:"진실과 거짓의 카오스.. 넷이 모이니 자꾸 양치기 소녀가 되 I 혤's club🍸 ep77 유하 스텔라 이안", duration:"33m" }, { id:"FOyk1d86IAU", title:"I Paid Hearts2Hearts $20 to do E-Trike Karaoke", duration:"2m" }, { id:"R63QAO0YeLY", title:"[SUB] 하투하 부모님도 아닌데 카네이션 단 기분이 되 ✿ㅣ추카추카추 EP.23 하츠투하츠 편 #김희철 #하츠투하츠 #Hearts2Hearts", duration:"34m" }, { id:"oJyfRAGj89c", title:"DIY MIRROR CLAY with Hearts2Hearts 🩵 | Bikin Cermin Aesthetic", duration:"20m" }, { id:"1kEeCX1MLWc", title:"HEARTS2HEARTS JADI ANAK MAGANG DI MANTAPPU CORP!? BELAJAR BAHASA GAUL😂", duration:"27m" }, { id:"P8FDMruoUdg", title:"[SUB] 칼군무 그룹? ‘하루’면 충분한데요 🤭 | Ep.43 Hearts2Hearts | 연습실 바다쌤", duration:"19m" }, { id:"LhQSxRc8D8E", title:"미물 아니야~ 예쁜 누나쟈나~💕 | 하츠투하츠 이안&스텔라 | 콜미베이비 EP.22", duration:"22m" }, { id:"Ie8XeanwG6g", title:"(ENG) 가챠 뽑자 난 다 궁금해🩵 민서 동갑 친구 하츠투하츠(Hearts2Hearts) 에이나X이안이랑 데이트했습니다 | 할명수 ep.277", duration:"17m" }, { id:"czcsP53TVF8", title:"\"감자와 원숭이의 만남\"ㅣEP.12 하츠투하츠(Hearts2Hearts)ㅣ미미미누의 방구석 분석", duration:"35m" }, { id:"LMvtEyKTLEA", title:"[SUB] 장기자랑으로 승부보는 신개념 요리 대결 [덕밥집 EP.10 Hearts2Hearts]", duration:"28m" }, { id:"tcSf_AgA2gg", title:"Main Ular Tangga Raksasa Bareng Hearts2Hearts", duration:"23m" }, { id:"JyLrSZaReKs", title:"애교 가득 SM 막내들 등장✨모두 다 하츠투하츠에게 집중₊·—♥지우&유하&스텔라&주은ㅣ슬기네 사진관", duration:"22m" }, { id:"JeIx_j4UI6M", title:"[sub] 'SPAGHETTI'🍝로 돌아온 은채💕와 햇살캐🌻🌴빅핸즈의 케미 모두 집.중 FOCUS🔍 | 은채의 스타일기💫 외전 : 은채의 스파게티 | Hearts2Hearts", duration:"35m" }, { id:"BTECqsnp3IU", title:"[출장 문쌤] 신인 아이돌 기강 잡으러 갔습니다 (EP.1 Hearts2Hearts)", duration:"17m" }, { id:"NvVBrNAjmRg", title:"둘! 셋! 하츠투하츠 난 다 궁금해 | 단순노동·하츠투하츠·엄태구·카르멘·예온", duration:"26m" }, { id:"JXo1HGntdjA", title:"대기업 신인 예쁘긴 예쁘네 💖ㅣ에스엠 알바ㅣ워크돌ㅣWayV, 하츠투하츠, 빌리 츠키", duration:"18m" }, { id:"pf9j1V9zf_w", title:"[ENG] 잘 봐, 이게 SM 데뷔 100일 차의 예능 STYLE이야 / 밥사효2 EP.03 하츠투하츠(Hearts2Hearts) 편", duration:"26m" } ]; const guestPlayer = document.querySelector(".guest-player"); const guestList = document.querySelector(".guest-list"); document.querySelector(".guest-title").textContent = guestSeries.title; document.querySelector(".guest-year").textContent = guestSeries.year; document.querySelector(".guest-rating").textContent = guestSeries.rating; document.querySelector(".guest-count").textContent = guestEpisodes.length + " Episodes"; document.querySelector(".guest-language").textContent = guestSeries.language; document.querySelector(".guest-description").textContent = guestSeries.description; document.querySelector(".guest-cast").textContent = guestSeries.cast; document.querySelector(".guest-genres").textContent = guestSeries.genres; function guestLoadEpisode(index){ const episode = guestEpisodes[index]; guestPlayer.src = "https://www.youtube-nocookie.com/embed/" + episode.id; document.querySelectorAll(".guest-card").forEach(function(card,i){ if(i===index){ card.classList.add("active"); }else{ card.classList.remove("active"); } }); } guestEpisodes.forEach(function(episode,index){ const card = document.createElement("div"); card.className = "guest-card"; const number = document.createElement("div"); number.className = "guest-number"; number.textContent = guestEpisodes.length - index; const thumb = document.createElement("img"); thumb.className = "guest-thumb"; thumb.src = "https://i.ytimg.com/vi/" + episode.id + "/hqdefault.jpg"; const text = document.createElement("div"); text.className = "guest-card-text"; const title = document.createElement("div"); title.className = "guest-card-title"; title.textContent = episode.title; const duration = document.createElement("div"); duration.className = "guest-duration"; duration.textContent = episode.duration; text.appendChild(title); text.appendChild(duration); card.appendChild(number); card.appendChild(thumb); card.appendChild(text); card.addEventListener("click", function(){ guestLoadEpisode(index); document.querySelector(".guest-player-wrap").scrollIntoView({ behavior:"smooth", block:"start" }); }); guestList.appendChild(card); }); guestLoadEpisode(0); const guestTop = document.querySelector(".guest-top"); window.addEventListener("scroll", function(){ if(window.scrollY > 300){ guestTop.classList.add("show"); }else{ guestTop.classList.remove("show"); } }); guestTop.addEventListener("click", function(){ window.scrollTo({ top:0, behavior:"smooth" }); });

Cast:

Genres:

Episode List
const soloVarietySeries = { title: "Solo Variety Shows", year: "2025", rating: "13+", language: "ENG SUB", description: "A collection of third-party variety shows centered exclusively on Hearts2Hearts, released across various YouTube channels outside their official account.", cast: "Carmen, Jiwoo, Yuha, Stella, Juun, A-na, Ian, Ye-on", genres: "Variety • Comedy" }; const soloVarietyEpisodes = [ { title:"[SUB] 하투하한테 고민상담 맡겼더니...🍋 \"이겨내\" VS \"살려줘\" 😱|EP.3 Hearts2Hearts (하츠투하츠)|아이돌 상담소 | IDOL RADIO UNIVERSE", duration:"15m", id:"ihB2Fdv9mcI" }, { id:"9Sux2icnFhY", title:"(Behind) Hearts2Hearts(하츠투하츠) 'Lemon Tang' | MOVE TO PERFORMANCE (SUB)", duration:"10m" }, { id:"rod8lAguJ6Q", title:"특종⚠️ 학교에서 포착된 인간 레몬🍋 하츠투하츠 | 비밀 전학생 시즌2 Ep.06", duration:"32m" }, { id:"xnvGRflUUlA", title:"[ENG/IND] Hearts2Hearts JIWOO & CARMEN | Interviewed to Bring Cultures Together | Future Interviewer 07", duration:"15m" }, { id:"c7syefpbfiY", title:"Hearts2Hearts Plays Who's Who", duration:"13m" }, { id:"KS2eI_U2aNY", title:"퀸은 울지 않ㅇr..☆ 하츠투하츠의 팔씨름 잔치(가 아니라 퇴근 잔치 💨)ㅣ스포티파이 아이돌잔치", duration:"16m" }, { id:"Vg905CNBuDI", title:"[아두럽] 수상할 정도로 개그 욕심이 많은 걸그룹?🤭 하츠투하츠가 아두럽에서 제대로 무리하고 감💦 | IDOL DKDK CLUB - Hearts2Hearts (SUB)", duration:"34m" }, { id:"Qlp1XRoDEnM", title:"Hearts2Hearts(하츠투하츠)의 짜릿한 셔플쇼 너무 좋잖아 🍋ㅣ스포티파이 K-Pop ON! RECORD", duration:"26m" }, { id:"iuSOehwZKMA", title:"[SUB] 케이팝 씹어 먹을 하츠투하츠 후배 그룹(?)의 등장이라… (feat. 하이나믹듀오, 워터에잇) | 아이돌 인간극장", duration:"46m" }, { id:"foXDiu_wDRE", title:"Hearts2Hearts Tries & Rates Viral Foods!", duration:"27m" }, { id:"1YM5OlDFHno", title:"How Well Does Hearts2Hearts Know K-Pop?", duration:"20m" }, { id:"9o-MKtl4k80", title:"Hearts2Hearts Tries American Foods For The First Time | Buzz Bites", duration:"12m" }, { id:"HaOUfosT_v8", title:"[SUB] 마피아댄스하다가 공식 사과한 하츠투하츠?!🤣 | Hearts2Hearts의 마피아댄스 | MAFIA DANCEㅣ딩고뮤직ㅣdingo Music", duration:"19m" }, { id:"XlxzbmAVS2s", title:"[SUB] EP.57-2 Hearts2Hearts | 나 안.긁.혔.어.(🙀) 귀가 흔들리지만 제 의지가 아닙니다 | 돌박이일 하츠투하츠 겨울방학 스페셜 투어 2탄 [4K]", duration:"60m" }, { id:"jfZQtuXTJ4E", title:"[SUB] EP.57-1 Hearts2Hearts | 랜플댄? 질 수 없지! 하투하배 4:4 댄스 배틀~(˘▾˘)~ | 돌박이일 하츠투하츠 겨울방학 스페셜 투어 1탄 [4K]", duration:"45m" }, { id:"pSf4I7qNcWU", title:"[#2025MAMA] 같이 올리브영 가자 네 PACK이 참 궁금해✧˖:🎀: ✧˖° | Hearts2Hearts (하츠투하츠)", duration:"16m" }, { id:"14BvvGZzGsQ", title:"신인 여돌 똥군기 잡고 왔음 💩 (하투하: 꺄르르)ㅣ에버랜드 사육사ㅣ워크돌ㅣ하츠투하츠 이안, 지우, 에이나", duration:"16m" }, { id:"VOcXrGqE1do", title:"[SUB] 프로 아이돌 하츠투하츠가 머리카락 컨트롤하는법 알려드림🤣 | 아이돌 인간극장", duration:"31m" }, { id:"G-lM1kFWj5s", title:"[CC] 보는 순간 FOCUS될 Hearts2Hearts(하츠투하츠)의 프로필 💖ㅣSpotify Super Rookie", duration:"14m" }, { id:"s885zN6Jq3E", title:"(CC) Hearts2Hearts + 1 K-pop quiz = 0 FOCUS 😂 | This or That I Hearts2Hearts", duration:"14m" }, { id:"r8wSsCMpnZ8", title:"[ENG] ???: 착하게 살아서 좋은 말만 가득할 것 같아요😆 웃음 가득한 Hearts2Hearts의 익명 채팅방 | SECRET CHATㅣ딩고뮤직ㅣdingo Music", duration:"19m" }, { id:"PnvEADA-wuQ", title:"[SUB] 소녀들 수련회 방해하면 교관님 저숭라라 가죠 | 돌들의침묵 | Hearts2Hearts(하츠투하츠) 'STYLE'", duration:"19m" }, { id:"gfboEqd70B8", title:"(CC) Which Hogwarts house fits each H2H member?🪄 🧙‍♂️ | Question Parade | Hearts2Hearts", duration:"13m" }, { id:"cO79GxP8v2I", title:"강당에서 노래 듣는데 하츠투하츠가 깜짝 등장한다면?! l [딩고 어택] 학교편 with 하츠투하츠 (Hearts2Hearts)", duration:"16m" }, { id:"Sb0HlJQGdc0", title:"Hearts2Hearts Play Know or No!", duration:"14m" }, { id:"l2wgYbbCV9I", title:"[Sub] 가방에서 이게 왜 나와...?🤔 하츠투하츠의 LIFE 'STYLE' 탐구👀 | 슬기로운 학급회의 | Hearts2Hearts", duration:"21m" }, { id:"C0XPAg1wPAk", title:"K-pop idols caught lying... on purpose? 🚨 | Jinjja Forreal | Hearts2Hearts", duration:"9m" }, { id:"I0Yh_mcmNn8", title:"[ENG/ID] 하츠투하츠 대체 이걸 왜 가져오셨어요?💦 카르멘의 멤버 공유(?)템 공개! 브레이크 없는 이안의 텐션으로 최애템 모두 털고 컴백하실게요~ by W Korea", duration:"10m" }, { id:"bFkGRnYVqpM", title:"MBTI ‘T’ 다량 보유 그룹, 하츠투하츠의 프로필 최.초.공.개.", duration:"11m" }, { id:"pX9T3fBfAlE", title:"(Behind) Hearts2Hearts(하츠투하츠) 'The Chase' | STUDIO CHOOM ORIGINAL (ENG SUB)", duration:"16m" }, { id:"008r2I5duAg", title:"[SUB] 우리 벌써 1주년이야...🥺 하츠투하츠 컴백 기념 비하인드 대방출✨ | 아이돌 인간극장", duration:"27m" }, { id:"tUOESvUHIuA", title:"[SUB] 🌳위키에 ‘하츠투하츠’ 검색하고 깜짝 놀란 귀염뽀짝 갓기들 | 아이돌 인간극장", duration:"34m" } ]; const soloVarietyPlayer = document.querySelector(".soloVariety-player"); const soloVarietyList = document.querySelector(".soloVariety-list"); document.querySelector(".soloVariety-title").textContent = soloVarietySeries.title; document.querySelector(".soloVariety-year").textContent = soloVarietySeries.year; document.querySelector(".soloVariety-rating").textContent = soloVarietySeries.rating; document.querySelector(".soloVariety-count").textContent = soloVarietyEpisodes.length + " Episodes"; document.querySelector(".soloVariety-language").textContent = soloVarietySeries.language; document.querySelector(".soloVariety-description").textContent = soloVarietySeries.description; document.querySelector(".soloVariety-cast").textContent = soloVarietySeries.cast; document.querySelector(".soloVariety-genres").textContent = soloVarietySeries.genres; function soloVarietyLoadEpisode(index){ const episode = soloVarietyEpisodes[index]; soloVarietyPlayer.src = "https://www.youtube-nocookie.com/embed/" + episode.id; document.querySelectorAll(".soloVariety-card").forEach(function(card,i){ if(i===index){ card.classList.add("active"); }else{ card.classList.remove("active"); } }); } soloVarietyEpisodes.forEach(function(episode,index){ const card = document.createElement("div"); card.className = "soloVariety-card"; const number = document.createElement("div"); number.className = "soloVariety-number"; number.textContent = soloVarietyEpisodes.length - index; const thumb = document.createElement("img"); thumb.className = "soloVariety-thumb"; thumb.src = "https://i.ytimg.com/vi/" + episode.id + "/hqdefault.jpg"; const text = document.createElement("div"); text.className = "soloVariety-card-text"; const title = document.createElement("div"); title.className = "soloVariety-card-title"; title.textContent = episode.title; const duration = document.createElement("div"); duration.className = "soloVariety-duration"; duration.textContent = episode.duration; text.appendChild(title); text.appendChild(duration); card.appendChild(number); card.appendChild(thumb); card.appendChild(text); card.addEventListener("click", function(){ soloVarietyLoadEpisode(index); document.querySelector(".soloVariety-player-wrap").scrollIntoView({ behavior:"smooth", block:"start" }); }); soloVarietyList.appendChild(card); }); soloVarietyLoadEpisode(0); const soloVarietyTop = document.querySelector(".soloVariety-top"); window.addEventListener("scroll", function(){ if(window.scrollY > 300){ soloVarietyTop.classList.add("show"); }else{ soloVarietyTop.classList.remove("show"); } }); soloVarietyTop.addEventListener("click", function(){ window.scrollTo({ top:0, behavior:"smooth" }); });

note: video is available for this episode! click it to open it on spotify, as spotify doesn't support video embeds.


Cast:

Genres:

const gtg2Series = { title: "Gal to Gal #2", year: "2026", rating: "13+", language: "ENG SUB", description: "Hearts2Hearts try on gyaru makeup and venture around Tokyo Tower!", cast: "Carmen, A-na, Ian, Ye-on", genres: "Variety" }; const gtg2Episode = { id:"bzzPb1RJQDk" }; const gtg2Player = document.querySelector(".gtg2-player"); document.querySelector(".gtg2-title").textContent = gtg2Series.title; document.querySelector(".gtg2-year").textContent = gtg2Series.year; document.querySelector(".gtg2-rating").textContent = gtg2Series.rating; document.querySelector(".gtg2-count").textContent = "1 Episode"; document.querySelector(".gtg2-language").textContent = gtg2Series.language; document.querySelector(".gtg2-description").textContent = gtg2Series.description; document.querySelector(".gtg2-cast").textContent = gtg2Series.cast; document.querySelector(".gtg2-genres").textContent = gtg2Series.genres; gtg2Player.src = "https://www.youtube-nocookie.com/embed/" + gtg2Episode.id; const gtg2Top = document.querySelector(".gtg2-top"); window.addEventListener("scroll", function(){ if(window.scrollY > 300){ gtg2Top.classList.add("show"); }else{ gtg2Top.classList.remove("show"); } }); gtg2Top.addEventListener("click", function(){ window.scrollTo({ top: 0, behavior: "smooth" }); });


Cast:

Genres:

const gtg1Series = { title: "Gal to Gal #1", year: "2026", rating: "13+", language: "ENG SUB", description: "Hearts2Hearts try on gyaru makeup and venture along the streets of Harajuku, Japan!", cast: "Jiwoo, Yuha, Stella, Juun", genres: "Variety" }; const gtg1Episode = { id:"SPx1a4JSqZ8" }; const gtg1Player = document.querySelector(".gtg1-player"); document.querySelector(".gtg1-title").textContent = gtg1Series.title; document.querySelector(".gtg1-year").textContent = gtg1Series.year; document.querySelector(".gtg1-rating").textContent = gtg1Series.rating; document.querySelector(".gtg1-count").textContent = "1 Episode"; document.querySelector(".gtg1-language").textContent = gtg1Series.language; document.querySelector(".gtg1-description").textContent = gtg1Series.description; document.querySelector(".gtg1-cast").textContent = gtg1Series.cast; document.querySelector(".gtg1-genres").textContent = gtg1Series.genres; gtg1Player.src = "https://www.youtube-nocookie.com/embed/" + gtg1Episode.id; const gtg1Top = document.querySelector(".gtg1-top"); window.addEventListener("scroll", function(){ if(window.scrollY > 300){ gtg1Top.classList.add("show"); }else{ gtg1Top.classList.remove("show"); } }); gtg1Top.addEventListener("click", function(){ window.scrollTo({ top: 0, behavior: "smooth" }); });

The Clean Girls' Night in LA

202613+1 EpisodeENG SUB

Hearts2Hearts adventures in Los Angeles!

Cast: Carmen, Jiwoo, Yuha, Stella, Juun, A-na, Ian, Ye-on

Genres: Variety

const tcgnTop=document.querySelector(".tcgn-top"); window.addEventListener("scroll",function(){ if(window.scrollY>300){ tcgnTop.classList.add("show"); }else{ tcgnTop.classList.remove("show"); } }); tcgnTop.addEventListener("click",function(){ window.scrollTo({ top:0, behavior:"smooth" }); });

The Devil Wears Hearts2Hearts

202613+1 EpisodeENG SUB

Hearts2Hearts adventures in New York!

Cast: Carmen, Jiwoo, Yuha, Stella, Juun, A-na, Ian, Ye-on

Genres: Comedy

const tdwhTop=document.querySelector(".tdwh-top"); window.addEventListener("scroll",function(){ if(window.scrollY>300){ tdwhTop.classList.add("show"); }else{ tdwhTop.classList.remove("show"); } }); tdwhTop.addEventListener("click",function(){ window.scrollTo({ top:0, behavior:"smooth" }); });

Introducing Hearts2Hearts Plushies

202613+1 EpisodeENG SUB

Hearts2Hearts introduces their cute mini-mes HeartskkyuHearts!

Cast: Bing Ping, Jjoojebi, Toramui, Stellnyang, Jjuuilien, No Song Ee, Jeong Ddang Kong, Alssong Hamssong

Genres: Comedy

const hkhTop=document.querySelector(".hkh-top"); window.addEventListener("scroll",function(){ if(window.scrollY>300){ hkhTop.classList.add("show"); }else{ hkhTop.classList.remove("show"); } }); hkhTop.addEventListener("click",function(){ window.scrollTo({ top:0, behavior:"smooth" }); });

Cast:

Genres:

Episode List
const chbSeries = { title: "Chat Hearts2Hearts Behind", year: "2025", rating: "13+", language: "NO SUB", description: "Behind the scenes of Chat Hearts2Hearts!", cast: "Carmen, Jiwoo, Yuha, Stella, Juun, A-na, Ian, Ye-on", genres: "Comedy• Variety" }; const chbEpisodes = [ { id:"tYXmPAJTIQk", title:"공기 놀이+야자타임+명장면 퀴즈까지 알차게 즐긴 하투하 스쿨❣️ | 비하인드 | 웨이브", duration:"10m" }, { id:"V1QvW_2evGk", title:"평화로운 제주도🍊에서 펼쳐진 불꽃 튀는 아이 엠 그라운드 대결?!💥 | 비하인드 | 웨이브", duration:"9m" }, { id:"y-RgzVKSfd4", title:"폐교 체험?! 별점 2.5점 ★ ★ ☆ 드립니다! 쫄보들의 허세 작렬 미션 후기 | 비하인드 | 웨이브", duration:"5m" }, { id:"dzDZaUPJ7Ns", title:"혹시,,, 제일 무서웠던 언니는? 😲 버스 안에서는 진실게임이 국룰 | 비하인드 | 웨이브", duration:"7m" }, { id:"X9Yayx6JxJA", title:"지우X이안 크로스!🙌 이대로 미션 실패...?! 쉽지 않은 예능의 길💦 | 비하인드 | 웨이브", duration:"10m" }, { id:"qXK8oLhpLGg", title:"최초 공개! SM에서는 OO OO 수업을 듣는다?! H2H에게 듣는 연습생 썰! | 비하인드 | 웨이브", duration:"6m" }, { id:"23FLkcpu4s8", title:"하츠투하츠는 이동 시간에 뭘 하냐면요,,, ※짝꿍 언니 칭찬하기 바쁨 주의※ 🚗 | 비하인드 | 웨이브", duration:"10m" } ]; const chbPlayer = document.querySelector(".chb-player"); const chbList = document.querySelector(".chb-list"); document.querySelector(".chb-title").textContent = chbSeries.title; document.querySelector(".chb-year").textContent = chbSeries.year; document.querySelector(".chb-rating").textContent = chbSeries.rating; document.querySelector(".chb-count").textContent = chbEpisodes.length + " Episodes"; document.querySelector(".chb-language").textContent = chbSeries.language; document.querySelector(".chb-description").textContent = chbSeries.description; document.querySelector(".chb-cast").textContent = chbSeries.cast; document.querySelector(".chb-genres").textContent = chbSeries.genres; function chbLoadEpisode(index){ const episode = chbEpisodes[index]; chbPlayer.src = "https://www.youtube-nocookie.com/embed/" + episode.id; document.querySelectorAll(".chb-card").forEach(function(card,i){ if(i===index){ card.classList.add("active"); }else{ card.classList.remove("active"); } }); } chbEpisodes.forEach(function(episode,index){ const card=document.createElement("div"); card.className="chb-card"; const number=document.createElement("div"); number.className="chb-number"; number.textContent = chbEpisodes.length - index; const thumb=document.createElement("img"); thumb.className="chb-thumb"; thumb.src="https://i.ytimg.com/vi/"+episode.id+"/hqdefault.jpg"; const text=document.createElement("div"); text.className="chb-card-text"; const title=document.createElement("div"); title.className="chb-card-title"; title.textContent=episode.title; const duration=document.createElement("div"); duration.className="chb-duration"; duration.textContent=episode.duration; text.appendChild(title); text.appendChild(duration); card.appendChild(number); card.appendChild(thumb); card.appendChild(text); card.addEventListener("click",function(){ chbLoadEpisode(index); document.querySelector(".chb-player-wrap").scrollIntoView({ behavior:"smooth", block:"start" }); }); chbList.appendChild(card); }); chbLoadEpisode(0); const chbTop = document.querySelector(".chb-top"); window.addEventListener("scroll", function(){ if(window.scrollY > 300){ chbTop.classList.add("show"); }else{ chbTop.classList.remove("show"); } }); chbTop.addEventListener("click", function(){ window.scrollTo({ top:0, behavior:"smooth" }); });

const chatheartsEpisodes=[ { title:"Episode 1", url:"https://kisskh.nl/Drama/Chat-Hearts2Hearts/Episode-1?id=10694&ep=182596&page=0&pageSize=100" }, { title:"Episode 2", url:"https://kisskh.nl/Drama/Chat-Hearts2Hearts/Episode-2?id=10694&ep=182600&page=0&pageSize=100" }, { title:"Episode 3", url:"https://kisskh.nl/Drama/Chat-Hearts2Hearts/Episode-3?id=10694&ep=182604&page=0&pageSize=100" }, { title:"Episode 4", url:"https://kisskh.nl/Drama/Chat-Hearts2Hearts/Episode-4?id=10694&ep=182607&page=0&pageSize=100" }, { title:"Episode 5", url:"https://kisskh.nl/Drama/Chat-Hearts2Hearts/Episode-5?id=10694&ep=182612&page=0&pageSize=100" }, { title:"Episode 6", url:"https://kisskh.nl/Drama/Chat-Hearts2Hearts/Episode-6?id=10694&ep=182616&page=0&pageSize=100" }, { title:"Episode 7", url:"https://kisskh.nl/Drama/Chat-Hearts2Hearts/Episode-7?id=10694&ep=182619&page=0&pageSize=100" }, { title:"Episode 8", url:"https://kisskh.nl/Drama/Chat-Hearts2Hearts/Episode-8?id=10694&ep=182624&page=0&pageSize=100" }, { title:"Episode 9", url:"https://kisskh.nl/Drama/Chat-Hearts2Hearts/Episode-9?id=10694&ep=182627&page=0&pageSize=100" }, { title:"Episode 10", url:"https://kisskh.nl/Drama/Chat-Hearts2Hearts/Episode-10?id=10694&ep=182630&page=0&pageSize=100" }, { title:"Episode 11", url:"https://kisskh.nl/Drama/Chat-Hearts2Hearts/Episode-11?id=10694&ep=182635&page=0&pageSize=100" }, { title:"Episode 12", url:"https://kisskh.nl/Drama/Chat-Hearts2Hearts/Episode-12?id=10694&ep=182637&page=0&pageSize=100" } ]; const chatheartsWrap=document.getElementById("chathearts-player-wrap"); const chatheartsList=document.querySelector(".chathearts-list"); document.querySelector(".chathearts-title").textContent="Chat Hearts2Hearts"; document.querySelector(".chathearts-year").textContent="2025"; document.querySelector(".chathearts-language").textContent="ENG SUB"; function chatheartsLoadEpisode(index){ const episode=chatheartsEpisodes[index]; chatheartsWrap.innerHTML=""; const iframe=document.createElement("iframe"); iframe.className="chathearts-player"; iframe.src=episode.url; iframe.frameBorder="0"; iframe.scrolling="no"; iframe.allow="autoplay; fullscreen"; iframe.allowFullscreen=true; chatheartsWrap.appendChild(iframe); document.querySelectorAll(".chathearts-card").forEach(function(card,i){ if(i===index){ card.classList.add("active"); }else{ card.classList.remove("active"); } }); } chatheartsEpisodes.forEach(function(episode,index){ const card=document.createElement("div"); card.className="chathearts-card"; const number=document.createElement("div"); number.className="chathearts-number"; number.textContent=index+1; const thumb=document.createElement("img"); thumb.className="chathearts-thumb"; thumb.src="https://icdn.kshow123.net/cover/chat-hearts2hearts.jpg"; const text=document.createElement("div"); text.className="chathearts-card-text"; const title=document.createElement("div"); title.className="chathearts-card-title"; title.textContent=episode.title; text.appendChild(title); card.appendChild(number); card.appendChild(thumb); card.appendChild(text); card.addEventListener("click",function(){ chatheartsLoadEpisode(index); chatheartsWrap.scrollIntoView({ behavior:"smooth", block:"start" }); }); chatheartsList.appendChild(card); }); chatheartsLoadEpisode(0); const chatheartsTop=document.querySelector(".chathearts-top"); window.addEventListener("scroll",function(){ if(window.scrollY>300){ chatheartsTop.classList.add("show"); }else{ chatheartsTop.classList.remove("show"); } }); chatheartsTop.addEventListener("click",function(){ window.scrollTo({ top:0, behavior:"smooth" }); });


Cast:

Genres:

Episode List
const vlogSeries = { title: "Vlogs", year: "2025", rating: "13+", language: "ENG SUB", description: "VLOGS is a personal vlog-style content series from Hearts2Hearts that follows the members through vacations, trips, daily outings, and casual moments in their everyday lives.", cast: "Carmen, Jiwoo, Yuha, Stella, Juun, A-na, Ian, Ye-on", genres: "Vlog • Reality" }; const vlogEpisodes = [ { id:"sw9LHzw8WRM", title:"주은이 가족 여행 브이로그 (With.르멘카)ㅣ춘천 닭갈비 먹방・하늘이 재롱잔치・응원봉 언박싱・엄마랑 쇼핑데이・강릉 동해 바다・실내 스파ㅣ어느 주은 날", duration:"17m" }, { id:"x7aqs0kFNpM", title:"이안네 본가 & 펜션 가족 여행🚘🏠 | 셀프 메이크업 ・ 본가 룸투어 ・ 연습생 시절 추억 공개 ・ 부모님과 드라이브 ・ 수영 다이빙 ・ 불멍 | 이안에 너 있다", duration:"18m" }, { id:"fDwdwt3vC2k", title:"숙소 & 본가 브이로그🏠 | 송정 해수욕장 구경 ・ 밀면 한 그릇 ・ 울산역 방문 ・ 아버지와 볼링 데이트 ・ 어머니와 추억의 세차장 | 방가방가예온이", duration:"20m" }, { id:"RE0k_4Ip_ns", title:"🎢오사카 휴가 브이로그🎡 | Get Ready With Me・게 샤브샤브 먹방・유니버설 스튜디오・선물 Unboxing | Twinkle Little STELLA", duration:"18m" }, { id:"CL4UlVw4kGE", title:"집에서 보낸 연휴 브이로그🏠ㅣ쌍둥이랑 칸쵸깡 ・ 고양이랑 놀기 ・ 가족들과 호캉스 ・ 사랑 가득 집밥ㅣHSH (HOME SWEET HOME)", duration:"26m" }, { id:"E4eggaqtjr8", title:"NUNGGUIN YAAA!! ٩(ˊᗜˋ*)و 발리 연휴 브이로그🌴 | 인도네시아 음식 먹방 ・ 발리 해변 ・ 팔라벨라 첫 만남(?) | I'M A BALI GIRL𓂃𓇼", duration:"16m" }, { id:"O130JxSAJcE", title:"🌊괌 가족여행 다녀왔지우🌊 | 스노클링 ・ 호텔 수영 ・ KMART 쇼핑 ・ 기념품 쇼핑 ・ 슈림프 먹방 | Berry Very Me🍓 in GUAM", duration:"24m" }, { id:"cyBc72zeT2A", title:"친구들이랑 즉석 떡볶이 먹고 𓐐𓎩 코인 노래방 가는 ✩♬ ₊˚. 일상 브이로그", duration:"17m" }, { id:"45wZKw60NSY", title:"친구들이랑 VR 게임하고 ⋆˚꩜。 훠궈 먹는 ⟡𓌉𓇋₊˚⊹♡ 일상 브이로그", duration:"20m" } ]; const vlogPlayer = document.querySelector(".vlog-player"); const vlogList = document.querySelector(".vlog-list"); document.querySelector(".vlog-title").textContent = vlogSeries.title; document.querySelector(".vlog-year").textContent = vlogSeries.year; document.querySelector(".vlog-rating").textContent = vlogSeries.rating; document.querySelector(".vlog-count").textContent = vlogEpisodes.length + " Episodes"; document.querySelector(".vlog-language").textContent = vlogSeries.language; document.querySelector(".vlog-description").textContent = vlogSeries.description; document.querySelector(".vlog-cast").textContent = vlogSeries.cast; document.querySelector(".vlog-genres").textContent = vlogSeries.genres; function vlogLoadEpisode(index){ const episode = vlogEpisodes[index]; vlogPlayer.src = "https://www.youtube-nocookie.com/embed/" + episode.id; document.querySelectorAll(".vlog-card").forEach(function(card,i){ if(i===index){ card.classList.add("active"); }else{ card.classList.remove("active"); } }); } vlogEpisodes.forEach(function(episode,index){ const card=document.createElement("div"); card.className="vlog-card"; const number=document.createElement("div"); number.className="vlog-number"; number.textContent = vlogEpisodes.length - index; const thumb=document.createElement("img"); thumb.className="vlog-thumb"; thumb.src="https://i.ytimg.com/vi/"+episode.id+"/hqdefault.jpg"; const text=document.createElement("div"); text.className="vlog-card-text"; const title=document.createElement("div"); title.className="vlog-card-title"; title.textContent=episode.title; const duration=document.createElement("div"); duration.className="vlog-duration"; duration.textContent=episode.duration; text.appendChild(title); text.appendChild(duration); card.appendChild(number); card.appendChild(thumb); card.appendChild(text); card.addEventListener("click",function(){ vlogLoadEpisode(index); document.querySelector(".vlog-player-wrap").scrollIntoView({ behavior:"smooth", block:"start" }); }); vlogList.appendChild(card); }); vlogLoadEpisode(0); const vlogTop = document.querySelector(".vlog-top"); window.addEventListener("scroll", function(){ if(window.scrollY > 300){ vlogTop.classList.add("show"); }else{ vlogTop.classList.remove("show"); } }); vlogTop.addEventListener("click", function(){ window.scrollTo({ top:0, behavior:"smooth" }); });

Cast:

Genres:

Episode List
const dbSeries = { title: "Daily BH2ND", year: "2025", rating: "13+", language: "ENG SUB", description: "Daily BH2ND is a casual behind-the-scenes content series from Hearts2Hearts that follows the members through their daily schedules, fan events, music show promotions, and other activities behind official appearances.", cast: "Carmen, Jiwoo, Yuha, Stella, Juun, A-na, Ian, Ye-on", genres: "Behind the Scenes • Variety" }; const dbEpisodes = [ { title:"음료 잘 사주는 예쁜 언니ㅋ✧˖°. | Hearts2Hearts 하츠투하츠 'Lemon Tang' Music Show BH2ND #1", duration:"32m", id:"3Dq4de1J6MA" }, { id:"9ZAdhZosHEo", title:"Hearts2Hearts 하츠투하츠 'Lemon Tang' Music Show BH2ND #1", duration:"19m" }, { id:"XuF2l1-1bmQ", title:"저 원래 초미녀랑 낯가리거든요? (^᎑^๑)/♡ | Hearts2Hearts 하츠투하츠 'Lemon Tang' Challenge BH2ND", duration:"16m" }, { id:"bOYjVrHpTN4", title:"우리 하츄들 덕분에 행복했어요! (ෆ˙ᵕ˙ෆ)♡ | Hearts2Hearts 하츠투하츠 FAN SIGN EVENT in BANGKOK BH2ND", duration:"19m" }, { id:"AQMnmqiQG28", title:"이 순간을 오래 기억할게요♡ | Hearts2Hearts 하츠투하츠 SMTOWN LIVE 2026 in NEW YORK BH2ND", duration:"17m" }, { id:"8kjGctEsPLw", title:"하츠투하츠와 하츄의 STYLE ⋆𐙚₊˚⊹♡ | Hearts2Hearts 하츠투하츠 SMTOWN LIVE 2026 in PARIS BH2ND", duration:"20m" }, { id:"LZZ6cV8PdWg", title:"하츄를 만나면 저희는 늘 행복해져요 (˶ᵔ ᵕ ᵔ˶)♡ | Hearts2Hearts 하츠투하츠 FAN SIGN EVENT in OSAKA BH2ND", duration:"18m" }, { id:"FixMQXZWzuw", title:"보여줄게 완전히 달라진 나 ✧.* | Hearts2Hearts 하츠투하츠 SMTOWN LIVE 2026 in L.A. BH2ND", duration:"19m" }, { id:"2H4rMbgBfAY", title:"우리 진짜 예쁘다~ (๑˃ᴗ˂)ﻭ | Hearts2Hearts 하츠투하츠 2026 KCON JAPAN BH2ND", duration:"17m" }, { id:"6ow4_WUGUpw", title:"저희 첫 단독 팬미팅 잘 다녀오겠습니다!✈️ | Hearts2Hearts 하츠투하츠 FANMEETING 'HEARTS 2 HOUSE' in JAPAN BH2ND", duration:"24m" }, { id:"Q2_3r4HseN0", title:"그냥 친구? 아니! 마음이 통하는 하투하와 하츄! ( ˶ˆᗜˆ˵ ) | Hearts2Hearts 하츠투하츠 FANMEETING 'HEARTS 2 HOUSE' D-DAY BH2ND", duration:"34m" }, { id:"fyNZx1g0cnI", title:"진짜 웃기다 우린 평생 함께야 ٩(๑>∀<๑)۶ | Hearts2Hearts 하츠투하츠 FANMEETING 'HEARTS 2 HOUSE' PRACTICE BH2ND", duration:"21m" }, { id:"-wPMTvc1o10", title:"하츠투하츠가 모범생인 이유? (*ˊᵕˋo📖o | Hearts2Hearts 하츠투하츠 FANMEETING 'HEARTS 2 HOUSE' VCR BH2ND", duration:"16m" }, { id:"Y-p6I1ZEN3M", title:"우리 추억 많이 많이 쌓자, 하츄들아♡ | Hearts2Hearts 하츠투하츠 Fan Sign Event in Tokyo BH2ND", duration:"18m" }, { id:"UT-x2ImpDF0", title:"가볼까? 야생의 동물들처럼 c(。⍤⌯⍤。⃰)ͽ ₍。☌ ·̫ ☌。₎ | Hearts2Hearts 하츠투하츠 'RUDE!' Music Show BH2ND #2", duration:"29m" }, { id:"ajX2KXe4uIY", title:"루: 루드!!! 드: 드가자아아아앍!!!ᯓ★.ᐟ◟( ˃̶͈◡ ˂̶͈ )◞ | Hearts2Hearts 하츠투하츠 'RUDE!' Music Show BH2ND #1", duration:"32m" }, { id:"TVJ474K1Wpk", title:"진짜 감.동. 받았습니다(ˊᵒ̴̶̷̤ ꇴ ᵒ̴̶̷̤ˋ) | Hearts2Hearts 하츠투하츠 SMTOWN LIVE 2025-26 in FUKUOKA BH2ND", duration:"26m" }, { id:"_Lx7isLHT5g", title:"2026년도 열심히 찢어보겠습니아옹〜ᰔ⊹ ࣪ ˖ | Hearts2Hearts 하츠투하츠 2025 MBC 가요대제전 BH2ND #2", duration:"20m" }, { id:"d5rwUz_SOM8", title:"저희는 미녀모션이에요! 𓂃ෆ˚ | Hearts2Hearts 하츠투하츠 2025 MBC 가요대제전 BH2ND #1", duration:"19m" }, { id:"KSARBfbflV4", title:"꼬맹이~ 늦게 자지 마? 키 안 크니까ㅋ | Hearts2Hearts 하츠투하츠 2025 SBS 가요대전 BH2ND", duration:"20m" }, { id:"uxkJL3ZWjlw", title:"오늘은! MMA-NA 생일 ⋆✴︎˚。⋆🎂 ༘⋆ | Hearts2Hearts 하츠투하츠 2025 MMA BH2ND", duration:"25m" }, { id:"Wvd4GTugNtE", title:"저희 숭숭이들이! 원숭이들에게 영상 편지 남겨보겠습니다 ⸜(。˃ ᵕ ˂ )⸝♡ | Hearts2Hearts 하츠투하츠 Fan Sign Event in Japan BH2ND", duration:"21m" }, { id:"kKVrzt2ELPs", title:"나도 저런 양 갈래 해보고 싶다 (• ᴖ •。 ) | 2025 MUSIC BANK GLOBAL FESTIVAL IN JAPAN BH2ND", duration:"20m" }, { id:"soTavjj85Iw", title:"3관왕.ᐟ.ᐟ.ᐟ 하나 둘 셋 감사합니다.ᐟ.ᐟ.ᐟ | Hearts2Hearts 하츠투하츠 2025 MAMA AWARDS BH2ND", duration:"35m" }, { id:"33CNBk7ZOs4", title:"다~이루어질지니! ଘ( ˊᵕˋ )ଓ | Hearts2Hearts 하츠투하츠 'FOCUS' Showcase BH2ND", duration:"15m" }, { id:"-SmKQwHGTXc", title:"하츄와의 비밀 약속은요✮꙳ 𓂃 𓂂𓏸 | Hearts2Hearts 하츠투하츠 2026 FANMEETING 'HEARTS 2 HOUSE' Poster BH2ND", duration:"16m" }, { id:"XUbdua2mS1k", title:"자 다음은 다 같이 안아~ (つ。˃ ᵕ ˂)つ ⸝♡ | Hearts2Hearts 하츠투하츠 2025 KGMA BH2ND", duration:"16m" }, { id:"JJwiWgmraoA", title:"막방 찢어버릴 거예요! ( ◡̀_◡́) | Hearts2Hearts 하츠투하츠 'FOCUS' Music Show BH2ND #2", duration:"30m" }, { id:"agnZiB74OYc", title:"여기 집중하세요 F.O.C.U.S (˵ - _ - ˵ )✧˖ | Hearts2Hearts 하츠투하츠 'FOCUS' Music Show BH2ND #1", duration:"32m" }, { id:"Nc6vB6u49go", title:"대학 축제 우리 조금 통하는듯~ ദ്ദി ˃ ᴗ ˂ ෆෆ | Hearts2Hearts 하츠투하츠 University Festival 2025 BH2ND", duration:"26m" }, { id:"FVFDNBtwOsE", title:"하츄 낯가리지 말고 Come on (⸝⸝• ᴗ •⸝⸝) | Hearts2Hearts 하츠투하츠 'Pretty Please' Music Show BH2ND", duration:"25m" }, { id:"41tLl4MNnhk", title:"2026 Hearts2Hearts SEASON’S GREETINGS BEHIND", duration:"25m" }, { id:"QAeJNsSUfpY", title:"오늘 양갈래도 완전 귀엽게 했어요⋆౨ৎ˚⟡˖ ࣪ | Hearts2Hearts 하츠투하츠 2025 THE FACT MUSIC AWARDS in MACAO BH2ND", duration:"14m" }, { id:"ey7ZzAmPbGw", title:"우리 하투하 첫 아육대 출전이다아˖*♬˖ ࣪⊹ | Hearts2Hearts 하츠투하츠 2025 Idol Star Athletics Championship Practice BH2ND", duration:"23m" }, { id:"ZwK1OufACPQ", title:"아니 그렇게 하면 더 울어! (˚˃̣̣̥⌓˂̣̣̥ )づ♡ | Hearts2Hearts 하츠투하츠 LaLaLa Festival in Jakarta BH2ND", duration:"15m" }, { id:"OHmGph3m0Tg", title:"밋앤그릿 찢고↗ 무대도 찢고↗ 우리 얼굴로 찢고ദ്ദി | Hearts2Hearts 하츠투하츠 2025 TMElive International Music Awards BH2ND", duration:"15m" }, { id:"ipZOodMIJhY", title:"꾸준히 성장하는 하츠투하츠🏆✧˚ ༘ ⋆。 ˚ | Hearts2Hearts 하츠투하츠 2025 K-WORLD DREAM AWARDS BH2ND", duration:"18m" }, { id:"GiZWzTW5U4c", title:"우와아아.ᐟ 도쿄돔에서의 첫 무대 ꗯ ⋆˳ ˚ ⋆ | Hearts2Hearts 하츠투하츠 SMTOWN LIVE 2025 in TOKYO BH2ND", duration:"22m" }, { id:"CHDGyxjPWrQ", title:"야키니쿠도 먹고𓌉◯𓇋 쇼! 음악중심 인 재팬도 하고★༉‧₊˚ | Hearts2Hearts 하츠투하츠 Show! Musiccore in Japan BH2ND", duration:"13m" }, { id:"6eRH6GVFR9s", title:"하츠투하츠의 큰 목표! 신인상 수상했어요₊˚⊹🏆⊹˚₊ | Hearts2Hearts 하츠투하츠 2025 ASEA & Seoul Music Awards BH2ND", duration:"21m" }, { id:"5OPWRrd44L8", title:"배가 안 찼으면? 어떡해 우뜨카라고 어떡하라고 엉뚱하라고 ( •з• )🍚🍚 | Hearts2Hearts 하츠투하츠 SMTOWN LIVE 2025 in LONDON BH2ND", duration:"19m" }, { id:"4Q3_SBFUlWM", title:"저희 요맘때 ✮Rap✮ 만들었습니다! | Hearts2Hearts 하츠투하츠 요맘때 yomamte Ad BH2ND", duration:"19m" }, { id:"XGUkgN_4VCo", title:"너를 가슴 뛰게 하는 건 뭔데𓂃⭒˚.⋆⭑♫ 뭔데엑↗ | Hearts2Hearts 하츠투하츠 'STYLE' Music Show BH2ND", duration:"18m" }, { id:"0o3keLdw-lY", title:"메간 트레이너 선배님과 만나 뵙게 될 줄은⋆。°✩ | Hearts2Hearts 하츠투하츠 WANGO TANGO & SMTOWN LIVE 2025 in LA BH2ND", duration:"18m" }, { id:"rpNi6lQeWNs", title:"오마이갓! 첫 SMTOWN!!! | Hearts2Hearts 하츠투하츠 Day Off & SMTOWN LIVE 2025 in Mexico BH2ND", duration:"18m" }, { id:"snpkSKVNdeM", title:"오늘 약간 우리 쌍둥이 같다! | Hearts2Hearts 하츠투하츠 Rakuten GirlsAward 2025 SPRING/SUMMER BH2ND", duration:"26m" }, { id:"wXXk4dACCrw", title:"지우야 너만 잘하면 돼 (ง •̀_•́)ง✧ | Hearts2Hearts 하츠투하츠 SEOUL SPRING FESTA BH2ND", duration:"15m" }, { id:"v_StHwY2E_M", title:"기쁨이 가득한 인도네시아 첫 방문。𖦹°‧⭑.ᐟ | Hearts2Hearts 하츠투하츠 in JAKARTA BH2ND", duration:"16m" }, { id:"73xF273Ew1c", title:"여러분 같이 먹자 Who made this!!!!(๑ᵔ⤙ᵔ๑)♡ | Hearts2Hearts 하츠투하츠 Visiting Shanghai BH2ND", duration:"22m" }, { id:"zVIrnx9Jy-k", title:"하츄가 보고싶으면 직접 가야지ᯓ★.ᐟ | Hearts2Hearts 하츠투하츠 Fan Sign Event in Busan, Daegu, Gwangju, Daejeon BH2ND", duration:"18m" }, { id:"F-qx8VX25Wk", title:"오늘 데뷔했다! 드디어 데뷔했다⭑𓂃.ᐟ.ᐟ | Hearts2Hearts 하츠투하츠 Debut Showcase BH2ND", duration:"15m" }, { id:"UzotXp59tbY", title:"오늘 먹방을 진행하겠습니다! (๑ᵔ⤙ᵔ๑) ⋆✴︎˚。⋆ | Hearts2Hearts 하츠투하츠 'The Chase' Music Show BH2ND #2", duration:"19m" }, { id:"C-AEpv4hw20", title:"🌴: 너는 지금 고양이같아… 😊 : 고라니 같다고요…? | Hearts2Hearts 하츠투하츠 'The Chase' Music Show BH2ND #1", duration:"27m" }, { id:"fSC4oEjOFn4", title:"메가MGC커피 가실 때마다 하투하 생각하시구…♡(˃͈ ˂͈ ) | Hearts2Hearts 하츠투하츠 메가MGC커피 Photoshoot BH2ND", duration:"14m" }, { id:"X8MNYapJmro", title:"내 얼굴이 뜨는 무신사라니! ٩( ˃▿˂ )۶⟡ | Hearts2Hearts 하츠투하츠 MUSINSA Photoshoot BH2ND", duration:"12m" }, { id:"iPK-Oaqmd8E", title:"장신 그룹 하투하! 굿~( ദ്ദി ˙ᗜ˙ ) | Hearts2Hearts 하츠투하츠 DAZED Photoshoot BH2ND", duration:"14m" } ]; const dbPlayer = document.querySelector(".db-player"); const dbList = document.querySelector(".db-list"); document.querySelector(".db-title").textContent = dbSeries.title; document.querySelector(".db-year").textContent = dbSeries.year; document.querySelector(".db-rating").textContent = dbSeries.rating; document.querySelector(".db-count").textContent = dbEpisodes.length + " Episodes"; document.querySelector(".db-language").textContent = dbSeries.language; document.querySelector(".db-description").textContent = dbSeries.description; document.querySelector(".db-cast").textContent = dbSeries.cast; document.querySelector(".db-genres").textContent = dbSeries.genres; function dbLoadEpisode(index){ const episode = dbEpisodes[index]; dbPlayer.src = "https://www.youtube-nocookie.com/embed/" + episode.id; document.querySelectorAll(".db-card").forEach(function(card,i){ if(i===index){ card.classList.add("active"); }else{ card.classList.remove("active"); } }); } dbEpisodes.forEach(function(episode,index){ const card = document.createElement("div"); card.className = "db-card"; const number = document.createElement("div"); number.className = "db-number"; number.textContent = dbEpisodes.length - index; const thumb = document.createElement("img"); thumb.className = "db-thumb"; thumb.src = "https://i.ytimg.com/vi/" + episode.id + "/hqdefault.jpg"; const text = document.createElement("div"); text.className = "db-card-text"; const title = document.createElement("div"); title.className = "db-card-title"; title.textContent = episode.title; const duration = document.createElement("div"); duration.className = "db-duration"; duration.textContent = episode.duration; text.appendChild(title); text.appendChild(duration); card.appendChild(number); card.appendChild(thumb); card.appendChild(text); card.addEventListener("click", function(){ dbLoadEpisode(index); document.querySelector(".db-player-wrap").scrollIntoView({ behavior: "smooth", block: "start" }); }); dbList.appendChild(card); }); dbLoadEpisode(0); const dbTop = document.querySelector(".db-top"); window.addEventListener("scroll", function(){ if(window.scrollY > 300){ dbTop.classList.add("show"); }else{ dbTop.classList.remove("show"); } }); dbTop.addEventListener("click", function(){ window.scrollTo({ top: 0, behavior: "smooth" }); });

Cast:

Genres:

Episode List
const prodSeries = { title: "Production BH2ND", year: "2025", rating: "13+", language: "ENG SUB", description: "Production BH2ND is a behind-the-scenes content series from Hearts2Hearts that offers a closer look at the group's creative and production process through recording sessions, practice clips, filming moments, and studio content.", cast: "Carmen, Jiwoo, Yuha, Stella, Juun, A-na, Ian, Ye-on", genres: "Behind the Scenes • Variety" }; const prodEpisodes = [ { title:"You’re my best view˖⋆.˚ε(´。•᎑•`)っ | Hearts2Hearts 하츠투하츠 'Lemon Tang' Okinawa BH2ND #3", duration:"31m", id:"IbFDE10n4Fg" }, { title:"머리도 완전 웨이브 하구? 네일도 완전 𝓜𝓮𝓻𝓶𝓪𝓲𝓭 𝓝𝓪𝓲𝓵 ☀︎𓂃⛱ | Hearts2Hearts 하츠투하츠 'Lemon Tang' Okinawa BH2ND #2", duration:"25m", id:"uXKD34jogyU" }, { id:"HCwvO_FZQmk", title:"레몬은 어디서 자라지?𖧧 ⋆ʚ𝓣𝓪𝓷𝓰ɞ⋆ | Hearts2Hearts 하츠투하츠 ‘Lemon Tang’ Okinawa BH2ND #1 ", duration:"30m" }, { id:"j3a10MLj5K8", title:"Hearts2Hearts 하츠투하츠 ‘Lemon Tang’ Recording BH2ND", duration:"15m" }, { id:"5pGqox3kRGE", title:"Hearts2Hearts 하츠투하츠 'Lemon Tang' Dance Practice BH2ND", duration:"28m" }, { id:"tjSPledGrnU", title:"Hearts2Hearts 하츠투하츠 'Lemon Tang' MV Reaction BH2ND", duration:"16m" }, { id:"I_E7r7aVdpM", title:"Hearts2Hearts 하츠투하츠 'Lemon Tang' Performance Video BH2ND", duration:"18m" }, { id:"UZ2Z1w7TRds", title:"Hearts2Hearts 하츠투하츠 'Lemon Tang' Recording BH2ND", duration:"20m" }, { id:"zQ-XkGm0zvI", title:"Hearts2Hearts 하츠투하츠 'Lemon Tang' MV BH2ND #2", duration:"19m" }, { id:"0oRul0_3mdo", title:"Hearts2Hearts 하츠투하츠 'Lemon Tang' MV BH2ND #1", duration:"24m" }, { id:"-SuUEoYEDVw", title:"Hearts2Hearts 하츠투하츠 'Lemon Tang' Jacket BH2ND", duration:"18m" }, { id:"u8U1OSW5acA", title:"Hearts2Hearts 하츠투하츠 'FOCUS' Dance Practice BH2ND", duration:"21m" }, { id:"larrvLIMWDk", title:"Hearts2Hearts 하츠투하츠 'FOCUS' Recording BH2ND", duration:"17m" }, { id:"ITmv7JLimQI", title:"Hearts2Hearts 하츠투하츠 'FOCUS' MV BH2ND #2", duration:"20m" }, { id:"_xqnBLjzdzQ", title:"Hearts2Hearts 하츠투하츠 'FOCUS' MV BH2ND #1", duration:"22m" }, { id:"XVdM_RZGnok", title:"Hearts2Hearts 하츠투하츠 'FOCUS' Jacket BH2ND", duration:"20m" }, { id:"RE89HeUXOSM", title:"Hearts2Hearts 하츠투하츠 'STYLE' Dance Practice BH2ND (Fix Ver.)", duration:"17m" }, { id:"WyeJAh9iIIY", title:"Hearts2Hearts 하츠투하츠 'STYLE' Performance Video BH2ND", duration:"19m" }, { id:"qL69VSEeL5U", title:"Hearts2Hearts 하츠투하츠 'Pretty Please' MV BH2ND #2", duration:"23m" }, { id:"DuaAX0i3U40", title:"This 𝓑𝓪𝓷𝓰 is 𝓜𝔂 𝓓𝓻𝓮𝓪𝓶 𝓑𝓪𝓷𝓰 ⋆。゚☁︎。⋆。 ゚☾ ゚。⋆ | Hearts2Hearts 하츠투하츠 'Pretty Please' MV BH2ND #1", duration:"22m" }, { id:"VDNP_yS_Yr4", title:"Hearts2Hearts 하츠투하츠 'STYLE' Dance Practice BH2ND", duration:"31m" }, { id:"rIdaOPJbdQ8", title:"Hearts2Hearts 하츠투하츠 'STYLE' Recording BH2ND", duration:"22m" }, { id:"Fk54DzRap88", title:"여기 하츄의 사랑 하나 오더요 ˚₊‧ ʚ꒰^. .^꒱⟆ɞ ‧₊˚ | Hearts2Hearts 하츠투하츠 'STYLE' MV BH2ND #3", duration:"19m" }, { id:"IZFtAPpEk9I", title:"약간 첫사랑 재질~ ♡✧˚ ༘ | Hearts2Hearts 하츠투하츠 'STYLE' MV BH2ND #2", duration:"21m" }, { id:"DL7UNtK-Kok", title:"뀨요미 대회 참가합니다!₊하나 둘 셋 뀨우𓂃 𓈒𓏸˖*° | Hearts2Hearts 하츠투하츠 'STYLE' MV BH2ND #1", duration:"17m" }, { id:"_jQo1JKg5gk", title:"하츄들 기대해~ 우리 예쁘다아 (∩˃o˂∩)♡ | Hearts2Hearts 하츠투하츠 ‘STYLE’ Jacket BH2ND", duration:"20m" }, { id:"dFKIabiefsY", title:"다들 조심하세요 제 날개𓂃 ࣪˖ ʚїɞ♡ | Hearts2Hearts 하츠투하츠 ‘Butterflies’ MV BH2ND", duration:"21m" }, { id:"1QBBD4zEMbA", title:"Hearts2Hearts 하츠투하츠 'The Chase' Recording BH2ND", duration:"15m" }, { id:"pFsf73HNL6Q", title:"Hearts2Hearts 하츠투하츠 'The Chase' Dance Practice BH2ND", duration:"20m" }, { id:"3VxvujFYxek", title:"프로답게 해! 나는 해냈잖아(⸝⸝╸-╺⸝⸝) | Hearts2Hearts 하츠투하츠 'The Chase' Jacket BH2ND", duration:"32m" }, { id:"ao3-xlU1H3g", title:"오늘 콘셉트는 AI 콘셉트입니다 𖠌𖥔‧₊˚ | Hearts2Hearts 하츠투하츠 'The Chase' MV BH2ND #2", duration:"23m" }, { id:"X7a7XbHzIrk", title:"바람이 귀엽게 부는 곳은? ᯓᡣ𐭩 | Hearts2Hearts 하츠투하츠 'The Chase' MV BH2ND #1", duration:"29m" }, { id:"0TowNuWl3Ck", title:"웃음만 잘 참았으면 좋겠습니다 ٩(^ᗜ^ )و⋆˙⟡ | Hearts2Hearts 하츠투하츠 Debut Trailer BH2ND", duration:"19m" } ]; const prodPlayer = document.querySelector(".prod-player"); const prodList = document.querySelector(".prod-list"); document.querySelector(".prod-title").textContent = prodSeries.title; document.querySelector(".prod-year").textContent = prodSeries.year; document.querySelector(".prod-rating").textContent = prodSeries.rating; document.querySelector(".prod-count").textContent = prodEpisodes.length + " Episodes"; document.querySelector(".prod-language").textContent = prodSeries.language; document.querySelector(".prod-description").textContent = prodSeries.description; document.querySelector(".prod-cast").textContent = prodSeries.cast; document.querySelector(".prod-genres").textContent = prodSeries.genres; function prodLoadEpisode(index){ const episode = prodEpisodes[index]; prodPlayer.src = "https://www.youtube-nocookie.com/embed/" + episode.id; document.querySelectorAll(".prod-card").forEach(function(card,i){ if(i===index){ card.classList.add("active"); }else{ card.classList.remove("active"); } }); } prodEpisodes.forEach(function(episode,index){ const card = document.createElement("div"); card.className = "prod-card"; const number = document.createElement("div"); number.className = "prod-number"; number.textContent = prodEpisodes.length - index; const thumb = document.createElement("img"); thumb.className = "prod-thumb"; thumb.src = "https://i.ytimg.com/vi/" + episode.id + "/hqdefault.jpg"; const text = document.createElement("div"); text.className = "prod-card-text"; const title = document.createElement("div"); title.className = "prod-card-title"; title.textContent = episode.title; const duration = document.createElement("div"); duration.className = "prod-duration"; duration.textContent = episode.duration; text.appendChild(title); text.appendChild(duration); card.appendChild(number); card.appendChild(thumb); card.appendChild(text); card.addEventListener("click", function(){ prodLoadEpisode(index); document.querySelector(".prod-player-wrap").scrollIntoView({ behavior: "smooth", block: "start" }); }); prodList.appendChild(card); }); prodLoadEpisode(0); const prodTop = document.querySelector(".prod-top"); window.addEventListener("scroll", function(){ if(window.scrollY > 300){ prodTop.classList.add("show"); }else{ prodTop.classList.remove("show"); } }); prodTop.addEventListener("click", function(){ window.scrollTo({ top: 0, behavior: "smooth" }); });

Cast:

Genres:

Episode List
const sdSeries = { title: "S2cret Diary", year: "2025", rating: "13+", language: "ENG SUB", description: "S2cret Diary is a vlog-style content series from Hearts2Hearts that offers a more personal and relaxed look into the members' everyday moments through self-filmed videos, behind-the-scenes clips, and casual activities.", cast: "Carmen, Jiwoo, Yuha, Stella, Juun, A-na, Ian, Ye-on", genres: "Variety • Slice of Life" }; const sdEpisodes = [ { id:"mkDdVFm7iI4", title:"Who's My Secret Santa? ⋆.𐙚🫧❀ Christmas Market & Our First Christmas Memories 🎄", duration:"32m" }, { id:"hgbFhkIUTWU", title:"A Day in Coloane Village, Macau✧₊˚ Egg Tarts, Bubble Tea & Dinner! (๑˃̵ᴗ˂̵)", duration:"30m" }, { id:"Xr1rwMKLe7A", title:"Our First Monjayaki & Pokémon Center in Tokyo ✧.⋆(˶˃ ⤙ ˂˶)。₊✦", duration:"27m" }, { id:"5QCROPtkBOI", title:"Our comic book cafe day! Mukbang & Board Games ₊˚(˶˃ ᵕ ˂˶) ࣪𐙚ა ✧", duration:"33m" }, { id:"35F3BiQCutU", title:"Our first overseas trip to Japan ✈︎→✈︎⋆☁️", duration:"31m" }, { id:"eirKgqco2ig", title:"Capturing memories with my BFF ˚⋆♡📷🧸˚₊✧", duration:"18m" }, { id:"fSL6odGvdcE", title:"Making our own BFF rings ✧˖°⋆", duration:"22m" }, { id:"DKV6oCq0aac", title:"Walking along the Jeju night sea & Picking our hotel roommates ✩⋆˚。⋆", duration:"23m" }, { id:"R6Wz7CSLxTc", title:"Getting ready for our first trip to Jeju ᯓ ✈︎", duration:"32m" }, { episode:"0", id:"DuhqlOQjTAI", title:"Our Secret Video Diary [◉¯] *.˚ ༘", duration:"1m" } ]; const sdPlayer = document.querySelector(".sd-player"); const sdList = document.querySelector(".sd-list"); document.querySelector(".sd-title").textContent = sdSeries.title; document.querySelector(".sd-year").textContent = sdSeries.year; document.querySelector(".sd-rating").textContent = sdSeries.rating; document.querySelector(".sd-count").textContent = sdEpisodes.length + " Episodes"; document.querySelector(".sd-language").textContent = sdSeries.language; document.querySelector(".sd-description").textContent = sdSeries.description; document.querySelector(".sd-cast").textContent = sdSeries.cast; document.querySelector(".sd-genres").textContent = sdSeries.genres; function sdLoadEpisode(index){ const episode = sdEpisodes[index]; sdPlayer.src = "https://www.youtube-nocookie.com/embed/" + episode.id; document.querySelectorAll(".sd-card").forEach(function(card,i){ if(i===index){ card.classList.add("active"); }else{ card.classList.remove("active"); } }); } sdEpisodes.forEach(function(episode,index){ const card = document.createElement("div"); card.className = "sd-card"; const number = document.createElement("div"); number.className = "sd-number"; number.textContent = episode.episode !== undefined ? episode.episode : sdEpisodes.length - index - 1; const thumb = document.createElement("img"); thumb.className = "sd-thumb"; thumb.src = "https://i.ytimg.com/vi/" + episode.id + "/hqdefault.jpg"; const text = document.createElement("div"); text.className = "sd-card-text"; const title = document.createElement("div"); title.className = "sd-card-title"; title.textContent = episode.title; const duration = document.createElement("div"); duration.className = "sd-duration"; duration.textContent = episode.duration; text.appendChild(title); text.appendChild(duration); card.appendChild(number); card.appendChild(thumb); card.appendChild(text); card.addEventListener("click", function(){ sdLoadEpisode(index); document.querySelector(".sd-player-wrap").scrollIntoView({ behavior: "smooth", block: "start" }); }); sdList.appendChild(card); }); sdLoadEpisode(0); const sdTop = document.querySelector(".sd-top"); window.addEventListener("scroll", function(){ if(window.scrollY > 300){ sdTop.classList.add("show"); }else{ sdTop.classList.remove("show"); } }); sdTop.addEventListener("click", function(){ window.scrollTo({ top: 0, behavior: "smooth" }); });

Cast:

Genres:

Episode List
const crhSeries = { title: "Crunchy Hearts", year: "2025", rating: "13+", language: "ENG SUB", description: "Crunchy Hearts is a short-form content series from Hearts2Hearts that highlights the members' playful and spontaneous chemistry through unit-based episodes featuring various activities. The series also includes full-group content such as music video commentaries.", cast: "Carmen, Jiwoo, Yuha, Stella, Juun, A-na, Ian, Ye-on", genres: "Variety • Comedy" }; const crhEpisodes = [ { id:"-Dpgd6qQgi0", title:"숭큼 다가온 MC 에이나의 음악숭심 숭별회ᯓ★", duration:"27m" }, { id:"wuKGMvim5JQ", title:"한강에서 자전거도 타고~ 한강 라면도 먹고₊˚⊹♡", duration:"17m" }, { id:"ch7R_yRmvrA", title:"뚱냥이ฅ부터 아이돌냥ฅ까지 고양이들 만나고 왔어요 °ʚ₍^. .^₎⟆ɞ°", duration:"18m" }, { id:"guYf1xXl-4I", title:"5년이… 일주일이랑 같아?", duration:"19m" }, { id:"QhickM0cQes", title:"✶⋆.˚뉴텔라의 스무살 기념 심야 PC방♪⋆.✮", duration:"24m" }, { id:"4sNQ7h86FN0", title:"Hearts2Hearts 하츠투하츠 'FOCUS' MV Commentary", duration:"12m" }, { id:"9FrXleUWoSY", title:"하투하는 호텔에서 뭘 하면서 놀까? ♡.°⑅", duration:"21m" }, { id:"EnO-Tmu43TI", title:"𖧧 최애즈의 말차 카페에 오신 걸 환영합니다! 𖧧 Matcha Dessert Review🍃", duration:"18m" }, { id:"WzQhCPyi-Kc", title:"✴︎ 칼국쭈 키링샵에 오신 것을 환영합니다! ✴︎ Making & Unboxing Keychains 🍎🔑", duration:"19m" }, { id:"6tuqbGsyswI", title:"✮ 스타즈 베이커리에 오신 것을 환영합니다! ✮ Strawberry Cream Cake Review🍰", duration:"18m" }, { id:"chGbnVaOtU4", title:"ʚ 여러분의 숙면을 책임질 꿈의 요정 유하&이안입니다! ɞ ASMR with Slime and Squishies🎙️", duration:"21m" }, { id:"qYoa9m8iL-Y", title:"Hearts2Hearts 하츠투하츠 'STYLE' MV Commentary", duration:"12m" }, { id:"p6usOMIf8zg", title:"Enak banget!!! ♡⟡𓌉◯𓇋₊˚⊹ 카르멘의 햇살투어🌴☀️", duration:"21m" }, { id:"gP1M5Rekf-8", title:"내가 바라던 꿈을 이룬 것 같아! ⋆。‧˚ʚ🍓ɞ˚‧。⋆", duration:"15m" }, { id:"iHNHdNlSWxA", title:"Hearts2Hearts 하츠투하츠 'The Chase' MV Commentary", duration:"11m" } ]; const crhPlayer = document.querySelector(".crh-player"); const crhList = document.querySelector(".crh-list"); document.querySelector(".crh-title").textContent = crhSeries.title; document.querySelector(".crh-year").textContent = crhSeries.year; document.querySelector(".crh-rating").textContent = crhSeries.rating; document.querySelector(".crh-count").textContent = crhEpisodes.length + " Episodes"; document.querySelector(".crh-language").textContent = crhSeries.language; document.querySelector(".crh-description").textContent = crhSeries.description; document.querySelector(".crh-cast").textContent = crhSeries.cast; document.querySelector(".crh-genres").textContent = crhSeries.genres; function crhLoadEpisode(index){ const episode = crhEpisodes[index]; crhPlayer.src = "https://www.youtube-nocookie.com/embed/" + episode.id; document.querySelectorAll(".crh-card").forEach(function(card,i){ if(i===index){ card.classList.add("active"); }else{ card.classList.remove("active"); } }); } crhEpisodes.forEach(function(episode,index){ const card = document.createElement("div"); card.className = "crh-card"; const number = document.createElement("div"); number.className = "crh-number"; number.textContent = crhEpisodes.length - index; const thumb = document.createElement("img"); thumb.className = "crh-thumb"; thumb.src = "https://i.ytimg.com/vi/" + episode.id + "/hqdefault.jpg"; const text = document.createElement("div"); text.className = "crh-card-text"; const title = document.createElement("div"); title.className = "crh-card-title"; title.textContent = episode.title; const duration = document.createElement("div"); duration.className = "crh-duration"; duration.textContent = episode.duration; text.appendChild(title); text.appendChild(duration); card.appendChild(number); card.appendChild(thumb); card.appendChild(text); card.addEventListener("click", function(){ crhLoadEpisode(index); document.querySelector(".crh-player-wrap").scrollIntoView({ behavior: "smooth", block: "start" }); }); crhList.appendChild(card); }); crhLoadEpisode(0); const crhTop = document.querySelector(".crh-top"); window.addEventListener("scroll", function(){ if(window.scrollY > 300){ crhTop.classList.add("show"); }else{ crhTop.classList.remove("show"); } }); crhTop.addEventListener("click", function(){ window.scrollTo({ top: 0, behavior: "smooth" }); });

Cast:

Genres:

Episode List
const dshSeries = { title: "Two Three H2H", year: "2026", rating: "13+", language: "ENG SUB", description: "Following the conclusion of Hearts Chase, the series follows the members as they take on new adventures, missions, and challenges together.", cast: "Carmen, Jiwoo, Yuha, Stella, Juun, A-na, Ian, Ye-on", genres: "Variety • Comedy" }; const dshEpisodes = [ { id:"9iz0o7qiRX4", title:"You Might Be Shocked by My Food Baby😱 Outdoor Fun & Mukbang 🍽️", duration:"42m" }, { id:"M3bXQeTZOmI", title:"Is This the Miracle Morning?☀️ Dawn Karaoke & Girls Talk💬 Staying Up All Night🍋", duration:"37m" }, { id:"E9aYK1-8m04", title:"Wait, Where Are We Going?!😱 Surprise Overnight Trip! Staying Up All Night🍋", duration:"37m" }, { episode:"0", id:"VWUfiEFptYY", title:"걸그룹 맞을까요? 아닐까요? 맞혀 봐~🎶 새 단장 기념! 얼렁뚱땅 개편 회의", duration:"17m" } ]; const dshPlayer = document.querySelector(".dsh-player"); const dshList = document.querySelector(".dsh-list"); document.querySelector(".dsh-title").textContent = dshSeries.title; document.querySelector(".dsh-year").textContent = dshSeries.year; document.querySelector(".dsh-rating").textContent = dshSeries.rating; document.querySelector(".dsh-count").textContent = dshEpisodes.length + " Episodes"; document.querySelector(".dsh-language").textContent = dshSeries.language; document.querySelector(".dsh-description").textContent = dshSeries.description; document.querySelector(".dsh-cast").textContent = dshSeries.cast; document.querySelector(".dsh-genres").textContent = dshSeries.genres; function dshLoadEpisode(index){ const episode = dshEpisodes[index]; dshPlayer.src = "https://www.youtube-nocookie.com/embed/" + episode.id + "?enablejsapi=1&rel=0"; document.querySelectorAll(".dsh-card").forEach(function(card,i){ if(i===index){ card.classList.add("active"); }else{ card.classList.remove("active"); } }); } dshEpisodes.forEach(function(episode,index){ const card = document.createElement("div"); card.className = "dsh-card"; const number = document.createElement("div"); number.className = "dsh-number"; number.textContent = episode.episode !== undefined ? episode.episode : dshEpisodes.length - index - 1; const thumb = document.createElement("img"); thumb.className = "dsh-thumb"; thumb.src = "https://i.ytimg.com/vi/" + episode.id + "/hqdefault.jpg"; const text = document.createElement("div"); text.className = "dsh-card-text"; const title = document.createElement("div"); title.className = "dsh-card-title"; title.textContent = episode.title; const duration = document.createElement("div"); duration.className = "dsh-duration"; duration.textContent = episode.duration; text.appendChild(title); text.appendChild(duration); card.appendChild(number); card.appendChild(thumb); card.appendChild(text); card.addEventListener("click", function(){ dshLoadEpisode(index); document.querySelector(".dsh-player-wrap").scrollIntoView({ behavior: "smooth", block: "start" }); }); dshList.appendChild(card); }); dshLoadEpisode(0); const dshTop = document.querySelector(".dsh-top"); window.addEventListener("scroll", function(){ if(window.scrollY > 300){ dshTop.classList.add("show"); }else{ dshTop.classList.remove("show"); } }); dshTop.addEventListener("click", function(){ window.scrollTo({ top: 0, behavior: "smooth" }); });

Cast:

Genres:

Episode List
const hcSeries = { title: "Hearts Chase", year: "2025", rating: "13+", language: "ENG SUB", description: "Hearts Chase is a variety-style series from Hearts2Hearts that brings all members together in themed, game-driven episodes where they take on missions, challenges, and concept-based activities. Each episode places the group in a new setting or scenario as they work together or against each other to complete objectives.", cast: "Carmen, Jiwoo, Yuha, Stella, Juun, A-na, Ian, Ye-on", genres: "Reality • Variety" }; const hcEpisodes = [ { id:"Kj89aHCOcCg", title:"This Is So Messy!!!🤦‍♀️ Cheating & Chaos in a Cash Prize Game🥕🪵 벚꽃나무 하투하걸렸네", duration:"34m" }, { id:"j5hBm_UqBj8", title:"I'm Not Gonna End Up Like My Uncle👶 Chaotic Big Rural Family🥬 벚꽃나무 하투하걸렸네", duration:"39m" }, { id:"w4XGopRkWvw", title:"Release the Super Antibody!💉 Surviving the Zombie Apocalypse🏕️", duration:"26m" }, { id:"sPlnx4uPHus", title:"We Came for Cops & Robbers... But WHY Are There ZOMBIES?!😱 RUNNING DEAD", duration:"31m" }, { id:"rQjzc2FMov4", title:"Why Are We So Desperate to Be Funny?! No Mercy Comedy Battle🔫 Hearts Sauna♨️", duration:"36m" }, { id:"DWOu-xB7L9E", title:"Mystery Judges🎭 You Might Have a Low Level of Taste👎 Who Will Take the Prize?", duration:"37m" }, { id:"bXSTgYC5dUY", title:"Why Cupcake Monster? Cuz I Rip It Up With The Taste👩‍🍳🔥 Patisserie Class Wars", duration:"34m" }, { id:"qhnA7u2ezFs", title:"절대로 뒤를 돌아봐서는 안 됩니다🩸비명과 비겁이 난무하는 공포 체험😱", duration:"37m" }, { id:"5eOPxCQyQs8", title:"네가 놀래 내가 놀래 애매하긴 해 🤷‍♀️ 휴일의 운명이 달린 하츠 마블 게임♟️", duration:"39m" }, { id:"JWfsMjcu8tY", title:"눈물: 흐를게💧 눈물 없이 볼 수 없는 진대 타임", duration:"29m" }, { id:"rEDEHZptdss", title:"뭉치면 살고!🩵 흩어지면 물수제비!🪨", duration:"23m" }, { id:"Nj3fIE_omak", title:"Hearts Night🌙 Unnecessary Gifts & Mafia Game!🔫", duration:"29m" }, { id:"HbtWL92U6Sk", title:"서당에서 E로 살아남기🤫 vs 키즈카페에서 I로 살아남기👧", duration:"25m" }, { id:"C3IR6P79ARQ", title:"MBTI SWITCH! What If We Exchange E ↔️ I For A Day?", duration:"29m" }, { id:"xoNtDcDCnjI", title:"콜럼버스 대탐험부터 T 익스프레스까지🎢 하투하의 어트랙션 도장깨기🔥", duration:"33m" }, { id:"cUf-j5Nv_IM", title:"환상의 나라 에버랜드로~🎡 봄맞이 피크닉!🌷", duration:"31m" }, { id:"IwFb9c9h3S0", title:"What a chaotic triathlon(?) 💪🏅", duration:"23m" }, { id:"61AiPWA50aM", title:"Hearts Arcade OPEN🕹️ Playing various games!", duration:"25m" }, { id:"40gbowq0sD4", title:"From SNSD to aespa💃 Music Quiz🎵 Funny Filter Game🖼️ Relay Drawing🎨 Let's Go!", duration:"22m" }, { id:"Ay7nG31ayEM", title:"Hearts Museum OPEN! 작품 설명 및 평론회", duration:"37m" } ]; const hcPlayer = document.querySelector(".hc-player"); const hcList = document.querySelector(".hc-list"); document.querySelector(".hc-title").textContent = hcSeries.title; document.querySelector(".hc-year").textContent = hcSeries.year; document.querySelector(".hc-rating").textContent = hcSeries.rating; document.querySelector(".hc-count").textContent = hcEpisodes.length + " Episodes"; document.querySelector(".hc-language").textContent = hcSeries.language; document.querySelector(".hc-description").textContent = hcSeries.description; document.querySelector(".hc-cast").textContent = hcSeries.cast; document.querySelector(".hc-genres").textContent = hcSeries.genres; function hcLoadEpisode(index){ const episode = hcEpisodes[index]; hcPlayer.src = "https://www.youtube-nocookie.com/embed/" + episode.id; document.querySelectorAll(".hc-card").forEach(function(card,i){ if(i===index){ card.classList.add("active"); }else{ card.classList.remove("active"); } }); } hcEpisodes.forEach(function(episode,index){ const card = document.createElement("div"); card.className = "hc-card"; const number = document.createElement("div"); number.className = "hc-number"; number.textContent = hcEpisodes.length - index; const thumb = document.createElement("img"); thumb.className = "hc-thumb"; thumb.src = "https://i.ytimg.com/vi/" + episode.id + "/hqdefault.jpg"; const text = document.createElement("div"); text.className = "hc-card-text"; const title = document.createElement("div"); title.className = "hc-card-title"; title.textContent = episode.title; const duration = document.createElement("div"); duration.className = "hc-duration"; duration.textContent = episode.duration; text.appendChild(title); text.appendChild(duration); card.appendChild(number); card.appendChild(thumb); card.appendChild(text); card.addEventListener("click", function(){ hcLoadEpisode(index); document.querySelector(".hc-player-wrap").scrollIntoView({ behavior: "smooth", block: "start" }); }); hcList.appendChild(card); }); hcLoadEpisode(0); const hcTop = document.querySelector(".hc-top"); window.addEventListener("scroll", function(){ if(window.scrollY > 300){ hcTop.classList.add("show"); }else{ hcTop.classList.remove("show"); } }); hcTop.addEventListener("click", function(){ window.scrollTo({ top: 0, behavior: "smooth" }); });

Hearts2Hearts Debut Fan Showcase 〈Chase Our Hearts〉 (Full Ver.)

2025ENG SUB

Cast:

Genres:

Episode List
const awardfestivalSeries={ title:"Music Awards & Festival Performances", year:"2025", rating:"13+", description:"A collection of Hearts2Hearts performances at music awards, festivals, KCON, and other special stages.", cast:"Carmen, Jiwoo, Yuha, Stella, Juun, A-na, Ian, Ye-on", genres:"Performance • Live Stage" }; const awardfestivalEpisodes=[ { title:"Hearts2Hearts (하츠투하츠) - STYLE + RUDE! [더 시즌즈-성시경의 고막남친] | KBS 260612 방송", duration:"6m", id:"t53QMjxJ-JM" }, { title:"STYLE - Hearts2Hearts", duration:"3m", id:"-uiIkw6k_Ug" }, { title:"[미방분/4K] Hearts2Hearts - FOCUS | 엠카운트다운 X 메가콘서트 | #엠카운트다운 EP.931 | Mnet 260604 방송", duration:"2m", id:"o9X8MS-Wj8E" }, { title:"[4K] Hearts2Hearts - RUDE! | 엠카운트다운 X 메가콘서트 | #엠카운트다운 EP.931 | Mnet 260604 방송", duration:"3m", id:"o19eGtyaYAY" }, { title:"'OPENING PERFORMANCE/4K' Hearts2Hearts - STYLE | 엠카운트다운 X 메가콘서트 | #엠카운트다운 EP.931 | Mnet 260604 방송", duration:"4m", id:"VtHBuYF5jI8" }, { title:"[KCON JAPAN 2026] Hearts2Hearts - RUDE! | Mnet 260529 방송", duration:"3m", id:"0KuzJDGOJWM" }, { title:"[KCON JAPAN 2026] Hearts2Hearts - Electric Shock (원곡: f(x)) | Mnet 260529 방송", duration:"2m", id:"90BTvpF7Adk" }, { title:"Hearts2Hearts - STYLE | ARTIST STAGE | KCON JAPAN 2026", duration:"3m", id:"hqqhfKAQ1uU" }, { title:"Hearts2Hearts - STYLE | 2025 MBC Music Festival | #Hearts2Hearts", duration:"3m", id:"RXJqAdZ_KcQ" }, { title:"IAN & BANG JEEMIN & WONHEE - UP & 첫 사랑니 & 좋은 날 | 2025 MBC Music Festival | #Kpop", duration:"4m", id:"LSb3pZ24VX4" }, { title:"HEARTS2HEARTS - Intro + Style | 2025 MBC Music Festival | KOCOWA+", duration:"4m", id:"7DBdfxXx8Pk" }, { title:"[2025 MBC 가요대제전] IAN & BANG JEEMIN & WONHEE (이.방.원) - UP & 첫 사랑니 & 좋은 날, MBC 251231 방송", duration:"4m", id:"yiVnKyvhNwk" }, { title:"[2025 MBC 가요대제전] 05 Medley (Hearts2Hearts&ALLDAY PROJECT&KickFlip&KiiiKiii&CORTIS&IDID), MBC 251231", duration:"9m", id:"kjvqqxypkps" }, { title:"INTRO + FOCUS - Hearts2Hearts [2025 뮤직뱅크 글로벌페스티벌 IN JAPAN] | KBS 251230 방송", duration:"3m", id:"BFk0_-0ThEQ" }, { title:"소원을 말해봐 (Genie) (원곡: 소녀시대) - Hearts2Hearts [2025 뮤직뱅크 글로벌페스티벌 IN JAPAN] | KBS 251230 방송", duration:"2m", id:"uBVjEk5HKC4" }, { title:"[#MMA2025] Hearts2Hearts - The Chase + Focus (4K) | #Hearts2Hearts #하츠투하츠 #20251220", duration:"6m", id:"EOJWPwdFGoc" }, { title:"Hearts2Hearts - Pretty Please [Open Concert : EP.1551] | KBS KOREA 251130", duration:"3m", id:"_TQvTXTBoQ4" }, { title:"[#2025MAMA] Hearts2Hearts - FOCUS (MAMA ver.) | Mnet 251128 방송", duration:"3m", id:"Og_rtpHBcSw" }, { title:"Hearts2Hearts(하츠투하츠) - FOCUS X Dirty Work (Mash Up Ver.) @SBS GayoDaejeon", duration:"3m", id:"wg-ZD4IdOzc" }, { title:"[#KGMA2025] 하츠투하츠 - FOCUS|#Hearts2Hearts #하츠투하츠|2025 KGMA 무대영상", duration:"3m", id:"7VSHTKprWEU" }, { title:"Hearts2Hearts ハーツトゥハーツ 하츠투하츠 - Pretty Please [2025 APEC Music Festa] | KBS WORLD TV 251026", duration:"3m", id:"LTAUW7xU3yY" }, { title:"Hearts2Hearts ハーツトゥハーツ 하츠투하츠 - STYLE [2025 APEC Music Festa] | KBS WORLD TV 251026", duration:"3m", id:"BOoE7XiNyMk" }, { title:"[2025 더팩트 뮤직 어워즈] Hearts2Hearts (하츠투하츠) 'INTRO Performance' + 'STYLE' @TmarTn2", duration:"5m", id:"JCLxXvFGRaU" }, { title:"KiiiKiii X Hearts2Hearts - 별의 탄생 : Twinkle Twins [INTRO PERFORMANCE] #2025SBS가요대전Summer", duration:"1m", id:"vOyVcvy6T4Q" }, { title:"Hearts2Hearts - STYLE (Summer Ver.)♬", duration:"3m", id:"PtEVmaWn4to" }, { title:"Hearts2Hearts - The Chase [서울 스프링 페스타 2025 - 서울원더쇼] | KBS 250504 방송", duration:"3m", id:"tdcImAl63Gg" }, { title:"Hearts2Hearts - Butterflies [서울 스프링 페스타 2025 - 서울원더쇼] | KBS 250504 방송", duration:"3m", id:"SBe-lTqkfmw" } ]; const awardfestivalPlayer=document.querySelector(".awardfestival-player"); const awardfestivalList=document.querySelector(".awardfestival-list"); document.querySelector(".awardfestival-title").textContent=awardfestivalSeries.title; document.querySelector(".awardfestival-year").textContent=awardfestivalSeries.year; document.querySelector(".awardfestival-rating").textContent=awardfestivalSeries.rating; document.querySelector(".awardfestival-count").textContent=awardfestivalEpisodes.length+" Episodes"; document.querySelector(".awardfestival-description").textContent=awardfestivalSeries.description; document.querySelector(".awardfestival-cast").textContent=awardfestivalSeries.cast; document.querySelector(".awardfestival-genres").textContent=awardfestivalSeries.genres; function awardfestivalLoadEpisode(index){ const episode=awardfestivalEpisodes[index]; awardfestivalPlayer.src= "https://www.youtube-nocookie.com/embed/"+episode.id; document.querySelectorAll(".awardfestival-card").forEach(function(card,i){ if(i===index){ card.classList.add("active"); }else{ card.classList.remove("active"); } }); } awardfestivalEpisodes.forEach(function(episode,index){ const card=document.createElement("div"); card.className="awardfestival-card"; const number=document.createElement("div"); number.className="awardfestival-number"; number.textContent=awardfestivalEpisodes.length-index; const thumb=document.createElement("img"); thumb.className="awardfestival-thumb"; thumb.src="https://i.ytimg.com/vi/"+episode.id+"/hqdefault.jpg"; const text=document.createElement("div"); text.className="awardfestival-card-text"; const title=document.createElement("div"); title.className="awardfestival-card-title"; title.textContent=episode.title; const duration=document.createElement("div"); duration.className="awardfestival-duration"; duration.textContent=episode.duration; text.appendChild(title); text.appendChild(duration); card.appendChild(number); card.appendChild(thumb); card.appendChild(text); card.addEventListener("click",function(){ awardfestivalLoadEpisode(index); document.querySelector(".awardfestival-player-wrap").scrollIntoView({ behavior:"smooth", block:"start" }); }); awardfestivalList.appendChild(card); }); awardfestivalLoadEpisode(0); const awardfestivalTop=document.querySelector(".awardfestival-top"); window.addEventListener("scroll",function(){ if(window.scrollY>300){ awardfestivalTop.classList.add("show"); }else{ awardfestivalTop.classList.remove("show"); } }); awardfestivalTop.addEventListener("click",function(){ window.scrollTo({ top:0, behavior:"smooth" }); });

Cast:

Genres:

Episode List
const m2Series={ title:"M2 Productions", year:"2025", rating:"13+", description:"A collection of Hearts2Hearts' performances from M2 Productions.", cast:"Carmen, Jiwoo, Yuha, Stella, Juun, A-na, Ian, Ye-on", genres:"Performance • Dance" }; const m2Episodes=[ { title:"[릴레이댄스] 하츠투하츠(Hearts2Hearts) - Lemon Tang (4K)", duration:"3m", id:"1l_H3lYnzFs" }, { title:"[릴레이댄스] 하츠투하츠(Hearts2Hearts) - RUDE! (4K)", duration:"3m", id:"Roxd7X6z2p0" }, { title:"[릴레이댄스 light] 하츠투하츠(Hearts2Hearts) - FOCUS | 릴댄 프리스타일 ver.", duration:"1m", id:"hbFCg83pl2w" }, { title:"[릴레이댄스] 하츠투하츠(Hearts2Hearts) - FOCUS (4K)", duration:"3m", id:"Rw4rLqf5boU" }, { title:"[릴레이댄스 light] 하츠투하츠(Hearts2Hearts) - STYLE | 릴댄 프리스타일 ver.", duration:"1m", id:"nTzQxa1zcWg" }, { title:"[릴레이댄스] 하츠투하츠(Hearts2Hearts) - STYLE (4K)", duration:"3m", id:"5aZ4ich_zbA" }, { title:"[MOVE TO PERFORMANCE] Hearts2Hearts(하츠투하츠) - STYLE (4K)", duration:"3m", id:"vOdWFF_1U2A" }, { title:"[릴레이댄스] 하츠투하츠(Hearts2Hearts) - The Chase (4K)", duration:"3m", id:"0mFn-oQhBZQ" } ]; const m2Player=document.querySelector(".m2-player"); const m2List=document.querySelector(".m2-list"); document.querySelector(".m2-title").textContent=m2Series.title; document.querySelector(".m2-year").textContent=m2Series.year; document.querySelector(".m2-rating").textContent=m2Series.rating; document.querySelector(".m2-count").textContent=m2Episodes.length+" Episodes"; document.querySelector(".m2-description").textContent=m2Series.description; document.querySelector(".m2-cast").textContent=m2Series.cast; document.querySelector(".m2-genres").textContent=m2Series.genres; function m2LoadEpisode(index){ const episode=m2Episodes[index]; m2Player.src= "https://www.youtube-nocookie.com/embed/"+episode.id; document.querySelectorAll(".m2-card").forEach(function(card,i){ if(i===index){ card.classList.add("active"); }else{ card.classList.remove("active"); } }); } m2Episodes.forEach(function(episode,index){ const card=document.createElement("div"); card.className="m2-card"; const number=document.createElement("div"); number.className="m2-number"; number.textContent=m2Episodes.length-index; const thumb=document.createElement("img"); thumb.className="m2-thumb"; thumb.src="https://i.ytimg.com/vi/"+episode.id+"/hqdefault.jpg"; const text=document.createElement("div"); text.className="m2-card-text"; const title=document.createElement("div"); title.className="m2-card-title"; title.textContent=episode.title; const duration=document.createElement("div"); duration.className="m2-duration"; duration.textContent=episode.duration; text.appendChild(title); text.appendChild(duration); card.appendChild(number); card.appendChild(thumb); card.appendChild(text); card.addEventListener("click",function(){ m2LoadEpisode(index); document.querySelector(".m2-player-wrap").scrollIntoView({ behavior:"smooth", block:"start" }); }); m2List.appendChild(card); }); m2LoadEpisode(0); const m2Top=document.querySelector(".m2-top"); window.addEventListener("scroll",function(){ if(window.scrollY>300){ m2Top.classList.add("show"); }else{ m2Top.classList.remove("show"); } }); m2Top.addEventListener("click",function(){ window.scrollTo({ top:0, behavior:"smooth" }); });

Cast:

Genres:

Episode List
const choomSeries={ title:"STUDIO CHOOM", year:"2025", rating:"13+", description:"A collection of Hearts2Hearts' performances from STUDIO CHOOM.", cast:"Carmen, Jiwoo, Yuha, Stella, Juun, A-na, Ian, Ye-on", genres:"Performance • Dance" }; const choomEpisodes=[ { title:"Hearts2Hearts(하츠투하츠) 'Lemon Tang' (4K) | MOVE TO PERFORMANCE", duration:"3m", id:"To6mqr47pxE" }, { title:"(Full Focused) Hearts2Hearts(하츠투하츠) 'RUDE!' (4K) | STUDIO CHOOM ORIGINAL", duration:"3m", id:"gQrM7MiidfU" }, { title:"Hearts2Hearts(하츠투하츠) 'RUDE!' (4K) | STUDIO CHOOM ORIGINAL", duration:"3m", id:"c330ov8bsxI" }, { title:"(Full Focused) Hearts2Hearts(하츠투하츠) 'FOCUS' (4K) | STUDIO CHOOM ORIGINAL", duration:"3m", id:"-QIVArbnexY" }, { title:"Hearts2Hearts(하츠투하츠) 'FOCUS' (4K) | STUDIO CHOOM ORIGINAL", duration:"3m", id:"5ae0vFdR4xY" }, { title:"(Full Focused) Hearts2Hearts(하츠투하츠) 'The Chase' (4K) | STUDIO CHOOM ORIGINAL", duration:"3m", id:"fHIwsnMV_dU" }, { title:"Hearts2Hearts(하츠투하츠) 'The Chase' (4K) | STUDIO CHOOM ORIGINAL", duration:"3m", id:"l20tTH8XirU" } ]; const choomPlayer=document.querySelector(".choom-player"); const choomList=document.querySelector(".choom-list"); document.querySelector(".choom-title").textContent=choomSeries.title; document.querySelector(".choom-year").textContent=choomSeries.year; document.querySelector(".choom-rating").textContent=choomSeries.rating; document.querySelector(".choom-count").textContent=choomEpisodes.length+" Episodes"; document.querySelector(".choom-description").textContent=choomSeries.description; document.querySelector(".choom-cast").textContent=choomSeries.cast; document.querySelector(".choom-genres").textContent=choomSeries.genres; function choomLoadEpisode(index){ const episode=choomEpisodes[index]; choomPlayer.src= "https://www.youtube-nocookie.com/embed/"+episode.id; document.querySelectorAll(".choom-card").forEach(function(card,i){ if(i===index){ card.classList.add("active"); }else{ card.classList.remove("active"); } }); } choomEpisodes.forEach(function(episode,index){ const card=document.createElement("div"); card.className="choom-card"; const number=document.createElement("div"); number.className="choom-number"; number.textContent=choomEpisodes.length-index; const thumb=document.createElement("img"); thumb.className="choom-thumb"; thumb.src="https://i.ytimg.com/vi/"+episode.id+"/hqdefault.jpg"; const text=document.createElement("div"); text.className="choom-card-text"; const title=document.createElement("div"); title.className="choom-card-title"; title.textContent=episode.title; const duration=document.createElement("div"); duration.className="choom-duration"; duration.textContent=episode.duration; text.appendChild(title); text.appendChild(duration); card.appendChild(number); card.appendChild(thumb); card.appendChild(text); card.addEventListener("click",function(){ choomLoadEpisode(index); document.querySelector(".choom-player-wrap").scrollIntoView({ behavior:"smooth", block:"start" }); }); choomList.appendChild(card); }); choomLoadEpisode(0); const choomTop=document.querySelector(".choom-top"); window.addEventListener("scroll",function(){ if(window.scrollY>300){ choomTop.classList.add("show"); }else{ choomTop.classList.remove("show"); } }); choomTop.addEventListener("click",function(){ window.scrollTo({ top:0, behavior:"smooth" }); });

Cast:

Genres:

Episode List
const performancesSeries={ title:"Performances & Choreography", year:"2025", rating:"13+", description:"A collection of Hearts2Hearts' performance videos, dance practices, choreography showcases, and special performance content released across different promotions.", cast:"Carmen, Jiwoo, Yuha, Stella, Juun, A-na, Ian, Ye-on", genres:"Performance • Dance" }; const performancesEpisodes=[ { title:"Now introducing, Lemon Tang by Hearts2Hearts!", duration:"3m", id:"ojh4JFizJYo" }, { title:"Hearts2Hearts 하츠투하츠 'Lemon Tang' Dance Practice", duration:"2m", id:"Mp6phSXWv-U" }, { title:"Hearts2Hearts 하츠투하츠 'RUDE!' Dance Practice", duration:"3m", id:"RXQCY_zxz-E" }, { title:"Hearts2Hearts 하츠투하츠 'Electric Shock' Stage Rehearsal (Original Song by f(x))", duration:"2m", id:"SX2tlyF3rRQ" }, { title:"Hearts2Hearts IAN 'UP (KARINA Solo)' (Original Song by aespa)", duration:"1m", id:"dYY2JBp_xlQ" }, { title:"Hearts2Hearts JIWOO&JUUN&A-NA 'Anymotion' (Original Song by Lee Hyo Ri)", duration:"1m", id:"JzrdmC7E1q8" }, { title:"Hearts2Hearts 하츠투하츠 'FOCUS' Dance Practice", duration:"3m", id:"C9McWCeK6QA" }, { title:"Hearts2Hearts 하츠투하츠 'Pretty Please' Dance Practice", duration:"3m", id:"zbrqDulNSaA" }, { title:"Hearts2Hearts 하츠투하츠 'Gee' Dance Practice (Original Song by Girls' Generation)", duration:"3m", id:"1aRAmKQULmQ" }, { title:"Hearts2Hearts 하츠투하츠 'STYLE' Dance Practice", duration:"3m", id:"NLjMZJKMOIc" }, { title:"Hearts2Hearts 하츠투하츠 'The Chase' Dance Practice", duration:"3m", id:"38bNr6gy4CE" }, { title:"Hearts2Hearts 하츠투하츠 'The Chase' Performance Video", duration:"3m", id:"GtPPT-qSXj8" } ]; const performancesPlayer=document.querySelector(".performances-player"); const performancesList=document.querySelector(".performances-list"); document.querySelector(".performances-title").textContent=performancesSeries.title; document.querySelector(".performances-year").textContent=performancesSeries.year; document.querySelector(".performances-rating").textContent=performancesSeries.rating; document.querySelector(".performances-count").textContent=performancesEpisodes.length+" Episodes"; document.querySelector(".performances-description").textContent=performancesSeries.description; document.querySelector(".performances-cast").textContent=performancesSeries.cast; document.querySelector(".performances-genres").textContent=performancesSeries.genres; function performancesLoadEpisode(index){ const episode=performancesEpisodes[index]; performancesPlayer.src= "https://www.youtube-nocookie.com/embed/"+episode.id; document.querySelectorAll(".performances-card").forEach(function(card,i){ if(i===index){ card.classList.add("active"); }else{ card.classList.remove("active"); } }); } performancesEpisodes.forEach(function(episode,index){ const card=document.createElement("div"); card.className="performances-card"; const number=document.createElement("div"); number.className="performances-number"; number.textContent=performancesEpisodes.length-index; const thumb=document.createElement("img"); thumb.className="performances-thumb"; thumb.src="https://i.ytimg.com/vi/"+episode.id+"/hqdefault.jpg"; const text=document.createElement("div"); text.className="performances-card-text"; const title=document.createElement("div"); title.className="performances-card-title"; title.textContent=episode.title; const duration=document.createElement("div"); duration.className="performances-duration"; duration.textContent=episode.duration; text.appendChild(title); text.appendChild(duration); card.appendChild(number); card.appendChild(thumb); card.appendChild(text); card.addEventListener("click",function(){ performancesLoadEpisode(index); document.querySelector(".performances-player-wrap").scrollIntoView({ behavior:"smooth", block:"start" }); }); performancesList.appendChild(card); }); performancesLoadEpisode(0); const performancesTop=document.querySelector(".performances-top"); window.addEventListener("scroll",function(){ if(window.scrollY>300){ performancesTop.classList.add("show"); }else{ performancesTop.classList.remove("show"); } }); performancesTop.addEventListener("click",function(){ window.scrollTo({ top:0, behavior:"smooth" }); });

Cast:

Genres:

Episode List
const cheeringguideSeries={ title:"Cheering Guide", year:"2025", rating:"13+", description:"A collection of Hearts2Hearts' official cheering guides.", cast:"Carmen, Jiwoo, Yuha, Stella, Juun, A-na, Ian, Ye-on", genres:"Cheering Guide" }; const cheeringguideEpisodes=[ { title:"Hearts2Hearts 하츠투하츠 'Lemon Tang' Cheering Guide | S2U(하츄)와 함께라면 다 이겨, 여름 Heart 🩵", duration:"3m", id:"vzJnOHBAtCo" }, { title:"Hearts2Hearts 하츠투하츠 'RUDE!' Cheering Guide | S2U(하츄) 망설임은 Never 이끌린 대로 해 🩵", duration:"4m", id:"AjK78uAd6pA" }, { title:"Hearts2Hearts 하츠투하츠 'FOCUS' Cheering Guide | I cannot focus on anything but S2U(하츄) 🩵", duration:"3m", id:"0pmDQ1iovVo" }, { title:"Hearts2Hearts 'STYLE' Cheering Guide | I like your STYLE 🍀🩵", duration:"4m", id:"FDOec4bINIQ" }, { title:"Hearts2Hearts 'The Chase' Cheering Guide | You love The Chase 🍀🩵", duration:"4m", id:"3ycS2cJvAN4" } ]; const cheeringguidePlayer=document.querySelector(".cheeringguide-player"); const cheeringguideList=document.querySelector(".cheeringguide-list"); document.querySelector(".cheeringguide-title").textContent=cheeringguideSeries.title; document.querySelector(".cheeringguide-year").textContent=cheeringguideSeries.year; document.querySelector(".cheeringguide-rating").textContent=cheeringguideSeries.rating; document.querySelector(".cheeringguide-count").textContent=cheeringguideEpisodes.length+" Episodes"; document.querySelector(".cheeringguide-description").textContent=cheeringguideSeries.description; document.querySelector(".cheeringguide-cast").textContent=cheeringguideSeries.cast; document.querySelector(".cheeringguide-genres").textContent=cheeringguideSeries.genres; function cheeringguideLoadEpisode(index){ const episode=cheeringguideEpisodes[index]; cheeringguidePlayer.src= "https://www.youtube-nocookie.com/embed/"+episode.id; document.querySelectorAll(".cheeringguide-card").forEach(function(card,i){ if(i===index){ card.classList.add("active"); }else{ card.classList.remove("active"); } }); } cheeringguideEpisodes.forEach(function(episode,index){ const card=document.createElement("div"); card.className="cheeringguide-card"; const number=document.createElement("div"); number.className="cheeringguide-number"; number.textContent=cheeringguideEpisodes.length-index; const thumb=document.createElement("img"); thumb.className="cheeringguide-thumb"; thumb.src="https://i.ytimg.com/vi/"+episode.id+"/hqdefault.jpg"; const text=document.createElement("div"); text.className="cheeringguide-card-text"; const title=document.createElement("div"); title.className="cheeringguide-card-title"; title.textContent=episode.title; const duration=document.createElement("div"); duration.className="cheeringguide-duration"; duration.textContent=episode.duration; text.appendChild(title); text.appendChild(duration); card.appendChild(number); card.appendChild(thumb); card.appendChild(text); card.addEventListener("click",function(){ cheeringguideLoadEpisode(index); document.querySelector(".cheeringguide-player-wrap").scrollIntoView({ behavior:"smooth", block:"start" }); }); cheeringguideList.appendChild(card); }); cheeringguideLoadEpisode(0); const cheeringguideTop=document.querySelector(".cheeringguide-top"); window.addEventListener("scroll",function(){ if(window.scrollY>300){ cheeringguideTop.classList.add("show"); }else{ cheeringguideTop.classList.remove("show"); } }); cheeringguideTop.addEventListener("click",function(){ window.scrollTo({ top:0, behavior:"smooth" }); });

Cast:

Genres:

Episode List
const trailersamplerSeries={ title:"Trailer & Mood Sampler", year:"2025", rating:"13+", description:"A collection of Hearts2Hearts' official trailers and mood samplers.", cast:"Carmen, Jiwoo, Yuha, Stella, Juun, A-na, Ian, Ye-on", genres:"Trailer • Sampler" }; const trailersamplerEpisodes=[ { title:"Hearts2Hearts 하츠투하츠 Trailer : The LemonTang Syndrome", duration:"3m", id:"wrdkAIreor4" }, { title:"2026 Hearts2Hearts ❮HEARTS 2 HOUSE❯ Official Trailer", duration:"34s", id:"K70zrYppVas" }, { title:"Hearts2Hearts 하츠투하츠 'RUDE!' Mood Sampler #YE_ON #예온", duration:"27s", id:"bcDV__7_lpE" }, { title:"Hearts2Hearts 하츠투하츠 'RUDE!' Mood Sampler #STELLA #스텔라", duration:"25s", id:"QttkpndZXoI" }, { title:"Hearts2Hearts 하츠투하츠 'RUDE!' Mood Sampler #JIWOO #지우", duration:"25s", id:"QCJqdtgoFEM" }, { title:"Hearts2Hearts 하츠투하츠 'RUDE!' Mood Sampler #YUHA #유하", duration:"23s", id:"0cy6wsUjbC0" }, { title:"Hearts2Hearts 하츠투하츠 'RUDE!' Mood Sampler #IAN #이안", duration:"34s", id:"Mf2MbILK200" }, { title:"Hearts2Hearts 하츠투하츠 'RUDE!' Mood Sampler #A_NA #에이나", duration:"21s", id:"PArwInNjZ4A" }, { title:"Hearts2Hearts 하츠투하츠 'RUDE!' Mood Sampler #JUUN #주은", duration:"25s", id:"OMyCbdH3KTY" }, { title:"Hearts2Hearts 하츠투하츠 'RUDE!' Mood Sampler #CARMEN #카르멘", duration:"21s", id:"i8c1SXtMr2k" }, { title:"Hearts2Hearts : 하츄컴퍼니 직원 행동 지침서 | How to Behave When the Heart is Missing", duration:"1m", id:"9V3t4N6tvMc" }, { title:"2026 Hearts2Hearts SEASON’S GREETINGS VIDEO TEASER", duration:"1m", id:"ff6se09_pVw" }, { title:"Hearts2Hearts 하츠투하츠 'FOCUS' Mood Sampler #2 | Chapter 2. Hard2Hide", duration:"45s", id:"SngpMKBb5Gc" }, { title:"Hearts2Hearts 하츠투하츠 'FOCUS' Mood Sampler #1 | Chapter 1. How2getHearts", duration:"1m", id:"fKFJMwIzZOY" }, { title:"Hearts2Hearts 하츠투하츠 'FOCUS' Trailer", duration:"1m", id:"tPNGxVu5d68" }, { title:"˚₊‧꒰ა H2H STYLISH PHOTO BOOTH ໒꒱ ‧₊˚", duration:"20s", id:"GqRkcX25TPM" }, { title:"Hearts2Hearts 하츠투하츠 'The Chase' Mood Sampler", duration:"38s", id:"blSCP-wFWUI" }, { title:"Hearts2Hearts 하츠투하츠 'Chase Your Choice' Debut Trailer", duration:"2m", id:"srEUps3-5mo" }, { title:"˗ˋˏϟˎˊ˗ ☎ 𖡬 𖤐 | Hearts2Hearts", duration:"2m", id:"clVrZJeuqqk" } ]; const trailersamplerPlayer=document.querySelector(".trailersampler-player"); const trailersamplerList=document.querySelector(".trailersampler-list"); document.querySelector(".trailersampler-title").textContent=trailersamplerSeries.title; document.querySelector(".trailersampler-year").textContent=trailersamplerSeries.year; document.querySelector(".trailersampler-rating").textContent=trailersamplerSeries.rating; document.querySelector(".trailersampler-count").textContent=trailersamplerEpisodes.length+" Episodes"; document.querySelector(".trailersampler-description").textContent=trailersamplerSeries.description; document.querySelector(".trailersampler-cast").textContent=trailersamplerSeries.cast; document.querySelector(".trailersampler-genres").textContent=trailersamplerSeries.genres; function trailersamplerLoadEpisode(index){ const episode=trailersamplerEpisodes[index]; trailersamplerPlayer.src= "https://www.youtube-nocookie.com/embed/"+episode.id; document.querySelectorAll(".trailersampler-card").forEach(function(card,i){ if(i===index){ card.classList.add("active"); }else{ card.classList.remove("active"); } }); } trailersamplerEpisodes.forEach(function(episode,index){ const card=document.createElement("div"); card.className="trailersampler-card"; const number=document.createElement("div"); number.className="trailersampler-number"; number.textContent=trailersamplerEpisodes.length-index; const thumb=document.createElement("img"); thumb.className="trailersampler-thumb"; thumb.src="https://i.ytimg.com/vi/"+episode.id+"/hqdefault.jpg"; const text=document.createElement("div"); text.className="trailersampler-card-text"; const title=document.createElement("div"); title.className="trailersampler-card-title"; title.textContent=episode.title; const duration=document.createElement("div"); duration.className="trailersampler-duration"; duration.textContent=episode.duration; text.appendChild(title); text.appendChild(duration); card.appendChild(number); card.appendChild(thumb); card.appendChild(text); card.addEventListener("click",function(){ trailersamplerLoadEpisode(index); document.querySelector(".trailersampler-player-wrap").scrollIntoView({ behavior:"smooth", block:"start" }); }); trailersamplerList.appendChild(card); }); trailersamplerLoadEpisode(0); const trailersamplerTop=document.querySelector(".trailersampler-top"); window.addEventListener("scroll",function(){ if(window.scrollY>300){ trailersamplerTop.classList.add("show"); }else{ trailersamplerTop.classList.remove("show"); } }); trailersamplerTop.addEventListener("click",function(){ window.scrollTo({ top:0, behavior:"smooth" }); });

Cast:

Genres:

Episode List
const weverseSeries={ title:"Weverse Live", year:"2025", rating:"13+", description:"A collection of Hearts2Hearts' Weverse LIVE broadcasts, including group, unit, and solo livestreams.", cast:"Carmen, Jiwoo, Yuha, Stella, Juun, A-na, Ian, Ye-on", genres:"Live • Talk" }; const weverseEpisodes=[ { title:"26.07.16 하츠투하츠 지우 & 이안 위버스 라이브 | Hearts2Hearts Jiwoo & Ian Weverse Live", duration:"1h 27m", id:"egSmjoQ953I" }, { title:"26.07.15 하츠투하츠 카르멘 & 스텔라 위버스 라이브 | Hearts2Hearts Carmen & Stella Weverse Live", duration:"58m", id:"OPzsi8D_seg" }, { title:"26.07.14 하츠투하츠 이안 위버스 라이브 | Hearts2Hearts Ian Weverse Live", duration:"1h 40m", id:"FVJ6b8EA8Dk" }, { title:"26.07.14 하츠투하츠 이안 위버스 라이브 | Hearts2Hearts Ian Weverse Live", duration:"1h 40m", id:"FVJ6b8EA8Dk" }, { title:"26.07.13 하츠투하츠 유하 & 에이나 위버스 라이브 | Hearts2Hearts Yuha & A-NA Weverse Live", duration:"1h 13m", id:"v6m_N_En_6o" }, { title:"26.07.05 하츠투하츠 위버스 라이브 | Hearts2Hearts Weverse Live", duration:"15m", id:"PUamxboQ9s8" }, { title:"26.07.04 하츠투하츠 카르멘 위버스 라이브 | Hearts2Hearts Carmen Weverse Live", duration:"1h 3m", id:"WTxcn4pKpq4" }, { title:"26.07.03 하츠투하츠 주은 위버스 라이브 | Hearts2Hearts Juun Weverse Live", duration:"59m", id:"IJ2G1pD2P3M" }, { title:"26.07.01 하츠투하츠 지우 위버스 라이브 | Hearts2Hearts Jiwoo Weverse Live", duration:"1h", id:"ncn5MDH6lKk" }, { title:"26.06.25 하츠투하츠 카르멘 위버스 라이브 | Hearts2Hearts Carmen Weverse Live", duration:"38m", id:"yGoXINFhPYI" }, { title:"26.06.24 하츠투하츠 주은 위버스 라이브 | Hearts2Hearts Juun Weverse Live", duration:"1h 17m", id:"0jIcFMXYaKY" }, { title:"26.06.15 하츠투하츠 유하 & 주은 위버스 라이브 | Hearts2Hearts Yuha & Juun Weverse Live", duration:"1h 15m", id:"8-89vZPpyRI" }, { title:"26.06.09 하츠투하츠 카르멘 & 예온 위버스 라이브 | Hearts2Hearts Carmen & Ye-on Weverse Live", duration:"1h 11m", id:"P3dElG67B4c" }, { title:"26.06.07 하츠투하츠 스텔라 & 이안 위버스 라이브 | Hearts2Hearts Stella & Ian Weverse Live", duration:"1h 4m", id:"4Lal1039_1s" }, { title:"26.06.05 하츠투하츠 지우 & 에이나 위버스 라이브 | Hearts2Hearts Jiwoo & A-NA Weverse Live", duration:"1h 6m", id:"uGmNMWBFR1U" }, { title:"26.04.01 하츠투하츠 위버스 라이브 | Hearts2Hearts Weverse Live", duration:"21m", id:"Bkv8pMDAAt0" }, { title:"26.03.15 하츠투하츠 위버스 라이브 | Hearts2Hearts Weverse Live", duration:"29m", id:"K-yxi4D1t28" }, { title:"26.03.01 하츠투하츠 위버스 라이브 | Hearts2Hearts Weverse Live", duration:"31m", id:"y7YePo5YX1w" }, { title:"26.02.24 하츠투하츠 위버스 라이브 | Hearts2Hearts Weverse Live", duration:"9m", id:"nCa7cBsFKok" }, { title:"26.02.22 하츠투하츠 위버스 라이브 | Hearts2Hearts Weverse Live", duration:"34m", id:"vtFK5p9RVrE" }, { title:"25.12.25 하츠투하츠 위버스 라이브 | Hearts2Hearts Weverse Live", duration:"27m", id:"alw3gjiUNI8" }, { title:"25.10.16 하츠투하츠 위버스 라이브 | Hearts2Hearts Weverse Live", duration:"1h 1m", id:"FJe-lI25_rA" }, { title:"25.09.30 하츠투하츠 위버스 라이브 | Hearts2Hearts Weverse Live", duration:"38m", id:"gSyr1h4x16M" }, { title:"25.09.25 하츠투하츠 위버스 라이브 | Hearts2Hearts Weverse Live", duration:"40m", id:"DYD1p6wfFcw" }, { title:"25.09.06 하츠투하츠 위버스 보이스 라이브 | Hearts2Hearts Weverse Live", duration:"9m", id:"xBE5fWIiLsE" }, { title:"25.08.10 하츠투하츠 위버스 라이브 | Hearts2Hearts Weverse Live", duration:"27m", id:"MVVWdJRNwJM" }, { title:"25.06.02 하츠투하츠 위버스 라이브 | Hearts2Hearts Weverse Live", duration:"33m", id:"aRdy2939qx4" }, { title:"25.05.28 하츠투하츠 위버스 라이브 | Hearts2Hearts Weverse Live", duration:"11m", id:"7mat1sswWKI" }, { title:"25.05.06 하츠투하츠 위버스 라이브 | Hearts2Hearts Weverse Live", duration:"27m", id:"SzrMB55re8Q" }, { title:"25.02.27 하츠투하츠 위버스 라이브 | Hearts2Hearts Weverse Live", duration:"22m", id:"YPZqt4biaQo" } ]; const weversePlayer=document.querySelector(".weverse-player"); const weverseList=document.querySelector(".weverse-list"); document.querySelector(".weverse-title").textContent=weverseSeries.title; document.querySelector(".weverse-year").textContent=weverseSeries.year; document.querySelector(".weverse-rating").textContent=weverseSeries.rating; document.querySelector(".weverse-count").textContent=weverseEpisodes.length+" Episodes"; document.querySelector(".weverse-description").textContent=weverseSeries.description; document.querySelector(".weverse-cast").textContent=weverseSeries.cast; document.querySelector(".weverse-genres").textContent=weverseSeries.genres; function weverseLoadEpisode(index){ const episode=weverseEpisodes[index]; weversePlayer.src= "https://www.youtube-nocookie.com/embed/"+episode.id; document.querySelectorAll(".weverse-card").forEach(function(card,i){ if(i===index){ card.classList.add("active"); }else{ card.classList.remove("active"); } }); } weverseEpisodes.forEach(function(episode,index){ const card=document.createElement("div"); card.className="weverse-card"; const number=document.createElement("div"); number.className="weverse-number"; number.textContent=weverseEpisodes.length-index; const thumb=document.createElement("img"); thumb.className="weverse-thumb"; thumb.src="https://i.ytimg.com/vi/"+episode.id+"/hqdefault.jpg"; const text=document.createElement("div"); text.className="weverse-card-text"; const title=document.createElement("div"); title.className="weverse-card-title"; title.textContent=episode.title; const duration=document.createElement("div"); duration.className="weverse-duration"; duration.textContent=episode.duration; text.appendChild(title); text.appendChild(duration); card.appendChild(number); card.appendChild(thumb); card.appendChild(text); card.addEventListener("click",function(){ weverseLoadEpisode(index); document.querySelector(".weverse-player-wrap").scrollIntoView({ behavior:"smooth", block:"start" }); }); weverseList.appendChild(card); }); weverseLoadEpisode(0); const weverseTop=document.querySelector(".weverse-top"); window.addEventListener("scroll",function(){ if(window.scrollY>300){ weverseTop.classList.add("show"); }else{ weverseTop.classList.remove("show"); } }); weverseTop.addEventListener("click",function(){ window.scrollTo({ top:0, behavior:"smooth" }); });

Cast:

Genres:

Episode List
const lemontangmsSeries={ title:"Lemon Tang Music Shows", year:"2026", rating:"13+", description:"A collection of Hearts2Hearts' music show performances for Lemon Tang.", cast:"Carmen, Jiwoo, Yuha, Stella, Juun, A-na, Ian, Ye-on", genres:"Music Show" }; const lemontangmsEpisodes=[ { title:"Lemon Tang - Hearts2Hearts (하츠투하츠) | SBS 260712 방송", duration:"3m", id:"ykCWQ0fP7o0" }, { title:"Hearts2Hearts (하츠투하츠) - Lemon Tang | Show! MusicCore | MBC260711방송", duration:"2m", id:"uHWQ7VylFrk" }, { title:"Hearts2Hearts - Lemon Tang #엠카운트다운 EP.936 | Mnet 260709 방송", duration:"2m", id:"YV-7Bf7MD00" }, { id:"UW8uzoxOqnA", title:"[COMEBACK] Hearts2Hearts - Lemon Tang | Show Champion | EP.602 | 260708", duration:"3m" }, { id:"cSTQwK4rbog", title:"Hearts2Hearts (하츠투하츠) - Lemon Tang | Show! Music Core | MBC 260704", duration:"2m" }, { id:"4s-muK5olTw", title:"Hearts2Hearts ハーツトゥハーツ - Lemon Tang [Music Bank] | KBS WORLD TV 260703", duration:"3m" }, { id:"WW_cCmhqNI8", title:"Hearts2Hearts - Lemon Tang #엠카운트다운 EP.935 | Mnet 260702 방송", duration:"3m" }, { title:"Lemon Tang - Hearts2Hearts (하츠투하츠) | SBS 260628 방송", duration:"3m", id:"2mNkfGMK7AI" }, { title:"Hearts2Hearts (하츠투하츠) - Lemon Tang | Show! MusicCore | MBC260627방송", duration:"3m", id:"a8tzYxhBjOg" }, { title:"'최초 공개' Hearts2Hearts - Lemon Tang #엠카운트다운 EP.934 | Mnet 260625 방송", duration:"4m", id:"R1zwtZV-N6o" } ]; const lemontangmsPlayer=document.querySelector(".lemontangms-player"); const lemontangmsList=document.querySelector(".lemontangms-list"); document.querySelector(".lemontangms-title").textContent=lemontangmsSeries.title; document.querySelector(".lemontangms-year").textContent=lemontangmsSeries.year; document.querySelector(".lemontangms-rating").textContent=lemontangmsSeries.rating; document.querySelector(".lemontangms-count").textContent=lemontangmsEpisodes.length+" Episodes"; document.querySelector(".lemontangms-description").textContent=lemontangmsSeries.description; document.querySelector(".lemontangms-cast").textContent=lemontangmsSeries.cast; document.querySelector(".lemontangms-genres").textContent=lemontangmsSeries.genres; function lemontangmsLoadEpisode(index){ const episode=lemontangmsEpisodes[index]; lemontangmsPlayer.src= "https://www.youtube-nocookie.com/embed/"+episode.id; document.querySelectorAll(".lemontangms-card").forEach(function(card,i){ if(i===index){ card.classList.add("active"); }else{ card.classList.remove("active"); } }); } lemontangmsEpisodes.forEach(function(episode,index){ const card=document.createElement("div"); card.className="lemontangms-card"; const number=document.createElement("div"); number.className="lemontangms-number"; number.textContent=lemontangmsEpisodes.length-index; const thumb=document.createElement("img"); thumb.className="lemontangms-thumb"; thumb.src="https://i.ytimg.com/vi/"+episode.id+"/hqdefault.jpg"; const text=document.createElement("div"); text.className="lemontangms-card-text"; const title=document.createElement("div"); title.className="lemontangms-card-title"; title.textContent=episode.title; const duration=document.createElement("div"); duration.className="lemontangms-duration"; duration.textContent=episode.duration; text.appendChild(title); text.appendChild(duration); card.appendChild(number); card.appendChild(thumb); card.appendChild(text); card.addEventListener("click",function(){ lemontangmsLoadEpisode(index); document.querySelector(".lemontangms-player-wrap").scrollIntoView({ behavior:"smooth", block:"start" }); }); lemontangmsList.appendChild(card); }); lemontangmsLoadEpisode(0); const lemontangmsTop=document.querySelector(".lemontangms-top"); window.addEventListener("scroll",function(){ if(window.scrollY>300){ lemontangmsTop.classList.add("show"); }else{ lemontangmsTop.classList.remove("show"); } }); lemontangmsTop.addEventListener("click",function(){ window.scrollTo({ top:0, behavior:"smooth" }); });

Cast:

Genres:

Episode List
const rudemsSeries={ title:"RUDE! Music Shows", year:"2026", rating:"13+", description:"A collection of Hearts2Hearts' music show performances for RUDE!.", cast:"Carmen, Jiwoo, Yuha, Stella, Juun, A-na, Ian, Ye-on", genres:"Music Show" }; const rudemsEpisodes=[ { title:"Hearts2Hearts (하츠투하츠) - RUDE! | Show! MusicCore | MBC260314방송", duration:"3m", id:"_Zlp69mTBiY" }, { title:"RUDE! - Hearts2Hearts [뮤직뱅크/Music Bank] | KBS 260313 방송", duration:"3m", id:"TXxs-MldY2s" }, { title:"Hearts2Hearts - RUDE! #엠카운트다운 EP.919 | Mnet 260312 방송", duration:"3m", id:"o_cBHoHY3mw" }, { title:"RUDE! - Hearts2Hearts (하츠투하츠) | SBS 260308 방송", duration:"3m", id:"Ai6FLQmajaI" }, { title:"Hearts2Hearts (하츠투하츠) - RUDE! | Show! MusicCore | MBC260307방송", duration:"3m", id:"37VtoDg5O2o" }, { title:"Hearts2Hearts ハーツトゥハーツ 하츠투하츠 - RUDE! [Music Bank] | KBS WORLD TV 260306", duration:"3m", id:"AcvO1zQ1bJk" }, { title:"RUDE! - Hearts2Hearts (하츠투하츠) | SBS 260301 방송", duration:"3m", id:"J8t_o0ak7Vc" }, { title:"Hearts2Hearts (하츠투하츠) - RUDE! | Show! MusicCore | MBC260228방송", duration:"3m", id:"j3gznEhDUK8" }, { title:"RUDE! - Hearts2Hearts [뮤직뱅크/Music Bank] | KBS 260227 방송", duration:"3m", id:"JaLFIKX71gE" }, { title:"'최초 공개' Hearts2Hearts - RUDE! #엠카운트다운 EP.917 | Mnet 260226 방송", duration:"4m", id:"NoQPDBpxfyA" } ]; const rudemsPlayer=document.querySelector(".rudems-player"); const rudemsList=document.querySelector(".rudems-list"); document.querySelector(".rudems-title").textContent=rudemsSeries.title; document.querySelector(".rudems-year").textContent=rudemsSeries.year; document.querySelector(".rudems-rating").textContent=rudemsSeries.rating; document.querySelector(".rudems-count").textContent=rudemsEpisodes.length+" Episodes"; document.querySelector(".rudems-description").textContent=rudemsSeries.description; document.querySelector(".rudems-cast").textContent=rudemsSeries.cast; document.querySelector(".rudems-genres").textContent=rudemsSeries.genres; function rudemsLoadEpisode(index){ const episode=rudemsEpisodes[index]; rudemsPlayer.src= "https://www.youtube-nocookie.com/embed/"+episode.id; document.querySelectorAll(".rudems-card").forEach(function(card,i){ if(i===index){ card.classList.add("active"); }else{ card.classList.remove("active"); } }); } rudemsEpisodes.forEach(function(episode,index){ const card=document.createElement("div"); card.className="rudems-card"; const number=document.createElement("div"); number.className="rudems-number"; number.textContent=rudemsEpisodes.length-index; const thumb=document.createElement("img"); thumb.className="rudems-thumb"; thumb.src="https://i.ytimg.com/vi/"+episode.id+"/hqdefault.jpg"; const text=document.createElement("div"); text.className="rudems-card-text"; const title=document.createElement("div"); title.className="rudems-card-title"; title.textContent=episode.title; const duration=document.createElement("div"); duration.className="rudems-duration"; duration.textContent=episode.duration; text.appendChild(title); text.appendChild(duration); card.appendChild(number); card.appendChild(thumb); card.appendChild(text); card.addEventListener("click",function(){ rudemsLoadEpisode(index); document.querySelector(".rudems-player-wrap").scrollIntoView({ behavior:"smooth", block:"start" }); }); rudemsList.appendChild(card); }); rudemsLoadEpisode(0); const rudemsTop=document.querySelector(".rudems-top"); window.addEventListener("scroll",function(){ if(window.scrollY>300){ rudemsTop.classList.add("show"); }else{ rudemsTop.classList.remove("show"); } }); rudemsTop.addEventListener("click",function(){ window.scrollTo({ top:0, behavior:"smooth" }); });

Cast:

Genres:

Episode List
const focusmsSeries={ title:"FOCUS Music Shows", year:"2025", rating:"13+", description:"A collection of Hearts2Hearts' music show performances for FOCUS.", cast:"Carmen, Jiwoo, Yuha, Stella, Juun, A-na, Ian, Ye-on", genres:"Music Show" }; const focusmsEpisodes=[ { title:"Hearts2Hearts - FOCUS [Open Concert : EP.1551] | KBS KOREA 251130", duration:"3m", id:"vMOVWO71SKU" }, { title:"FOCUS - Hearts2Hearts(하츠투하츠) | SBS 251116 방송", duration:"3m", id:"TC7Mw9ik4yg" }, { title:"Hearts2Hearts - FOCUS | Show! MusicCore | aired on MBC251115 #hearts2hearts", duration:"3m", id:"fPK2iplg7bs" }, { title:"Hearts2Hearts ハーツトゥハーツ 하츠투하츠 - FOCUS [Music Bank] | KBS WORLD TV 251114", duration:"3m", id:"p95GTNSkiOk" }, { title:"FOCUS - Hearts2Hearts(하츠투하츠) | SBS 251109 방송", duration:"3m", id:"gv4P3n7SvFk" }, { title:"Hearts2Hearts ハーツトゥハーツ 하츠투하츠 - FOCUS [Music Bank] | KBS WORLD TV 251107", duration:"3m", id:"EmhG9sSzXQQ" }, { title:"FOCUS - Hearts2Hearts(하츠투하츠) | SBS 251102 방송", duration:"3m", id:"mA8xrIegKNU" }, { title:"Hearts2Hearts (하츠투하츠) - FOCUS | Show! MusicCore | MBC251101방송", duration:"3m", id:"gaTYDsUhhrQ" }, { title:"Hearts2Hearts ハーツトゥハーツ 하츠투하츠 - FOCUS [Music Bank] | KBS WORLD TV 251031", duration:"3m", id:"BfcBaFPonHs" }, { title:"[COMEBACK] Hearts2Hearts(하츠투하츠) - FOCUS l Show Champion l EP.575 l 251029", duration:"3m", id:"ea5OsYhdLIs" }, { title:"Hearts2Hearts, FOCUS [THE SHOW 251028]", duration:"3m", id:"82WKTlJMJiY" }, { title:"FOCUS - Hearts2Hearts(하츠투하츠) | SBS 251026 방송", duration:"3m", id:"pKJ9JacTKR0" }, { title:"Hearts2Hearts (하츠투하츠) - FOCUS | Show! MusicCore | MBC251025방송", duration:"3m", id:"rfL21nFvEsc" }, { title:"FOCUS - Hearts2Hearts (하츠투하츠) [뮤직뱅크/Music Bank] | KBS 251024 방송", duration:"3m", id:"E0CZt2d6OKE" }, { title:"'최초 공개' Hearts2Hearts - FOCUS #엠카운트다운 EP.910 | Mnet 251023 방송", duration:"3m", id:"MLyIfhibzbQ" } ]; const focusmsPlayer=document.querySelector(".focusms-player"); const focusmsList=document.querySelector(".focusms-list"); document.querySelector(".focusms-title").textContent=focusmsSeries.title; document.querySelector(".focusms-year").textContent=focusmsSeries.year; document.querySelector(".focusms-rating").textContent=focusmsSeries.rating; document.querySelector(".focusms-count").textContent=focusmsEpisodes.length+" Episodes"; document.querySelector(".focusms-description").textContent=focusmsSeries.description; document.querySelector(".focusms-cast").textContent=focusmsSeries.cast; document.querySelector(".focusms-genres").textContent=focusmsSeries.genres; function focusmsLoadEpisode(index){ const episode=focusmsEpisodes[index]; focusmsPlayer.src= "https://www.youtube-nocookie.com/embed/"+episode.id; document.querySelectorAll(".focusms-card").forEach(function(card,i){ if(i===index){ card.classList.add("active"); }else{ card.classList.remove("active"); } }); } focusmsEpisodes.forEach(function(episode,index){ const card=document.createElement("div"); card.className="focusms-card"; const number=document.createElement("div"); number.className="focusms-number"; number.textContent=focusmsEpisodes.length-index; const thumb=document.createElement("img"); thumb.className="focusms-thumb"; thumb.src="https://i.ytimg.com/vi/"+episode.id+"/hqdefault.jpg"; const text=document.createElement("div"); text.className="focusms-card-text"; const title=document.createElement("div"); title.className="focusms-card-title"; title.textContent=episode.title; const duration=document.createElement("div"); duration.className="focusms-duration"; duration.textContent=episode.duration; text.appendChild(title); text.appendChild(duration); card.appendChild(number); card.appendChild(thumb); card.appendChild(text); card.addEventListener("click",function(){ focusmsLoadEpisode(index); document.querySelector(".focusms-player-wrap").scrollIntoView({ behavior:"smooth", block:"start" }); }); focusmsList.appendChild(card); }); focusmsLoadEpisode(0); const focusmsTop=document.querySelector(".focusms-top"); window.addEventListener("scroll",function(){ if(window.scrollY>300){ focusmsTop.classList.add("show"); }else{ focusmsTop.classList.remove("show"); } }); focusmsTop.addEventListener("click",function(){ window.scrollTo({ top:0, behavior:"smooth" }); });

Cast:

Genres:

Episode List
const prettypleasemsSeries={ title:"Pretty Please Music Shows", year:"2025", rating:"13+", description:"A collection of Hearts2Hearts' music show performances for Pretty Please.", cast:"Carmen, Jiwoo, Yuha, Stella, Juun, A-na, Ian, Ye-on", genres:"Music Show" }; const prettypleasemsEpisodes=[ { title:"Hearts2Hearts (하츠투하츠) - Pretty Please | Show! MusicCore | MBC251004방송", duration:"3m", id:"cTQKnX66hEE" }, { title:"'COMEBACK' Hearts2Hearts - Pretty Please #엠카운트다운 EP.908 | Mnet 251002 방송", duration:"4m", id:"wnar5gbxnLo" }, { title:"Pretty Please - Hearts2Hearts(하츠투하츠) | SBS 250928 방송", duration:"3m", id:"PfXpoC57crU" }, { title:"Hearts2Hearts - Pretty Please | Show! MusicCore | aired on MBC250927 #Heart2Hearts", duration:"4m", id:"p7aXjWDOUGU" }, { title:"[PREMIERE🚨] Hearts2Hearts ハーツトゥハーツ 하츠투하츠 - Pretty Please [Music Bank] | KBS WORLD TV 250926", duration:"3m", id:"4ebTO5xXz2E" } ]; const prettypleasemsPlayer=document.querySelector(".prettypleasems-player"); const prettypleasemsList=document.querySelector(".prettypleasems-list"); document.querySelector(".prettypleasems-title").textContent=prettypleasemsSeries.title; document.querySelector(".prettypleasems-year").textContent=prettypleasemsSeries.year; document.querySelector(".prettypleasems-rating").textContent=prettypleasemsSeries.rating; document.querySelector(".prettypleasems-count").textContent=prettypleasemsEpisodes.length+" Episodes"; document.querySelector(".prettypleasems-description").textContent=prettypleasemsSeries.description; document.querySelector(".prettypleasems-cast").textContent=prettypleasemsSeries.cast; document.querySelector(".prettypleasems-genres").textContent=prettypleasemsSeries.genres; function prettypleasemsLoadEpisode(index){ const episode=prettypleasemsEpisodes[index]; prettypleasemsPlayer.src= "https://www.youtube-nocookie.com/embed/"+episode.id; document.querySelectorAll(".prettypleasems-card").forEach(function(card,i){ if(i===index){ card.classList.add("active"); }else{ card.classList.remove("active"); } }); } prettypleasemsEpisodes.forEach(function(episode,index){ const card=document.createElement("div"); card.className="prettypleasems-card"; const number=document.createElement("div"); number.className="prettypleasems-number"; number.textContent=prettypleasemsEpisodes.length-index; const thumb=document.createElement("img"); thumb.className="prettypleasems-thumb"; thumb.src="https://i.ytimg.com/vi/"+episode.id+"/hqdefault.jpg"; const text=document.createElement("div"); text.className="prettypleasems-card-text"; const title=document.createElement("div"); title.className="prettypleasems-card-title"; title.textContent=episode.title; const duration=document.createElement("div"); duration.className="prettypleasems-duration"; duration.textContent=episode.duration; text.appendChild(title); text.appendChild(duration); card.appendChild(number); card.appendChild(thumb); card.appendChild(text); card.addEventListener("click",function(){ prettypleasemsLoadEpisode(index); document.querySelector(".prettypleasems-player-wrap").scrollIntoView({ behavior:"smooth", block:"start" }); }); prettypleasemsList.appendChild(card); }); prettypleasemsLoadEpisode(0); const prettypleasemsTop=document.querySelector(".prettypleasems-top"); window.addEventListener("scroll",function(){ if(window.scrollY>300){ prettypleasemsTop.classList.add("show"); }else{ prettypleasemsTop.classList.remove("show"); } }); prettypleasemsTop.addEventListener("click",function(){ window.scrollTo({ top:0, behavior:"smooth" }); });

Cast:

Genres:

Episode List
const stylemsSeries={ title:"STYLE Music Shows", year:"2025", rating:"13+", description:"A collection of Hearts2Hearts' music show performances for STYLE.", cast:"Carmen, Jiwoo, Yuha, Stella, Juun, A-na, Ian, Ye-on", genres:"Music Show" }; const stylemsEpisodes=[ { title:"Hearts2Hearts (하츠투하츠) - STYLE | SBS 250629 방송", duration:"3m", id:"5qk-HYkV3HA" }, { title:"Hearts2Hearts (하츠투하츠) - STYLE | Show! MusicCore | MBC250628방송", duration:"3m", id:"X4EMROC9IDo" }, { title:"Hearts2Hearts - STYLE #엠카운트다운 EP.894 | Mnet 250626 방송", duration:"3m", id:"1whqfdY5NI8" }, { title:"Hearts2Hearts (하츠투하츠) - STYLE | SBS 250622 방송", duration:"3m", id:"UgZ8m52rWwg" }, { title:"Hearts2Hearts (하츠투하츠) - STYLE | Show! MusicCore | MBC250621방송", duration:"4m", id:"hwQlURpblRI" }, { title:"STYLE - Hearts2Hearts (하츠투하츠) [뮤직뱅크/Music Bank] | KBS 250620 방송", duration:"3m", id:"A-rHQNVrim4" }, { title:"'최초 공개' Hearts2Hearts - STYLE #엠카운트다운 EP.893 | Mnet 250619 방송", duration:"4m", id:"FGBwQeD2FpY" } ]; const stylemsPlayer=document.querySelector(".stylems-player"); const stylemsList=document.querySelector(".stylems-list"); document.querySelector(".stylems-title").textContent=stylemsSeries.title; document.querySelector(".stylems-year").textContent=stylemsSeries.year; document.querySelector(".stylems-rating").textContent=stylemsSeries.rating; document.querySelector(".stylems-count").textContent=stylemsEpisodes.length+" Episodes"; document.querySelector(".stylems-description").textContent=stylemsSeries.description; document.querySelector(".stylems-cast").textContent=stylemsSeries.cast; document.querySelector(".stylems-genres").textContent=stylemsSeries.genres; function stylemsLoadEpisode(index){ const episode=stylemsEpisodes[index]; stylemsPlayer.src= "https://www.youtube-nocookie.com/embed/"+episode.id; document.querySelectorAll(".stylems-card").forEach(function(card,i){ if(i===index){ card.classList.add("active"); }else{ card.classList.remove("active"); } }); } stylemsEpisodes.forEach(function(episode,index){ const card=document.createElement("div"); card.className="stylems-card"; const number=document.createElement("div"); number.className="stylems-number"; number.textContent=stylemsEpisodes.length-index; const thumb=document.createElement("img"); thumb.className="stylems-thumb"; thumb.src="https://i.ytimg.com/vi/"+episode.id+"/hqdefault.jpg"; const text=document.createElement("div"); text.className="stylems-card-text"; const title=document.createElement("div"); title.className="stylems-card-title"; title.textContent=episode.title; const duration=document.createElement("div"); duration.className="stylems-duration"; duration.textContent=episode.duration; text.appendChild(title); text.appendChild(duration); card.appendChild(number); card.appendChild(thumb); card.appendChild(text); card.addEventListener("click",function(){ stylemsLoadEpisode(index); document.querySelector(".stylems-player-wrap").scrollIntoView({ behavior:"smooth", block:"start" }); }); stylemsList.appendChild(card); }); stylemsLoadEpisode(0); const stylemsTop=document.querySelector(".stylems-top"); window.addEventListener("scroll",function(){ if(window.scrollY>300){ stylemsTop.classList.add("show"); }else{ stylemsTop.classList.remove("show"); } }); stylemsTop.addEventListener("click",function(){ window.scrollTo({ top:0, behavior:"smooth" }); });

Cast:

Genres:

Episode List
const thechasemsSeries={ title:"The Chase Music Shows", year:"2025", rating:"13+", description:"A collection of Hearts2Hearts' music show performances for The Chase.", cast:"Carmen, Jiwoo, Yuha, Stella, Juun, A-na, Ian, Ye-on", genres:"Music Show" }; const thechasemsEpisodes=[ { title:"Hearts2Hearts (하츠투하츠) – The Chase @인기가요 inkigayo 20250316", duration:"3m", id:"60NJwDqFN1k" }, { title:"Hearts2Hearts - The Chase | Show! MusicCore | aired on MBC 250315 #Hearts2Hearts #ShowMusicCore", duration:"3m", id:"CR9jAGWkmZQ" }, { title:"The Chase - Hearts2Hearts ハーツトゥーハーツ 하츠투하츠 [Music Bank] | KBS WORLD TV 250314", duration:"3m", id:"Ug3o60pdlq0" }, { title:"Hearts2Hearts - The Chase #엠카운트다운 EP.879 | Mnet 250313 방송", duration:"3m", id:"oA4M2cF_vfY" }, { title:"하츠투하츠(Hearts2Hearts) - The Chase l Show Champion l EP.546 l 250312", duration:"3m", id:"3fWBeaeNvN0" }, { title:"Hearts2Hearts, The Chase (하츠투하츠, The Chase) [THE SHOW 250311]", duration:"3m", id:"7-gVWmzjNDI" }, { title:"Hearts2Hearts (하츠투하츠) – The Chase @인기가요 inkigayo 20250309", duration:"3m", id:"d-dt9ouxT38" }, { title:"Hearts2Hearts (하츠투하츠) - The Chase | Show! MusicCore | MBC250308방송", duration:"3m", id:"00-Te7xhsok" }, { title:"The Chase - Hearts2Hearts ハーツトゥーハーツ 하츠투하츠 [Music Bank] | KBS WORLD TV 250307", duration:"3m", id:"kzCtw4OD97g" }, { title:"Hearts2Hearts - The Chase #엠카운트다운 EP.878 | Mnet 250306 방송", duration:"3m", id:"AL_L7oXHfLI" }, { title:"[HOT DEBUT] 하츠투하츠(Hearts2Hearts) - The Chase l Show Champion l EP.545 l 250305", duration:"3m", id:"qB4MYtaL4Gs" }, { title:"Hearts2Hearts, The Chase (하츠투하츠, The Chase) [THE SHOW 250304]", duration:"4m", id:"hsn0T-SesuA" }, { title:"Hearts2Hearts (하츠투하츠) – The Chase @인기가요 inkigayo 20250302", duration:"4m", id:"HqiaTnoApwk" }, { title:"Hearts2Hearts (하츠투하츠) - The Chase | Show! MusicCore | MBC250301방송", duration:"4m", id:"HyvJ9Pfl7_o" }, { title:"[HOT DEBUT] The Chase - Hearts2Hearts ハーツトゥーハーツ 하츠투하츠 [Music Bank] | KBS WORLD TV 250228", duration:"3m", id:"-NYn3BkplZc" }, { title:"'최초 공개' Hearts2Hearts - The Chase #엠카운트다운 EP.877 | Mnet 250227 방송", duration:"4m", id:"WK8c3dC1x78" } ]; const thechasemsPlayer=document.querySelector(".thechasems-player"); const thechasemsList=document.querySelector(".thechasems-list"); document.querySelector(".thechasems-title").textContent=thechasemsSeries.title; document.querySelector(".thechasems-year").textContent=thechasemsSeries.year; document.querySelector(".thechasems-rating").textContent=thechasemsSeries.rating; document.querySelector(".thechasems-count").textContent=thechasemsEpisodes.length+" Episodes"; document.querySelector(".thechasems-description").textContent=thechasemsSeries.description; document.querySelector(".thechasems-cast").textContent=thechasemsSeries.cast; document.querySelector(".thechasems-genres").textContent=thechasemsSeries.genres; function thechasemsLoadEpisode(index){ const episode=thechasemsEpisodes[index]; thechasemsPlayer.src= "https://www.youtube-nocookie.com/embed/"+episode.id; document.querySelectorAll(".thechasems-card").forEach(function(card,i){ if(i===index){ card.classList.add("active"); }else{ card.classList.remove("active"); } }); } thechasemsEpisodes.forEach(function(episode,index){ const card=document.createElement("div"); card.className="thechasems-card"; const number=document.createElement("div"); number.className="thechasems-number"; number.textContent=thechasemsEpisodes.length-index; const thumb=document.createElement("img"); thumb.className="thechasems-thumb"; thumb.src="https://i.ytimg.com/vi/"+episode.id+"/hqdefault.jpg"; const text=document.createElement("div"); text.className="thechasems-card-text"; const title=document.createElement("div"); title.className="thechasems-card-title"; title.textContent=episode.title; const duration=document.createElement("div"); duration.className="thechasems-duration"; duration.textContent=episode.duration; text.appendChild(title); text.appendChild(duration); card.appendChild(number); card.appendChild(thumb); card.appendChild(text); card.addEventListener("click",function(){ thechasemsLoadEpisode(index); document.querySelector(".thechasems-player-wrap").scrollIntoView({ behavior:"smooth", block:"start" }); }); thechasemsList.appendChild(card); }); thechasemsLoadEpisode(0); const thechasemsTop=document.querySelector(".thechasems-top"); window.addEventListener("scroll",function(){ if(window.scrollY>300){ thechasemsTop.classList.add("show"); }else{ thechasemsTop.classList.remove("show"); } }); thechasemsTop.addEventListener("click",function(){ window.scrollTo({ top:0, behavior:"smooth" }); });

Cast:

Genres:

Episode List
const isac2025Series={ title:"Idol Star Athletics Championship", year:"2025", rating:"13+", language:"ENG SUB", description:"A collection of Hearts2Hearts' appearances at the 2025 Idol Star Athletics Championship, featuring relay races, shooting competitions, ssireum matches, and event highlights.", cast:"Carmen, Jiwoo, Yuha, Stella, Juun, A-na, Ian, Ye-on", genres:"Sports • Variety" }; const isac2025Episodes=[ { title:"[K-POP] Hearts2Hearts at ISAC! ✨1 Hour✨ Idol Sports Highlights🏃 #Hearts2Hearts #KpopIdol", duration:"48m", id:"3adsWMJx54M" }, { title:"ISAC 2025🏃‍♀️ SAY MY NAME VS Hearts2Hearts | Women's Ssireum Heats", duration:"13m", id:"J45Lk0Ndf3M" }, { title:"ISAC 2025🏃‍♀️ Hearts2Hearts VS MEOVV | Women's Shooting Final #Hearts2Hearts", duration:"11m", id:"3GWNIOCYBfI" }, { title:"ISAC 2025🏃‍♀️ Hearts2Hearts VS ILLIT | Women's Shooting Semifinals #Hearts2Hearts", duration:"19m", id:"s3obH8EePGQ" }, { title:"ISAC 2025🏃‍♀️ A Last Chance to Reach the Final | Mixed Team Shooting Semifinal", duration:"25m", id:"ZIgAvsdz3S4" }, { title:"ISAC 2025🏃‍♀️ Who is the CHAMPION? | Women's 400m Relay Final", duration:"4m", id:"9JofSqsefGw" }, { title:"ISAC 2025🏃‍♀️ Hearts2Hearts VS Kep1er | Women's 400m Relay Heats", duration:"8m", id:"VIggkwck9vY" } ]; const isac2025Player=document.querySelector(".isac2025-player"); const isac2025List=document.querySelector(".isac2025-list"); document.querySelector(".isac2025-title").textContent=isac2025Series.title; document.querySelector(".isac2025-year").textContent=isac2025Series.year; document.querySelector(".isac2025-rating").textContent=isac2025Series.rating; document.querySelector(".isac2025-count").textContent=isac2025Episodes.length+" Episodes"; document.querySelector(".isac2025-language").textContent=isac2025Series.language; document.querySelector(".isac2025-description").textContent=isac2025Series.description; document.querySelector(".isac2025-cast").textContent=isac2025Series.cast; document.querySelector(".isac2025-genres").textContent=isac2025Series.genres; function isac2025LoadEpisode(index){ const episode=isac2025Episodes[index]; isac2025Player.src= "https://www.youtube-nocookie.com/embed/"+episode.id; document.querySelectorAll(".isac2025-card").forEach(function(card,i){ if(i===index){ card.classList.add("active"); }else{ card.classList.remove("active"); } }); } isac2025Episodes.forEach(function(episode,index){ const card=document.createElement("div"); card.className="isac2025-card"; const number=document.createElement("div"); number.className="isac2025-number"; number.textContent=isac2025Episodes.length-index; const thumb=document.createElement("img"); thumb.className="isac2025-thumb"; thumb.src="https://i.ytimg.com/vi/"+episode.id+"/hqdefault.jpg"; const text=document.createElement("div"); text.className="isac2025-card-text"; const title=document.createElement("div"); title.className="isac2025-card-title"; title.textContent=episode.title; const duration=document.createElement("div"); duration.className="isac2025-duration"; duration.textContent=episode.duration; text.appendChild(title); text.appendChild(duration); card.appendChild(number); card.appendChild(thumb); card.appendChild(text); card.addEventListener("click",function(){ isac2025LoadEpisode(index); document.querySelector(".isac2025-player-wrap").scrollIntoView({ behavior:"smooth", block:"start" }); }); isac2025List.appendChild(card); }); isac2025LoadEpisode(0); const isac2025Top=document.querySelector(".isac2025-top"); window.addEventListener("scroll",function(){ if(window.scrollY>300){ isac2025Top.classList.add("show"); }else{ isac2025Top.classList.remove("show"); } }); isac2025Top.addEventListener("click",function(){ window.scrollTo({ top:0, behavior:"smooth" }); });

Knowing Bros EP. 520

2026ENG SUB

Amazing Saturday EP. 388

2025ENG SUB

Hearts2Hearts 하츠투하츠 'Lemon Tang' MV

202613+3m
Music Videos
const lemontangVideos = [ { title:"Hearts2Hearts 하츠투하츠 'The Chase' MV", duration:"2m", id:"kxUA2wwYiME", link:"#thechase" }, { title:"Hearts2Hearts 하츠투하츠 'Butterflies' MV", duration:"3m", id:"hJ9Wp3PO3c8", link:"#butterflies" }, { title:"Hearts2Hearts 하츠투하츠 'STYLE' MV", duration:"3m", id:"n7kFRxFIPrI", link:"#style" }, { title:"Hearts2Hearts 하츠투하츠 'Pretty Please' MV", duration:"3m", id:"ufwB9Uja_wM", link:"#prettyplease" }, { title:"Hearts2Hearts 하츠투하츠 'FOCUS' MV", duration:"3m", id:"Ur7aK4FvK-U", link:"#focus" }, { title:"Hearts2Hearts 하츠투하츠 'RUDE!' MV", duration:"3m", id:"F7sGJVUrkjQ", link:"#rude" }, { title:"Hearts2Hearts 하츠투하츠 'Lemon Tang' MV", duration:"3m", id:"1VqxWNwgf5Q", link:"#lemontang" } ]; const lemontangList = document.querySelector(".lemontang-list"); lemontangVideos.forEach(function(video,index){ const card = document.createElement("div"); card.className = "lemontang-card"; if(video.link === "#lemontang"){ card.classList.add("active"); } const number = document.createElement("div"); number.className = "lemontang-number"; number.textContent = index + 1; const thumb = document.createElement("img"); thumb.className = "lemontang-thumb"; thumb.src = "https://i.ytimg.com/vi/" + video.id + "/hqdefault.jpg"; const text = document.createElement("div"); text.className = "lemontang-card-text"; const title = document.createElement("div"); title.className = "lemontang-card-title"; title.textContent = video.title; const duration = document.createElement("div"); duration.className = "lemontang-duration"; duration.textContent = video.duration; text.appendChild(title); text.appendChild(duration); card.appendChild(number); card.appendChild(thumb); card.appendChild(text); card.addEventListener("click",function(){ window.location.href="https://heartsflix.carrd.co/"+video.link; }); lemontangList.appendChild(card); }); const lemontangTop=document.querySelector(".lemontang-top"); window.addEventListener("scroll",function(){ if(window.scrollY>300){ lemontangTop.classList.add("show"); }else{ lemontangTop.classList.remove("show"); } }); lemontangTop.addEventListener("click",function(){ window.scrollTo({ top:0, behavior:"smooth" }); });

Hearts2Hearts 하츠투하츠 'RUDE!' MV

202513+3m
Music Videos
const rudeVideos = [ { title:"Hearts2Hearts 하츠투하츠 'The Chase' MV", duration:"2m", id:"kxUA2wwYiME", link:"#thechase" }, { title:"Hearts2Hearts 하츠투하츠 'Butterflies' MV", duration:"3m", id:"hJ9Wp3PO3c8", link:"#butterflies" }, { title:"Hearts2Hearts 하츠투하츠 'STYLE' MV", duration:"3m", id:"n7kFRxFIPrI", link:"#style" }, { title:"Hearts2Hearts 하츠투하츠 'Pretty Please' MV", duration:"3m", id:"ufwB9Uja_wM", link:"#prettyplease" }, { title:"Hearts2Hearts 하츠투하츠 'FOCUS' MV", duration:"3m", id:"Ur7aK4FvK-U", link:"#focus" }, { title:"Hearts2Hearts 하츠투하츠 'RUDE!' MV", duration:"3m", id:"F7sGJVUrkjQ", link:"#rude" }, { title:"Hearts2Hearts 하츠투하츠 'Lemon Tang' MV", duration:"3m", id:"1VqxWNwgf5Q", link:"#lemontang" } ]; const rudeList = document.querySelector(".rude-list"); rudeVideos.forEach(function(video,index){ const card = document.createElement("div"); card.className = "rude-card"; if(video.link === "#rude"){ card.classList.add("active"); } const number = document.createElement("div"); number.className = "rude-number"; number.textContent = index + 1; const thumb = document.createElement("img"); thumb.className = "rude-thumb"; thumb.src = "https://i.ytimg.com/vi/" + video.id + "/hqdefault.jpg"; const text = document.createElement("div"); text.className = "rude-card-text"; const title = document.createElement("div"); title.className = "rude-card-title"; title.textContent = video.title; const duration = document.createElement("div"); duration.className = "rude-duration"; duration.textContent = video.duration; text.appendChild(title); text.appendChild(duration); card.appendChild(number); card.appendChild(thumb); card.appendChild(text); card.addEventListener("click",function(){ window.location.href="https://heartsflix.carrd.co/"+video.link; }); rudeList.appendChild(card); }); const rudeTop=document.querySelector(".rude-top"); window.addEventListener("scroll",function(){ if(window.scrollY>300){ rudeTop.classList.add("show"); }else{ rudeTop.classList.remove("show"); } }); rudeTop.addEventListener("click",function(){ window.scrollTo({ top:0, behavior:"smooth" }); });

Hearts2Hearts 하츠투하츠 'FOCUS' MV

202513+3m
Music Videos
const focusVideos = [ { title:"Hearts2Hearts 하츠투하츠 'The Chase' MV", duration:"2m", id:"kxUA2wwYiME", link:"#thechase" }, { title:"Hearts2Hearts 하츠투하츠 'Butterflies' MV", duration:"3m", id:"hJ9Wp3PO3c8", link:"#butterflies" }, { title:"Hearts2Hearts 하츠투하츠 'STYLE' MV", duration:"3m", id:"n7kFRxFIPrI", link:"#style" }, { title:"Hearts2Hearts 하츠투하츠 'Pretty Please' MV", duration:"3m", id:"ufwB9Uja_wM", link:"#prettyplease" }, { title:"Hearts2Hearts 하츠투하츠 'FOCUS' MV", duration:"3m", id:"Ur7aK4FvK-U", link:"#focus" }, { title:"Hearts2Hearts 하츠투하츠 'RUDE!' MV", duration:"3m", id:"F7sGJVUrkjQ", link:"#rude" }, { title:"Hearts2Hearts 하츠투하츠 'Lemon Tang' MV", duration:"3m", id:"1VqxWNwgf5Q", link:"#lemontang" } ]; const focusList = document.querySelector(".focus-list"); focusVideos.forEach(function(video,index){ const card = document.createElement("div"); card.className = "focus-card"; if(video.link === "#focus"){ card.classList.add("active"); } const number = document.createElement("div"); number.className = "focus-number"; number.textContent = index + 1; const thumb = document.createElement("img"); thumb.className = "focus-thumb"; thumb.src = "https://i.ytimg.com/vi/" + video.id + "/hqdefault.jpg"; const text = document.createElement("div"); text.className = "focus-card-text"; const title = document.createElement("div"); title.className = "focus-card-title"; title.textContent = video.title; const duration = document.createElement("div"); duration.className = "focus-duration"; duration.textContent = video.duration; text.appendChild(title); text.appendChild(duration); card.appendChild(number); card.appendChild(thumb); card.appendChild(text); card.addEventListener("click",function(){ window.location.href="https://heartsflix.carrd.co/"+video.link; }); focusList.appendChild(card); }); const focusTop=document.querySelector(".focus-top"); window.addEventListener("scroll",function(){ if(window.scrollY>300){ focusTop.classList.add("show"); }else{ focusTop.classList.remove("show"); } }); focusTop.addEventListener("click",function(){ window.scrollTo({ top:0, behavior:"smooth" }); });

Hearts2Hearts 하츠투하츠 'Pretty Please' MV

202513+3m
Music Videos
const prettypleaseVideos = [ { title:"Hearts2Hearts 하츠투하츠 'The Chase' MV", duration:"2m", id:"kxUA2wwYiME", link:"#thechase" }, { title:"Hearts2Hearts 하츠투하츠 'Butterflies' MV", duration:"3m", id:"hJ9Wp3PO3c8", link:"#butterflies" }, { title:"Hearts2Hearts 하츠투하츠 'STYLE' MV", duration:"3m", id:"n7kFRxFIPrI", link:"#style" }, { title:"Hearts2Hearts 하츠투하츠 'Pretty Please' MV", duration:"3m", id:"ufwB9Uja_wM", link:"#prettyplease" }, { title:"Hearts2Hearts 하츠투하츠 'FOCUS' MV", duration:"3m", id:"Ur7aK4FvK-U", link:"#focus" }, { title:"Hearts2Hearts 하츠투하츠 'RUDE!' MV", duration:"3m", id:"F7sGJVUrkjQ", link:"#rude" }, { title:"Hearts2Hearts 하츠투하츠 'Lemon Tang' MV", duration:"3m", id:"1VqxWNwgf5Q", link:"#lemontang" } ]; const prettypleaseList = document.querySelector(".prettyplease-list"); prettypleaseVideos.forEach(function(video,index){ const card = document.createElement("div"); card.className = "prettyplease-card"; if(video.link === "#prettyplease"){ card.classList.add("active"); } const number = document.createElement("div"); number.className = "prettyplease-number"; number.textContent = index + 1; const thumb = document.createElement("img"); thumb.className = "prettyplease-thumb"; thumb.src = "https://i.ytimg.com/vi/" + video.id + "/hqdefault.jpg"; const text = document.createElement("div"); text.className = "prettyplease-card-text"; const title = document.createElement("div"); title.className = "prettyplease-card-title"; title.textContent = video.title; const duration = document.createElement("div"); duration.className = "prettyplease-duration"; duration.textContent = video.duration; text.appendChild(title); text.appendChild(duration); card.appendChild(number); card.appendChild(thumb); card.appendChild(text); card.addEventListener("click",function(){ window.location.href="https://heartsflix.carrd.co/"+video.link; }); prettypleaseList.appendChild(card); }); const prettypleaseTop=document.querySelector(".prettyplease-top"); window.addEventListener("scroll",function(){ if(window.scrollY>300){ prettypleaseTop.classList.add("show"); }else{ prettypleaseTop.classList.remove("show"); } }); prettypleaseTop.addEventListener("click",function(){ window.scrollTo({ top:0, behavior:"smooth" }); });

Hearts2Hearts 하츠투하츠 'STYLE' MV

202513+3m
Music Videos
const styleVideos = [ { title:"Hearts2Hearts 하츠투하츠 'The Chase' MV", duration:"2m", id:"kxUA2wwYiME", link:"#thechase" }, { title:"Hearts2Hearts 하츠투하츠 'Butterflies' MV", duration:"3m", id:"hJ9Wp3PO3c8", link:"#butterflies" }, { title:"Hearts2Hearts 하츠투하츠 'STYLE' MV", duration:"3m", id:"n7kFRxFIPrI", link:"#style" }, { title:"Hearts2Hearts 하츠투하츠 'Pretty Please' MV", duration:"3m", id:"ufwB9Uja_wM", link:"#prettyplease" }, { title:"Hearts2Hearts 하츠투하츠 'FOCUS' MV", duration:"3m", id:"Ur7aK4FvK-U", link:"#focus" }, { title:"Hearts2Hearts 하츠투하츠 'RUDE!' MV", duration:"3m", id:"F7sGJVUrkjQ", link:"#rude" }, { title:"Hearts2Hearts 하츠투하츠 'Lemon Tang' MV", duration:"3m", id:"1VqxWNwgf5Q", link:"#lemontang" } ]; const styleList = document.querySelector(".style-list"); styleVideos.forEach(function(video,index){ const card = document.createElement("div"); card.className = "style-card"; if(video.link === "#style"){ card.classList.add("active"); } const number = document.createElement("div"); number.className = "style-number"; number.textContent = index + 1; const thumb = document.createElement("img"); thumb.className = "style-thumb"; thumb.src = "https://i.ytimg.com/vi/" + video.id + "/hqdefault.jpg"; const text = document.createElement("div"); text.className = "style-card-text"; const title = document.createElement("div"); title.className = "style-card-title"; title.textContent = video.title; const duration = document.createElement("div"); duration.className = "style-duration"; duration.textContent = video.duration; text.appendChild(title); text.appendChild(duration); card.appendChild(number); card.appendChild(thumb); card.appendChild(text); card.addEventListener("click",function(){ window.location.href="https://heartsflix.carrd.co/"+video.link; }); styleList.appendChild(card); }); const styleTop=document.querySelector(".style-top"); window.addEventListener("scroll",function(){ if(window.scrollY>300){ styleTop.classList.add("show"); }else{ styleTop.classList.remove("show"); } }); styleTop.addEventListener("click",function(){ window.scrollTo({ top:0, behavior:"smooth" }); });

Hearts2Hearts 하츠투하츠 'Butterflies' MV

202513+3m
Music Videos
const butterfliesVideos = [ { title:"Hearts2Hearts 하츠투하츠 'The Chase' MV", duration:"2m", id:"kxUA2wwYiME", link:"#thechase" }, { title:"Hearts2Hearts 하츠투하츠 'Butterflies' MV", duration:"3m", id:"hJ9Wp3PO3c8", link:"#butterflies" }, { title:"Hearts2Hearts 하츠투하츠 'STYLE' MV", duration:"3m", id:"n7kFRxFIPrI", link:"#style" }, { title:"Hearts2Hearts 하츠투하츠 'Pretty Please' MV", duration:"3m", id:"ufwB9Uja_wM", link:"#prettyplease" }, { title:"Hearts2Hearts 하츠투하츠 'FOCUS' MV", duration:"3m", id:"Ur7aK4FvK-U", link:"#focus" }, { title:"Hearts2Hearts 하츠투하츠 'RUDE!' MV", duration:"3m", id:"F7sGJVUrkjQ", link:"#rude" }, { title:"Hearts2Hearts 하츠투하츠 'Lemon Tang' MV", duration:"3m", id:"1VqxWNwgf5Q", link:"#lemontang" } ]; const butterfliesList = document.querySelector(".butterflies-list"); butterfliesVideos.forEach(function(video,index){ const card = document.createElement("div"); card.className = "butterflies-card"; if(video.link === "#butterflies"){ card.classList.add("active"); } const number = document.createElement("div"); number.className = "butterflies-number"; number.textContent = index + 1; const thumb = document.createElement("img"); thumb.className = "butterflies-thumb"; thumb.src = "https://i.ytimg.com/vi/" + video.id + "/hqdefault.jpg"; const text = document.createElement("div"); text.className = "butterflies-card-text"; const title = document.createElement("div"); title.className = "butterflies-card-title"; title.textContent = video.title; const duration = document.createElement("div"); duration.className = "butterflies-duration"; duration.textContent = video.duration; text.appendChild(title); text.appendChild(duration); card.appendChild(number); card.appendChild(thumb); card.appendChild(text); card.addEventListener("click", function(){ window.location.href = "https://heartsflix.carrd.co/" + video.link; }); butterfliesList.appendChild(card); }); const butterfliesTop=document.querySelector(".butterflies-top"); window.addEventListener("scroll",function(){ if(window.scrollY>300){ butterfliesTop.classList.add("show"); }else{ butterfliesTop.classList.remove("show"); } }); butterfliesTop.addEventListener("click",function(){ window.scrollTo({ top:0, behavior:"smooth" }); });

Hearts2Hearts 하츠투하츠 'The Chase' MV

202513+2m
Music Videos
const thechaseVideos = [ { title:"Hearts2Hearts 하츠투하츠 'Lemon Tang' MV", duration:"3m", id:"1VqxWNwgf5Q", link:"#lemontang" }, { title:"Hearts2Hearts 하츠투하츠 'RUDE!' MV", duration:"3m", id:"F7sGJVUrkjQ", link:"#rude" }, { title:"Hearts2Hearts 하츠투하츠 'FOCUS' MV", duration:"3m", id:"Ur7aK4FvK-U", link:"#focus" }, { title:"Hearts2Hearts 하츠투하츠 'Pretty Please' MV", duration:"3m", id:"ufwB9Uja_wM", link:"#prettyplease" }, { title:"Hearts2Hearts 하츠투하츠 'STYLE' MV", duration:"3m", id:"n7kFRxFIPrI", link:"#style" }, { title:"Hearts2Hearts 하츠투하츠 'Butterflies' MV", duration:"3m", id:"hJ9Wp3PO3c8", link:"#butterflies" }, { title:"Hearts2Hearts 하츠투하츠 'The Chase' MV", duration:"2m", id:"kxUA2wwYiME", link:"#thechase" } ]; const thechaseList = document.querySelector(".thechase-list"); thechaseVideos.forEach(function(video,index){ const card = document.createElement("div"); card.className = "thechase-card"; if(video.link === "#thechase"){ card.classList.add("active"); } const number = document.createElement("div"); number.className = "thechase-number"; number.textContent = thechaseVideos.length - index; const thumb = document.createElement("img"); thumb.className = "thechase-thumb"; thumb.src = "https://i.ytimg.com/vi/" + video.id + "/hqdefault.jpg"; const text = document.createElement("div"); text.className = "thechase-card-text"; const title = document.createElement("div"); title.className = "thechase-card-title"; title.textContent = video.title; const duration = document.createElement("div"); duration.className = "thechase-duration"; duration.textContent = video.duration; text.appendChild(title); text.appendChild(duration); card.appendChild(number); card.appendChild(thumb); card.appendChild(text); card.addEventListener("click",function(){ window.location.href="https://heartsflix.carrd.co/"+video.link; }); thechaseList.appendChild(card); }); const thechaseTop=document.querySelector(".thechase-top"); window.addEventListener("scroll",function(){ if(window.scrollY>300){ thechaseTop.classList.add("show"); }else{ thechaseTop.classList.remove("show"); } }); thechaseTop.addEventListener("click",function(){ window.scrollTo({ top:0, behavior:"smooth" }); });

Mini Albums

Lemon Tang
Tracklist
1  Lemon Tang2:43
2  15-LOVE2:35
3  Baby Steps2:51
4  heart emoji (♡)2:59
5  Secret Recipe2:51
6  RUDE!3:20
Listen
Lemon Tang
2nd Mini Album
FOCUS
Tracklist
1  FOCUS2:58
2  Apple Pie3:07
3  Pretty Please3:25
4  Flutter3:06
5  Blue Moon2:58
Listen
FOCUS
1st Mini Album

Singles

STYLE
Tracklist
1  STYLE3:30
Listen
STYLE
Single
The Chase
Tracklist
1  The Chase2:59
2  Butterflies2:58
Listen
The Chase
Single

Hearts2Hearts

INFORMATION

Debut24 February 2025
CompanySM Entertainment
Members Jiwoo, Carmen, Yuha, Stella,
Juun, A-na, Ian, Ye-on
FandomS2U
Official ColorSky Blue
Official MascotFalabella
Years Active2025–present

ABOUT

Hearts2Hearts (하츠투하츠), also shortened as H2H, is an eight-member South Korean girl group under SM Entertainment. The group consists of Jiwoo, Carmen, Yuha, Stella, Juun, A-na, Ian, and Ye-on. They debuted on February 24, 2025 with their first single album The Chase.

GROUP NAME

The name Hearts2Hearts signifies their mission to connect with global fans through a mysterious and beautiful musical world, filled with heartfelt emotions and messages. Their aim is to move forward together as a greater "us."

FANDOM

Hearts2Hearts' official fandom name is S2U (하츄, pronounced "Ha-Chu"). The name combines "S2," which resembles a heart symbol appearing in the group's name, with "U" meaning "you." It symbolizes that fans will always be at the center of Hearts2Hearts and that they will always stay by each other's side.


OFFICIAL SNS

YouTubeInstagramX KoreaX JapanTikTokWeverseFacebookPinterestWeiboBilibili

Jiwoo Profile
const profiles = { jiwoo: "https://i.imgur.com/6ti1SiM.png", carmen: "https://i.imgur.com/bVGc4lB.png", yuha: "https://i.imgur.com/Fq05Kun.png", stella: "https://i.imgur.com/dCBwH80.png", juun: "https://i.imgur.com/4vtDeob.png", ana: "https://i.imgur.com/2rcOGe1.png", ian: "https://i.imgur.com/lEuqSKM.png", yeon: "https://i.imgur.com/D3e0L0W.png" }; /* ========================== PRELOAD IMAGES ========================== */ Object.values(profiles).forEach(src=>{ const img = new Image(); img.src = src; }); /* ========================== ELEMENTS ========================== */ const profile = document.getElementById("member-profile"); const members = document.querySelectorAll(".member"); /* ========================== SWITCH PROFILE ========================== */ members.forEach(member=>{ member.addEventListener("click",()=>{ members.forEach(item=>{ item.classList.remove("active"); }); member.classList.add("active"); const id = member.dataset.member; if(!profiles[id]) return; profile.classList.add("fade"); setTimeout(()=>{ profile.src = profiles[id]; },180); }); }); profile.onload = ()=>{ profile.classList.remove("fade"); };

This section is under construction.


Hello! Welcome to Heartsflix!We started this project because we wanted a place where S2Us, especially newer fans, could easily browse Hearts2Hearts media content all in one place. The site is meant to help people discover and keep up with videos, appearances, performances, and other content without having to search through multiple platforms. We know how overwhelming it can feel getting into a new group, so we wanted to make something organized and easy to navigate for everyone.While we do our best to include as much content as possible, this isn't intended to be a complete archive of every Hearts2Hearts media appearance. Some content may be unavailable, inaccessible, or simply not added yet. We'll continue updating the site over time to make it as comprehensive as we can.This site is currently managed by only two people, @zuunfilm and @bluuism , so we apologize in advance if there are any mistakes, missing content, or delays in updates.If you have any comments, corrections, or content recommendations, feel free to send them in Revospring.Most information and descriptions used throughout the site are sourced from the official Hearts2Hearts YouTube and X accounts, as well as this masterlist from the Hearts2Hearts subreddit.For more members info and fandom resources visit this site made by another S2U!Thank you for visiting and supporting the site ♡

hachu

h2h

creator

Who's Watching?