Actions

Work Header

Hateful Desire. ZoSan

Summary:

Zoro is rudely awaken from his daily nap by a crabby chef who is dead set on making him pay for his crimes. Unfazed by his shenanigans, Zoro plays along, happy to get any excuse to beat Sanji to a pulp.

What happens when they get a little too heated?

Notes:

First things first, I finished the Wano arc as it aired (ep 1085), and then promptly began rewatching the show (now in the early 200s) as I wait for the new episodes to come out. Please do not give any anime or manga spoilers for anything past episode 1085🙏🙏🙏

(See the end of the work for more notes.)

Work Text:

It’s a normal day on the Thousand Sunny. Zoro slumbers in the crow’s nest, hand resting on the rich violet hilt of his trusted sword Enma, ready for a fight even in his sleep. There’s a ruckus on the deck below, likey Luffy messing around with Chopper and Usopp, Jinbei, their new helmsman, watching over them with little discouragement to their antics, while Franky dances and sings about cola to the tune of Brook’s newest song to add to the noise. Zoro crinkles his nose, but never once has their noise been enough to bother him from a good sleep.

His chest rises and falls to the rhythm of his breathing, slow and steady, and while sure, maybe as the one in the observation tower he should actually be observing the sea for any oddities, upcoming threats or the next island, but his crew is well equipped enough to both notice and handle any problems coming their way. They’re aware he’s usually up here either training or sleeping anyways. He hears Sanji swooning over Nami and Robin below and huffs, shifting in his sleep to find a better position.

He usually rests far better than this, but today he can’t seem to drown out the noise below, leaving him in an unsatisfactory drowse. And then the air shifts. A swift breeze and he’s extracting Enma from its sheath and flexing his arm, ready to swipe as his eye opens last, never needing to actually see his target to make his mark. When he takes in the sight before him, he frowns.

He dips his head to the left, narrowly dodging the heel of the foot barreling down towards him and sheathes his sword again. “I should kill you for that.” He grumbles, pushing to sit up and stretch with a bored yawn.

Sanji raises a stupidly curled brow at him and takes another draw from the cigarette always settled so neatly between his lips. “I was hoping to catch you off guard.” He admits, but there’s no sound of disappointment in his voice. “You deserve it for the way you looked at Nami earlier.”

Zoro wishes he could throw up on command, because if he could, he would do it on Sanji’s dumb, pretty little face. “And how was that?” He asks pointlessly, because he already knows it’s going to be something stupid. Don’t get him wrong, Zoro loves Nami, but in an annoyingly bossy little sister that always gets what she wants and pisses him the fuck off but he would still risk his own neck in a heartbeat to protect her kind of way.

“Don’t act like I didn’t see you looking at her precious body in her Bikini!” He seethes, and Zoro drags his palm over his face, annoyed to be awaken for something so stupid and useless.

“You’re an idiot, you know that?” He did look at Nami in her bikini earlier, so Sanji isn’t wrong per se, as unusual as that is, but only because she had stomped up in front of him and started barking orders in his face, to which he glanced up at her long enough to show his annoyance with a scowl. Was he supposed to have closed his eye as he did it?

“Get up, Asshat.” Sanji growls, taking a single step back and leaving just enough room for Zoro to stand without head butting him in the chin on the way up. Zoro has half a mind to do it anyway, just to spite him. “I won’t let this go unsettled.”

Zoro groans and glares through his brow, but he stands anyways, making sure to get in Sanji’s face as he does. “What, you want to fight for her hand?” Zoro has no interest in this stupid scuffle, but he would enjoy beating Sanji’s ass. He never did get to follow through with that promise to kill him on Onigashima… “And what happens if I win?” He asks, stepping so close that he can feel the heat from Sanji’s cigarette nipping at his cheek. He tilts his head curiously. “Does that make Nami mine?” Zoro wants nothing of the sort, and he’s sure Nami would beat them both if she heard about this, but if it means he gets to hear Sanji grovel and beg when he beats his ass, he’ll gladly play along.

Sanji strikes out with a kick fueled by enough force to shatter bone to dust aimed for Zoro’s calve, but Zoro expected it and pushes Sanji’s chest, forcing him back into a flip as he unsheathes his blade. He won’t need Enma for this, won’t even bother taking out Wado Ichimonji or Sandai Kitetsu, but he does love the flicker of fire burning in Sanji’s eyes as his gaze narrows in on Enma and no doubt is recalling the beautiful face who gave him the sword. He wonders what Sanji would do if he found out Zoro had spent the night with Hiyori, all alone in a cabin, his upper body merely covered by bandages as she draped her arms over him, nuzzling in close. Sure, Toko was there too. All three of them slept huddled together to keep warm, but Zoro would gladly leave out that little detail to see Sanji go ballistic.

Sanji catches himself with a dancers grace, and Zoro rolls out his shoulders, crouching into a better position to both ward off and counter his attacks. This is stupid, no matter who wins nothing will change, and fighting over Nami when he could be sleeping when one, he doesn’t even want her, and two, this is a disgusting, toxic practice, makes him want to down an entire case of sake.

Or- maybe he just wants sake..

Sanji lunges at him, swinging his foot in the air and brining it down towards Zoro’s shoulder, to which Zoro easily deflects it with his sword and pushes him back. Sanji doesn’t stutter, crouching down to sweep Zoro off his feet with his leg, but it’s easy enough to jump over and bring his sword down on him. Sanji dives left, kicking out against the ram guard, causing Enma to clammer to the ground with a cacophonous trill, but Zoro had allowed it to happen. He hasn’t gone fist to fist - or, fist to foot rather - in quite a while, and he‘s itching to feel the way his fists sink into Sanji’s flesh.

“I don’t want you looking at my Nami like that again.” Sanji says as if he’s won, and he lets out a sharp sound when his gut is met with Zoro’s bare fist.

“I hope you didn’t think this was over.” Zoro whispers in his ear as Sanji wheezes over his shoulder, but it only takes him a moment to recollect himself, cursing under his breath as he spits out his dead cigarette on the ground.

Fuck you.” He growls darkly. Zoro grins at the challenge. “You think you’re so cool, huh? A swordsman without his swords is just a regular guy.. only lamer.” Zoro lunges for his throat.

They spend the next hour up there, fist and feet flying with enough strength to end a life, but neither of them stagger as they take a blow, delivering their own counter with a sick smile. There truly is no winner, especially when they’ve been at it for so long that they manage to forget what they were even fighting about, but they only stop because the light of day starts to seep into darkness, and Sanji grumbles something about how Luffy will begin searching for him soon if he hasn’t already begun raiding the kitchen in his absence. The lock on the fridge can only deter Luffy for so long before he decides to snap it in two.

Sanji’s lip is busted, a bruise resting on the high of his cheekbone, and Zoro doesn’t think he fairs any better, his own knuckles cracked and bleeding and his side sore, surely imprinted with the shape of Sanji’s boot, but he doesn’t care. He grips Sanji when he turns to leave, pulling him back, stepping far too close into his personal space as he scowls down at him.

“You wasted my sleeping time.” He growls, watching Sanji’s fire blue eyes squint at him, roaming over his face.

“Maybe you shouldn’t be sleeping during the day in the first place. Hmm, Moss for Brains?” Sanji offers, and his cool tone makes Zoro want to punch him again. Makes him want to do so many things that he acts without thinking first, dipping down to press a fierce kiss against Sanji’s torn lip to shut him the hell up.

Sanji stiffens, groaning at the pressure against his cut, but he doesn’t pull away, and Zoro doesn’t even realize what it is that he’s doing until he pulls back and Sanji’s got the most bewildered look on his face. Zoro steps back, astonished and disgusted with himself, and when Sanji’s so shocked that he punches him square in the jaw, forgetting how precious his hands are to him in the moment, Zoro doesn’t even try to block it. “I deserved that.” He says with a sigh, watching Sanji curse under his breath and shake out his hand, unused to the sensation, but then he’s gripping Zoro by the collar of his shirt and pulling him into another kiss, and Zoro is horrified to feel his own lips moving along with him.

It’s hungry and harsh and mean, both too out of their minds to stop themselves, but the pressure building in Zoro’s gut tells him to let this happen. Tells him that he wants this, no matter how much his mind in screaming profanities at him and telling him to plunge his sword in Sanji’s chest.

What the hell is going on? And why the hell does Zoro growl possessively when Sanji grunts against him, walking them back until he can press Sanji’s back against the wall and rip open his teal-blue button up. Sanji might try to kill him for that later, but right now he preens, pressing himself further into Zoro, and Zoro can’t help the way it sends an electric spark flying through his spine, his pants suddenly far tighter than they were minutes ago.

What the actual hell?

“Sanji,” Zoro mutters against him, and when Sanji pulls back and cringes, Zoro rolls his eye. He does not want to give himself time to really think over how insane this all is. “What now?”

Sanji shudders and pushes it off with a shake of his head. “That’s like.. the second time you’ve said my name. It’s weird.”

Zoro grins, albeit a little annoyed to be interrupted once again. “Well, Sanji,” he says his name in a purr, his grin thickening when Sanji’s eyes grow darker, hungrier. “There’s a lot of things going on right now that are pretty fucking weird, I’d say me calling you by your name,” he says huskily, voice low and airy. He pauses to lean in closer, breathing in Sanji’s saccharine scent with a disbelieving chuckle. “Is the most normal among them.”

Sanji’s brows pull together, indignant, but he can’t disagree with sound logic, so he decides to press into Zoro again and shut him up with another bruising kiss. Zoro hates that he likes it. Everything is so fierce and done without second thought, and Zoro revels in the heat of it against his better judgement.

He pulls Sanji closer with a need he refuses to think too much on, pulling his pants undone and only moving far back enough to allow Sanji to step out of them, his own pants following soon after. This is insane and utterly stupid, but when Sanji doesn’t protest to him slipping off his boxers, pulls away from the kiss and allows Zoro’s fingers to take his tongues place in his mouth, sucking the digits with half lidded eyes, coating them nicely for him and sighs with delighted anticipation when Zoro swirls his middle finger over his throbbing hole, Zoro knows there’s no going back, so he presses his finger in and swallows the sharp moan Sanji lets out for him. Just for him.

Jesus this is absolutely terrible, so fucking wrong, goes against everything Zoro has ever thought since meeting this shitty cook, but his cock is twitching, his breath hitching, and he’s itching and burning to go further. Maybe he’s gone crazy.

Insanity has never felt so good.

Sanji accepts his prodding fingers with little struggle, and if his pain tolerance wasn’t as high as his own, if he didn’t spend majority of his time with the annoyingly attractive cook, mostly arguing and fighting, Zoro might think Sanji’s used to this. One finger turns to two, and then three, and as Zoro’s lips find their way down Sanji’s throat, down his chest, the panes of his abdomen, sharp muscles against his kiss swollen lips, leaving bruises and bite marks in his wake almost spitefully, Sanji just moans into the humid air, taking everything he offers with a pleased sigh. It doesn’t take long for Sanji to huff for him to hurry up, and at the sound of that, Zoro makes sure to take another couple of minutes just prodding at his hole, Sanji’s eyes suddenly shooting open with a groan, back arching off the wall.

Knowing he found the spot that’ll have Sanji begging him not to stop, Zoro does just that, kissing the indignant string of words threatening to pour out of Sanji’s pretty little mouth away as he pulls his fingers free, leaving him empty and wanting. “Turn around for me.” He says into the kiss, stepping away, and while Sanji gives him a look that says Zoro should expect retribution for this at some point in the near future, Sanji still turns, plump ass pressing back into Zoro’s utterly neglected, clothed cock. “Tease.” Zoro growls, pulling his own shirt over his shoulders and throwing it to the ground.

Sanji chuckles airily at the taunt. “You like that, don’t you?”

Zoro doesn’t answer, but only because Sanji is right. He slips off his own boxers and presses his chest flush against Sanji’s bare back. Strong, thick hands diving down his lean body and gripping his thigh, lifting it up, up, up and up, well aware of Sanji’s unprecedented flexibility, and hooks his knee over his shoulder. Sanji grunts with effort at the odd angle and Zoro grins, massaging into the thick muscles in his legs.

“Is this too much for you?” He purrs in his ear, and Sanji’s resounding growl makes his grin spread wider.

“As if.” It’s anything but strained, and if this weren’t Sanji he was talking about, Zoro might be impressed. He hops on his grounded leg, once, twice, finding his footing before he settles with his body at a slant to accommodate the position. “I could do this all night.”

Zoro nips his shoulder, humming at the moan it elicits. “Let’s see how true that is.” He hold’s his cock at the base, smearing what’s left of Sanji’s saliva and his own precum over the shaft before he drags the head through the cleft of Sanji’s ass. Sanji leans closer to the wall, arching so his ass is in a nice position for him. Zoro doesn’t even bother to hide the shuddery breath it draws from his throat, merely rolling his eye when Sanji makes a proud sort of noise.

Whatever, two can play at that game. Zoro presses his cock in without warning, and he can feel Sanji’s entire body tense beneath him with a surprised moan, and then he relaxes utterly, and Zoro’s cock slides in further without any help. God, he feels amazing, and judging by the sharp whine Sanji lets out, Zoro thinks he’s found that spot again.

“Already?” He mutters, and he laughs when he can practically feel Sanji willing himself not to lash out and kick him. How sweet.

I hate you.” Sanji grits through a moan.

Zoro smiles an evil grin against his nape, nipping at it. “Don’t worry, the feeling’s mutual, Princess.” He assures him, purposely bringing up his lineage with Germa 66 to get a rise out of him, but Sanji seems to preen at the nickname and allowes himself to slip into the pleasure as Zoro begins to rock his hips, easily learning the rhythm and angle to have him shaking like a leaf below him. Interesting.

It doesn’t take long for Sanji to begin keening for him, pressing his ass back to meet Zoro’s every thrust with a sharp, needy gasp, the pane of glass he’s pressed up against far foggier than it had been after their hour long fight. Zoro’s not sure how long they’ve been on each other like this, but it simultaneously feels like forever and just a few minute at once. The only thing that tells him it’s been a long time is when he realizes the sun is far lower in the sky than it had been when they started. Zoro groans when Sanji clenches around his cock, Sanji mirroring the sound with his own low moan.

“You like that, Fancy Brows?” Zoro taunts, mocking Sanji’s words as his hips rock wildly into him. In the way that makes Sanji’s breath hitch and his voice ring out high and low, whiney and guttural. When his nails dig into Zoro bicep, searching for purchase, Zoro grins appreciatively and fucks him harder.

Sanji scoffs. “What, you need me to write you an instruction manual on how to fuck me right?” He asks, though his leg is shaking with pleasure at this very moment, threatening to give out under his weight. Never mind the fact that the sentence was broken up by at least three moans and needy pleas of his name. Fuck, Zoro- ahh~ right there. Oh God, right there~

Zoro growls, taking Sanji’s sharp chin between his calloused fingers, forcing his eyes on him as his thrusts turn into a slower roll, loving the way Sanji struggles to keep his eyes open, his bottom lip quivering. When his leg finally does give out under him, Zoro’s got such a tight grip around his waist with his other arm that neither of them even realize. “Don’t act like you aren’t whining for me.”

Sanji laughs, but the moan goes uncovered as Zoro hits his prostate dead on with his languid thrusts, again and again and again. Zoro swears he hears Sanji whisper please under his breath before quickly biting his lip, cursing when he remembers it’s busted. “The only whine I might let out is at the realization of how bad of a fuck you are. Guess it’s true what they say about big dicks not always being the best.”

Zoro snarls like an animal, pressing closer until their lips are just barely touching, harsh, needy breaths mingling together, the smell of sake and cigarettes complimenting each other in the air between them. “Yeah?” He challenges, and Sanji nods.

“Yeah.”

Zoro snaps, fucking into him with wildish abandon, forcing Sanji to moan into the air. He only allows him the dignity of swallowing his moans with a bruising kiss when they get particularly loud, not wanting the rest of the crew to hear as he fucks Sanji to completion, a smug grin tugging at his lips as he spills inside him.

 

“You better not tell anyone about this.” It’s a threat, no matter how unnecessary, as Sanji picks up his shirt and scowls at the torn fabric, opting to steal one of Zoro’s in a pile in the corner for when he changes after a particularly gruelling workout session.

A little counter productive, Zoro thinks as he watches Sanji slip on his shirt. He has to shake off the possessive grin trying to force its way onto his lips at the sight, but he supposes it’s better than walking around in his tattered shirt with bruises all over his chest and neck, most not even from their fight. It’s a little big on him, Zoro thick with muscle where Sanji is more lean and compact, but Sanji looks better than he’d care to admit in it. Zoro clears his throat with a laugh.

“Yes, why don’t I go down to the deck and find Luffy, tell him I just fucked his shitty ass cook and expect him to keep it to himself.” He mutters, annoyed that Sanji even felt the need to say anything about it. “Oh, or- why don’t I go find Usopp instead? Even he couldn’t come up with a lie that stupid.” He doesn’t mention that if Robin were to find out she would likely keep it to herself, but Zoro doesn’t feel inclined to have her knowing that about himself.

Sanji grunts, raking his fingers though his mussed hair. He fishes through his pants pocket with his free hand for a moment, pulling out a box of cigarettes and a light. He sighs and shoves them back in his pocket after taking a long drag. “Still..”

“No shit, Curly Brows, I’m not gonna tell anyone.” It comes off sharper than he intended, clipped with a feeling he’s not accustomed to. One he can’t place no matter how hard he tries.

Sanji hums, staring him down. His blue eyes soften momentarily, but then he’s rolling his shoulders and turning on his heel. Just before he’s gone, he calls over his shoulder. “Come down and eat before Luffy takes it all.” Zoro’s surprised by the softeness in his voice, then Sanji pops his head back in one last time like he’s also realized it himself. “Jackass.” He adds, and then he’s gone, and Zoro can’t help chuckling to himself as he follows a few minutes later.

He never does get that shirt back, but it’s worth the hard on he gets every time Sanji wears it around the ship, always managing to find a way to knock his ass into his crotch when they find themselves alone. Tease.

 

One Month Later

“What’d you say to me, Pretty Princess!?” Zoro growls, stepping into Sanji’s personal space. Sanji’s jaw clenches.

“I’m sorry, did you need a hearing aid for your huge ass meaty head?” Sanji retorts, taking an equally large step forward until they’re face to face, foreheads pressing against one another, gnarling ferociously.

“Say that again and I’m gonna pound your ass into the ground.” Zoro brandishes his teeth. It’s not a threat, it’s a promise.

Sanji laughs darkly. “Oh, I’d love to see you try.”

 

Usopp is sat at the couch in the Thousand Sunny dining room, watching the two grown men fight like children behind the kitchen island for the umpteenth time, brows drawing together curiously as he tilts to lean over towards Nami, making sure to keep his voice low enough for just her to hear. “Is it just me, or have their fights been more..” he pauses to find the right word. “Fruity.. than usual, lately?”

Nami nods, humming around her spoonful of the delicious chocolate cake Sanji made and presented her with before Zoro stalked into the kitchen clearly looking for a fight. She flips the page of the newspaper in her lap. “Yeah,” she sighs, not really interested in their shenanigans unless it gets too loud for her to focus. “They’ve been like that all month. I wouldn’t bring it up to them though, you know how they are.”

Usopp looks up to see Sanji and Zoro fighting to the death because Sanji used some of “Zoro’s” sake in the brine he’s making for the meat they’re having for dinner tomorrow night. “Yeah.. you’re right.”

“I just let them do their thing, whatever it is, because all I know is I’m getting the same amount of snacks, but less Sanji bugging me while I’m trying to chart.” She grins, crossing her legs, and Usopp laughs and nudges her with his shoulder playfully, gripping the bench between his thighs.

“Sounds like you’re living the dream, huh?”

“That, I am.” She sighs whimsically, shaking her head. Then she closes her newspaper and drapes her legs across Usopp’s lap, batting her eyelashes up at him like she might have Sanji. “Wanna rub my feet?”

Usopp laughs, but as Nami begins to frown at him, he realizes she’s one hundred percent serious. “Hell no!” He barks and shoves her off, earning a punch in the arm for it. Sometimes he forgets Nami is a feral beast.

“Why notttt,” she whines, hugging the arm she just punched as if it never happened. She blinks her puppy dog eyes up at him again. “We did a lot of running on the last island and my feet have been killing me!”

Usopp has half a mind to tell her that that sounds like a her problem, but, if he’s being honest, he’s a little scared of her, and that’s without Zeus floating around, always ready to do her bidding to stay on her good side and keep receiving thundercloud snacks. Nami should recall who made her who she is today. Why, none other than Captain Usopp. It’s true! He made all versions of Clima-Tact, Zeus should be thanking him too! “I did a lot of running too, you know.” He sighs, rolling out his shoulders and twisting to crack his back, the sound so loud that Nami pulls back in concern. “I’ll make you a deal. Rub mine, and I’ll rub yours.”

Nami looks at him like he’s offered her the most underhanded and unfair trade of all time — something he would have likely learned from her, mind you. “As if.” She huffs, then turns to the two men in the kitchen, no longer fighting as Zoro watches Sanji cook, a terribly hidden fondness to his gaze. “Sanjiiii,” Nami purrs. It takes him a split second to realize she’s even spoken, which is more than enough time for Nami and Usopp to raise a brow at each other. Normally he’s over to her and on his knees before she can even think to call him.

“NAMIIII!” He calls belatedly, but as he turns, genuine hearts fill his eyes and his body sways like a lovesick noodle, glad as ever to be called upon by such a cute girl. Nami grins evilly. “YES, MY GODDESS, WHAT CAN I DO FOR YOU? Another slice of cake? Another drink?” Zoro rolls his eye at him, which isn’t anything new, but he also doesn’t step out of Sanji’s way to allow him over to Nami. Sanji glares daggers at him and stomps on his foot, but Zoro is faster, lifting it to meet Sanji mid blow.

“It’s my feet,” Nami whines, allowing forced tears to well in her eyes. “Can you massage them for me?”

“ANYTHING FOR YOU, NAMIII!” He’s declaring, forcing his way over to her, but then Sanji trips over Zoro’s foot and Zoro catches his wrist, pulling him back up to his feet before he can even hit the ground and yanks him closer.

“If you burn the food and waste my sake in the process, I will gut you. Got it, Lover Boy?” He growls, shoving Sanji back to the stove. “And I’m not too keen on my food tasting like Nami’s feet.” He folds his arms over his chest and gives Nami an annoyed glance.

As much as she wants the foot massage, she can’t really argue with that unless she wants her own feet as a featured flavour pallet in tomorrow’s menu. Fine. She growls and sticks her tongue out at Zoro, to which he returns the gesture mockingly. Usopp leans to whisper in her ear again.

“Looks like you’re losing more than you thought.”

“Shut up.” She grits, elbowing him. Usopp laughs and heads to the deck of the ship, a fuming Nami hot on his heels.

Notes:

Please do not fault me for Sanji’s weak ass “a swordsman without a sword is just a regular guy.. only lamer” burn, that is word for word anime canon I swear it! Even Usopp was disappointed by it. Which meant I had to use it.

And Sanji, in case you missed it in the tags, is bisexual. He adores women and is both romantically and physically attracted to them, but his sexual attraction falters as he doesn’t want to defile such precious beings. That being said, he is very much so physically and sexually attracted to both men and ENBY people, whether he realizes it or not, and while he’s not as romantically attracted to them as he is women, that doesn’t stop him from being able to be in a relationship with one. He and Zoro’s spiteful and bickering relationship is the perfect example of that.

Zoro is pan sexual, and I did definitely hint to him having some choice thoughts about Robin because I find them very cute and I couldn’t help myself.