:root{--paper:#fbf8f3;--white:#fffcf9;--ink:#251d31;--muted:#625667;--rose:#913c5c;--border:#e5dcd8;--serif:"Hiragino Mincho ProN", "Yu Mincho", "Noto Serif CJK JP", "YuMincho", serif;--sans:"Hiragino Sans", "Noto Sans CJK JP", "Yu Gothic", Meiryo, sans-serif;color:var(--ink);background:var(--paper);font-family:var(--sans);font-synthesis:none}*,:before,:after{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}p,h1,h2,h3{margin:0}p{line-height:1.95}button,input,textarea,select{font:inherit}:focus-visible{outline-offset:4px;outline:3px solid #a04468}#main-content:focus{outline:none}section[id]{scroll-margin-top:2rem}.container{width:min(1184px,100% - 104px);margin-inline:auto}.skip-link{z-index:5;background:var(--white);padding:.6rem .9rem;position:fixed;top:.65rem;left:.7rem;transform:translateY(-200%)}.skip-link:focus{transform:none}.site-header{border-bottom:1px solid var(--border)}.header-inner{justify-content:space-between;align-items:center;gap:2rem;min-height:76px;display:flex}.brand{align-items:center;gap:.7rem;width:max-content;display:inline-flex}.brand-mark{letter-spacing:-.06em;border:1px solid;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;font:24px/1 Georgia,serif;display:inline-flex}.brand-mark span{color:#a54d70;margin-top:-.35rem;font-size:15px}.brand-name{letter-spacing:.13em;font-size:.92rem;font-weight:700}.site-nav{align-items:center;gap:clamp(1.1rem,3.5vw,3rem);font-size:.79rem;font-weight:600;display:flex}.site-nav a:hover,.site-footer nav a:hover{text-underline-offset:4px;text-decoration:underline}.button{background:var(--ink);color:#fff9fc;border-radius:4px;justify-content:space-between;align-items:center;gap:1.6rem;width:max-content;max-width:100%;min-height:49px;padding:.75rem 1.2rem;font-size:.84rem;font-weight:600;display:inline-flex}.button:hover{background:#57344e}.button-small{min-height:42px;padding-inline:1rem;font-size:.77rem}.button span,.text-link span{font:1.15rem Georgia,serif}.mobile-break,.door .door-mobile-description{display:none}.hero{padding:clamp(2.5rem,5vw,4rem) 0 clamp(2rem,4vw,3rem)}.hero-grid{grid-template-columns:1.02fr 1fr;align-items:center;column-gap:clamp(2rem,5vw,5.2rem);display:grid}.hero-copy{padding-block:1.6rem}.kicker{color:var(--rose);letter-spacing:.055em;align-items:center;gap:.7rem;font-size:clamp(.66rem,1.14vw,.87rem);font-weight:700;line-height:1.6;display:flex}.kicker:before{content:"";border-top:1px solid;flex:0 0 25px;width:25px}.hero h1,.section-heading h2,.values-grid h2,.faq-section h2,.closing-section h2,.document-page h1{font-family:var(--serif);font-weight:600}.hero h1{letter-spacing:-.035em;margin:1rem 0 1.15rem;font-size:clamp(2rem,4.36vw,4rem);line-height:1.4}.hero h1 span{color:var(--rose)}.hero-lead{max-width:31rem;color:var(--muted);font-size:clamp(.83rem,1.18vw,.97rem);line-height:2.06}.hero-photo{aspect-ratio:1.58;background:#302135;border-radius:4px 48px 4px 4px;width:100%;position:relative;overflow:hidden}.hero-photo img{object-fit:cover;object-position:center 55%}.consult-section{padding-bottom:clamp(3.2rem,6vw,5.5rem)}.section-line{justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:1.1rem;display:flex}.section-line h2{letter-spacing:.06em;font-size:clamp(1rem,1.7vw,1.32rem)}.section-line p{color:var(--muted);font-size:.78rem}.section-line .consultation-status{color:var(--rose);font-weight:700}.doors{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.door{--door-ink:#853553;--door-tint:#f7eaf0;background:var(--white);border:1px solid var(--border);border-radius:7px;flex-direction:column;padding:clamp(1.05rem,2vw,1.65rem);transition:border-color .2s,background .2s;display:flex}.door.successor{--door-ink:#584576;--door-tint:#eee9f5}.door.sponsor{--door-ink:#78512c;--door-tint:#f6ece0}.door:hover{border-color:var(--door-ink);background:var(--door-tint)}.door-top{color:var(--door-ink);align-items:center;gap:.63rem;font-size:.73rem;font-weight:700;display:flex}.door-icon{background:var(--door-tint);border-radius:50%;flex:0 0 38px;place-items:center;height:38px;display:grid}.door h3{font:600 clamp(1.17rem, 2.02vw, 1.6rem)/1.47 var(--serif);margin-top:.8rem}.door p{color:var(--muted);margin:.5rem 0 .95rem;font-size:.81rem;line-height:1.8}.door-action{border-top:1px solid var(--border);color:var(--door-ink);justify-content:space-between;align-items:center;gap:.3rem;margin-top:auto;padding-top:.8rem;font-size:.76rem;font-weight:700;display:flex}.door-action span{font:1.15rem Georgia,serif}.service-section{background:#f3edf2;padding:clamp(3rem,6vw,5.7rem) 0}.section-heading{justify-content:space-between;align-items:flex-end;gap:2rem;margin-bottom:2.2rem;display:flex}.section-heading h2,.values-grid h2,.faq-section h2,.closing-section h2{font-size:clamp(1.65rem,3.2vw,2.65rem);line-height:1.47}.section-heading p{max-width:29rem;color:var(--muted);font-size:.9rem}.service-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.service-grid article{background:#fcf8fa;border:1px solid #e5dbe7;border-radius:5px;padding:clamp(1.3rem,3vw,2.4rem)}.service-grid h3{font:600 1.43rem/1.6 var(--serif);margin-bottom:.6rem}.service-grid p{color:var(--muted);font-size:.86rem}.flow-section{padding-block:clamp(3.4rem,7vw,6rem)}.flow-heading{align-items:center}.flow-list{border-top:1px solid var(--border);margin:0;padding:0;list-style:none}.flow-list li{border-bottom:1px solid var(--border);grid-template-columns:4.4rem auto;align-items:center;gap:1rem;padding:1.2rem 0;display:grid}.flow-list li>span{color:var(--rose);font:italic 1.7rem Georgia,serif}.flow-list h3{margin-bottom:.2rem;font-size:1.02rem}.flow-list p{color:var(--muted);font-size:.85rem}.values-section{color:#fff8fa;background:#2a2035;padding:clamp(3rem,6vw,5rem) 0}.values-grid{grid-template-columns:.9fr 1fr;gap:clamp(2rem,6vw,5rem);display:grid}.values-grid h3{color:#f4bfd5;margin:.4rem 0;font-size:1rem}.values-grid p{color:#eee0ee;font-size:.87rem}.values-grid p+h3{margin-top:1.5rem}.faq-section{padding-top:clamp(3.5rem,7vw,6rem)}.faq-intro{color:var(--muted);margin-top:.5rem;font-size:.85rem}.faq-list{border-top:1px solid var(--border);margin-top:1.5rem}.faq-list details{border-bottom:1px solid var(--border)}.faq-list summary{cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;min-height:54px;padding:1rem 0;font-size:.92rem;font-weight:600;list-style:none;display:flex}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{height:1rem;color:var(--rose);flex:0 0 1rem;position:relative}.faq-list summary span:before,.faq-list summary span:after{content:"";border-top:1px solid;width:100%;position:absolute;top:50%;left:0}.faq-list summary span:after{transform:rotate(90deg)}.faq-list details[open] summary span:after{display:none}.faq-list details p{color:var(--muted);padding-bottom:1rem;padding-right:2rem;font-size:.87rem}.closing-section{background:#f4e8ee;border-radius:7px;justify-content:space-between;align-items:center;gap:1.6rem;margin-block:clamp(3rem,7vw,6rem);padding:clamp(1.45rem,5vw,4rem);display:flex}.closing-section p{color:var(--muted);margin-top:.65rem;font-size:.82rem}.closing-links{justify-items:start;gap:.8rem;display:grid}.text-link{color:var(--rose);text-underline-offset:4px;align-items:center;gap:.5rem;font-size:.82rem;font-weight:600;text-decoration:underline;display:inline-flex}.site-footer{border-top:1px solid var(--border);background:#f3eee9;padding:2.1rem 0 1.55rem}.footer-inner{justify-content:space-between;align-items:center;gap:2rem;margin-bottom:1.5rem;display:flex}.footer-inner p,.site-footer small{color:var(--muted);font-size:.72rem}.footer-inner p{margin-top:.65rem}.footer-inner nav{flex-wrap:wrap;gap:.9rem 1.3rem;font-size:.76rem;display:flex}.document-page{max-width:850px;padding-block:3.7rem 5.4rem}.back-link{color:var(--rose);text-underline-offset:4px;font-size:.8rem;text-decoration:underline}.document-page h1{margin:1.1rem 0 1.4rem;font-size:clamp(2rem,5vw,3.3rem)}.document-page h2{margin-bottom:.55rem;font-size:1.2rem}.document-page p{color:var(--muted)}.document-page section{border-top:1px solid var(--border);margin-top:1.35rem;padding:1.6rem 0}.document-page section p+p,.document-page .text-link{margin-top:.8rem}.document-notice{border:1px solid var(--border);background:#f4e8ee;border-radius:5px;padding:1rem 1.2rem}@media (max-width:960px){.container{width:calc(100% - 64px)}}@media (max-width:760px){.container{width:calc(100% - 36px)}.header-inner{gap:.8rem;min-height:62px}.site-nav{display:none}.brand-mark{width:34px;height:34px}.brand-name{font-size:.83rem}.hero{padding:1.3rem 0 1.2rem}.hero-grid{flex-direction:column;align-items:stretch;gap:.9rem;display:flex}.hero-copy{padding-block:0}.hero h1{margin:.65rem 0 .7rem;font-size:clamp(2rem,7vw,3.15rem);line-height:1.42}.hero-lead{line-height:1.85}.hero-lead-context{display:none}.hero-photo{aspect-ratio:3.4;border-top-right-radius:28px}.section-line{margin-bottom:.75rem;display:block}.section-line p{margin-top:.25rem}.doors{grid-template-columns:1fr;gap:.65rem}.door{grid-template-columns:32px minmax(0,1fr);column-gap:.75rem;padding:.9rem;display:grid}.door-top{display:contents}.door-icon{grid-row:1/span 2;align-self:center;width:32px;height:32px}.door-icon svg{width:19px;height:19px}.door-top span:nth-child(2){color:var(--door-ink);grid-column:2;font-size:.65rem}.door h3{grid-column:2;margin-top:.12rem;font-size:clamp(.98rem,4.15vw,1.35rem)}.door h3 br{display:none}.door h3{overflow-wrap:anywhere}.door .door-description{display:none}.door .door-mobile-description{display:block}.door p{grid-column:2;margin:.17rem 0 .45rem;font-size:.75rem}.door-action{grid-column:2;padding-top:.35rem;font-size:.7rem}.section-heading,.closing-section,.footer-inner{display:block}.section-heading p{margin-top:.7rem}.service-grid,.values-grid{grid-template-columns:1fr}.values-grid{gap:1.4rem}.flow-list li{grid-template-columns:2rem auto;gap:.6rem}.flow-list li>span{font-size:1.33rem}.closing-links,.footer-inner nav{margin-top:1rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important}}
