*{box-sizing:border-box;margin:0;padding:0}:root{--paper:#fbf8f1;--card:#fff;--cream:#f6f1e7;--ink:#26343a;--ink-soft:#52606a;--muted:#8a8270;--indigo:#27566a;--indigo-deep:#1f4456;--shu:#c2452a;--shu-soft:#d9694f;--kaki:#cf9a52;--line:#e7ddca;--line-soft:#efe8da}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;font-family:Zen Kaku Gothic New,sans-serif;line-height:1.8}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.mincho{font-family:Zen Old Mincho,serif}.wrap{max-width:1120px;margin:0 auto;padding:0 24px}.site-header{z-index:50;backdrop-filter:blur(10px);background:#fbf8f1e6;border-bottom:1px solid #e7ddcab3;transition:box-shadow .3s;position:sticky;top:0}.site-header.scrolled{box-shadow:0 4px 18px #27566a14}.header-inner{justify-content:space-between;align-items:center;gap:20px;max-width:1180px;margin:0 auto;padding:13px 24px;display:flex}.brand{flex:none;align-items:center;gap:11px;display:flex}.brand .seal{filter:drop-shadow(0 3px 9px #c2452a42);flex:none;width:42px;height:42px;transition:transform .25s;display:block}.brand:hover .seal{transform:rotate(-2deg)scale(1.04)}.brand .btext{flex-direction:column;line-height:1.15;display:flex}.brand .bname{color:var(--ink);letter-spacing:.08em;font-family:Zen Old Mincho,serif;font-size:20px;font-weight:700}.brand .btag{color:var(--muted);letter-spacing:.22em;margin-top:3px;font-size:9.5px}.nav{align-items:center;gap:26px;display:flex}.nav a.nlink{color:var(--ink-soft);white-space:nowrap;font-size:14.5px;font-weight:500;transition:color .18s}.nav a.nlink:hover{color:var(--shu)}.nav .search{background:var(--cream);border:1px solid var(--line);width:40px;height:40px;color:var(--ink-soft);border-radius:50%;justify-content:center;align-items:center;transition:all .18s;display:flex}.nav .search:hover{color:var(--shu);border-color:var(--shu)}.nav .search svg{width:18px;height:18px}.nav-toggle{cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:44px;height:44px;display:none}.nav-toggle span{background:var(--ink);border-radius:2px;width:24px;height:2px;transition:all .25s;display:block}.nav-toggle.open span:first-child{transform:translateY(7px)rotate(45deg)}.nav-toggle.open span:nth-child(2){opacity:0}.nav-toggle.open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.hero{align-items:center;min-height:66vh;display:flex;position:relative;overflow:hidden}.hero-img{object-fit:cover;z-index:0;width:100%;height:100%;position:absolute;inset:0}.hero:after{content:"";z-index:1;background:linear-gradient(100deg,#fbf8f1f0 0%,#fbf8f1c7 34%,#fbf8f129 62%,#1f44561f 100%);position:absolute;inset:0}.hero-inner{z-index:2;width:100%;max-width:1120px;margin:0 auto;padding:72px 24px;position:relative}.hero h1{color:#23323a;letter-spacing:.04em;font-family:Zen Old Mincho,serif;font-size:clamp(40px,6.6vw,70px);font-weight:900;line-height:1.28}.hero .sub{color:#3f4d52;max-width:440px;margin-top:22px;font-size:clamp(14.5px,1.7vw,17px);line-height:1.95}.hero .hero-cta{background:var(--ink);color:#fdf6ea;border-radius:40px;align-items:center;gap:12px;margin-top:30px;padding:15px 30px;font-size:15px;font-weight:700;transition:transform .18s,background .18s;display:inline-flex;box-shadow:0 8px 22px #26343a38}.hero .hero-cta:hover{background:var(--indigo-deep);transform:translateY(-2px)}.hero .hero-cta .ar{font-size:14px}.finder-sec{z-index:5;margin-top:-46px;margin-bottom:18px;position:relative}.finder{background:var(--card);border:1px solid var(--line-soft);border-radius:22px;align-items:stretch;gap:30px;padding:34px;display:flex;box-shadow:0 18px 50px #27566a1f}.finder-lead{border-right:1px solid var(--line-soft);flex-direction:column;flex:none;justify-content:center;gap:8px;width:210px;padding-right:26px;display:flex}.finder-mark{background:var(--cream);border:1px solid var(--line);width:48px;height:48px;color:var(--shu);border-radius:50%;justify-content:center;align-items:center;font-family:Zen Old Mincho,serif;font-size:24px;display:flex}.finder-lead h2{color:var(--ink);letter-spacing:.04em;margin-top:4px;font-family:Zen Old Mincho,serif;font-size:23px;font-weight:700;line-height:1.5}.finder-lead p{color:var(--ink-soft);font-size:12px;line-height:1.7}.finder-body{flex:1;justify-content:space-between;align-items:center;gap:28px;display:flex}.finder-copy{max-width:640px;color:var(--ink-soft);font-size:14px;line-height:1.9}.finder-go{background:var(--ink);color:#fdf6ea;white-space:nowrap;border-radius:12px;flex:none;align-self:center;align-items:center;gap:9px;padding:14px 22px;font-size:14px;font-weight:700;transition:transform .18s,background .18s;display:inline-flex}.finder-go:hover{background:var(--indigo-deep);transform:translateY(-2px)}.section{padding:60px 0 0}.sec-head{align-items:center;gap:11px;margin-bottom:28px;display:flex}.sec-head .si{width:24px;height:24px;color:var(--shu);flex:none}.sec-head h2{color:var(--ink);letter-spacing:.05em;font-family:Zen Old Mincho,serif;font-size:clamp(22px,3vw,28px);font-weight:700}.cards4{grid-template-columns:repeat(4,1fr);gap:20px;display:grid}.cards6{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.card{background:var(--card);border:1px solid var(--line-soft);border-radius:16px;transition:transform .22s,box-shadow .22s;overflow:hidden;box-shadow:0 6px 20px #27566a0f}.card:hover{transform:translateY(-5px);box-shadow:0 16px 34px #27566a21}.card .thumb{aspect-ratio:3/2;position:relative;overflow:hidden}.card .thumb img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.card:hover .thumb img{transform:scale(1.05)}.card .num{width:34px;height:34px;color:var(--ink);background:#fbf8f1eb;border-radius:50%;justify-content:center;align-items:center;font-family:Zen Old Mincho,serif;font-size:15px;font-weight:700;display:flex;position:absolute;top:10px;left:10px;box-shadow:0 2px 8px #0000001f}.card .cbody{padding:16px 16px 20px}.card .ctitle{color:var(--ink);font-family:Zen Old Mincho,serif;font-size:16px;font-weight:700;line-height:1.5}.card .cdesc{color:var(--ink-soft);margin-top:9px;font-size:12.5px;line-height:1.7}.card .cat-tag{width:30px;height:30px;color:var(--shu);background:#fbf8f1e6;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:10px;right:10px}.card .cat-tag svg{width:16px;height:16px}.catrow{grid-template-columns:repeat(6,1fr);gap:14px;display:grid}.catrow a{flex-direction:column;align-items:center;gap:12px;padding:8px 4px;transition:transform .18s;display:flex}.catrow a:hover{transform:translateY(-4px)}.catrow .cic{background:var(--cream);border:1px solid var(--line);width:72px;height:72px;color:var(--indigo);border-radius:50%;justify-content:center;align-items:center;transition:all .18s;display:flex}.catrow a:hover .cic{border-color:var(--shu);color:var(--shu)}.catrow .cic svg{width:30px;height:30px}.catrow .clabel{color:var(--ink);letter-spacing:.06em;font-family:Zen Old Mincho,serif;font-size:14.5px;font-weight:700}.booking{background:var(--cream);border-top:1px solid var(--line);margin-top:64px;padding:54px 24px}.booking-inner{grid-template-columns:300px 1fr;align-items:center;gap:40px;max-width:1120px;margin:0 auto;display:grid}.book-lead .label{letter-spacing:.28em;color:var(--shu);margin-bottom:12px;font-size:11px;font-weight:700;display:inline-block}.book-lead h2{color:var(--ink);letter-spacing:.04em;font-family:Zen Old Mincho,serif;font-size:clamp(22px,3vw,27px);font-weight:700;line-height:1.5}.book-lead p{color:var(--ink-soft);margin-top:13px;margin-bottom:20px;font-size:13.5px}.book-lead .guide-btn{background:var(--ink);color:#fdf6ea;border-radius:40px;align-items:center;gap:10px;padding:13px 26px;font-size:14px;font-weight:700;transition:transform .18s,background .18s;display:inline-flex}.book-lead .guide-btn:hover{background:var(--indigo-deep);transform:translateY(-2px)}.book-cards{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.book-card{background:var(--card);border:1px solid var(--line-soft);text-align:center;border-radius:14px;padding:20px 16px;box-shadow:0 6px 18px #27566a0f}.book-card .bc-name{color:var(--ink);letter-spacing:.02em;font-size:16px;font-weight:700}.book-card .bc-name .dot{color:var(--shu)}.book-card .bc-sub{color:var(--ink-soft);min-height:34px;margin:9px 0 16px;font-size:11.5px;line-height:1.6}.book-card a.bc-btn{color:#fdf6ea;border-radius:10px;padding:11px 10px;font-size:13px;font-weight:700;transition:transform .16s,filter .16s;display:block;position:relative}.book-card a.bc-btn:hover{filter:brightness(1.05);transform:translateY(-2px)}.bc-rakuten{background:#bf0000}.bc-jalan{background:#e7700d}.bc-ikyu{background:#1a2b4a}.ad-label{color:var(--muted);border:1px solid var(--line);letter-spacing:.06em;border-radius:20px;margin-top:18px;padding:3px 12px;font-size:11px;display:inline-block}.book-note{color:var(--muted);max-width:1120px;margin-top:12px;margin-left:auto;margin-right:auto;font-size:11px;line-height:1.7}.book-foot{text-align:center;max-width:1120px;margin:22px auto 0}.vc-px{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.hotel-cta{margin:40px 0}.hotel-cta h2{color:var(--ink);margin-bottom:18px;font-family:Zen Old Mincho,serif;font-size:clamp(20px,2.6vw,24px);font-weight:700}.hotel-cards{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px;display:grid}.hotel-card{background:var(--card);border:1px solid var(--line-soft);border-radius:16px;padding:20px;box-shadow:0 6px 20px #27566a0f}.hotel-card .h-name{color:var(--ink);font-family:Zen Old Mincho,serif;font-size:17px;font-weight:700}.hotel-card .h-tags{flex-wrap:wrap;gap:6px;margin:10px 0;display:flex}.hotel-card .h-tag{color:var(--indigo);background:var(--cream);border:1px solid var(--line);border-radius:20px;padding:3px 10px;font-size:11px}.hotel-card .h-desc{color:var(--ink-soft);margin-bottom:14px;font-size:13px;line-height:1.8}.hotel-card .h-links{flex-wrap:wrap;gap:8px;display:flex}.hotel-card .h-links a{text-align:center;color:#fdf6ea;border-radius:8px;flex:1;min-width:90px;padding:9px 8px;font-size:12.5px;font-weight:700}.sticky-cta{z-index:80;background:var(--ink);color:#fdf6ea;justify-content:space-between;align-items:center;gap:12px;padding:12px 18px;display:none;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -6px 20px #0000002e}.sticky-cta.show{display:flex}.sticky-cta .sc-text{font-size:13.5px;font-weight:700}.sticky-cta .sc-btn{background:var(--shu);color:#fff;white-space:nowrap;border-radius:20px;padding:9px 16px;font-size:13px;font-weight:700}.sticky-cta .sc-close{color:#cdd8d6;cursor:pointer;background:0 0;border:none;padding:4px;font-size:20px;line-height:1}@media (width>=761px){.sticky-cta{display:none!important}}.site-footer{color:#cdd8d6;background:#22312f;padding:48px 24px 30px}.foot-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:34px 40px;max-width:1120px;margin:0 auto;display:flex}.foot-brand .fb{align-items:center;gap:11px;display:flex}.foot-brand .fseal{filter:drop-shadow(0 3px 9px #0000004d);width:40px;height:40px}.foot-brand .ftext{flex-direction:column;line-height:1.2;display:flex}.foot-brand .fname{color:#fdf6ea;letter-spacing:.08em;font-family:Zen Old Mincho,serif;font-size:18px}.foot-brand .ftag{color:#9fb0ad;letter-spacing:.06em;margin-top:4px;font-size:11px}.foot-links{flex-wrap:wrap;gap:22px;display:flex}.foot-links a{color:#b9c5c2;font-size:13.5px;transition:color .18s}.foot-links a:hover{color:var(--kaki)}.foot-social{gap:12px;display:flex}.foot-social a{color:#cdd8d6;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;transition:all .18s;display:flex}.foot-social a:hover{color:var(--kaki);background:#ffffff1a}.foot-social svg{width:17px;height:17px}.foot-bottom{text-align:center;border-top:1px solid #ffffff1f;max-width:1120px;margin:32px auto 0;padding-top:20px}.foot-bottom .disc{color:#8fa19d;max-width:680px;margin:0 auto 12px;font-size:11px;line-height:1.8}.foot-bottom .copy{color:#8fa19d;font-size:11px}.mobile-menu{z-index:60;background:var(--paper);visibility:hidden;flex-direction:column;gap:2px;width:min(80vw,310px);padding:84px 28px 40px;transition:transform .3s;display:none;position:fixed;inset:0 0 0 auto;overflow-y:auto;transform:translate(100%);box-shadow:-10px 0 40px #1f44562e}.mobile-menu.open{visibility:visible;transform:none}.mobile-menu a{color:var(--ink);border-bottom:1px solid var(--line);padding:14px 4px;font-family:Zen Old Mincho,serif;font-size:16.5px;display:block}.menu-ov{z-index:55;opacity:0;pointer-events:none;background:#1d3a3f66;transition:opacity .3s;display:none;position:fixed;inset:0}.menu-ov.open{opacity:1;pointer-events:auto}.article-body{max-width:760px;margin:0 auto;padding:40px 24px 80px}.article-body h2{color:var(--ink);letter-spacing:.03em;margin:44px 0 18px;font-family:Zen Old Mincho,serif;font-size:clamp(20px,2.8vw,26px);font-weight:700}.article-body h3{color:var(--ink);margin:32px 0 14px;font-family:Zen Old Mincho,serif;font-size:19px;font-weight:700}.article-body p{color:var(--ink-soft);margin-bottom:18px;font-size:15.5px}.article-body ul,.article-body ol{color:var(--ink-soft);margin:0 0 18px 22px}.article-body li{margin-bottom:8px}.article-body img{border-radius:14px;margin:24px 0}.article-body a{color:var(--indigo);text-decoration:underline}.article-body a:hover{color:var(--shu)}.article-body blockquote{background:var(--cream);border:1px solid var(--line);border-left:4px solid var(--kaki);border-radius:12px;margin:20px 0;padding:16px 20px}.article-body blockquote p:last-child{margin-bottom:0}.article-body table{border-collapse:collapse;width:100%;margin:18px 0 22px;font-size:13.5px}.article-body th,.article-body td{border:1px solid var(--line);text-align:left;vertical-align:top;padding:9px 11px}.article-body thead th{background:var(--indigo);color:#fdf6ea;white-space:nowrap;font-weight:700}.article-body tbody tr:nth-child(2n){background:var(--cream)}@media (width<=1000px){.finder{flex-direction:column;gap:24px;padding:28px 22px}.finder-lead{border-right:none;border-bottom:1px solid var(--line-soft);text-align:left;flex-direction:row;align-items:center;gap:16px;width:auto;padding-bottom:20px;padding-right:0}.finder-body{flex-direction:column;align-items:flex-start;gap:18px}.finder-go{justify-content:center;width:100%;margin-top:6px}.booking-inner{text-align:center;grid-template-columns:1fr;gap:28px}.book-lead .guide-btn{margin:0 auto}}@media (width<=860px){.cards4,.cards6{grid-template-columns:repeat(2,1fr)}.catrow{grid-template-columns:repeat(3,1fr);gap:18px}}@media (width<=760px){.nav .nlink{display:none}.nav-toggle,.mobile-menu,.menu-ov{display:flex}body.menu-open{overflow:hidden}.hero:after{background:linear-gradient(#fbf8f180 0%,#fbf8f1bd 58%,#fbf8f1f0 100%)}.hero-inner{text-align:center;padding:56px 24px}.hero .sub{margin-left:auto;margin-right:auto}.book-cards{grid-template-columns:1fr}}@media (width<=480px){.cards4,.cards6{grid-template-columns:1fr}.catrow{grid-template-columns:repeat(2,1fr)}}
