/*
Theme Name: 24時間相続 Production
Version: 1.0.4
Text Domain: souzoku24-production
*/
:root{--ink:#163043;--muted:#5d7180;--blue:#174f72;--blue2:#0e7180;--pale:#edf6f6;--cream:#f8f6f0;--line:#d7e2e5;--white:#fff;--accent:#b56b45;--shadow:0 14px 38px rgba(20,55,72,.10)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:"BIZ UDPGothic","Yu Gothic",Meiryo,sans-serif;font-size:16px;line-height:1.9;background:#fff}a{color:inherit}img{max-width:100%}.wrap{width:min(1120px,calc(100% - 40px));margin:auto}.narrow{width:min(820px,calc(100% - 40px));margin:auto}.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(8px)}.header-inner{height:74px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{text-decoration:none;font-family:"Yu Mincho",serif;font-size:1.45rem;font-weight:700;letter-spacing:.05em}.brand small{display:block;font:500 .68rem/1.2 sans-serif;color:var(--muted);letter-spacing:.08em}.nav{display:flex;gap:22px;align-items:center;font-size:.88rem;font-weight:700}.nav a{text-decoration:none}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 28px;border-radius:4px;background:var(--blue);color:#fff;text-decoration:none;font-weight:700;box-shadow:0 8px 20px rgba(23,79,114,.18);border:0;cursor:pointer}.btn:hover{background:#0f405e}.btn.small{min-height:42px;padding:0 20px}.hero{background:linear-gradient(135deg,#edf7f7 0%,#fff 58%,#f7f3e9 100%);padding:92px 0 82px;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:64px;align-items:center}.eyebrow{color:var(--blue2);font-weight:700;letter-spacing:.12em;font-size:.86rem}.hero h1{font-family:"Yu Mincho",serif;font-size:clamp(2.35rem,5vw,4.6rem);line-height:1.22;margin:.16em 0 .25em;letter-spacing:.04em}.lead{font-family:"Yu Mincho",serif;font-size:clamp(1.4rem,2.5vw,2rem);font-weight:700;margin:0 0 20px}.hero-copy{font-size:1.08rem;color:#405966;margin:0 0 28px}.badges{display:flex;flex-wrap:wrap;gap:10px;margin:26px 0}.badge{padding:7px 12px;background:#fff;border:1px solid #c9dcdf;border-radius:999px;font-size:.82rem;font-weight:700}.hero-art{position:relative;min-height:410px;border-radius:50% 50% 44% 56%/42% 52% 48% 58%;background:linear-gradient(145deg,#1f5b76,#0f7b84);box-shadow:var(--shadow);display:grid;place-items:center;color:#fff;text-align:center;padding:40px}.hero-art:before{content:"";position:absolute;inset:24px;border:1px solid rgba(255,255,255,.3);border-radius:inherit}.clock{font-family:"Yu Mincho",serif;font-size:5.6rem;line-height:1}.clock-note{font-size:.95rem;letter-spacing:.12em}.section{padding:88px 0}.section.soft{background:var(--pale)}.section.cream{background:var(--cream)}.section-head{text-align:center;margin:0 auto 48px;max-width:820px}.section-head .kicker{color:var(--blue2);font-size:.78rem;font-weight:700;letter-spacing:.16em}.section h2{font-family:"Yu Mincho",serif;font-size:clamp(1.8rem,3.8vw,2.75rem);line-height:1.4;margin:.3em 0 .5em}.section h3{font-family:"Yu Mincho",serif;font-size:1.45rem;line-height:1.5;margin:0 0 18px}.story{font-family:"Yu Mincho",serif;font-size:1.08rem}.story p{margin:0 0 1.35em}.story .quote{font-size:1.35rem;border-left:4px solid var(--accent);padding:14px 0 14px 24px;margin:32px 0;color:#243f50}.emphasis{font-size:1.3rem;font-weight:700;color:var(--blue);text-align:center;margin:38px 0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:30px;box-shadow:0 5px 22px rgba(20,55,72,.05)}.card .num{color:var(--blue2);font-weight:800;font-size:1.65rem}.checklist{display:grid;grid-template-columns:repeat(2,1fr);gap:12px 28px;list-style:none;padding:0}.checklist li{position:relative;padding:13px 14px 13px 38px;border-bottom:1px solid var(--line)}.checklist li:before{content:"✓";position:absolute;left:10px;color:var(--blue2);font-weight:800}.two{display:grid;grid-template-columns:1fr 1fr;gap:28px}.service{background:#fff;padding:36px;border-top:4px solid var(--blue)}.service ul{padding-left:1.3em}.price-box{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);padding:38px;display:grid;grid-template-columns:1fr 1fr;gap:20px}.price{padding:24px;text-align:center;background:var(--pale)}.price strong{display:block;font-size:1.65rem;color:var(--blue)}.note{font-size:.88rem;color:var(--muted)}.profile{display:grid;grid-template-columns:270px 1fr;gap:52px;align-items:center}.portrait{aspect-ratio:4/5;background:linear-gradient(160deg,#dbeaed,#f4efe4);display:grid;place-items:center;border-radius:8px;color:var(--muted);text-align:center}.profile-name{font-family:"Yu Mincho",serif;font-size:2rem;margin:0}.steps{counter-reset:step;display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.step{counter-increment:step;background:#fff;border:1px solid var(--line);padding:24px 18px}.step:before{content:"STEP " counter(step);display:block;color:var(--blue2);font-weight:800;font-size:.78rem;letter-spacing:.08em}.voices{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.voice{background:#fff;border-radius:8px;padding:30px;border-top:3px solid var(--accent)}.faq{max-width:900px;margin:auto}.faq details{background:#fff;border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;list-style:none;padding:22px 52px 22px 54px;font-weight:700;position:relative}.faq summary:before{content:"Q";position:absolute;left:18px;color:var(--blue2);font-size:1.2rem}.faq summary:after{content:"＋";position:absolute;right:18px;color:var(--blue)}.faq details[open] summary:after{content:"−"}.answer{padding:0 28px 24px 54px;color:#3e5562}.answer p{margin:.5em 0}.related .card{display:flex;flex-direction:column}.text-link{margin-top:auto;color:var(--blue);font-weight:700;text-decoration:none}.form{max-width:800px;margin:auto;background:#fff;border:1px solid var(--line);padding:42px;box-shadow:var(--shadow)}.field{margin-bottom:22px}.field label{display:block;font-weight:700;margin-bottom:7px}.req{font-size:.72rem;color:#fff;background:var(--accent);padding:3px 6px;margin-left:6px}.opt{font-size:.72rem;color:var(--muted);margin-left:6px}.field input,.field textarea,.field select{width:100%;padding:13px 14px;border:1px solid #b8c9ce;border-radius:3px;background:#fafcfc;font:inherit}.field textarea{min-height:140px}.form .btn{width:100%}.disabled-note{text-align:center;color:var(--accent);font-size:.86rem;margin-top:12px}.footer{background:#102e3f;color:#dce8ec;padding:52px 0 28px}.footer-grid{display:flex;justify-content:space-between;gap:30px}.footer a{color:#fff}.copyright{border-top:1px solid rgba(255,255,255,.18);margin-top:32px;padding-top:22px;font-size:.78rem;color:#aebfc6}.mobile-cta{display:none}@media(max-width:900px){.nav a:not(.btn){display:none}.hero{padding:64px 0}.hero-grid{grid-template-columns:1fr}.hero-art{min-height:290px}.cards,.voices{grid-template-columns:1fr}.two,.price-box{grid-template-columns:1fr}.steps{grid-template-columns:1fr 1fr}.profile{grid-template-columns:1fr}.portrait{max-width:260px}.section{padding:68px 0}}@media(max-width:600px){body{font-size:16px}.wrap,.narrow{width:min(100% - 28px,1120px)}.header-inner{height:64px}.brand{font-size:1.18rem}.header-inner .btn{display:none}.hero{padding:48px 0 56px}.hero-grid{gap:34px}.hero-art{min-height:230px}.clock{font-size:4rem}.checklist,.steps{grid-template-columns:1fr}.section{padding:56px 0}.section-head{margin-bottom:34px}.card,.service,.form{padding:24px}.profile{gap:28px}.footer{padding-bottom:88px}.footer-grid{display:block}.mobile-cta{display:block;position:fixed;z-index:30;bottom:0;left:0;right:0;padding:10px 14px;background:rgba(255,255,255,.96);border-top:1px solid var(--line)}.mobile-cta .btn{width:100%}}

.portrait{display:block;overflow:hidden;box-shadow:var(--shadow)}
.portrait img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 38%}

/* 見た目改善 Version 3 */
.kicker{display:none}
.hero{padding:76px 0 68px;background:linear-gradient(128deg,#e7f3f4 0%,#f8fbfb 56%,#eef3ef 100%)}
.hero-grid{grid-template-columns:1.04fr .96fr;gap:70px}
.hero-message{position:relative;z-index:2}
.hero-person{position:relative;min-height:520px;border-radius:10px 80px 10px 80px;overflow:hidden;background:#dcebed;box-shadow:0 22px 52px rgba(20,55,72,.17)}
.hero-person:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(10,39,54,.75) 100%);pointer-events:none}
.hero-person img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 34%}
.hero-person-caption{position:absolute;z-index:2;left:30px;right:30px;bottom:28px;color:#fff;display:flex;flex-direction:column;line-height:1.55}
.hero-person-caption strong{font-family:"Yu Mincho",serif;font-size:1.18rem}
.hero-person-caption span{font-size:.84rem;opacity:.92}
.hero-24{position:absolute;z-index:2;right:20px;top:8px;color:rgba(255,255,255,.92);font-family:"Yu Mincho",serif;font-size:6.5rem;line-height:1;text-shadow:0 3px 22px rgba(14,65,85,.25)}
.hero h1{font-size:clamp(2.7rem,5.3vw,4.9rem)}
.hero .lead{color:#173d52}
.section-head{margin-bottom:42px}
.section h2{position:relative;padding-bottom:17px}
.section-head h2:after{content:"";position:absolute;width:52px;height:2px;background:var(--accent);left:50%;bottom:0;transform:translateX(-50%)}
.story{font-family:"BIZ UDPGothic","Yu Gothic",Meiryo,sans-serif;font-size:1.04rem;line-height:2}
.story h3,.story .quote,.story .emphasis{font-family:"Yu Mincho",serif}
.story h3{text-align:center;font-size:1.72rem;margin-bottom:38px}
.story .quote{background:#eef6f6;border-left:0;border-radius:4px;padding:24px 30px;text-align:center;font-size:1.38rem;box-shadow:inset 0 0 0 1px #d7e7e9}
.story .emphasis{max-width:760px;margin:54px auto;padding:30px 22px;border-top:1px solid #9ebfc5;border-bottom:1px solid #9ebfc5;font-size:1.42rem;line-height:1.8}
.story p:nth-of-type(10),.story p:nth-of-type(18),.story p:nth-of-type(25){margin-top:64px;padding-top:44px;border-top:1px solid var(--line)}
.section.soft{background:#edf6f6}
.service{border-top:0;border-left:4px solid var(--blue);box-shadow:0 8px 28px rgba(20,55,72,.07)}
.consultation{background:linear-gradient(135deg,#f8f5ed,#eef5f4)}
.consultation .price-box{border-radius:12px;border:0}
.consultation .price:first-child{background:#e3f1f0}
.consultation .price:last-child{background:#f4eade}
.consultation-note{margin-top:30px;text-align:center}
.section-cta{margin:30px 0 0}
.cards .card{border-radius:4px 24px 4px 24px}
.profile{grid-template-columns:340px 1fr;gap:68px}
.profile .portrait{max-width:none;border-radius:4px 38px 4px 38px}
.steps{gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.step{border:0;border-right:1px solid var(--line);background:transparent;padding:30px 22px}
.step:last-child{border-right:0}
.voice{border-top:0;border-left:3px solid var(--accent);border-radius:0 12px 12px 0;box-shadow:0 8px 24px rgba(20,55,72,.06)}
@media(max-width:900px){.hero-grid{gap:38px}.hero-person{min-height:460px}.profile{grid-template-columns:280px 1fr;gap:38px}.steps{grid-template-columns:1fr 1fr}.step{border-bottom:1px solid var(--line)}}
@media(max-width:700px){.hero{padding:46px 0 54px}.hero-grid{grid-template-columns:1fr}.hero-person{min-height:410px;max-width:420px;width:100%;margin:auto;order:2}.hero-24{font-size:5rem}.hero-person-caption{left:20px;right:20px;bottom:20px}.story h3{text-align:left;font-size:1.45rem}.story .quote{text-align:left;padding:22px}.story .emphasis{font-size:1.22rem;padding:24px 12px}.profile{grid-template-columns:1fr}.profile .portrait{max-width:300px}.steps{grid-template-columns:1fr}.step{border-right:0}.section-cta .btn{width:100%}}

/* 見た目改善 Version 4 */
:root{--night:#14374d;--day:#dcefee;--gold:#a96643}
.hero-difference{margin:24px 0 18px;padding:17px 19px;background:#fff;border-left:4px solid var(--accent);box-shadow:0 8px 24px rgba(20,55,72,.07);line-height:1.75}
.hero-copy{max-width:650px}
.hero-person-caption strong{font-size:1.32rem}.hero-person-caption span{font-size:.95rem}
.hero-person-simple{border-radius:10px;box-shadow:0 16px 38px rgba(20,55,72,.13)}
.hero-person-simple:after{display:none}
.story-cta{text-align:center;margin-top:52px!important}
.time-band{display:grid;grid-template-columns:150px 1.45fr 1fr;max-width:920px;margin:0 auto;background:#fff;box-shadow:var(--shadow);border:1px solid #cbdadd;border-radius:14px;overflow:hidden}
.time-band>div{min-height:118px;padding:22px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.time-band-label{background:var(--night);color:#fff;font-weight:700;letter-spacing:.04em}
.time-band-free{background:var(--day)}.time-band-night{background:#f3e7dc;border-left:1px solid #d9c8bb}
.time-band span{font-weight:700}.time-band strong{font-size:1.8rem;color:var(--blue);line-height:1.35}.time-band small{font-size:.8rem}
.time-caption{text-align:center;margin:18px 0 34px;color:var(--muted)}
.consultation-lead{font-family:"Yu Mincho",serif;font-weight:700;font-size:1.3rem;color:var(--blue)}
.consult-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;max-width:920px;margin:auto}.consult-grid article{padding:30px;background:#fff;border-top:3px solid var(--blue)}
.engagement-note,.fee-note{max-width:920px;margin:26px auto 0;padding:30px 34px;background:rgba(255,255,255,.7);border:1px solid var(--line)}
.engagement-note{border-left:4px solid var(--blue)}
.section-cta{text-align:center;margin-top:34px}.case-label{display:inline-block;color:var(--blue2);font-weight:800;font-size:.78rem;letter-spacing:.08em;margin-bottom:12px}
.faq-category{max-width:900px;margin:44px auto 12px!important;padding-bottom:10px;border-bottom:2px solid var(--blue);font-size:1.22rem!important}.faq-category:first-child{margin-top:0!important}
.consent{display:flex;gap:10px;align-items:center;margin:8px 0 24px;font-weight:700}.consent input{width:20px;height:20px}
.referrer-field[hidden]{display:none}
.text-link[target="_blank"]{display:inline-flex;align-items:center;gap:4px}
.btn:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #e1a16d;outline-offset:3px}
@media(max-width:700px){.hero{padding-top:38px}.hero-person{min-height:0;height:390px}.hero-person img{object-position:center 35%}.hero-difference{font-size:.96rem}.time-band{grid-template-columns:1fr}.time-band-label{min-height:52px!important}.time-band>div{min-height:94px}.time-band-night{border-left:0;border-top:1px solid #d9c8bb}.consult-grid{grid-template-columns:1fr}.consult-grid article,.engagement-note,.fee-note{padding:24px}.story-cta .btn,.section-cta .btn{width:100%}}

