Ở một thị trấn nằm sâu trong thung lũng mờ sương, Ninh và Dương lớn lên như hai mảnh ghép chưa từng rời nhau. Họ sống cạnh nhau trong hai căn nhà cổ kính phủ đầy dây leo, nơi ánh sáng mặt trời khó lòng chiếu xuyên qua những tán cây dày đặc. Từ khi còn nhỏ, Ninh và Dương đã cùng nhau khám phá mọi ngóc ngách của thị trấn, chia sẻ những bí mật mà không ai khác biết.
Dương từ nhỏ là một cậu bé nhút nhát, nhưng với đôi mắt to tròn, luôn sáng bừng mỗi khi nhìn thấy Ninh. Ninh, trái lại, dạn dĩ và có chút gan dạ hơn, thường dẫn Dương đi khắp nơi, lặng lẽ bảo vệ và che chở.
Thị trấn ấy có một truyền thuyết kỳ bí, rằng mỗi khi ánh trăng đỏ rực chiếu xuống vào đêm tháng Bảy, những bí mật sẽ được phơi bày và những mối dây vô hình sẽ buộc chặt người thương nhau lại với nhau mãi mãi.
Ninh và Dương chẳng quan tâm nhiều tới lời đồn ấy. Nhưng vào một đêm trăng đỏ, khi cả hai đi lang thang trong khu rừng, họ tình cờ tìm thấy một hồ nước tĩnh lặng, phản chiếu ánh trăng như gương. Dưới ánh sáng mờ ảo, Dương khẽ quay sang Ninh, đôi mắt đen lay láy lấp lánh như đựng cả bầu trời sao. Anh nói đùa rằng nếu cả hai nhảy xuống hồ và hứa nguyện thì sẽ mãi ở bên nhau. Ninh cười đáp lời, trong lòng lại dâng lên một nỗi bồi hồi không thể nói thành lời. Nhưng không ai ngờ, chính từ hôm đó, cuộc sống của họ dần thay đổi.
Thời gian trôi qua, Ninh và Dương rời thị trấn để học đại học. Ninh phát triển thành một người quyết đoán, tự tin, theo đuổi ước mơ của mình. Dương lại bước vào con đường nghệ thuật, hòa mình vào thế giới đầy sắc màu nhưng cũng nhiều sự ganh đua. Cả hai, dù bận rộn với cuộc sống riêng, vẫn thường gọi điện hỏi thăm và chia sẻ mọi chuyện. Nhưng điều mà họ không nhận ra là tình cảm giữa họ đã âm thầm thay đổi, lớn dần theo từng cuộc trò chuyện, từng buổi gặp mặt.
Một ngày nọ, Dương gặp phải một cú sốc lớn trong sự nghiệp khi người anh tin tưởng phản bội, đẩy anh vào một vụ tai tiếng không đáng có. Danh tiếng của Dương bị ảnh hưởng nặng nề, và khi anh cần một người để trút bầu tâm sự, Ninh là người đầu tiên xuất hiện trong tâm trí. Chuyến xe muộn, ánh đèn mờ hắt xuống từng cung đường như đang dõi theo bước chân của người thanh niên đơn độc, mang trong mình nỗi niềm không thể giải tỏa.
Dương vừa về đến cổng nhà đã thấy Ninh đứng chờ, đôi mắt lo lắng nhìn anh từ xa. Không nói lời nào, Ninh bước lại gần, kéo Dương vào vòng tay mình, ôm chặt như để trấn an, như để xua tan mọi uất ức và cô đơn trong lòng. Dương không kìm nén được nữa, bật khóc trong vòng tay Ninh, như thể mọi nỗi đau đều tan biến khi ở cạnh anh. Lần đầu tiên, Dương cảm nhận rõ rệt rằng, tình cảm dành cho Ninh không còn chỉ là tình bạn thanh mai trúc mã nữa.
Thời gian sau đó, Ninh bắt đầu quan tâm đến Dương nhiều hơn, xuất hiện bên cạnh Dương mỗi khi có thể. Những ngày đầu, Dương cố gắng thuyết phục bản thân rằng đó chỉ là sự quan tâm của người bạn thân thiết. Nhưng trái tim lại đập loạn nhịp mỗi khi Ninh dịu dàng nhìn anh, mỗi khi anh nghe thấy giọng Ninh an ủi, hay chỉ đơn giản là khi cảm nhận được hơi ấm từ cái nắm tay.
Một đêm trời mưa lớn, Dương tình cờ gặp Ninh ở quán cafe nhỏ nơi họ từng lui tới. Không gian yên tĩnh, chỉ có tiếng mưa rơi tí tách ngoài cửa sổ, tạo nên một bầu không khí ấm cúng và thân thuộc. Ninh nhìn thẳng vào mắt Dương, tay nắm chặt lấy tay anh, và cuối cùng, không còn giấu diếm, Ninh nói lên tình cảm mình đã cất giữ bấy lâu: