/*
Theme Name: RankLeaf SEO
Author: Custom Design
Description: 検索流入と読者体験を考えた編集型・SEOコンテンツ向けテーマ。目次、パンくず、関連記事、カテゴリ導線、軽量設計。
Version: 1.1.0
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: rankleaf-seo
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/
:root{--accent:#0b846f;--ink:#1d3539;--muted:#607278;--line:#e4ebe7;--cream:#f8faf7;--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:-apple-system,BlinkMacSystemFont,'Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,sans-serif;line-height:1.7;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}img{max-width:100%;height:auto}button,input{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.container{max-width:1220px;padding:0 30px;margin:0 auto}.screen-reader-text{clip:rect(1px,1px,1px,1px);height:1px;width:1px;overflow:hidden;position:absolute!important;white-space:nowrap}.skip-link:focus{clip:auto;left:10px;top:10px;width:auto;height:auto;padding:10px;background:white;z-index:999}.reading-progress{height:3px;position:fixed;z-index:99;top:0;left:0;right:0;pointer-events:none}.reading-progress span{display:block;width:0;height:100%;background:var(--accent)}.topline{background:#183b3c;color:#c7dad7;font-size:11px;font-weight:700;letter-spacing:.06em}.topline-inner{display:flex;gap:8px;align-items:center;padding-top:8px;padding-bottom:8px}.topline-dot{background:#a9e9ac;width:6px;height:6px;border-radius:50%}.topline-right{margin-left:auto;font-size:10px;letter-spacing:.12em}.site-header{position:sticky;z-index:40;top:0;background:rgba(255,255,255,.96);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;gap:28px;min-height:84px}.site-brand{margin-right:auto;min-width:0}.brand-text{display:flex;align-items:center;gap:11px;font-size:24px;font-weight:900;letter-spacing:-.06em;line-height:1.12;color:var(--ink)}.brand-text small{font-size:8px;letter-spacing:.28em;font-weight:800;color:var(--accent);display:block;margin-top:6px}.brand-icon{border-radius:12px;display:grid;place-items:center;background:var(--accent);color:white;width:41px;height:41px;font-size:24px;line-height:1}.custom-logo{max-width:240px;max-height:60px;width:auto;height:auto}.nav-list{display:flex;align-items:center;gap:25px;list-style:none;margin:0;padding:0}.nav-list a{font-size:13px;font-weight:750;white-space:nowrap}.nav-list li{position:relative}.nav-list .sub-menu{list-style:none;display:none;position:absolute;top:100%;left:-16px;min-width:185px;background:#fff;padding:12px;border-radius:12px;box-shadow:0 15px 45px #183b3c20}.nav-list li:hover .sub-menu,.nav-list li:focus-within .sub-menu{display:block}.sub-menu li{margin:6px}.header-actions{display:flex;gap:12px;align-items:center}.header-search{border:1px solid #d7e4de;padding:10px 16px;border-radius:50px;font-size:12px;font-weight:800}.header-search span{font-size:20px;vertical-align:-1px;margin-left:10px}.menu-toggle{display:none;background:none;border:0;font-size:12px;font-weight:800}.home-hero{overflow:hidden;background:linear-gradient(125deg,#f4faf5,#fbfdfb 61%,#edf8ef);border-bottom:1px solid #e8efeb}.hero-grid{min-height:495px;display:grid;grid-template-columns:1.13fr .87fr;align-items:center;gap:30px}.hero-copy{position:relative;z-index:2;padding:55px 0 66px}.eyebrow{display:inline-flex;align-items:center;gap:10px;color:var(--accent);font-size:11px;letter-spacing:.18em;font-weight:900}.eyebrow-line{display:inline-block;width:28px;height:2px;background:var(--accent)}.hero-copy h1{font-size:clamp(32px,4.1vw,59px);line-height:1.35;letter-spacing:-.055em;margin:25px 0 15px;font-weight:900}.hero-copy>p{color:#637576;font-size:15px;line-height:2;margin:0 0 29px;max-width:480px}.search-form{display:flex;align-items:center;gap:11px;background:#fff;max-width:550px;border:1px solid #dee9e2;padding:7px;border-radius:12px;box-shadow:0 12px 38px #396f4d13}.search-glyph{font-size:24px;padding-left:13px;color:var(--accent)}.search-form input{flex:1;min-width:0;background:transparent;border:0;outline:0;font-size:13px;padding:11px 0;color:var(--ink)}.search-form button{border:0;border-radius:8px;background:var(--accent);color:#fff;font-weight:800;font-size:12px;padding:14px 19px;white-space:nowrap}.search-form button span{margin-left:10px}.hero-topic{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:21px}.hero-topic>span{font-size:10px;color:#7d948a;letter-spacing:.13em;font-weight:800}.hero-topic a{border-bottom:1px solid #b7cbc4;color:#3b6965;font-size:12px;font-weight:700}.hero-visual{position:relative;height:410px;min-width:0}.visual-orbit{border:1px solid #cbe9d0;border-radius:50%;position:absolute;left:12%;top:-15%;width:465px;height:465px}.orbit-two{left:23%;top:-4%;width:355px;height:355px}.visual-card{position:absolute;background:white;border:1px solid #e8efeb;border-radius:20px;box-shadow:0 26px 65px #1f594323}.visual-card-back{height:255px;width:250px;right:3%;top:12%;transform:rotate(11deg);padding:24px;color:#a5b7ae;font-size:10px;letter-spacing:.15em;font-weight:800}.visual-lines{margin-top:58px;display:grid;gap:13px}.visual-lines i{height:8px;border-radius:9px;background:#e9f2ec}.visual-lines i:nth-child(2){width:72%}.visual-lines i:nth-child(3){width:82%}.visual-card-front{left:7%;top:16%;width:320px;height:315px;padding:24px 28px;transform:rotate(-5deg)}.visual-label{font-size:10px;letter-spacing:.16em;font-weight:900;color:var(--accent);display:flex;justify-content:space-between}.visual-label b{font-size:24px}.visual-symbol{height:67px;font-size:94px;line-height:1;color:#b4d7c5;font-family:Georgia,serif}.visual-card-front strong{font-size:26px;letter-spacing:-.07em;line-height:1.5}.visual-foot{border-top:1px solid #edf0ec;position:absolute;left:28px;right:28px;bottom:25px;display:flex;justify-content:space-between;padding-top:15px;font-size:9px;letter-spacing:.12em;color:#839d92;font-weight:800}.visual-sticker{position:absolute;bottom:15px;right:0;width:100px;height:100px;border-radius:50%;display:grid;place-content:center;text-align:center;background:#f4ce77;color:#183b3c;transform:rotate(13deg);font-weight:900;line-height:1.2;font-size:14px;box-shadow:0 12px 24px #a0a8772b}.visual-sticker b{font-size:20px}.category-section{padding:72px 0 10px}.section-top{display:flex;justify-content:space-between;align-items:end;gap:15px;margin-bottom:27px}.section-heading{margin:7px 0 0;font-size:27px;letter-spacing:-.05em;line-height:1.35}.heading-dot{color:var(--accent)}.section-count{font-size:10px;letter-spacing:.14em;color:#8da29b;font-weight:900}.category-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.category-tile{min-height:90px;border:1px solid #dde8e2;background:#fcfefc;border-radius:13px;display:flex;align-items:center;gap:15px;padding:19px 23px;transition:.18s}.category-tile:hover{transform:translateY(-3px);background:#f0faf3;border-color:#a4d1bd}.tile-number{align-self:flex-start;font-size:11px;color:#8cb4a6;font-weight:900}.category-tile strong{font-size:15px;letter-spacing:-.03em}.tile-arrow{margin-left:auto;color:var(--accent);font-size:20px}.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:40px}.home-hero+.container+.content-layout{padding-top:65px}.main-column{min-width:0}.article-section-head{margin-bottom:24px}.card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:23px}.post-card{border:1px solid var(--line);border-radius:15px;overflow:hidden;background:#fff;transition:.2s;min-width:0}.post-card:hover{box-shadow:0 20px 55px #1e514214;transform:translateY(-3px)}.card-cover{display:block;height:202px;overflow:hidden;background:#e8f3ec}.card-cover img{width:100%;height:100%;object-fit:cover;transition:.3s}.post-card:hover .card-cover img{transform:scale(1.04)}.placeholder-art{position:relative;overflow:hidden;height:100%;background:radial-gradient(ellipse at 80% 20%,#b8dfcf,transparent 46%),linear-gradient(120deg,#e6f6ea,#d0e9d9)}.art-spark{position:absolute;right:18%;top:5%;font-size:132px;color:#fff8;transform:rotate(-20deg)}.art-tag{position:absolute;bottom:20px;left:20px;font-size:10px;color:#5d9481;letter-spacing:.17em;font-weight:900}.art-lines{position:absolute;bottom:-45px;right:-45px;border:2px solid #f5fff699;border-radius:50%;width:225px;height:225px}.card-body{padding:23px}.card-meta{display:flex;align-items:center;gap:12px;justify-content:space-between}.card-meta time{font-size:11px;color:#91a09c;font-weight:700}.category-pill{display:inline-block;background:#e6f4eb;color:var(--accent);border-radius:5px;font-size:10px;font-weight:850;padding:5px 9px}.card-title{font-size:17px;letter-spacing:-.045em;line-height:1.65;margin:14px 0 8px}.card-excerpt{font-size:12px;line-height:1.9;color:#778784;min-height:45px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;margin:0 0 17px}.card-link{color:var(--accent);font-size:12px;font-weight:850}.card-link span{margin-left:6px}.sidebar{min-width:0}.sidebar-sticky{position:sticky;top:108px}.sidebar-box,.widget{border:1px solid var(--line);border-radius:13px;padding:23px;margin-bottom:20px}.widget-title{font-size:15px;letter-spacing:-.04em;margin:0 0 19px;padding-bottom:14px;border-bottom:1px solid var(--line)}.sidebar-box .search-form{padding:4px;box-shadow:none}.sidebar-box .search-glyph{display:none}.sidebar-box .search-form button{padding:12px;font-size:11px}.sidebar-box .search-form input{font-size:11px;padding-left:9px}.sidebar-list,.widget ul{list-style:none;margin:0;padding:0}.sidebar-list li,.widget li{font-size:13px;border-bottom:1px solid #edf2ef;padding:12px 0}.sidebar-list li:last-child,.widget li:last-child{border:0}.sidebar-list li a{display:flex;justify-content:space-between}.promo-card{display:block;position:relative;margin:20px 0;padding:25px;background:#193b39;color:white;border-radius:15px;min-height:145px}.promo-card span{display:block;font-size:10px;letter-spacing:.12em;color:#a9d8cb}.promo-card strong{display:block;margin-top:15px;font-size:19px;line-height:1.5}.promo-card em{position:absolute;bottom:18px;right:21px;font-size:24px;font-style:normal}.promo-card:hover{color:#fff}.pagination{margin:38px 0 80px}.nav-links{display:flex;gap:7px;flex-wrap:wrap;align-items:center}.page-numbers{padding:8px 14px;background:#f6faf7;border:1px solid #e1ebe4;border-radius:7px;font-size:13px;font-weight:800}.page-numbers.current,.page-numbers:hover{background:var(--accent);color:white}.listing-page,.reading-page{padding-top:24px}.breadcrumb{font-size:11px;color:#82928d;display:flex;flex-wrap:wrap;align-items:center;gap:9px;padding:12px 0 22px}.breadcrumb span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:350px}.listing-head{padding:28px 0 39px}.listing-head h1{font-size:36px;letter-spacing:-.05em;margin:12px 0}.listing-head>p,.list-desc{color:var(--muted);font-size:14px}.result-title{font-size:13px;color:#546965;border-bottom:1px solid var(--line);padding-bottom:17px;margin-bottom:22px}.article-header{padding:32px 0 32px}.article-header h1{font-size:clamp(28px,3.2vw,42px);line-height:1.47;letter-spacing:-.055em;margin:18px 0 23px}.article-byline{display:flex;flex-wrap:wrap;gap:17px;color:#8a9993;font-size:12px;font-weight:650}.article-lead{background:#f2f8f4;padding:19px;border-left:4px solid var(--accent);border-radius:4px;font-size:14px;line-height:2;margin:26px 0 0}.article-hero-image{margin:0 0 30px;border-radius:15px;overflow:hidden}.article-hero-image img{display:block;width:100%;height:auto}.article-toc{margin:24px 0 40px;background:#f7faf7;border:1px solid #dce9e1;border-radius:13px;padding:27px 32px}.toc-heading{display:flex;justify-content:space-between;padding-bottom:17px;border-bottom:1px solid #dfe9e1}.toc-heading strong{font-size:17px}.toc-heading span{font-size:10px;color:var(--accent);font-weight:900;letter-spacing:.17em}.article-toc ol{list-style:none;margin:14px 0 0;padding:0;counter-reset:toc}.article-toc li{counter-increment:toc;display:flex;gap:11px;margin:12px 0;font-size:13px;font-weight:650}.article-toc li:before{content:counter(toc,decimal-leading-zero);color:var(--accent);font-weight:900;font-size:11px;margin-top:3px}.article-toc li.toc-sub{padding-left:24px;font-weight:400}.entry-content{font-size:15px;line-height:2.15;overflow-wrap:anywhere}.entry-content p{margin:0 0 1.6em}.entry-content h2{font-size:26px;line-height:1.55;letter-spacing:-.045em;padding:18px 0 15px;border-bottom:2px solid #dfeee5;margin:2.25em 0 1.1em;scroll-margin-top:110px}.entry-content h2:before{content:'';display:inline-block;width:8px;height:24px;background:var(--accent);border-radius:2px;vertical-align:-3px;margin-right:12px}.entry-content h3{font-size:20px;letter-spacing:-.035em;margin:2em 0 .9em;padding-left:15px;border-left:3px solid var(--accent);scroll-margin-top:110px}.entry-content h4{font-size:17px}.entry-content a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.entry-content ul,.entry-content ol{padding-left:1.7em;margin-bottom:2em}.entry-content li{margin-bottom:.7em}.entry-content img{height:auto}.entry-content figure{max-width:100%}.entry-content blockquote{border-left:4px solid var(--accent);margin:25px 0;padding:16px 26px;background:#f4f9f5;color:#425a53}.entry-content table{width:100%;border-collapse:collapse;font-size:13px;display:block;overflow-x:auto;white-space:normal;margin:1.7em 0}.entry-content td,.entry-content th{border:1px solid #dbe7df;padding:12px;text-align:left;min-width:90px}.entry-content th{background:#f0f8f2}.entry-content pre{overflow-x:auto;padding:17px;background:#173333;color:white;border-radius:8px}.entry-content .wp-block-image img{border-radius:10px}.article-end{margin-top:50px;padding-top:25px;border-top:1px solid var(--line)}.post-tags{display:flex;flex-wrap:wrap;gap:9px;font-size:12px}.post-tags>a{background:#eff7f1;padding:5px 10px;border-radius:5px;color:var(--accent)}.post-nextprev{border-top:1px solid #edf1ee;margin-top:23px;padding-top:19px;display:flex;flex-direction:column;gap:10px;font-size:13px;color:var(--accent)}.related-section{margin:55px 0 70px}.comments-area{margin-top:40px;padding-top:30px;border-top:1px solid var(--line)}.comments-area .comment-list{list-style:none;padding:0}.comments-area li{padding:15px 0;border-bottom:1px solid var(--line)}.comments-area textarea{width:100%;max-width:100%;border:1px solid #d6e5dc;border-radius:7px}.comments-area input[type=submit]{background:var(--accent);border:0;color:white;padding:11px 25px;border-radius:6px}.empty-note{background:#f7faf7;padding:27px;border-radius:14px;margin:15px 0 60px}.missing-page{padding-top:35px;padding-bottom:100px;max-width:800px}.error-number{font-size:155px;font-weight:900;line-height:1.4;letter-spacing:-.1em;color:#d6ebdd}.error-number span{color:var(--accent)}.missing-page h1{font-size:30px}.missing-page p{color:#637b70}.missing-page .search-form{margin:35px 0}.back-link{color:var(--accent);font-weight:800}.site-footer{background:#193738;color:#fff;margin-top:80px}.footer-top{display:flex;justify-content:space-between;padding-top:70px;padding-bottom:70px}.footer-message h2{font-size:30px;line-height:1.55;letter-spacing:-.04em;margin:8px 0}.footer-message p{color:#b4ceca;font-size:12px}.footer-links h3{font-size:11px;color:#b6d4c8;letter-spacing:.18em}.footer-nav{list-style:none;margin:0;padding:0;font-size:13px;line-height:2.7}.copyright{display:flex;justify-content:space-between;border-top:1px solid #426161;padding-top:24px;padding-bottom:24px;color:#9dbbb5;font-size:11px}.muted{color:var(--muted)}
@media(max-width:1050px){.header-inner{gap:15px}.nav-list{gap:12px}.hero-visual{transform:scale(.85)}.content-layout{grid-template-columns:minmax(0,1fr) 250px;gap:24px}}
@media(max-width:780px){.container{padding:0 20px}.topline-right{display:none}.header-inner{min-height:68px}.site-nav{display:none;position:absolute;left:0;right:0;top:100%;padding:12px 20px 25px;background:#fff;box-shadow:0 18px 35px #163e331c}.site-nav.is-open{display:block}.nav-list{display:block}.nav-list li{border-bottom:1px solid #e6ede6}.nav-list li a{display:block;padding:12px}.nav-list .sub-menu{position:static;display:block;box-shadow:none;padding:0 0 10px 12px}.menu-toggle{display:flex;align-items:center;gap:5px}.header-search{padding:8px 11px}.hero-grid{display:block;min-height:auto}.hero-copy{padding:45px 0 48px}.hero-visual{display:none}.hero-copy h1{font-size:35px}.category-section{padding:44px 0 10px}.category-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.content-layout{display:block}.home-hero+.container+.content-layout{padding-top:50px}.sidebar{display:none}.card-grid{gap:16px}.section-heading{font-size:25px}.site-footer{margin-top:50px}}
@media(max-width:540px){.container{padding:0 17px}.brand-text{font-size:18px}.brand-icon{width:35px;height:35px}.brand-text small{font-size:7px}.header-search{font-size:0}.header-search span{font-size:20px;margin:0}.hero-copy h1{font-size:31px}.hero-copy>p{font-size:13px}.hero-topic{gap:8px}.hero-topic>span{width:100%}.search-form button{padding:13px 12px}.search-form button span{display:none}.category-tiles{gap:9px}.category-tile{padding:13px;min-height:70px;gap:8px}.category-tile strong{font-size:12px}.tile-number{font-size:9px}.card-grid{grid-template-columns:1fr}.card-cover{height:205px}.section-count{display:none}.listing-head h1{font-size:28px}.article-header{padding:12px 0 20px}.article-header h1{font-size:28px}.article-byline{gap:8px}.article-toc{padding:18px}.entry-content{font-size:14px}.entry-content h2{font-size:22px}.entry-content h3{font-size:18px}.footer-top{display:block;padding-top:45px;padding-bottom:45px}.footer-links{margin-top:35px}.copyright{font-size:10px;gap:10px}}

/* V1.1 external job finder: fresh editorial green language */
.header-job-link{display:inline-flex;align-items:center;gap:9px;padding:10px 16px;background:#0b846f;color:#fff;border-radius:999px;font-size:12px;font-weight:850;white-space:nowrap;line-height:1.3}
.header-job-link:hover{background:#066957;color:#fff}
.job-redirect-section{padding:32px 0 70px;background:#fff}
.job-redirect-container{background:#ecf7f1;border:1px solid #d9ebe1;padding:31px 36px;border-radius:23px;box-shadow:0 10px 35px #20594b0b}
.job-redirect-head{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:21px}
.job-redirect-kicker{font-size:11px;letter-spacing:.15em;color:#0b846f;font-weight:900}
.job-redirect-head h2{font-size:clamp(21px,2.8vw,29px);letter-spacing:-.045em;margin:7px 0}
.job-redirect-head p{font-size:13px;margin:0;color:#66847d}
.job-redirect-symbol{font-size:40px;color:#52a58c}
.job-redirect-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:10px;align-items:end}
.job-redirect-form label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:850;color:#3f6d60}
.job-redirect-form select{display:block;width:100%;min-height:49px;border:1px solid #d5e8df;border-radius:12px;padding:9px;background:#fff;color:#22453d;font-size:13px}
.job-redirect-form button{min-height:49px;border:0;border-radius:12px;padding:10px 20px;background:#0b846f;color:#fff;font-size:12px;font-weight:850;white-space:nowrap}
.job-redirect-form button:hover{background:#066957}
.job-redirect-disclaimer{font-size:11px;margin:15px 0 0;color:#66847d}
.front-static-content{max-width:940px;margin:25px auto 80px}
@media(max-width:1050px){.job-redirect-form{grid-template-columns:repeat(3,minmax(0,1fr))}.job-redirect-form button{grid-column:1/-1}}
@media(max-width:780px){.header-job-link{padding:8px 11px;font-size:11px}.job-redirect-section{padding:25px 0 42px}.job-redirect-container{padding:25px 19px}.job-redirect-form{grid-template-columns:1fr 1fr}.job-redirect-form button{grid-column:1/-1}}
@media(max-width:540px){.header-job-link{font-size:10px;gap:3px;padding:8px 9px}.header-job-link span{display:none}.job-redirect-form{grid-template-columns:1fr}.job-redirect-head p{font-size:12px}.job-redirect-symbol{display:none}.job-redirect-head h2{font-size:22px}.job-redirect-disclaimer{font-size:10px}}

.front-static-heading{font-size:clamp(26px,3vw,38px);margin:32px 0 8px;letter-spacing:-.04em}
