/*
Theme Name: 労樹 roju・NextPass ナチュラルデザイン
Author: 労樹社会保険労務士事務所
Version: 3.1.0
Description: 緑と白の明るいデザイン。roju労務管理とNextPass障害年金の2サービス対応。
*/
:root{--green:#075c3d;--mint:#edf7f0;--gold:#c7a15a;--ink:#21382e}*{box-sizing:border-box}body{margin:0;color:var(--ink);font-family:'Noto Sans JP','Hiragino Kaku Gothic ProN',Meiryo,sans-serif;background:#fff;line-height:1.85}a{color:var(--green)}.wrap{max-width:1160px;margin:auto;padding:0 22px}.topbar{background:var(--green);color:white;text-align:center;font-size:13px;padding:5px}.header{background:#fff;box-shadow:0 3px 18px #1233;position:relative;z-index:2}.header .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:12px;padding-bottom:12px}.identity{text-decoration:none;color:var(--green);font-size:18px;font-weight:800;line-height:1.4}.identity small{display:block;font-size:11px;letter-spacing:1px}.menu{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.menu a{text-decoration:none;font-weight:700;font-size:13px}.phone{background:var(--green);color:#fff!important;padding:9px 16px;border-radius:40px}.hero{background:linear-gradient(100deg,#f1f9f3 5%,#fff 70%);overflow:hidden}.hero .wrap{display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:35px;min-height:475px}.eyebrow{color:var(--green);font-weight:800;letter-spacing:2px}.hero h1{font-family:serif;font-size:clamp(29px,4vw,52px);line-height:1.5;margin:10px 0}.hero h1 em{font-style:normal;color:var(--green)}.hero p{font-size:16px}.hero img{width:100%;max-height:470px;object-fit:contain;object-position:bottom}.btn{display:inline-block;text-decoration:none;background:var(--green);color:#fff;border-radius:35px;padding:12px 27px;font-weight:800;margin:12px 10px 0 0}.btn.alt{background:#fff;color:var(--green);border:2px solid var(--green)}.section{padding:75px 0}.section.tint{background:#f5faf6}.section-title{text-align:center;margin:0 0 12px;color:var(--green);font-size:clamp(26px,3vw,35px)}.section-lead{text-align:center;margin:0 auto 38px;max-width:800px}.cards{display:grid;grid-template-columns:1fr 1fr;gap:28px}.card{background:#fff;border:1px solid #e0eae3;border-radius:18px;overflow:hidden;box-shadow:0 10px 32px #14351e12;padding:30px}.card img.logo{height:90px;max-width:100%;object-fit:contain;object-position:left}.card h3{font-size:25px;color:var(--green)}.card .price{font-size:31px;color:#b32319;font-weight:900}.chip{display:inline-block;border-radius:30px;background:#e8f4e9;padding:3px 13px;color:var(--green);font-weight:800;font-size:12px}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.mini{border-radius:15px;background:#fff;border:1px solid #dcebe0;padding:22px}.mini h3{color:var(--green)}.feature-image{width:100%;border-radius:18px;box-shadow:0 12px 30px #1232}.fees{width:100%;border-collapse:collapse}.fees th,.fees td{padding:12px;border-bottom:1px solid #dde7e0;text-align:left;vertical-align:top}.fees th{background:#eef7f0}.muted{font-size:13px;color:#5c6a62}.footer{background:#073d2b;color:#fff;padding:42px 0}.footer a{color:#fff}.footer .wrap{display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap}.rnp{max-width:1160px!important;margin:auto!important}.rnp-nav{display:none!important}.rnp-hero{background:#edf7f0!important;color:var(--green)!important;border-radius:16px!important}.rnp-card{border-radius:16px!important;box-shadow:0 8px 24px #1432!important}.rnp-btn{background:var(--green)!important;border-radius:40px!important}.rnp-grid{gap:25px!important}@media(max-width:760px){.header .wrap{display:block}.menu{margin-top:14px;gap:10px}.menu a{font-size:12px}.hero .wrap{grid-template-columns:1fr;gap:0;padding-top:35px}.hero img{max-height:290px}.cards,.three{grid-template-columns:1fr}.section{padding:45px 0}.card{padding:20px}}

.card img.logo{display:block;width:100%;height:190px;max-height:none;object-fit:contain;object-position:center;margin:16px auto 12px}.mail-link{background:#eef8f1;border:1px solid #075c3d;border-radius:30px;padding:9px 14px}.contact-section{background:#eaf5ee}.contact-buttons{display:flex;justify-content:center;gap:18px;flex-wrap:wrap}.contact-buttons .btn{text-align:center;min-width:260px;font-size:19px;line-height:1.5}.contact-buttons small{font-size:14px}.contact-mail{background:#fff;color:#075c3d;border:2px solid #075c3d}.mobile-contact{display:none}@media(max-width:760px){.card img.logo{height:160px}.menu .phone,.menu .mail-link{flex:1;text-align:center;white-space:nowrap}.contact-buttons{display:grid;grid-template-columns:1fr;gap:8px}.contact-buttons .btn{margin:0;min-width:0}.mobile-contact{position:fixed;bottom:0;left:0;right:0;z-index:1000;display:grid;grid-template-columns:1fr 1fr;box-shadow:0 -3px 18px #0002}.mobile-contact a{padding:13px 5px;text-align:center;text-decoration:none;font-size:15px;font-weight:800;background:#075c3d;color:#fff}.mobile-contact a+a{background:#f4faf6;color:#075c3d}body{padding-bottom:54px}}

/* Japanese smiling people photo layout */
.hero-photos{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:stretch;height:365px}.hero .hero-photos img{width:100%;height:100%;max-height:none;object-fit:cover;object-position:center top;border-radius:26px;box-shadow:0 12px 35px #173a2c1c}.hero .hero-photos img:nth-child(2){margin-top:26px;height:calc(100% - 26px)}.photo-intro{background:linear-gradient(120deg,#fff,#edf8f1)}.photo-intro-grid{display:grid;grid-template-columns:260px 1fr;gap:44px;align-items:center;max-width:900px;margin:auto}.photo-intro-grid>img{width:100%;height:250px;object-fit:cover;border-radius:24px}.photo-intro h2{color:#075c3d;font-size:clamp(22px,3vw,31px);line-height:1.5}.photo-intro p{max-width:600px}.hero{background:linear-gradient(105deg,#eaf7ee,#fff 65%)}
@media(max-width:760px){.hero-photos{height:250px;gap:9px}.hero .hero-photos img{max-height:none}.photo-intro-grid{grid-template-columns:1fr;gap:14px}.photo-intro-grid>img{height:200px;object-position:center 30%}.hero .wrap{padding-bottom:25px}}

/* Final visual refresh: family, meeting and consultation */
.hero .wrap{grid-template-columns:1fr 1fr;gap:25px;min-height:480px}.hero-photos{grid-template-columns:1.3fr .85fr;height:375px}.hero .hero-photos img{object-fit:cover}.hero .hero-photos img:nth-child(2){margin-top:0;height:100%;object-fit:contain;background:#fff;border-radius:20px}.scene-section{background:#fff}.scene-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.scene-grid article{border:1px solid #e0eae3;border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 8px 24px #14351e12}.scene-grid img{display:block;width:100%;height:220px;object-fit:cover}.scene-grid h3,.scene-grid p{margin:10px 18px}.scene-grid h3{color:#075c3d}.scene-grid p{padding-bottom:14px}.photo-intro-grid>img{object-fit:contain;background:#f4f9f5}.header .identity{font-size:20px}.contact-buttons .btn:hover,.mobile-contact a:hover{opacity:.88}@media(max-width:760px){.hero .wrap{grid-template-columns:1fr}.hero-photos{height:260px}.scene-grid{grid-template-columns:1fr}.scene-grid img{height:220px}.header .identity{font-size:18px}}

/* Photo-only hero, supplied illustration below */
.hero-photos{grid-template-columns:1.3fr 1fr;height:390px}.hero .hero-photos img,.hero .hero-photos img:nth-child(2){object-fit:cover;object-position:center;height:100%;margin:0;background:none}.photo-intro-grid>img{object-fit:contain;background:transparent;height:350px}.hero .hero-photos img:nth-child(2){object-position:center 40%}@media(max-width:760px){.hero-photos{height:245px}.photo-intro-grid>img{height:260px}}

/* Text-free photographs; all headlines are HTML text */
.hero .hero-photos img,.hero .hero-photos img:nth-child(2){object-fit:cover;object-position:center center}

/* v2.4: one full-width, text-free sunrise photograph */
.hero .wrap{display:flex;flex-direction:column;gap:24px;align-items:stretch;padding-top:38px;padding-bottom:36px}
.hero .wrap>div:first-child{width:100%;max-width:1050px;margin:auto;text-align:center}
.hero-photos{display:block;width:100%;height:auto;aspect-ratio:1.91/1}
.hero .hero-photos img{display:block;width:100%;height:100%;max-height:none;object-fit:cover;object-position:center center;border-radius:20px;box-shadow:0 12px 35px #173a2c1c}
@media(min-width:900px){.hero-photos{aspect-ratio:2.3/1;max-height:530px}}
@media(max-width:760px){.hero .wrap{padding-top:26px;gap:18px}.hero-photos{aspect-ratio:1.65/1}.hero .hero-photos img{max-height:none;border-radius:12px}}

/* roju labor management service page */
.labor-page{color:#18372b}.labor-page .section{padding:74px 0}.labor-hero{background:linear-gradient(120deg,#f3faf4,#fff 62%,#e6f5ee);padding:70px 0 64px}.labor-hero-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:42px;align-items:center}.labor-hero-copy h1{font-size:clamp(34px,4vw,58px);line-height:1.3;margin:12px 0 18px}.labor-hero-copy h1 em{font-style:normal;color:#087446}.labor-hero-copy p{font-size:17px;line-height:1.95}.labor-tag{display:inline-block;color:#0b6943;background:#e3f3e9;border-radius:30px;padding:8px 16px;font-weight:700}.labor-logo{width:min(350px,85%);max-height:155px;object-fit:contain;object-position:left center;display:block;margin:12px 0}.labor-hero-photo img{width:100%;height:440px;object-fit:cover;border-radius:22px;box-shadow:0 16px 40px #0c563521}.labor-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.labor-grid{display:grid;gap:17px}.labor-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.labor-panel{padding:26px 22px;background:#fff;border:1px solid #d8e9de;border-radius:15px;font-weight:700;box-shadow:0 5px 15px #0c56350a}.labor-pricing{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center}.labor-pricing>div{background:white;padding:34px;border-radius:22px;box-shadow:0 10px 28px #155f3a0c}.labor-pricing h2{font-size:clamp(27px,3vw,40px);margin:18px 0}.labor-price{padding:22px 0;color:#0a603d;font-weight:800}.labor-price strong{font-size:clamp(48px,6vw,78px);letter-spacing:-2px}.labor-price strong span{font-size:24px}.labor-price small{display:block;color:#374d40}.labor-note{font-size:13px;color:#627367;line-height:1.8;margin:18px 0}.labor-included h3{background:#075b39;color:white;border-radius:12px;padding:14px 18px;margin:0 0 16px}.labor-included>div{border-bottom:1px solid #dce8df;padding:11px 0}.labor-included strong{color:#08683d}.labor-included p{margin:6px 0 0;font-size:14px}.labor-fee-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.labor-fee-grid>div{background:#f8fcf9;border:1px solid #d8e9de;border-radius:12px;padding:18px;display:flex;justify-content:space-between;gap:10px}.labor-fee-grid strong{color:#c33222;white-space:nowrap}.labor-value{background:#fff;border-radius:17px;padding:28px;box-shadow:0 5px 20px #155f3a10}.labor-value span{color:#0a7947;font-size:28px;font-weight:800}.labor-value h3{margin:8px 0}.labor-contact{background:#ecf7f0}.labor-contact-grid{display:grid;grid-template-columns:1.5fr .65fr;align-items:center;gap:30px}.labor-contact-grid h2{font-size:clamp(26px,3vw,42px);line-height:1.4}.labor-contact-grid>img{width:100%;max-height:370px;object-fit:contain}.labor-contact .contact-buttons{justify-content:flex-start}.labor-contact .contact-buttons .btn{min-width:210px}
@media(max-width:760px){.labor-page .section{padding:46px 0}.labor-hero{padding:32px 0}.labor-hero-grid,.labor-pricing,.labor-contact-grid{grid-template-columns:1fr;gap:20px}.labor-hero-photo img{height:245px}.labor-grid-3{grid-template-columns:1fr}.labor-fee-grid{grid-template-columns:1fr}.labor-pricing>div{padding:22px}.labor-contact-grid>img{max-height:240px}.labor-hero-copy p{font-size:15px}}
