@charset "UTF-8";
:root{--paper:#fff;--cream:#f8f7f3;--sage:#7b8873;--sage-dark:#57654f;--rose:#b7887b;--mustard:#ac8125;--blue:#596a75;--ink:#50453c;--muted:#6c6b62;--line:#dad7cd;--pale-sage:#eef1e9;--round:12px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-size:16px;line-height:1.95;letter-spacing:.035em;overflow-wrap:anywhere}a{color:inherit;text-decoration:none}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:3px solid var(--sage-dark);outline-offset:5px}img{display:block;max-width:100%;height:auto}svg{stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;fill:none}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:600}h1,h2{font-family:"Hiragino Maru Gothic ProN","Noto Sans JP","Yu Gothic",sans-serif}h2{font-size:clamp(25px,2.7vw,36px);line-height:1.6;letter-spacing:.08em;color:var(--sage-dark);margin:21px 0 28px}h3{font-size:18px;line-height:1.65}p+p{margin-top:20px}.wrap{width:min(1120px,calc(100% - 56px));margin-inline:auto}.section{padding-block:96px}.quiet{font-size:13px;color:var(--muted);line-height:1.85}.label{display:inline-block;border-radius:24px;background:var(--sage);color:white;font-size:13px;font-weight:600;line-height:1.5;padding:5px 16px;letter-spacing:.09em}.skip{position:absolute;left:16px;top:-100px;z-index:9;background:white;padding:10px}.skip:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.header{padding:27px 0 24px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid #efede6}.brand{display:flex;gap:12px;align-items:center;color:var(--sage-dark);flex-shrink:0}.brand-icon{width:35px;height:35px;stroke-width:1.7}.brand-name{display:block;font-size:23px;font-weight:600;letter-spacing:.13em;line-height:1.5;color:var(--sage-dark)}.brand-sub{display:block;font-size:10px;letter-spacing:.02em;margin-top:4px}.header nav{display:flex;gap:25px;align-items:center;font-size:12px;letter-spacing:.01em}.header nav a{padding:8px 0}.header nav a:hover,.text-link:hover,.footer a:hover{color:var(--sage-dark);text-decoration:underline;text-underline-offset:5px}.nav-host{color:var(--sage-dark);border-bottom:1px solid var(--sage)}
.hero{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center;padding-top:72px;padding-bottom:68px}.eyebrow{font-size:12px;color:var(--sage-dark);display:flex;align-items:center;gap:8px}.dot{width:6px;height:6px;display:inline-block;border-radius:50%;background:var(--sage)}h1{font-size:clamp(35px,3.6vw,48px);color:var(--sage-dark);letter-spacing:.08em;line-height:1.65;margin:25px 0 27px;white-space:nowrap}.underlined{border-bottom:4px solid #e2e6da;padding-bottom:4px}.hero-lead{font-size:16px;line-height:2.1}.hero-small{font-size:13px;line-height:1.95;margin-top:18px;color:var(--muted)}.facts{list-style:none;padding:0;display:flex;gap:25px;margin:28px 0 26px;font-size:13px;color:var(--sage-dark)}.facts li{display:flex;gap:8px;align-items:center}.facts svg{width:18px;height:18px}.actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap}.button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:28px;padding:12px 23px;border-radius:6px;font-size:13px;font-weight:600;line-height:1.7;letter-spacing:.015em;border:1px solid var(--sage-dark)}.primary{color:white;background:var(--sage-dark)}a.primary[href]:hover{background:#46533f}.button span{font-size:20px;line-height:1}.text-link{display:inline-flex;align-items:center;gap:14px;color:var(--sage-dark);font-size:13px;border-bottom:1px solid #a8b29e;padding-bottom:4px}.hero-note{font-size:11px;margin-top:14px}.hero-kit{min-width:0;margin-top:30px}.kit-stage{position:relative;height:390px;background-color:var(--cream);background-image:linear-gradient(#87937d09 1px,transparent 1px),linear-gradient(90deg,#87937d09 1px,transparent 1px);background-size:24px 24px;border-radius:50% 48% 42% 49%;isolation:isolate}.hero-sheet{position:absolute;width:84%;border:1px solid #e8e5dd;box-shadow:0 3px 8px #50453c07;background:white}.sheet-front{top:20px;left:3%;transform:rotate(-6deg);z-index:2}.sheet-back{top:139px;left:12%;transform:rotate(6deg);z-index:1}.kit-tab{position:absolute;bottom:3px;right:14px;background:#e9ddc8;padding:4px 14px;font-size:10px;color:#78694a;z-index:3;transform:rotate(-3deg)}.hero-kit figcaption{margin-top:23px;text-align:center;font-size:11px;color:var(--muted);display:flex;align-items:center;justify-content:center;gap:10px}.tiny-line{width:23px;border-top:1px solid var(--line)}.experience-ribbon{display:flex;justify-content:center;align-items:center;gap:38px;padding:22px 0;border-block:1px dashed var(--line);font-size:14px;font-weight:600;letter-spacing:.13em}.experience-ribbon span:nth-of-type(1){color:var(--sage)}.experience-ribbon span:nth-of-type(2){color:var(--rose)}.experience-ribbon span:nth-of-type(3){color:var(--mustard)}.experience-ribbon span:nth-of-type(4){color:var(--blue)}.experience-ribbon i{color:var(--line);font-style:normal}.about{display:grid;grid-template-columns:5fr 6fr;gap:70px}.prose{font-size:15px;line-height:2.1}.key-sentence{color:var(--sage-dark);font-weight:600;border-left:2px solid #a6b29e;padding-left:22px;margin-top:32px}.benefits-shell{background:var(--cream)}.heading-row{display:flex;justify-content:space-between;align-items:center;gap:32px}.benefits{list-style:none;margin:16px 0 32px;padding:0;display:grid;grid-template-columns:1fr 1fr;column-gap:70px}.benefits li{display:flex;gap:22px;padding:25px 0;border-bottom:1px dashed #d6d5c9;align-items:baseline}.list-number{flex:0 0 1.2em;white-space:nowrap;font-family:Georgia,serif;font-size:24px;color:#8b957e;letter-spacing:0}.benefits h3{font-size:17px}.benefits p{font-size:13px;color:var(--muted);margin-top:9px;line-height:1.95}.note{font-size:12px;line-height:1.9;color:var(--muted);border-left:2px solid var(--line);padding-left:17px}.experiences{display:grid;grid-template-columns:repeat(4,1fr);margin-top:43px;gap:34px}.experience{--color:var(--sage);border-top:1px solid var(--color);padding:20px 5px 0}.experience.words{--color:var(--rose)}.experience.share{--color:var(--mustard)}.experience.reflect{--color:var(--blue)}.experience-title{display:flex;gap:10px;align-items:center;color:var(--color)}.experience-title>span{width:28px;height:28px;border-radius:50%;background:var(--color);color:white;font-size:12px;display:grid;place-items:center;letter-spacing:0}.experience h3{font-size:19px;letter-spacing:.07em}.experience img{width:132px;height:120px;object-fit:contain;margin:23px auto}.experience p{font-size:14px;line-height:1.95}.small-callout{display:flex;align-items:center;justify-content:center;gap:25px;border:0;padding:22px;margin-top:46px}.small-callout>span{font-size:29px;color:var(--sage)}.small-callout p{font-size:13px;line-height:1.85}.flow-section{display:grid;grid-template-columns:5fr 6fr;gap:70px;border-top:1px dashed var(--line)}.flow-section .section-intro>p{font-size:14px;color:var(--muted);margin-bottom:22px}.flow-reminder{padding:24px;margin-top:42px;border-radius:8px;background:var(--cream);max-width:330px}.flow-reminder>span{font-size:11px;color:var(--sage-dark)}.flow-reminder p{font-size:14px;margin-top:10px}.flow-reminder p.quiet{font-size:12px}.timeline{list-style:none;margin:0;padding:0;position:relative}.timeline:before{content:"";position:absolute;left:17px;top:18px;bottom:45px;border-left:1px dashed #bcc4b4}.timeline li{display:flex;gap:23px;position:relative;margin-bottom:23px}.timeline li:last-child{margin-bottom:0}.timeline li>span{background:var(--sage);color:white;width:35px;height:35px;border-radius:50%;display:grid;place-items:center;font-size:12px;flex-shrink:0;letter-spacing:0}.timeline h3{font-size:16px;color:var(--sage-dark);margin-top:3px}.timeline p{font-size:13px;color:var(--muted);margin-top:5px}.preparation{border-top:1px dashed var(--line)}.preparation-columns{display:grid;grid-template-columns:1fr 1fr;gap:65px;margin-top:38px}.preparation-columns>div{border:1px solid var(--line);border-radius:var(--round);padding:30px}.preparation-columns h3{font-size:16px;color:var(--sage-dark);display:flex;align-items:center;gap:13px}.preparation-columns h3>span{font-size:12px;font-weight:400}.checklist{list-style:none;padding:0;margin:22px 0;display:grid;grid-template-columns:1fr 1fr;gap:11px 20px;font-size:13px}.checklist li{padding-left:19px;position:relative}.checklist li:before{content:"";position:absolute;left:0;top:9px;width:8px;height:8px;border:1px solid #9c9f8f}.preparation-columns>div:nth-child(2) .checklist{grid-template-columns:1fr}.preparation-columns .quiet{font-size:11px}.download-shell{background:var(--cream)}.status{display:inline-flex;align-items:center;gap:7px;border:1px solid #cfcdbc;padding:5px 13px;border-radius:20px;font-size:11px;white-space:nowrap;color:#706c59}.status:before{content:"";width:5px;height:5px;background:#b4a27b;border-radius:50%}.download-intro{font-size:14px;color:var(--muted);line-height:2}.kit-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin:37px 0}.kit-gallery a{background:white;border:1px solid #e2dfd5;border-radius:6px;padding:20px 17px 13px}.kit-gallery a:hover{border-color:var(--sage)}.kit-gallery img{width:100%;height:190px;object-fit:contain}.kit-gallery a>span{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--sage-dark);padding-top:18px;margin-top:14px;border-top:1px solid #efede7}.download-bar{display:flex;justify-content:space-between;align-items:center;gap:24px;border-block:1px dashed #c8cabc;padding:26px 0}.download-bar h3{font-size:19px;color:var(--sage-dark)}.download-bar p{font-size:13px;color:var(--muted);margin-top:5px}.download-action{text-align:center}.download-action .quiet{font-size:11px;margin-top:7px}.button[aria-disabled=true]{background:#e8e7df;color:#696c5e;border-color:#d7d9cd;cursor:default}.individual-files{margin-top:17px}.individual-files summary{font-size:13px;color:var(--sage-dark);padding:13px 0;max-width:100%}.individual-files .detail-mark{margin-left:auto}.files{display:grid;grid-template-columns:1fr 1fr;gap:0 40px;padding:10px 0 18px}.files a{display:flex;justify-content:space-between;border-bottom:1px solid #e0ded3;padding:11px 0;font-size:12px}.files a>span{font-size:10px;color:var(--muted)}.files a[aria-disabled=true]{color:var(--muted)}.files a[href]:hover{color:var(--sage-dark);text-decoration:underline}.host-panel{position:relative;background:var(--pale-sage);border:1px solid #d9dfd1;border-radius:var(--round);padding:60px 64px;overflow:hidden}.host-panel:after{content:"";position:absolute;width:190px;height:165px;background:url('assets/watercolor.png') no-repeat center/contain;bottom:-30px;right:-25px;opacity:.38;pointer-events:none}.host-panel h2{font-size:clamp(28px,3.4vw,42px);margin:25px 0 20px}.host-lead{font-size:16px;line-height:2}.host-content{display:grid;grid-template-columns:1.05fr 1fr;gap:50px;margin-top:35px}.host-content .prose{font-size:13px;line-height:2}.host-emphasis{font-weight:600;color:var(--sage-dark)}.host-request{border-left:1px dashed #bfc8b5;padding-left:30px}.host-request h3{font-size:15px;color:var(--sage-dark)}.host-request ol{list-style:none;counter-reset:request;margin:20px 0 0;padding:0}.host-request li{counter-increment:request;display:flex;gap:13px;font-size:13px;line-height:1.9;margin-bottom:15px}.host-request li:before{content:counter(request,decimal-leading-zero);font-family:Georgia,serif;color:var(--sage-dark);font-size:17px}.host-audience{border-top:1px dashed #bac4ad;margin-top:32px;padding-top:23px}.host-audience h3{font-size:13px;font-weight:600;color:var(--sage-dark)}.host-audience p{font-size:12px;line-height:2.2;margin-top:10px;color:var(--muted)}.host-cta{margin-top:30px;position:relative;z-index:1}.host-cta .button{min-width:260px}.host-cta p{font-size:11px;margin-top:10px}.research{display:grid;grid-template-columns:5fr 6fr;gap:70px;border-top:1px dashed var(--line)}.research .prose{font-size:13px}.research h2{font-size:27px}.research-caption{font-size:12px;color:var(--sage-dark)}.research .note{font-size:11px;margin-top:24px}.faq-section{display:grid;grid-template-columns:3fr 7fr;gap:70px;border-top:1px dashed var(--line)}.faq-section h2{font-size:28px}.faq details{border-bottom:1px solid var(--line)}.faq details:first-child{border-top:1px solid var(--line)}summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:14px}summary::-webkit-details-marker{display:none}.faq summary{padding:22px 0;font-size:14px;font-weight:500;line-height:1.7}.q{font-family:Georgia,serif;color:var(--sage);font-size:20px;font-weight:400;align-self:flex-start}.detail-mark{width:14px;height:14px;position:relative;flex-shrink:0;margin-left:auto}.detail-mark:before,.detail-mark:after{content:"";position:absolute;background:var(--sage);top:6px;left:0;width:14px;height:1px}.detail-mark:after{transform:rotate(90deg)}details[open]>summary .detail-mark:after{display:none}.faq details>p{font-size:13px;line-height:2;color:var(--muted);padding:0 32px 23px}.footer{background:var(--cream);padding:48px 0 20px}.footer-main{display:flex;justify-content:space-between;gap:40px}.footer-main p{font-size:11px;margin-top:9px}.footer-main p.quiet{margin-top:22px;font-size:10px}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:11px 37px;font-size:11px;align-content:start;padding-top:5px}.footer-links [aria-disabled=true]{color:var(--muted)}.footer-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:18px;margin-top:32px;font-size:10px;color:var(--muted)}.mobile-break{display:none}
@media(min-width:1440px){.hero{padding-top:92px;padding-bottom:90px}.kit-stage{height:420px}.sheet-back{top:160px}}
@media(max-width:1050px){.header{gap:16px}.header nav{gap:16px;font-size:11px}.brand-sub{font-size:9px}.hero{gap:24px}.hero-kit{margin-top:0}.kit-stage{height:330px}.sheet-back{top:120px}.hero-note{font-size:10px}.about,.flow-section,.research{gap:40px}.preparation-columns{gap:25px}.host-panel{padding:46px}.host-content{gap:30px}.kit-gallery img{height:160px}.experience-title{gap:7px}.experience h3{font-size:17px}.experiences{gap:25px}}
@media(max-width:800px){.wrap{width:calc(100% - 40px)}.header{align-items:flex-start;flex-direction:column;gap:17px;padding-block:20px 15px}.brand-name{font-size:22px}.brand-sub{font-size:10px}.header nav{width:100%;gap:0;justify-content:space-between;font-size:10px}.header nav a{padding:4px 0}.hero{padding-top:42px;grid-template-columns:1fr;gap:25px;padding-bottom:42px}.hero-copy{max-width:620px}h1{font-size:clamp(35px,5.7vw,46px);margin-top:22px}.hero-lead{font-size:15px}.hero-kit{width:min(520px,100%);margin:12px auto 0}.kit-stage{height:360px}.sheet-back{top:140px}.kit-tab{bottom:1px}.hero-note{font-size:11px}.hero-small{font-size:13px}.experience-ribbon{gap:22px;font-size:12px}.section{padding-block:65px}.about,.flow-section,.research,.faq-section{grid-template-columns:1fr;gap:35px}.section-intro>.quiet br{display:none}.about .prose{font-size:14px}.heading-row{align-items:flex-start;flex-direction:column;gap:0}.heading-row>.quiet{display:none}.benefits{gap:0 30px}.benefits li{gap:14px}.benefits h3{font-size:15px}.benefits p{font-size:12px}.experiences{gap:20px}.experience-title>span{width:24px;height:24px;font-size:10px}.experience h3{font-size:15px;letter-spacing:0}.experience img{width:108px;height:100px}.experience p{font-size:12px}.flow-reminder{max-width:none;margin-top:22px}.flow-reminder p br{display:none}.timeline{margin-top:4px}.preparation-columns{gap:20px}.preparation-columns>div{padding:24px}.checklist{grid-template-columns:1fr}.preparation-columns h3{font-size:14px;align-items:flex-start}.download-intro{margin-top:23px}.status{margin-top:-10px}.kit-gallery{gap:15px}.kit-gallery img{height:130px}.kit-gallery a{padding:12px}.kit-gallery a>span{font-size:10px}.host-panel{padding:35px}.host-content{grid-template-columns:1fr;gap:25px}.host-request{border-left:0;border-top:1px dashed #bfc8b5;padding:24px 0 0}.host-request ol{margin-top:15px}.host-panel h2{font-size:34px}.host-audience{margin-top:15px}.research h2{font-size:27px}.faq-section{gap:20px}.faq-section h2{margin-bottom:10px}.footer-main{gap:30px}.desktop-break{display:none}}
@media(max-width:520px){.wrap{width:calc(100% - 40px)}body{font-size:14px}.eyebrow{font-size:10px}.header nav{gap:12px;flex-wrap:wrap;font-size:10px;justify-content:flex-start}.header nav a{white-space:nowrap}.header .nav-host{margin-left:auto}.hero{padding-top:35px}h1{font-size:clamp(30px,8.6vw,41px);line-height:1.65;letter-spacing:.055em;margin:21px 0 26px}.hero-lead{font-size:13px;line-height:2}.hero-small{font-size:12px}.mobile-break{display:initial}.facts{gap:20px;font-size:12px;margin:23px 0}.facts svg{width:16px;height:16px}.actions{gap:18px}.button{font-size:12px;padding:13px 17px;gap:20px}.hero .actions{align-items:flex-start;flex-direction:column}.hero-note{font-size:10px}.hero-kit{margin-top:10px}.kit-stage{height:290px}.sheet-front{width:89%;top:13px;left:2%}.sheet-back{width:87%;top:105px;left:9%}.kit-tab{font-size:8px;bottom:5px;right:4px}.hero-kit figcaption{font-size:10px;margin-top:17px}.experience-ribbon{gap:12px;font-size:10px;letter-spacing:.03em;padding:18px 0}.experience-ribbon i{font-size:9px}h2{font-size:25px;letter-spacing:.05em;line-height:1.65;margin:20px 0 25px}.section{padding-block:55px}.label{font-size:11px;padding:5px 13px}.about{gap:26px}.prose{font-size:13px}.about .prose{font-size:13px}.about .prose br:first-child{display:none}.key-sentence{font-size:13px;padding-left:16px}.benefits{grid-template-columns:1fr;margin-top:5px}.benefits li{gap:18px;padding:20px 0}.benefits h3{font-size:15px}.benefits p{font-size:12px}.list-number{font-size:23px}.note{font-size:11px}.experiences{grid-template-columns:1fr;gap:27px;margin-top:30px}.experience{display:grid;grid-template-columns:88px 1fr;column-gap:18px;padding:18px 0 0;border-top:1px dashed var(--line)}.experience-title{grid-column:2;align-self:end;margin-bottom:5px}.experience img{grid-column:1;grid-row:1 / 3;margin:0;width:88px;height:95px}.experience h3{font-size:19px;letter-spacing:.05em}.experience p{grid-column:2;font-size:13px;line-height:1.95}.experience-title>span{width:26px;height:26px;font-size:11px}.small-callout{gap:14px;padding:18px 0;margin-top:31px;align-items:flex-start}.small-callout p{font-size:11px}.small-callout>span{font-size:22px;line-height:1.5}.flow-section{gap:30px}.flow-section .section-intro>p{font-size:13px}.flow-reminder{padding:19px}.timeline li{gap:17px;margin-bottom:23px}.timeline h3{font-size:15px}.timeline p{font-size:12px}.preparation-columns{grid-template-columns:1fr;gap:20px;margin-top:28px}.preparation-columns>div{padding:23px}.preparation-columns h3{font-size:14px;align-items:center}.checklist{grid-template-columns:1fr 1fr;font-size:12px;gap:12px}.download-intro{font-size:12px;line-height:2}.download-intro br{display:none}.kit-gallery{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:26px 0}.kit-gallery a{padding:10px}.kit-gallery img{height:93px}.kit-gallery a>span{margin-top:8px;padding-top:9px;font-size:10px;letter-spacing:0}.download-bar{flex-direction:column;align-items:flex-start;gap:20px;padding:23px 0}.download-bar p{font-size:12px}.download-action{text-align:left;width:100%}.download-action .button{width:100%}.files{grid-template-columns:1fr;gap:0}.host-panel{padding:29px 23px}.host-panel h2{font-size:29px;letter-spacing:.04em}.host-lead{font-size:13px}.host-content{margin-top:24px}.host-content .prose{font-size:12px}.host-request h3{font-size:14px}.host-request li{font-size:12px}.host-audience h3{font-size:12px}.host-audience p{font-size:11px}.host-cta .button{min-width:0;width:100%}.host-cta p{font-size:10px}.host-panel:after{width:150px;height:130px;opacity:.25}.research{gap:25px}.research h2{font-size:25px}.research .prose{font-size:12px}.faq summary{font-size:12px;padding:19px 0;gap:10px}.faq details>p{font-size:12px;padding:0 26px 21px}.q{font-size:18px}.footer{padding-top:34px}.footer-main{flex-direction:column;gap:28px}.footer-links{grid-template-columns:1fr 1fr;gap:12px 25px}.footer-main p.quiet{margin-top:15px}.footer-bottom{font-size:9px}.footer .brand-name{font-size:22px}}
@media(max-width:350px){.wrap{width:calc(100% - 30px)}h1{font-size:28px}.kit-stage{height:260px}.sheet-back{top:90px}.experience-ribbon{gap:9px;font-size:9px}.header .nav-host{margin-left:0}.hero-kit figcaption{font-size:9px}.checklist{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{.header nav,.actions,.host-cta,.footer-links,.footer-bottom,.individual-files{display:none}.section{padding-block:25px}.wrap{width:100%}.hero{padding:20px 0}.host-panel{padding:25px}.benefits-shell,.download-shell,.footer{background:white}.button{display:none}.faq details>p{display:block}.hero-sheet{box-shadow:none}}

/* 導入カードは表裏を一つのキットとして表示 */
/* 白地の水彩素材を乗算で背景になじませる */
.kit-stage:before{content:"";position:absolute;inset:-12px;background:url('assets/watercolor-ring.png') center/contain no-repeat;mix-blend-mode:multiply;opacity:.36;z-index:0;pointer-events:none}
.host-panel{isolation:isolate}
.host-panel:after{background-image:url('assets/watercolor-corner.png');mix-blend-mode:multiply;opacity:.4;width:240px;height:240px;bottom:-24px;right:-24px}
.footer{position:relative;isolation:isolate}

.footer>.wrap{position:relative;z-index:1}
@media(max-width:520px){.host-panel:after{width:170px;height:170px;opacity:.28}.kit-stage:before{inset:-5px;opacity:.3}}
.contents-samples{margin:35px 0}
.contents-samples>h3{color:var(--sage-dark);font-size:18px;margin-bottom:8px}
.sample-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:22px}
.sample-cards>a{display:flex;flex-direction:column;min-width:0;background:white;border:1px solid #e2dfd5;border-radius:6px;padding:16px}
.sample-cards>a:hover{border-color:var(--sage)}
.sample-cards img{width:100%;height:205px;object-fit:contain}
.sample-cards a>span{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--sage-dark);border-top:1px solid #efede7;margin-top:12px;padding-top:12px;gap:8px;line-height:1.7}
.sample-cards .sr-only{display:block}
@media(max-width:800px){.sample-cards{gap:16px}.sample-cards img{height:160px}}
@media(max-width:520px){.sample-cards{gap:10px}.sample-cards>a{padding:8px}.sample-cards img{height:85px}.sample-cards a>span{font-size:10px;letter-spacing:0;gap:3px;align-items:flex-start;min-height:48px}.contents-samples>.quiet{font-size:11px}}
.kit-gallery{grid-template-columns:1fr 1.5fr;align-items:stretch}
.kit-gallery .kit-preview{background:white;border:1px solid #e2dfd5;border-radius:6px;padding:20px 17px 13px}
.kit-gallery .card-sides{display:grid;grid-template-columns:1fr 1fr;gap:15px;align-items:center;height:205px}
.kit-gallery .card-sides a{border:0;background:none;padding:0;border-radius:0;min-width:0}
.kit-gallery .card-sides img{height:155px}
.kit-gallery .card-sides a>span{border:0;padding-top:7px;margin:0;font-size:10px;justify-content:center;color:var(--muted)}
.kit-gallery .kit-caption{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--sage-dark);padding-top:18px;margin-top:14px;border-top:1px solid #efede7}
.kit-gallery .guide-preview>img{height:205px}
@media(max-width:800px){.kit-gallery .card-sides{height:170px;gap:10px}.kit-gallery .card-sides img{height:125px}.kit-gallery .guide-preview>img{height:170px}}
@media(max-width:520px){.kit-gallery{grid-template-columns:1fr}.kit-gallery .kit-preview{padding:15px}.kit-gallery .card-sides{height:auto;gap:12px}.kit-gallery .card-sides img{height:120px}.kit-gallery .guide-preview{grid-column:auto;grid-row:auto}.kit-gallery a.guide-preview>img{height:230px;min-height:0}.kit-gallery .kit-caption{font-size:12px;margin-top:14px;padding-top:13px}}

#download-heading.label{margin:0;font-size:14px;line-height:1.5;letter-spacing:.09em}
#download .download-intro{margin-top:24px}
@media(max-width:520px){#download-heading.label{font-size:12px}}

.label:not(.label-secondary){background:var(--sage-dark);font-size:14px;font-weight:700;padding:7px 18px;border-radius:24px;letter-spacing:.09em}
.label.label-secondary{background:transparent;color:#76654d;font-size:12px;font-weight:500;padding:4px 11px;border:0;border-radius:0;letter-spacing:.045em}
@media(max-width:520px){.label:not(.label-secondary){font-size:12px;padding:7px 15px}.label.label-secondary{font-size:11px;padding:4px 9px}}

.preparation-materials{background:transparent}
.preparation-materials .preparation-columns{margin:0}
.preparation-materials .preparation-columns>div{background:transparent}

/* サンプルの背景を、上のキット内容物へつながる吹き出しにする */
.download-shell>.sample-body{position:relative}
.download-shell>.sample-body:before{content:"";position:absolute;top:-26px;left:calc((100% - 65px)/4 - 24px);width:48px;height:27px;background:var(--cream);clip-path:polygon(50% 0,0 100%,100% 100%);pointer-events:none}
@media(max-width:1050px){.download-shell>.sample-body:before{left:calc((100% - 25px)/4 - 24px)}}
@media(max-width:800px){.download-shell>.sample-body:before{left:calc((100% - 20px)/4 - 24px)}}
@media(max-width:520px){.download-shell>.sample-body:before{left:calc(25% - 18px);width:36px;height:23px;top:-22px}}

/* ホスト募集と同じ幅で、左右にページの余白を残す */
.download-shell>.sample-body{padding:60px 64px}
@media(max-width:1050px){.download-shell>.sample-body{padding:46px}}
@media(max-width:800px){.download-shell>.sample-body{padding:35px}}
@media(max-width:520px){.download-shell>.sample-body{padding:29px 23px}}

/* 4ステップはホスト募集と同じ余白・形の、枠線のないパネル */
.experience-panel{background:var(--cream);border:0;border-radius:var(--round);padding:60px 64px}
.community-title{display:flex;align-items:center;gap:12px;font-size:20px;line-height:1.7;color:#76654d;letter-spacing:.045em;margin:0 0 20px}
.community-title svg{width:24px;height:28px;flex-shrink:0}
.flow-section{border-top:0}
.label.label-secondary.label-beige{background:#f3ede2;border:0;border-radius:3px}
@media(min-width:521px){#community .benefits li:nth-last-child(-n+2){border-bottom:0}}
@media(max-width:1050px){.experience-panel{padding:46px}}
@media(max-width:800px){.experience-panel{padding:35px}}
@media(max-width:520px){.experience-panel{padding:29px 23px}.community-title{font-size:18px;gap:10px;align-items:flex-start}.community-title svg{width:22px;height:26px;margin-top:3px}#community .benefits li:last-child{border-bottom:0}}

/* メニューの各項目を、背景と共通の左右余白で一つのまとまりにする */
.workshop-shell,.host-shell{background:var(--paper)}
.implementation{background:#f4f5f1;padding-bottom:80px}
.faq-shell{background:var(--cream)}
.workshop-shell>.about{padding:80px 64px 56px}
.workshop-shell>#experience{padding-top:0;padding-bottom:80px}
.implementation>.preparation{border-top:0;padding:80px 64px 56px}
.implementation>.benefits-shell{background:transparent}
.implementation>.benefits-shell>.wrap{background:var(--cream);padding:48px 64px}
.implementation>.flow-section{padding:64px}
.implementation>.preparation-materials{padding:0 64px 56px}
.host-shell>.host-section{padding-top:80px;padding-bottom:56px}
.host-shell>.research{border-top:0;padding:0 64px 80px}
.faq-shell>.faq-section{border-top:0;padding:80px 64px}
.download-shell>.sample-body:before{left:calc((100% - 65px)/4 + 8px)}
@media(max-width:1050px){
.workshop-shell>.about,.implementation>.preparation,.implementation>.benefits-shell>.wrap,.implementation>.flow-section,.implementation>.preparation-materials,.host-shell>.research,.faq-shell>.faq-section{padding-inline:46px}
.download-shell>.sample-body:before{left:calc((100% - 25px)/4 - 1px)}
}
@media(max-width:800px){
.workshop-shell>.about,.implementation>.preparation,.implementation>.benefits-shell>.wrap,.implementation>.flow-section,.implementation>.preparation-materials,.host-shell>.research,.faq-shell>.faq-section{padding-inline:35px}
.download-shell>.sample-body:before{left:calc((100% - 20px)/4 - 6.5px)}
}
@media(max-width:520px){
.implementation{padding-bottom:55px}
.workshop-shell>.about{padding:55px 23px 32px}
.workshop-shell>#experience{padding-bottom:55px}
.implementation>.preparation{padding:55px 23px 32px}
.implementation>.benefits-shell>.wrap{padding:32px 23px}
.implementation>.flow-section{padding:40px 23px}
.implementation>.preparation-materials{padding:0 23px 40px}
.host-shell>.host-section{padding-top:55px;padding-bottom:40px}
.host-shell>.research{padding:0 23px 55px}
.faq-shell>.faq-section{padding:55px 23px}
.download-shell>.sample-body:before{left:calc(25% - 18px)}
}

/* キット内容物と同じ白地・細い線でサンプルを囲む */
.download-shell{background:var(--paper);border:1px solid var(--line);border-radius:var(--round)}
.download-shell>.sample-body:before{background:var(--paper);border-left:1px solid var(--line);border-top:1px solid var(--line);clip-path:none;transform:rotate(45deg);width:28px;height:28px;top:-15px;left:calc((100% - 65px)/4 + 18px)}
@media(max-width:1050px){.download-shell>.sample-body:before{left:calc((100% - 25px)/4 + 9px)}}
@media(max-width:800px){.download-shell>.sample-body:before{left:calc((100% - 20px)/4 + 3.5px)}}
@media(max-width:520px){.download-shell>.sample-body:before{left:calc(25% - 14px)}}

/* 白地の4ステップ画像をパネルの色になじませる */
.experience-panel{isolation:isolate}
.experience-panel .experience img{mix-blend-mode:multiply}
/* 概要は人数・時間・対象年齢、手順は左1〜5／右6〜10 */
.flow-section{display:block}
.flow-header{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:40px}
#flow-heading.label{margin:0;font-size:14px;line-height:1.5;letter-spacing:.09em}
.flow-header .facts{margin:0}
.flow-section .timeline{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(5,auto);grid-auto-flow:column;gap:26px 48px;margin:0}
.flow-section .timeline:before{display:none}
.flow-section .timeline li{margin:0}
@media(max-width:800px){.flow-section .timeline{column-gap:30px}}
@media(max-width:520px){.flow-header{flex-direction:column;align-items:flex-start;gap:18px;margin-bottom:28px}#flow-heading.label{font-size:12px}.flow-section .timeline{grid-template-columns:1fr;grid-template-rows:none;grid-auto-flow:row;gap:23px}}

/* サンプル画像はページ上で拡大して読む */
.preview-dialog{width:min(1000px,calc(100vw - 32px));max-width:none;max-height:90vh;max-height:90dvh;padding:0;background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:var(--round)}
.preview-dialog::backdrop{background:rgba(80,69,60,.3)}
.preview-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 22px;border-bottom:1px solid var(--line)}
.preview-header h2{margin:0;font-size:15px;line-height:1.7;letter-spacing:.035em;color:var(--ink)}
.preview-close{display:flex;align-items:center;gap:10px;min-height:44px;padding:7px 12px;background:transparent;border:1px solid var(--line);border-radius:3px;color:var(--ink);font:inherit;font-size:12px;cursor:pointer;white-space:nowrap}
.preview-close span{font-size:22px;line-height:1}
.preview-close:focus-visible{outline:3px solid var(--sage-dark);outline-offset:3px}
.preview-image-scroll{max-height:calc(90vh - 80px);max-height:calc(90dvh - 80px);overflow:auto;padding:20px}
.preview-image-scroll img{width:100%;height:auto;max-width:100%;margin-inline:auto}
@media(max-width:520px){.preview-header{padding:10px 14px;gap:12px}.preview-header h2{font-size:13px}.preview-image-scroll{padding:10px}}

.community-intro{max-width:780px;font-size:14px;line-height:2;color:var(--ink);margin-bottom:20px}
.community-intro p+p{margin-top:14px}
@media(max-width:520px){.community-intro{font-size:12px}}

@media(max-width:520px){#hero-heading{font-size:clamp(25px,7.5vw,36px)}}

/* 研究ブロックを基準に、スマホの本文位置を共通化する */
@media(max-width:800px){
:root{--mobile-body-inset:20px;--mobile-panel-inset:8px}
.wrap{width:calc(100% - 2 * var(--mobile-body-inset))}
.workshop-shell>.about,.implementation>.preparation,.implementation>.flow-section,.host-shell>.research,.faq-shell>.faq-section{padding-inline:0}
.workshop-shell>#experience,.implementation>.benefits-shell>.wrap,.implementation>.preparation-materials,.host-shell>.host-section,.download-shell.wrap{width:calc(100% - 2 * var(--mobile-panel-inset))}
.experience-panel,.implementation>.benefits-shell>.wrap{padding-inline:calc(var(--mobile-body-inset) - var(--mobile-panel-inset))}
.implementation>.preparation-materials{padding-inline:0}
.preparation-materials .preparation-columns>div,.host-panel,.download-shell>.sample-body{padding-inline:calc(var(--mobile-body-inset) - var(--mobile-panel-inset) - 1px)}
}

@media(max-width:800px){.faq details>p{padding-inline:0}}

/* お願いしたいことは番号のない箇条書き */
.host-request ul{list-style:none;margin:20px 0 0;padding:0}
.host-request ul li{counter-increment:none}
.host-request ul li:before{content:"・";font-family:inherit;font-size:inherit;flex-shrink:0}
@media(max-width:800px){.host-request ul{margin-top:15px}}
/* 枠付きの持ち物リストも研究ブロックと同じ本文位置に揃える */
@media(min-width:801px){.implementation>.preparation-materials{padding-inline:0}.preparation-materials .preparation-columns>div{padding-inline:63px}}
@media(min-width:801px) and (max-width:1050px){.preparation-materials .preparation-columns>div{padding-inline:45px}}

@media(min-width:801px){.download-shell>.sample-body:before{left:calc((100% - 65px)/4 - 14px)}}
@media(min-width:801px) and (max-width:1050px){.download-shell>.sample-body:before{left:calc((100% - 25px)/4 - 14px)}}
