/*
Theme Name: TORII Editorial
Theme URI: https://torii-jp.com/
Author: TORII
Description: TORII日本語TOPページ用の軽量な独立テーマ。
Version: 1.4.3
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: torii-editorial
*/
:root{--paper:#f4f2eb;--ink:#233a37;--muted:#66716c;--line:#ced2c7;--accent:#dce898;--ease:cubic-bezier(.2,.75,.2,1);font-family:'Yu Gothic','Hiragino Kaku Gothic ProN',Meiryo,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:98px}body{margin:0;font-size:15px;line-height:1.8}button,input{font:inherit;color:inherit}button,a{touch-action:manipulation}button{cursor:pointer;border:0;background:none}a{color:inherit;text-decoration:none}button{padding:0}h1,h2,h3,p,figure{margin:0}img{display:block;width:100%;height:100%;object-fit:cover}a,button{-webkit-tap-highlight-color:transparent}[hidden]{display:none!important}:focus-visible{outline:3px solid #71873f;outline-offset:5px}::selection{background:var(--accent);color:var(--ink)}.skip{position:fixed;z-index:50;left:16px;top:12px;padding:12px;background:white;transform:translateY(-150%)}.skip:focus{transform:none}.shell{width:calc(100% - 112px);max-width:1456px;margin-inline:auto}.header{position:sticky;top:0;z-index:30;background:var(--paper);border-bottom:1px solid var(--line);height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 56px;gap:35px}.wordmark{font:700 42px/1 Arial,sans-serif;letter-spacing:-3px;display:inline-flex;align-items:center;gap:22px}.wordmark span{font:12px/1.5 'Yu Gothic',sans-serif;letter-spacing:.1em;border-left:1px solid var(--line);padding-left:22px}.header nav{display:flex;gap:40px;font-size:13px}.header nav a{padding:10px 0;position:relative}.header nav a:after,.text-button:after{content:'';position:absolute;bottom:2px;left:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform 200ms}.header nav a:hover:after,.text-button:hover:after{transform:scaleX(1)}.search-trigger{font-size:13px;display:flex;align-items:center;gap:20px}.search-trigger span{font:30px/1 Arial}
.hero{height:calc(100svh - 100px);min-height:530px;max-height:950px;margin:0 20px;position:relative;isolation:isolate;overflow:hidden;background:#2f5649;color:white}.hero-images,.hero-shade{position:absolute;inset:0;z-index:-2}.hero-image{position:absolute;inset:0;opacity:0;transform:scale(1.045);transition:opacity 650ms ease,transform 1300ms var(--ease);filter:saturate(1.12) contrast(1.045) brightness(1.035)}.hero-image.active{opacity:1;transform:scale(1)}.hero-shade{z-index:-1;background:radial-gradient(ellipse at 18% 18%,rgba(5,24,24,.42),transparent 52%),linear-gradient(0deg,rgba(7,26,23,.69),transparent 38%),linear-gradient(90deg,rgba(8,31,28,.23),transparent 60%)}.hero-copy{position:absolute;top:15%;left:6%;text-shadow:0 2px 20px #132f3970}.hero-copy>p{font-size:14px;letter-spacing:.06em;margin-bottom:12px}.hero h1{font-family:'Yu Mincho','Hiragino Mincho ProN',Georgia,serif;font-size:clamp(36px,3.7vw,62px);font-weight:400;letter-spacing:.055em;line-height:1.5}.hero-link{display:inline-flex;gap:40px;align-items:center;margin-top:24px;font-size:13px;padding:9px 0;border-bottom:1px solid #ffffffa0;transition:gap 200ms}.hero-link:hover{gap:56px}.hero-bottom{position:absolute;bottom:30px;left:6%;right:3%;display:flex;justify-content:space-between;align-items:end;gap:20px}.photo-location{display:flex;align-items:center;gap:13px}.location-mark{font-size:25px;font-weight:300}.photo-location div>span{font-size:11px;color:#f0f3e8}.photo-location p{font-size:17px;letter-spacing:.03em}.hero-choices{display:flex;gap:10px}.hero-choice{width:136px;color:white;text-align:left;padding:7px;background:#14382c38;border:1px solid #ffffff50;transition:background 200ms,transform 250ms,border-color 200ms}.hero-choice img{height:65px;opacity:.8;transition:opacity 200ms;filter:saturate(1.1)}.hero-choice>span{display:flex;justify-content:space-between;align-items:center;font-size:12px;padding:6px 2px 0}.hero-choice .choice-dot{width:5px;height:5px;border-radius:50%;background:transparent}.hero-choice[aria-pressed=true]{background:#f4f2eb;color:var(--ink);border-color:#f4f2eb;transform:translateY(-7px)}.hero-choice[aria-pressed=true] img,.hero-choice:hover img{opacity:1}.hero-choice[aria-pressed=true] .choice-dot{background:var(--ink)}.hero-choice:hover{border-color:white;transform:translateY(-7px)}.hero-edge{position:absolute;right:22px;top:25px;writing-mode:vertical-rl;letter-spacing:.16em;font:10px/1.5 Arial}
.discover{padding-top:70px}.section-top{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:30px}.section-top h2{font-size:26px;line-height:1.5;font-weight:500;letter-spacing:.025em}.section-top p,.sample-label{font-size:12px;color:var(--muted)}.experience-panels{display:flex;gap:14px;height:440px;perspective:1600px}.experience-panel{position:relative;flex:1;min-width:0;overflow:hidden;color:white;text-align:left;isolation:isolate;background:#466253;--pan-x:0px;--pan-y:0px;transition:flex 780ms cubic-bezier(.18,.8,.2,1),box-shadow 700ms}.experience-panel[aria-pressed=true]{flex:2.45;box-shadow:0 22px 32px -22px #162f3b99}.experience-panel img{position:absolute;inset:0;z-index:-2;transform:scale(1.14);transition:transform 1100ms cubic-bezier(.18,.8,.2,1),filter 650ms;filter:saturate(.88) brightness(.88)}.experience-panel[aria-pressed=true] img{transform:translate(var(--pan-x),var(--pan-y)) scale(1.045);filter:saturate(1.06) brightness(1.02)}.experience-panel:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#0b2617a6,transparent 55%)}.experience-panel:hover{transform:none}.experience-panel:hover img{filter:saturate(1.06) brightness(1.02)}.panel-label{position:absolute;left:30px;bottom:34px;right:30px;transform:translateY(8px);transition:transform 650ms cubic-bezier(.18,.8,.2,1)}.panel-label b{font-size:29px;font-weight:400;display:block;white-space:nowrap;letter-spacing:.04em;transition:letter-spacing 700ms}.panel-label small{display:block;font-size:12px;margin-top:10px;white-space:nowrap;opacity:.7;transform:translateY(5px);transition:opacity 500ms,transform 650ms 90ms}.panel-indicator{position:absolute;right:28px;top:28px;width:38px;height:38px;border:1px solid #ffffff80;border-radius:50%;display:grid;place-items:center;font-size:23px;opacity:.7;transform:translate(-4px,4px);transition:transform 550ms,background 350ms,opacity 350ms}.experience-panel[aria-pressed=true] .panel-indicator{background:var(--paper);color:var(--ink);border-color:var(--paper);opacity:1;transform:translate(0,0)}.experience-detail{display:flex;align-items:center;justify-content:space-between;gap:35px;min-height:120px;border-bottom:1px solid var(--line);padding:25px 0}.experience-detail h3{font-size:17px;font-weight:500}.experience-detail p{font-size:13px;color:var(--muted);margin-top:6px}.dark-button{background:var(--ink);color:white;display:inline-flex;justify-content:space-between;align-items:center;gap:38px;min-height:48px;padding:12px 20px;font-size:12px;white-space:nowrap;transition:background 180ms,transform 180ms}.dark-button:hover{background:#3e5548;transform:translateY(-2px)}
.guides{padding-top:68px;padding-bottom:68px}.filter-line{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:15px;padding-bottom:23px}.filters{display:flex;gap:5px;flex-wrap:wrap}.filters button{display:flex;align-items:center;gap:8px;min-height:44px;border-radius:2px;padding:8px 12px;font-size:13px;transition:background 180ms,color 180ms}.filters button:hover{background:#e4e7db}.filters button[aria-pressed=true]{background:var(--ink);color:white}#result-status{font-size:12px;color:var(--muted);white-space:nowrap}.guide-row{width:100%;display:grid;grid-template-columns:150px minmax(0,1fr);gap:20px;text-align:left;align-items:center;padding:22px 0;border-bottom:1px solid var(--line);transition:background 200ms,padding 250ms;animation:row-in 300ms var(--ease) both}.guide-row:hover{background:#e8eadd}.guide-number{font:13px/1 Arial;color:var(--muted)}.guide-copy strong{font-size:20px;font-weight:500}.guide-copy>span{display:block;font-size:12px;color:var(--muted);margin-top:6px}.guide-category{font-size:12px}.guide-state{white-space:nowrap;display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:13px;padding-right:8px;color:var(--muted)}.guide-arrow{font:24px Arial;justify-self:end;transition:transform 200ms}.guide-row:hover .guide-arrow{transform:translate(3px,-3px)}.guide-note{font-size:11px;color:var(--muted);margin-top:18px}.empty{padding:50px 10px}.empty h3{font-size:17px;font-weight:400;margin-bottom:20px}.text-button{position:relative;display:inline-block;font-size:13px;padding:7px 0}.about{border-top:1px solid var(--line);padding-top:50px;padding-bottom:65px;display:grid;grid-template-columns:1fr 1fr;gap:70px}.about .wordmark{font-size:38px}.about h2{font-weight:500;font-size:14px;margin-top:18px}.about p{font-size:14px;line-height:2;margin-bottom:14px;max-width:580px}.about p+p{color:var(--muted);font-size:12px}.about .text-button{margin-top:8px}footer{border-top:1px solid var(--line);padding-block:25px;display:flex;justify-content:space-between;gap:25px;font-size:11px}footer p>span{color:var(--muted);margin-left:25px}footer>div{display:flex;gap:28px}footer button,footer a{font-size:11px}footer button:hover,footer a:hover{text-decoration:underline}
dialog{border:0;padding:32px 40px 40px;background:var(--paper);color:var(--ink);width:min(700px,calc(100% - 80px));max-height:85vh;overflow:auto;box-shadow:0 25px 90px #0d292c44}dialog::backdrop{background:#10292988;backdrop-filter:blur(5px)}.dialog-bar{position:sticky;top:-32px;z-index:2;background:var(--paper);padding-top:16px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:30px}.dialog-bar>span{font:700 20px Arial;letter-spacing:-1px}.dialog-bar button{font-size:12px;padding:8px}dialog h2{font-size:28px;font-weight:500;line-height:1.5;margin-bottom:20px}dialog h3{font-size:15px;margin:25px 0 10px}dialog p,dialog li{font-size:14px;line-height:1.9}dialog ul{padding-left:20px}dialog li{margin:10px 0}dialog a{text-decoration:underline;text-underline-offset:3px}.dialog-note{border-top:1px solid var(--line);padding-top:20px;margin-top:28px;color:var(--muted);font-size:12px!important}.dialog-kicker{color:var(--muted);font-size:12px!important;margin-bottom:10px}.credit{border-top:1px solid var(--line);margin-top:24px;padding-top:4px}.credit small{font-size:11px}.search-field{display:flex;margin-top:10px}.search-field input{min-width:0;flex:1;background:white;border:1px solid var(--line);padding:12px}#search-form label{font-size:13px}@keyframes row-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.hero-image{transform:none}.experience-panel:hover,.dark-button:hover{transform:none}}

.hero-image[src*='onsen']{filter:saturate(.94) contrast(1.045) brightness(1.04)}.hero-image[src*='shrine']{filter:saturate(1.02) contrast(1.025) brightness(1.12)}.guide-copy strong{display:block}
.guide-photo{display:block;width:150px;height:140px;overflow:hidden}.guide-photo img{transition:transform 600ms var(--ease);filter:saturate(1.05) contrast(1.025)}.guide-row:hover .guide-photo img{transform:scale(1.055)}.guide-row .guide-copy{padding-left:8px}.popular{padding-bottom:90px}.popular .section-top{border-top:1px solid var(--line);padding-top:48px;margin-bottom:14px}.periods{display:flex;gap:5px}.periods button{min-width:52px;padding:8px 18px;font-size:13px;transition:color 150ms,background 150ms}.periods button:hover{background:#e4e7db}.periods button[aria-pressed=true]{background:var(--ink);color:white}.ranking-note{font-size:12px;color:var(--muted);margin-bottom:24px}.popular-grid{min-height:450px;display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:28px 24px}.popular-card{text-align:left;min-width:0;animation:row-in 250ms var(--ease) both}.popular-photo{display:block;position:relative;overflow:hidden;height:165px}.popular-photo img{transition:transform 650ms var(--ease);filter:saturate(1.05) contrast(1.025)}.popular-card:hover .popular-photo img{transform:scale(1.06)}.popular-card:first-child{grid-row:span 2;display:flex;flex-direction:column}.popular-card:first-child .popular-photo{flex:1;min-height:340px}.rank{position:absolute;top:14px;left:14px;display:flex;align-items:baseline;justify-content:center;gap:3px;min-width:56px;padding:17px 12px 14px;background:var(--rank-bg,#f6f0e2);color:var(--rank-ink,#252f2a);border:1px solid var(--rank-edge,#8b7958);border-radius:0;box-shadow:0 3px 10px #10291f30,inset 0 0 0 3px var(--rank-bg,#f6f0e2),inset 0 0 0 4px var(--rank-edge,#8b7958);font-family:'Yu Mincho','Hiragino Mincho ProN',serif}.popular-card:first-child .rank{min-width:78px;padding:22px 17px 18px;border-width:1px;box-shadow:0 4px 14px #14221d45,inset 0 0 0 4px var(--rank-bg),inset 0 0 0 5px var(--rank-edge)}.popular-copy{display:block;position:relative;padding:14px 25px 0 0}.popular-copy small{display:block;font-size:12px;color:var(--muted);margin-bottom:5px}.popular-copy strong{display:block;font-size:16px;font-weight:500}.popular-card:first-child .popular-copy strong{font-size:23px}.popular-copy>span{position:absolute;right:0;bottom:2px;font:22px Arial;transition:transform 200ms}.popular-card:hover .popular-copy>span{transform:translate(3px,-3px)}



/* Selection, reading hierarchy and in-page navigation */
.header nav a[aria-current=location]:after{transform:scaleX(1)}
.search-trigger{min-height:44px;padding:0 14px;border:1px solid var(--line);border-radius:2px}
.filter-count{font:11px/1.5 Arial,sans-serif;opacity:.8}
.filters button[aria-disabled=true]{color:var(--muted);cursor:default;background:transparent}
.filters button[aria-disabled=true] .filter-count{font-family:inherit;font-size:10px}
.filter-summary{min-height:54px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:13px;color:var(--muted)}
.filter-summary .text-button{color:var(--ink)}
.guide-copy>.guide-place{margin:0 0 5px;font-size:13px}
.guide-copy strong{font-size:19px;line-height:1.6}
.guide-copy>.guide-summary{font-size:14px;margin-top:6px}
.guide-copy>.guide-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.guide-tags>span{font-size:11px;padding:2px 9px;border:1px solid var(--line);border-radius:2px}
.empty>p{font-size:14px;color:var(--muted);margin-bottom:16px}
.guide-photo:has(img[src*='pottery']),.popular-photo:has(img[src*='pottery']){background:#737670}
.guide-photo img[src*='pottery'],.popular-photo img[src*='pottery']{object-fit:contain}
.detail-photo{margin:0 0 24px}.detail-photo img{height:260px;object-fit:cover}
.detail-photo img[src*='pottery']{object-fit:contain;background:#737670}
.detail-photo figcaption{font-size:11px;color:var(--muted);margin-top:8px}
body:has(dialog[open]){overflow:hidden}
html{scrollbar-gutter:stable}

#guides-title:focus{outline:none}


.hero-hit{position:absolute;inset:0;z-index:0;width:100%;height:100%;cursor:pointer}.hero-hit:focus-visible{outline-offset:-6px}.hero-copy,.hero-bottom{z-index:2}.hero-copy{pointer-events:none}.hero-copy .hero-link{pointer-events:auto}.hero-bottom{bottom:70px}.photo-location button{font-size:17px;text-align:left;border-bottom:1px solid #ffffff66}.highlight-tools{position:absolute;bottom:18px;left:6%;right:3%;z-index:2;display:flex;align-items:center;gap:22px;font-size:11px}.highlight-tools>span{margin-right:auto}.highlight-tools button{color:white;padding:7px 10px;border:1px solid #ffffff66;background:#132f3933;min-height:34px}.hero-choice{width:120px}.hero-choice img{height:52px}
.guide-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 30px}.guide-row{align-items:start;position:relative;gap:20px;padding:24px 0}.guide-row .guide-state{grid-column:2;justify-self:end;margin-top:-34px}.guide-row .guide-tags{padding-right:100px}.guide-copy>.guide-summary{font-size:13px}.guide-copy>.guide-place{font-size:12px}.guide-row .guide-copy{padding:0}.guide-row .guide-state{font-size:11px;gap:10px}.guide-row .guide-arrow{font-size:18px}.photo-source{font-size:11px!important;margin-top:18px}.hero-edge{pointer-events:none}

.photo-location #hero-place{display:block;margin-top:3px}.hero-choice[aria-pressed=true]{transform:none}

.experience-panel:before{content:'';position:absolute;inset:16px;border:0;pointer-events:none;opacity:0;transform:scale(.98);transition:opacity 550ms,transform 700ms;z-index:1;--frame-ink:#f5f0dd;background:linear-gradient(var(--frame-ink),var(--frame-ink)) left top/30px 1px no-repeat,linear-gradient(var(--frame-ink),var(--frame-ink)) left top/1px 30px no-repeat,linear-gradient(var(--frame-ink),var(--frame-ink)) right top/30px 1px no-repeat,linear-gradient(var(--frame-ink),var(--frame-ink)) right top/1px 30px no-repeat,linear-gradient(var(--frame-ink),var(--frame-ink)) left bottom/30px 1px no-repeat,linear-gradient(var(--frame-ink),var(--frame-ink)) left bottom/1px 30px no-repeat,linear-gradient(var(--frame-ink),var(--frame-ink)) right bottom/30px 1px no-repeat,linear-gradient(var(--frame-ink),var(--frame-ink)) right bottom/1px 30px no-repeat;filter:drop-shadow(0 1px 1px #172d2680)}
.experience-panel[aria-pressed=true]:before{opacity:1;transform:scale(1)}
.experience-panel[aria-pressed=true] .panel-label{transform:translateY(0)}
.experience-panel[aria-pressed=true] .panel-label b{letter-spacing:.1em}
.experience-panel[aria-pressed=true] .panel-label small{opacity:1;transform:translateY(0)}
.rank-number{font:400 34px/1 'Yu Mincho','Hiragino Mincho ProN',serif;font-variant-numeric:lining-nums}
.rank-unit{font:11px/1.2 'Yu Mincho','Hiragino Mincho ProN',serif}
.popular-card:first-child .rank-number{font-size:48px}
.popular-card[data-rank='1']{--rank-bg:#f5ecd5;--rank-ink:#453318;--rank-edge:#ad863f}
.popular-card[data-rank='2']{--rank-bg:#f2f1eb;--rank-ink:#303c3c;--rank-edge:#858e89}
.popular-card[data-rank='3']{--rank-bg:#f5ece1;--rank-ink:#513725;--rank-edge:#a37b58}
.popular-card[data-rank='4']{--rank-bg:#faf6eb;--rank-ink:#24382d;--rank-edge:#7c8975}
.popular-card[data-rank='5']{--rank-bg:#faf6eb;--rank-ink:#34382f;--rank-edge:#948a70}
@media(prefers-reduced-motion:reduce){.experience-panel img,.experience-panel[aria-pressed=true] img{transform:none}.panel-label,.panel-label small{transform:none}.experience-panel:before{transform:none}}

.rank:before{content:'';position:absolute;top:8px;left:50%;width:16px;height:2px;transform:translateX(-50%);background:var(--rank-edge)}.popular-card[data-rank='1'] .rank:before{top:10px;width:24px;height:3px;background:#a37a30;box-shadow:0 4px 0 -1px #a37a30}.popular-card[data-rank='1'] .popular-photo{outline:1px solid #b4935866;outline-offset:-7px}

/* Step 1: hide article-like sample UI until real posts exist. */
.torii-home #guides,.torii-home #popular,.torii-home .language-switch,.torii-home .search-trigger,.torii-home #experience-go{display:none!important}

/* Navigation usability: 1.4.2 */
.torii-home .experience-detail{display:none!important}
.torii-home .language-switch{display:inline-flex!important;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;border:2px solid var(--ink);background:#fff;font-weight:700;letter-spacing:.04em;white-space:nowrap}
.torii-home .language-switch:hover{background:var(--ink);color:#fff}
.torii-home .experience-panel{cursor:pointer}
