Work Text:
Sanji always brought water to Zoro while he trained. Usually, he just brought the pitcher and a glass, set it down where Zoro wouldn’t break it by accident, and left. But today, he wanted to hang around. He wasn’t too sure of the reason why he wanted to--maybe it was because it was a lazy day aboard the Going Merry. Everyone else was above deck, doing whatever they did when the days were calm.
Maybe Sanji was bored. He decided he was happy with that answer, so he kept it at that.
It definitely wasn’t because he couldn’t stop thinking about what had happened last week. When him and Zoro had been alone. And they’d started a fight. And it hadn’t finished nearly as maliciously as it had started. The way Zoro had moaned his name, and the way his rough hands had…
Sanji worked hard to push the images out of his mind. He had told himself it was a fluke, and that’s what he’d continue to insist.
Right now, he was just bored.
The gym door was open a smidge, so Sanji pushed it open with his hip and held up the water tray for Zoro to see. The swordsman nodded but didn’t set down his weights; they were impossibly large and he was curling them like they were five pound dumbbells. Sanji resisted the urge to fixate on Zoro’s physique. He moved to the side of the room and set down the water, then took stock of the gym. Zoro had left a number of weights sitting out in the middle of the floor, and the rug had been folded once and tossed upside down. Sanji’s eyebrow twitched; if he left his kitchen in such a state…
“How can you focus in a place like this?” Sanji picked up a few of the lighter weights and lugged them back over to their rack.
“I don’t need to focus,” Zoro said, his voice strained.
"Hmph. S’that why your form is so shit?”
“Watch it, eyebrows.”
“Or what?” Sanji could tell he was starting to get riled up, probably itching for a fight. It made him smile, which only made Zoro angrier.
Zoro set down the weights. “You come in here just to start something?”
“Depends.” He brought two more weights back to their proper space. “I did bring you water.”
Zoro grumbled something, then poured himself a tall glass; he drained half the pitcher in a matter of seconds. When he finished, he looked over at Sanji like he couldn’t believe he was still there. But Sanji kept putting away weights.
Zoro blocked his path, his arms crossed over his broad chest. “Hey. Quit messing with those.”
“You can’t leave everything on the floor.”
“I'll put them back when I’m done.” He grabbed the weights from Sanji. “I’m not done.”
“A tidy space is a tidy mind.” Sanji took the weights back, which surprised Zoro so much, he let him take them. All the way back to the rack, clanked into place. “Just take them down one by one, shithead.”
Zoro came up behind him, very close. “I don’t come into your kitchen and bang around your pots, snail-brows.”
That was enough to set Sanji off; he leapt around and kicked at Zoro’s head. The swordsman ducked, then came at him with an attack of his own--a punch aimed at Sanji’s chest. Sanji sidestepped it, barely, and fired a roundhouse kick. Zoro only just dodged; his teeth were bared and his chest was heaving. Sanji wasn’t much better off. This fight was going to be much the same as their other fights--the two were as evenly matched as could be, and that meant they’d keep at this until they both tired out enough to forget their argument.
“Green-haired jerk!” Sanji jumped high in the air and came down with a flexed foot, trying to land it on Zoro's shoulder. He missed, mostly, but still managed to graze his arm. It knocked Zoro off balance, and Sanji laughed. “Hope it stings.”
Zoro’s eyes were dark, but he was wearing a smirk. “You always use your pretty mouth to talk shit. But I know it’s great at other things.”
Sanji stopped his kick in midair, landing it on the ground and staring at Zoro. His breath came in quick drawls. “The hell do you mean by that?”
Zoro moved quickly towards him, grabbed him by the collar of his dress shirt, and shoved him against a wood support beam. “We both know you didn’t come in here just to bring me water.” Sanji swallowed thickly, and Zoro’s smirk widened. “You can’t stop thinking about it either, can you?”
Sanji felt feverish: hot in the face with icy chills running down his spine. Yet there was something like lighting in his stomach and at the small of his back. He had to look away from Zoro. “You’d like it if I couldn’t, wouldn’t you?”
Zoro drew his face together in confusion. “...Yeah?”
Sanji struggled to get out of his hold. “Stop being so casual about this!”
“Once you stop being an asshole, I will!”
Sanji kept struggling, and he smacked Zoro’s chest. At this, the swordsman’s lip twitched, and he grabbed both of Sanji’s wrists in one hand, pinning them above his head. With his other hand, he loosened Sanji’s crooked tie. Sanji was still fuming, but he couldn’t resist it when Zoro did stuff like this; he tried his best to keep up his angry facade, but he knew it wouldn’t be long before Zoro called it for the complete bullshit it was. As he played with the tie, his fingers skimming against his skin, he felt his blood rush down.
Zoro managed to get the tie off, lifting it over Sanji’s head and past his red face. He looped it around Sanji’s wrists and tightened the knot, tying in one more to secure it. There was an installation hook drilled into the support beam Sanji was shoved up against, and Zoro locked his bonds in place around it. Once he was done, Zoro took one step back and smiled. He was careful not to move too far back; given any opportunity, Sanji would use those deadly legs of his.
Sanji flailed forward, then back against the beam. “You asshole!”
“Keep pretending you don’t like it.” Zoro moved a hand down, swiping past Sanji’s already half-hard cock. “If you want to.”
“I’m going to kill you, you f--”
Zoro pressed his hand over Sanji’s mouth, and he leaned forward so their eyes were forced to meet. “If you really don’t want this, just shake your head no, and I’ll let you go.” A second passed, then another, and Sanji kept his brown eyes fixed on Zoro. Before the third second lapsed, he nodded once. Yes. Zoro slowly took his hand away.
Sanji looked off to the side, his face burning. “You’re still a shithead. Always will be, even if--” Zoro’s hand was back again, but Sanji kept trying to talk, growing angrier the longer he couldn’t. Zoro knew that anger was hiding something else; he could feel Sanji’s full length pressing against his hip.
“Yeah, yeah.” Zoro looked around the room, and when he spotted the bandana he kept wrapped around his arm, he laughed through his nose. He took his hand away so he could untie the bandana and tie a new knot in it, this one down the center of the fabric.
“Moss head, I’m fucking warning you now…”
“For once, just shut up and look pretty.” Zoro forced the knot between Sanji’s teeth and tied the bandana roughly behind his head. Though Sanji was listing every insult he could think of, it all came out a muffled mess behind the gag. “You can teach me a lesson later, or whatever.” His hand trailed down Sanji’s chest and landed on his belt; the sounds Sanji made started to sound less harsh.
He undid Sanji's belt, slowly, and dropped it in a pile on the ground. He knew that would get a rise out of Sanji, and sure enough, he tried (wildly unsuccessfully) to kick Zoro in the stomach; his tied hands kept him latched to the support beam, and Zoro was too close for anything to land. Zoro moved closer after that, one of his legs going between Sanji’s. With his bent knee, he shoved Sanji’s right leg back, throwing him fully off kilter. Sanji rocked to the right, and Zoro brought his leg closer. His thigh rubbed on Sanji’s cock, and that string of (Zoro presumed) vulgarity streamed off in favor of nonsensical moans. Sanji always talked a big game when he got angry like this, but once Zoro was over him, he turned rapidly submissive. Zoro moved his hands across Sanji’s waist, and he let out a sound like a whine.
“Man, you want it bad.” Sanji started to get angry again, but Zoro placed his hand over his bulge. He squeezed gently, and Sanji cried out. “Almost embarrassing.” He looked at Sanji’s face, at how red it was and how bright his eyes shone, and he felt himself start to grow. “Almost.” He unbuttoned Sanji’s shirt down to his belly button, and his hands danced across the bare skin. It was pale, unfreckled, and Zoro decided that he wanted to mark it. He leaned down and bit the skin of Sanji’s collar. Sanji threw his head back and rolled his hips, knocking his erection into Zoro’s. That made the swordsman groan, and when he did Sanji laughed. Then he did it again, this time more deliberately, and Zoro flat-out moaned. He said something behind the gag, probably ‘you want it more’, and Zoro suddenly grabbed for his hands. He took Sanji down from the hook, forced him to his knees, and bound his ankles with his belt before he could even register that he was in a new position.
Now Zoro loomed over him, and all Sanji could do was kneel, his hands tied in front of him and his feet tied behind him. Zoro reached down and grabbed his face, forcing him to tilt it up. Sanji’s nostrils flared.
“Fuck, you’re pretty like this.” He knelt down to be at the same height as Sanji and took out the gag, letting it fall around his neck. Before Sanji could say anything, Zoro’s lips were on his, and his tongue was in his mouth. Sanji moved back at first, surprised, but when Zoro moaned into his mouth, he pushed forward, almost as if this kiss was a fight he wanted to win. He lifted up his bound hands, managed to grab at the front of Zoro’s pants, and grunted when the move made Zoro pull away quickly.
“What?” Sanji asked. “Not a two-way street anymore?”
Zoro stood, his hands at the waist of his pants. “You want it so bad, you can have it.” In a rapid motion, he pulled his erection out and brought it right up to Sanji’s waiting mouth. “Show me what it’s good for, cook.”
Sanji didn’t even come up with a retort for that one; he took Zoro’s entire cock in his mouth and started going down on him like he would die if he didn’t. Zoro was thrown off by his intensity, and the moan he let out was every bit as pitiful as the ones Sanji made. At this, Sanji started swirling his tongue, and Zoro went light headed. His hands found Sanji’s choppy hair, and he curled his fingers around the locks. He pulled tighter, and Sanji groaned around him. The vibrations of that sailed through him, and he cursed a few times, biting back another pathetic moan.
He let Sanji keep going until he felt himself start to shudder, then he pushed him off. Though Sanji looked confused at first, that expression soon turned very self-satisfied. He used his shoulder to wipe off his mouth.
“Too good?” asked Sanji, but Zoro ignored him. “Heh. It was too good for you. You don’t want my pretty mouth to get you off so soon? What, too embarrassing?”
Zoro bent down and kissed him, more roughly than before, and tugged at Sanji’s bonds. He fell to his hands and knees. “Shut it.”
“You like acting like I want this more than you, but we both know you want it so bad, you’d kill for it.” A shiver went down Zoro’s spine.
“I told you, shut it.” He grabbed the front of Sanji’s shirt, forcing him back up, and tried to pull up the gag. Sanji turned from it with a cocky grin.
“I liked the other one better. Didn’t you?”
Zoro’s eyebrows dropped in annoyance, and his hand traveled down from the collar of Sanji’s shirt to the waistline of his slacks, slipping in and wrapping around his throbbing cock. Sanji couldn’t help but call out his name, and when he did, that knot slipped right back over his tongue. “I think I like anything that shuts you up.” He shoved Sanji back down on all fours.
Sanji grunted, and Zoro grabbed his waist to drag him back. His ass rammed against Zoro’s crotch, and when Sanji made a sound of surprise, Zoro wrapped his hands around Sanji’s thighs. He rubbed up, then down, then back up to the button of Sanji’s pants. He undid it, then slowly slid his pants down to his knees. Only the thin cotton of Sanji’s briefs kept his modesty. His thighs were sinewy with muscle; Zoro bit hard on his lower lip. He thought about those thighs often--had been thinking about them ever since the two of them first met. They were practically made of iron, and built model perfect. And right now, they were his. Zoro reached behind himself and grabbed the jump rope he’d discarded a few hours ago. He wrapped it tightly around Sanji’s mid-thighs, making a figure eight and lacing a knot around the middle. It made a deep indent against his muscles, and Zoro ran his hands along the bonds. Sanji shivered and moaned, muffled behind the gag.
Zoro leaned forward, curved over Sanji’s back. His lips graced his ear. “Try to kick me now.”
“Mmmph,” was all Sanji managed, and his head fell forward.
Zoro grabbed him by his blond hair, pulling his head back up. “God, you’re just as pathetic now as when you’re fighting.”
Sanji bared his teeth around the gag. “Mmph!”
He tried to move, but Zoro had him pinned on all fours. “Fucking eyebrows.” Sanji might’ve hummed that time, but when Zoro wrapped one arm around his stomach, he tensed up.
Zoro flipped him around on his back, and he forced his hands over his head with one arm. Sanji’s legs were bent to his stomach, and Zoro gave him his best glare. His eyes sparked. Sanji swallowed thickly, then straightened out his legs. Zoro moved down a bit, sitting against Sanji’s hips. One of his hands was still over the tie binding Sanji’s wrists together, and the other was pressed over his bare chest. He ran his thumb along the flat between Sanji’s pecs, then he pressed down, hard, over one of his nipples. Sanji shivered and moaned. Zoro laughed, and he leaned down. His tongue ran over the nipple now, and he bit at it. Sanji’s head tossed back, and the moan he let out then was deep and loud. Zoro moved his hand down from his wrists and pressed it over his gagged mouth.
“Shut up,” Zoro grumbled. He moved his tongue up from Sanji’s chest to his neck, then up to his jaw. He bit at his cheek, then back down at his neck, where he left a deep red mark. “Be quieter, or I’ll leave more. You want everyone here to know that you let me do this shit to you?”
Sanji whined--though in his defense, it was a bit quieter. Zoro left a wet kiss on the other side of his neck, but no mark. He sat up, resting against Sanji’s thighs. In front of him, Sanji’s cock was tenting the front of his briefs. It looked almost painful, and Zoro took some sort of pity on his partner. He hooked his fingers around the waistline, and he tugged them down inch by inch. Sanji squirmed a bit, making sweet sounds, and Zoro smiled crookedly. He got his briefs down to the jump rope bounds around his thighs, and his cock sprang out. It hit his stomach.
“You’re good, cook.” Zoro started to lean forward. “So good…” He wrapped his lips around Sanji’s throbbing cock, and he moved up and down, just once.
“Zmm-mmph!” Sanji almost screamed, and Zoro pulled his mouth off quickly.
“I told you, shut up.” His fingers made sharp indents in Sanji’s thighs, and the cook cried out again. Zoro growled, and he moved in so that his face was hovering right over the cook’s. Sanji’s face was bright red, and his nostrils flared with each breath. Though the knot still sat between his swollen lips, Zoro could tell he was saying his name, over and over. “You’re just loud, aren’t you? Just pathetic like that?” Sanji tried to say something, but Zoro pressed his hand over the gag again. “We’ll just do it like this then. I know you like to seem put together in front of the others.” He tugged on Sanji’s cock, and he rolled his head to one side, groaning noisily behind Zoro’s hand. “I won’t punish you like that. Just let it out.”
He worked Sanji’s cock with his hand, and with each movement, the cook moaned and whined. It was making Zoro just as hard as he’d been when Sanji’s mouth was around him. There was a swirling in his stomach, bright like the sun, and his heart hammered. But he kept going, his singular focus being Sanji’s enjoyment. He could focus on himself later. Right now, he just needed to bring Sanji right to the edge. He wanted to make him sweat, make him cry out until his hand and the gag couldn’t block out the sound. He started to move faster, and Sanji’s hips bucked roughly.
“Mmph!”
“God, cook…” He let go of Sanji’s cock, and he took out his own. He jacked it twice, just enough to make it rock hard, and he pressed a hand to Sanji’s stomach. Both of them were searing by now. “Think you can take it?” Sanji nodded vigorously, and Zoro pressed a kiss to his gagged lips. “Good.”
With his other hand, he traced a circle around Sanji’s inner thigh, then moved up. Two of his fingers found Sanji’s hole, and he pressed them slowly inside. The sound Sanji made was too choked to be loud, but when Zoro started to scissor him open, Sanji was yelling just as he had been. Zoro knew that if anyone was within ten feet of the gym, they’d hear something very profane. He wanted to silence him, but he was too far out of his mind to do anything. All he did was lean down, bite sharply on Sanji’s collar, then sat back up.
When he looked down at the cook, his hair was plastered back, showing those swirling eyebrows of his. His eyes were glimmering, standing out deep brown against his red face. Zoro was sure he was just as red. He needed Sanji, now, and he didn’t really care what happened afterwards. Sanji was starting to feel loose, so Zoro grabbed the knot around his upper thighs, quickly untied it, and threw the jump rope off to the side. Though his ankles were still bound, Zoro could move his legs apart enough to get access. He removed his fingers, lifted Sanji’s hips, and shoved his cock roughly into his hole. Sanji made the most high pitched sound of the night, and Zoro moaned with an open mouth; it might’ve been just as loud as Sanji. He thrust in and out, going as hard as he wanted to in his bliss. Sanji moved roughly across the floor, but he was making sounds of such extreme pleasure that there was no mistake he was in utter euphoria. Zoro made another hard swipe, this time crashing directly into Sanji’s prostate. That was all it took.
Sanji practically sobbed as he came, his entire body shaking. Thick ropes shot straight out and hit Zoro’s chest, running down over his legs and over Sanji’s own body. His pleasure was so searing, he went blind for a few long seconds. He blinked hard, and let out a long groan. His sounds were pitiful, but Zoro kept going; he went on and on until he felt his own oncoming bliss. He pulled Sanji’s hips hard into his own, and he gritted his teeth as he started to shudder. The thought of the cook, and the feeling of him, tight around his cock…He came right in Sanji, not even bothering to pull out. He thought the cook would like that--the sheer depravity of it. Zoro let out a small moan, then a sigh, and he slumped over Sanji.
The two were breathing heavily, their chests meeting with each inhale. Sanji’s skin was soft and unbelievably hot. After a few long moments, Zoro pulled out, his cum dripping over the gym floor. He lifted up a bit, enough to run a finger down Sanji’s sternum. The cook shivered. When Zoro took the gag out of his mouth, his breathing was audible.
“You liked that too much,” Sanji whispered, his voice a rasp.
“So did you.” Zoro gave Sanji a brief kiss, then collapsed on top of him.