
:root{--bg:#fffdf9;--ink:#403b38;--muted:#80746c;--coral:#ce7d76;--pink:#f7e6df;--sage:#5c8273;--line:#e9ddd2;--gold:#ae865e}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:radial-gradient(ellipse at 0 3%,#faece5 0,transparent 29%),radial-gradient(ellipse at 100% 24%,#edf2eb70,transparent 30%),var(--bg);background-color:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;font-size:15px;line-height:1.95}header{display:flex;align-items:center;gap:25px;padding:19px max(24px,calc((100vw - 1160px)/2));border-bottom:1px solid var(--line);background:#fffdf9e8}header span{font-size:12px;color:var(--muted)}.brand{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:25px;color:#b66e66;letter-spacing:.08em;text-decoration:none;white-space:nowrap}.about-link{margin-left:auto;font-size:12px;color:#8b705e}main{max-width:1160px;margin:auto;padding:0 28px}h1,h2{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-weight:500}h1{font-size:clamp(32px,4vw,47px);line-height:1.75;letter-spacing:.06em;margin:14px 0}h1 em{font-style:normal;color:var(--coral)}h2{font-size:27px;line-height:1.6;margin:5px 0 13px}h3{font-size:17px;margin:0 0 12px}p{margin:8px 0 15px}a{color:#a46858}.eyebrow{font-size:11px;letter-spacing:.16em;color:var(--gold);font-weight:600}.hero{display:grid;grid-template-columns:1.2fr 1fr;gap:30px;align-items:center;padding:45px 0 40px}.hero figure{margin:0}.hero img{display:block;width:100%;border-radius:46% 46% 6px 6px}.hero figcaption{text-align:center;font-family:"Yu Mincho",serif;font-size:12px;color:#8f7866;margin-top:10px}.hero-sub{color:#a26c5f;letter-spacing:.1em;font-size:15px}.lead{color:#746b63;font-size:14px;line-height:2.1;margin-bottom:24px}.button,button{display:inline-flex;align-items:center;justify-content:center;gap:7px;font:inherit;font-size:13px;line-height:1.6;border:1px solid #ddcdbd;background:#fffefa;color:var(--ink);padding:11px 16px;border-radius:5px;cursor:pointer;text-decoration:none}button:hover,.button:hover{background:#f9f0e8;border-color:#cb9e88}.primary{background:var(--coral);border-color:var(--coral);color:white}.primary:hover{background:#b86a65;color:white;border-color:#b86a65}button:disabled{cursor:default;background:#f1eeea;border-color:#e7e1db;color:#9c9187}.how{display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0;margin:10px 0 18px;font-size:13px}.how b{font-family:Georgia,serif;font-size:22px;font-weight:normal;color:#c18370;margin-right:9px}.small-label{font-size:12px;color:#9a806d}.privacy{padding:15px 20px;background:#f4f4ed;border-radius:6px;font-size:13px;color:#6d6b5e}.privacy summary{font-weight:600}.privacy p{margin-top:13px}.muted{font-size:12px;color:var(--muted);line-height:1.9}summary{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #ae8057;outline-offset:3px}.section-top{display:flex;justify-content:space-between;align-items:end;gap:20px;margin:50px 0 22px}.section-top>p{font-size:12px;color:var(--muted)}.course-picker{background:linear-gradient(110deg,#f9eae3,#f7f3eb 65%,#edf2e9);border:1px solid #eddfd1;display:flex;justify-content:space-between;gap:20px;padding:23px 26px;align-items:center;border-radius:7px}.course-picker strong{font-size:15px}.course-picker p{font-size:12px;color:#8b7b6b;margin:5px 0 0}.segmented{display:flex;flex-shrink:0;gap:6px}.segmented button[aria-pressed=true]{background:#cc827a;border-color:#cc827a;color:white}.time-summary{padding:12px 5px 24px;font-size:12px;color:#826d5a}.workspace{display:grid;grid-template-columns:236px 1fr;gap:28px;align-items:start}nav{position:sticky;top:20px}nav button{display:flex;text-align:left;justify-content:flex-start;gap:13px;width:100%;padding:13px 11px;margin-bottom:7px;background:transparent;border:1px solid transparent}nav button[aria-current=step]{background:#f8e8e2;border-color:#efd4c9;color:#9d554e}nav .number{font-family:Georgia,serif;color:#b18863;font-size:23px}nav .label{font-size:14px}nav small{display:block;font-size:10px;color:#9a8575}article{background:white;border:1px solid var(--line);border-radius:9px;padding:30px;box-shadow:0 12px 35px #98734a07;min-width:0}.stage-intro{color:#776b62;font-size:14px}.goal{border-left:3px solid #a9b8a1;background:#f7f6ef;padding:14px 18px;margin:20px 0;font-size:13px}.goal strong{color:var(--sage);display:block;font-size:12px}.substeps{display:flex;flex-wrap:wrap;gap:7px;margin:23px 0}.substeps button{font-size:12px;padding:8px 11px}.substeps button[aria-pressed=true]{background:#f6e9e1;border-color:#dcb9a6;color:#945b4b}.task{border-top:1px solid var(--line);padding-top:22px}.task p{font-size:14px}.tag{display:inline-block;background:#edf0e7;color:#6a826a;font-size:10px;padding:2px 8px;border-radius:3px;margin-bottom:8px}.prompt-card{background:#fcf8f2;border:1px solid #ebded0;border-radius:6px;padding:18px 20px;margin:18px 0}.prompt-card p{font-size:12px;color:#8b7565}.actions{display:flex;gap:8px;flex-wrap:wrap}.checks{border-top:1px solid var(--line);margin-top:23px;padding-top:20px}.check{display:flex;align-items:flex-start;gap:9px;font-size:13px;margin:9px 0}.check input{width:18px;height:18px;accent-color:var(--coral);margin-top:4px;flex-shrink:0}.example{background:#f4f6f0;padding:16px 18px;border-radius:5px;font-size:12px;color:#667161;margin:14px 0}.example strong{display:block;color:#657a63}.callout{background:#fcf0e9;padding:13px 16px;font-size:12px;border-radius:4px;color:#97705b}.stage-footer{display:flex;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding-top:22px;margin-top:25px}.step-count{font-size:11px;color:#9a8575}.tool-links{font-size:12px;margin-top:14px}.tool-links a{display:inline-block;margin-right:10px}details.extra{border-top:1px solid var(--line);padding:15px 0;font-size:13px;margin-top:15px}details.extra p{font-size:12px}.plan-form{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:15px 0}label.field{font-size:12px;color:#7c6c60;display:flex;flex-direction:column;gap:5px}select,input[type=number]{font:inherit;font-size:14px;padding:10px;background:white;border:1px solid #ddcdbf;border-radius:5px;color:var(--ink);width:100%}.estimate{border:1px solid #d8e0d0;background:#f6f7f0;padding:17px;border-radius:5px;font-size:13px;margin-top:16px}.estimate h4{margin:0 0 8px;color:#66816b;font-size:14px}.estimate p{font-size:12px}.mini-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:18px 0}.mini-slide{aspect-ratio:16/10;border:1px solid #e9dccd;background:#fffcf7;padding:14px 12px;border-radius:3px;position:relative;font-size:11px;overflow:hidden}.mini-slide b{font-family:"Yu Mincho",serif;font-weight:500;color:#b57469;font-size:14px;display:block}.mini-slide .bar{height:3px;background:#e7d9cb;width:65%;margin-top:9px}.mini-slide .bar.short{width:42%}.mini-slide .shape{border-radius:50%;width:25px;height:25px;background:#e2eadb;margin-top:9px}.mini-slide small{display:block;color:#9a8978;font-size:8px;margin-top:7px}.timer{background:#f8f3eb;padding:20px;border-radius:6px;text-align:center;margin:18px 0}.clock{font:44px Georgia,serif;color:#a57559;letter-spacing:.04em;margin:8px}.timer .actions{justify-content:center}.timer p{font-size:12px}.timer.over .clock{color:#b2514d}.review-table{width:100%;border-collapse:collapse;font-size:12px;margin:18px 0}.review-table th,.review-table td{text-align:left;padding:10px;border-bottom:1px solid var(--line);vertical-align:top}.review-table th{font-weight:600;color:#906a50}.copy-example{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 0;border-top:1px solid var(--line)}.copy-example p{font-size:12px;margin:0}.copy-example button{flex-shrink:0;padding:7px 10px;font-size:11px}.return-box{margin:48px 0;display:flex;align-items:center;justify-content:space-between;gap:25px;background:linear-gradient(110deg,#f6eee4,#edf1e8);padding:28px;border-radius:7px}.return-box h2{font-size:23px}.return-box p{font-size:13px;color:#7d7063}.return-box button{flex-shrink:0}.about{border-top:1px solid #dfcdb8;padding:45px 0 35px}.about-intro{font-family:"Yu Mincho",serif;font-size:19px;line-height:1.9;color:#876958}.about>p:not(.eyebrow){max-width:850px}.about>p{font-size:14px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:28px}.about-grid section{border-top:1px solid var(--line);padding-top:24px}.about-grid p,.about-grid li{font-size:13px}.link-pending{display:block;color:#a39385;border:1px solid #e4d9cd;border-radius:4px;padding:9px 12px;margin:7px 0;font-size:12px}.about-grid ol{padding-left:21px}footer{display:flex;justify-content:space-between;gap:15px;border-top:1px solid var(--line);padding:23px 0;font-size:11px;color:#9b8877}dialog{border:1px solid #e6d5c5;border-radius:10px;width:min(760px,calc(100% - 28px));max-height:90vh;padding:26px;color:var(--ink);background:#fffdf9;box-shadow:0 30px 100px #3d302b35}dialog::backdrop{background:#3c30274d;backdrop-filter:blur(3px)}.dialog-head{display:flex;justify-content:space-between;gap:12px;align-items:start}.dialog-head h2{font-size:23px}.dialog-head button{font-size:24px;padding:3px 12px}.dialog-actions{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}#dialogHint{font-size:13px;color:#887566}textarea{width:100%;height:42vh;min-height:220px;resize:vertical;border:1px solid #e5d8c8;border-radius:5px;padding:16px;background:#fcfaf5;color:#52463c;font:13px/1.85 ui-monospace,monospace}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#75594d;color:white;padding:11px 22px;border-radius:7px;font-size:13px;z-index:20;max-width:90vw}.toast[hidden]{display:none}ul{padding-left:20px}
@media(max-width:780px){header{padding:15px 18px;gap:12px;flex-wrap:wrap}.brand{font-size:22px}header span{font-size:10px}.about-link{font-size:10px}main{padding:0 18px}.hero{grid-template-columns:1fr;gap:22px;padding:30px 0}h1{font-size:33px}.hero figure{max-width:320px;margin:auto}.hero img{height:220px;object-fit:cover;object-position:center 52%;border-radius:43% 43% 5px 5px}.hero figcaption{font-size:11px}.hero .lead{font-size:13px}.how{display:grid;grid-template-columns:1fr 1fr;gap:9px;font-size:11px}.how .small-label{grid-column:1/-1}.how b{font-size:18px}.how div:last-child{grid-column:1/-1}.section-top{display:block;margin-top:35px}.section-top>p{margin:0 0 15px}.course-picker{display:block;padding:20px}.segmented{margin-top:15px}.segmented button{flex:1}.time-summary{line-height:1.9;padding:14px 2px 18px}.workspace{display:block}nav{position:static;display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-bottom:17px}nav button{display:block;text-align:center;padding:9px 3px;margin:0}nav .number{display:block;font-size:18px;line-height:1.3}nav .label{font-size:10px}nav small{display:none}article{padding:24px 18px}h2{font-size:24px}.mini-preview{gap:5px}.mini-slide{padding:8px 6px}.mini-slide b{font-size:11px}.mini-slide small{display:none}.return-box{display:block;padding:23px}.return-box button{margin-top:10px}.about-grid{grid-template-columns:1fr;gap:20px}footer{display:block}footer span{display:block}dialog{padding:20px}.dialog-head h2{font-size:20px}.plan-form{gap:10px}.review-table th,.review-table td{padding:8px 5px}.copy-example{display:block}.copy-example button{margin-top:8px}.about-intro{font-size:17px}}

/* 共通の分野選び → 講座の長さ → 個別の工程 */
nav .course-picker{display:block;padding:15px 12px;margin:10px 0 16px;border-radius:5px}
nav .course-picker strong{font-size:11px;color:#8c715e}
nav .segmented{display:grid;grid-template-columns:1fr;gap:6px;margin-top:10px}
nav .segmented button{margin:0;justify-content:center;text-align:center;font-size:12px;padding:9px;background:#fffefa;border:1px solid #e3cbbb}
nav .segmented button[aria-pressed=true]{background:#cc827a;border-color:#cc827a;color:white}
.time-summary{padding:12px 14px;background:#faf6ef;border-radius:4px;font-size:11px;margin:14px 0 0;color:#8a7563;line-height:1.9}
@media(max-width:780px){nav{display:block}.common-nav button{display:flex;width:100%;gap:12px;padding:11px 15px;text-align:left}.common-nav small{display:block}.common-nav .number{display:inline}.common-nav .label{font-size:13px}nav .course-picker{padding:12px 15px;margin:8px 0 12px}nav .segmented{grid-template-columns:1fr 1fr;margin-top:8px}.course-stages{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.course-stages button{margin:0}.course-stages .label{font-size:11px}.course-stages .number{margin-bottom:4px}}

.hero h1{font-size:clamp(28px,3.4vw,41px);line-height:1.8}.about-story{max-width:850px}.about-story p{margin-bottom:24px;font-size:14px;line-height:2.15}.about-story .about-intro{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:19px;line-height:2;color:#876958;margin-bottom:29px}.about-grid{grid-template-columns:1fr 1.1fr}.lab-flow li{padding:8px 0 8px 4px}.lab-link-buttons{display:grid;gap:9px}.lab-link-button{width:100%;display:flex;justify-content:space-between;text-align:left;gap:12px;padding:13px 16px;border:1px solid #ddc7b5;background:#fffaf5;border-radius:5px;color:#8d6a55;font-size:13px}.lab-link-button:disabled{background:#faf4ed;border-color:#e2d4c5;color:#897260;opacity:1}.lab-link-button small{font-size:10px;color:#a88c73;white-space:nowrap}.usage-terms{border-top:1px solid var(--line);padding:26px 0 40px;max-width:100%}.usage-terms h3{font-size:13px;font-weight:600;color:#806951}.usage-terms ul{padding-left:20px;margin:10px 0 0}.usage-terms li{font-size:12px;line-height:2;color:#7f7369;margin-bottom:8px}@media(max-width:780px){.hero h1{font-size:29px;letter-spacing:.03em}.about-grid{grid-template-columns:1fr}.about-story .about-intro{font-size:17px}.about-story p{font-size:13px}.about-grid h3{font-size:16px}.lab-link-button{font-size:12px}.usage-terms li{font-size:11px}}

.consultation{border-left:3px solid #b1bba8;background:#f4f5ee;padding:20px 24px;margin:10px 0 40px;color:#6c765f}.consultation strong{font-family:"Yu Mincho",serif;font-size:19px;font-weight:500}.consultation p{font-size:13px;margin:8px 0 0}.taste-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:20px 0 12px}.taste-card{padding:0;display:block;overflow:hidden;background:white;border:2px solid #e6ddd2;text-align:center}.taste-card img{display:block;width:100%;height:auto}.taste-card span{display:block;padding:10px 5px;font-size:12px}.taste-card[aria-pressed=true]{border-color:#c78178;box-shadow:0 0 0 2px #f4ded7}.route-field{grid-column:1/-1}.route-field select{width:100%;max-width:100%;font-size:12px}.quota-list{font-size:12px;line-height:1.9}.quota-list li{margin-bottom:10px}.magic-steps{list-style:none;counter-reset:magic;padding:0;margin:20px 0}.magic-steps li{counter-increment:magic;border-top:1px solid #e9ded2;padding:16px 0 16px 38px;position:relative;font-size:13px}.magic-steps li:before{content:counter(magic);position:absolute;left:0;top:15px;font:23px Georgia,serif;color:#b88964}.magic-steps b{display:block;font-size:14px;margin-bottom:4px}.magic-steps span{font-size:12px;color:#827466}.estimate h4{font-size:16px}.usage-terms{padding-bottom:25px}footer{padding-bottom:26px}@media(max-width:780px){.taste-grid{grid-template-columns:1fr}.taste-card img{max-height:210px;object-fit:cover}.taste-card span{padding:8px}.consultation{padding:18px}.consultation strong{font-size:17px}.route-field select{font-size:11px}.quota-list{padding-left:18px}}

.about-story p,.about-story .about-intro{margin:0}.about-story .about-intro{font-family:inherit;font-size:14px;line-height:2.15;color:var(--ink)}.about-story .about-closing{margin-top:24px}@media(max-width:780px){.about-story .about-intro{font-size:13px}}

.about-story .about-body{margin-top:24px}.canva-extra{margin:24px 0;background:#f3eff8;border:1px solid #dfd3e8;border-radius:7px;padding:20px;color:#655773}.extra-heading{display:flex;align-items:center;gap:10px}.extra-heading>span{background:#9b83b0;color:white;font-size:10px;border-radius:4px;padding:3px 9px;letter-spacing:.1em}.extra-heading strong{font-size:14px}.canva-extra>p{font-size:12px;margin:7px 0 14px;color:#8a7899}.extra-guide{border-top:1px solid #dfd3e8;padding:13px 0}.extra-guide:last-child{padding-bottom:0}.extra-guide summary{font-size:14px;color:#705784;font-weight:600}.extra-guide ol{padding-left:22px;margin:14px 0;font-size:13px;line-height:1.9}.extra-guide li{margin-bottom:8px}.extra-guide a{font-size:12px;color:#806490;display:inline-block;margin:10px 0}.extra-guide h4{font-size:13px;color:#705784;margin:15px 0 3px}.extra-guide p{font-size:12px;color:#76677e;line-height:1.9;margin:0 0 8px}.extra-guide .guide-tip{font-size:11px;color:#93839e;margin-top:12px}.page-guide{border-top:1px solid #dfd3e8;margin-top:10px;padding-top:4px}@media(max-width:780px){.canva-extra{padding:17px}.extra-heading strong,.extra-guide summary{font-size:13px}}
