Luxury Hotels in Japan

Luxury Hotels in Japan

Handpicked stays for exceptional journeys across Japan.

Discover our handpicked places to stay across Japan, from characterful hideaways to exceptional luxury hotels chosen for the way they elevate a journey.

Enquire
Selected by our experts

Featured Hotels in Japan

AMAN
Our featured stay

AMAN

The top six floors of the Otemachi Tower, with a 30-meter pool above the Imperial Palace Gardens and the largest hotel spa in Tokyo, are occupied by AMAN.

Tokyo
Discover more

More places to stay in Japan

1 more handpicked hotels
The Classic Japan Honeymoon: Tokyo, Hakone & Kyoto
A journey we recommend

The Classic Japan Honeymoon: Tokyo, Hakone & Kyoto

From the bright lights of Tokyo to the ritual of tea ceremonies and temple stays.

11 days | From £6,275pp
Discover more
Discover this Do Not Disturb Moment

Private Tea Ceremony in Kyoto

A private tea ceremony in Kyoto offers one of Japan’s most quietly profound cultural experiences, conducted by a tea master in a traditional machiya townhouse.

Discover more
Private Tea Ceremony in Kyoto
Kyoto Without the Kids
Another journey to consider

Kyoto Without the Kids

Two adults. No compromises. A private week in Japan’s most refined city, followed by three nights in a rural ryokan.

10 days | From £4,860pp
Discover more
Keep exploring

Japan Inspiration

Your next steps

Planning your trip should feel effortless.

We Listen

You share what matters, whether it’s a destination, a feeling, or a moment worth celebrating.

We Curate

Your dedicated expert shapes a thoughtful, private itinerary tailored entirely around you.

You Travel

Every detail handled. Every moment considered. Support before, during, and after your journey.

Tell us about your journey

    Step 1 / 2

    window.addEventListener('load', function () { setTimeout(function () { var destinationName = window.currentDestination; if (!destinationName) { return; } var select = document.querySelector( 'select[name="Destination"]' ); if (!select) { return; } for (var i = 0; i < select.options.length; i++) { if ( select.options[i].text.trim().toLowerCase() === destinationName.trim().toLowerCase() ) { select.value = select.options[i].value; select.selectedIndex = i; var nativeSetter = Object.getOwnPropertyDescriptor( HTMLSelectElement.prototype, 'value' ).set; nativeSetter.call( select, select.options[i].value ); select.dispatchEvent( new Event('change', { bubbles: true }) ); break; } } }, 1000); });

    Let's design your escape

    Answer a few quick questions and we’ll craft a journey as unique as your state of mind.