
:root{--ink:#344238;--muted:#66736a;--blush:#ce8991;--sage:#8eab97;--paper:#fffdfb;--wash:#faf5f0;--border:#ece9e3}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.9 'Noto Sans JP','Hiragino Kaku Gothic ProN',Meiryo,sans-serif}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}a:focus-visible{outline:3px solid var(--blush);outline-offset:3px}.wrap{width:min(1080px,calc(100% - 44px));margin:auto}.site-header{background:#fffefdfa;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:10;backdrop-filter:blur(12px)}.head{display:flex;align-items:center;justify-content:space-between;min-height:72px;gap:20px}.brand{font-size:1.15rem;font-weight:800;letter-spacing:.08em}.brand:before{content:'●';font-size:.9rem;color:var(--blush);margin-right:9px}.nav{display:flex;gap:25px;align-items:center;font-size:.84rem;font-weight:650}.menu{display:none;border:0;background:transparent;font-size:1.5rem;color:var(--ink)}.button{display:inline-block;border-radius:99px;background:var(--blush);color:white;padding:12px 24px;font-size:.88rem;font-weight:750;text-align:center}.button:hover{background:#b9717b;text-decoration:none}.button.light{color:var(--ink);background:#fff;border:1px solid var(--border)}.eyebrow{color:#ae7580;letter-spacing:.2em;font-size:.74rem;font-weight:750;text-transform:uppercase}.hero{padding:88px 0 100px;background:linear-gradient(155deg,#fffdfb,#f9f4ee)}.hero-grid{display:grid;grid-template-columns:1fr .83fr;gap:70px;align-items:center}.hero h1{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;line-height:1.55;font-size:clamp(2.45rem,4.4vw,4.3rem);letter-spacing:.045em;margin:15px 0 20px}.hero h1 em{font-style:normal;color:#b97982}.hero p{color:#5e6d63;font-size:.95rem;line-height:2.1;max-width:440px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.visual{aspect-ratio:4/4.35;background:#f4e8df;border-radius:52% 52% 24px 24px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.visual:before{content:'';position:absolute;background:#fff5ee;width:78%;height:78%;border-radius:50%;top:9%;left:11%}.visual-inner{position:relative;max-width:80%;text-align:center}.visual-inner b{font-family:'Yu Mincho',serif;font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.9}.visual-inner span{display:block;margin-top:20px;color:#a47870;font-size:.85rem;letter-spacing:.06em}.section{padding:92px 0}.section.alt{background:#faf8f5}.section .intro{max-width:560px;margin-bottom:36px}.section h2,.pagehead h1{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;line-height:1.5;letter-spacing:.035em;font-size:clamp(1.8rem,3vw,2.6rem);margin:8px 0 16px}.muted{color:var(--muted);font-size:.93rem}.about{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.quote{background:#f5f1eb;padding:55px 38px;border-radius:24px;font-family:'Yu Mincho',serif;font-size:1.75rem;line-height:2.0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{border:1px solid var(--border);background:white;border-radius:22px;overflow:hidden;display:flex;flex-direction:column}.card .top{min-height:148px;padding:26px;background:#f0f5ee;display:flex;flex-direction:column;justify-content:space-between}.card:nth-child(2) .top{background:#f9efeb}.card:nth-child(3) .top{background:#eff3f3}.top strong{font-size:1.12rem;line-height:1.6}.tag{color:#a66e79;font-size:.76rem;font-weight:750}.card .body{padding:24px;display:flex;flex-direction:column;gap:12px;flex:1}.card .body p{color:var(--muted);font-size:.87rem;margin:0;flex:1}.link{color:#ae6e7a;font-size:.85rem;font-weight:800}.price{font-size:1.8rem;font-weight:800}.price small{font-size:.75rem;font-weight:400;color:var(--muted)}.category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.category{padding:22px 16px;border:1px solid var(--border);border-radius:16px;background:white;font-weight:650;font-size:.9rem}.category span{display:block;color:#b58b87;font-weight:500;font-size:.74rem;margin-bottom:8px}.center{text-align:center}.more{margin-top:28px}.pagehead{padding:76px 0 58px;background:var(--wash)}.content{padding:62px 0 92px}.article{max-width:750px;margin:auto}.article h2{font-size:1.25rem;margin:44px 0 10px}.article p{line-height:2.05}.note{background:#f7f4ee;border-radius:15px;padding:20px 24px;color:#5e6a60;font-size:.89rem;margin-top:28px}.cta-panel{padding:32px;border:1px solid #eadfda;border-radius:20px;background:#fcf6f3;margin-top:44px}.cta-panel h2{margin-top:0}.footer{border-top:1px solid var(--border);background:#f9f7f3;padding:30px 0;color:#6f7971;font-size:.78rem}.foot{display:flex;justify-content:space-between;gap:20px}.prose{max-width:750px}.button-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}.draft-mark{font-size:.72rem;color:#8a7668;background:#f8eee1;padding:5px 10px;border-radius:8px;display:inline-block}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin:32px 0}.info-box{background:#faf8f5;border-radius:16px;padding:20px 25px}.info-box h3{margin:0 0 5px}.info-box p{margin:0;font-size:.89rem;color:var(--muted)}.empty-link{padding:14px 18px;border:1px dashed #c9beb8;border-radius:12px;color:#806f65;font-size:.9rem}.article-list{display:grid;gap:16px}.article-link{padding:24px;border:1px solid var(--border);border-radius:18px;background:white}.article-link h2{margin:5px 0;font-size:1.1rem}.article-link p{margin:0;color:var(--muted);font-size:.88rem}#contact{scroll-margin-top:82px}@media(max-width:800px){.hero-grid,.about{grid-template-columns:1fr;gap:35px}.hero{padding:55px 0 68px}.visual{max-width:460px;margin:auto;width:100%;aspect-ratio:4/3.5}.cards{grid-template-columns:1fr 1fr}.category-grid{grid-template-columns:1fr 1fr}}@media(max-width:620px){.wrap{width:calc(100% - 34px)}.menu{display:block}.nav{display:none;position:absolute;left:0;right:0;top:72px;background:white;flex-direction:column;align-items:stretch;padding:18px 24px;border-bottom:1px solid var(--border)}.nav.open{display:flex}.hero h1{font-size:2.5rem}.section{padding:66px 0}.cards,.category-grid,.info-grid{grid-template-columns:1fr}.visual{aspect-ratio:4/3}.about{gap:26px}.quote{padding:30px;font-size:1.45rem}.foot{display:block}.pagehead{padding:53px 0 38px}.content{padding:40px 0 70px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Learning-first sales page */
.learn-hero{background:linear-gradient(130deg,#fffaf7 0%,#faf5f2 70%,#f1f5ed 100%)}
.learn-head{display:grid;grid-template-columns:1.25fr .75fr;align-items:center;gap:68px}.learn-head h1{font-size:clamp(2rem,3.5vw,3.25rem);line-height:1.55}.accent-word{color:#b77b86}.learn-head p{max-width:580px}.learn-art{min-height:310px;background:#fff;border:1px solid #eee7e0;border-radius:30px;box-shadow:0 16px 45px #8d796014;padding:34px;display:flex;flex-direction:column;justify-content:center;gap:12px}.learn-art span{font-size:.8rem;color:#b47b85;font-weight:750}.learn-art strong{font-family:'Yu Mincho',serif;font-size:clamp(1.9rem,3vw,2.8rem);line-height:1.65}.learn-art small{color:#728075}.art-line{height:5px;width:60px;border-radius:30px;background:#dfb9b5}.learn-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.learn-item{padding:35px;border:1px solid var(--border);border-radius:24px;background:#fff;min-height:205px}.learn-item:nth-child(2),.learn-item:nth-child(3){background:#faf7f4}.learn-item span{color:#b27986;font-size:.78rem;font-weight:700}.learn-item h3{font-size:1.2rem;margin:12px 0 9px;line-height:1.6}.learn-item p{color:var(--muted);font-size:.92rem;line-height:1.95;margin:0}.quote-small{font-size:1.6rem}.quote-small .eyebrow{display:block;margin-bottom:14px}.quote-small small{display:block;font-family:sans-serif;font-size:.8rem;color:var(--muted);margin-top:18px}.sample-shell{display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center;background:#faf8f5;border-radius:24px;padding:30px}.sample-preview{border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 8px 30px #534a3a16}.sample-chrome{height:30px;background:#f2f0ee;display:flex;align-items:center;gap:6px;padding:0 14px}.sample-chrome i{width:7px;height:7px;border-radius:50%;background:#decfca}.sample-chrome span{font-size:.63rem;letter-spacing:.13em;color:#8b8c86;margin-left:auto}.sample-slide{aspect-ratio:16/10;display:flex;justify-content:center;align-items:flex-start;flex-direction:column;padding:36px;background:linear-gradient(135deg,#f9eee9,#eff5ed)}.sample-slide span{font-size:.78rem;color:#aa7580}.sample-slide strong{font-family:'Yu Mincho',serif;font-size:clamp(1.5rem,2.7vw,2.3rem);line-height:1.5;margin:12px 0}.sample-slide small{font-size:.7rem;color:#69736b}.sample-note h3{font-size:1.3rem;line-height:1.6}.text-link{font-size:.88rem;color:#ab7180;font-weight:750}.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px;align-items:stretch}.plan{background:white;border:1px solid var(--border);border-radius:23px;padding:29px 25px;display:flex;flex-direction:column;gap:12px}.plan.featured{border-color:#d6afb4;background:#fffefd}.plan-label{font-size:.76rem;color:#af7480;font-weight:800}.plan h3{line-height:1.5;margin:0;font-size:1.15rem}.plan p{font-size:.88rem;color:var(--muted);line-height:1.9;flex:1;margin:0}.plan-price{border-top:1px solid var(--border);padding-top:15px;font-size:1.42rem;font-weight:850}.plan-price small{font-size:.7rem;font-weight:400;color:var(--muted);display:block}.content .cta-panel{margin-top:24px}
@media(max-width:800px){.learn-head,.sample-shell{grid-template-columns:1fr;gap:25px}.plan-grid{grid-template-columns:1fr}.learn-art{min-height:230px}}
@media(max-width:620px){.learn-grid{grid-template-columns:1fr}.learn-item{min-height:0;padding:26px}.learn-art{padding:28px}.sample-shell{padding:16px}.sample-slide{padding:22px}}

/* 第6案：日本語の補助見出し */
.eyebrow{letter-spacing:.06em;line-height:1.7}

/* 第8案：ブログ導線を明確にし、余白と文字装飾で視認性を強化 */
.visual-label{display:block;color:#a96e79!important;font-size:.75rem!important;font-weight:700;letter-spacing:.12em;margin:0 0 18px!important}.visual-article{display:block;margin:24px auto 0;background:#fff;border:1px solid #e5d7d3;color:#a66d7a;padding:11px 14px;border-radius:30px;font-weight:800;font-size:.84rem;box-shadow:0 8px 20px #86696514}.visual-article:hover{text-decoration:none;background:#fff9f8}.blog-cards .top{min-height:230px;padding:22px 25px;position:relative}.blog-cards .top strong{font-size:1.16rem;position:relative;z-index:1}.blog-visual-mark{display:flex;align-items:baseline;justify-content:space-between;font-size:3rem;font-family:Georgia,serif;line-height:1;color:#9cbdab;opacity:.85}.blog-cards .card:nth-child(2) .blog-visual-mark{color:#cfaba5}.blog-cards .card:nth-child(3) .blog-visual-mark{color:#96b5b5}.blog-visual-mark small{font-family:inherit;font-size:.77rem;color:#6f8074;letter-spacing:.03em}.blog-cards .card{box-shadow:0 12px 32px #6b756012;transition:transform .18s ease,box-shadow .18s ease}.blog-cards .card:hover{transform:translateY(-3px);box-shadow:0 18px 38px #6b756021;text-decoration:none}.blog-cards .body .link{display:block;padding-top:10px;border-top:1px solid #eee9e6}.more .button{font-size:.95rem;padding:15px 29px;border:1px solid #d4a0a8;color:#995e69;background:#fff}.more .button:hover{background:#fcf0f2}
@media(max-width:620px){.visual-article{font-size:.78rem}.blog-cards .top{min-height:200px}}

/* v9: readable product comparison */
.choice-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:30px 0 40px}
.choice-card{background:#fff;border:1px solid #eee6e1;border-radius:20px;padding:24px;display:flex;flex-direction:column;gap:12px;box-shadow:0 8px 24px #514b4307}
.choice-card h3{font-size:1.16rem;margin:0;line-height:1.5}.choice-card p{margin:0;color:#666d68;font-size:.91rem;flex:1;line-height:1.85}
.choice-card strong{font-size:1.55rem;color:#35473e;margin-top:6px}.choice-card.recommended{border:2px solid #cc9296;background:#fffafb}
.compare-wrap{background:white;border:1px solid #eee6e1;border-radius:22px;padding:24px;margin-bottom:24px}
.compare-wrap h3{margin:0 0 16px}.compare-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.compare{width:100%;min-width:650px;border-collapse:collapse;font-size:.88rem;line-height:1.55;text-align:center}
.compare th,.compare td{padding:14px 10px;border-bottom:1px solid #ece8e4}.compare th:first-child{text-align:left;width:28%}
.compare thead th{background:#f8f7f4;font-weight:700}.compare td{font-weight:650;color:#52685a}.compare .highlight{background:#fbf0f1}
.compare-price th,.compare-price td{font-weight:800;color:#36483e}.compare-help{font-size:.76rem;margin:12px 0 0}
.addon{display:flex;justify-content:space-between;gap:20px;align-items:center;background:#fff;border:1px solid #eee6e1;border-radius:18px;padding:22px 24px}
.addon h3{margin:0 0 4px;font-size:1rem}.addon p{margin:0;color:#57655c;font-size:.88rem}.addon-note{font-size:.73rem;color:#9c7278;white-space:nowrap}
@media(max-width:780px){.choice-cards{grid-template-columns:1fr}.choice-card{padding:20px}.compare-wrap{padding:18px 12px}.addon{display:block}.addon-note{display:block;margin-top:10px}}

/* 第10案：実際の教材サンプル。スマートフォンでも見やすい余白 */
.sample-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}
.sample-figure{margin:0;border:1px solid var(--border);border-radius:20px;background:white;overflow:hidden;box-shadow:0 12px 28px #695e5210}
.sample-figure:first-child{grid-column:1/-1;max-width:780px;width:100%;margin:auto}
.sample-figure img{width:100%;height:auto;display:block;background:#f9f9f9}
.sample-figure figcaption{display:grid;gap:4px;padding:18px 22px}.sample-figure figcaption strong{font-size:.95rem;color:#485b4e}
.sample-figure figcaption span{color:var(--muted);font-size:.84rem}
.sample-caption{font-size:.76rem;color:var(--muted);line-height:1.8;margin-top:22px}
.sample-bridge{background:#faf7f4;border:1px solid #efe9e3;border-radius:18px;padding:25px 28px;margin-top:25px;display:flex;gap:20px;justify-content:space-between;align-items:center}
.sample-bridge p{margin:6px 0 0}.sample-bridge .button{white-space:nowrap}
@media(max-width:650px){.sample-gallery{grid-template-columns:1fr;gap:18px}.sample-figure:first-child{grid-column:auto}.sample-figure figcaption{padding:14px 16px}.sample-bridge{display:block;padding:20px}.sample-bridge .button{margin-top:13px}}

/* v11: Instagram紹介とお問い合わせ */
.instagram-section{background:#fffaf7;padding-top:60px;padding-bottom:60px}
.instagram-callout{display:grid;grid-template-columns:1.4fr .6fr;align-items:center;gap:30px;background:white;border:1px solid #f0e5df;border-radius:24px;padding:36px}
.instagram-callout h2{margin:10px 0 12px}
.instagram-coming{border-radius:16px;padding:23px;color:#806968;background:#fbf2f1;text-align:center;font-size:.88rem;line-height:1.8}
#contact .quote .button{margin-top:14px}
@media(max-width:700px){.instagram-callout{grid-template-columns:1fr;padding:23px}}

.nav-instagram{color:#ad7585!important}.instagram-coming{display:flex;align-items:center;justify-content:center}.instagram-coming .button{white-space:nowrap}.footer-ig a{text-decoration:underline;text-underline-offset:3px}
