@charset "utf-8";
:root{--ink:#172e3a;--navy:#102b3c;--teal:#0f817c;--muted:#5f737e;--line:#dce6e8;--soft:#f5f8f7}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:Inter,"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;-webkit-font-smoothing:antialiased}button,a{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{max-width:100%}[hidden]{display:none!important}
.wrap{width:min(1200px,calc(100% - 64px));margin-inline:auto}.skip-link{position:absolute;left:12px;top:-60px;z-index:100;background:#fff;color:var(--navy);padding:10px 18px}.skip-link:focus{top:12px}
.site-header{height:78px;background:#ffffffed;border-bottom:1px solid #e5ebed;position:sticky;top:0;z-index:30;backdrop-filter:blur(14px)}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:36px}.brand{font-family:Arial,Helvetica,sans-serif;font-size:30px;font-weight:800;letter-spacing:-.065em;line-height:1;color:var(--navy);white-space:nowrap}.brand span{color:var(--teal)}.main-nav{display:flex;align-items:center;gap:34px;font-size:13px;font-weight:700;color:#45606c;white-space:nowrap}.main-nav a:hover,.main-nav a:focus-visible{color:var(--teal)}section[id]{scroll-margin-top:78px}
.eyebrow{font-size:12px;font-weight:800;letter-spacing:.19em;color:var(--teal);margin:0 0 21px}.eyebrow.light{color:#8bd6ce}
.hero{background:radial-gradient(circle at 88% 12%,#1c5c65 0,transparent 32%),linear-gradient(135deg,#102b3c 0%,#153c4b 100%);color:#fff;overflow:hidden}.hero-grid{min-height:680px;display:grid;grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);align-items:center;gap:72px;padding-block:88px 95px}.hero-copy{position:relative;z-index:1}.hero h1{font-size:clamp(48px,5vw,74px);font-weight:800;line-height:1.25;letter-spacing:-.07em;margin:0 0 27px}.hero h1 span{color:#b0e8df}.hero-lead{font-size:16px;line-height:2;max-width:560px;margin:0;color:#e3eff0;font-weight:500}.hero-actions{display:flex;align-items:center;gap:30px;flex-wrap:wrap;margin-top:38px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;min-height:54px;padding:0 22px;border-radius:5px;font-size:14px;font-weight:800}.button-light{background:#f5fbf9;color:var(--navy);box-shadow:0 14px 30px #071f2a33}.button-light:hover{background:#dff2ed}.text-link{font-size:13px;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:5px}.light-link{color:#deedeb}.light-link:hover{color:#fff}
.hero-real-screen{position:relative}.hero-real-screen a{display:block;position:relative;background:#fff;border:1px solid #cee1df;border-radius:13px;overflow:hidden;box-shadow:0 38px 75px #02152155;cursor:zoom-in}.hero-real-screen img{display:block;width:100%;height:auto}.hero-real-screen a::after{content:"原寸で見る ↗";position:absolute;right:14px;bottom:14px;padding:7px 10px;border-radius:4px;background:#102b3ce8;color:#fff;font-size:11px;font-weight:700}.hero-real-screen a:focus-visible,.option-image a:focus-visible{outline:3px solid #e7ac50;outline-offset:3px}
.value-line{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line)}.value-line>div{display:grid;grid-template-columns:35px 1fr;column-gap:10px;padding:26px 20px;border-right:1px solid var(--line)}.value-line>div:first-child{padding-left:0}.value-line>div:last-child{border-right:0}.value-line span{grid-row:span 2;color:var(--teal);font:bold 12px Arial,sans-serif;padding-top:3px}.value-line strong{font-size:15px}.value-line small{color:var(--muted);font-size:12px;margin-top:4px}
.section{padding:110px 0}.section-heading{margin-bottom:42px}.section-heading h2{font-size:clamp(34px,3.55vw,51px);line-height:1.38;letter-spacing:-.065em;margin:0;font-weight:800}.section-heading h2 span{color:var(--teal)}.two-col-heading{display:grid;grid-template-columns:1.25fr .75fr;gap:70px;align-items:end}.two-col-heading>p{max-width:440px;margin:0 0 4px;color:var(--muted);font-size:15px;line-height:2}.sample-note,.options-note{color:#82969a;font-size:11px;line-height:1.7;margin:19px 0 0}
.features-section{background:#f7f9f8}.features-section .two-col-heading{grid-template-columns:1fr;gap:12px}.features-section .two-col-heading>p{max-width:760px}.features-section .section-heading h2{font-size:clamp(30px,3vw,42px);text-wrap:balance}.option-showcase{display:grid;grid-template-columns:360px minmax(0,1fr);gap:30px;align-items:stretch}.option-list{border-top:1px solid #d5e1e2}.option-button{width:100%;min-height:110px;display:grid;grid-template-columns:31px 1fr 20px;gap:14px;text-align:left;align-items:center;padding:18px 12px 18px 0;border:0;border-bottom:1px solid #d5e1e2;background:transparent;color:var(--ink)}.option-button>span:nth-child(2){display:flex;flex-direction:column;gap:7px}.option-num{color:#92a7aa;font:bold 12px Arial,sans-serif}.option-button strong{font-size:20px;font-weight:800;letter-spacing:-.035em;line-height:1.25}.option-button small{color:#5b7279;font-size:13px;line-height:1.7;font-weight:600}.option-arrow{font-size:19px;color:#b1c4c5;transition:transform .2s}.option-button:hover .option-arrow,.option-button.is-active .option-arrow{transform:translate(3px,-3px)}.option-button.is-active strong,.option-button.is-active .option-num,.option-button.is-active .option-arrow{color:var(--teal)}.option-button:focus-visible{outline:3px solid #e7ac50;outline-offset:2px}
.option-visual{min-width:0;background:#eff5f3;border:1px solid #d9e5e1;border-radius:11px;padding:20px;display:flex}.option-panel{margin:0;width:100%;display:flex;flex-direction:column}.option-image{height:490px;overflow:hidden;background:#fff;border:1px solid #d6e2e4;border-radius:6px}.option-image a{display:block;width:100%;height:100%;cursor:zoom-in}.option-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:top left}.option-panel figcaption{display:flex;gap:13px;align-items:baseline;padding:16px 1px 2px}.option-panel figcaption strong{font-size:17px;font-weight:800;color:var(--navy);white-space:nowrap}.option-panel figcaption span{color:#657c80;font-size:12px;line-height:1.6}.core-showcase .option-image img{object-position:top center}.feature-showcase #panel-focus .option-image img,.feature-showcase #panel-test .option-image img,.teacher-showcase #panel-topic-errors .option-image img,.teacher-showcase #panel-topic-excel .option-image img,.extras-showcase #panel-conversation .option-image img,.extras-showcase #panel-words .option-image img{object-fit:contain;object-position:center top}
.core-showcase #panel-writing-input .option-image img,.feature-showcase #panel-analysis .option-image img{object-fit:contain;object-position:center top}
.teacher-section{color:#fff;background:linear-gradient(135deg,#123343,#0b4549)}.teacher-section .section-heading h2 span{color:#b0e8df}.teacher-section .section-heading>p{color:#d5e4e5}.teacher-showcase .option-list{border-color:#ffffff52}.teacher-showcase .option-button{color:#fff;border-color:#ffffff52}.teacher-showcase .option-button small{color:#d3e2e2}.teacher-showcase .option-button.is-active strong,.teacher-showcase .option-button.is-active .option-num,.teacher-showcase .option-button.is-active .option-arrow{color:#a9e8dc}.teacher-showcase .option-visual{background:#e7f0ee}.teacher-note{font-size:12px;line-height:1.8;color:#bcd5d3;margin:21px 0 0}.options-section .section-heading>p{font-size:16px;font-weight:600;color:#46616a}
.teacher-showcase #panel-topic-errors .option-image,.teacher-showcase #panel-topic-excel .option-image{height:300px}
.image-lightbox{width:min(96vw,1800px);max-width:none;max-height:94vh;padding:0;border:0;border-radius:10px;background:#edf4f3;color:var(--ink);box-shadow:0 24px 80px #061c2b88}.image-lightbox::backdrop{background:#061c2bcc}.image-lightbox-header{position:sticky;top:0;z-index:1;display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:52px;padding:9px 16px;background:#fff;border-bottom:1px solid var(--line)}.image-lightbox-title{font-size:13px;font-weight:800}.image-lightbox-close{border:1px solid var(--line);border-radius:5px;padding:6px 12px;background:#fff;color:var(--navy);font-size:12px;font-weight:800}.image-lightbox-scroll{overflow:auto;max-height:calc(94vh - 52px);padding:20px}.image-lightbox-scroll img{display:block;max-width:none;width:auto;height:auto;margin:auto;background:#fff;box-shadow:0 5px 25px #17334422}
.site-footer{background:#0d2938;color:#fff;padding:55px 0}.footer-inner{display:flex;justify-content:space-between;align-items:end;gap:30px}.footer-brand{color:#fff}.footer-inner>a{font-size:12px;color:#c3d7d9;border-bottom:1px solid #7fa9ab;padding-bottom:4px}.mobile-only{display:none}
@media(max-width:1000px){.hero-grid{gap:40px}.hero h1{font-size:52px}.option-showcase{grid-template-columns:320px minmax(0,1fr)}.option-button strong{font-size:18px}}
@media(max-width:820px){.wrap{width:min(100% - 40px,1200px)}.site-header{height:auto;min-height:72px}.header-inner{padding-block:16px;align-items:start;flex-wrap:wrap;gap:13px}.main-nav{width:100%;overflow-x:auto;padding-bottom:4px;gap:22px}.hero-grid{grid-template-columns:1fr;padding-block:78px 84px;gap:54px}.hero-copy{max-width:650px}.hero-real-screen{max-width:640px;transform:none}.two-col-heading{grid-template-columns:1fr;gap:18px}.option-showcase{grid-template-columns:1fr;gap:24px}.option-list{display:grid;grid-template-columns:1fr 1fr}.option-button{min-height:135px}.option-button:nth-child(odd){border-right:1px solid #d5e1e2;padding-left:8px}.teacher-showcase .option-button:nth-child(odd){border-color:#ffffff52}}
@media(max-width:580px){.wrap{width:calc(100% - 32px)}.brand{font-size:27px}.main-nav{font-size:12px;gap:18px}.hero-grid{padding-block:60px 74px}.hero h1{font-size:43px}.hero-lead{font-size:14px}.hero-actions{gap:22px}.value-line{grid-template-columns:1fr}.value-line>div{border-right:0;border-bottom:1px solid var(--line);padding:15px 0}.value-line>div:last-child{border-bottom:0}.section{padding:76px 0}.section-heading{margin-bottom:30px}.section-heading h2{font-size:33px}.two-col-heading>p{font-size:13px}.mobile-only{display:block}.option-list{grid-template-columns:1fr}.option-button{min-height:0;padding:17px 6px}.option-button:nth-child(odd){border-right:0;padding-left:0}.option-button strong{font-size:18px}.option-button small{font-size:12px}.option-visual{padding:10px}.option-image{height:290px}.option-panel figcaption{display:block}.option-panel figcaption span{display:block;margin-top:4px}.footer-inner{align-items:start;flex-direction:column}}
@media(max-width:580px){.teacher-showcase #panel-topic-errors .option-image,.teacher-showcase #panel-topic-excel .option-image{height:250px;overflow-x:auto}.teacher-showcase #panel-topic-errors .option-image img,.teacher-showcase #panel-topic-excel .option-image img{width:750px;max-width:none;height:auto;object-fit:initial}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
