:root{--navy:#173c4d;--teal:#007b80;--blue:#eaf5f8;--yellow:#f8df6c;--line:#d4e3e7;--muted:#506874;--paper:#fff;--font:'Yu Gothic','Hiragino Kaku Gothic ProN',Meiryo,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;color:var(--navy);background:#fff;font-family:var(--font);font-size:16px;line-height:1.8;word-break:normal;overflow-wrap:anywhere}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:3px solid #e1ae00;outline-offset:5px}img,video{max-width:100%;display:block}figure,p,h1,h2,h3{margin:0}h1,h2,h3{line-height:1.5;letter-spacing:.015em}button,a{ -webkit-tap-highlight-color:transparent}.shell{width:calc(100% - 112px);max-width:1280px;margin-inline:auto}.preview-note{background:var(--navy);color:#fff;text-align:center;font-size:11px;letter-spacing:.08em;padding:5px 12px}.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:102px;gap:24px}.brand{font-family:Arial,sans-serif;font-size:30px;line-height:1.1;font-weight:800;letter-spacing:-1.3px;display:block;white-space:nowrap}.brand>span{color:var(--teal)}.brand small{display:block;font-family:var(--font);font-size:10px;font-weight:600;letter-spacing:.04em;margin-top:9px}.header-inner nav{display:flex;align-items:center;gap:32px;font-size:14px;font-weight:700}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:38px;padding:17px 27px;border-radius:6px;background:var(--teal);color:white;font-weight:700}.button.small{font-size:14px;padding:12px 20px;gap:25px}.button:hover{background:#005e63}.hero{display:grid;grid-template-columns:1fr 1.12fr;align-items:center;gap:40px;padding-top:34px;padding-bottom:78px}.hero-copy{padding-block:16px}.page-label{font-size:15px;letter-spacing:.1em;color:var(--teal);font-weight:700;margin-bottom:21px}.hero h1{font-size:clamp(30px,3.05vw,44px);line-height:1.65;letter-spacing:.02em;white-space:nowrap}.highlight{position:relative;background:linear-gradient(transparent 77%,var(--yellow) 77%,var(--yellow) 91%,transparent 91%)}.hero-description{margin-top:25px;color:var(--muted);line-height:2.1;font-size:17px}.hero-links{display:flex;flex-wrap:wrap;gap:22px;margin-top:34px}.hero-links a{font-size:15px;font-weight:700;border-bottom:1px solid var(--teal);padding:7px 0;color:var(--teal)}.hero-links span{margin-left:20px}.hero-media{position:relative;padding:0 0 22px 17px}.hero-media:before{content:'';position:absolute;background:var(--blue);inset:28px -20px 0 42px;border-radius:95px 10px 10px 10px;z-index:-1}.hero-media>img{width:100%;height:480px;object-fit:cover;object-position:center 57%;border-radius:90px 8px 8px 8px}.hero-media figcaption{font-size:12px;color:var(--muted);margin-top:11px;padding-left:10px}.hero-line{position:absolute;right:-6px;top:-8px;border:2px solid var(--teal);border-left:0;border-bottom:0;width:45px;height:45px;border-radius:0 40px 0 0;transform:rotate(-8deg)}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:25px;margin-bottom:33px}.section-heading h2{font-size:32px;line-height:1.6;letter-spacing:.035em}.section-heading>div>p{font-size:14px;color:var(--teal);font-weight:700;margin-top:8px;letter-spacing:.08em}.heading-note{font-size:14px;color:var(--muted)}.courses-section{padding:38px 0 86px;border-top:1px solid var(--line)}.course-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:25px}.course figure{margin-bottom:17px}.course figure>img,.photo-pending{width:100%;height:205px;object-fit:cover;border-radius:6px}.course.dekita img{object-position:55% 50%}.course.programming img{object-position:center 60%}.course.explore img{object-position:50% 59%}.course figure figcaption{font-size:10px;color:var(--muted);margin-top:7px}.course-content{padding:0 2px}.learning-word{color:var(--teal);font-weight:700;font-size:20px;margin-bottom:8px}.learning-word>span{font-family:Arial,sans-serif;font-size:12px;vertical-align:middle;margin-right:9px;font-weight:400}.course h3{font-size:20px;letter-spacing:0;line-height:1.6}.course.programming h3{font-size:19px}.audience{font-size:13px;margin:8px 0 20px}.price{font-size:14px;white-space:nowrap}.price strong{font-family:Arial,sans-serif;font-size:36px;letter-spacing:-1px;line-height:1.3}.price b{font-size:16px}.price small{display:block;font-size:12px;color:var(--muted);margin-top:4px}.duration{font-size:13px;margin-top:14px}.duration strong{font-size:17px;margin-left:8px}.course-content>a{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:12px;margin-top:19px;font-size:13px;font-weight:700;color:var(--teal)}.photo-pending{background:var(--navy);color:white;display:flex;justify-content:center;align-items:center;gap:15px;padding:20px}.photo-pending>span{font-size:30px;color:var(--yellow);font-weight:300}.photo-pending p{font-size:14px}.photo-pending small{display:block;font-size:11px;opacity:.8;margin-top:12px}.media-note{margin-top:26px;font-size:12px;color:var(--muted)}.schedule-section{background:var(--blue);padding:75px 0 67px}.text-link{font-size:14px;font-weight:700;color:var(--teal);border-bottom:1px solid var(--teal);padding-bottom:4px}.schedule-intro{font-size:14px;color:var(--muted);margin-bottom:20px}.table-scroll{overflow:auto;border:1px solid #c9dde3;border-radius:9px;background:#fff}.table-scroll table{border-collapse:collapse;width:100%;table-layout:fixed;min-width:1120px;text-align:left}.table-scroll caption{position:absolute;clip-path:inset(50%);height:1px;width:1px;overflow:hidden}.period-col{width:67px}.closed-col{width:118px}thead th{background:var(--navy);color:white;padding:13px 10px;font-size:20px;text-align:center;border-right:1px solid #3c5b69}thead th:first-child{font-size:13px}thead th span{font-size:12px;font-weight:400;margin-left:4px}tbody td,tbody th{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px 11px;vertical-align:top}tbody tr:last-child>*{border-bottom:0}tbody th{text-align:center;color:var(--muted);background:#f7fafb;vertical-align:middle}tbody th strong{display:block;font-family:Arial,sans-serif;font-size:24px;font-weight:400}tbody th span{display:block;font-size:11px}.slot-time{font-family:Arial,sans-serif;font-size:17px;white-space:nowrap;display:block;letter-spacing:-.15px}.slot-time>span{font-size:12px;margin:0 2px}.slot-courses{display:flex;flex-direction:column;gap:7px;margin-top:9px}.course-name{font-size:12px;line-height:1.65;display:block;padding-left:9px;position:relative}.course-name:before{content:'';width:3px;height:13px;position:absolute;left:0;top:4px;background:#3581b0}.course-name.dekita:before{background:#cdab29}.course-name.explore:before{background:#178b85}.course-name.club:before{background:var(--navy)}.reserve .slot-courses{font-size:13px;color:var(--muted)}.closed-cell{background:#f3f7f8;text-align:center;vertical-align:middle;font-size:14px}.closed-cell>p{font-size:12px;margin:14px 0}.closed-cell>a{font-size:11px;color:var(--teal);text-decoration:underline}.empty{display:block;text-align:center;color:#69818b;padding:6px}.table-legend{font-size:12px;color:var(--muted);margin-top:12px}.schedule-notes{display:flex;gap:26px;flex-wrap:wrap;margin:24px 0 21px;font-size:13px}.schedule-notes strong{padding-right:8px}.consultation{border-left:3px solid #81b5bb;padding-left:18px;font-size:13px;line-height:1.9}.consultation a{display:inline-block;color:var(--teal);font-weight:700;margin-top:9px;border-bottom:1px solid #a4c8cd}.by-course{padding-top:80px;padding-bottom:90px}.course-jumps{display:flex;gap:12px;margin-bottom:29px;flex-wrap:wrap}.course-jumps a{border:1px solid var(--line);border-radius:5px;font-size:13px;display:flex;justify-content:space-between;gap:24px;padding:9px 15px;font-weight:700}.course-jumps a:hover{background:var(--blue)}.course-schedules{display:grid;grid-template-columns:1fr 1fr;gap:26px}.course-schedule{padding:28px 30px;border:1px solid var(--line);border-top:4px solid var(--teal);border-radius:6px;scroll-margin-top:25px;display:flex;flex-direction:column}.course-schedule.dekita{border-top-color:#d9b834}.course-schedule.programming{border-top-color:#438aaf}.course-schedule.club{border-top-color:var(--navy)}.course-schedule header h3{font-size:23px;margin:4px 0}.course-schedule header p{font-size:13px;color:var(--muted)}.schedule-word{font-size:12px;color:var(--teal);font-weight:700;letter-spacing:.08em}.course-schedule dl{margin:20px 0 26px}.course-schedule dl>div{display:grid;grid-template-columns:134px 1fr;padding:12px 0;border-top:1px solid var(--line);align-items:baseline}.course-schedule dt{font-size:16px;font-weight:700}.course-schedule dt small{font-size:11px;font-weight:400;margin-left:6px}.course-schedule dd{margin:0;font-family:Arial,sans-serif;font-size:18px;line-height:1.7;font-weight:600}.course-schedule dd span{display:block}.course-schedule .consultation{margin-top:auto;font-size:12px}.experience{background:#edf7f7;padding:75px 0}.experience-inner{display:grid;grid-template-columns:1.1fr 1fr;gap:68px;align-items:center}.experience-photos{display:grid;grid-template-columns:.7fr 1fr;gap:18px;align-items:center}.experience-photos video{width:100%;border-radius:6px;background:var(--navy);object-fit:cover}.process-video video{aspect-ratio:9/16}.presentation-video{margin-top:65px}.presentation-video video{aspect-ratio:16/9}.experience-photos figcaption{font-size:11px;color:var(--muted);margin-top:9px}.experience-copy h2{font-size:34px;line-height:1.7;letter-spacing:.04em}.experience-copy>p{margin:23px 0 27px;color:var(--muted);font-size:15px;line-height:2}.trial{min-width:300px}.contact-secondary{display:block;margin-top:21px;font-size:13px;text-decoration:underline;text-underline-offset:4px}.footer{display:flex;align-items:center;gap:30px;justify-content:space-between;padding-block:42px}.footer .brand{font-size:25px}.footer p,.footer>small{font-size:11px;color:var(--muted)}.mobile-only,.mobile-schedule,.scroll-hint{display:none}.skip{position:absolute;left:10px;top:-100px;background:white;padding:10px;z-index:20}.skip:focus{top:10px}
@media(min-width:761px) and (max-width:1150px){.shell{width:calc(100% - 64px)}.hero{gap:20px;grid-template-columns:1fr 1fr}.hero h1{font-size:30px}.hero-media>img{height:420px}.course-grid{grid-template-columns:1fr 1fr;gap:38px}.course figure>img,.photo-pending{height:250px}.course-schedule{padding:22px}.course-schedule dl>div{grid-template-columns:112px 1fr}.experience-inner{gap:35px}.experience-copy h2{font-size:27px}.footer>p{display:none}.scroll-hint{display:block;font-size:12px;margin-bottom:10px}}
@media(max-width:760px){html{scroll-padding-top:15px}.shell{width:calc(100% - 40px)}.preview-note{font-size:10px;padding:4px 8px}.preview-note>span{display:none}.header-inner{min-height:80px;gap:10px}.brand{font-size:26px}.brand small{font-size:8px;margin-top:6px}.header-inner nav{gap:0}.header-inner nav>a:not(.button){display:none}.button.small{font-size:12px;gap:12px;padding:10px 12px}.hero{padding-top:22px;padding-bottom:42px;display:flex;flex-direction:column;gap:26px;align-items:stretch}.hero-copy{padding:0}.page-label{font-size:12px;margin-bottom:14px}.hero h1{font-size:29px;line-height:1.7;letter-spacing:0;white-space:normal}.hero-description{font-size:14px;margin-top:17px;line-height:1.95}.hero-description br:last-child{display:none}.hero-links{gap:19px;margin-top:20px}.hero-links a{font-size:12px;padding:6px 0}.hero-links span{margin-left:9px}.hero-media{padding:0 9px 16px 0}.hero-media>img{height:300px;border-radius:52px 5px 5px 5px;object-position:center 57%}.hero-media:before{inset:20px -7px 0 23px;border-radius:52px 6px 6px 6px}.hero-media figcaption{font-size:10px;padding-left:0;margin-top:8px}.hero-line{width:32px;height:32px;right:0;top:-10px}.section-heading{display:block;margin-bottom:25px}.section-heading h2{font-size:25px;line-height:1.65;letter-spacing:.01em}.section-heading>div>p{font-size:12px;margin-top:8px}.heading-note{font-size:12px;margin-top:18px}.mobile-only{display:initial}.courses-section{padding-top:34px;padding-bottom:45px}.course-grid{display:block}.course{display:grid;grid-template-columns:116px 1fr;gap:17px;padding:25px 0;border-top:1px solid var(--line)}.course:first-child{border-top:0;padding-top:0}.course figure{margin:0;padding-top:2px}.course figure>img,.photo-pending{height:166px;border-radius:5px;object-fit:cover}.course.dekita img{object-position:64% center}.course.programming img{object-position:45% center}.course.explore img{object-position:57% 68%}.course figure figcaption{font-size:9px;line-height:1.7;margin-top:7px}.course-content{padding:0}.learning-word{font-size:17px;margin-bottom:5px;line-height:1.4}.learning-word>span{font-size:10px;margin-right:4px}.course h3,.course.programming h3{font-size:17px;line-height:1.55;overflow-wrap:normal}.audience{font-size:11px;margin:6px 0 13px}.price{font-size:11px}.price strong{font-size:30px}.price b{font-size:13px}.price small{font-size:10px}.duration{font-size:11px;margin-top:9px}.duration strong{font-size:15px;margin-left:5px}.course-content>a{font-size:11px;margin-top:12px;padding-top:8px}.photo-pending{padding:14px;display:block;text-align:center}.photo-pending>span{font-size:26px;line-height:1}.photo-pending p{font-size:11px;margin-top:8px}.photo-pending small{font-size:10px;margin-top:10px}.media-note{font-size:11px;margin-top:12px}.schedule-section{padding:43px 0}.section-heading .text-link{display:inline-block;margin-top:18px;font-size:12px}.schedule-intro{font-size:12px;margin-bottom:20px}.mobile-schedule{display:block}.schedule-mode{display:grid;grid-template-columns:1fr 1fr;gap:5px;background:#d9e9ed;border-radius:7px;padding:4px;margin-bottom:19px}.schedule-mode button{background:transparent;border:0;color:var(--muted);font-size:13px;min-height:41px;border-radius:5px;font-weight:700}.schedule-mode button[aria-pressed=true]{background:var(--navy);color:white}.day-picker{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}.day-picker button{border:1px solid #c5dade;border-radius:5px;background:#fff;color:var(--navy);font-size:18px;padding:7px 0;font-weight:700;min-height:64px}.day-picker button small{display:block;font-size:10px;font-weight:400;line-height:1.6}.day-picker button[aria-selected=true]{background:var(--teal);color:#fff;border-color:var(--teal)}#day-panel{background:white;border-radius:6px;margin-top:13px;padding:20px}#day-panel>h3{font-size:18px;margin-bottom:7px}.day-slot{display:grid;grid-template-columns:56px 1fr;gap:9px;padding:15px 0;border-top:1px solid var(--line)}.day-slot:last-child{padding-bottom:0}.period-label{font-size:11px;color:var(--muted);padding-top:4px}.day-slot .slot-time{font-size:20px}.day-slot .course-name{font-size:14px;line-height:1.75}.day-slot .slot-courses{gap:7px}.day-closed{font-size:14px;margin:14px 0}.week-container{display:none}.show-week .week-container{display:block}.scroll-hint{display:block;font-size:12px;margin-bottom:13px;color:var(--teal)}.table-scroll table{min-width:1270px}.period-col{width:65px}.closed-col{width:115px}tbody td{padding:15px 13px}.slot-time{font-size:18px}.course-name{font-size:14px}.table-scroll th:first-child{position:sticky;left:0;z-index:2;box-shadow:2px 0 3px #173c4d0d}.closed-cell a{font-size:12px}.table-legend{font-size:11px}.schedule-notes{display:block;margin:22px 0;font-size:12px}.schedule-notes p+p{margin-top:8px}.consultation{font-size:12px;padding-left:13px}.consultation a{font-size:12px;margin-top:10px}.by-course{padding-top:43px;padding-bottom:45px}.course-jumps{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:24px}.course-jumps a{font-size:11px;padding:9px 10px;gap:8px;min-height:47px;align-items:center}.course-schedules{display:block}.course-schedule{padding:23px 19px;margin-bottom:20px}.course-schedule:last-child{margin-bottom:0}.course-schedule header h3{font-size:20px}.course-schedule header p{font-size:11px}.course-schedule header p>span{white-space:nowrap}.course-schedule dl{margin-top:18px;margin-bottom:22px}.course-schedule dl>div{grid-template-columns:117px 1fr;gap:8px;padding:12px 0}.course-schedule dt{font-size:14px;letter-spacing:-.05em}.course-schedule dt small{font-size:10px;display:block;margin-left:0;line-height:1.2}.course-schedule dd{font-size:16px;white-space:nowrap}.course-schedule .consultation{font-size:11px}.course-schedule .consultation a{font-size:11px}.experience{padding:41px 0}.experience-inner{display:flex;flex-direction:column;gap:28px;align-items:stretch}.experience-photos{gap:12px;grid-template-columns:.64fr 1fr}.presentation-video{margin-top:20px}.experience-photos figcaption{font-size:9px}.experience-copy h2{font-size:27px;line-height:1.7}.experience-copy>p{font-size:13px;margin:17px 0 23px}.trial{min-width:0;width:100%;font-size:15px;padding:15px 23px}.contact-secondary{font-size:12px;text-align:center}.footer{display:block;padding-block:32px}.footer>p{margin-top:18px}.footer>small{display:block;margin-top:15px;font-size:10px}.footer .brand{font-size:25px}[hidden]{display:none!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Final readability refinements after the 1440/390px browser review. */
@media(min-width:761px){.course-name{font-size:14px}.course-schedule{align-self:start}.course.explore img{object-position:center 82%}}
@media(max-width:760px){.hero-description br:last-child{display:initial}.course.explore img{object-position:center 82%}}
/* Course motifs: restrained line icons paired with the photographs. */
.club-scene{display:block;width:100%;height:205px;background:var(--blue);border-radius:6px}
.start-plan,.course-schedule header .start-plan{display:inline-block;font-size:12px;font-weight:700;line-height:1.7;background:#fff2b9;color:var(--navy);border-radius:4px;padding:4px 9px;margin:9px 0 0}
.future-note{display:block;font-size:10px;line-height:1.6;color:var(--muted)}
.course-schedule header .planned-slots{margin-top:10px;font-size:12px;color:var(--teal)}
@media(min-width:761px) and (max-width:1150px){.club-scene{height:250px}}
@media(max-width:760px){.club-scene{height:166px}.start-plan,.course-schedule header .start-plan{font-size:10px;padding:4px 6px}.future-note{font-size:11px}.course-schedule header .planned-slots{font-size:11px}}
.course-image{position:relative}
.course-image>img{display:block;width:100%;height:205px;object-fit:cover;border-radius:6px}
.course-symbol{position:absolute;right:10px;bottom:10px;width:68px;height:60px;display:grid;place-items:center;background:#fffffff5;border:1px solid #d4e3e7;border-radius:11px;color:var(--teal);box-shadow:0 3px 10px #173c4d0d}
.course-icon{width:55px;height:48px;display:block;flex-shrink:0;color:var(--teal)}
.course.dekita .course-image>img{object-position:57% 39%}
.schedule-identity{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:38px}
.schedule-identity .course-icon{width:43px;height:37px}
@media(min-width:761px) and (max-width:1150px){.course-image>img{height:250px}}
@media(max-width:760px){.course-image>img{height:166px}.course-symbol{width:48px;height:43px;right:5px;bottom:5px;border-radius:8px}.course-symbol .course-icon{width:40px;height:35px}.course.dekita .course-image>img{object-position:61% 38%}.course.club .photo-pending{padding:15px 9px 52px}.course.club .photo-pending p{font-size:10px}.course.club .photo-pending small{font-size:9px}.schedule-identity{min-height:32px}.schedule-identity .course-icon{width:37px;height:32px}}

@media(max-width:760px){.section-heading h2{max-width:13em}}
