/* MARBLE: warm paper, playful color, rounded Japanese typography. */
@font-face{font-family:MarbleRound;src:url('fonts/zen-maru-regular.woff') format('woff');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:MarbleRound;src:url('fonts/zen-maru-bold.woff') format('woff');font-style:normal;font-weight:600 900;font-display:swap}
:root{--ink:#514b48;--green:#427e73;--cream:#fffcf7;--pink:#f5b6bb;--yellow:#f4c65a;--blue:#a2d7ed;--coral:#b95138}
body{font-family:MarbleRound,'Hiragino Maru Gothic ProN',Meiryo,sans-serif;background:#fffcf7;color:var(--ink);font-size:16px;line-height:2;letter-spacing:.025em}
h1,h2,h3{font-weight:700;line-height:1.65;letter-spacing:.05em;color:#524a46}p{line-height:2.1}
header{background:rgba(255,252,247,.97);border-bottom:1px solid #f4e9dd}.header{min-height:105px}.draft{background:#ffedda;color:#815d48;letter-spacing:.15em}
.logo small{font-size:9px;letter-spacing:.03em}.logo b{font-family:MarbleRound,sans-serif;font-size:36px;font-weight:700;letter-spacing:.055em}.logo b span{display:inline-block}.logo b span:nth-child(3n+1){color:#c46149}.logo b span:nth-child(3n+2){color:#4e9588}.logo b span:nth-child(3n){color:#9d781c}.logo b span:nth-child(2n){transform:translateY(3px)}
nav{font-size:13px;gap:25px}nav a[aria-current=page]{color:#a94f39;text-decoration-color:#f2b784;text-decoration-thickness:3px}.navpill,.button{background:#ad513a;color:white;border:1px solid transparent;box-shadow:0 4px 0 #ead4c7;padding:14px 25px;font-weight:700;letter-spacing:.04em}.navpill{box-shadow:none}.secondary{background:#fff;color:#6c6059;border:1px solid #e4d6c9;box-shadow:0 4px 0 #f4e8dc}.button:hover{filter:none;background:#99442f;transform:translateY(-2px)}.secondary:hover{background:#fff1df}
.hero{position:relative;padding-top:65px;padding-bottom:72px;gap:20px;isolation:isolate}.homepage main{overflow:hidden}.hero:before{content:'';position:absolute;width:450px;height:450px;background:#fff0db;border-radius:50%;left:-345px;top:60px;z-index:-1}.hero:after{content:'';position:absolute;width:135px;height:135px;background:radial-gradient(#eac5a5 1.5px,transparent 1.5px);background-size:13px 13px;right:-65px;bottom:25px;z-index:-1;border-radius:50%}
.eyebrow{font-size:11px;font-weight:400;color:#756c62;letter-spacing:.03em}.hero-note{display:inline-block;margin-top:23px;padding:5px 17px;background:#ffe7c9;color:#8d5937;border-radius:25px 25px 25px 5px;font-size:13px;font-weight:700}.hero h1{font-size:clamp(32px,3.4vw,46px);line-height:1.65;margin:18px 0 24px;letter-spacing:.06em}.hero h1 em{background:linear-gradient(transparent 77%,#f9d794 77%)}.hero h1 em span:first-child{color:#c06047}.hero h1 em span:last-child{color:#398b83}.hero .lead{font-size:18px;color:#9a5741}.hero p{font-size:15px}.hero svg{filter:drop-shadow(0 15px 0 #faeee050);transform:rotate(1deg)}
.ribbon{background:#fff0d5;border:0;padding:22px 12px;color:#76604d;font-size:14px;position:relative}.ribbon span:before{content:'●';font-size:12px;color:#d57564;margin-right:12px}.ribbon span:nth-child(2):before{color:#66a9a0}.ribbon span:nth-child(3):before{color:#729bb9}
.section{padding-top:88px;padding-bottom:88px}.label,.sectiontitle small{font-family:MarbleRound,sans-serif;color:#92664b;font-weight:700;font-size:12px;letter-spacing:.15em}.label:before{content:'';display:inline-block;width:9px;height:9px;background:#e9ab77;border-radius:50%;margin-right:9px}.home-title{font-size:33px;color:#75604e}.about{gap:80px}.about p{font-size:15px}.soft{background:#eef6f4;border-radius:70px 70px 0 0;position:relative}.sectiontitle h2{font-size:31px}.homegrid{gap:25px}.tile{border:0;border-radius:38px 38px 38px 10px;padding:32px;box-shadow:0 7px 0 #dbece6}.tile:nth-child(2){background:#fff4df;box-shadow:0 7px 0 #f2dfb8;border-radius:38px 12px 38px 38px}.tile:nth-child(3){background:#e7f2fc;box-shadow:0 7px 0 #cfe2f2;border-radius:12px 38px 38px 38px}.tile small{color:#796352;font-size:12px}.tile h3{font-size:24px;margin:20px 0 12px}.tile p{font-size:14px}.tile .arrow{font-size:14px;font-weight:700;margin-top:23px}.eval-head{gap:30px}.eval-head h2{font-size:30px}.eval-head p{font-size:14px}
.pagetop{background:#fff0dd;border-radius:0 0 70px 0;position:relative;overflow:hidden;padding:40px 0 45px}.pagetop:after{content:'';position:absolute;width:240px;height:240px;border:35px solid #f6d2be;border-radius:50%;right:-90px;top:-70px;opacity:.55;pointer-events:none}.pagetop h1{font-size:36px;color:#75523e;position:relative;z-index:1}.pagetop p{font-size:15px}.crumb{color:#806e61}.philosophy{background:#fff1da;border-radius:55% 45% 42% 58% / 15% 25% 20% 20%;padding:50px 25px}.philosophy h2{color:#855b40}.principle{background:#e8f3ed;border-radius:30px}.principle:nth-child(2){background:#ffebe4}.principle:nth-child(3){background:#e7f2fa}.principle span{color:#a16d4c}.principle h3{font-size:18px}.domain{border-color:#eeded0;grid-template-columns:230px 1fr}.domain h3{color:#a05b40}.domain p{font-size:15px}.subgrid article{background:#f5f0e9;border-radius:28px}.subgrid article:nth-child(even){background:#edf5f5}.subgrid p{font-size:14px}.step{border:1px solid #eeded1;border-radius:30px;box-shadow:5px 5px 0 #faf0e5;margin-bottom:30px}.stepno{background:#ffe5c5;color:#97572f}.step:nth-child(2n) .stepno{background:#def0eb;color:#427e73}.step p{font-size:15px}.notice{background:#fff0d8;border-radius:24px}.info{border-color:#efdfd1;border-radius:24px;overflow:hidden}.info dt{background:#fff0df}.info dt,.info dd{border-color:#eeded2;font-size:15px}.info dd{background:white}.mapframe{border:7px solid white;box-shadow:0 0 0 1px #e8ded2;border-radius:30px}
.docbox{background:#edf6f1;border:1px solid #d5e8dd;border-radius:32px;padding:32px}.docbox h2{font-size:27px}.docbox p{font-size:15px}.programdetails{border:0;border-radius:20px}.programdetails summary{color:#477e70;font-size:16px}.programdetails h3{font-size:18px}.docmeta{color:#6b756c}.subheading{font-size:29px}.evaluation-results{margin-top:65px}.bubble{background:#ffe7bd;color:#82572d;padding:7px 22px}.service-evaluation h3{border-color:#e8a36f;color:#855238}.service-evaluation:nth-of-type(2) h3{border-color:#8ac5c5;color:#437e80}.evaluation-files{border:1px solid #edddcf;border-radius:25px;box-shadow:0 5px 0 #f8eee5}.evaluation-file{padding:24px 28px}.evaluation-file+.evaluation-file{border-color:#efe5db}.evaluation-file strong{font-size:17px}.file-actions{color:#99543c;font-size:13px}.thanks{font-size:13px;color:#7c6a5c}
.contactbox{background:#ffecd7;border-radius:44px 44px 44px 12px;padding:42px 45px;border:1px solid #f7ddc1;position:relative}.contactbox h2{color:#82543d;font-size:25px}.contactbox p{font-size:14px}.phone{font-size:30px;color:#a65339}.mail{font-size:13px;color:#775c4e}.closing{background:#edf5f3;padding:40px 20px}.closing p{color:#658078;font-size:15px}.dots{gap:13px}.dots i{height:15px;width:15px}.dots i:nth-child(2){transform:translateY(-5px)}footer{background:#fffcf7;padding:45px 0}.footer p{color:#796d64}.footernav a{border-color:#e4c9b2}a:focus-visible,summary:focus-visible{outline-color:#af603f}
@media(max-width:950px){nav{gap:14px;font-size:11px}.logo small{font-size:8px}.hero h1{font-size:36px}.header{gap:15px}.hero p{font-size:14px}}
@media(max-width:760px){.wrap{padding-left:23px;padding-right:23px}.header{padding-top:15px;padding-bottom:14px;min-height:0}.logo b{font-size:31px}.header nav{margin-top:17px;gap:7px 18px;font-size:12px}.navpill{padding:7px 14px}.hero{padding-top:30px;padding-bottom:35px;gap:20px}.eyebrow{font-size:10px}.hero-note{font-size:12px;margin-top:20px}.hero h1{font-size:clamp(29px,8.5vw,40px);margin:16px 0 22px}.hero .lead{font-size:16px}.hero p{font-size:14px}.hero svg{max-width:390px}.hero:before{width:300px;height:300px;left:-250px}.hero:after{right:-75px;bottom:30px}.hero .button{padding:12px 17px;font-size:12px}.ribbon{font-size:11px;padding:18px 5px;letter-spacing:0}.ribbon span{margin:0 4px}.ribbon span:before{margin-right:5px;font-size:8px}.section{padding-top:55px;padding-bottom:55px}.about{gap:15px}.home-title{font-size:28px}.about p{font-size:14px}.soft{border-radius:40px 40px 0 0}.sectiontitle h2{font-size:27px}.homegrid{gap:25px}.tile{padding:26px}.tile h3{font-size:22px;margin:10px 0}.tile .arrow{margin-top:12px}.eval-head{display:block}.eval-head h2{font-size:26px}.eval-head>.button{margin-top:12px}.pagetop{border-radius:0 0 45px 0;padding:28px 0 35px}.pagetop h1{font-size:27px;letter-spacing:.02em}.pagetop p{font-size:14px}.pagetop:after{width:150px;height:150px;right:-90px;border-width:25px}.philosophy{padding:35px 18px}.philosophy h2{font-size:22px}.domain{grid-template-columns:1fr}.domain p,.step p{font-size:14px}.info dt,.info dd{font-size:12px}.docbox{padding:24px 20px}.docbox h2{font-size:24px}.subheading{font-size:25px}.service-evaluation h3{font-size:20px}.evaluation-file{padding:21px}.evaluation-file strong{font-size:16px}.file-actions{gap:8px 22px}.contactbox{padding:28px 24px;margin:0 20px 35px;border-radius:32px 32px 32px 10px}.contactbox h2{font-size:21px}.contactbox p{font-size:13px}.phone{font-size:29px}.closing p{font-size:13px}.footer p{font-size:12px}}
@media print{body{color:#222}.hero:before,.hero:after,.pagetop:after{display:none}.tile,.contactbox,.evaluation-files{box-shadow:none}}
