/*
Theme Name: 社労なび - オリジナルデザイン 第3案
Theme URI: https://sharonavi.jp/
Author: BizPlatform
Description: 社労なびトップページ第3案をベースとしたWordPress専用テーマ。初期版・未公開のデモフォームと仮掲載情報を含みます。
Version: 0.1.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: sharonavi
*/
:root{--green:#17614d;--deep:#174e40;--deeper:#0c382f;--forest:#1e6b55;--mint:#eaf4ee;--mint2:#f3f9f4;--cream:#fbfaf6;--yellow:#f0b442;--ink:#24352e;--muted:#66766d;--line:#e1e8df;--white:#fff;--shadow:0 14px 44px rgba(14,59,44,.075);--radius:19px}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:#fff;color:var(--ink);font-family:'Noto Sans JP','Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;font-size:15px;line-height:1.83}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}img{display:block;max-width:100%}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.035em}h2{font-size:clamp(26px,3vw,38px);line-height:1.4}h3{line-height:1.55}.wrap{width:min(1160px,calc(100% - 48px));margin:auto}.section{padding:98px 0}.section--soft{background:#f7faf6}.section--cream{background:var(--cream)}.section-top{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:32px}.eyebrow{font-size:11px;font-weight:900;letter-spacing:.16em;color:var(--green);display:block;text-transform:uppercase;margin-bottom:6px}.section-intro{color:var(--muted);font-size:15px;line-height:1.95;max-width:680px}.section-head{margin-bottom:32px}.section-head h2{margin-bottom:12px}.underline{background:linear-gradient(transparent 68%,#f6df99 0)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;border:1px solid transparent;border-radius:9px;padding:15px 24px;font-weight:800;min-height:54px;transition:transform .2s,box-shadow .2s,background .2s;white-space:nowrap}.btn:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(17,69,51,.13)}.btn:focus-visible,a:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}.btn-yellow{background:var(--yellow);color:#34270c}.btn-green{background:var(--green);color:#fff}.btn-outline{border-color:#bad4c5;color:var(--green);background:#fff}.btn-link{font-size:13px;color:var(--green);font-weight:800;white-space:nowrap}.arrow{display:inline-block;font-size:20px;line-height:1}
.demo-bar{background:#f9ebc7;color:#655018;text-align:center;font-size:11px;padding:6px 12px;font-weight:800;letter-spacing:.04em}
.header{background:white;position:sticky;top:0;z-index:40;border-bottom:1px solid #e9eee8;box-shadow:0 3px 18px rgba(0,0,0,.025)}.header-inner{height:86px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{display:flex;align-items:center;gap:10px;flex-shrink:0}.brand-mark{width:37px;height:37px;border-radius:10px;background:var(--green);display:grid;place-items:center;color:white;font-size:24px;font-weight:900;line-height:1}.brand strong{color:var(--deep);font-size:25px;letter-spacing:-.065em;line-height:1.2}.brand small{font-size:10px;display:block;letter-spacing:.015em;color:#819186;margin-top:2px}.global-nav{display:flex;gap:25px;align-items:center;margin-left:auto}.global-nav a{font-weight:800;font-size:12px;color:#354a3e;white-space:nowrap}.global-nav a:hover{color:var(--green)}.header .btn{padding:11px 18px;min-height:45px;font-size:12px}.hamburger{display:none;border:none;background:transparent;color:var(--green);font-size:25px;line-height:1;width:42px;height:42px}
.hero{background:linear-gradient(115deg,#f4f8f2 10%,#e9f2e9 63%,#f7f7ee 100%);position:relative;overflow:hidden}.hero::before{position:absolute;content:"";width:390px;height:390px;right:-150px;top:-160px;border:75px solid rgba(120,164,126,.12);border-radius:50%}.hero-inner{min-height:630px;padding:67px 0 73px;display:grid;grid-template-columns:1.04fr .96fr;gap:50px;align-items:center}.hero-note{color:var(--green);font-weight:900;font-size:12px;letter-spacing:.055em;margin-bottom:20px;display:inline-flex;align-items:center;gap:8px}.hero-note::before{content:"";display:inline-block;width:24px;height:1px;background:var(--green)}.hero h1{font-size:clamp(36px,4vw,57px);line-height:1.47;letter-spacing:-.058em;color:#154b3b;font-weight:900;margin:0 0 20px}.hero h1 .em{color:#aa7016;background:linear-gradient(transparent 73%,#f4daa1 0)}.hero .desc{font-size:16px;color:#485b4d;margin-bottom:23px;line-height:2.05;max-width:500px}.pills{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:30px}.pill{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid #e1e9e1;border-radius:99px;padding:7px 13px;font-size:12px;font-weight:800;color:#37604a}.pill::before{content:'✓';color:var(--green);font-weight:900}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero-sub{font-size:11px;color:#6e7d71;margin-top:14px}.hero-media{position:relative;align-self:stretch;min-height:460px;display:flex;align-items:center}.hero-photo{width:100%;height:485px;object-fit:cover;object-position:center;border-radius:165px 18px 18px 18px;background:#c5d7c7 url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA4MDAgNzAwIiByb2xlPSJpbWciIGFyaWEtbGFiZWw9IuebuOirh+OBruOCpOODqeOCueODiCI+CjxkZWZzPjxsaW5lYXJHcmFkaWVudCBpZD0iYmciIHgxPSIwIiB5MT0iMCIgeDI9IjEiIHkyPSIxIj48c3RvcCBzdG9wLWNvbG9yPSIjZTZlZWU1Ii8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjYjljZmJlIi8+PC9saW5lYXJHcmFkaWVudD48bGluZWFyR3JhZGllbnQgaWQ9IndpbiIgeDE9IjAiIHgyPSIwIiB5MT0iMCIgeTI9IjEiPjxzdG9wIHN0b3AtY29sb3I9IiNjZmU2ZGEiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiNmOGZiZjgiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz4KPHJlY3Qgd2lkdGg9IjgwMCIgaGVpZ2h0PSI3MDAiIGZpbGw9InVybCgjYmcpIi8+PHJlY3QgeD0iODUiIHk9IjU4IiB3aWR0aD0iNjI1IiBoZWlnaHQ9IjQxMCIgcng9IjI1IiBmaWxsPSIjZmVmZGY4IiBvcGFjaXR5PSIuNyIvPjxyZWN0IHg9IjExNSIgeT0iODIiIHdpZHRoPSI1NjAiIGhlaWdodD0iMjc1IiByeD0iMTAiIGZpbGw9InVybCgjd2luKSIvPjxwYXRoIGQ9Ik0zOTAgODJWMzU3TTExNSAyMjFINjc1IiBzdHJva2U9IiNmMWY3ZjEiIHN0cm9rZS13aWR0aD0iMTciLz48Y2lyY2xlIGN4PSIyNDAiIGN5PSIyODYiIHI9IjYyIiBmaWxsPSIjY2RkZmQxIiBvcGFjaXR5PSIuNyIvPjxwYXRoIGQ9Ik03MTAgNDgwcS05Mi0xNDggMC0yNzAiIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzZjOTg3ZCIgc3Ryb2tlLXdpZHRoPSIyMiIgb3BhY2l0eT0iLjQiLz4KPGVsbGlwc2UgY3g9IjQwMCIgY3k9IjU5OCIgcng9IjMzMCIgcnk9IjQ5IiBmaWxsPSIjNzM5MDdjIiBvcGFjaXR5PSIuMjMiLz4KPHBhdGggZD0iTTEwNSA1NDVRMTA1IDQzNSAyNDUgNDM0UTM2NSA0NDcgMzcwIDU1MyIgZmlsbD0iIzIyNGY0NSIvPjxyZWN0IHg9IjE0NyIgeT0iMzUzIiB3aWR0aD0iMTg1IiBoZWlnaHQ9IjE0NSIgcng9Ijc3IiBmaWxsPSIjZjJjYmIyIi8+PHBhdGggZD0iTTE1NSAzODhRMTM3IDI5MCAyNDYgMjg4UTM0MSAzMDYgMzI0IDM5OFEzMDAgMzU3IDI2NyAzNTJRMjE3IDM5OCAxNTUgMzg4IiBmaWxsPSIjMzAzYzM4Ii8+CjxwYXRoIGQ9Ik00MzIgNTYxUTQzMyA0MzYgNTY2IDQzOFE2NzkgNDQ2IDcwMCA1NzEiIGZpbGw9IiNmNWY1ZTgiLz48cGF0aCBkPSJNNTAwIDM2MHE0LTkyIDc5LTk0cTc3IDQgNzcgOTZxLTE1IDg0LTc4IDkycS03Mi0xMC03OC05NCIgZmlsbD0iI2U3Yjk5NSIvPjxwYXRoIGQ9Ik00OTkgMzYxcS0yOS0xMDYgNzAtMTEycTEwOC04IDEwMCAxMTFxLTQzLTE4LTU2LTUzcS00NiA0NS0xMTQgNTQiIGZpbGw9IiMzMzNkMzgiLz4KPHJlY3QgeD0iMTk0IiB5PSI1MzAiIHdpZHRoPSI0MTAiIGhlaWdodD0iMzgiIHJ4PSIxOSIgZmlsbD0iI2ZmZmZmZiIvPjxyZWN0IHg9IjM1NSIgeT0iNDY0IiB3aWR0aD0iMTcyIiBoZWlnaHQ9IjkwIiByeD0iMTAiIGZpbGw9IiNmNGY5ZjYiIHN0cm9rZT0iI2IxYzViOSIgc3Ryb2tlLXdpZHRoPSI2Ii8+PHBhdGggZD0iTTM2NSA1NTBoMTYxIiBzdHJva2U9IiM2YjhlNzgiIHN0cm9rZS13aWR0aD0iNiIvPjxyZWN0IHg9IjM4OCIgeT0iNDg0IiB3aWR0aD0iMTA0IiBoZWlnaHQ9IjkiIHJ4PSI1IiBmaWxsPSIjYThjN2I0Ii8+PHJlY3QgeD0iMzg4IiB5PSI1MDUiIHdpZHRoPSI3NyIgaGVpZ2h0PSI5IiByeD0iNSIgZmlsbD0iI2NjZGRkMSIvPgo8Y2lyY2xlIGN4PSIxMDEiIGN5PSI0OTAiIHI9IjEyIiBmaWxsPSIjZTVhZDQzIi8+PGNpcmNsZSBjeD0iNzI2IiBjeT0iNDI3IiByPSIxNiIgZmlsbD0iI2U1YWQ0MyIvPgo8L3N2Zz4K') center/cover no-repeat;box-shadow:0 25px 55px rgba(30,78,54,.17)}.media-ring{position:absolute;border:2px solid #9bbba3;border-radius:50%;width:140px;height:140px;right:-27px;top:0;z-index:-1;opacity:.5}.float-info{position:absolute;bottom:24px;left:-35px;background:white;box-shadow:var(--shadow);padding:16px 20px;border-radius:14px;display:flex;align-items:center;gap:13px;min-width:225px}.float-icon{width:46px;height:46px;border-radius:50%;background:var(--mint);color:var(--green);display:grid;place-items:center;font-size:23px}.float-info strong{font-size:15px;color:var(--deep)}.float-info small{display:block;font-size:11px;color:var(--muted)}
.trust{border-bottom:1px solid var(--line);background:white}.trust-inner{display:grid;grid-template-columns:repeat(3,1fr);padding:24px 0}.trust-item{display:flex;gap:14px;align-items:center;justify-content:center;border-right:1px solid var(--line)}.trust-item:last-child{border:0}.trust-ic{width:45px;height:45px;display:grid;place-items:center;border-radius:50%;background:var(--mint2);color:var(--green);font-size:20px}.trust-item strong{display:block;font-size:14px}.trust-item small{font-size:11px;color:var(--muted)}
.about-layout{display:grid;grid-template-columns:.76fr 1.24fr;gap:68px;align-items:start}.about-copy{padding-top:14px}.about-copy .small-caption{font-size:13px;color:var(--green);font-weight:800}.pain-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.pain{background:#fff;border:1px solid #e8ede7;border-radius:15px;padding:21px 21px;min-height:125px;box-shadow:0 6px 26px rgba(20,57,40,.035);display:flex;align-items:flex-start;gap:13px}.pain-icon{color:#c18a32;font-size:20px;flex-shrink:0;line-height:1.35}.pain span{font-size:14px;font-weight:700;line-height:1.85}.about-btm{background:#eaf3eb;border-radius:14px;padding:23px 30px;margin-top:28px;display:flex;justify-content:space-between;align-items:center;gap:18px}.about-btm strong{color:var(--deep);font-size:17px}.about-btm small{display:block;color:#6f8574;font-size:12px;margin-top:4px}
.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}.service{background:#fff;border:1px solid #e6ece5;border-radius:18px;padding:28px 23px;box-shadow:0 10px 24px rgba(22,60,43,.03);transition:transform .2s,box-shadow .2s}.service:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.service-ic{width:54px;height:54px;border-radius:15px;display:grid;place-items:center;background:#edf4ec;color:var(--green);font-size:26px;margin-bottom:21px}.service h3{font-size:17px;margin-bottom:9px}.service p{color:var(--muted);font-size:12px;line-height:1.9;margin-bottom:0}.service a{display:inline-block;color:var(--green);font-weight:800;font-size:12px;margin-top:20px}
.search-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.search-card{background:#fff;border:1px solid #e4ebe3;border-radius:17px;padding:29px;min-height:218px}.search-card-title{display:flex;align-items:center;gap:10px;margin-bottom:20px}.search-card-title .num{background:#eaf3ed;color:var(--green);border-radius:11px;display:grid;place-items:center;width:40px;height:40px;font-size:19px;font-weight:900}.search-card h3{font-size:17px;margin:0}.tags{display:flex;flex-wrap:wrap;gap:9px}.tag{background:#f7faf7;border:1px solid #dde9df;color:#466354;padding:7px 12px;border-radius:7px;font-size:12px;font-weight:700;transition:background .2s}.tag:hover,.tag.active{background:#e5f2e8;border-color:#9fcbab;color:var(--green)}.search-notice{font-size:11px;color:#809184;margin-top:21px;text-align:right}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:23px;position:relative}.step{position:relative;background:#fff;border-radius:15px;padding:28px 23px 25px;border:1px solid var(--line)}.step::after{content:'→';position:absolute;top:49%;right:-23px;transform:translateY(-50%);font-size:21px;color:#91bba3;z-index:2}.step:last-child::after{display:none}.step-num{font-weight:900;font-size:12px;color:var(--green);letter-spacing:.08em}.step-ic{font-size:31px;color:var(--green);margin-top:11px;margin-bottom:12px}.step h3{font-size:15px;margin-bottom:8px}.step p{font-size:12px;line-height:1.9;color:var(--muted);margin:0}.steps-note{text-align:center;font-size:13px;color:var(--green);font-weight:800;margin:24px 0 0}
.offices-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:27px}.office-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.office{border:1px solid #e4ebe3;border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 6px 23px rgba(30,65,50,.05)}.office-banner{height:126px;display:flex;align-items:center;justify-content:center;background:linear-gradient(125deg,#e6f3e7,#dbece6);font-size:40px;color:var(--green)}.office:nth-child(2) .office-banner{background:linear-gradient(135deg,#f2e7d2,#eef4ea)}.office:nth-child(3) .office-banner{background:linear-gradient(135deg,#e3ebf5,#edf4e7)}.office-body{padding:23px}.office-area{font-size:11px;font-weight:800;color:var(--green)}.office h3{font-size:16px;margin:7px 0 10px}.office p{font-size:12px;color:var(--muted);min-height:46px}.mini-tags{display:flex;gap:5px;flex-wrap:wrap}.mini-tags span{background:var(--mint);border-radius:4px;padding:4px 8px;color:var(--green);font-size:10px;font-weight:800}.sample-label{margin-top:15px;font-size:11px;color:#748279}
.price-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:55px;align-items:center}.price-description .highlight{display:inline-block;background:#e8f3e8;border-radius:8px;padding:7px 12px;font-size:12px;color:var(--green);font-weight:900;margin-bottom:20px}.price-table{width:100%;background:#fff;border-collapse:collapse;border-radius:15px;overflow:hidden;box-shadow:var(--shadow)}.price-table th,.price-table td{padding:16px 20px;border-bottom:1px solid #e6ebe4;text-align:left}.price-table thead{background:#e8f2ea;color:#235840;font-size:12px}.price-table tr:last-child td{border:0}.price-table td{font-size:13px}.price-table td:nth-child(2){font-weight:900;color:var(--green)}.price-note{font-size:10px;color:#718076;line-height:1.7;margin-top:12px}
.guide-layout{display:grid;grid-template-columns:1fr 1fr;gap:28px}.guide-tile{border-radius:19px;overflow:hidden;background:#eef5ee;min-height:290px;display:flex;flex-direction:column;justify-content:end;padding:32px;position:relative}.guide-tile:nth-child(2){background:#eef1eb}.guide-tile::before{content:'✦';position:absolute;right:27px;top:5px;color:#b8d3bb;font-size:132px;opacity:.45}.guide-kicker{font-size:11px;color:var(--green);font-weight:900;letter-spacing:.12em}.guide-tile h3{font-size:22px;color:var(--deep);margin:8px 0}.guide-tile p{font-size:12px;color:#536b58;max-width:350px}.guide-tile a{font-size:12px;font-weight:900;color:var(--green);margin-top:12px}
.news-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:45px}.news-list{padding:0;margin:0;list-style:none}.news-list li{border-bottom:1px solid #e7eee7;padding:16px 0;display:flex;gap:18px;align-items:flex-start}.news-list time{font-size:11px;font-weight:800;color:var(--green);flex:0 0 92px;padding-top:2px}.news-list span{font-size:13px;color:#4c5e50;font-weight:600}.news-column h3{font-size:18px;margin-bottom:10px;display:flex;align-items:center;gap:7px}.news-column h3::before{content:'';width:5px;height:21px;background:var(--yellow);border-radius:5px}.news-placeholder{font-size:11px;color:#869488;margin-top:12px}
.cta{background:linear-gradient(130deg,#1e634d,#104031);color:#fff;position:relative;overflow:hidden}.cta::before,.cta::after{content:'';position:absolute;border:1px solid rgba(255,255,255,.1);width:480px;height:480px;border-radius:50%;right:-180px;top:-250px}.cta::after{width:270px;height:270px;right:40px;top:50px}.cta-inner{position:relative;text-align:center;padding:89px 0 97px;z-index:2}.cta .eyebrow{color:#e8c679}.cta h2{color:#fff;font-size:clamp(29px,3.4vw,41px);margin-bottom:16px}.cta p{max-width:600px;margin:0 auto 26px;color:#e6f0e9;font-size:14px}.cta-actions{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}.cta .btn-outline{color:#fff;border-color:#bed5c7;background:transparent}
.contact-preview{background:#f5faf6;border:1px solid #dce7de;padding:27px;border-radius:16px;max-width:760px;margin:0 auto}.contact-preview h3{font-size:21px;margin-bottom:8px}.contact-preview p{font-size:12px;color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:22px}.field{display:flex;flex-direction:column;gap:6px}.field.wide{grid-column:1/-1}.field label{font-size:12px;font-weight:900;color:#425b49}.field input,.field select,.field textarea{min-height:49px;padding:10px 13px;border-radius:8px;border:1px solid #ccdbcf;background:#fff;color:#324235;width:100%;font-size:13px}.field textarea{min-height:94px}.contact-preview .btn{margin-top:22px}.contact-note{font-size:10px!important;margin:12px 0 0;color:#8d7563!important}
.footer{background:#14382f;color:#d5e4d9}.footer-inner{padding:58px 0;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:55px}.footer .brand strong{color:#fff}.footer .brand-mark{background:rgba(255,255,255,.14)}.footer .brand small{color:#b6cbbd}.footer p{font-size:12px;margin-top:17px;color:#c2d3c5}.footer h3{font-size:14px;color:#fff;margin-bottom:15px}.footer ul{list-style:none;margin:0;padding:0;display:grid;gap:12px;font-size:12px}.footer a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding:19px 0;font-size:10px;color:#aac5b4;text-align:center}
@media(max-width:1120px){.global-nav{gap:14px}.global-nav a{font-size:11px}.hero-inner{gap:26px}.hero h1{font-size:44px}}
@media(max-width:920px){.global-nav{display:none;position:absolute;left:0;right:0;top:86px;padding:15px 24px 22px;background:#fff;box-shadow:0 20px 27px rgba(0,0,0,.1);flex-direction:column;align-items:stretch;gap:0}.global-nav.open{display:flex}.global-nav a{display:block;padding:11px;font-size:14px;border-bottom:1px solid #eaf0e9}.hamburger{display:block}.header-action{margin-left:auto}.hero-inner{grid-template-columns:1fr 1fr;min-height:560px}.hero h1{font-size:clamp(30px,4.1vw,42px)}.hero-photo{height:390px}.hero-media{min-height:390px}.float-info{left:-18px}.about-layout{gap:25px}.service-grid{grid-template-columns:repeat(2,1fr)}.steps{gap:10px}.step{padding:21px 16px}.step::after{right:-13px}.price-layout{gap:25px}.header-inner{height:86px}}
@media(max-width:700px){.wrap{width:min(100% - 36px,520px)}.section{padding:65px 0}.section-top{align-items:start;flex-direction:column;gap:7px}.header-inner{height:71px}.brand strong{font-size:22px}.brand-mark{width:34px;height:34px}.brand small{font-size:9px}.header .btn{min-height:40px;padding:9px 12px;font-size:10px}.global-nav{top:71px}.hero-inner{grid-template-columns:1fr;gap:24px;padding:54px 0 45px;min-height:0}.hero h1{font-size:clamp(33px,8vw,44px)}.hero .desc{font-size:14px}.hero-media{min-height:320px;max-width:520px}.hero-photo{height:330px;border-radius:130px 18px 18px 18px;object-position:center}.float-info{left:8px;bottom:0;padding:10px 13px;min-width:0}.float-icon{width:38px;height:38px;font-size:19px}.float-info strong{font-size:12px}.float-info small{font-size:10px}.hero-actions .btn{width:100%}.trust-inner{grid-template-columns:1fr;gap:12px;padding:23px 0}.trust-item{border:0;justify-content:start}.trust-ic{width:41px;height:41px}.about-layout,.price-layout{grid-template-columns:1fr;gap:20px}.pain-grid{grid-template-columns:1fr 1fr;gap:10px}.pain{padding:17px 13px;min-height:126px;gap:8px}.pain span{font-size:12px}.about-btm{align-items:start;flex-direction:column;padding:22px}.service-grid,.search-grid,.guide-layout,.news-grid,.form-grid{grid-template-columns:1fr}.service{padding:23px}.search-card{padding:23px}.steps{grid-template-columns:1fr 1fr;gap:13px}.step::after{display:none}.step{padding:22px 18px}.office-grid{grid-template-columns:1fr}.office-banner{height:100px}.office p{min-height:0}.offices-head{align-items:start;gap:15px}.price-table th,.price-table td{padding:12px 10px;font-size:11px}.guide-tile{min-height:240px}.news-list li{gap:10px}.news-list time{flex-basis:80px}.news-list span{font-size:12px}.cta-inner{padding:65px 0 70px}.footer-inner{grid-template-columns:1fr 1fr;gap:25px}.footer-inner>div:first-child{grid-column:1/-1}.field.wide{grid-column:auto}.contact-preview{padding:20px}.section-head h2{font-size:29px}}
@media(max-width:390px){.header .header-action{display:none}.hero h1{font-size:34px}.steps{grid-template-columns:1fr}.pain-grid{grid-template-columns:1fr}.pain{min-height:0}.footer-inner{grid-template-columns:1fr}.footer-inner>div:first-child{grid-column:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Version 2: searchable portal and editorial design, preserving v1 color palette */
.portal-search{background:linear-gradient(180deg,#f7faf6,#edf5ef);padding-top:80px}
.portal-search-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:32px}
.portal-search-head h2{margin-bottom:10px}.search-head-icon{width:78px;height:78px;border-radius:23px;background:#e5f0e8;color:#17614d;font-size:66px;line-height:1;display:grid;place-items:center;transform:rotate(-8deg)}
.portal-panel{background:#fff;padding:28px 32px 19px;border-radius:22px;border:1px solid #e2eae1;box-shadow:0 20px 55px rgba(16,65,47,.09)}
.portal-panel-top{display:flex;align-items:center;gap:15px;padding-bottom:23px;border-bottom:1px solid #edf0eb}
.portal-round{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:#eaf4ee;color:#17614d;font-weight:900;font-size:17px}
.portal-panel-top strong{display:block;font-size:18px;color:#163c30}.portal-panel-top small{color:#6c7b72;font-size:12px;display:block}
.portal-panel-badge{margin-left:auto;color:#17614d;background:#eaf4ee;border-radius:99px;padding:7px 12px;font-size:11px;font-weight:900}
.portal-fields{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:13px;align-items:end;margin:23px 0 16px}
.portal-fields label{font-weight:800;font-size:12px;color:#416153;display:block}
.portal-fields select{display:block;width:100%;min-width:0;margin-top:8px;padding:15px 13px;background:#fafcf9;border:1px solid #d9e4dc;border-radius:10px;color:#304737;font-size:13px;appearance:auto}
.portal-fields .btn{min-height:51px;white-space:nowrap;font-size:13px;padding:13px 18px}
.quick-tags{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding-top:16px;border-top:1px solid #edf0eb}
.quick-label{color:#78897b;font-size:11px;font-weight:800;margin-right:5px}
.quick-topic{padding:7px 14px;border-radius:99px;color:#33634d;background:#f3f8f3;border:1px solid #dfebe1;font-size:12px;font-weight:700;transition:background .2s}
.quick-topic:hover,.quick-topic:focus-visible{background:#e5f2e6;outline-color:#eab23f}
.portal-demo{margin:15px 0 0;color:#849286;font-size:11px}
.portal-topic-head{text-align:center;margin:70px 0 25px}.portal-topic-head h3{font-size:27px;margin-bottom:5px;color:#173e32}.portal-topic-head p{font-size:14px;color:#77887c;margin:0}
.portal-topic-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}
.portal-topic{display:block;background:#fff;border:1px solid #e3ece4;border-radius:18px;padding:28px 23px 25px;transition:transform .2s,box-shadow .2s;box-shadow:0 8px 22px rgba(27,72,48,.04)}
.portal-topic:hover{transform:translateY(-5px);box-shadow:0 14px 26px rgba(24,77,48,.1)}
.portal-topic-symbol{display:grid;place-items:center;font-size:28px;width:62px;height:62px;color:#17614d;background:#e8f3ed;border-radius:18px;margin-bottom:20px}
.portal-topic:nth-child(2) .portal-topic-symbol{background:#fff5df;color:#a87512}
.portal-topic:nth-child(3) .portal-topic-symbol{background:#e7f0f6;color:#276a88}
.portal-topic:nth-child(4) .portal-topic-symbol{background:#f0ebe8;color:#885f50}
.portal-topic small{font-size:10px;letter-spacing:.16em;color:#9daea1;font-weight:900}
.portal-topic h3{margin:6px 0 8px;font-size:19px}.portal-topic p{font-size:12px;color:#748477;line-height:1.8;min-height:42px;margin:0 0 17px}
.portal-link{color:#17614d;font-size:12px;font-weight:900}
.portal-more{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:18px;padding:22px 25px;background:#e3efe6;border-radius:14px}
.portal-more strong{display:block;font-size:14px;color:#245642}.portal-more small{display:block;font-size:12px;color:#698774}
.portal-more-chips{display:flex;flex-wrap:wrap;gap:8px}.portal-more-chips span{background:#fff;padding:7px 10px;border-radius:8px;color:#38694f;font-size:11px;font-weight:800}
.office-photo-1{background:linear-gradient(135deg,#bfd9cc,#8ab3a2)}.office-photo-2{background:linear-gradient(135deg,#e8d2a8,#b9b886)}.office-photo-3{background:linear-gradient(135deg,#bdd2d5,#7dabb5)}
.office.office .office-banner{height:140px;position:relative;justify-content:center;align-items:center;display:flex;flex-direction:column;overflow:hidden}
.office-banner::before{content:'';position:absolute;width:160px;height:160px;border:27px solid rgba(255,255,255,.28);border-radius:50%;right:-18px;top:-72px}
.office-monogram{font-weight:900;letter-spacing:.1em;font-size:31px;color:#fff;text-shadow:0 3px 9px rgba(0,0,0,.09)}
.office-photo-label{font-size:10px;font-weight:900;color:#fefefe;letter-spacing:.11em}
.editorial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:16px}
.editorial{border:1px solid #e7eee7;border-radius:17px;overflow:hidden;background:#fff;box-shadow:0 7px 22px rgba(24,74,50,.05)}
.editorial-visual{height:175px;display:flex;flex-direction:column;align-items:start;justify-content:end;padding:22px 25px;position:relative;overflow:hidden}
.editorial-visual::after{content:'';width:190px;height:190px;border:37px solid rgba(255,255,255,.24);border-radius:40px;position:absolute;right:-40px;top:-80px;transform:rotate(25deg)}
.edit-1{background:linear-gradient(125deg,#a2c5b6,#e5e8ca)}.edit-2{background:linear-gradient(125deg,#ded2aa,#b0c8bf)}.edit-3{background:linear-gradient(125deg,#90b3b2,#d0dfd1)}
.editorial-visual span{z-index:1;color:#214b3a;font-size:23px;font-weight:900}.editorial-visual b{z-index:1;color:#fff;font-size:10px;letter-spacing:.21em}
.editorial-body{padding:24px}.editorial-body small{display:inline-block;color:#17614d;background:#eaf4ee;padding:3px 8px;border-radius:4px;font-size:11px;font-weight:800}
.editorial-body h3{font-size:17px;margin:12px 0 9px}.editorial-body p{font-size:12px;color:#7d8b81;min-height:54px}.editorial-body>span{color:#b5bcb4;font-size:11px}
.editorial-note{color:#839184;font-size:11px;margin-bottom:48px}
@media(max-width:1000px){.portal-fields{grid-template-columns:1fr 1fr}.portal-fields .btn{width:100%}.portal-topic-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.portal-search{padding-top:60px}.search-head-icon{display:none}.portal-search-head{margin-bottom:23px}.portal-panel{padding:18px}.portal-panel-top{align-items:start}.portal-panel-top strong{font-size:14px}.portal-panel-badge{display:none}.portal-fields{grid-template-columns:1fr;gap:15px}.portal-fields select{font-size:15px}.portal-topic-grid,.editorial-grid{grid-template-columns:1fr}.portal-topic{padding:19px 20px}.portal-topic-head{margin-top:48px}.portal-topic-head h3{font-size:24px}.portal-more{flex-direction:column;align-items:start}.editorial-visual{height:140px}.editorial-body{padding:20px}}
/* WordPress integration */
.admin-bar .header{top:32px}
@media(max-width:782px){.admin-bar .header{top:46px}}
.wp-content-area{min-height:55vh;padding:72px 0;background:#f7faf6}
.wp-article{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:clamp(22px,5vw,55px);box-shadow:var(--shadow);margin-bottom:20px}
.wp-article h1{font-size:clamp(25px,3.4vw,40px);color:var(--deep)}
.wp-article h2{font-size:clamp(23px,2.8vw,33px)}
.wp-article a{color:var(--green);text-decoration:underline}
.wp-article img{height:auto}
.wp-article .post-meta{font-size:12px;color:var(--muted)}
.wp-article .entry-content{overflow-wrap:anywhere}
.wp-content-area .navigation{margin:20px 0}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}



/* 税なびと同じ追従ボタン */
.heroBnrs {
    position: fixed;
    right: 20px;
    bottom: 100px;
    z-index: 9999;
    text-align: right;
}

/* スマートフォン表示の調整 */
@media (max-width: 767px) {
    .heroBnrs {
        right: 12px;
        bottom: 16px;
        max-width: calc(100vw - 24px);
    }

    .heroBnrs > p:first-child {
        display: none !important;
    }

    .heroBnrs .yubi {
        display: none;
    }

    .heroBnrs a {
        padding: 8px 12px !important;
        font-size: 12px !important;
    }
}

/* 指マークのアニメーション */
.heroBnrs .yubi {
    display: inline-block;
    font-size: 34px;
    vertical-align: middle;
    margin-right: 10px;
    animation: yubiMove 1s ease-in-out infinite;
    filter: drop-shadow(0 2px 3px rgba(0, 0, 0, 0.4));
}

@keyframes yubiMove {
    0%, 100% {
        transform: translateX(0);
    }
    50% {
        transform: translateX(8px);
    }
}

/* Sharonavi: WPForms 7 styling, scoped to the home contact section */
.contact-preview #wpforms-7.wpforms-container,
.contact-preview #wpforms-7.wpforms-container-full {
    width: 100%;
    max-width: none;
    margin: 20px 0 0;
}

.contact-preview #wpforms-7 .wpforms-field-container {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 18px;
    row-gap: 18px;
}

.contact-preview #wpforms-7 .wpforms-field-container > .wpforms-field {
    min-width: 0;
    padding: 0;
    margin: 0;
}

/* Fields 5 onward are topic, details, and consent in the current form. */
.contact-preview #wpforms-7 .wpforms-field-container > .wpforms-field:nth-child(n+5) {
    grid-column: 1 / -1;
}

.contact-preview #wpforms-7 .wpforms-field-label {
    display: block;
    color: #425b49;
    font-size: 13px;
    font-weight: 800;
    line-height: 1.7;
    margin-bottom: 7px;
}

.contact-preview #wpforms-7 .wpforms-field-sublabel,
.contact-preview #wpforms-7 .wpforms-field-description {
    color: #66766d;
    font-size: 11px;
}

.contact-preview #wpforms-7 .wpforms-field-container input[type="text"],
.contact-preview #wpforms-7 .wpforms-field-container input[type="email"],
.contact-preview #wpforms-7 .wpforms-field-container input[type="tel"],
.contact-preview #wpforms-7 .wpforms-field-container input[type="number"],
.contact-preview #wpforms-7 .wpforms-field-container select,
.contact-preview #wpforms-7 .wpforms-field-container textarea {
    display: block;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 49px;
    padding: 11px 13px;
    border: 1px solid #ccdbcf;
    border-radius: 8px;
    background: #fff;
    color: #324235;
    box-shadow: none;
    font-size: 14px;
    line-height: 1.5;
}

.contact-preview #wpforms-7 .wpforms-field-container textarea {
    min-height: 112px;
    resize: vertical;
}

.contact-preview #wpforms-7 .wpforms-field-container input:focus,
.contact-preview #wpforms-7 .wpforms-field-container select:focus,
.contact-preview #wpforms-7 .wpforms-field-container textarea:focus {
    border-color: #17614d;
    outline: 2px solid rgba(23, 97, 77, .17);
    outline-offset: 0;
}

.contact-preview #wpforms-7 .wpforms-field-row {
    width: 100%;
    max-width: none;
}

.contact-preview #wpforms-7 .wpforms-field-checkbox ul {
    margin: 0;
    padding: 0;
}

.contact-preview #wpforms-7 .wpforms-field-checkbox label {
    color: #425b49;
    font-size: 13px;
    line-height: 1.7;
}

.contact-preview #wpforms-7 .wpforms-submit-container {
    margin-top: 24px;
    padding: 0;
}

.contact-preview #wpforms-7 button[type="submit"],
.contact-preview #wpforms-7 input[type="submit"] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 54px;
    padding: 14px 26px;
    border: 1px solid #17614d;
    border-radius: 9px;
    background: #17614d;
    color: #fff;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.5;
    box-shadow: none;
    cursor: pointer;
    transition: background-color .2s, transform .2s;
}

.contact-preview #wpforms-7 button[type="submit"]:hover,
.contact-preview #wpforms-7 input[type="submit"]:hover {
    border-color: #0c382f;
    background: #0c382f;
    color: #fff;
    transform: translateY(-1px);
}

.contact-preview #wpforms-7 button[type="submit"]:focus-visible,
.contact-preview #wpforms-7 input[type="submit"]:focus-visible {
    outline: 3px solid #f0b442;
    outline-offset: 3px;
}

@media (max-width: 700px) {
    .contact-preview #wpforms-7 .wpforms-field-container {
        grid-template-columns: minmax(0, 1fr);
        row-gap: 16px;
    }

    .contact-preview #wpforms-7 .wpforms-field-container > .wpforms-field {
        grid-column: 1 / -1;
    }

    .contact-preview #wpforms-7 button[type="submit"],
    .contact-preview #wpforms-7 input[type="submit"] {
        width: 100%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .contact-preview #wpforms-7 button[type="submit"],
    .contact-preview #wpforms-7 input[type="submit"] {
        transition: none;
    }
}
