:root{--green:#3a8756;--deep:#163f31;--ink:#182821;--pale:#edf3ed;--yellow:#e8bd35;--line:#ccd7ce;--paper:#f7f7f2}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:"Noto Sans JP","Yu Gothic",Meiryo,sans-serif;line-height:1.8}a{color:inherit}.wrap{width:min(1080px,calc(100% - 48px));margin:auto}.site-header{display:flex;min-height:84px;padding:10px max(24px,5vw);align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid #e6e9e5}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:.88rem;font-weight:800;line-height:1.3}.brand img{width:54px;height:54px;object-fit:contain}.brand small{display:block;color:#718078;font-size:.6rem;font-weight:500;letter-spacing:.1em}.site-header nav{display:flex;gap:30px}.site-header nav a{position:relative;font-size:.78rem;font-weight:700;text-decoration:none}.site-header nav a:after{content:"";position:absolute;right:0;bottom:-7px;left:0;height:1px;background:var(--green);transform:scaleX(0);transform-origin:left;transition:.25s}.site-header nav a:hover:after{transform:scaleX(1)}.search-hero{position:relative;overflow:hidden;padding:88px 24px 104px;color:#fff;background:var(--deep)}.search-hero:before{content:"";position:absolute;top:0;right:9%;width:1px;height:100%;background:#ffffff24}.search-hero:after{content:"";position:absolute;right:-110px;bottom:-180px;width:430px;height:430px;border:1px solid #ffffff2b;border-radius:50%}.hero-inner{position:relative;z-index:1;display:grid;width:min(1080px,100%);margin:auto;grid-template-columns:minmax(0,1fr) 300px;gap:80px;align-items:end}.hero-label{display:flex;align-items:center;gap:14px;margin:0 0 20px;color:#b8d3bf;font-size:.68rem;font-weight:800;letter-spacing:.18em}.hero-label:before{content:"";width:42px;height:2px;background:var(--yellow)}.search-hero h1{margin:0;font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(3rem,6vw,5.7rem);font-weight:500;line-height:1.23;letter-spacing:.025em}.search-hero h1 em{color:#f0ca52;font-style:normal}.hero-lead{margin:30px 0 0;color:#dce8e0;font-size:.95rem;line-height:2}.hero-note{position:relative;padding:30px 0 8px 34px;border-left:1px solid #ffffff52}.hero-note span{position:absolute;top:-20px;left:28px;color:#ffffff25;font-family:Georgia,serif;font-size:4.8rem;line-height:1}.hero-note p{position:relative;margin:0;color:#d9e6de;font-size:.82rem;line-height:2}.search-panel{position:relative;margin-top:-30px;padding:0 0 66px}.search-panel .wrap{position:relative;background:#fff;border-bottom:1px solid var(--line)}.search-heading{display:flex;align-items:center;gap:30px;padding:24px 32px 18px;border-bottom:1px solid #e0e6e1}.search-heading>p{margin:0;color:var(--green);font:700 .68rem/1 Georgia,serif;letter-spacing:.18em}.search-heading>div{display:flex;align-items:baseline;gap:14px}.search-heading h2{margin:0;font-size:1.1rem}.search-heading span{color:#77847d;font-size:.7rem}.filters{display:grid;grid-template-columns:repeat(4,1fr);gap:0;padding:0 32px 28px}.filters label{display:grid;gap:7px;padding:22px 18px 0 0}.filters label+label{padding-left:18px;border-left:1px solid #edf0ed}.filters label>span{font-size:.72rem;font-weight:800}.filters select,.filters input{width:100%;height:46px;padding:0 11px;border:0;border-bottom:1px solid #9aaba0;border-radius:0;background:#fff;color:var(--ink);font:inherit;font-size:.82rem}.filters select:focus,.filters input:focus{outline:0;border-color:var(--green);box-shadow:0 2px 0 var(--green)}.filter-actions{grid-column:1/-1;display:flex;align-items:center;justify-content:flex-end;gap:20px;margin-top:26px}.filter-actions button{min-width:230px;padding:15px 27px;border:0;border-radius:30px 0 0 30px;color:#fff;background:var(--green);font:inherit;font-size:.82rem;font-weight:800;cursor:pointer;transition:.2s}.filter-actions button:hover{padding-right:36px;background:var(--deep)}.filter-actions a{color:#6b786f;font-size:.7rem}.results{padding:25px 0 110px}.result-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:36px;padding-bottom:17px;border-bottom:1px solid #9bab9f}.result-head p{margin:0}.result-head>div>p{color:var(--green);font:700 .66rem Georgia,serif;letter-spacing:.2em}.result-head h2{margin:5px 0 0;font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:2rem;font-weight:600}.result-count{display:flex;align-items:baseline;gap:4px;color:var(--green)}.result-count strong{font:400 2.6rem Georgia,serif}.result-count span{font-size:.72rem}.empty{padding:76px 30px;text-align:center;background:#fff;border:1px solid #e2e7e3}.empty>span{color:var(--green);font:700 .66rem Georgia,serif;letter-spacing:.18em}.empty h3{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:1.45rem}.empty p{color:#69776f;font-size:.85rem}.empty a{display:inline-block;margin-top:18px;padding-bottom:2px;border-bottom:1px solid var(--green);font-size:.78rem;text-decoration:none}footer{display:flex;align-items:center;justify-content:space-between;padding:46px max(24px,7vw);color:#dce8e0;background:#102f25}footer p{margin:0 0 4px;color:#8fb09b;font-size:.68rem}footer a{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:1.1rem;text-decoration:none;border-bottom:1px solid #789387}footer small{color:#8eaa99;font-size:.65rem}@media(max-width:800px){.hero-inner{grid-template-columns:1fr;gap:45px}.hero-note{max-width:520px}.filters{grid-template-columns:1fr 1fr}.filters label:nth-child(3){border-left:0}.site-header nav a:first-child{display:none}}@media(max-width:560px){.wrap{width:min(100% - 28px,1080px)}.site-header{min-height:70px;padding:8px 16px}.brand img{width:46px;height:46px}.brand span{font-size:.7rem}.site-header nav{gap:0}.search-hero{padding:64px 18px 78px}.search-hero h1{font-size:2.75rem}.hero-lead br{display:none}.hero-note{padding:20px 0 0 22px}.search-panel{margin-top:-18px}.search-heading{display:block;padding:20px}.search-heading>p{margin-bottom:8px}.search-heading>div{display:block}.filters{grid-template-columns:1fr;padding:0 20px 24px}.filters label,.filters label+label{padding:18px 0 0;border-left:0}.filter-actions{align-items:stretch;flex-direction:column}.filter-actions button{width:100%;border-radius:26px}.filter-actions a{text-align:center}.results{padding-bottom:75px}.result-head{margin-bottom:22px}footer{display:block}footer small{display:block;margin-top:24px}}


/* Planner list */
.planner-list{display:grid;gap:38px}.planner-entry{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:340px;background:#fff;border:1px solid #dfe5e0}.portrait{position:relative;display:grid;min-height:100%;place-items:center;overflow:hidden;color:#fff;background:#789686;font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:5rem}.portrait:after{content:"";position:absolute;right:16px;bottom:16px;width:42px;height:42px;border-right:1px solid #ffffff8a;border-bottom:1px solid #ffffff8a}.portrait img{width:100%;height:100%;min-height:340px;object-fit:cover;display:block;filter:saturate(.86)}.portrait span{line-height:1}.portrait small{position:absolute;bottom:24px;left:24px;font:700 .58rem Georgia,serif;letter-spacing:.2em}.planner-profile{position:relative;padding:30px 38px 31px}.planner-meta{display:flex;align-items:center;gap:16px;margin-bottom:14px}.entry-no{color:#a6b2aa;font:400 1.1rem Georgia,serif}.location{padding-left:15px;border-left:1px solid #b7c2ba;color:var(--green);font-size:.72rem;font-weight:800}.planner-name{display:flex;align-items:baseline;gap:18px;margin-bottom:21px}.planner-name h3{margin:0;font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:2rem;font-weight:600;letter-spacing:.04em}.planner-name p{margin:0;color:#7b8780;font-size:.72rem}.planner-profile h4{margin:0 0 8px;color:var(--deep);font-size:1.03rem}.pr{max-width:680px;margin:0;color:#526158;font-size:.84rem;line-height:1.9}.specialties{display:grid;grid-template-columns:110px 1fr;gap:16px;margin-top:20px;padding-top:15px;border-top:1px solid #e4e9e5}.specialties b{padding-top:4px;color:#748178;font-size:.64rem}.specialties>div{display:flex;flex-wrap:wrap;gap:5px 15px}.specialties span{position:relative;padding-left:10px;color:#415249;font-size:.7rem}.specialties span:before{content:"";position:absolute;top:.72em;left:0;width:4px;height:4px;background:var(--yellow)}.consult-link{display:flex;width:fit-content;min-width:245px;align-items:center;justify-content:space-between;gap:24px;margin:24px 0 0 auto;padding:13px 18px 13px 24px;color:#fff;background:var(--deep);font-size:.76rem;font-weight:800;text-decoration:none;transition:.25s}.consult-link i{display:grid;width:27px;height:27px;place-items:center;border-radius:50%;color:var(--deep);background:var(--yellow);font-style:normal;transition:.25s}.consult-link:hover{background:var(--green)}.consult-link:hover i{transform:translateX(4px)}.planner-entry:nth-child(even){grid-template-columns:minmax(0,1fr) 280px}.planner-entry:nth-child(even) .portrait{grid-column:2}.planner-entry:nth-child(even) .planner-profile{grid-column:1;grid-row:1}.planner-entry:nth-child(even) .consult-link{margin-left:0;margin-right:auto}@media(max-width:800px){.planner-entry,.planner-entry:nth-child(even){grid-template-columns:210px minmax(0,1fr)}.planner-entry:nth-child(even) .portrait{grid-column:1}.planner-entry:nth-child(even) .planner-profile{grid-column:2}.portrait img{min-height:360px}.planner-profile{padding:26px}.planner-name{display:block}.planner-name p{margin-top:3px}.specialties{grid-template-columns:1fr}.consult-link,.planner-entry:nth-child(even) .consult-link{margin-left:0;margin-right:0}}@media(max-width:600px){.planner-list{gap:25px}.planner-entry,.planner-entry:nth-child(even){display:block}.portrait{height:280px;min-height:280px}.portrait img{height:280px;min-height:280px}.planner-entry:nth-child(even) .portrait,.planner-entry:nth-child(even) .planner-profile{display:block}.planner-profile{padding:24px 20px 26px}.planner-name h3{font-size:1.7rem}.consult-link{width:100%;min-width:0;margin-top:22px}.specialties{gap:8px}}


/* Shared overrides */
/* 検索・相談ページの書体を協会サイトと同じゴシック体に統一 */
*,*::before,*::after{font-family:"Noto Sans JP","Yu Gothic",Meiryo,sans-serif!important}
.consult-link{justify-content:center;gap:0;padding-right:24px}


/* Consultation form */
.portrait img,.selected-photo img{width:100%;height:100%;object-fit:cover;display:block}.portrait img{border-radius:50%}.consult-page{min-height:calc(100vh - 78px);padding:70px 24px 110px;background:linear-gradient(145deg,#edf6ef 0,#f8faf8 44%,#e4f0e7 100%)}.consult-wrap{width:min(920px,100%);margin:auto}.consult-intro{max-width:700px;margin-bottom:40px}.eyebrow{margin:0;color:var(--green);font-size:.78rem;font-weight:900;letter-spacing:.16em}.consult-intro h1,.complete h1{margin:10px 0 18px;color:var(--deep);font-size:clamp(2.4rem,6vw,4.7rem);line-height:1.18}.consult-intro>p:last-child{max-width:650px;color:#526a60}.selected-planner{display:flex;align-items:center;gap:22px;margin:0 0 28px;padding:22px 30px;color:#fff;background:var(--deep);border-radius:42px 0 0 42px}.selected-photo{display:grid;flex:0 0 86px;width:86px;height:86px;place-items:center;overflow:hidden;border:4px solid #fff;border-radius:50%;background:var(--green);font-size:2rem;font-weight:900}.selected-planner small{color:#aee2bb;font-weight:800}.selected-planner h2{margin:2px 0;font-size:1.65rem}.selected-planner p{margin:0;color:#d9e8df}.consult-form,.consult-card{padding:46px;background:#fff;border-top:6px solid var(--yellow);box-shadow:0 22px 60px #194b3a14}.consult-form h2{margin:0 0 28px;color:var(--deep)}.consult-form form,.consult-form label{display:grid;gap:8px}.consult-form form{gap:22px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.consult-form label>span{font-size:.84rem;font-weight:800}.consult-form b{margin-left:5px;color:#b64632;font-size:.68rem}.consult-form input,.consult-form select,.consult-form textarea{width:100%;padding:14px 16px;border:1px solid var(--line);background:#fbfdfb;font:inherit}.consult-form textarea{min-height:180px;resize:vertical}.consult-form button,.back-button{display:flex;justify-content:center;width:min(440px,100%);margin:12px auto 0;padding:16px 24px;border:0;border-radius:99px;color:#fff;background:var(--green);font:inherit;font-weight:900;text-decoration:none;cursor:pointer;box-shadow:0 10px 25px #3b9b5833}.consent{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;justify-content:center}.consent input{width:auto}.honeypot{position:absolute!important;left:-9999px!important}.form-error{margin-bottom:20px;padding:14px 18px;color:#8e3529;background:#fff2ef;border-left:4px solid #c95b48}.complete{text-align:center}.complete-mark{display:grid;width:76px;height:76px;margin:0 auto 24px;place-items:center;border-radius:50%;color:#fff;background:var(--green);font-size:2.2rem}.complete>p:not(.eyebrow){max-width:590px;margin:0 auto 28px;color:#526a60}.missing{text-align:center}.missing h1{color:var(--deep)}@media(max-width:650px){.consult-page{padding:45px 14px 80px}.form-grid{grid-template-columns:1fr}.consult-form,.consult-card{padding:30px 20px}.selected-planner{padding:18px;border-radius:30px 0 0 30px}.selected-photo{flex-basis:68px;width:68px;height:68px}.selected-planner h2{font-size:1.25rem}}
