:root{--blue:#3ea8de;--blue-dark:#2b8bbf;--blue-light:#e8f4fa;--red:#e8547a;--red-light:#fdf0f3;--navy:#1a3a5c;--text:#333;--text-light:#666;--bg:#fff;--bg-alt:#f6fafe;--border:#e0e8ef;--font-sans:"Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;--font-label:"Inter", "Noto Sans JP", sans-serif;--container:1100px;--gutter:24px}*,:before,:after{box-sizing:border-box}body{font-family:var(--font-sans);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.8}img{max-width:100%;height:auto;display:block}a{color:var(--blue-dark);text-decoration:none}a:focus-visible{outline:2px solid var(--blue);outline-offset:2px}ul{margin:0;padding:0;list-style:none}h1,h2,h3,h4,p,dl,dd{margin:0}dt,strong{font-weight:700}small{color:var(--text-light);font-size:.85em}.container{max-width:var(--container);padding:0 var(--gutter);margin:0 auto}.header{z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);background:#fffffff2;position:fixed;top:0;left:0;right:0}.header__inner{max-width:var(--container);padding:0 var(--gutter);justify-content:space-between;align-items:center;height:64px;margin:0 auto;display:flex}.header__logo{align-items:center;gap:8px;text-decoration:none;display:flex}.header__name{color:var(--navy);letter-spacing:.05em;font-size:20px;font-weight:900}.header__hamburger{cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;padding:8px;display:none}.header__hamburger span{background:var(--navy);width:24px;height:2px;transition:transform .3s,opacity .3s;display:block}.header__hamburger[aria-expanded=true] span:first-child{transform:translateY(7px)rotate(45deg)}.header__hamburger[aria-expanded=true] span:nth-child(2){opacity:0}.header__hamburger[aria-expanded=true] span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.header__nav-list{gap:0;display:flex}.header__nav-list a{color:var(--text);letter-spacing:.02em;padding:20px 16px;font-size:14px;font-weight:500;transition:color .2s;display:block}.header__nav-list a:hover{color:var(--blue)}@media (width<=768px){.header__hamburger{display:flex}.header__nav{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);background:#fffffffa;padding:8px 0;display:none;position:absolute;top:64px;left:0;right:0}.header__nav.is-open{display:block}.header__nav-list{flex-direction:column}.header__nav-list a{padding:14px var(--gutter);border-bottom:1px solid var(--border);font-size:15px}.header__nav-list li:last-child a{border-bottom:none}}.hero{justify-content:flex-start;align-items:flex-end;min-height:90vh;margin-top:64px;display:flex;position:relative;overflow:hidden}.hero__bg{position:absolute;inset:0}.hero__bg img{object-fit:cover;object-position:center 20%;width:100%;height:100%}.hero__overlay{background:linear-gradient(#0000 0%,#1a3a5c1a 30%,#1a3a5c66 60%,#1a3a5cd9 100%);position:absolute;inset:0}.hero__content{z-index:1;padding:0 var(--gutter) 80px;max-width:var(--container);color:#fff;width:100%;margin:0 auto;position:relative}.hero__sub{letter-spacing:.12em;opacity:.9;margin-bottom:12px;font-size:14px;font-weight:500}.hero__title{margin-bottom:16px;line-height:1}.hero__name-kanji{letter-spacing:.08em;font-size:72px;font-weight:900;display:inline}.hero__name-kana{letter-spacing:.08em;color:var(--red);font-size:72px;font-weight:900;display:inline}.hero__catch{letter-spacing:.15em;margin-bottom:20px;font-size:28px;font-weight:700}.hero__badge{background:var(--blue);color:#fff;letter-spacing:.05em;border-radius:4px;padding:8px 24px;font-size:16px;font-weight:700;display:inline-block}.hero__badge strong{margin:0 2px;font-size:28px}@media (width<=768px){.hero{align-items:flex-end;min-height:70vh}.hero__content{padding-bottom:48px}.hero__name-kanji,.hero__name-kana{font-size:48px}.hero__catch{font-size:20px}.hero__sub{font-size:12px}}.section{padding:80px 0}.section--alt{background:var(--bg-alt)}.section__label{font-family:var(--font-label);color:var(--blue);letter-spacing:.2em;text-transform:uppercase;margin-bottom:8px;font-size:13px;font-weight:600}.section__title{color:var(--navy);letter-spacing:.02em;margin-bottom:48px;font-size:32px;font-weight:900;line-height:1.3}@media (width<=768px){.section{padding:56px 0}.section__title{margin-bottom:32px;font-size:24px}}.greeting__body{grid-template-columns:320px 1fr;align-items:start;gap:48px;display:grid}.greeting__photo img{aspect-ratio:1;object-fit:cover;border-radius:8px;width:100%}.greeting__text{text-align:left}.greeting__text p{margin-bottom:20px;line-height:2}.greeting__text p:last-child{margin-bottom:0}.greeting__closing{color:var(--navy);margin-top:8px}.greeting__sign{color:var(--navy);letter-spacing:.1em;margin-top:24px;font-size:24px;font-weight:900}@media (width<=768px){.greeting__body{grid-template-columns:1fr;gap:32px}.greeting__photo{max-width:280px;margin:0 auto}}.policy__list{flex-direction:column;gap:24px;display:flex}.policy-card{text-align:left;border:1px solid var(--border);background:#fff;border-radius:8px;padding:32px 36px 32px 100px;position:relative}.policy-card__num{font-family:var(--font-label);color:var(--blue);font-size:40px;font-weight:700;line-height:1;position:absolute;top:28px;left:32px}.policy-card__title{color:var(--navy);margin-bottom:12px;font-size:20px;font-weight:700;line-height:1.5}.policy-card__text{color:var(--text);margin-bottom:8px;line-height:1.9}.policy-card__text:last-child{margin-bottom:0}@media (width<=768px){.policy-card{padding:24px 20px 24px 72px}.policy-card__num{font-size:32px;top:22px;left:20px}.policy-card__title{font-size:18px}}.local__lead{color:var(--red);margin-top:-32px;margin-bottom:32px;font-size:20px;font-weight:700}.local__grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.local-card{background:var(--bg-alt);text-align:left;border-left:4px solid var(--blue);border-radius:8px;padding:28px 24px}.local-card__area{color:var(--navy);margin-bottom:12px;font-size:18px;font-weight:700}.local-card__list{padding-left:20px;list-style:outside}.local-card__list li{margin-bottom:6px;font-size:15px;line-height:1.7}.local-card__list li:last-child{margin-bottom:0}@media (width<=1024px){.local__grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.local__grid{grid-template-columns:1fr}.local__lead{margin-top:-20px;font-size:18px}}.complex__lead{color:var(--text);margin-top:-32px;margin-bottom:40px;font-size:18px;line-height:1.8}.complex__grid{flex-direction:column;gap:24px;display:flex}.complex-card{text-align:left;border:1px solid var(--border);background:#fff;border-radius:8px;padding:32px}.complex-card__q{color:var(--navy);align-items:baseline;gap:12px;margin-bottom:16px;font-size:20px;font-weight:700;line-height:1.4;display:flex}.complex-card__num{font-family:var(--font-label);color:var(--blue);flex-shrink:0;font-size:28px;font-weight:700;line-height:1}.complex-card__intro{color:var(--navy);margin-bottom:16px;font-size:16px;font-weight:700;line-height:1.7}.complex-card__text{margin-bottom:16px;line-height:1.8}.complex-card__dl{margin-bottom:16px}.complex-card__dl dt{color:var(--navy);margin-top:12px;font-size:15px}.complex-card__dl dt:first-child{margin-top:0}.complex-card__dl dd{border-left:3px solid var(--blue-light);margin-top:4px;margin-left:0;padding-left:16px;font-size:15px;line-height:1.8}.complex-card__note{color:var(--text-light);margin-top:8px;font-size:13px;line-height:1.7}.complex-card__costs{grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:16px;display:grid}.cost-item{background:var(--bg-alt);border-radius:6px;flex-direction:column;gap:4px;padding:16px;display:flex}.cost-item--highlight{background:var(--blue);color:#fff;grid-column:span 2}.cost-item__label{font-size:13px;font-weight:500}.cost-item--highlight .cost-item__label{opacity:.9}.cost-item__value{font-size:15px}.cost-item__value strong{font-size:24px;font-weight:900}.cost-item--highlight .cost-item__value strong{font-size:28px}.complex-card__compare{grid-template-columns:1fr 1fr;gap:16px;margin-top:20px;display:grid}.compare-box{text-align:center;border-radius:8px;flex-direction:column;gap:8px;padding:20px;display:flex}.compare-box--new{background:var(--blue-light);border:2px solid var(--blue)}.compare-box--old{background:var(--red-light);border:2px solid var(--red)}.compare-box__label{color:var(--navy);font-size:14px;font-weight:700}.compare-box__value{color:var(--navy);font-size:15px;font-weight:700}.compare-box__value strong{color:var(--blue-dark);font-size:28px}.compare-box--old .compare-box__value strong{color:var(--red)}.compare-box__sub{color:var(--text-light);font-size:12px}@media (width<=768px){.complex-card{padding:24px 20px}.complex-card__q{font-size:18px}.complex-card__costs{grid-template-columns:1fr}.cost-item--highlight{grid-column:span 1}.complex-card__compare{grid-template-columns:1fr}}.profile__body{grid-template-columns:300px 1fr;align-items:start;gap:48px;display:grid}.profile__photo img{border-radius:8px;width:100%}.profile__name{color:var(--navy);margin-bottom:4px;font-size:28px;font-weight:900}.profile__name-sub{color:var(--text-light);margin-left:8px;font-size:16px;font-weight:500}.profile__birth{color:var(--text-light);margin-bottom:24px;font-size:15px}.profile__heading{color:var(--blue-dark);border-bottom:2px solid var(--blue);margin-bottom:12px;padding-bottom:8px;font-size:16px;font-weight:700}.profile__history{margin-bottom:28px;list-style:none}.profile__history li{border-bottom:1px solid var(--border);padding:8px 0;font-size:15px;line-height:1.6}.profile__history li:last-child{border-bottom:none}.profile__details dl{grid-template-columns:100px 1fr;gap:8px 16px;font-size:15px;display:grid}.profile__details dt{color:var(--navy)}.profile__details dd{margin-left:0;line-height:1.7}@media (width<=768px){.profile__body{grid-template-columns:1fr;gap:32px}.profile__photo{max-width:240px;margin:0 auto}.profile__name{font-size:24px}.profile__details dl{grid-template-columns:1fr;gap:4px}.profile__details dt{margin-top:12px}}.contact .section__label,.contact .section__title{text-align:center}.contact__body{text-align:center;max-width:600px;margin:0 auto}.contact__org{color:var(--navy);margin-bottom:12px;font-size:24px;font-weight:700}.contact__address{color:var(--text-light);margin-bottom:32px;font-size:15px}.contact__phones{justify-content:center;gap:16px;display:flex}.contact__phone{border:1px solid var(--border);background:#fff;border-radius:8px;flex-direction:column;align-items:center;gap:4px;padding:20px 32px;text-decoration:none;transition:border-color .2s;display:flex}.contact__phone:hover{border-color:var(--blue)}.contact__phone-label{color:var(--text-light);font-size:13px;font-weight:500}.contact__phone-number{font-family:var(--font-label);color:var(--navy);letter-spacing:.02em;font-size:22px;font-weight:700}@media (width<=768px){.contact__phones{flex-direction:column;align-items:center}.contact__phone{width:100%;max-width:300px}}.footer{background:var(--navy);color:#ffffffb3;text-align:center;padding:32px 0}.footer__copy{margin-bottom:4px;font-size:14px}.footer__note{opacity:.6;font-size:12px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
