/* source: app.css */
:root{--navy:#070b1c;--navy-2:#0d132d;--navy-3:#171d3f;--cream:#f7f2e9;--paper:#fffdf9;--ink:#17182a;--muted:#747687;--line:#e5dfd5;--pink:#d71968;--pink-2:#f02b7b;--gold:#c7a86a;--blue:#356ee7;--green:#15966d;--red:#d64557;--shadow:0 18px 50px rgba(25,19,31,.08);--radius:16px;--font:"Yu Gothic UI","Hiragino Kaku Gothic ProN",Meiryo,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font);color:var(--ink);background:var(--cream);line-height:1.7}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,select,textarea{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin-top:0}.button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:42px;padding:.65rem 1.1rem;border:1px solid transparent;border-radius:8px;font-weight:700;line-height:1.2;transition:.2s}.button:hover{transform:translateY(-1px)}.button-primary{color:#fff;background:linear-gradient(135deg,var(--pink),var(--pink-2));box-shadow:0 8px 22px rgba(215,25,104,.2)}.button-dark{color:#fff;background:var(--navy)}.button-light{color:#303348;background:#fff;border-color:#dfe2ea}.button-danger{color:#b22338;background:#fff1f3;border-color:#ffd5dc}.button-small{min-height:34px;padding:.45rem .75rem;font-size:.8rem}.button-wide{width:100%}.required{color:var(--pink)}
/* Admin */
.admin-body{background:#f3f5f9;color:#222638;font-size:14px}.admin-shell{min-height:100vh;display:flex}.admin-sidebar{position:fixed;inset:0 auto 0 0;z-index:30;width:244px;display:flex;flex-direction:column;background:linear-gradient(180deg,#090d22 0%,#11162e 100%);color:#cbd0e4;box-shadow:8px 0 30px rgba(10,14,35,.12)}.admin-brand{height:78px;display:flex;align-items:center;gap:12px;padding:0 22px;border-bottom:1px solid rgba(255,255,255,.08);color:#fff}.admin-brand>span,.auth-brand>span{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;background:linear-gradient(135deg,var(--pink),#7e2de0);font:800 23px/1 Georgia,serif}.admin-brand strong{display:block;font-size:16px;letter-spacing:.16em}.admin-brand small{display:block;margin-top:1px;color:#747b9b;font-size:8px;letter-spacing:.13em}.admin-sidebar nav{flex:1;overflow:auto;padding:13px 11px 22px}.admin-nav-group{margin:17px 12px 6px;color:#6d7392;font-size:10px;font-weight:700;letter-spacing:.14em}.admin-nav-link{display:flex;align-items:center;gap:11px;margin:3px 0;padding:9px 12px;border-radius:8px;color:#b6bcd3;font-weight:650;transition:.18s}.admin-nav-link span{width:20px;text-align:center;color:#737b9e}.admin-nav-link:hover{background:rgba(255,255,255,.06);color:#fff}.admin-nav-link.is-active{color:#fff;background:linear-gradient(90deg,rgba(215,25,104,.92),rgba(215,25,104,.58));box-shadow:0 8px 20px rgba(215,25,104,.18)}.admin-nav-link.is-active span{color:#fff}.admin-sidebar-foot{display:flex;align-items:center;gap:10px;padding:14px;border-top:1px solid rgba(255,255,255,.08)}.user-avatar{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;color:#fff;background:linear-gradient(135deg,#6c73d9,var(--pink));font-weight:800}.admin-sidebar-foot div{min-width:0;flex:1}.admin-sidebar-foot strong,.admin-sidebar-foot small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-sidebar-foot strong{color:#fff;font-size:12px}.admin-sidebar-foot small{color:#7d849f;font-size:10px;text-transform:uppercase}.admin-sidebar-foot>a{font-size:20px;color:#7d849f}.admin-main{width:calc(100% - 244px);min-height:100vh;margin-left:244px;display:flex;flex-direction:column}.admin-topbar{height:78px;display:flex;align-items:center;gap:14px;padding:0 28px;background:#fff;border-bottom:1px solid #e9eaf0;position:sticky;top:0;z-index:20}.admin-topbar>div{flex:1}.admin-topbar h1{margin:0;font-size:18px;line-height:1.3}.admin-topbar p{margin:2px 0 0;color:#9396a5;font-size:11px}.sidebar-toggle{display:none;border:0;background:none;font-size:22px}.admin-content{width:100%;max-width:1540px;flex:1;padding:26px 28px 48px;margin:0 auto}.admin-footer{padding:18px 28px;color:#9b9dac;font-size:11px;text-align:center}.flash,.public-flash{padding:12px 16px;border:1px solid #f4cadb;border-radius:9px;background:#fff2f7;color:#9c1b50;font-weight:700}.admin-content>.flash{margin-bottom:18px}.page-actions{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.page-actions h2{margin:0;font-size:20px}.page-actions p{margin:4px 0 0;color:#858897;font-size:12px}.panel{background:#fff;border:1px solid #e7e8ed;border-radius:12px;box-shadow:0 5px 20px rgba(29,34,55,.025)}.panel-head{min-height:70px;display:flex;justify-content:space-between;align-items:center;gap:15px;padding:16px 19px;border-bottom:1px solid #ececf1}.panel-head h2{margin:0;font-size:15px}.panel-head p{margin:2px 0 0;color:#9294a3;font-size:11px}.panel-head>a{color:var(--pink);font-weight:700;font-size:12px}.stat-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;margin-bottom:20px}.stat-card{display:flex;align-items:center;gap:13px;min-height:88px;padding:16px;background:#fff;border:1px solid #e7e8ed;border-radius:12px;transition:.2s}.stat-card:hover{border-color:#d9a0ba;box-shadow:0 10px 25px rgba(37,32,52,.07);transform:translateY(-2px)}.stat-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:11px;background:#f7edf3;color:var(--pink);font-size:19px}.stat-card:nth-child(2) .stat-icon{background:#eff2ff;color:#5769cf}.stat-card:nth-child(3) .stat-icon{background:#fff0f4;color:#e04478}.stat-card:nth-child(4) .stat-icon{background:#ecf7ff;color:#2d8ec4}.stat-card:nth-child(5) .stat-icon{background:#fff7e8;color:#b88222}.stat-card:nth-child(6) .stat-icon{background:#eef9f6;color:#19946e}.stat-card strong{display:block;font-size:23px;line-height:1.1}.stat-card small{display:block;margin-top:5px;color:#848796;font-size:10px}.admin-grid{display:grid;gap:20px}.admin-grid-main{grid-template-columns:minmax(0,2fr) minmax(280px,.8fr)}.quick-panel>a{height:55px;display:flex;align-items:center;gap:12px;padding:0 18px;border-bottom:1px solid #eeeeF3;font-weight:700}.quick-panel>a span{width:27px;height:27px;display:grid;place-items:center;border-radius:7px;background:#f6eaf0;color:var(--pink)}.quick-panel>a b{margin-left:auto;color:#aaa}.system-mini{display:grid;grid-template-columns:1fr 1fr;padding:17px;gap:10px}.system-mini div{padding:12px;border-radius:8px;background:#f6f7fa}.system-mini span,.system-mini strong{display:block}.system-mini span{color:#8d8f9d;font-size:10px}.system-mini strong{margin-top:3px;font-size:19px}.table-toolbar{display:flex;align-items:center;justify-content:space-between;padding:13px 18px;border-bottom:1px solid #ececf1;color:#9799a5;font-size:11px}.table-search{width:270px;display:flex;align-items:center;gap:7px;padding:0 10px;border:1px solid #e0e2e8;border-radius:7px;background:#fafbfc}.table-search input{width:100%;height:34px;border:0;outline:0;background:transparent}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{padding:13px 16px;border-bottom:1px solid #eeeef2;text-align:left;vertical-align:middle;white-space:nowrap}th{color:#818493;background:#fafbfc;font-size:10px;letter-spacing:.04em}td{font-size:12px}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fffafd}td small,td strong{display:block}.table-title{color:#24283b;font-weight:750}.table-title:hover{color:var(--pink)}td small{max-width:280px;margin-top:3px;color:#9699a6;overflow:hidden;text-overflow:ellipsis}.content-cell,.user-cell{display:flex;align-items:center;gap:10px}.content-cell img,.content-placeholder{width:42px;height:42px;flex:0 0 auto;border-radius:7px;object-fit:cover}.content-placeholder{display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#292f59,var(--pink));font-weight:800}.status,.role,.type-badge,.count-badge{display:inline-flex;align-items:center;width:max-content;padding:3px 8px;border-radius:99px;font-size:9px;font-weight:800}.status-published{color:#137456;background:#e9f7f2}.status-draft{color:#776f77;background:#f0eff1}.role{color:#5f6381;background:#eef0f7}.role-admin{color:#9a1d54;background:#fdeaf2}.role-editor{color:#345ea8;background:#eaf1ff}.role-moderator{color:#85621e;background:#fff5d9}.actions-col{width:120px}.row-actions{display:flex;align-items:center;gap:4px}.row-actions form{margin:0}.icon-button{width:31px;height:31px;display:grid;place-items:center;border:1px solid #e3e4e9;border-radius:6px;background:#fff;color:#757887}.icon-button:hover{color:var(--pink);border-color:#e8a5c1}.icon-button.danger{color:#be3c4e}.empty-cell{height:140px;text-align:center;color:#999ca8}.editor-grid{display:grid;grid-template-columns:minmax(0,1fr) 285px;align-items:start;gap:20px}.editor-main{display:grid;gap:20px}.form-panel{padding-bottom:19px}.form-panel>.form-stack,.form-panel>form{padding:19px}.form-stack{display:grid;gap:15px}.form-stack.compact{gap:12px}.form-stack label,.form-row label{display:grid;gap:6px;color:#55596b;font-size:11px;font-weight:750}.form-stack label small{color:#9295a2;font-weight:400}.form-stack input,.form-stack select,.form-stack textarea,.form-row input,.form-row select,.form-row textarea{width:100%;border:1px solid #dfe1e8;border-radius:7px;background:#fff;padding:9px 11px;outline:none;color:#272a3b}.form-stack input:focus,.form-stack select:focus,.form-stack textarea:focus,.form-row input:focus,.form-row select:focus,.form-row textarea:focus{border-color:#cf6d99;box-shadow:0 0 0 3px rgba(215,25,104,.07)}.form-stack input[readonly]{background:#f5f6f8;color:#8b8d99}.body-editor{min-height:300px;line-height:1.8}.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-row.three{grid-template-columns:repeat(3,minmax(0,1fr))}.field-help{margin:0;padding:10px 12px;border-radius:7px;background:#f7f7fa;color:#848796;font-size:10px}.sticky-panel{position:sticky;top:98px}.narrow-panel{max-width:720px;padding:0}.narrow-panel>.form-stack{padding:22px}.form-buttons{display:flex;gap:10px}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.settings-grid>.panel>.form-stack{padding:20px}.api-secret{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(320px,1.4fr) auto;align-items:center;gap:16px;margin-bottom:20px;padding:18px;border:1px solid #e0b65b;border-radius:11px;background:#fff9e9}.api-secret strong{display:block}.api-secret p{margin:3px 0 0;color:#796d51;font-size:10px}.api-secret code{padding:11px;border-radius:7px;background:#fff;font-size:12px;word-break:break-all}.api-grid{grid-template-columns:400px minmax(0,1fr)}fieldset{min-width:0;margin:0;padding:14px;border:1px solid #e2e3e9;border-radius:8px}legend{padding:0 6px;color:#55596b;font-size:11px;font-weight:750}.checkbox-grid{display:grid;gap:7px}.check{display:flex!important;grid-template-columns:none!important;align-items:center;gap:8px!important;padding:8px;border-radius:6px;background:#f7f8fa}.check input{width:auto!important}.check strong,.check small{display:block}.scope-list{display:flex;flex-wrap:wrap;gap:3px;max-width:280px}.scope-list span{padding:2px 5px;border-radius:4px;background:#f0f1f6;color:#64687c;font-size:8px}.muted-row{opacity:.55}.api-help{margin-top:20px;padding-bottom:18px}.api-help pre{margin:18px;padding:16px;overflow:auto;border-radius:8px;background:#111528;color:#dfe3f5;font:12px/1.7 Consolas,monospace}.count-badge{color:#fff;background:var(--pink);font-size:11px}.empty-state{padding:60px 20px;text-align:center}.empty-state>span{width:55px;height:55px;display:grid;place-items:center;margin:0 auto 14px;border-radius:50%;color:#168565;background:#e6f6f0;font-size:24px}.empty-state h2{margin-bottom:4px;font-size:17px}.empty-state p{color:#8d909d;font-size:12px}.moderation-list{display:grid;gap:14px}.moderation-card{padding:18px}.moderation-card header{display:flex;justify-content:space-between;align-items:center}.moderation-card header>div{display:flex;align-items:center;gap:10px}.type-badge{color:#994067;background:#faeaf1}.moderation-card time{color:#979aa7;font-size:10px}.moderation-card>p{margin:18px 0;padding:16px;border-radius:8px;background:#f8f8fa;white-space:normal}.moderation-card form{display:flex;gap:7px}.admin-guest{min-height:100vh;background:radial-gradient(circle at 75% 15%,rgba(215,25,104,.25),transparent 27%),linear-gradient(135deg,#070a1b,#171d3b);color:#fff}.auth-shell{width:min(470px,calc(100% - 30px));margin:auto;padding:65px 0}.auth-brand{display:flex;align-items:center;justify-content:center;gap:11px;margin-bottom:22px;color:#fff;font-size:20px}.auth-card{padding:34px;border:1px solid rgba(255,255,255,.11);border-radius:16px;background:rgba(255,255,255,.98);box-shadow:0 25px 70px rgba(0,0,0,.28);color:#25283a}.auth-card h1{margin-bottom:7px;font-size:23px}.auth-card>p{margin-bottom:23px;color:#858796;font-size:12px}.eyebrow{margin-bottom:7px;color:var(--pink);font-size:10px;font-weight:800;letter-spacing:.17em}.auth-foot{margin:17px 0 0;color:#6f7592;text-align:center;font-size:10px}
/* Public header and home */
.public-body{background:var(--cream);font-size:15px}.site-header{height:76px;background:rgba(7,11,28,.98);color:#fff;border-bottom:1px solid rgba(255,255,255,.08)}.site-header-inner{width:min(1360px,calc(100% - 48px));height:100%;margin:auto;display:flex;align-items:center;gap:34px}.site-logo{position:relative;display:inline-flex;align-items:baseline;font-family:Georgia,"Times New Roman",serif;font-size:18px;letter-spacing:.08em}.site-logo span{font-weight:400}.site-logo b{font-size:21px}.site-logo i{margin-left:2px;color:var(--pink);font:bold 21px Arial}.site-logo small{position:absolute;top:26px;left:1px;width:max-content;color:#777c97;font:6px/1 Arial;letter-spacing:.22em}.site-nav{height:100%;display:flex;align-items:center;gap:26px;margin-left:auto}.site-nav a{height:100%;display:flex;align-items:center;position:relative;color:#b4b7c6;font-size:11px;font-weight:700}.site-nav a:hover,.site-nav a.is-active{color:#fff}.site-nav a.is-active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--pink)}.header-actions{display:flex;align-items:center;gap:8px;font-size:10px}.header-actions>span{max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#aeb2c4}.header-login,.header-register{padding:8px 12px;border-radius:5px;border:1px solid rgba(255,255,255,.2);font-weight:700}.header-register{border-color:var(--pink);background:var(--pink)}.public-menu-toggle{display:none;margin-left:auto;color:#fff;border:0;background:transparent;font-size:21px}.public-flash{width:min(1240px,calc(100% - 40px));margin:16px auto}.hero{position:relative;min-height:570px;overflow:hidden;color:#fff;background:radial-gradient(circle at 73% 28%,rgba(141,29,104,.33),transparent 25%),radial-gradient(circle at 16% 65%,rgba(47,75,161,.18),transparent 28%),linear-gradient(135deg,#070a19 0%,#111735 52%,#090c20 100%)}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(7,10,25,.98) 0%,rgba(7,10,25,.75) 46%,rgba(7,10,25,.25) 73%,rgba(7,10,25,.78) 100%)}.hero-glow{position:absolute;width:430px;height:430px;right:12%;top:22px;border-radius:50%;background:radial-gradient(circle,rgba(255,71,151,.19),rgba(134,50,150,.08) 34%,transparent 69%);filter:blur(5px)}.skyline{position:absolute;right:0;bottom:0;width:58%;height:87%;opacity:.65;background:linear-gradient(to top,#050711 0 12%,transparent 12%),linear-gradient(90deg,transparent 0 4%,#121631 4% 11%,transparent 11% 13%,#1a1835 13% 19%,transparent 19% 22%,#0f142c 22% 29%,transparent 29% 31%,#18142f 31% 39%,transparent 39% 43%,#0c1228 43% 52%,transparent 52% 55%,#171834 55% 63%,transparent 63% 68%,#10152d 68% 76%,transparent 76% 80%,#15152e 80% 90%,transparent 90%),repeating-linear-gradient(90deg,transparent 0 16px,rgba(255,205,118,.43) 17px 19px,transparent 20px 32px)}.skyline:before{content:"";position:absolute;inset:22% 0 0;background:repeating-linear-gradient(0deg,transparent 0 24px,rgba(255,255,255,.04) 25px 27px)}.skyline:after{content:"";position:absolute;left:57%;bottom:0;width:22px;height:96%;background:linear-gradient(to bottom,transparent 0 9%,#20223d 9%);clip-path:polygon(45% 0,55% 0,63% 20%,100% 21%,88% 23%,71% 23%,82% 100%,18% 100%,30% 23%,12% 23%,0 21%,37% 20%)}.hero-inner{position:relative;z-index:2;width:min(1240px,calc(100% - 48px));min-height:570px;margin:auto;display:flex;align-items:center}.hero-copy{width:min(690px,62%);padding:55px 0}.hero-eyebrow{margin-bottom:13px;color:var(--gold);font:700 10px/1.2 Georgia,serif;letter-spacing:.25em}.hero h1{margin:0 0 15px;font-family:Georgia,"Yu Mincho",serif;font-size:clamp(36px,4.2vw,62px);font-weight:500;line-height:1.3;letter-spacing:.045em;text-shadow:0 8px 28px rgba(0,0,0,.3)}.hero-copy>p:not(.hero-eyebrow){max-width:640px;color:#c4c7d3;font-size:14px;line-height:2}.hero-search{height:58px;display:flex;align-items:center;margin-top:28px;padding:5px 6px 5px 16px;border:1px solid rgba(255,255,255,.2);border-radius:6px;background:rgba(255,255,255,.96);box-shadow:0 16px 50px rgba(0,0,0,.28);color:#686b77}.hero-search>span{font-size:20px}.hero-search input{min-width:0;flex:1;height:100%;padding:0 12px;border:0;outline:0;background:transparent;color:#292c3d;font-size:13px}.hero-search button{height:44px;min-width:90px;border:0;border-radius:4px;background:var(--pink);color:#fff;font-weight:800}.hero-search.compact{max-width:700px;margin:22px 0 0}.hero-tags{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-top:13px;color:#8d92a8;font-size:9px}.hero-tags a{padding:4px 8px;border:1px solid rgba(255,255,255,.13);border-radius:99px;color:#aeb2c3}.hero-stats{position:absolute;right:0;bottom:33px;display:flex;gap:1px;background:rgba(255,255,255,.1);backdrop-filter:blur(6px)}.hero-stats div{min-width:135px;padding:14px 18px;background:rgba(7,10,25,.72)}.hero-stats strong,.hero-stats span{display:block}.hero-stats strong{font:400 22px Georgia,serif}.hero-stats span{color:#858ba2;font-size:8px;letter-spacing:.05em}.digest-nav{position:relative;z-index:3;margin-top:-1px;background:#fff;border-bottom:1px solid #e8e2d9;box-shadow:0 10px 30px rgba(26,21,28,.05)}.digest-nav>div{width:min(1080px,calc(100% - 40px));height:80px;margin:auto;display:grid;grid-template-columns:repeat(5,1fr)}.digest-nav a{display:flex;align-items:center;justify-content:center;gap:10px;border-right:1px solid #eee9e1;color:#464754;font-size:11px;font-weight:700}.digest-nav a:first-child{border-left:1px solid #eee9e1}.digest-nav a span{color:var(--pink);font-size:18px}.digest-section,.listing-shell,.search-results{width:min(1240px,calc(100% - 48px));margin:0 auto;padding:78px 0 8px}.digest-section+ .digest-section{border-top:1px solid #e1dbd2}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:28px}.section-heading span,.section-title>span{display:block;margin-bottom:6px;color:var(--pink);font:700 9px/1 Georgia,serif;letter-spacing:.2em}.section-heading h2{margin:0 0 6px;font:500 28px/1.3 Georgia,"Yu Mincho",serif;letter-spacing:.05em}.section-heading p{margin:0;color:#7b7b83;font-size:11px}.section-heading>a{padding-bottom:4px;border-bottom:1px solid #beb6aa;font-size:10px;font-weight:700}.section-heading>a b{margin-left:8px;color:var(--pink)}.digest-grid{display:grid;gap:20px}.digest-grid-article,.digest-grid-hotel,.digest-grid-spot{grid-template-columns:repeat(3,minmax(0,1fr))}.digest-grid-store,.digest-grid-girl{grid-template-columns:repeat(4,minmax(0,1fr))}.digest-card{min-width:0;overflow:hidden;background:var(--paper);border:1px solid #e8e0d5;border-radius:5px;box-shadow:0 8px 24px rgba(34,26,33,.04);transition:.25s}.digest-card:hover{transform:translateY(-5px);box-shadow:0 18px 40px rgba(34,26,33,.1)}.card-image{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background-color:#1b1c31;background-position:center;background-size:cover}.digest-store .card-image,.digest-girl .card-image{aspect-ratio:4/3}.card-image:before{content:"";position:absolute;inset:0;background:linear-gradient(145deg,rgba(38,29,58,.18),rgba(6,8,18,.62)),radial-gradient(circle at 70% 35%,rgba(215,25,104,.45),transparent 27%),linear-gradient(120deg,#252843,#0a0d20)}.digest-hotel .card-image:before{background:linear-gradient(145deg,rgba(22,32,55,.16),rgba(6,8,18,.58)),radial-gradient(circle at 66% 30%,rgba(212,171,96,.38),transparent 26%),linear-gradient(120deg,#233047,#0d1021)}.digest-spot .card-image:before{background:linear-gradient(145deg,rgba(22,18,44,.14),rgba(6,8,18,.58)),radial-gradient(circle at 35% 43%,rgba(67,90,190,.4),transparent 29%),linear-gradient(120deg,#251c3f,#0b1022)}.card-kicker{position:absolute;left:12px;top:11px;padding:4px 7px;border-radius:2px;background:rgba(7,10,25,.8);color:#fff;font:700 7px Georgia,serif;letter-spacing:.15em}.score-orb{position:absolute;right:10px;bottom:10px;width:66px;height:66px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:2px solid rgba(255,255,255,.78);border-radius:50%;background:rgba(183,16,86,.82);color:#fff;font:700 17px Georgia,serif;text-align:center;backdrop-filter:blur(5px)}.score-orb small{font:600 6px var(--font);line-height:1.2}.hotel-orb{background:rgba(21,150,109,.85)}.card-body{padding:16px 17px 15px}.card-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:7px;color:#929087;font-size:8px}.card-meta>span{color:var(--pink);font-weight:800}.card-meta em{padding:2px 5px;border-radius:2px;background:#f3e6ec;color:#a33362;font-style:normal}.card-body h3{margin:0 0 7px;font:600 16px/1.55 Georgia,"Yu Mincho",serif}.card-body h3 a:hover{color:var(--pink)}.card-body>p{min-height:38px;margin:0 0 10px;color:#74747d;font-size:10px;line-height:1.8}.card-more{display:flex;align-items:center;justify-content:space-between;padding-top:11px;border-top:1px solid #eee8de;color:#5a5961;font-size:9px;font-weight:700}.card-more span{color:var(--pink);font-size:13px}.rating-row{display:flex;gap:7px;margin:8px 0 12px;color:#817f83;font-size:8px}.rating-row b{color:#302f39}.public-empty{padding:60px 20px;border:1px dashed #d8d0c5;border-radius:6px;background:rgba(255,255,255,.45);color:#85827d;text-align:center}.join-cta{width:min(1240px,calc(100% - 48px));margin:78px auto;background:radial-gradient(circle at 85% 10%,rgba(215,25,104,.35),transparent 30%),linear-gradient(135deg,#0c1027,#171c3e);color:#fff}.join-cta>div{max-width:820px;padding:58px 65px}.join-cta span{color:var(--gold);font:700 9px Georgia,serif;letter-spacing:.2em}.join-cta h2{margin:10px 0 12px;font:500 29px Georgia,"Yu Mincho",serif}.join-cta p{color:#afb2c3;font-size:12px}.join-cta>div>div{display:flex;gap:10px;margin-top:25px}.cta-primary,.cta-secondary{padding:12px 20px;border-radius:3px;font-size:10px;font-weight:800}.cta-primary{background:var(--pink)}.cta-secondary{border:1px solid rgba(255,255,255,.3)}
/* Public inner pages */
.page-hero{min-height:300px;display:flex;align-items:center;color:#fff;background:radial-gradient(circle at 77% 28%,rgba(215,25,104,.26),transparent 23%),linear-gradient(135deg,#080b1d,#151b3a)}.page-hero.compact{min-height:330px}.page-hero>div{width:min(1240px,calc(100% - 48px));margin:auto}.page-hero>div>span{color:var(--gold);font:700 9px Georgia,serif;letter-spacing:.22em}.page-hero h1{margin:8px 0 10px;font:500 39px Georgia,"Yu Mincho",serif}.page-hero p{max-width:700px;margin:0;color:#b7bac9;font-size:12px}.listing-shell{padding-top:45px;padding-bottom:80px}.listing-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.listing-toolbar strong{font-size:12px}.listing-toolbar form{display:flex}.listing-toolbar input{width:240px;padding:8px 10px;border:1px solid #dcd6cd;border-radius:4px 0 0 4px;background:#fff}.listing-toolbar button{padding:0 15px;border:0;border-radius:0 4px 4px 0;background:var(--navy);color:#fff}.search-results{min-height:460px;padding-top:45px;padding-bottom:80px}.result-count{color:#78777f;font-size:11px}.result-list{background:#fff;border:1px solid #e5ded4}.result-list article{display:grid;grid-template-columns:90px 1fr 40px;align-items:center;gap:15px;padding:20px;border-bottom:1px solid #eee8df}.result-list article:last-child{border-bottom:0}.result-list article>span{color:var(--pink);font-size:9px;font-weight:800}.result-list h2{margin:0 0 4px;font:600 17px Georgia,"Yu Mincho",serif}.result-list p{margin:0;color:#7c7b82;font-size:10px}.result-list article>a{color:var(--pink);font-size:20px}.member-shell{min-height:calc(100vh - 76px);display:grid;grid-template-columns:1.05fr .95fr}.member-visual{display:grid;place-items:center;padding:60px;color:#fff;background:radial-gradient(circle at 73% 25%,rgba(215,25,104,.4),transparent 28%),linear-gradient(145deg,#090c20,#1b2042)}.member-visual>div{max-width:520px}.member-visual span{color:var(--gold);font:700 9px Georgia,serif;letter-spacing:.2em}.member-visual h1{margin:13px 0 16px;font:500 38px/1.45 Georgia,"Yu Mincho",serif}.member-visual p,.member-visual li{color:#b8bbca;font-size:12px}.member-visual ul{padding-left:20px}.member-form-wrap{display:grid;place-items:center;padding:50px;background:#fff}.member-form{width:min(420px,100%)}.member-form h2{margin-bottom:6px;font:600 28px Georgia,"Yu Mincho",serif}.member-form>p{color:#82838c;font-size:11px}.auth-switch{text-align:center}.auth-switch a{color:var(--pink);font-weight:800}.article-page{padding:80px 0}.article-header{width:min(900px,calc(100% - 48px));margin:auto;text-align:center}.breadcrumbs{display:flex;align-items:center;gap:8px;color:#9b99a0;font-size:8px}.article-header .breadcrumbs{justify-content:center}.detail-kicker{display:block;margin:27px 0 10px;color:var(--pink);font:700 9px Georgia,serif;letter-spacing:.2em}.article-header h1{margin:0;font:600 clamp(30px,4vw,48px)/1.5 Georgia,"Yu Mincho",serif}.article-header>p{max-width:720px;margin:18px auto;color:#777780;font-size:13px}.article-byline{display:flex;justify-content:center;gap:18px;color:#9b9892;font-size:8px;letter-spacing:.08em}.article-cover{width:min(1120px,calc(100% - 48px));max-height:600px;margin:45px auto;overflow:hidden}.article-cover img{width:100%;height:100%;object-fit:cover}.article-layout{width:min(1080px,calc(100% - 48px));margin:auto;display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:70px}.prose{font-size:15px;line-height:2.2}.prose h2{margin:2.5em 0 .8em;padding-bottom:.45em;border-bottom:2px solid var(--navy);font:600 25px/1.5 Georgia,"Yu Mincho",serif}.prose h3{margin:2em 0 .7em;font:600 20px Georgia,"Yu Mincho",serif}.prose p{margin:0 0 1.5em}.prose a{color:var(--pink);text-decoration:underline}.compact-prose{font-size:13px}.detail-side-card,.score-explain,.side-summary,.report-box{padding:24px;background:#fff;border:1px solid #e6ded3}.detail-side-card>span,.score-explain>span,.side-summary>span{display:block;margin-bottom:10px;color:var(--pink);font:700 8px Georgia,serif;letter-spacing:.18em}.detail-side-card strong{font:600 17px/1.7 Georgia,"Yu Mincho",serif}.detail-side-card p,.score-explain p{margin:12px 0;color:#797880;font-size:10px}.detail-side-card a,.source-link{color:var(--pink);font-size:10px;font-weight:800}.report-box{margin-top:16px;padding:15px}.report-box summary{cursor:pointer;color:#777781;font-size:10px;font-weight:800}.report-box[open] summary{margin-bottom:14px}.detail-hero{min-height:440px;display:grid;grid-template-columns:minmax(280px,42%) minmax(360px,1fr) 245px;align-items:stretch;color:#fff;background:var(--navy)}.detail-hero-image{min-height:440px;background-position:center;background-size:cover;position:relative}.detail-hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(7,11,28,.45))}.detail-hero-image:not([style]){background:radial-gradient(circle at 60% 35%,rgba(215,25,104,.55),transparent 25%),linear-gradient(135deg,#292445,#090c1c)}.detail-hero-content{display:flex;flex-direction:column;justify-content:center;padding:50px}.detail-hero-content .detail-kicker{margin:35px 0 8px;color:var(--gold)}.detail-hero-content h1{margin:0 0 12px;font:600 38px/1.4 Georgia,"Yu Mincho",serif}.detail-hero-content>p{color:#c5c7d3;font-size:13px}.detail-location{color:#8f94a9;font-size:10px}.detail-score-panel{display:flex;flex-direction:column;justify-content:center;border-left:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.025)}.detail-score-panel>div{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:190px;padding:24px;text-align:center}.detail-score-panel>div+div{border-top:1px solid rgba(255,255,255,.1)}.detail-score-panel strong{font:500 43px Georgia,serif}.detail-score-panel span{margin:5px 0;color:#bec1ce;font-size:9px}.detail-score-panel small{color:#777d96;font-size:8px}.detail-score-panel .success-score strong{color:#59d1aa}.detail-shell{width:min(1180px,calc(100% - 48px));margin:60px auto 80px;display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:40px}.detail-main{display:grid;gap:30px}.detail-section{padding:35px 38px;background:var(--paper);border:1px solid #e7dfd4}.section-title{margin-bottom:25px}.section-title h2{margin:0 0 7px;font:600 24px Georgia,"Yu Mincho",serif}.section-title p{margin:0;color:#7c7b82;font-size:11px}.info-table>div{display:grid;grid-template-columns:135px minmax(0,1fr);padding:13px 0;border-bottom:1px solid #ece6dd}.info-table span{color:#96938d;font-size:10px}.info-table p{margin:0;font-size:12px}.external-links{display:flex;gap:8px;margin-top:25px}.external-links a{padding:10px 15px;border:1px solid #cfc8bf;font-size:10px;font-weight:800}.external-links .accent{color:#fff;border-color:var(--pink);background:var(--pink)}.girls-mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.girls-mini-grid>a{display:flex;align-items:center;gap:11px;padding:10px;border:1px solid #e8e1d7;background:#fff}.mini-photo{width:64px;height:78px;flex:0 0 auto;background:radial-gradient(circle at 50% 30%,#db6c9e,transparent 22%),linear-gradient(135deg,#2a2746,#111426);background-position:center;background-size:cover}.girls-mini-grid strong,.girls-mini-grid small,.girls-mini-grid b,.girls-mini-grid em{display:block}.girls-mini-grid strong{font:600 13px Georgia,"Yu Mincho",serif}.girls-mini-grid small{color:#8a8990;font-size:8px}.girls-mini-grid b{margin-top:5px;color:var(--pink);font:700 13px Georgia,serif}.girls-mini-grid em{color:#8b8990;font:400 7px var(--font)}.comment-list{display:grid;gap:10px;margin-bottom:22px}.comment-list article{padding:17px;border:1px solid #e8e2d9;background:#fff}.comment-list strong,.comment-list time{font-size:9px}.comment-list time{margin-left:10px;color:#aaa}.comment-list p{margin:8px 0 0;font-size:11px}.vote-form{display:grid;gap:15px;padding:23px;border:1px solid #e3dcd1;background:#faf7f2}.vote-form h3{margin:0;font:600 17px Georgia,"Yu Mincho",serif}.vote-form label{display:grid;gap:6px;color:#5e5e69;font-size:10px;font-weight:750}.vote-form select,.vote-form textarea,.vote-form input{width:100%;padding:9px;border:1px solid #dcd5cb;background:#fff}.login-prompt{display:flex;align-items:center;gap:9px;padding:20px;background:#f4eee7}.login-prompt p{flex:1;margin:0;font-size:11px}.login-prompt a{padding:8px 12px;border:1px solid var(--pink);color:var(--pink);font-size:9px;font-weight:800}.detail-aside>*{position:sticky;top:20px}.detail-aside .report-box{position:static}.side-summary h3,.score-explain h3{font:600 18px Georgia,"Yu Mincho",serif}.side-summary dl{margin:18px 0 0}.side-summary dl>div{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid #eee7de;font-size:10px}.side-summary dd{margin:0;font-weight:800}.profile-hero{min-height:560px;display:grid;grid-template-columns:minmax(330px,42%) minmax(0,1fr);color:#fff;background:var(--navy)}.profile-photo{position:relative;min-height:560px;background-position:center top;background-size:cover}.profile-photo:not([style]){background:radial-gradient(circle at 50% 26%,rgba(234,88,153,.55),transparent 18%),linear-gradient(145deg,#292641,#0c0f20)}.profile-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 55%,var(--navy))}.profile-photo>span{position:absolute;z-index:2;left:28px;bottom:25px;padding:5px 8px;background:var(--pink);font:700 8px Georgia,serif;letter-spacing:.18em}.profile-copy{display:flex;flex-direction:column;justify-content:center;padding:55px 8vw 55px 60px}.profile-copy .detail-kicker{margin:35px 0 7px;color:var(--gold)}.profile-copy h1{margin:0;font:600 45px Georgia,"Yu Mincho",serif}.profile-copy h1 small{margin-left:14px;color:#858ba1;font:400 13px var(--font)}.profile-store{margin:16px 0 25px}.profile-store span{margin-right:10px;color:#7d8398;font-size:9px}.profile-store a{color:#fff;font-size:11px;border-bottom:1px solid var(--pink)}.profile-scores{display:grid;grid-template-columns:repeat(3,1fr);max-width:560px;border:1px solid rgba(255,255,255,.12)}.profile-scores div{padding:18px;text-align:center}.profile-scores div+div{border-left:1px solid rgba(255,255,255,.12)}.profile-scores strong,.profile-scores span{display:block}.profile-scores strong{font:500 33px Georgia,serif}.profile-scores span{color:#8e94a8;font-size:8px}.profile-scores .accent strong{color:#f05294}.vote-count{margin-top:9px;color:#70768d;font-size:8px}.panel-vote{padding:25px}.choice-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.choice-cards label{display:block}.choice-cards input{position:absolute;opacity:0;width:1px}.choice-cards span{display:block;padding:14px 8px;border:1px solid #ded8cf;background:#fff;text-align:center;cursor:pointer}.choice-cards b,.choice-cards small{display:block}.choice-cards b{font-size:12px}.choice-cards small{color:#92918f;font-size:8px}.choice-cards input:checked+span{border-color:var(--pink);background:#fff0f6;box-shadow:inset 0 0 0 1px var(--pink);color:#a20f4c}.tag-checks{display:flex;flex-wrap:wrap;gap:6px}.tag-checks label{display:block}.tag-checks input{position:absolute;opacity:0;width:1px}.tag-checks span{display:block;padding:7px 10px;border:1px solid #ddd7ce;border-radius:99px;background:#fff;cursor:pointer}.tag-checks input:checked+span{color:#fff;border-color:var(--pink);background:var(--pink)}.hotel-facts{display:grid;grid-template-columns:repeat(5,1fr);margin-bottom:25px;border:1px solid #e6dfd5}.hotel-facts div{padding:14px 8px;text-align:center}.hotel-facts div+div{border-left:1px solid #e6dfd5}.hotel-facts span,.hotel-facts strong{display:block}.hotel-facts span{color:#8b8987;font-size:8px}.hotel-facts strong{margin-top:5px;font-size:10px}.fact-yes{color:var(--green)}.fact-no{color:var(--red)}.fact-conditional{color:#a77923}.area-hero{min-height:490px;display:flex;align-items:center;color:#fff;background:radial-gradient(circle at 70% 38%,rgba(215,25,104,.4),transparent 22%),linear-gradient(135deg,#080b1e,#252042);background-position:center;background-size:cover}.area-hero>div{width:min(1180px,calc(100% - 48px));margin:auto}.area-hero .detail-kicker{margin:45px 0 10px;color:var(--gold)}.area-hero h1{margin:0 0 8px;font:600 52px Georgia,"Yu Mincho",serif}.area-hero>div>p{color:#b7bac9}.area-ratings{display:flex;width:max-content;margin-top:28px;border:1px solid rgba(255,255,255,.16)}.area-ratings div{min-width:115px;padding:14px;text-align:center}.area-ratings div+div{border-left:1px solid rgba(255,255,255,.16)}.area-ratings span,.area-ratings strong{display:block}.area-ratings span{color:#979caf;font-size:8px}.area-ratings strong{font:500 26px Georgia,serif}.area-ratings small{font-size:10px}.safety-note{border-left:3px solid var(--gold)}.safety-note h2{font:600 18px Georgia,"Yu Mincho",serif}.safety-note p{margin:0;color:#71717a;font-size:11px}.site-footer{margin-top:80px;color:#a8abba;background:#080b1b}.footer-inner{width:min(1240px,calc(100% - 48px));margin:auto;padding:55px 0 42px;display:grid;grid-template-columns:2fr repeat(3,1fr);gap:60px}.footer-brand p{max-width:340px;margin-top:36px;color:#747a91;font-size:10px}.footer-inner>div:not(.footer-brand) strong,.footer-inner>div:not(.footer-brand) a{display:block}.footer-inner>div:not(.footer-brand) strong{margin-bottom:15px;color:#fff;font:700 9px Georgia,serif;letter-spacing:.17em}.footer-inner>div:not(.footer-brand) a{margin:7px 0;color:#858a9e;font-size:9px}.footer-inner>div:not(.footer-brand) a:hover{color:#fff}.footer-bottom{width:min(1240px,calc(100% - 48px));margin:auto;padding:17px 0;border-top:1px solid rgba(255,255,255,.08);display:flex;justify-content:space-between;color:#555c73;font-size:8px}
@media(max-width:1180px){.stat-grid{grid-template-columns:repeat(3,1fr)}.site-nav{gap:14px}.site-nav a{font-size:9px}.header-actions{display:none}.digest-grid-store,.digest-grid-girl{grid-template-columns:repeat(2,1fr)}.detail-hero{grid-template-columns:36% 1fr 210px}.detail-hero-content{padding:36px}.girls-mini-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.admin-sidebar{transform:translateX(-100%);transition:.25s}.admin-sidebar.is-open{transform:translateX(0)}.admin-main{width:100%;margin-left:0}.sidebar-toggle{display:block}.admin-content{padding:20px}.admin-grid-main,.api-grid,.editor-grid,.settings-grid{grid-template-columns:1fr}.sticky-panel{position:static}.site-header-inner{width:calc(100% - 30px)}.public-menu-toggle{display:block}.site-nav{display:none;position:absolute;z-index:40;top:76px;left:0;right:0;height:auto;padding:12px 20px;flex-direction:column;align-items:stretch;gap:0;background:#0c1026}.site-nav.is-open{display:flex}.site-nav a{height:auto;padding:10px}.hero-copy{width:85%}.hero-stats{display:none}.digest-nav>div{overflow:auto}.digest-nav a{min-width:150px}.digest-grid-article,.digest-grid-hotel,.digest-grid-spot{grid-template-columns:repeat(2,1fr)}.member-shell{grid-template-columns:1fr}.member-visual{min-height:430px}.article-layout,.detail-shell{grid-template-columns:1fr}.article-layout{gap:35px}.detail-hero{grid-template-columns:40% 60%}.detail-score-panel{grid-column:1/-1;flex-direction:row}.detail-score-panel>div{width:50%;min-height:130px}.detail-score-panel>div+div{border-top:0;border-left:1px solid rgba(255,255,255,.1)}.detail-aside>*{position:static}.profile-copy{padding:40px}.hotel-facts{grid-template-columns:repeat(3,1fr)}.footer-inner{grid-template-columns:2fr 1fr 1fr}.footer-inner>div:last-child{display:none}}
@media(max-width:620px){.admin-topbar{padding:0 15px}.admin-topbar .button{display:none}.admin-content{padding:16px 12px}.page-actions{align-items:flex-start;flex-direction:column}.page-actions .button{width:100%}.stat-grid{grid-template-columns:repeat(2,1fr);gap:8px}.stat-card{min-height:76px;padding:11px}.form-row,.form-row.three{grid-template-columns:1fr}.api-secret{grid-template-columns:1fr}.site-header{height:66px}.site-logo{font-size:15px}.site-logo b,.site-logo i{font-size:18px}.site-logo small{top:23px}.site-nav{top:66px}.hero,.hero-inner{min-height:600px}.hero-inner{width:calc(100% - 30px);align-items:flex-start}.hero-copy{width:100%;padding-top:85px}.hero h1{font-size:36px}.hero-search{height:54px}.hero-search button{min-width:68px}.skyline{width:100%;height:50%;opacity:.35}.digest-nav>div{width:100%}.digest-section,.listing-shell,.search-results,.join-cta{width:calc(100% - 30px)}.digest-section{padding-top:58px}.section-heading{align-items:flex-start;gap:15px}.section-heading h2{font-size:23px}.section-heading>a{white-space:nowrap}.digest-grid-article,.digest-grid-hotel,.digest-grid-spot,.digest-grid-store,.digest-grid-girl{grid-template-columns:1fr}.join-cta>div{padding:40px 24px}.join-cta h2{font-size:24px}.page-hero>div{width:calc(100% - 30px)}.listing-toolbar{align-items:flex-start;flex-direction:column;gap:12px}.listing-toolbar form,.listing-toolbar input{width:100%}.result-list article{grid-template-columns:1fr 25px}.result-list article>span{grid-column:1/-1}.member-visual{padding:40px 25px}.member-visual h1{font-size:30px}.member-form-wrap{padding:45px 25px}.article-page{padding:55px 0}.article-header,.article-cover,.article-layout{width:calc(100% - 30px)}.article-header h1{font-size:29px}.detail-hero{grid-template-columns:1fr}.detail-hero-image{min-height:330px}.detail-hero-content{padding:35px 24px}.detail-score-panel{grid-column:auto}.detail-shell{width:calc(100% - 30px);margin-top:35px}.detail-section{padding:26px 20px}.info-table>div{grid-template-columns:1fr;gap:4px}.girls-mini-grid{grid-template-columns:1fr}.profile-hero{grid-template-columns:1fr}.profile-photo{min-height:430px}.profile-photo:after{background:linear-gradient(0deg,var(--navy),transparent 50%)}.profile-copy{padding:35px 22px}.profile-copy h1{font-size:36px}.profile-scores{grid-template-columns:1fr}.profile-scores div+div{border-left:0;border-top:1px solid rgba(255,255,255,.12)}.choice-cards{grid-template-columns:1fr}.hotel-facts{grid-template-columns:repeat(2,1fr)}.area-hero h1{font-size:39px}.area-ratings{width:100%}.area-ratings div{min-width:0;flex:1;padding:10px}.footer-inner{grid-template-columns:1fr 1fr;gap:35px}.footer-brand{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:4px}.site-footer{margin-top:50px}}
.review-axis-grid{display:flex;flex-wrap:wrap;gap:.45rem;margin:.65rem 0}.review-axis-grid span{display:inline-flex;align-items:center;padding:.3rem .55rem;border:1px solid #d9dfe9;border-radius:999px;background:#f7f9fc;color:#15213a;font-size:.82rem;font-weight:700}
.card-access-stats{display:block;margin:12px 0 2px;color:#596174;font-size:11px;line-height:1.6;font-variant-numeric:tabular-nums}.card-access-stats span{display:inline;color:#d71968;font-size:13px}.card-access-stats+.card-more{margin-top:10px}
.analytics-settings,.analytics-detail{margin-bottom:20px}.analytics-settings-form,.analytics-filters{display:flex;align-items:end;gap:18px;flex-wrap:wrap;padding:18px}.analytics-settings-form label,.analytics-filters label{display:grid;gap:6px;color:#525668;font-size:12px}.analytics-settings-form .check-row{display:flex;align-items:center;gap:7px}.analytics-settings-form input[type=number]{width:100px}.analytics-search{display:flex;gap:8px}.analytics-search input{min-width:250px;padding:8px 10px;border:1px solid #dfe2ea;border-radius:7px}.analytics-table td:first-child{min-width:280px}.analytics-table td:first-child small{margin-top:3px;color:#8d91a1}.analytics-detail>.panel-head{position:sticky;top:78px;z-index:4;background:#fff}.analytics-sample{padding:0 18px;color:#777d8f;font-size:12px}.heatmap-viewport{position:relative;width:min(100%,1200px);margin:0 auto 24px;overflow:hidden;border:1px solid #dfe2e8;background:#fff;box-shadow:0 12px 35px rgba(15,21,45,.1)}.heatmap-viewport.heatmap-mobile{width:390px;max-width:100%}.heatmap-viewport iframe,.heatmap-viewport canvas{position:absolute;inset:0;width:100%;border:0}.heatmap-viewport iframe{z-index:1;pointer-events:none;background:#fff}.heatmap-viewport canvas{z-index:2;pointer-events:none;mix-blend-mode:multiply}.analytics-detail .empty-state{margin:0 18px 20px;padding:40px;text-align:center;background:#f7f8fb;border:1px dashed #d7dae3}.analytics-detail .empty-state h3{margin:0 0 6px}.analytics-detail .empty-state p{margin:0;color:#7e8293}@media(max-width:700px){.analytics-settings-form,.analytics-filters{display:grid;grid-template-columns:1fr}.analytics-search{width:100%}.analytics-search input{width:100%;min-width:0}.analytics-table td:first-child{min-width:220px}}

/* source: v02.css */
.filter-tabs,.directory-type-tabs,.kana-index{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:18px}
.filter-tabs a,.directory-type-tabs a,.kana-index a{padding:8px 13px;border:1px solid #dddfe7;border-radius:7px;background:#fff;color:#666a7b;font-size:11px;font-weight:750}
.filter-tabs a.is-active,.directory-type-tabs a.is-active,.kana-index a.is-active{border-color:var(--pink);background:var(--pink);color:#fff}
.table-actions{display:flex;align-items:center;gap:6px}.table-actions form{margin:0}.status-badge{display:inline-flex;padding:3px 8px;border-radius:99px;background:#eef0f5;color:#65697c;font-size:9px;font-weight:800}.status-badge.status-approved{background:#e9f7f2;color:#137456}
.directory-hero{padding:68px 0 55px;color:#fff;background:radial-gradient(circle at 78% 20%,rgba(215,25,104,.3),transparent 27%),linear-gradient(135deg,#080b1e,#171d3e)}
.section-wrap{width:min(1240px,calc(100% - 48px));margin:auto}.directory-hero h1{margin:8px 0 10px;font:500 40px Georgia,"Yu Mincho",serif}.directory-hero p{margin:0;color:#b8bbca;font-size:12px}
.directory-shell{padding-top:35px;padding-bottom:75px}.directory-filters{padding:24px;border:1px solid #e3dcd2;background:#fff}.directory-filter-row{display:grid;grid-template-columns:260px minmax(240px,1fr) auto;align-items:end;gap:12px;margin:6px 0 18px}.directory-filter-row label{display:grid;gap:5px;color:#696873;font-size:10px;font-weight:750}.directory-filter-row input,.directory-filter-row select{width:100%;height:42px;padding:8px 10px;border:1px solid #ddd6cc;background:#fff}.kana-index{margin-bottom:0}.kana-index a{min-width:48px;text-align:center}
.directory-summary{display:flex;align-items:center;gap:12px;padding:23px 4px 12px}.directory-summary strong{font-size:20px}.directory-summary span{color:#85838a;font-size:10px}.directory-list{border:1px solid #e4ddd3;background:#fff}.directory-item{display:grid;grid-template-columns:100px minmax(0,1fr) 32px;align-items:center;gap:16px;padding:20px 22px;border-bottom:1px solid #eee8df}.directory-item:last-child{border-bottom:0}.directory-item:hover{background:#fff8fb}.directory-kind{color:var(--pink);font-size:9px;font-weight:800}.directory-item h2{margin:0 0 3px;font:600 17px Georgia,"Yu Mincho",serif}.directory-item p{margin:0;color:#85838a;font-size:10px}.directory-arrow{color:var(--pink);font-size:19px}
@media(max-width:700px){.directory-filter-row{grid-template-columns:1fr}.directory-item{grid-template-columns:1fr 24px}.directory-kind{grid-column:1/-1}.section-wrap{width:calc(100% - 30px)}}

/* source: article-content.css */
/* Otonavi article decoration library — scoped to article bodies. */
.prose .box1,.prose .box2,.prose .box7,.prose .box8,.prose .box11,.prose .box17,.prose .box26,.prose .box27,.prose .box28,.prose .box29,.prose .box99,.prose .loose-leaf,.prose .blackboard-box,.prose .kokuban,.prose .normal-box3,.prose .normal-box4,.prose .sample-box-13,.prose .graybox,.prose .freebox,.prose .st-blackboard{box-sizing:border-box;margin:2em 0}
.prose .box1{padding:1em 1.15em;border:3px solid #20222c;font-weight:700}
.prose .box2{padding:1em 1.15em;border:3px solid #6091d3;border-radius:10px;background:#fff;color:#416fae;font-weight:700}
.prose .box7{padding:1em 1.15em;border-left:7px double #4ec4d3;border-right:7px double #4ec4d3;background:#f5f5f5;color:#474747}
.prose .box8{padding:1em 1.15em;border-left:10px solid #ffc06e;background:#fff8e8;color:#333}
.prose .box11{padding:1em 1.15em;border-top:5px solid #5d627b;background:#fff;color:#5d627b;box-shadow:0 3px 8px rgba(0,0,0,.2)}
.prose .box17{position:relative;padding:1em 1.5em;border-top:2px solid #20222c;border-bottom:2px solid #20222c}
.prose .box17::before,.prose .box17::after{content:"";position:absolute;top:-10px;width:2px;height:calc(100% + 20px);background:#20222c}.prose .box17::before{left:10px}.prose .box17::after{right:10px}
.prose .box26,.prose .box27{position:relative;padding:1.15em;border:3px solid #62c1ce}.prose .box26{border-color:#95ccff;border-radius:8px}.prose .box26 .box-title,.prose .box27 .box-title{position:absolute;display:inline-block;left:10px;padding:0 9px;background:#fff;color:#4da8c4;font-size:17px;font-weight:800;line-height:1.2}.prose .box26 .box-title{top:-12px;color:#69aeea}.prose .box27{margin-top:3em}.prose .box27 .box-title{top:-29px;left:-3px;height:27px;padding:2px 10px;border-radius:5px 5px 0 0;background:#62c1ce;color:#fff}
.prose .box28,.prose .box99{position:relative;padding:2.25em 1em 1em;border:2px solid #ffc107}.prose .box99{border-color:#1bb4d3}.prose .box28 .box-title,.prose .box99 .box-title{position:absolute;top:-2px;left:-2px;display:inline-block;min-height:28px;padding:2px 10px;background:#ffc107;color:#fff;font-size:16px;font-weight:800}.prose .box99 .box-title{background:#1bb4d3}
.prose .box29{overflow:hidden;background:#dcefff}.prose .box29 .box-title{padding:7px 12px;background:#5fb3f5;color:#fff;text-align:center;font-size:1.1em;font-weight:800;letter-spacing:.05em}.prose .box29>:not(.box-title){margin-left:20px;margin-right:20px}.prose .box29>:last-child{margin-bottom:18px}
.prose .loose-leaf{padding:1.15em;border-left:5px dotted rgba(0,0,0,.12);background:#f8f0d7;box-shadow:0 0 0 5px #f8f0d7}
.prose .blackboard-box,.prose .kokuban{padding:1.2em;border:8px solid #a60;border-radius:3px;background:#104300;color:#fff;box-shadow:2px 2px 4px #999,2px 2px 2px #020 inset;text-shadow:0 0 2px #fff}.prose .blackboard-box a,.prose .kokuban a{color:#fff6a8}
.prose .normal-box3,.prose .normal-box4{padding:1.15em;background:#f5f5f5;box-shadow:0 3px 6px rgba(0,0,0,.25)}.prose .normal-box4{background:#f8ffe3}
.prose .sample-box-13{position:relative;padding:2em;border:2px solid #da4033;border-radius:4px}.prose .sample-box-13::before{content:"まとめ";position:absolute;top:-1em;left:1em;padding:0 .55em;background:#fff;color:#da4033;font-weight:800}
.prose .graybox{padding:1.25em;border:1px solid #ccc;background:#fafafa}.prose .graybox.noborder{border:0}
.prose .freebox{position:relative;padding:3em 1.1em 1em;border-top:1px solid #feb20a;background:#f3f3f3}.prose .freebox .p-entry-f{position:absolute;top:0;left:0;max-width:80%;margin:0;padding:5px 18px;background:#feb20a;color:#fff;font-size:15px;font-weight:800}.prose .freebox.freebox-intitle{padding-top:3.5em}.prose .freebox.freebox-intitle .p-entry-f{right:0;max-width:none;text-align:center}.prose .free-inbox{padding:0 .25em}
.prose .st-blackboard{padding:1em 1.25em;border:3px solid #f0f0f0;background:#fff}.prose .st-blackboard-title-box{text-align:center}.prose .st-blackboard-title{display:inline-block;padding:5px 10px;border-bottom:2px solid #424242;font-weight:800}.prose .st-blackboard-list{padding-left:1.7em}.prose ul.st-blackboard-list{padding-left:0;list-style:none}.prose ul.st-blackboard-list li{position:relative;padding:.65em 0 .65em 1.75em;border-bottom:1px dotted #ccc}.prose ul.st-blackboard-list li::before{content:"✓";position:absolute;left:.2em;color:#e23232;font-weight:900}
.prose .box1>:first-child,.prose .box2>:first-child,.prose .box7>:first-child,.prose .box8>:first-child,.prose .box11>:first-child,.prose .box17>:first-child,.prose .box26>:first-child:not(.box-title),.prose .box27>:first-child:not(.box-title),.prose .box28>:first-child:not(.box-title),.prose .box99>:first-child:not(.box-title),.prose .loose-leaf>:first-child,.prose .blackboard-box>:first-child,.prose .kokuban>:first-child,.prose .normal-box3>:first-child,.prose .normal-box4>:first-child,.prose .sample-box-13>:first-child,.prose .graybox>:first-child,.prose .free-inbox>:first-child{margin-top:0}
.prose .box1>:last-child,.prose .box2>:last-child,.prose .box7>:last-child,.prose .box8>:last-child,.prose .box11>:last-child,.prose .box17>:last-child,.prose .box26>:last-child,.prose .box27>:last-child,.prose .box28>:last-child,.prose .box99>:last-child,.prose .loose-leaf>:last-child,.prose .blackboard-box>:last-child,.prose .kokuban>:last-child,.prose .normal-box3>:last-child,.prose .normal-box4>:last-child,.prose .sample-box-13>:last-child,.prose .graybox>:last-child,.prose .free-inbox>:last-child{margin-bottom:0}

.prose .pink_line,.prose .blue_line,.prose .yellow_line,.prose .pink_line_narrow,.prose .blue_line_narrow,.prose .yellow_line_narrow{padding:0 .08em;background-repeat:repeat-x;background-position:0 100%}.prose .pink_line{background-image:linear-gradient(transparent 60%,#ffdfef 0)}.prose .blue_line{background-image:linear-gradient(transparent 60%,#cce5ff 0)}.prose .yellow_line{background-image:linear-gradient(transparent 60%,#ffffbc 0)}.prose .pink_line_narrow{background-image:linear-gradient(transparent 80%,#ffb2d8 0)}.prose .blue_line_narrow{background-image:linear-gradient(transparent 80%,#add6ff 0)}.prose .yellow_line_narrow{background-image:linear-gradient(transparent 80%,#ffff7f 0)}
.prose .red-bold{color:#d90000;font-weight:800}
.prose .point{padding:.08em .25em;border:2px solid #ffb1b3;color:#d44855;font-weight:800}.prose .sankou{display:inline-block;margin:0 .35em;padding:1px 6px;border-radius:3px;background:#f57c00;color:#fff;font-size:.72em;font-weight:800;white-space:nowrap}

.prose .balloon5{display:flex;align-items:flex-start;gap:18px;width:100%;margin:1.5em 0}.prose .balloon5 .faceicon{width:80px;flex:0 0 80px}.prose .balloon5 .faceicon img{width:80px;height:80px;border:3px solid #d7ebfe;border-radius:50%;object-fit:cover}.prose .balloon5 .chatting{min-width:0;flex:1}.prose .says{position:relative;display:block;padding:17px 15px;border-radius:12px;background:#d7ebfe}.prose .says::after{content:"";position:absolute;top:20px;left:-20px;border:10px solid transparent;border-right-color:#d7ebfe}
.prose .qa-box{margin:1.2em 0}.prose .qa-box summary{position:relative;margin-bottom:10px;padding:12px 16px;border:1px solid #f4c986;border-radius:6px;background:#fffaf0;color:#d35400;font-weight:800;cursor:pointer}.prose .qa-box summary::before{content:"Q.";display:inline-block;margin-right:8px;padding:2px 8px;border-radius:4px;background:#f39c12;color:#fff}.prose .qa-answer{margin-bottom:24px;padding:14px 16px;border:1px solid #ddd;border-radius:4px;background:#fff}.prose .qa-answer::before{content:"A.";margin-right:.5em;color:var(--pink);font-weight:900}
.prose .twice-notice{display:flex;margin:1.5em 0}.prose .twice-notice a{position:relative;display:flex;align-items:center;justify-content:center;min-height:62px;flex:1;padding:1em 2.5em 1em 1.5em;color:#fff;text-align:center;text-decoration:none;font-weight:800;line-height:1.4}.prose .twice-notice a:first-child{border-right:1px solid #fff;background:#d61111}.prose .twice-notice a:last-child{background:#299c03}.prose .twice-notice a::after{content:"›";position:absolute;right:1em;font-size:1.5em}.prose .twice-notice a:hover{opacity:.85}
.prose .article-button,.prose .btn,.prose .btn-wrap a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;margin:.6em 0;padding:.7em 1.5em;border-radius:6px;background:#ff7b39;color:#fff;text-decoration:none;font-weight:800;box-shadow:0 7px 12px -5px rgba(0,0,0,.5);transition:.2s}.prose .article-button:hover,.prose .btn:hover,.prose .btn-wrap a:hover{transform:translateY(-2px);filter:brightness(.96)}.prose .article-button.pink{background:var(--pink)}.prose .article-button.dark{background:#171d35}.prose .shadow_test{filter:drop-shadow(5px 5px 5px #aaa)}

/* Every article table receives this wrapper from app.js. */
.prose .responsive-table,.prose .scrollable-table{position:relative;width:100%;max-width:100%;margin:2em 0;overflow-x:auto;border:1px solid #ff6f32;border-radius:2px;background:#fff;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable}.prose .responsive-table:focus,.prose .scrollable-table:focus{outline:3px solid rgba(255,111,50,.25);outline-offset:2px}.prose table{width:100%;min-width:700px;margin:0;border:0;border-collapse:collapse;background:#fff;font-size:.94em;line-height:1.75}.prose table caption{padding:.8em 1em;background:#fff3e9;color:#8a3719;text-align:left;font-weight:800}.prose table th,.prose table td{padding:.9em .75em;border:1px solid #ff6f32;text-align:left;vertical-align:middle;overflow-wrap:anywhere}.prose table thead th{background:#ff7b39;color:#fff;text-align:center;font-weight:800}.prose table tbody td{background:#fbfcfd}.prose table tbody tr:nth-child(even) td{background:#f6f7f9}.prose table tbody td:first-child{background:#fff9bd;font-weight:800}.prose table tbody tr:nth-child(even) td:first-child{background:#fff7a8}.prose table a{font-weight:700}.prose .responsive-table::after,.prose .scrollable-table::after{content:"横にスクロールできます →";position:sticky;left:0;display:none;width:max-content;padding:5px 9px;background:#fff3e9;color:#9a4827;font-size:10px;font-weight:700}
.prose img.alignleft,.prose .wp-caption.alignleft{float:left;max-width:48%;margin:.5em 1.5em 1em 0}.prose img.alignright,.prose .wp-caption.alignright{float:right;max-width:48%;margin:.5em 0 1em 1.5em}.prose img.aligncenter,.prose .wp-caption.aligncenter{display:block;margin:1.5em auto}.prose .wp-caption{max-width:100%}.prose .wp-caption img{width:100%;height:auto}.prose .wp-caption-text{margin:.45em 0 0;color:#777;font-size:.82em;text-align:center}

@media(max-width:700px){.prose .responsive-table::after,.prose .scrollable-table::after{display:block}.prose table{min-width:640px;font-size:.88em}.prose table th,.prose table td{padding:.7em .65em}.prose .balloon5{gap:12px}.prose .balloon5 .faceicon,.prose .balloon5 .faceicon img{width:58px;height:58px;flex-basis:58px}.prose .says::after{top:16px}.prose .twice-notice{display:grid}.prose .twice-notice a:first-child{border-right:0;border-bottom:1px solid #fff}.prose img.alignleft,.prose .wp-caption.alignleft,.prose img.alignright,.prose .wp-caption.alignright{float:none;max-width:100%;margin:1.5em auto}.prose .box26,.prose .box27,.prose .box28,.prose .box99{padding-left:1em;padding-right:1em}}
@media(prefers-reduced-motion:reduce){.prose .article-button,.prose .btn,.prose .btn-wrap a{transition:none}}

/* source: v03.css */
/* Otonavi CMS v0.3.0: media library, content relay, placeholder controls */
.media-input-row{display:flex;align-items:stretch;gap:7px}.media-input-row>input{flex:1;min-width:0}.media-input-row>.button{flex:0 0 auto;white-space:nowrap}.media-upload-panel,.media-library-panel,.placeholder-settings,.relay-settings-form>.panel{margin-bottom:18px}.media-upload-form{display:grid;grid-template-columns:minmax(280px,1.4fr) minmax(240px,1fr) auto;align-items:end;gap:14px;padding:20px}.media-drop{display:block;cursor:pointer}.media-drop input{position:absolute;width:1px;height:1px;opacity:0}.media-drop span{display:flex;min-height:92px;align-items:center;justify-content:center;flex-direction:column;border:2px dashed #d9dce8;border-radius:12px;background:#fafbfe;color:#4b5062;transition:.2s}.media-drop:hover span,.media-drop input:focus+span{border-color:#d71968;background:#fff8fb}.media-drop b{font-size:14px}.media-drop small{margin-top:6px;color:#8d91a0}.media-library-panel{padding-bottom:20px}.media-library-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;padding:20px}.media-library-card{overflow:hidden;border:1px solid #e0e2e9;border-radius:12px;background:#fff}.media-library-card>img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;background:#11162b}.media-library-card>div{display:grid;gap:7px;padding:12px}.media-library-card strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#24283a;font-size:12px}.media-library-card small,.media-library-card p{margin:0;color:#8c909e;font-size:9px}.media-library-card label{display:grid;gap:4px;color:#5e6270;font-size:9px}.media-library-card label span{display:flex}.media-library-card label input{min-width:0;border-radius:6px 0 0 6px;font-size:9px}.media-library-card label button{border:0;border-radius:0 6px 6px 0;background:#15192b;color:#fff;padding:0 10px;font-size:9px;cursor:pointer}.media-library-card form{display:flex;justify-content:flex-end}.button-danger{border-color:#f0c3cc!important;background:#fff5f7!important;color:#b51f40!important}.placeholder-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:20px}.placeholder-grid label{display:grid;gap:6px}.placeholder-grid textarea{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px}.placeholder-grid small{color:#8c909e;font-size:9px}.placeholder-save{grid-column:1/-1}.media-picker-dialog{width:min(1040px,calc(100vw - 34px));max-height:84vh;padding:0;border:0;border-radius:16px;background:#fff;box-shadow:0 24px 80px rgba(9,13,31,.35)}.media-picker-dialog::backdrop{background:rgba(7,10,24,.7);backdrop-filter:blur(3px)}.media-picker-head{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid #e3e5eb;background:#fff}.media-picker-head span{color:#d71968;font-size:9px;font-weight:850;letter-spacing:.14em}.media-picker-head h2{margin:4px 0 0;font-size:17px}.media-picker-head button{width:36px;height:36px;border:1px solid #dfe1e8;border-radius:50%;background:#fff;font-size:22px;cursor:pointer}.media-picker-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;padding:18px}.media-picker-item{overflow:hidden;padding:0;border:1px solid #e0e3ea;border-radius:10px;background:#fff;text-align:left;cursor:pointer}.media-picker-item:hover,.media-picker-item:focus-visible{border-color:#d71968;box-shadow:0 0 0 3px rgba(215,25,104,.1)}.media-picker-item img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:#11162b}.media-picker-item span,.media-picker-item small{display:block;overflow:hidden;padding:8px 9px 0;text-overflow:ellipsis;white-space:nowrap}.media-picker-item span{color:#303445;font-size:10px;font-weight:750}.media-picker-item small{padding-top:3px;padding-bottom:9px;color:#9296a3;font-size:8px}.media-picker-empty{padding:50px;text-align:center}.relay-settings-form{display:block}.switch-label{display:inline-flex!important;align-items:center;gap:8px;font-weight:750!important}.switch-label input{width:17px;height:17px}.relay-target-types{padding:14px;border:1px solid #e0e2e9;border-radius:10px}.relay-target-types legend{padding:0 7px;color:#5c6070;font-size:10px;font-weight:800}.relay-target-types label,.relay-check-row label{display:inline-flex;align-items:center;gap:6px;margin:4px 18px 4px 0;color:#4a4e5e;font-size:11px;font-weight:700}.relay-check-row{display:flex;flex-wrap:wrap;gap:6px 18px}.relay-source-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:20px}.relay-source-card,.relay-killer-card{display:grid;gap:10px;padding:15px;border:1px solid #dfe2e9;border-radius:11px;background:#fbfcfe}.relay-source-card legend,.relay-killer-card legend{padding:0 7px;color:#202537;font-size:12px;font-weight:850}.relay-source-card label,.relay-killer-card label{display:grid;gap:5px;color:#5a5e6d;font-size:10px;font-weight:750}.relay-source-status{margin:0;padding:8px;border-radius:7px;font-size:9px}.relay-source-status.is-ok{background:#eaf9f2;color:#187453}.relay-source-status.is-error{background:#fff0f2;color:#ac2945}.relay-checked-at{margin:0;padding:0 20px 20px;color:#858a99;font-size:10px}.relay-killer-list{display:grid;gap:14px;padding:20px}.relay-killer-card{grid-template-columns:repeat(2,minmax(0,1fr))}.relay-killer-card>legend,.relay-killer-card>.switch-label,.relay-killer-card>label{grid-column:1/-1}.relay-killer-card>.form-row{grid-column:1/-1}.relay-save-bar{position:sticky;bottom:12px;z-index:4;display:flex;justify-content:flex-end;margin:16px 0;padding:12px;border:1px solid #e1e3ea;border-radius:12px;background:rgba(255,255,255,.94);box-shadow:0 10px 30px rgba(12,16,35,.12);backdrop-filter:blur(8px)}.relay-maintenance{display:flex;justify-content:flex-end;gap:8px;margin-bottom:20px}
.otonavi-relay{width:min(1180px,calc(100% - 40px));margin:70px auto;padding:34px;border:1px solid #e5e0d8;background:#fff}.otonavi-relay-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #171b2d}.otonavi-relay-head span{color:#d71968;font-size:10px;font-weight:850;letter-spacing:.18em}.otonavi-relay-head h2{margin:5px 0 0;color:#10152b;font-family:serif;font-size:27px}.otonavi-relay-head p{margin:7px 0 0;color:#777b86;font-size:12px}.otonavi-relay-head>b{color:#e3dfe2;font-family:serif;font-size:18px;letter-spacing:.12em}.otonavi-relay-grid{display:grid;grid-template-columns:repeat(var(--relay-columns),minmax(0,1fr));gap:16px}.otonavi-relay-card{display:block;overflow:hidden;border:1px solid #e3e0dc;background:#fff;color:inherit;text-decoration:none;transition:transform .2s,box-shadow .2s}.otonavi-relay-card:hover{transform:translateY(-3px);box-shadow:0 12px 26px rgba(17,21,43,.12)}.otonavi-relay-card.is-killer{border-color:#e5a4bd}.otonavi-relay-media{position:relative;display:flex;aspect-ratio:16/9;align-items:center;justify-content:center;background:linear-gradient(135deg,#11162d,#a7265b);background-position:center;background-size:cover}.otonavi-relay-media>i{color:#fff;font-family:serif;font-size:48px;font-style:normal;font-weight:800;opacity:.75}.otonavi-relay-media>em,.otonavi-relay-media>strong{position:absolute;top:10px;padding:5px 8px;background:rgba(8,12,27,.82);color:#fff;font-size:8px;font-style:normal;letter-spacing:.08em}.otonavi-relay-media>em{left:10px}.otonavi-relay-media>strong{right:10px;background:#d71968}.otonavi-relay-body{display:flex;min-height:150px;flex-direction:column;padding:14px}.otonavi-relay-body>small{color:#d71968;font-size:9px;font-weight:800;letter-spacing:.06em}.otonavi-relay-body>b{display:-webkit-box;overflow:hidden;margin-top:7px;color:#151a2d;font-family:serif;font-size:16px;line-height:1.55;-webkit-box-orient:vertical;-webkit-line-clamp:2}.otonavi-relay-body>span{display:-webkit-box;overflow:hidden;margin-top:8px;color:#717580;font-size:10px;line-height:1.7;-webkit-box-orient:vertical;-webkit-line-clamp:2}.otonavi-relay-body>i{margin-top:auto;padding-top:12px;color:#34394c;font-size:9px;font-style:normal;font-weight:800}
@media(max-width:1050px){.media-library-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.media-picker-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.otonavi-relay-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.media-upload-form{grid-template-columns:1fr}.media-library-grid,.placeholder-grid,.relay-source-grid{grid-template-columns:1fr}.media-picker-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.relay-killer-card{grid-template-columns:1fr}.media-input-row{flex-wrap:wrap}.media-input-row>.button{width:100%}.otonavi-relay{width:calc(100% - 24px);margin:40px auto;padding:20px 14px}.otonavi-relay-head{align-items:flex-start}.otonavi-relay-head>b{display:none}.otonavi-relay-grid{grid-template-columns:1fr}.otonavi-relay-card{display:grid;grid-template-columns:42% 58%}.otonavi-relay-media{height:100%;aspect-ratio:auto}.otonavi-relay-body{min-height:135px}.relay-save-bar{bottom:5px}}
@media(prefers-reduced-motion:reduce){.otonavi-relay-card,.media-drop span{transition:none}}
.form-row.four{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:760px){.form-row.four{grid-template-columns:1fr 1fr}}

/* source: v031.css */
.hotel-service-tabs{display:flex;gap:10px;flex-wrap:wrap}
.hotel-service-tabs a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;border:1px solid #d9e0eb;border-radius:999px;background:#fff;color:#263348;font-weight:800;text-decoration:none}
.hotel-service-tabs a.is-active{border-color:#e4006f;background:#e4006f;color:#fff;box-shadow:0 8px 22px rgba(228,0,111,.18)}
.public-service-tabs{max-width:1180px;margin:24px auto 0;padding:0 24px}
.admin-service-tabs{margin:0 0 18px}
.dual-service-panel>div{min-width:145px}
.service-rate-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0 0 24px}
.service-rate-row>div{padding:18px;border:1px solid #e1e6ef;border-radius:14px;background:#f8faff;display:grid;grid-template-columns:auto 1fr;gap:3px 12px;align-items:center}
.service-rate-row strong{grid-row:1/3;font-size:2rem;color:#df006b}.service-rate-row span{font-weight:800;color:#24324a}.service-rate-row small{color:#667085}
.hotel-vote-section{scroll-margin-top:24px}
.service-side-summary+ .service-side-summary{margin-top:16px}
.service-comment-badge{display:inline-flex;margin-left:8px;padding:3px 8px;border-radius:999px;background:#fce7f2;color:#b10055;font-size:.74rem;font-weight:800}
.cast-type-badge{display:inline-flex;width:max-content;margin:.7rem 0 .15rem;padding:.3rem .75rem;border:1px solid rgba(227,0,105,.35);border-radius:999px;background:rgba(227,0,105,.1);color:#ef5e9f;font-size:.75rem;font-weight:800;letter-spacing:.04em}
@media(max-width:720px){.public-service-tabs{padding:0 16px}.hotel-service-tabs a{flex:1 1 150px}.service-rate-row{grid-template-columns:1fr}.dual-service-panel>div{min-width:0}}

/* source: v032.css */
.hotel-admin-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 20px}
.hotel-admin-tabs a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;border:1px solid #d9e0eb;border-radius:999px;background:#fff;color:#263348;font-weight:800;text-decoration:none}
.hotel-admin-tabs a.is-active{border-color:#e4006f;background:#e4006f;color:#fff;box-shadow:0 8px 22px rgba(228,0,111,.18)}
.hotel-service-overview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:20px}
.hotel-service-overview a{display:grid;gap:6px;padding:18px;border:1px solid #dfe5ef;border-radius:14px;background:#f8faff;color:#263348;text-decoration:none}
.hotel-service-overview span{font-size:.8rem;color:#6b7280;font-weight:800}.hotel-service-overview strong{font-size:1.2rem}.hotel-service-overview small{color:#d60068;font-weight:800}
.admin-note{margin:0 0 18px;padding:14px 18px;border-left:4px solid #e4006f;border-radius:8px;background:#fff4f8;color:#5b2540}
.service-profile-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:-4px 0 22px;color:#667085;font-size:.86rem}
.service-profile-meta a{color:#bd0758;font-weight:800}.availability{display:inline-flex;padding:5px 10px;border-radius:999px;background:#edf1f7;color:#39465c;font-weight:900}
.availability-available{background:#dff8ee;color:#087b58}.availability-unavailable{background:#fff0f1;color:#be2634}.availability-conditional{background:#fff4d9;color:#986100}.availability-researching{background:#eaf2ff;color:#2b62a7}
.service-profile-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0 0 22px}
.service-profile-details>div{padding:16px;border:1px solid #e2e7ef;border-radius:14px;background:#fbfcfe}.service-profile-details strong{display:block;margin-bottom:8px;color:#202d43}.service-profile-details p{margin:0;line-height:1.8;color:#4b5565}
.researching-panel{padding:22px;border:1px dashed #b8c4d8;border-radius:16px;background:#f7f9fd}.researching-panel strong{display:block;margin-bottom:7px;font-size:1.25rem;color:#31435f}.researching-panel p{margin:0;color:#667085}
.service-score-pending{font-size:1.1rem!important;line-height:1.2}
@media(max-width:720px){.hotel-admin-tabs a{flex:1 1 120px}.hotel-service-overview,.service-profile-details{grid-template-columns:1fr}.hotel-service-overview{padding:14px}}

/* source: v034.css */
/* Otonavi CMS v0.3.4 — article readability and responsive containment. */
.article-page {
  background: #fff;
}

.article-layout > * {
  min-width: 0;
}

.article-layout .prose {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  padding: 38px 42px;
  overflow-wrap: anywhere;
  background: #fff;
  border-radius: 10px;
}

.article-layout .prose img,
.article-layout .prose video,
.article-layout .prose iframe {
  max-width: 100%;
}

.article-layout .prose .responsive-table,
.article-layout .prose .scrollable-table {
  min-width: 0;
  max-width: 100%;
}

@media (max-width: 900px) {
  .article-layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .article-layout > aside {
    min-width: 0;
  }
}

@media (max-width: 620px) {
  .article-page {
    padding-top: 46px;
  }

  .article-header,
  .article-cover,
  .article-layout {
    width: 100%;
  }

  .article-header {
    padding-inline: 18px;
  }

  .article-header h1 {
    font-size: 28px;
    line-height: 1.45;
  }

  .article-cover {
    margin-top: 28px;
  }

  .article-layout {
    gap: 30px;
  }

  .article-layout .prose {
    padding: 24px 18px 34px;
    border-radius: 0;
    font-size: 17px;
    line-height: 1.9;
  }

  .article-layout .prose h2 {
    font-size: 24px;
    line-height: 1.5;
  }

  .article-layout .prose h3 {
    font-size: 20px;
    line-height: 1.55;
  }

  .article-layout > aside {
    padding-inline: 18px;
  }
}

/* source: v035.css */
/* Otonavi CMS v0.3.5 — article card separation. */
.site-logo .site-logo-word{font-size:21px;font-weight:700;letter-spacing:.05em}
.two-factor-status{display:inline-flex;align-items:center;justify-content:center;min-width:72px;padding:7px 14px;border-radius:999px;font-size:12px;font-weight:850}.two-factor-status.is-enabled{background:#e7f8ee;color:#14783f}.two-factor-status.is-disabled{background:#eef0f5;color:#6c7180}.two-factor-steps{display:grid;gap:9px;margin:0 0 20px}.two-factor-steps p{margin:0}.secret-copy-row{display:flex;align-items:center;gap:10px;margin-top:7px}.secret-copy-row code{padding:12px 14px;border:1px solid #d9dce5;border-radius:8px;background:#f6f7fa;font:700 16px/1.2 Consolas,monospace;letter-spacing:.12em;overflow-wrap:anywhere}.two-factor-code-input{max-width:260px;font:800 22px/1.2 Consolas,monospace!important;letter-spacing:.2em}.two-factor-uri summary{cursor:pointer;color:#8d2354;font-weight:750}.two-factor-uri textarea{margin:10px 0 7px;font-family:Consolas,monospace}.two-factor-recovery{border-color:#d7ad43;background:#fffdf5}.recovery-code-list{display:grid;grid-template-columns:repeat(4,minmax(110px,1fr));gap:8px;margin:6px 0 14px}.recovery-code-list code{padding:10px;border:1px solid #e3d4a7;border-radius:6px;background:#fff;color:#5a4200;text-align:center;font-weight:800;letter-spacing:.08em}.two-factor-settings-grid{align-items:start}.danger-panel{border-color:#e5b8bf}.form-note{color:#686d7b;font-size:12px;line-height:1.7}
@media(max-width:760px){.recovery-code-list{grid-template-columns:repeat(2,minmax(110px,1fr))}.secret-copy-row{align-items:stretch;flex-direction:column}.secret-copy-row .button{width:max-content}}
.article-page {
  background: var(--cream);
}

.article-layout .prose {
  border: 1px solid #ded7ce;
  border-radius: 12px;
  box-shadow: 0 12px 34px rgba(28, 23, 31, .08);
}

.article-toc {
  margin: 2em 0 2.4em;
  border: 1px solid #ddd6cc;
  border-radius: 9px;
  background: #fffdf8;
  box-shadow: 0 5px 16px rgba(28, 23, 31, .05);
}

.article-toc summary {
  padding: 14px 18px;
  border-bottom: 1px solid #e8e1d8;
  color: #25283a;
  font-weight: 800;
  cursor: pointer;
}

.article-toc details:not([open]) summary {
  border-bottom: 0;
}

.article-toc ol {
  margin: 0;
  padding: 14px 22px 18px 42px;
}

.article-toc li {
  margin: .45em 0;
  color: #515465;
}

.article-toc li.toc-level-3 {
  margin-left: 1.25em;
  font-size: .92em;
}

.article-toc a {
  color: #303448;
  text-decoration: none;
}

.article-toc a:hover {
  color: var(--pink);
  text-decoration: underline;
}

.article-layout .prose h2[id],
.article-layout .prose h3[id] {
  scroll-margin-top: 24px;
}

.article-copy-protection {
  -webkit-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
}

.maintenance-page {
  min-height: calc(100vh - 156px);
  display: grid;
  place-items: center;
  padding: 70px 20px;
  background: radial-gradient(circle at 70% 25%, rgba(215, 25, 104, .12), transparent 28%), var(--cream);
}

.maintenance-card {
  width: min(680px, 100%);
  padding: 64px 50px;
  border: 1px solid #ded7ce;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 18px 50px rgba(28, 23, 31, .09);
  text-align: center;
}

.maintenance-icon {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  margin: 0 auto 20px;
  border-radius: 50%;
  background: #fff0f6;
  color: var(--pink);
  font-size: 28px;
}

.maintenance-card h1 {
  margin-bottom: 18px;
  font: 600 34px/1.45 Georgia, "Yu Mincho", serif;
}

.maintenance-card > p:last-child {
  margin: 0;
  color: #6f7180;
  line-height: 2;
}

@media (max-width: 620px) {
  .article-layout .prose {
    width: calc(100% - 24px);
    margin-inline: 12px;
    border-radius: 10px;
    box-shadow: 0 8px 24px rgba(28, 23, 31, .07);
  }

  .article-toc ol {
    padding: 12px 15px 16px 34px;
  }

  .maintenance-card {
    padding: 46px 22px;
  }

  .maintenance-card h1 {
    font-size: 27px;
  }
}

/* source: v037.css */
/* Otonavi CMS v0.3.7 — article title moved into the content card. */
.article-page{padding:32px 0 80px}
.article-page>.article-cover{aspect-ratio:16/6;max-height:420px;margin:0 auto 32px;border-radius:12px;background:#0b1730}
.article-page>.article-cover img{display:block;width:100%;height:100%;object-fit:cover}
.article-content-header{margin:0 0 26px;padding:0 0 22px;border-bottom:1px solid #e1dbd3}
.article-content-header .breadcrumbs{justify-content:flex-start;margin:0 0 14px}
.article-content-meta{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 12px}
.article-content-meta .detail-kicker{margin:0}
.article-content-meta .article-byline{justify-content:flex-end}
.article-content-header h1{margin:0;color:var(--navy);font:600 clamp(28px,3vw,36px)/1.5 Georgia,"Yu Mincho",serif;text-align:left;overflow-wrap:anywhere}
.article-content-header+*{margin-top:0}
@media(max-width:620px){.article-page{padding:16px 0 60px}.article-page>.article-cover{aspect-ratio:16/9;max-height:240px;margin:0 auto 18px;border-radius:0}.article-content-header{margin-bottom:22px;padding-bottom:18px}.article-content-meta{align-items:flex-start;flex-direction:column;gap:7px;margin-bottom:10px}.article-content-meta .article-byline{justify-content:flex-start}.article-content-header h1{font-size:25px;line-height:1.5}}

.seo-index-settings .check-row{display:flex;align-items:center;gap:.65rem;margin:.7rem 0;font-weight:600}
.seo-index-settings .check-row input{width:1.1rem;height:1.1rem;margin:0}
.seo-index-settings h3{margin:1.4rem 0 .55rem}
.seo-url-list{display:grid;grid-template-columns:9rem minmax(0,1fr);gap:.75rem 1rem}
.seo-url-list dt{font-weight:700}
.seo-url-list dd{margin:0;overflow-wrap:anywhere}
.spaced-form{margin-top:.75rem}
.indexnow-result{display:grid;gap:.3rem;margin-top:1rem;padding:1rem;border-radius:.65rem;background:#eef8f2;color:#185b37}
.indexnow-result.is-error{background:#fff0f0;color:#8a2424}
.seo-notes{margin-top:1.25rem}
@media(max-width:720px){.seo-url-list{grid-template-columns:1fr;gap:.25rem}.seo-url-list dd{margin-bottom:.7rem}}

/* source: v038.css */
/* Otonavi CMS v0.3.8 — widget layouts, reusable sets and integration screens. */
.widget-layout-shell{width:100%;min-width:0}
.widget-page-grid{min-width:0}
.widget-layout-columns-1 .widget-page-grid{display:block}
.widget-layout-columns-2 .widget-page-grid,.widget-layout-columns-3 .widget-page-grid{display:grid;align-items:start;gap:28px;width:min(1720px,calc(100% - 40px));margin:0 auto}
.widget-layout-columns-2 .widget-page-grid{grid-template-columns:minmax(0,1fr) 300px}
.widget-layout-columns-3 .widget-page-grid{grid-template-columns:240px minmax(0,1fr) 240px}
.widget-layout-main{min-width:0}
.widget-layout-sidebar{position:sticky;top:92px;min-width:0;padding:30px 0}
.widget-layout-shell>.widget-area,.site-header+.widget-area,.site-footer>.widget-area,.site-footer~.widget-area{width:min(1440px,calc(100% - 40px));margin-left:auto;margin-right:auto}
.widget-area{display:grid;gap:18px;margin-top:22px;margin-bottom:22px;min-width:0}
.widget-block{min-width:0}
.widget-title{margin:0 0 12px;font-size:18px;line-height:1.5}
.widget-text{padding:18px;border:1px solid #e3ddd4;border-radius:8px;background:#fff;line-height:1.8}
.widget-banner{display:block;overflow:hidden;border-radius:8px}
.widget-banner img{display:block;width:100%;height:auto}
.widget-search{display:flex;gap:7px;padding:14px;border:1px solid #e3ddd4;background:#fff}
.widget-search input{min-width:0;flex:1;padding:11px;border:1px solid #d7dce5}
.widget-search button{padding:0 16px;border:0;background:#d71968;color:#fff;font-weight:700}
.widget-recent-articles{display:grid;gap:0;margin:0;padding:0;border:1px solid #e3ddd4;background:#fff;list-style:none}
.widget-recent-articles li+li{border-top:1px solid #eee8df}
.widget-recent-articles a{display:block;padding:12px 14px;color:#102344;text-decoration:none}
.widget-device-mobile,.widget-area-footer_mobile{display:none}
.article-page .widget-area{margin-top:18px;margin-bottom:18px}
.article-page .widget-area-article_after{width:min(1120px,calc(100% - 40px));margin-left:auto;margin-right:auto}

.widget-set-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;margin-bottom:24px}
.widget-set-card{display:grid;gap:16px;padding:22px;border:1px solid #d9dfe9;border-radius:10px;background:#fff}
.widget-set-card.is-disabled{opacity:.65}
.widget-set-card span,.widget-area-admin article span{font-size:11px;font-weight:800;letter-spacing:.12em;color:#d71968}
.widget-set-card h3{margin:6px 0;font-size:21px}
.widget-set-card p{margin:0;color:#687287}
.widget-set-card dl{display:flex;gap:24px;margin:0}
.widget-set-card dl div{display:grid;gap:3px}.widget-set-card dt{font-size:11px;color:#7a8496}.widget-set-card dd{margin:0;font-weight:700}
.assignment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:20px}
.widget-set-meta{margin-bottom:20px}
.widget-area-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.widget-area-admin{border:1px solid #ccd4e0;background:#fff}
.widget-area-admin summary{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:16px 18px;cursor:pointer;list-style:none}
.widget-area-admin summary::-webkit-details-marker{display:none}
.widget-area-admin summary span{display:grid;gap:3px}.widget-area-admin summary strong{font-size:16px}.widget-area-admin summary small{color:#707b8d}.widget-area-admin summary b{color:#596579;font-size:12px}
.widget-area-admin-body{display:grid;gap:12px;padding:14px 18px 18px;border-top:1px solid #e2e6ed;background:#f7f9fc}
.widget-area-admin article{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px;border:1px solid #dce2eb;background:#fff}
.widget-area-admin article>div:first-child{display:grid;gap:3px}.widget-area-admin article small{color:#697589}
.widget-form textarea,.integration-code-form textarea{width:100%;font-family:Consolas,"Courier New",monospace;font-size:13px;line-height:1.65;tab-size:2}
.integration-code-form{display:grid;gap:18px}

@media(max-width:1100px){.widget-layout-columns-3 .widget-page-grid{grid-template-columns:minmax(0,1fr) 280px}.widget-layout-columns-3 .widget-layout-left{display:none}.assignment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.widget-layout-columns-2 .widget-page-grid,.widget-layout-columns-3 .widget-page-grid{display:block;width:100%}.widget-layout-sidebar{position:static;padding:0 16px}.widget-layout-left{display:block!important}.widget-area{margin-top:16px;margin-bottom:16px}.widget-layout-shell>.widget-area,.site-header+.widget-area,.site-footer>.widget-area{width:calc(100% - 24px)}.widget-device-desktop{display:none!important}.widget-device-mobile{display:block}.widget-area-footer_mobile{display:grid}.assignment-grid,.widget-area-admin-grid{grid-template-columns:1fr}.widget-area-admin article{align-items:flex-start;flex-direction:column}.widget-set-card dl{flex-wrap:wrap}}

/* source: v0312.css */
/* OTONAVI CMS v0.3.12 */
.public-body main .button-primary,.public-body main .cta-primary,.public-body main .external-links .accent,.public-body main .public-service-tabs a.is-active,.public-body main .directory-type-tabs a.is-active,.public-body main .kana-index a.is-active,.public-body main .region-link-groups a.is-active{color:#fff}
.public-body main .button-primary:hover,.public-body main .cta-primary:hover,.public-body main .external-links .accent:hover,.public-body main .public-service-tabs a.is-active:hover{text-decoration:none}

.hotel-region-browser{padding:24px 0 0}
.region-link-groups{display:grid;gap:15px}
.region-link-groups>div{display:flex;align-items:center;flex-wrap:wrap;gap:7px;padding:15px;border:1px solid #e1d9cf;background:#fff}
.region-link-groups strong{min-width:125px;color:#343746;font-size:11px}
.region-link-groups a{display:inline-flex;align-items:center;gap:5px;padding:7px 10px;border:1px solid #d8dee8;border-radius:5px;background:#fff;color:#0657d9;font-size:11px;font-weight:750;text-decoration:none}
.region-link-groups a:hover{border-color:#76a9ef;background:#f4f8ff;text-decoration:none}
.region-link-groups a.is-active{border-color:#0657d9;background:#0657d9}
.region-link-groups a small{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#eaf2ff;color:#174f9d;font-size:9px}
.region-link-groups a.is-active small{background:rgba(255,255,255,.22);color:#fff}
.directory-filters .region-link-groups{margin:18px 0}
.region-filter-row{grid-template-columns:repeat(3,minmax(145px,1fr)) minmax(220px,1.25fr) auto}
.region-filter-row select:disabled{background:#f2f2f2;color:#a4a4a4}

.card-region-tags{display:flex;flex-wrap:wrap;gap:4px}
.card-region-tags .region-tag{padding:2px 5px;border:1px solid #d8e5fa;border-radius:3px;background:#f4f8ff;color:#0657d9;font-size:8px;text-decoration:none}
.card-region-tags .region-tag:hover{background:#e8f1ff;text-decoration:none}
.detail-region-links{display:flex;flex-wrap:wrap;gap:7px;margin:2px 0 12px}
.detail-region-links a{padding:5px 9px;border:1px solid rgba(125,183,255,.42);border-radius:999px;background:rgba(5,87,217,.18);color:#9cc9ff!important;font-size:10px;text-decoration:none}
.detail-region-links a:hover{background:rgba(5,87,217,.35);color:#fff!important;text-decoration:none}

.hotel-description{margin-top:28px;padding-top:23px;border-top:1px solid #e7dfd5}
.hotel-description p{margin:0;line-height:2.05}
.hotel-description p+p{margin-top:1.35em}
.public-vote-intro{padding:13px 15px;border-left:4px solid #0657d9;background:#eef5ff}
.public-vote-intro strong{display:block;color:#123f7f;font-size:12px}
.public-vote-intro p{margin:4px 0 0;color:#596d87;font-size:10px}
.guest-voter-fields{align-items:end}
.guest-anonymous-check{display:flex!important;align-items:center;grid-template-columns:auto 1fr!important;justify-content:flex-start;padding:10px 0}
.guest-anonymous-check input{width:auto!important;margin:0 7px 0 0}
.vote-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}

@media(max-width:1050px){.region-filter-row{grid-template-columns:repeat(2,minmax(180px,1fr))}.region-filter-row .button{min-height:42px}}
@media(max-width:700px){.hotel-region-browser{width:calc(100% - 30px)}.region-filter-row{grid-template-columns:1fr}.region-link-groups>div{align-items:stretch}.region-link-groups strong{width:100%;min-width:0}.region-link-groups a{flex:1 1 calc(33.333% - 7px);justify-content:center}.detail-region-links a{font-size:12px}.hotel-description{font-size:15px}}

/* source: v0313.css */
/* OTONAVI CMS v0.3.13 - contextual link colors */

/* 本文内リンク：白背景で判別しやすい青 */
.public-body .prose a,
.public-body .info-table a,
.public-body .comment-list a,
.public-body .hotel-description a,
.public-body .widget-content a{color:var(--otonavi-link-content,#0657d9);text-decoration:underline}
.public-body .prose a:hover,
.public-body .info-table a:hover,
.public-body .comment-list a:hover,
.public-body .hotel-description a:hover,
.public-body .widget-content a:hover{text-decoration-thickness:2px}

/* 地域タグ・地域一覧：白背景では青 */
.public-body .region-link-groups a,
.public-body .card-region-tags .region-tag{color:var(--otonavi-link-region,#0657d9)}
.public-body .region-link-groups a.is-active{color:#fff}

/* TOPのカテゴリーナビ：元の濃紺系 */
.public-body .digest-nav a{color:var(--otonavi-link-navigation,#464754)}

/* 記事・ホテル等のカードタイトル：黒 */
.public-body .digest-card .card-body h3 a,
.public-body .result-list h2 a{color:var(--otonavi-link-card,#111111);text-decoration:none}
.public-body .digest-card .card-body h3 a:hover,
.public-body .result-list h2 a:hover{color:var(--pink);text-decoration:none}

/* 黒・濃紺背景内：内部リンクを白に統一 */
.public-body .hero-tags a,
.public-body .join-cta .cta-secondary,
.public-body .page-hero a,
.public-body .detail-hero .breadcrumbs a,
.public-body .detail-hero .detail-region-links a,
.public-body .profile-hero a,
.public-body .area-hero a{color:var(--otonavi-link-dark,#fff)!important}
.public-body .hero-tags a:hover,
.public-body .join-cta .cta-secondary:hover,
.public-body .detail-hero .breadcrumbs a:hover,
.public-body .detail-hero .detail-region-links a:hover{text-decoration:none;filter:brightness(1.12)}
.public-body .detail-hero .detail-region-links a{border-color:rgba(255,255,255,.55);background:rgba(255,255,255,.08)}
.public-body .detail-hero .detail-region-links a:hover{border-color:#fff;background:rgba(255,255,255,.16)}

/* フッター：濃色背景に白 */
.public-body .site-footer .footer-inner a,
.public-body .site-footer .widget-content a{color:var(--otonavi-link-footer,#fff)}
.public-body .site-footer .footer-inner a:hover,
.public-body .site-footer .widget-content a:hover{color:#fff;text-decoration:underline}

/* source: v0314.css */
/* OTONAVI CMS v0.3.14 - home region browser and live customizer */

/* 管理画面から変更する公開テーマ色 */
.public-body .site-header{background:var(--otonavi-theme-header-background,#070b1c);border-bottom-color:var(--otonavi-theme-header-border,#20243a)}
.public-body .site-nav a{color:var(--otonavi-theme-header-link,#b4b7c6)}
.public-body .site-nav a:hover,.public-body .site-nav a.is-active{color:var(--otonavi-theme-header-active,#fff)}
.public-body .header-login{border-color:var(--otonavi-theme-header-border,#20243a)}
.public-body .digest-nav{background:var(--otonavi-theme-top-nav-background,#fff);border-bottom-color:var(--otonavi-theme-top-nav-border,#eee9e1)}
.public-body .digest-nav a{border-color:var(--otonavi-theme-top-nav-border,#eee9e1)}
.public-body .site-footer{color:var(--otonavi-theme-footer-text,#a8abba);background:var(--otonavi-theme-footer-background,#080b1b)}
.public-body .site-footer .footer-brand p{color:var(--otonavi-theme-footer-text,#a8abba)}
.public-body .site-footer .footer-bottom{border-top-color:var(--otonavi-theme-footer-border,#25293b)}

/* TOP 地域から探す */
.home-region-finder{width:min(1240px,calc(100% - 48px));margin:58px auto 8px;padding:34px;background:#fff;border:1px solid #e5ddd2;box-shadow:0 12px 34px rgba(30,24,33,.06)}
.home-region-finder>header{margin-bottom:24px;text-align:center}.home-region-finder>header>span{color:var(--pink);font:700 9px Georgia,serif;letter-spacing:.2em}.home-region-finder h2{margin:7px 0 5px;font:600 27px Georgia,"Yu Mincho",serif}.home-region-finder>header p{margin:0;color:#7a7880;font-size:11px}
.home-region-tabs{display:grid;grid-template-columns:repeat(3,1fr);margin-bottom:22px;border:1px solid #ded7cd}.home-region-tabs button{min-height:46px;padding:10px;border:0;background:#f7f3ee;color:#424351;font-size:11px;font-weight:800;cursor:pointer}.home-region-tabs button+button{border-left:1px solid #ded7cd}.home-region-tabs button.is-active{background:var(--navy);color:#fff;box-shadow:inset 0 -3px var(--pink)}
.home-region-panel[hidden]{display:none}.home-region-groups{display:grid;gap:7px}.home-region-group[open]{display:grid;grid-template-columns:130px minmax(0,1fr);border:1px solid #e7e1d9;background:#fff}.home-region-group summary{display:flex;align-items:center;justify-content:center;min-height:48px;padding:10px;background:#555966;color:#fff;font-size:11px;font-weight:800;list-style:none;pointer-events:none}.home-region-group summary::-webkit-details-marker{display:none}.home-region-links{display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding:9px 12px}.home-region-links a,.home-region-links .is-empty{display:inline-flex;align-items:center;gap:4px;padding:6px 8px;border-radius:3px;font-size:10px}.home-region-links a{color:var(--otonavi-link-region,#0657d9);font-weight:750}.home-region-links a:hover{background:#edf4ff}.home-region-links small{font-size:8px}.home-region-links .is-empty{color:#b9b9bc;background:#f7f7f7}.home-region-all{display:block;margin-top:17px;color:var(--otonavi-link-region,#0657d9);font-size:11px;font-weight:800;text-align:right}.home-region-all b{margin-left:6px;color:var(--pink)}

/* WP型ライブカスタマイズ */
.admin-customizer-page .admin-sidebar,.admin-customizer-page .admin-topbar,.admin-customizer-page .admin-footer{display:none}.admin-customizer-page .admin-main{width:100%;margin-left:0}.admin-customizer-page .admin-content{height:100vh;padding:0;overflow:hidden}.site-customizer{height:100vh;display:grid;grid-template-columns:350px minmax(0,1fr);grid-template-rows:58px minmax(0,1fr);background:#e8edf1}.customizer-bar{grid-column:1;display:grid;grid-template-columns:42px 1fr auto;align-items:center;border-right:1px solid #cfd5da;border-bottom:1px solid #cfd5da;background:#fff}.customizer-bar>a{height:58px;display:grid;place-items:center;border-right:1px solid #ddd;color:#33404a;font-size:24px}.customizer-bar>div{padding:0 12px}.customizer-bar strong,.customizer-bar small{display:block}.customizer-bar strong{font-size:12px}.customizer-bar small{margin-top:2px;color:#6d7880;font-size:9px}.customizer-bar .button{margin-right:10px;padding:8px 11px}.customizer-controls{grid-column:1;grid-row:2;overflow:auto;border-right:1px solid #cfd5da;background:#f5f6f7}.customizer-intro{padding:19px 16px;border-bottom:1px solid #d9dde0;background:#fff}.customizer-intro h2{margin:0 0 6px;font-size:18px}.customizer-intro p{margin:0;color:#68737b;font-size:10px;line-height:1.7}.customizer-controls details{border-bottom:1px solid #d8dde0;background:#fff}.customizer-controls summary{position:relative;padding:17px 40px 17px 17px;cursor:pointer;font-size:12px;font-weight:800;list-style:none}.customizer-controls summary:after{content:"⌄";position:absolute;right:17px;color:#7c8790}.customizer-controls details[open] summary:after{transform:rotate(180deg)}.customizer-controls summary::-webkit-details-marker{display:none}.customizer-fields{display:grid;gap:13px;padding:0 17px 18px}.customizer-fields label{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#3d4850;font-size:10px}.customizer-color{display:flex;align-items:center;gap:7px}.customizer-color input{width:37px;height:29px;padding:2px;border:1px solid #cdd3d7;border-radius:3px;background:#fff}.customizer-color code{min-width:63px;color:#667179;font-size:9px}.customizer-reset{width:calc(100% - 32px);margin:16px}.customizer-preview{grid-column:2;grid-row:1/3;min-width:0;display:grid;grid-template-rows:36px minmax(0,1fr);padding:13px 13px 13px 0}.customizer-device-bar{display:flex;align-items:center;justify-content:space-between;padding:0 13px;border:1px solid #cbd2d7;border-bottom:0;background:#fff;color:#4e5961;font-size:9px}.customizer-device-bar>div{display:flex;align-items:center;gap:4px}.customizer-device-bar button{padding:4px 7px;border:0;border-radius:3px;background:transparent;color:#69757d;font-size:9px;cursor:pointer}.customizer-device-bar button.is-active{background:#e9eef2;color:#15202a;font-weight:800}.customizer-preview iframe{width:100%;height:100%;justify-self:center;border:1px solid #cbd2d7;background:#fff;transition:width .2s}.customizer-preview[data-device="tablet"] iframe{width:min(820px,100%)}.customizer-preview[data-device="mobile"] iframe{width:min(390px,100%)}

@media(max-width:760px){.home-region-finder{width:calc(100% - 30px);margin-top:38px;padding:22px 15px}.home-region-tabs{grid-template-columns:1fr}.home-region-tabs button+button{border-left:0;border-top:1px solid #ded7cd}.home-region-group,.home-region-group[open]{display:block}.home-region-group summary{justify-content:space-between;min-height:44px;pointer-events:auto}.home-region-group summary:after{content:"＋"}.home-region-group[open] summary:after{content:"－"}.home-region-links{padding:10px}.home-region-links a,.home-region-links .is-empty{flex:1 1 calc(33.333% - 6px);justify-content:center}.site-customizer{grid-template-columns:300px minmax(560px,1fr)}.customizer-preview{overflow:auto}}
.customizer-save-status{justify-self:end;color:#176b42;font-size:12px;font-weight:700;white-space:nowrap}.customizer-bar{grid-template-columns:42px minmax(0,1fr) auto auto}.media-library-card>img:not([src]),.media-picker-item img:not([src]){background:linear-gradient(110deg,#edf0f5 8%,#f8f9fb 18%,#edf0f5 33%);background-size:200% 100%;animation:otonavi-media-placeholder 1.25s linear infinite}@keyframes otonavi-media-placeholder{to{background-position-x:-200%}}

/* source: v0315.css */
/* OTONAVI CMS v0.3.15 - four-purpose regional search */
.home-region-tabs{grid-template-columns:repeat(4,1fr)}
.hotel-service-badges{display:flex!important;justify-content:flex-end;flex-wrap:wrap;gap:4px}.hotel-service-badges b{padding:3px 5px;border-radius:3px;background:#eef1f5;color:#68717d;font-size:7px;white-space:nowrap}.hotel-service-badges b.is-available{background:#e4f5ee;color:#147451}.hotel-service-badges b.is-unavailable{background:#f7e8ee;color:#a33362}.hotel-service-badges b.is-conditional{background:#f7f0df;color:#8b681f}.hotel-service-badges b.is-researching{background:#e8eff9;color:#355d96}
@media(max-width:980px){.home-region-tabs{grid-template-columns:repeat(2,1fr)}.home-region-tabs button:nth-child(3){border-left:0}.home-region-tabs button:nth-child(n+3){border-top:1px solid #ded7cd}}
@media(max-width:760px){.home-region-tabs{grid-template-columns:1fr}.home-region-tabs button:nth-child(n){border-left:0}.home-region-tabs button+button{border-top:1px solid #ded7cd}}

/* source: v0316.css */
/* OTONAVI CMS v0.3.16 - readable text on dark backgrounds */
.public-body .site-logo small{color:var(--otonavi-theme-logo-subtext,#d8dbea);font-size:7px}
.public-body .hero-copy>p:not(.hero-eyebrow),
.public-body .page-hero p,
.public-body .detail-hero-content>p,
.public-body .area-hero>div>p{color:var(--otonavi-theme-dark-secondary,#eef0f7)}
.public-body .hero-tags,
.public-body .hero-stats span,
.public-body .hero-stats small,
.public-body .detail-location,
.public-body .detail-score-panel span,
.public-body .detail-score-panel small,
.public-body .profile-store span,
.public-body .profile-scores span,
.public-body .vote-count{color:var(--otonavi-theme-dark-label,#cbd0df)}
.public-body .hero-tags{font-size:10px}.public-body .hero-stats span{font-size:9px}
.public-body .site-footer .footer-bottom{color:var(--otonavi-theme-footer-bottom,#c7cad6);font-size:9px}

/* Keep decorated article links readable: only ordinary prose links use the global blue. */
.public-body .prose a.article-button,
.public-body .prose a.btn,
.public-body .prose .btn-wrap a,
.public-body .prose .twice-notice a{color:#fff;text-decoration:none}
.public-body .prose .blackboard-box a,
.public-body .prose .kokuban a{color:#fff6a8}

/* Match the more readable 110% browser view on desktop only. */
@media(min-width:901px){.public-body{zoom:1.1}}

/* source: v0317.css */
/* OTONAVI CMS v0.3.17 - responsive hero, site background and favicon customizer */
.public-body.has-custom-hero-common .hero{background-image:linear-gradient(90deg,rgba(5,8,23,.82) 0%,rgba(6,9,25,.62) 48%,rgba(8,10,28,.32) 100%),var(--otonavi-hero-image-common);background-repeat:no-repeat;background-position:center;background-size:cover}
@media(min-width:901px){.public-body.has-custom-hero-desktop .hero{background-image:linear-gradient(90deg,rgba(5,8,23,.82) 0%,rgba(6,9,25,.62) 48%,rgba(8,10,28,.32) 100%),var(--otonavi-hero-image-desktop);background-repeat:no-repeat;background-position:center;background-size:cover}}
@media(min-width:621px) and (max-width:900px){.public-body.has-custom-hero-tablet .hero{background-image:linear-gradient(90deg,rgba(5,8,23,.82) 0%,rgba(6,9,25,.62) 48%,rgba(8,10,28,.32) 100%),var(--otonavi-hero-image-tablet);background-repeat:no-repeat;background-position:center;background-size:cover}}
@media(max-width:620px){.public-body.has-custom-hero-mobile .hero{background-image:linear-gradient(180deg,rgba(5,8,23,.76) 0%,rgba(6,9,25,.65) 58%,rgba(8,10,28,.42) 100%),var(--otonavi-hero-image-mobile);background-repeat:no-repeat;background-position:center;background-size:cover}}

.public-body.has-custom-site-background{background-image:var(--otonavi-site-background-image);background-position:center top}
.public-body.has-custom-site-background.site-background-cover{background-repeat:no-repeat;background-size:cover;background-attachment:fixed}
.public-body.has-custom-site-background.site-background-repeat{background-repeat:repeat;background-size:auto;background-attachment:scroll}

.customizer-image-fields{display:grid;gap:14px;padding:0 17px 18px}
.customizer-image-fields>p{margin:0;color:#68737b;font-size:9px;line-height:1.65}
.customizer-image-fields>label{display:grid;gap:7px;color:#3d4850;font-size:10px;font-weight:700}
.customizer-image-fields input,.customizer-image-fields select{width:100%;min-width:0;padding:9px;border:1px solid #cdd3d7;border-radius:4px;background:#fff;color:#27323a;font-size:10px}
.customizer-image-actions{display:grid;grid-template-columns:1fr auto;gap:7px}
.customizer-image-actions .button{min-height:32px;padding:7px 9px;font-size:9px}
.admin-customizer-page .media-picker-dialog{max-width:min(980px,calc(100vw - 30px))}

/* source: v0318.css */
/* OTONAVI CMS v0.3.18 - remove the stock hero artwork behind custom hero images */
.public-body.has-custom-hero-common .hero>.hero-glow,
.public-body.has-custom-hero-common .hero>.skyline{display:none}
@media(min-width:901px){
  .public-body.has-custom-hero-desktop .hero>.hero-glow,
  .public-body.has-custom-hero-desktop .hero>.skyline{display:none}
}
@media(min-width:621px) and (max-width:900px){
  .public-body.has-custom-hero-tablet .hero>.hero-glow,
  .public-body.has-custom-hero-tablet .hero>.skyline{display:none}
}
@media(max-width:620px){
  .public-body.has-custom-hero-mobile .hero>.hero-glow,
  .public-body.has-custom-hero-mobile .hero>.skyline{display:none}
}

/* source: v0320.css */
/* OTONAVI CMS v0.3.20 - adjustable custom hero overlay, default 0% */
.public-body.has-custom-hero-common .hero{background-image:linear-gradient(rgba(5,8,23,var(--otonavi-hero-overlay-opacity,0)),rgba(5,8,23,var(--otonavi-hero-overlay-opacity,0))),var(--otonavi-hero-image-common)}
@media(min-width:901px){.public-body.has-custom-hero-desktop .hero{background-image:linear-gradient(rgba(5,8,23,var(--otonavi-hero-overlay-opacity,0)),rgba(5,8,23,var(--otonavi-hero-overlay-opacity,0))),var(--otonavi-hero-image-desktop)}}
@media(min-width:621px) and (max-width:900px){.public-body.has-custom-hero-tablet .hero{background-image:linear-gradient(rgba(5,8,23,var(--otonavi-hero-overlay-opacity,0)),rgba(5,8,23,var(--otonavi-hero-overlay-opacity,0))),var(--otonavi-hero-image-tablet)}}
@media(max-width:620px){.public-body.has-custom-hero-mobile .hero{background-image:linear-gradient(rgba(5,8,23,var(--otonavi-hero-overlay-opacity,0)),rgba(5,8,23,var(--otonavi-hero-overlay-opacity,0))),var(--otonavi-hero-image-mobile)}}
.customizer-range{grid-template-columns:1fr auto!important;align-items:center!important}
.customizer-range>input{grid-column:1/-1;width:100%;padding:0;border:0;background:transparent;accent-color:#d71968}
.customizer-range>output{grid-column:2;grid-row:1;min-width:35px;color:#d71968;font-size:10px;font-weight:850;text-align:right}

/* source: v0321.css */
.classification-checks{margin:0;border:1px solid #d9dfeb;border-radius:12px;padding:16px;background:#f8faff}.classification-checks legend{padding:0 8px;font-weight:800;color:#182039}.classification-checks>p{margin:0 0 12px;color:#687086;font-size:.9rem}.classification-checks>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.classification-checks label{display:flex;align-items:center;gap:8px;padding:9px 10px;border:1px solid #dfe4ee;border-radius:8px;background:#fff;font-weight:700}.classification-checks input{width:auto;margin:0}.classification-checks>a{display:inline-block;margin-top:12px;color:#0657d9}
.classification-filter{max-width:1240px;margin:20px auto 0;padding:16px 20px;display:flex;align-items:center;flex-wrap:wrap;gap:8px;background:#fff;border:1px solid #e4ddd3;border-radius:12px;box-shadow:0 10px 24px rgba(11,18,40,.06)}.classification-filter>strong{margin-right:8px;color:#15192a}.classification-filter>a{display:inline-flex;align-items:center;gap:5px;padding:8px 12px;border:1px solid #dce2ec;border-radius:999px;color:#25314b;background:#f8faff;text-decoration:none;font-weight:700}.classification-filter>a:hover,.classification-filter>a.is-active{color:#fff;background:#d71968;border-color:#d71968}.classification-filter small{font-size:.72em;opacity:.78}
.content-genre-tags{display:flex;flex-wrap:wrap;gap:6px}.content-genre-tags a,.content-genre-tags span{display:inline-flex;padding:5px 9px;border:1px solid #cfd9e9;border-radius:999px;color:#0657d9;background:#fff;font-size:.8rem;font-weight:700}
@media(max-width:760px){.classification-checks>div{grid-template-columns:repeat(2,minmax(0,1fr))}.classification-filter{margin:14px 16px 0;padding:14px}.classification-filter>strong{width:100%}}
@media(max-width:480px){.classification-checks>div{grid-template-columns:1fr}}

/* source: v0324.css */
/* Otonavi CMS v0.3.24: independent nightspot content type */
.digest-nightspot .card-kicker{background:#5d236d;color:#fff}
.digest-nightspot .score-orb{background:#7b2e7d;border-color:#e9c9eb}
.nightspot-detail-hero .detail-kicker{color:#f0b65d}
.nightspot-detail-hero .detail-score-panel>div:last-child strong{font-size:1.05rem;line-height:1.45}
.nightspot-group-filter{border-top:3px solid #8f367c}
.nightspot-genre-filter{background:#faf6fb}
.review-stars{color:#d18b18;letter-spacing:.12em}
.review-tag-checks{display:flex;flex-wrap:wrap;gap:.65rem}
.review-tag-checks label{display:flex;align-items:center;gap:.35rem;padding:.55rem .75rem;border:1px solid #d9dce5;border-radius:999px;background:#fff}
.digest-grid-nightspot{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1100px){.digest-grid-nightspot{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.digest-grid-nightspot{grid-template-columns:1fr}.nightspot-detail-hero .detail-score-panel{grid-template-columns:1fr 1fr}.review-tag-checks label{font-size:.9rem}}

/* source: v0330.css */
.public-body .digest-nav>div{grid-template-columns:repeat(8,minmax(0,1fr))}
.public-body .hero-stats div{min-width:122px}
.public-body .digest-card[data-section="encounter"] .card-image:before,
.public-body .digest-encounter .card-image:before{background:linear-gradient(145deg,rgba(39,22,52,.12),rgba(6,8,18,.6)),radial-gradient(circle at 68% 30%,rgba(222,83,154,.48),transparent 28%),linear-gradient(120deg,#392342,#0d1021)}
.public-body .encounter-detail-hero{border-color:rgba(226,31,111,.24)}
@media(max-width:1180px){.public-body .site-nav{gap:11px}.public-body .digest-nav>div{overflow:auto}.public-body .digest-nav a{min-width:132px}}
@media(max-width:620px){.public-body .hero-tags a{font-size:10px}.public-body .digest-nav a{min-width:128px}}

/* source: v0331.css */
.affiliate-area{width:min(1180px,calc(100% - 32px));margin:24px auto;display:grid;gap:18px}
.affiliate-card{position:relative;border:1px solid #e3ddd4;border-radius:14px;background:#fff;color:#111827;box-shadow:0 10px 28px rgba(10,14,30,.08);overflow:hidden}
.affiliate-card-body{display:grid;grid-template-columns:minmax(180px,34%) 1fr;align-items:center;gap:22px;padding:20px}
.affiliate-disclosure{position:absolute;z-index:2;top:10px;left:10px;padding:3px 8px;border-radius:999px;background:rgba(7,11,28,.82);color:#fff;font-size:11px;line-height:1.5}
.affiliate-image{display:block;border-radius:10px;overflow:hidden;background:#f5f5f5}
.affiliate-image img{display:block;width:100%;height:auto;max-height:240px;object-fit:cover}
.affiliate-copy h2{margin:0 0 10px;font-size:clamp(20px,2.2vw,30px);line-height:1.45;color:#111827}
.affiliate-copy p{margin:0 0 16px;color:#4b5563;line-height:1.8}
.affiliate-cta,.article-page .affiliate-cta{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:10px 24px;border-radius:8px;background:var(--otonavi-theme-accent,#d71968);color:#fff!important;font-weight:700;text-decoration:none;box-shadow:0 8px 20px rgba(215,25,104,.22)}
.affiliate-cta:hover{filter:brightness(1.08);transform:translateY(-1px)}
.affiliate-card.device-desktop,.affiliate-card.device-tablet,.affiliate-card.device-mobile{display:none}
@media(min-width:1025px){.affiliate-card.device-desktop{display:block}}
@media(min-width:768px) and (max-width:1024px){.affiliate-card.device-tablet{display:block}}
@media(max-width:767px){.affiliate-area{width:calc(100% - 24px);margin:18px auto}.affiliate-card.device-mobile{display:block}.affiliate-card-body{grid-template-columns:1fr;padding:16px}.affiliate-copy h2{font-size:20px}.affiliate-cta{width:100%}}

/* source: v0334.css */
/* v0.3.34: keep the custom TOP hero hidden until the selected image is fully decoded. */
html:not(.otonavi-hero-ready) .public-body.has-custom-hero-common .hero{
  background-image:none!important;
  background-color:#070b1c;
}
@media(min-width:901px){
  html:not(.otonavi-hero-ready) .public-body.has-custom-hero-desktop .hero{
    background-image:none!important;
    background-color:#070b1c;
  }
}
@media(min-width:621px) and (max-width:900px){
  html:not(.otonavi-hero-ready) .public-body.has-custom-hero-tablet .hero{
    background-image:none!important;
    background-color:#070b1c;
  }
}
@media(max-width:620px){
  html:not(.otonavi-hero-ready) .public-body.has-custom-hero-mobile .hero{
    background-image:none!important;
    background-color:#070b1c;
  }
}

/* source: v0335.css */
/* v0.3.35: image URLs on below-the-fold cards are applied only near the viewport. */
[data-lazy-bg]{background-position:center;background-repeat:no-repeat;background-size:cover}
[data-lazy-bg].is-lazy-bg-loaded{animation:otonavi-lazy-bg-reveal .18s ease-out both}
@keyframes otonavi-lazy-bg-reveal{from{filter:brightness(.9)}to{filter:none}}
@media(prefers-reduced-motion:reduce){[data-lazy-bg].is-lazy-bg-loaded{animation:none}}
@media(max-width:620px){
  .public-body .digest-nav>div{
    width:100%;
    height:auto;
    grid-template-columns:repeat(2,minmax(0,1fr));
    overflow:visible;
  }
  .public-body .digest-nav a{
    min-width:0;
    min-height:54px;
    padding:8px 6px;
    gap:7px;
    border-right:1px solid var(--otonavi-theme-top-nav-border,#eee9e1);
    border-bottom:1px solid var(--otonavi-theme-top-nav-border,#eee9e1);
    font-size:12px;
    line-height:1.35;
    text-align:center;
    white-space:normal;
  }
  .public-body .digest-nav a:nth-child(2n){border-right:0}
  .public-body .digest-nav a span{flex:0 0 auto;font-size:16px}
}

/* source: v0336.css */
/* v0.3.36: progressive scroll reveal for below-the-fold public content. */
html.otonavi-motion-enabled :where(
  .home-region-finder,
  .digest-section .section-heading,
  .digest-card,
  .join-cta,
  .hotel-region-browser,
  .listing-shell .listing-toolbar,
  .detail-main>.detail-section,
  .otonavi-relay-head,
  .otonavi-relay-card,
  .affiliate-card,
  .widget-block
){
  opacity:0;
  transform:translate3d(0,18px,0);
  transition:opacity .5s ease,transform .5s cubic-bezier(.22,.61,.36,1);
  transition-delay:var(--otonavi-reveal-delay,0ms);
  will-change:opacity,transform;
}
html.otonavi-motion-enabled :where(
  .home-region-finder,
  .digest-section .section-heading,
  .digest-card,
  .join-cta,
  .hotel-region-browser,
  .listing-shell .listing-toolbar,
  .detail-main>.detail-section,
  .otonavi-relay-head,
  .otonavi-relay-card,
  .affiliate-card,
  .widget-block
).is-revealed{
  opacity:1;
  transform:none;
  will-change:auto;
}
html.otonavi-motion-enabled .is-reveal-immediate{transition:none!important;transition-delay:0ms!important}
@media(prefers-reduced-motion:reduce){
  html.otonavi-motion-enabled :where(
    .home-region-finder,
    .digest-section .section-heading,
    .digest-card,
    .join-cta,
    .hotel-region-browser,
    .listing-shell .listing-toolbar,
    .detail-main>.detail-section,
    .otonavi-relay-head,
    .otonavi-relay-card,
    .affiliate-card,
    .widget-block
  ){
    opacity:1!important;
    transform:none!important;
    transition:none!important;
  }
}

/* source: v0337.css */
/* v0.3.37: reveal only elements that JavaScript confirms are below the fold. */
:where(
  .home-region-finder,
  .digest-section .section-heading,
  .digest-card,
  .join-cta,
  .hotel-region-browser,
  .listing-shell .listing-toolbar,
  .detail-main>.detail-section,
  .otonavi-relay-head,
  .otonavi-relay-card,
  .affiliate-card,
  .widget-block
).otonavi-reveal{
  opacity:0;
  transform:translate3d(0,18px,0);
  transition:opacity .42s ease,transform .42s cubic-bezier(.22,.61,.36,1);
  transition-delay:var(--otonavi-reveal-delay,0ms);
  will-change:opacity,transform;
}
:where(
  .home-region-finder,
  .digest-section .section-heading,
  .digest-card,
  .join-cta,
  .hotel-region-browser,
  .listing-shell .listing-toolbar,
  .detail-main>.detail-section,
  .otonavi-relay-head,
  .otonavi-relay-card,
  .affiliate-card,
  .widget-block
).otonavi-reveal.is-revealed{
  opacity:1;
  transform:none;
  will-change:auto;
}
@media(prefers-reduced-motion:reduce){
  .otonavi-reveal{opacity:1!important;transform:none!important;transition:none!important}
}

/* source: v0340.css */
/* Otonavi CMS v0.3.40 — member access, registration benefits and guidance. */
.card-image{position:relative}.member-only-badge{position:absolute;z-index:4;top:16px;right:16px;display:inline-flex;align-items:center;min-height:28px;padding:5px 11px;border:1px solid rgba(255,255,255,.55);border-radius:999px;background:#d71968;color:#fff;font-size:11px;font-style:normal;font-weight:800;letter-spacing:.05em;box-shadow:0 6px 18px rgba(8,11,29,.22)}
.profile-photo .member-only-badge{top:22px;right:22px}.article-lead{margin:18px 0 0;color:#4d566a;font-size:17px;line-height:1.9}
.member-locked-preview{position:relative;min-height:430px;margin:32px 0;overflow:hidden;border:1px solid #eadde4;border-radius:14px;background:#fff}.member-preview-blur{position:absolute;inset:0;padding:42px;background:#fff;color:#30394d;filter:blur(5px);opacity:.38;user-select:none;pointer-events:none}.member-preview-blur h2{margin:0 0 16px;font-size:27px}.member-preview-blur p{font-size:15px;line-height:2}.member-preview-lines{display:grid;gap:13px;margin-top:25px}.member-preview-lines i{display:block;height:10px;border-radius:99px;background:#9ea6b5}.member-preview-lines i:nth-child(2){width:92%}.member-preview-lines i:nth-child(3){width:76%}.member-preview-lines i:nth-child(4){width:88%}.member-preview-lines i:nth-child(5){width:62%}.member-access-gate{position:absolute;z-index:2;top:50%;left:50%;width:min(760px,calc(100% - 48px));margin:0;padding:38px;border:1px solid rgba(234,221,228,.95);border-radius:14px;background:rgba(255,255,255,.93);box-shadow:0 16px 44px rgba(18,25,54,.18);text-align:center;transform:translate(-50%,-50%);backdrop-filter:blur(6px)}.member-access-gate>span{color:#d71968;font:800 10px Georgia,serif;letter-spacing:.22em}.member-access-gate h2{margin:11px 0 12px;color:#111936;font-size:28px;line-height:1.45}.member-access-gate p{max-width:680px;margin:0 auto 22px;color:#5d6678;font-size:15px;line-height:1.9}.member-access-gate>div{display:flex;justify-content:center;gap:10px}.member-girl-gate{width:min(940px,calc(100% - 40px));margin:38px auto 78px}.profile-scores-summary{grid-template-columns:minmax(140px,220px)!important;max-width:220px}.profile-scores-summary .accent{border-left:0!important}
.member-benefit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:28px 0}.member-benefit-grid article{position:relative;padding:18px;border:1px solid rgba(255,255,255,.16);border-radius:9px;background:rgba(255,255,255,.06)}.member-benefit-grid b{display:block;margin-bottom:7px;color:#f6b9d2;font:700 10px Georgia,serif;letter-spacing:.15em}.member-benefit-grid strong{display:block;color:#fff;font-size:15px}.member-benefit-grid p{margin:7px 0 0!important;color:#b9bfd1!important;font-size:12px!important;line-height:1.7}.member-benefit-grid em{position:absolute;top:13px;right:13px;padding:3px 7px;border-radius:99px;background:#6d5573;color:#fff;font-size:9px;font-style:normal}.member-visual>div>small{display:block;color:#9ca5bc;font-size:11px;line-height:1.7}.member-switch{margin:18px 0 0!important;text-align:center}.member-switch a{color:#d71968;font-weight:800}
.guidance-page{width:min(1180px,calc(100% - 40px));margin:52px auto 100px}.guidance-hero{padding:62px 68px;background:radial-gradient(circle at 78% 26%,rgba(215,25,104,.25),transparent 28%),linear-gradient(135deg,#080b1d,#171a3a 68%,#421b46);color:#fff}.guidance-hero>span,.guidance-section>div>span{color:#e44384;font:800 10px Georgia,serif;letter-spacing:.22em}.guidance-hero h1{margin:10px 0 14px;font:500 43px Georgia,"Yu Mincho",serif}.guidance-hero p{max-width:720px;margin:0;color:#c6c9d5;font-size:15px;line-height:1.85}.guidance-index{display:flex;gap:8px;margin:20px 0 34px;padding:15px;border:1px solid #e3ddd4;background:#fff}.guidance-index a{flex:1;padding:12px 10px;border-radius:5px;color:#17213b;text-align:center;text-decoration:none;font-size:13px;font-weight:700}.guidance-index a:hover{background:#fff1f7;color:#d71968}.guidance-section{display:grid;grid-template-columns:86px minmax(0,1fr);gap:30px;padding:46px 40px;border-top:1px solid #e2dbd2;background:#fff}.guidance-section:last-child{border-bottom:1px solid #e2dbd2}.guidance-number{color:#e8dae0;font:700 42px Georgia,serif}.guidance-section h2{margin:8px 0 14px;color:#111936;font-size:29px}.guidance-section p,.guidance-section li{color:#535d70;font-size:15px;line-height:1.95}.guidance-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:24px}.guidance-cards a{display:grid;gap:6px;padding:18px;border:1px solid #e2dce3;border-radius:7px;color:#17213b;text-decoration:none}.guidance-cards a:hover{border-color:#d71968;box-shadow:0 8px 20px rgba(215,25,104,.08)}.guidance-cards small{color:#747d8d;line-height:1.55}.guidance-note{margin-top:12px;padding:17px 20px;border-left:4px solid #d71968;background:#fbf7f9}.guidance-note p{margin:5px 0 0}.guidance-members{background:#f8f4f7}.guidance-members ul{padding-left:1.3em}.guidance-actions{display:flex;gap:10px;margin-top:22px}.guidance-search-link{display:inline-block;margin-top:14px;color:#1260c9;font-weight:800;text-decoration:none}
@media(max-width:760px){.member-only-badge{top:10px;right:10px}.member-locked-preview{min-height:530px}.member-preview-blur{padding:26px}.member-access-gate{width:calc(100% - 24px);padding:28px 20px}.member-access-gate h2{font-size:23px}.member-access-gate>div,.guidance-actions{flex-direction:column}.member-benefit-grid{grid-template-columns:1fr}.guidance-page{width:calc(100% - 24px);margin-top:24px}.guidance-hero{padding:38px 24px}.guidance-hero h1{font-size:31px}.guidance-index{overflow-x:auto}.guidance-index a{min-width:120px}.guidance-section{grid-template-columns:1fr;gap:8px;padding:34px 22px}.guidance-number{font-size:27px}.guidance-section h2{font-size:24px}.guidance-cards{grid-template-columns:1fr 1fr}}
@media(max-width:460px){.guidance-cards{grid-template-columns:1fr}.member-girl-gate{width:calc(100% - 24px)}}

/* source: v0347.css */
/* Otonavi CMS v0.3.47: 盛り場・エリア確認投票 */
.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.spot-confirmation-panel{border-top:4px solid #e91e68}
.spot-confirmation-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:1.4rem 0;background:#dfe3ec;border:1px solid #dfe3ec}
.spot-confirmation-summary>div{display:flex;min-height:108px;flex-direction:column;align-items:center;justify-content:center;background:#fff;text-align:center;padding:1rem}
.spot-confirmation-summary strong{font-size:clamp(1.5rem,3vw,2.25rem);color:#07112c}.spot-confirmation-summary span{font-size:.85rem;color:#556078;margin-top:.35rem}
.spot-confidence{display:inline-block;margin:0 0 1.25rem;padding:.45rem .8rem;background:#fff0f6;border-left:4px solid #e91e68;font-weight:700;color:#07112c}
.spot-confirmation-form{display:grid;gap:1rem;padding:1.25rem;background:#f7f8fb;border:1px solid #dfe3ec}
.spot-confirmation-form .form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.spot-confirmation-form label{display:grid;gap:.45rem;font-weight:700;color:#07112c}.spot-confirmation-form input,.spot-confirmation-form select,.spot-confirmation-form textarea{width:100%;border:1px solid #cbd2df;background:#fff;padding:.78rem;font:inherit;color:#07112c}
.spot-confirmation-form .check{display:flex;align-items:center;align-self:end;grid-template-columns:auto 1fr}.spot-confirmation-form .check input{width:auto}
.spot-confirmation-comments{margin-top:1.5rem}.spot-confirmation-comments article{padding:1rem 0;border-top:1px solid #dfe3ec}.spot-confirmation-comments article>div{display:flex;gap:.75rem;align-items:center;justify-content:space-between}.spot-confirmation-comments article span{font-size:.82rem;color:#65708a}.spot-confirmation-comments article p{margin:.65rem 0 0;line-height:1.8}
@media(max-width:720px){.spot-confirmation-summary{grid-template-columns:1fr}.spot-confirmation-summary>div{min-height:84px}.spot-confirmation-form .form-row{grid-template-columns:1fr}.spot-confirmation-comments article>div{align-items:flex-start;flex-direction:column;gap:.25rem}}

/* source: v0348.css */
/* v0.3.48: keep card thumbnails visible under the readability overlay. */
.public-body .card-image:before{
  pointer-events:none;
  background:
    linear-gradient(145deg,rgba(38,29,58,.10),rgba(6,8,18,.42)),
    radial-gradient(circle at 70% 35%,rgba(215,25,104,.20),transparent 34%);
}
.public-body .digest-hotel .card-image:before{
  background:
    linear-gradient(145deg,rgba(22,32,55,.08),rgba(6,8,18,.38)),
    radial-gradient(circle at 66% 30%,rgba(212,171,96,.16),transparent 34%);
}
.public-body .digest-spot .card-image:before{
  background:
    linear-gradient(145deg,rgba(22,18,44,.08),rgba(6,8,18,.40)),
    radial-gradient(circle at 35% 43%,rgba(67,90,190,.18),transparent 36%);
}
.public-body .digest-card[data-section="encounter"] .card-image:before,
.public-body .digest-encounter .card-image:before{
  background:
    linear-gradient(145deg,rgba(39,22,52,.08),rgba(6,8,18,.42)),
    radial-gradient(circle at 68% 30%,rgba(222,83,154,.20),transparent 35%);
}

/* source: v0349.css */
/* v0.3.49: hotel-only internal thumbnail library and responsive image pairs. */
.hotel-thumbnail-rules{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1rem}.hotel-thumbnail-rules b{width:100%}.hotel-thumbnail-rules span{padding:.55rem .75rem;border:1px solid #dce2ee;border-radius:999px;background:#f8fafc;font-size:.84rem}.hotel-thumbnail-create{display:grid;grid-template-columns:1fr 1.4fr 1.4fr auto;gap:1rem;align-items:end}.hotel-thumbnail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;padding:1.25rem}.hotel-thumbnail-card{border:1px solid #dce2ee;border-radius:12px;padding:1rem;background:#fff}.hotel-thumbnail-card.is-disabled{opacity:.62}.hotel-thumbnail-previews{display:grid;grid-template-columns:1.65fr 1fr;gap:.65rem}.hotel-thumbnail-previews figure{margin:0}.hotel-thumbnail-previews img{display:block;width:100%;height:170px;object-fit:cover;border-radius:8px;background:#0b1024}.hotel-thumbnail-previews figure:last-child img{height:170px}.hotel-thumbnail-previews figcaption{margin-top:.35rem;color:#657089;font-size:.75rem}.hotel-thumbnail-edit{display:grid;gap:.8rem;margin-top:.9rem}.hotel-thumbnail-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.hotel-thumbnail-edit p{margin:0;color:#657089;font-size:.82rem}.hotel-thumbnail-card>form:last-child{margin-top:.55rem}.hotel-detail-hero .detail-hero-image[style]{background-image:var(--hotel-bg-desktop)}
@media(max-width:1000px){.hotel-thumbnail-create{grid-template-columns:1fr 1fr}.hotel-thumbnail-grid{grid-template-columns:1fr}}
@media(max-width:767px){.hotel-detail-hero .detail-hero-image[style]{background-image:var(--hotel-bg-mobile)}}
@media(max-width:700px){.hotel-thumbnail-create,.hotel-thumbnail-fields{grid-template-columns:1fr}.hotel-thumbnail-grid{padding:.75rem}.hotel-thumbnail-previews{grid-template-columns:1fr 1fr}.hotel-thumbnail-previews img,.hotel-thumbnail-previews figure:last-child img{height:130px}}

/* source: v0350.css */
/* v0.3.50: fast hotel hero image delivery */
.hotel-detail-hero .detail-hero-image.has-hotel-image{background:none;overflow:hidden}
.hotel-detail-hero .detail-hero-image picture,.hotel-detail-hero .detail-hero-image img{display:block;width:100%;height:100%}
.hotel-detail-hero .detail-hero-image picture{position:absolute;inset:0}
.hotel-detail-hero .detail-hero-image img{object-fit:cover;object-position:center}
.hotel-detail-hero .detail-hero-image:after{z-index:1;pointer-events:none}

/* source: v0352.css */
/* Otonavi CMS v0.3.52 — public members board */
.board-hero{
  min-height:280px;
  display:flex;
  align-items:center;
  color:#fff;
  background:
    radial-gradient(circle at 78% 28%,rgba(215,25,104,.26),transparent 27%),
    linear-gradient(135deg,#070b1c 0%,#121832 58%,#25132d 100%);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.board-hero>div{
  width:min(1180px,calc(100% - 48px));
  margin:auto;
  padding:54px 0;
}
.board-hero>div>span{
  display:block;
  margin-bottom:12px;
  color:#ff4a91;
  font:800 11px/1.2 Georgia,"Times New Roman",serif;
  letter-spacing:.22em;
}
.board-hero h1{
  max-width:900px;
  margin:0 0 18px;
  color:#fff;
  font:500 clamp(34px,4vw,52px)/1.3 Georgia,"Yu Mincho","Hiragino Mincho ProN",serif;
  letter-spacing:.02em;
}
.board-hero p{
  max-width:760px;
  margin:0;
  color:#d8dcef;
  line-height:1.9;
}
.board-hero a{color:#fff;text-decoration:underline;text-underline-offset:4px}
.board-shell{
  width:min(1180px,calc(100% - 48px));
  margin:48px auto 84px;
  display:grid;
  grid-template-columns:270px minmax(0,1fr);
  gap:28px;
  align-items:start;
}
.board-sidebar{
  position:sticky;
  top:96px;
  display:grid;
  gap:20px;
}
.board-main,.board-thread-list{min-width:0;display:grid;gap:18px}
.board-panel,
.board-thread-row,
.board-message{
  margin:0;
  border:1px solid #e4ded4;
  background:#fffdf9;
  box-shadow:0 16px 42px rgba(25,19,31,.07);
}
.board-panel{padding:24px}
.board-panel>h2{
  margin:0 0 18px;
  color:#12172e;
  font:700 20px/1.4 Georgia,"Yu Mincho","Hiragino Mincho ProN",serif;
}
.board-category-link{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:0 -8px;
  padding:12px 14px;
  border-bottom:1px solid #eee8df;
  color:#34384b;
  font-weight:700;
  transition:background .18s ease,color .18s ease,padding .18s ease;
}
.board-category-link:first-of-type{border-top:1px solid #eee8df}
.board-category-link:hover{padding-left:18px;background:#faf4f7;color:#d71968}
.board-category-link.is-active{
  padding-left:18px;
  color:#fff;
  background:linear-gradient(100deg,#11172f,#27182e);
  border-color:transparent;
}
.board-category-link.is-active::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:4px;
  background:#f02b7b;
}
.board-category-link small{
  min-width:28px;
  padding:2px 8px;
  border:1px solid currentColor;
  border-radius:999px;
  font-size:11px;
  line-height:1.5;
  text-align:center;
  opacity:.72;
}
.board-rules ul{margin:0;padding:0;list-style:none}
.board-rules li{
  position:relative;
  margin:0;
  padding:10px 0 10px 24px;
  border-bottom:1px solid #eee8df;
  color:#5b5d6d;
  font-size:13px;
  line-height:1.65;
}
.board-rules li:last-child{border-bottom:0}
.board-rules li::before{
  content:"✓";
  position:absolute;
  top:10px;
  left:0;
  color:#d71968;
  font-weight:900;
}
.board-compose{padding:0;overflow:hidden}
.board-compose details{display:block}
.board-compose summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  min-height:66px;
  padding:0 24px;
  color:#fff;
  background:linear-gradient(100deg,#11172f,#28172d);
  font-weight:800;
  cursor:pointer;
  list-style:none;
}
.board-compose summary::-webkit-details-marker{display:none}
.board-compose summary::after{content:"開く";color:#ff6da5;font-size:12px;letter-spacing:.1em}
.board-compose details[open] summary::after{content:"閉じる"}
.board-compose form{padding:26px}
.board-shell .form-stack,
.board-detail-shell .form-stack{display:grid;gap:18px}
.board-shell .form-stack label,
.board-detail-shell .form-stack label{
  display:grid;
  gap:8px;
  color:#25293d;
  font-size:13px;
  font-weight:800;
}
.board-shell .form-stack input,
.board-shell .form-stack select,
.board-shell .form-stack textarea,
.board-detail-shell .form-stack textarea{
  width:100%;
  border:1px solid #d9d9e2;
  border-radius:8px;
  background:#fff;
  color:#17182a;
  padding:13px 14px;
  outline:0;
  transition:border-color .18s ease,box-shadow .18s ease;
}
.board-shell .form-stack textarea,
.board-detail-shell .form-stack textarea{resize:vertical;line-height:1.8}
.board-shell .form-stack input:focus,
.board-shell .form-stack select:focus,
.board-shell .form-stack textarea:focus,
.board-detail-shell .form-stack textarea:focus{
  border-color:#d71968;
  box-shadow:0 0 0 3px rgba(215,25,104,.11);
}
.board-shell .form-stack>small,
.board-detail-shell .form-stack>small{color:#77798a;line-height:1.7}
.board-shell .form-stack .button,
.board-detail-shell .form-stack .button{justify-self:start;min-width:180px}
.board-thread-row{
  display:grid;
  grid-template-columns:54px minmax(0,1fr) 66px;
  gap:18px;
  align-items:center;
  padding:22px 24px;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.board-thread-row:hover{
  transform:translateY(-2px);
  border-color:#e5adc3;
  box-shadow:0 20px 48px rgba(32,20,34,.11);
}
.board-thread-icon{
  width:52px;
  height:52px;
  display:grid;
  place-items:center;
  color:#fff;
  border-radius:50%;
  background:linear-gradient(145deg,#11172f,#d71968);
  font-size:20px;
}
.board-thread-meta{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:7px}
.board-thread-meta span,
.board-thread-meta b{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:3px 9px;
  border-radius:999px;
  font-size:10px;
  line-height:1.4;
}
.board-thread-meta span{color:#5c4b57;background:#f5edf0}
.board-thread-meta b{color:#fff;background:#d71968}
.board-thread-row h2{margin:0 0 6px;font-size:18px;line-height:1.55}
.board-thread-row h2 a{color:#14182f;transition:color .18s ease}
.board-thread-row h2 a:hover{color:#d71968}
.board-thread-row p{margin:0;color:#888999;font-size:12px}
.board-thread-count{
  min-width:58px;
  padding-left:16px;
  border-left:1px solid #eee8df;
  text-align:center;
}
.board-thread-count strong{display:block;color:#12172e;font:700 25px/1.1 Georgia,serif}
.board-thread-count small{display:block;margin-top:5px;color:#8a8b98;font-size:10px}
.board-empty{padding:54px 30px;text-align:center}
.board-empty h2{font-size:25px}
.board-empty p{margin:0;color:#77798a}
.board-locked-card{
  width:min(1040px,calc(100% - 48px));
  margin:54px auto 88px;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(360px,.85fr);
  min-height:420px;
  overflow:hidden;
  border:1px solid #ded9d1;
  background:#fff;
  box-shadow:0 24px 70px rgba(25,19,31,.12);
}
.board-locked-preview{
  position:relative;
  display:grid;
  align-content:center;
  gap:22px;
  padding:56px;
  overflow:hidden;
  background:
    radial-gradient(circle at 22% 18%,rgba(240,43,123,.28),transparent 28%),
    linear-gradient(145deg,#080c20,#1b1f45);
}
.board-locked-preview::after{
  content:"";
  position:absolute;
  inset:0;
  background:rgba(7,11,28,.2);
  backdrop-filter:blur(5px);
}
.board-locked-preview i{
  height:58px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.08);
  border-radius:8px;
}
.board-lock-panel{display:flex;flex-direction:column;justify-content:center;padding:54px 48px}
.board-lock-panel>span{margin-bottom:13px;color:#d71968;font:800 10px Georgia,serif;letter-spacing:.2em}
.board-lock-panel h2{margin-bottom:18px;color:#11162d;font:700 30px/1.45 Georgia,"Yu Mincho",serif}
.board-lock-panel p{margin-bottom:26px;color:#666878;line-height:1.9}
.board-actions{display:flex;flex-wrap:wrap;gap:12px}
.board-detail-shell{width:min(980px,calc(100% - 48px));margin:48px auto 88px;display:grid;gap:20px}
.board-thread-hero{min-height:300px}
.board-thread-hero>div>p{margin-bottom:15px;color:#bfc5db;font-size:12px}
.board-message{overflow:hidden}
.board-message>header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:16px 22px;
  color:#676979;
  background:#f7f3ed;
  border-bottom:1px solid #e8e1d8;
}
.board-message>header>div{display:flex;align-items:center;gap:10px;min-width:0}
.board-message>header strong{color:#151a32}
.board-message>header span{padding:2px 8px;border-radius:999px;color:#9a4565;background:#f5e8ee;font-size:10px}
.board-message>header time{font-size:11px;white-space:nowrap}
.board-message-body{padding:26px 24px;color:#343647;font-size:15px;line-height:2;overflow-wrap:anywhere}
.board-original{border-top:4px solid #d71968}
.board-original .board-message-body{font-size:16px}
.board-reply-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 0 6px;border-bottom:1px solid #dcd5cc}
.board-reply-heading h2{margin:0;color:#11162d;font:700 25px Georgia,"Yu Mincho",serif}
.board-reply-heading a{color:#d71968;font-size:13px;font-weight:800}
.board-pagination{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;padding:24px 0 8px}
.board-pagination a{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 12px;border:1px solid #d8d1c8;border-radius:999px;background:#fff;color:#20243a;font-size:13px;font-weight:800;text-decoration:none}
.board-pagination a:hover,.board-pagination a:focus-visible{border-color:#d71968;color:#d71968}
.board-pagination a.is-current{border-color:#d71968;background:#d71968;color:#fff;pointer-events:none}
.board-reply-form{margin-top:16px;padding:30px}
.board-locked-notice{color:#744057;background:#fff7fa;border-color:#efc8d7;text-align:center}

@media(max-width:900px){
  .board-shell{grid-template-columns:1fr;margin-top:32px}
  .board-sidebar{position:static;grid-template-columns:1fr 1fr}
  .board-locked-card{grid-template-columns:1fr 1fr}
  .board-lock-panel{padding:38px 32px}
}
@media(max-width:680px){
  .board-hero{min-height:230px}
  .board-hero>div{width:calc(100% - 32px);padding:38px 0}
  .board-hero h1{font-size:33px}
  .board-hero p{font-size:13px}
  .board-shell,.board-detail-shell{width:calc(100% - 24px);margin-top:24px;margin-bottom:56px}
  .board-sidebar{grid-template-columns:1fr}
  .board-panel{padding:20px}
  .board-compose{padding:0}
  .board-compose summary{min-height:60px;padding:0 18px}
  .board-compose form{padding:20px}
  .board-thread-row{grid-template-columns:42px minmax(0,1fr);gap:13px;padding:18px 16px}
  .board-thread-icon{width:42px;height:42px;font-size:16px}
  .board-thread-row h2{font-size:16px}
  .board-thread-count{grid-column:2;display:flex;align-items:center;gap:6px;padding:8px 0 0;border:0;border-top:1px solid #eee8df;text-align:left}
  .board-thread-count strong{font-size:18px}
  .board-thread-count small{margin:0}
  .board-locked-card{width:calc(100% - 24px);grid-template-columns:1fr;margin:28px auto 58px}
  .board-locked-preview{min-height:210px;padding:30px}
  .board-lock-panel{padding:32px 24px}
  .board-lock-panel h2{font-size:25px}
  .board-actions{display:grid}
  .board-actions .button{width:100%}
  .board-message>header{align-items:flex-start;padding:14px 16px}
  .board-message>header>div{align-items:flex-start;flex-direction:column;gap:4px}
  .board-message-body{padding:22px 18px;font-size:14px;line-height:1.9}
  .board-original .board-message-body{font-size:15px}
  .board-reply-heading{align-items:flex-start;flex-direction:column;gap:8px}
  .board-reply-form{padding:22px 18px}
  .board-shell .form-stack .button,.board-detail-shell .form-stack .button{width:100%;justify-self:stretch}
}

/* source: v0353.css */
/* Otonavi CMS v0.3.53: official fiction store and character directory */
.fiction-club-hero{max-width:1440px;margin:0 auto;background:radial-gradient(circle at 78% 24%,rgba(215,25,104,.28),transparent 34%),linear-gradient(135deg,#060a1c,#17112f 68%,#25102a);color:#fff;display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:56px;align-items:center;padding:86px clamp(32px,7vw,110px);min-height:520px}.fiction-club-copy>span,.fiction-club-members>header>span,.fiction-club-board-cta span{display:block;color:#ff4a92;font-size:12px;font-weight:800;letter-spacing:.18em}.fiction-club-copy h1{font-family:serif;font-size:clamp(44px,6vw,82px);line-height:1.05;margin:16px 0}.fiction-club-tagline{font-size:clamp(20px,2vw,28px);font-weight:700;margin:0 0 24px}.fiction-club-copy>p:not(.fiction-club-tagline){color:#d9dbea;line-height:1.9;max-width:720px}.fiction-disclosure{margin-top:28px;padding:18px 20px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);border-radius:4px}.fiction-disclosure strong{display:inline-block;color:#fff;background:#d71968;padding:5px 9px;font-size:12px}.fiction-disclosure p{margin:10px 0 0;color:#e7e8ef;line-height:1.7}.fiction-club-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.button-dark-outline{color:#fff!important;border:1px solid rgba(255,255,255,.35);background:transparent}.fiction-club-mark{width:280px;aspect-ratio:1;border:1px solid rgba(255,255,255,.18);display:grid;place-content:center;text-align:center;transform:rotate(4deg);background:linear-gradient(145deg,rgba(255,255,255,.08),rgba(215,25,104,.18));box-shadow:0 32px 80px rgba(0,0,0,.28)}.fiction-club-mark b{font:700 108px/1 serif;color:#ff4a92}.fiction-club-mark span{font-size:12px;letter-spacing:.25em;color:#fff}.fiction-club-members{max-width:1240px;margin:0 auto;padding:84px 30px}.fiction-club-members>header{text-align:center;max-width:760px;margin:0 auto 44px}.fiction-club-members>header h2{font-family:serif;font-size:clamp(34px,4vw,54px);margin:10px 0 12px}.fiction-club-members>header p{color:#62677a;line-height:1.8}.fiction-character-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.fiction-character-card{background:#fff;border:1px solid #e6e0d6;box-shadow:0 14px 36px rgba(27,24,34,.07);min-width:0}.fiction-character-image{height:390px;position:relative;overflow:hidden;background:radial-gradient(circle at 50% 30%,#fff 0,#f8ecf2 42%,#11182b 120%)}.fiction-character-image img{width:100%;height:100%;object-fit:contain;object-position:center bottom;display:block}.fiction-character-image span{position:absolute;left:14px;top:14px;background:#071026;color:#fff;padding:7px 9px;font-size:10px;font-weight:800;letter-spacing:.08em}.fiction-character-content{padding:24px}.fiction-character-title{display:flex;justify-content:space-between;gap:15px;align-items:flex-start}.fiction-character-title small{color:#d71968;font-weight:700}.fiction-character-title h3{font-family:serif;font-size:25px;margin:5px 0 0}.fiction-character-title h3 i{font-size:13px;font-style:normal;font-family:sans-serif;font-weight:400;color:#777}.fiction-character-title>b{white-space:nowrap;font-size:13px;border:1px solid #e4d8df;border-radius:999px;padding:5px 9px}.fiction-character-content dl{display:flex;gap:24px;margin:18px 0;padding:13px 0;border-block:1px solid #ece8e2}.fiction-character-content dl div{display:flex;gap:8px}.fiction-character-content dt{color:#85889a}.fiction-character-content dd{margin:0;font-weight:700}.fiction-character-content>p,.fiction-character-content details p{color:#505568;line-height:1.85}.fiction-character-content details{border-top:1px solid #eee8e2;margin-top:18px;padding-top:15px}.fiction-character-content summary{cursor:pointer;color:#d71968;font-weight:700}.fiction-character-content details div{padding-top:16px}.fiction-character-content details strong{font-size:13px}.fiction-club-board-cta{max-width:1180px;margin:0 auto 90px;padding:42px 48px;background:linear-gradient(110deg,#090e25,#301638);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:35px}.fiction-club-board-cta h2{font-family:serif;font-size:34px;margin:8px 0}.fiction-club-board-cta p{max-width:780px;color:#d9dbea;line-height:1.8}.board-fiction-link{display:flex;flex-direction:column;gap:7px;padding:22px;background:linear-gradient(145deg,#10172c,#30152f);color:#fff!important;text-decoration:none;border:1px solid rgba(255,255,255,.08);box-shadow:0 14px 30px rgba(7,11,28,.14)}.board-fiction-link span{color:#ff579b;font-size:10px;font-weight:800;letter-spacing:.12em}.board-fiction-link strong{font-family:serif;font-size:22px}.board-fiction-link small{color:#d8dbea}.board-thread-icon.is-character{padding:0;overflow:hidden;border-color:#f1b7cf}.board-thread-icon.is-character img,.board-character-avatar img{width:100%;height:100%;object-fit:cover;display:block}.official-fiction-badge{background:#d71968!important;color:#fff!important}.board-message>header{align-items:center}.board-character-avatar{width:52px;height:52px;border-radius:50%;overflow:hidden;flex:0 0 52px;border:2px solid #ff4a92;background:#fff}.board-character-message{border-left:3px solid #d71968}.board-character-message>header div span{color:#d71968;font-weight:800}.fiction-admin-store{margin-bottom:24px}.fiction-admin-character-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.fiction-admin-character-card{display:grid;grid-template-columns:86px minmax(0,1fr) auto;gap:16px;align-items:center;border:1px solid #e2e7ef;border-radius:10px;padding:14px;background:#fff}.fiction-admin-character-card img{width:86px;height:86px;border-radius:50%;object-fit:cover;background:#f5f6f9}.fiction-admin-character-card h3{margin:4px 0}.fiction-admin-character-card p{margin:0 0 5px;color:#667085}.fiction-admin-character-card span{font-size:12px;color:#d71968;font-weight:700}.fiction-admin-character-card small{color:#778}.fiction-image-field{display:grid;grid-template-columns:82px minmax(0,1fr) auto;gap:14px;align-items:end;border:1px solid #e2e7ef;padding:14px;border-radius:10px}.fiction-image-field img{width:82px;height:82px;object-fit:cover;border-radius:8px;background:#f5f6f9}.fiction-image-field label{min-width:0}.fiction-image-field input{width:100%}
@media(max-width:980px){.fiction-club-hero{grid-template-columns:1fr}.fiction-club-mark{display:none}.fiction-character-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fiction-admin-character-grid{grid-template-columns:1fr}}
@media(max-width:680px){.fiction-club-hero{padding:56px 22px;min-height:auto}.fiction-club-copy h1{font-size:44px}.fiction-club-actions{display:grid}.fiction-club-actions .button{text-align:center}.fiction-club-members{padding:58px 18px}.fiction-character-grid{grid-template-columns:1fr}.fiction-character-image{height:360px}.fiction-character-content{padding:20px}.fiction-club-board-cta{margin:0 18px 60px;padding:30px 24px;display:block}.fiction-club-board-cta .button{display:block;text-align:center;margin-top:22px}.fiction-admin-character-card{grid-template-columns:64px minmax(0,1fr)}.fiction-admin-character-card img{width:64px;height:64px}.fiction-admin-character-card .button{grid-column:1/-1}.fiction-image-field{grid-template-columns:64px minmax(0,1fr)}.fiction-image-field img{width:64px;height:64px}.fiction-image-field .button{grid-column:1/-1}}

/* source: v0365.css */
.has-detail-admin-stats{padding-bottom:52px}
.detail-admin-stats{position:fixed;z-index:90;right:0;bottom:0;left:0;color:#fff;background:rgba(7,11,28,.72);border-top:1px solid rgba(255,255,255,.18);box-shadow:0 -8px 28px rgba(7,11,28,.16);backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px)}
.detail-admin-stats-inner{width:min(1240px,calc(100% - 36px));min-height:52px;margin:auto;display:flex;align-items:center;gap:25px;font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap}
.detail-admin-stats-inner b{display:flex;align-items:center;gap:7px;margin-right:auto;color:#fff;font-size:12px}.detail-admin-stats-inner b span{color:#ff4b93;font-size:16px}.detail-admin-stats-inner>span{color:rgba(255,255,255,.7)}.detail-admin-stats-inner strong{margin-left:4px;color:#fff;font-size:14px}
@media(max-width:620px){.has-detail-admin-stats{padding-bottom:48px}.detail-admin-stats-inner{width:100%;min-height:48px;padding:0 14px;gap:16px;overflow-x:auto;font-size:10px}.detail-admin-stats-inner b{font-size:10px}.detail-admin-stats-inner strong{font-size:12px}}

/* source: v0373-public.css */
.character-video-widget{position:fixed;z-index:120;right:calc(var(--character-widget-desktop-right,.8vw) + env(safe-area-inset-right,0px));bottom:calc(var(--character-widget-desktop-bottom,1.6vh) + env(safe-area-inset-bottom,0px));width:min(var(--character-widget-desktop-width,16vw),70vw);max-height:72vh;filter:drop-shadow(0 12px 20px rgba(10,13,28,.22))}
.has-detail-admin-stats .character-video-widget{bottom:calc(var(--character-widget-desktop-bottom,1.6vh) + env(safe-area-inset-bottom,0px) + 52px)}
.character-video-widget video{display:block;width:100%;max-height:72vh;object-fit:contain;pointer-events:none}
.character-video-widget-label{position:absolute;z-index:2;right:31px;top:-25px;padding:4px 8px;border-radius:999px;background:#11162b;color:#fff;font-size:9px;font-weight:700;line-height:1.4;white-space:nowrap;box-shadow:0 4px 12px rgba(10,13,28,.16)}
.character-video-widget-close{position:absolute;z-index:3;right:0;top:-29px;width:27px;height:27px;padding:0;border:0;border-radius:50%;background:#fff;color:#252a3e;font:700 17px/27px sans-serif;cursor:pointer;box-shadow:0 4px 12px rgba(10,13,28,.2)}
.character-video-widget-close:focus-visible{outline:3px solid #ff4b93;outline-offset:2px}
@media(max-width:620px){.character-video-widget{width:min(var(--character-widget-mobile-width,38.5vw),85vw);right:calc(var(--character-widget-mobile-right,1.8vw) + env(safe-area-inset-right,0px));bottom:calc(var(--character-widget-mobile-bottom,.9vh) + env(safe-area-inset-bottom,0px))}.has-detail-admin-stats .character-video-widget{bottom:calc(var(--character-widget-mobile-bottom,.9vh) + env(safe-area-inset-bottom,0px) + 50px)}.character-video-widget-label{font-size:8px}}

/* source: v0374-public.css */
.character-video-widget[hidden]{display:none!important}
.character-video-widget{pointer-events:none;user-select:none;-webkit-user-select:none}
.character-video-widget.is-clickable{pointer-events:auto;cursor:pointer}
.character-video-widget.is-clickable:focus-visible{outline:3px solid #ff4b93;outline-offset:5px;border-radius:12px}
.character-video-widget-close{pointer-events:auto}
.character-video-widget video{user-select:none;-webkit-user-drag:none}
@media(prefers-reduced-motion:reduce){.character-video-widget{filter:drop-shadow(0 8px 15px rgba(10,13,28,.18))}}

/* source: v0375-public.css */
.board-author-visual{width:54px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;justify-self:center}
.board-member-stars{display:block;width:max-content;padding:2px 5px;border:1px solid #d9b85c;border-radius:7px;background:#171b2d;color:#ffd765;font-size:9px;font-weight:900;line-height:1;letter-spacing:.3px;white-space:nowrap;box-shadow:0 3px 8px rgba(17,22,40,.16)}
.board-member-stars.rank-5{border-color:#d9b85c;color:#ffd765}
.board-member-stars.rank-3{border-color:#98a3b7;color:#e4e8ef}
.board-thread-icon.has-member-avatar{padding:0;overflow:hidden;background:#17223d;border:1px solid #d6dbe5;color:#fff;font-weight:900}
.board-thread-icon.has-member-avatar img{display:block;width:100%;height:100%;object-fit:cover}
.board-thread-icon.has-member-avatar span{font-size:19px}
.board-author-visual-detail{width:58px;margin:0;flex:0 0 58px}
.board-member-avatar{display:grid;place-items:center;width:52px;height:52px;overflow:hidden;flex:0 0 52px;padding:0!important;border:1px solid #dce1ea!important;border-radius:50%!important;background:#17223d!important;color:#fff!important;font-size:20px!important;font-weight:900}
.board-member-avatar img{display:block;width:100%;height:100%;object-fit:cover}
.board-message>header .board-member-stars{display:block;padding:2px 5px;border-radius:7px;background:#171b2d;color:#ffd765;font-size:9px}
.board-message>header .board-member-stars.rank-3{color:#e4e8ef}
@media(max-width:620px){.board-author-visual{width:42px}.board-author-visual-detail{width:46px;flex-basis:46px}.board-member-avatar{width:42px;height:42px;flex-basis:42px;font-size:17px!important}.board-member-stars{padding:2px 4px;font-size:8px;letter-spacing:0}}

/* source: v0376-public.css */
.board-rank-effect-defs{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}
.board-avatar-shell{position:relative;display:grid;place-items:center;width:52px;height:52px;border-radius:50%;isolation:isolate}
.board-avatar-shell>.board-thread-icon,.board-avatar-shell>.board-member-avatar{width:100%;height:100%;flex-basis:100%}
.board-author-visual.rank-5{--rank-aura-outer:-8px;--rank-smoke-size:78px;position:relative;isolation:isolate;z-index:0}
.board-author-visual.rank-5>*{position:relative;z-index:3}
.board-author-visual.rank-5::before,.board-author-visual.rank-5::after{content:"";position:absolute;left:50%;bottom:-10px;width:var(--rank-smoke-size);height:var(--rank-smoke-size);border-radius:46% 54% 45% 55%;pointer-events:none;z-index:1;opacity:.44;filter:blur(5px);background:radial-gradient(ellipse at 29% 78%,rgba(118,66,170,.4) 0 9%,transparent 39%),radial-gradient(ellipse at 69% 62%,rgba(102,45,158,.35) 0 12%,transparent 42%),radial-gradient(ellipse at 48% 25%,rgba(73,31,123,.28) 0 10%,transparent 38%);animation:board-rank-smoke-a 6.8s ease-in-out infinite}
.board-author-visual.rank-5::before{transform:translateX(-58%) rotate(-8deg)}
.board-author-visual.rank-5::after{opacity:.32;transform:translateX(-42%) rotate(16deg);animation-name:board-rank-smoke-b;animation-delay:-3.4s}
.board-author-visual.rank-5 .board-avatar-shell::before,.board-author-visual.rank-5 .board-avatar-shell::after{content:"";position:absolute;inset:var(--rank-aura-outer);border-radius:50%;pointer-events:none}
.board-author-visual.rank-5 .board-avatar-shell::before{z-index:-2;background:repeating-conic-gradient(from 8deg,rgba(201,135,255,.72) 0 7deg,rgba(105,47,160,.18) 14deg 27deg,rgba(236,190,255,.5) 34deg 42deg,transparent 48deg 64deg);opacity:.78;filter:url(#board-rank-air) blur(.7px);animation:board-rank-air 8s linear infinite}
.board-author-visual.rank-5 .board-avatar-shell::after{inset:-5px;z-index:-1;border:1px solid rgba(211,153,255,.86);background:radial-gradient(circle,transparent 58%,rgba(135,73,189,.3) 70%,rgba(79,34,127,.04) 76%);box-shadow:0 0 8px rgba(177,105,229,.85),0 0 18px rgba(106,49,162,.52),0 0 28px rgba(68,24,107,.28);animation:board-rank-aura 3.8s ease-in-out infinite}
.board-author-visual.rank-5 .board-thread-icon.has-member-avatar,.board-author-visual.rank-5 .board-member-avatar{border-color:#c487ef!important;box-shadow:0 0 0 1px rgba(235,205,255,.55),inset 0 0 9px rgba(84,31,130,.26)}
.board-author-visual.rank-5 .board-member-stars.rank-5{border-color:#ebc75f;color:#ffe58d;text-shadow:0 0 5px rgba(255,211,78,.82);box-shadow:0 0 7px rgba(232,183,47,.42),0 3px 8px rgba(17,22,40,.22);animation:board-rank-stars 3.2s ease-in-out infinite}
.board-author-visual-detail.rank-5{--rank-aura-outer:-11px;--rank-smoke-size:94px}
.board-author-visual-detail.rank-5::before,.board-author-visual-detail.rank-5::after{bottom:-16px;opacity:.56}
@keyframes board-rank-air{0%{transform:rotate(0deg) scale(.98)}45%{transform:rotate(168deg) scale(1.04)}100%{transform:rotate(360deg) scale(.98)}}
@keyframes board-rank-aura{0%,100%{opacity:.72;transform:scale(.96)}50%{opacity:1;transform:scale(1.05)}}
@keyframes board-rank-smoke-a{0%,100%{transform:translateX(-58%) translateY(7px) rotate(-8deg) scale(.88);opacity:.22}45%{transform:translateX(-64%) translateY(-8px) rotate(4deg) scale(1.08);opacity:.5}72%{transform:translateX(-52%) translateY(-14px) rotate(10deg) scale(.94);opacity:.3}}
@keyframes board-rank-smoke-b{0%,100%{transform:translateX(-42%) translateY(9px) rotate(16deg) scale(.84);opacity:.16}48%{transform:translateX(-34%) translateY(-11px) rotate(3deg) scale(1.12);opacity:.38}76%{transform:translateX(-48%) translateY(-16px) rotate(-7deg) scale(.96);opacity:.24}}
@keyframes board-rank-stars{0%,100%{filter:brightness(.96)}50%{filter:brightness(1.18)}}
@media(max-width:620px){.board-avatar-shell{width:42px;height:42px}.board-author-visual.rank-5{--rank-aura-outer:-5px;--rank-smoke-size:57px}.board-author-visual.rank-5::before{bottom:-7px;opacity:.3;filter:blur(4px)}.board-author-visual.rank-5::after{display:none}.board-author-visual-detail.rank-5{--rank-aura-outer:-7px;--rank-smoke-size:66px}.board-author-visual-detail.rank-5::before{bottom:-9px;opacity:.38}}
@media(prefers-reduced-motion:reduce){.board-author-visual.rank-5::before,.board-author-visual.rank-5::after,.board-author-visual.rank-5 .board-avatar-shell::before,.board-author-visual.rank-5 .board-avatar-shell::after,.board-author-visual.rank-5 .board-member-stars.rank-5{animation:none!important}.board-author-visual.rank-5::after{display:none}.board-author-visual.rank-5::before{opacity:.18;filter:blur(5px)}.board-author-visual.rank-5 .board-avatar-shell::before{filter:blur(1px);opacity:.48}}

/* source: v0377-public.css */
/* Otonavi CMS v0.3.77: enlarge only the five-star master's public avatar. */
.board-author-visual.rank-5{
  width:76px;
  --rank-aura-outer:-9px;
  --rank-smoke-size:96px;
}
.board-author-visual.rank-5 .board-avatar-shell{
  width:70px;
  height:70px;
}
.board-author-visual-detail.rank-5{
  width:92px;
  flex:0 0 92px;
  --rank-aura-outer:-13px;
  --rank-smoke-size:126px;
}
.board-author-visual-detail.rank-5 .board-avatar-shell{
  width:84px;
  height:84px;
}
@media(max-width:620px){
  .board-author-visual.rank-5{
    width:68px;
    --rank-aura-outer:-7px;
    --rank-smoke-size:86px;
  }
  .board-author-visual.rank-5 .board-avatar-shell{
    width:62px;
    height:62px;
  }
  .board-author-visual-detail.rank-5{
    width:76px;
    flex-basis:76px;
    --rank-aura-outer:-9px;
    --rank-smoke-size:98px;
  }
  .board-author-visual-detail.rank-5 .board-avatar-shell{
    width:68px;
    height:68px;
  }
}

/* source: v0378-public.css */
/* Otonavi CMS v0.3.78: enlarge the five-star avatar without enlarging its row. */
.board-author-visual.rank-5{
  width:54px;
  overflow:visible;
}
.board-thread-row>.board-author-visual.rank-5{
  transform:translateX(-6px);
}
.board-author-visual.rank-5 .board-avatar-shell{
  width:70px;
  height:70px;
  min-width:70px;
  min-height:70px;
  flex:0 0 auto;
  aspect-ratio:1;
  margin-right:auto;
  margin-bottom:-18px;
  margin-left:auto;
}
.board-author-visual-detail.rank-5{
  width:58px;
  flex:0 0 58px;
  overflow:visible;
}
.board-author-visual-detail.rank-5 .board-avatar-shell{
  width:84px;
  height:84px;
  min-width:84px;
  min-height:84px;
  margin-bottom:-32px;
}
@media(max-width:620px){
  .board-author-visual.rank-5{
    width:42px;
  }
  .board-author-visual.rank-5 .board-avatar-shell{
    width:62px;
    height:62px;
    min-width:62px;
    min-height:62px;
    margin-bottom:-20px;
  }
  .board-author-visual-detail.rank-5{
    width:46px;
    flex-basis:46px;
  }
  .board-author-visual-detail.rank-5 .board-avatar-shell{
    width:68px;
    height:68px;
    min-width:68px;
    min-height:68px;
    margin-bottom:-26px;
  }
}

/* source: v0379-public.css */
/* Otonavi CMS v0.3.79: larger board avatars and speech-bubble messages. */
.board-thread-row{
  grid-template-columns:84px minmax(0,1fr) auto;
}
.board-thread-row>.board-author-visual{
  width:64px;
  transform:none;
  overflow:visible;
}
.board-thread-row .board-avatar-shell{
  width:64px;
  height:64px;
  min-width:64px;
  min-height:64px;
  flex:0 0 auto;
  aspect-ratio:1;
  margin:0 auto;
}
.board-thread-row>.board-author-visual.rank-3{
  width:68px;
}
.board-thread-row>.board-author-visual.rank-3 .board-avatar-shell{
  width:68px;
  height:68px;
  min-width:68px;
  min-height:68px;
}
.board-thread-row>.board-author-visual.rank-5{
  width:84px;
}
.board-thread-row>.board-author-visual.rank-5 .board-avatar-shell{
  width:84px;
  height:84px;
  min-width:84px;
  min-height:84px;
}

.board-message{
  position:relative;
  display:grid;
  grid-template-columns:96px minmax(0,1fr);
  grid-template-rows:auto auto;
  column-gap:18px;
  margin:0;
  padding:20px 22px;
  overflow:visible;
  border:0;
  background:transparent;
  box-shadow:none;
}
.board-message::before{
  content:"";
  grid-column:2;
  grid-row:1/3;
  z-index:0;
  min-width:0;
  border:1px solid #e4ded4;
  background:#fffdf9;
  box-shadow:0 16px 42px rgba(25,19,31,.07);
}
.board-message::after{
  content:"";
  position:absolute;
  z-index:1;
  left:126px;
  top:48px;
  width:17px;
  height:17px;
  border-bottom:1px solid #e4ded4;
  border-left:1px solid #e4ded4;
  background:#f7f3ed;
  transform:rotate(45deg);
}
.board-message>header{
  display:contents;
}
.board-message>header>.board-author-visual,
.board-message>header>.board-character-avatar{
  grid-column:1;
  grid-row:1/3;
  align-self:start;
  justify-self:center;
  z-index:3;
}
.board-message>header>.board-author-visual{
  width:64px;
  margin:0;
  overflow:visible;
}
.board-message>header>.board-author-visual .board-avatar-shell{
  width:64px;
  height:64px;
  min-width:64px;
  min-height:64px;
  flex:0 0 auto;
  aspect-ratio:1;
  margin:0 auto;
  padding:0;
  border-radius:50%;
  background:transparent;
}
.board-message>header>.board-author-visual.rank-3{
  width:68px;
  flex-basis:68px;
}
.board-message>header>.board-author-visual.rank-3 .board-avatar-shell{
  width:68px;
  height:68px;
  min-width:68px;
  min-height:68px;
}
.board-message>header>.board-author-visual.rank-5{
  width:84px;
  flex:0 0 84px;
}
.board-message>header>.board-author-visual.rank-5 .board-avatar-shell{
  width:84px;
  height:84px;
  min-width:84px;
  min-height:84px;
  margin:0 auto;
}
.board-message>header>.board-character-avatar{
  width:64px;
  height:64px;
  flex:0 0 64px;
}
.board-message .board-member-stars{
  align-self:center;
  margin-right:auto;
  margin-left:auto;
  text-align:center;
}
.board-message>header>div{
  grid-column:2;
  grid-row:1;
  align-self:center;
  z-index:2;
  display:flex;
  min-width:0;
  align-items:center;
  gap:10px;
  padding:16px 110px 13px 20px;
}
.board-message>header time{
  grid-column:2;
  grid-row:1;
  align-self:center;
  justify-self:end;
  z-index:2;
  padding-right:20px;
  font-size:11px;
  white-space:nowrap;
}
.board-message-body{
  grid-column:2;
  grid-row:2;
  z-index:2;
  min-width:0;
  padding:19px 20px 21px;
  border-top:1px solid #e8e1d8;
  color:#343647;
  font-size:15px;
  line-height:1.9;
  overflow-wrap:anywhere;
}
.board-original{
  border-top:0;
}
.board-original::before{
  border-top:4px solid #d71968;
}
.board-original .board-message-body{
  font-size:16px;
}
.board-character-message{
  border-left:0;
}
.board-character-message::before{
  border-left:3px solid #d71968;
}

@media(max-width:680px){
  .board-thread-row{
    grid-template-columns:72px minmax(0,1fr);
    gap:13px;
  }
  .board-thread-row>.board-author-visual{
    width:52px;
  }
  .board-thread-row .board-avatar-shell{
    width:52px;
    height:52px;
    min-width:52px;
    min-height:52px;
  }
  .board-thread-row>.board-author-visual.rank-3{
    width:56px;
  }
  .board-thread-row>.board-author-visual.rank-3 .board-avatar-shell{
    width:56px;
    height:56px;
    min-width:56px;
    min-height:56px;
  }
  .board-thread-row>.board-author-visual.rank-5{
    width:68px;
  }
  .board-thread-row>.board-author-visual.rank-5 .board-avatar-shell{
    width:68px;
    height:68px;
    min-width:68px;
    min-height:68px;
  }
  .board-thread-count{
    grid-column:2;
  }
  .board-message{
    grid-template-columns:76px minmax(0,1fr);
    column-gap:10px;
    padding:14px 10px;
  }
  .board-message::after{
    left:87px;
    top:41px;
    width:15px;
    height:15px;
  }
  .board-message>header>.board-author-visual{
    width:52px;
  }
  .board-message>header>.board-author-visual .board-avatar-shell{
    width:52px;
    height:52px;
    min-width:52px;
    min-height:52px;
  }
  .board-message>header>.board-author-visual.rank-3{
    width:56px;
    flex-basis:56px;
  }
  .board-message>header>.board-author-visual.rank-3 .board-avatar-shell{
    width:56px;
    height:56px;
    min-width:56px;
    min-height:56px;
  }
  .board-message>header>.board-author-visual.rank-5{
    width:68px;
    flex-basis:68px;
  }
  .board-message>header>.board-author-visual.rank-5 .board-avatar-shell{
    width:68px;
    height:68px;
    min-width:68px;
    min-height:68px;
  }
  .board-message>header>.board-character-avatar{
    width:52px;
    height:52px;
    flex-basis:52px;
  }
  .board-message>header>div{
    align-self:start;
    flex-direction:column;
    align-items:flex-start;
    gap:4px;
    padding:13px 66px 10px 14px;
  }
  .board-message>header time{
    align-self:start;
    padding-top:14px;
    padding-right:12px;
    font-size:9px;
  }
  .board-message-body{
    padding:16px 14px 18px;
    font-size:14px;
    line-height:1.85;
  }
  .board-original .board-message-body{
    font-size:15px;
  }
}

/* source: v0395.css */
/* Otonavi CMS v0.3.95: public cast taxonomy and site search */
.site-search-shell{
  width:min(920px,calc(100% - 48px));
  margin:0 auto;
  padding:52px 0 24px;
}
.site-search-form{
  padding:24px;
  border:1px solid #e3dcd2;
  background:#fff;
  box-shadow:0 12px 32px rgba(25,19,31,.05);
}
.site-search-form label{
  display:block;
  margin-bottom:8px;
  color:#55596b;
  font-size:12px;
  font-weight:750;
}
.site-search-form>div{
  display:flex;
}
.site-search-form input{
  min-width:0;
  flex:1;
  height:50px;
  padding:0 15px;
  border:1px solid #d9d3ca;
  border-right:0;
  background:#fff;
  color:#24283b;
  outline:none;
}
.site-search-form input:focus{
  border-color:var(--pink);
  box-shadow:0 0 0 3px rgba(215,25,104,.08);
}
.site-search-form button{
  min-width:108px;
  border:0;
  background:var(--navy);
  color:#fff;
  font-weight:800;
}
.site-search-form button:hover{
  background:var(--pink);
}
.site-search-shell>.public-empty{
  margin-top:24px;
}
.site-search-shell .search-results{
  width:100%;
  margin:0;
  padding:34px 0 0;
}
.cast-type-filter{
  border-top-color:#d71968;
}
@media(max-width:620px){
  .site-search-shell{
    width:calc(100% - 30px);
    padding-top:34px;
  }
  .site-search-form{
    padding:18px;
  }
  .site-search-form>div{
    display:grid;
  }
  .site-search-form input{
    width:100%;
    border-right:1px solid #d9d3ca;
  }
  .site-search-form button{
    min-height:46px;
  }
}

/* source: thumbnail-pairs.css */
/* Paired fallback images: use the same breakpoint as the picture and card sources. */
[data-responsive-thumbnail]{background-image:var(--thumbnail-desktop)}
@media(max-width:767px){[data-responsive-thumbnail]{background-image:var(--thumbnail-mobile,var(--thumbnail-desktop))}}
.article-cover picture{display:block;width:100%;height:100%}

/* source: column-hero.css */
/* Column-only split hero. Keep hotel layouts and their image treatment unchanged. */
.article-page.article-page--split-hero{padding-top:0}
.column-hero{display:grid;grid-template-columns:minmax(0,48%) minmax(0,52%);align-items:stretch;margin:0 0 56px;background:#080c1b;color:#fff}
.column-hero>.column-hero-image{display:grid;align-content:center;width:100%;max-height:none;min-width:0;margin:0;border-radius:0;background:#080c1b;overflow:visible}
.column-hero-image>picture{display:block;width:100%;height:auto;aspect-ratio:16/9}
.column-hero-image img{display:block;width:100%;height:100%;max-height:none;object-fit:contain;object-position:center}
.column-hero-content{display:flex;flex-direction:column;justify-content:center;min-width:0;padding:clamp(28px,3.8vw,64px);overflow-wrap:anywhere}
.column-hero-content .breadcrumbs{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:9px;margin:0 0 28px;color:#c8d0e2;line-height:1.8}
.column-hero-content .breadcrumbs a{color:inherit}
.column-hero-content>.detail-kicker{margin:0 0 14px;color:#e5bb70;font-size:11px;letter-spacing:.14em}
.column-hero-content h1{margin:0;color:#fff;font:600 clamp(28px,2.7vw,46px)/1.5 Georgia,"Yu Mincho",serif;text-align:left;overflow-wrap:anywhere}
.column-hero-content .article-category-links{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 0}
.column-hero-content .article-category-links a{color:#f3f5fa;border-color:#647086}
.column-hero-content .article-byline{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:8px 18px;margin:22px 0 0;color:#bdc7d9;font-size:10px;line-height:1.8}
.article-page--split-hero .column-body-lead{margin:0 0 26px;padding:0 0 24px;border-bottom:1px solid #e1dbd3}
/* A thumbnail must not crop a character's face, even for a future portrait upload. */
.digest-article .card-image{aspect-ratio:16/9;background-size:contain;background-position:center;background-repeat:no-repeat}
@media(max-width:900px){
  .column-hero{grid-template-columns:minmax(0,1fr);margin-bottom:32px}
  .column-hero-content{padding:30px 24px 34px}
  .column-hero-content .breadcrumbs{margin-bottom:20px}
  .column-hero-content h1{font-size:clamp(25px,4.2vw,34px);line-height:1.55}
}
@media(max-width:480px){
  .column-hero-content{padding:26px 20px 30px}
  .column-hero-content h1{font-size:25px}
}

/* Otonavi CMS v0.4.26: source identity above every relay card. */
.otonavi-relay-source{display:flex;grid-column:1/-1;align-items:center;gap:8px;min-width:0;min-height:48px;padding:9px 12px;border-bottom:1px solid #e3e0dc;background:#faf9f7;line-height:1.5}
.otonavi-relay-source-label{flex:none;color:#666b75;font-size:10px;font-weight:600;white-space:nowrap}
.otonavi-relay-source-logo{display:block;flex:none;width:72px;height:28px;object-fit:contain;object-position:center}
.otonavi-relay-source-logo[hidden]{display:none}
.otonavi-relay-source-name{flex:1;min-width:0;color:#151a2d;font-size:12px;font-weight:800;overflow-wrap:anywhere}
.otonavi-relay-source-arrow{flex:none;color:#666b75;font-size:13px}
.otonavi-relay-body>b{margin-top:0}

.otonavi-relay-source-name[hidden]{display:none}
.otonavi-relay-source.is-logo-only .otonavi-relay-source-logo{width:160px;max-width:calc(100% - 64px);object-position:left center;flex:0 1 auto;min-width:0}
.otonavi-relay-source-arrow{margin-left:auto}

.otonavi-relay-source{height:54px;min-height:54px}
.otonavi-relay-source-name{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
