/* おうちアドベンチャー v8.5 – adult editorial design. Scope: adult pages only. */
.adult-page {background:#fbfaf7;color:#19304b;font-family:system-ui,-apple-system,"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;line-height:1.7}
.adult-page .container{max-width:1170px}
.adult-page .topbar{border-bottom:1px solid #e9ebef;margin-bottom:30px;gap:18px}
.adult-page .toplinks{flex-wrap:wrap;justify-content:flex-end;gap:10px 17px}
.adult-page .toplinks a{font-size:12px;color:#405875;font-weight:700;white-space:nowrap}
.adult-page .toplinks a[aria-current="page"]{color:#6151bb;border-bottom:2px solid #7d70cb;padding-bottom:4px}
.adult-page a:focus-visible,.adult-page button:focus-visible,.adult-page select:focus-visible,.adult-page input:focus-visible{outline:3px solid #7459d5;outline-offset:3px}
.adult-main{margin-top:8px;padding-bottom:50px}
.adult-page .adult-main a{text-decoration:none}
.adult-hero{position:relative;display:grid;grid-template-columns:1.25fr .75fr;gap:24px;align-items:center;border:1px solid #e7e9f1;background:linear-gradient(115deg,#f4f2ff 0%,#fbf9f3 52%,#e9f4f3 100%);border-radius:28px;padding:clamp(24px,4vw,55px);overflow:hidden;isolation:isolate}
.adult-hero:after{content:"";position:absolute;width:260px;height:260px;right:-65px;top:-105px;border:34px solid #ffffff70;border-radius:50%;z-index:-1}
.adult-eyebrow{display:block;color:#6454a7;font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:12px}
.adult-hero h1{font-size:clamp(2rem,4.6vw,3.45rem);line-height:1.25;letter-spacing:-.045em;margin:0 0 20px;color:#172c4a;font-weight:850}
.adult-hero p{max-width:650px;margin:0;color:#496079;line-height:1.95;font-size:clamp(.92rem,1.3vw,1.04rem)}
.adult-actions{display:flex;gap:11px;flex-wrap:wrap;margin-top:23px}
.adult-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:45px;padding:10px 20px;border-radius:999px;background:#6754b8;color:white!important;font-weight:800;font-size:13px;box-shadow:0 6px 18px #604ab82b}
.adult-button.secondary{background:white;color:#4b428e!important;border:1px solid #ddd7f0;box-shadow:none}
.adult-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}
.adult-tags span{display:inline-block;padding:7px 11px;background:#ffffffca;border:1px solid #ececf4;border-radius:999px;color:#566580;font-size:12px;font-weight:700}
.adult-visual{position:relative;min-height:265px;display:flex;justify-content:center;align-items:center}
.adult-papers{display:flex;gap:0;align-items:center;justify-content:center;width:100%;padding:18px}
.adult-papers img{width:min(45%,190px);height:230px;object-fit:cover;object-position:top;border:8px solid white;border-radius:13px;box-shadow:0 12px 26px #32436124;transform:rotate(-8deg);background:white}
.adult-papers img:nth-child(2){transform:rotate(8deg) translate(-12px,10px)}
.adult-papers img:nth-child(3){transform:rotate(-2deg) translate(-30px,-8px);width:min(33%,138px);height:190px}
.adult-symbol{display:grid;place-items:center;width:190px;height:190px;border-radius:38% 62% 58% 42%;background:#e3ebfa;color:#5647aa;font-size:95px;box-shadow:25px 22px 0 #fbe4c9}
.adult-symbol.green{background:#dcefe7;color:#355c58;box-shadow:20px 20px 0 #efe8fb}
.adult-section{margin-top:45px}
.adult-section-head{margin-bottom:20px}
.adult-section-head .small{color:#7260c4;font-size:12px;font-weight:850;letter-spacing:.11em;text-transform:uppercase}
.adult-section-head h2{font-size:clamp(1.5rem,3vw,2rem);margin:4px 0 8px;letter-spacing:-.035em;line-height:1.4;color:#1b3150}
.adult-section-head p{font-size:14px;line-height:1.9;color:#66748a;max-width:780px;margin:0}
.adult-categories{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.adult-category{min-width:0;padding:23px 17px;background:white;border:1px solid #e7eaf1;border-radius:19px;display:flex;flex-direction:column;gap:6px;transition:transform .15s,box-shadow .15s}
.adult-category:hover{transform:translateY(-2px);box-shadow:0 10px 23px #233e6510}
.adult-category:nth-child(1){background:#f6f2ff}.adult-category:nth-child(2){background:#edf6fe}.adult-category:nth-child(3){background:#eaf7f0}.adult-category:nth-child(4){background:#fff6e8}
.adult-category .ico{font-size:30px}.adult-category strong{font-size:16px;color:#1e3251}.adult-category small{font-size:12px;color:#66738a;line-height:1.65}
.adult-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.adult-feature{background:white;border:1px solid #e9eaf1;overflow:hidden;border-radius:19px;display:flex;flex-direction:column;box-shadow:0 6px 26px #213d5708}
.adult-feature img{display:block;width:100%;height:150px;object-fit:cover;object-position:top;background:#f7f5ed}
.adult-feature .body{padding:17px;display:flex;flex:1;flex-direction:column;gap:7px}
.adult-feature .label{font-size:11px;font-weight:800;color:#685ab8}
.adult-feature strong{font-size:16px;line-height:1.5;color:#1f3551}
.adult-feature p{margin:0;color:#67758b;font-size:12px;line-height:1.75}
.adult-feature .link{font-size:12px;color:#5846b3;font-weight:850;margin-top:auto;padding-top:10px}
.adult-page #library{scroll-margin-top:20px;background:#fff;border:1px solid #eceaf2;border-radius:24px;padding:28px 23px}
.adult-page #library .v5-heading h2{font-size:clamp(1.55rem,3vw,2rem);color:#18314f}
.adult-page #library .v5-print-grid{margin-top:20px}
.adult-page #library .v5-material{border-color:#e7e7f0;box-shadow:0 6px 18px #32435a08}
.adult-page #library .v5-material[hidden]{display:none!important}
.adult-page #library .v5-filter{background:#f7f8fc;border:1px solid #e5e9f1;border-radius:17px;padding:16px}
.adult-page #library .v5-filter select,.adult-page #library .v5-filter input{background:white}
.adult-notes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.adult-note{padding:22px;background:#fff;border:1px solid #e7eaf0;border-radius:18px}
.adult-note .num{display:inline-block;font-size:12px;color:#7463c0;font-weight:900;margin-bottom:9px}
.adult-note h3{font-size:16px;margin:0 0 7px;color:#243756}.adult-note p{font-size:13px;color:#65758a;line-height:1.9;margin:0}
.adult-disclaimer{background:#f5f7f8;border-left:4px solid #98b7ac;padding:16px 20px;border-radius:9px;margin-top:30px;color:#566678;font-size:12px;line-height:1.9}
.adult-disclaimer a{color:#5143a6;text-decoration:underline!important}
.adult-topic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.adult-topic{display:flex;align-items:flex-start;gap:12px;background:white;border:1px solid #e8eaf0;border-radius:19px;padding:18px;min-height:142px}
.adult-topic .icon{display:grid;place-items:center;width:44px;height:44px;flex:0 0 44px;border-radius:14px;background:#f0edff;font-size:25px}
.adult-topic:nth-child(3n + 2) .icon{background:#e9f5ef}.adult-topic:nth-child(3n) .icon{background:#fff0e4}
.adult-topic strong{display:block;font-size:15px;color:#203653;line-height:1.5}.adult-topic small{display:block;font-size:12px;color:#69778a;line-height:1.75;margin-top:6px}
.adult-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.adult-flow article{padding:22px;border-radius:18px;background:#fff;border:1px solid #e6e9f0}
.adult-flow .step{font-weight:900;font-size:13px;color:#7062bd;border:0;background:none;padding:0;display:block;width:auto}
.adult-flow h3{margin:7px 0 8px;font-size:17px}.adult-flow p{font-size:13px;color:#5a6b81;line-height:1.85;margin:0}
.adult-band{margin-top:40px;padding:24px;border-radius:20px;background:linear-gradient(110deg,#eef3fc,#f6f2ff);border:1px solid #e3e6f4}
.adult-band h2{font-size:20px;margin:0 0 8px;color:#263958}.adult-band p{font-size:13px;color:#5e7087;line-height:1.85;margin:0 0 12px}
.adult-link-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.adult-link-grid a{background:white;border:1px solid #e6e8f1;border-radius:15px;padding:16px 17px;color:#273d58;font-size:13px;font-weight:750;line-height:1.7}
.adult-link-grid a:hover{border-color:#b3a5e9;background:#fcfbff}
.adult-page .end{margin-top:48px}
/* Homepage: only remove duplicated top-level karuta promo; leave all printables on resource pages */
@media(max-width:860px){.adult-hero{grid-template-columns:1fr}.adult-visual{min-height:190px}.adult-papers img{height:155px}.adult-papers img:nth-child(3){height:145px}.adult-categories{grid-template-columns:repeat(2,minmax(0,1fr))}.adult-topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.adult-features{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:570px){.adult-page .topbar{align-items:flex-start;flex-direction:column}.adult-page .toplinks{gap:10px 16px;justify-content:flex-start}.adult-page .toplinks a{font-size:11px}.adult-hero{padding:25px 21px;border-radius:21px;gap:2px}.adult-hero h1{font-size:2rem}.adult-visual{min-height:160px}.adult-papers{padding:7px}.adult-papers img{height:135px;border-width:5px}.adult-papers img:nth-child(3){height:118px}.adult-symbol{width:130px;height:130px;font-size:66px}.adult-section{margin-top:36px}.adult-categories{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.adult-category{padding:16px 12px}.adult-category strong{font-size:14px}.adult-features{grid-template-columns:1fr}.adult-feature{display:grid;grid-template-columns:112px 1fr}.adult-feature img{height:100%;min-height:142px}.adult-feature .body{padding:14px}.adult-note{padding:15px}.adult-notes,.adult-flow,.adult-topic-grid,.adult-link-grid{grid-template-columns:1fr}.adult-page #library{padding:19px 13px;border-radius:20px}.adult-topic{min-height:auto}.adult-section-head h2{font-size:1.55rem}}
@media(prefers-reduced-motion:reduce){.adult-category{transition:none}}
