/* Natural photo hero and the shared reservation action. */
.comparison-page .photo-hero{position:relative;isolation:isolate;display:block;height:calc(100svh - 22px);min-height:760px;max-height:1060px;overflow:hidden;background:#28271f;color:#fff;}
.photo-hero-picture,.photo-hero-wash{position:absolute;inset:0;z-index:-2;}
.photo-hero-background{width:100%;height:100%;object-fit:cover;object-position:50% 58%;}
.photo-hero-wash{z-index:-1;background:linear-gradient(90deg,#0d1618c2 0%,#0d16188a 25%,#0d16180f 54%,transparent 74%),linear-gradient(180deg,#00000028,transparent 32%,transparent 70%,#0000002e);}
.photo-hero-english{position:absolute;top:14.5%;left:4.5%;right:4.5%;color:#fff;pointer-events:none;}
.english-desktop{display:block;width:100%;height:auto;overflow:visible;}
.english-desktop text{font-family:'Times New Roman',serif;font-size:215px;font-weight:700;fill:#fff;}.english-mobile{display:none;}
.photo-hero-copy{position:absolute;left:6%;top:41%;z-index:2;}
.photo-hero-service{display:flex;align-items:center;gap:12px;font-size:12px;letter-spacing:.16em;line-height:1.5;}
.photo-hero-service:before{content:'';width:26px;height:1px;background:currentColor;}
.photo-hero-copy h1{font:600 clamp(50px,4.8vw,84px)/1.35 'Noto Serif JP',serif;letter-spacing:.075em;margin:18px 0 17px;}.photo-hero-copy h1 span{display:block;}
.photo-hero-lead{font-size:14px;line-height:1.95;letter-spacing:.06em;color:#fffdf6;}
.reset-action{display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:80px;padding:10px 10px 10px 28px;border:1px solid #ffffffdb;border-radius:100px;background:#f8f7f0;color:#172451;box-shadow:0 8px 32px #101a3217;transition:background .25s,box-shadow .25s,transform .25s;}
.reset-action:hover{background:#fff;transform:translateY(-2px);box-shadow:0 10px 35px #101a3235;}
.action-copy{display:flex;flex-direction:column;gap:5px;}.action-copy small{font:600 9px/1.3 'DM Sans',sans-serif;letter-spacing:.15em;color:#5b667e;}.action-copy strong{font-size:16px;font-weight:600;line-height:1.5;letter-spacing:.035em;}
.action-arrow{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;flex-shrink:0;background:#234ee8;color:white;transition:background .25s;}
.action-arrow svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s;}
.reset-action:hover .action-arrow{background:#172451;}.reset-action:hover svg{transform:translateX(3px);}.photo-hero-book{width:352px;margin-top:26px;}
.hero-discover{position:absolute;left:6%;bottom:28px;display:flex;align-items:center;gap:14px;min-height:48px;font-size:12px;letter-spacing:.035em;}
.hero-discover>span:last-child{display:flex;flex-direction:column;gap:3px;}.hero-discover small{font:500 9px/1.5 'DM Sans',sans-serif;letter-spacing:.18em;}
.discover-circle{display:grid;place-items:center;width:42px;height:42px;border:1px solid #ffffff78;border-radius:50%;font:300 22px/1 sans-serif;animation:discover-drift 2.8s ease-in-out infinite;}
.hero-place{position:absolute;bottom:41px;right:5%;font:500 10px/1.6 'DM Sans',sans-serif;letter-spacing:.12em;color:#ffffffd9;}.hero-place span{margin:0 10px;opacity:.65;}
.comparison-page .site-header{height:100px;padding:18px 4.5%;gap:25px;display:flex;align-items:center;}
.comparison-page .site-header .brand{position:static;width:205px;}.comparison-page .site-header .menu-toggle{position:static;}
.comparison-page.photo-fv-active .site-header:not(.scrolled) .brand img{filter:invert(1);}
.comparison-page.photo-fv-active .site-header .desktop-nav,.comparison-page.photo-fv-active .site-header .header-book{display:none;}
.comparison-page .site-header.scrolled{height:78px;padding-top:10px;padding-bottom:10px;}.comparison-page .site-header.scrolled .brand{width:160px;}
.comparison-page.photo-fv-active .menu-toggle{display:grid;margin-left:auto;align-content:center;justify-content:center;gap:7px;width:48px;height:48px;border:1px solid #ffffff60;border-radius:50%;background:#ffffff0c;}
.comparison-page .menu-toggle span{width:23px;height:1px;background:var(--ink);}.comparison-page.photo-fv-active .site-header:not(.scrolled) .menu-toggle span{background:white;}
.comparison-page .site-header.scrolled .menu-toggle{border-color:#17245130;}
.comparison-page .menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg);}.comparison-page .menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg);}
.comparison-page.menu-open .site-header .brand img{filter:none!important;}.comparison-page.menu-open .site-header .menu-toggle span{background:var(--ink)!important;}
.comparison-page .mobile-menu:not([hidden]){position:fixed;z-index:25;inset:0;background:#f4f2eb;padding:125px max(30px,calc((100% - 650px)/2)) 40px;display:flex;flex-direction:column;gap:15px;overflow:auto;}
.comparison-page .mobile-menu>a:not(.button){font-size:23px;border-bottom:1px solid var(--line);padding:8px 0;}.photo-hero a:focus-visible{outline-color:#fff;}
@keyframes discover-drift{0%,100%{transform:translateY(-2px)}50%{transform:translateY(3px)}}
@media(min-width:1700px){.photo-hero-copy{top:40%;}.photo-hero-book{width:390px;}.action-copy strong{font-size:18px;}.photo-hero-lead{font-size:16px;}.photo-hero-english{top:13%;}}
@media(min-width:801px) and (max-height:790px){.comparison-page .photo-hero{min-height:min(760px,calc(100svh - 22px));}.photo-hero-copy h1{font-size:51px;margin:12px 0;}.photo-hero-book{margin-top:19px;min-height:70px;}.action-arrow{width:50px;height:50px;}.photo-hero-copy{top:39%;}.hero-discover{bottom:22px;}}
@media(max-width:1100px) and (min-width:801px){.photo-hero-background{object-position:57% center;}.photo-hero-copy{left:5%;}.photo-hero-copy h1{font-size:54px;}.hero-place{font-size:8px;right:4%;}.photo-hero-wash{background:linear-gradient(90deg,#111b20bf,#111b206e 35%,transparent 73%);}}
@media(max-width:800px){
 .comparison-page .photo-hero{height:auto;min-height:0;max-height:none;background:#f3f1e9;color:#172451;overflow:hidden;padding-bottom:0;}
 .photo-hero-picture{position:relative;inset:auto;z-index:-2;display:block;width:100%;height:auto;aspect-ratio:3/3.8;}.photo-hero-background{position:absolute;inset:0;object-fit:cover;object-position:50% 48%;}
 .photo-hero-wash{height:auto;bottom:auto;aspect-ratio:3/3.8;background:linear-gradient(180deg,#00000035,transparent 46%,transparent 85%,#f3f1e91a);}
 .photo-hero-english{top:82px;left:23px;right:23px;}.english-desktop{display:none;}.english-mobile{display:block;color:#fff;font:bold 19vw/.94 'Times New Roman',serif;letter-spacing:-.045em;}
 .photo-hero-copy{position:relative;left:auto;top:auto;padding:26px 24px 0;}.photo-hero-service{font-size:10px;letter-spacing:.13em;gap:9px;}.photo-hero-service:before{width:20px;}
 .photo-hero-copy h1{font-size:clamp(25px,8vw,38px);line-height:1.6;letter-spacing:.025em;margin:9px 0;white-space:nowrap;}.photo-hero-copy h1 span{display:inline;}
 .photo-hero-lead{font-size:13px;color:#454b4e;line-height:1.8;}.photo-hero-lead br{display:none;}
 .photo-hero-book{width:100%;margin-top:19px;min-height:72px;padding:8px 8px 8px 22px;border-color:#1724512e;box-shadow:none;}.action-copy strong{font-size:15px;}.action-copy small{font-size:8px;}.action-arrow{width:50px;height:50px;}
 .hero-discover{position:relative;left:auto;bottom:auto;margin:19px 24px 22px;gap:11px;font-size:11px;color:#172451;justify-content:center;}.hero-discover small{font-size:8px;}.discover-circle{width:34px;height:34px;border-color:#17245145;font-size:19px;}.hero-place{display:none;}
 .comparison-page .site-header{height:78px;padding:16px 24px;gap:12px;}.comparison-page .site-header .brand{width:151px;}.comparison-page .site-header.scrolled{height:70px;padding:12px 24px;}.comparison-page .site-header.scrolled .brand{width:134px;}
 .comparison-page .site-header .header-book{display:none;}.comparison-page .site-header .menu-toggle{display:grid;margin-left:auto;align-content:center;justify-content:center;gap:7px;width:42px;height:42px;padding:5px;}.comparison-page .menu-toggle span{width:23px;}.photo-hero a:focus-visible{outline-color:#234ee8;}
}
@media(min-width:600px) and (max-width:800px){.photo-hero-picture,.photo-hero-wash{aspect-ratio:4/3;}.photo-hero-background{object-position:55% 50%;}.photo-hero-english{top:94px;}.english-desktop{display:block;}.english-mobile{display:none;}.photo-hero-copy{padding-top:25px;}.photo-hero-book{max-width:380px;}.hero-discover{position:absolute;right:24px;left:auto;bottom:23px;margin:0;}.comparison-page .photo-hero{padding-bottom:25px;}}
@media(max-width:360px){.photo-hero-english{top:75px;}.english-mobile{font-size:17.5vw;}}
@media(prefers-reduced-motion:reduce){.discover-circle{animation:none;}.reset-action,.action-arrow,.action-arrow svg{transition:none;}}
