.lesson-section{text-align:center}.lesson-br-pc,.lesson-br-sp{display:none}@media(min-width:760px){.lesson-br-pc{display:inline}}@media(max-width:759px){.lesson-br-sp{display:inline}}.lesson-section{padding-block:var(--section-y)}.lesson-surface{background:var(--paper-soft)}.lesson-narrow{width:min(100% - var(--gutter) * 2,44rem);margin-inline:auto}.lesson-wide{width:min(100% - var(--gutter) * 2,var(--measure));margin-inline:auto}.lesson-center{text-align:center}.lesson-head{margin-bottom:var(--space-2xl)}.lesson-kicker{margin-bottom:var(--space-sm);padding-inline-start:var(--ls-label);color:var(--ink-400);font-family:var(--font-roman);font-size:var(--fs-label);font-weight:500;letter-spacing:var(--ls-label);line-height:1.2;text-transform:uppercase}.lesson-section h2{color:var(--ink-heading)}.lesson-lead{font-feature-settings:"lnum" 1,"halt" 1}.lesson-lead{margin-top:var(--space-md);color:var(--ink-600);font-family:var(--font-serif);font-size:var(--fs-lead);line-height:var(--lh-loose)}.lesson-note{margin-top:var(--space-md);color:var(--ink-400);font-size:var(--fs-xs);line-height:1.9}.lesson-btn-wide{width:min(100%,22rem)}.lesson-text-link{display:inline-flex;min-height:44px;align-items:center;color:var(--ink-600);font-size:var(--fs-sm);text-decoration:underline;text-decoration-color:var(--line-strong);text-underline-offset:.35em;transition:color var(--dur) var(--ease),text-decoration-color var(--dur) var(--ease)}.lesson-text-link:hover{color:var(--ink-600);text-decoration-color:var(--ink-900)}.lesson-dates{display:grid;gap:var(--space-sm)}@media(min-width:900px){.lesson-dates{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-md)}}.lesson-date{display:flex;flex-direction:column;border:1px solid var(--line);background:var(--paper)}.lesson-date-main{display:flex;flex:1;flex-direction:column;align-items:center;padding:var(--space-lg) var(--space-md) var(--space-md)}.lesson-date-when{display:flex;flex-direction:column;align-items:center;gap:var(--space-3xs)}.lesson-date-day{color:var(--ink-600);font-family:var(--font-serif);font-size:1.25rem;font-weight:600;letter-spacing:.02em;line-height:1.5;white-space:nowrap}.lesson-date-time{color:var(--ink-500);font-family:var(--font-roman);font-size:var(--fs-sm);letter-spacing:.06em;white-space:nowrap}.lesson-date-theme{width:100%;margin-top:var(--space-sm);padding-top:var(--space-sm);border-top:1px solid var(--line)}.lesson-date-theme-name{color:var(--ink-600);font-family:var(--font-serif);font-size:var(--fs-lead);font-weight:600}.lesson-date-desc{margin-top:var(--space-2xs);color:var(--ink-500);font-size:var(--fs-xs);line-height:1.85}.lesson-date-reserve{display:flex;align-items:center;justify-content:center;gap:var(--space-2xs);margin-inline:var(--space-md);padding-block:var(--space-sm) var(--space-md);border-top:1px dashed var(--line-strong)}.lesson-date-reserve span{padding:0 var(--space-2xs);background:var(--ink-500);color:var(--paper);font-size:var(--fs-xs);letter-spacing:.04em;line-height:1.7}.lesson-date-reserve strong{color:var(--ink-600);font-size:var(--fs-sm);font-weight:500}.lesson-timetable{--tt-line: 1.5rem;position:relative;width:min(100%,26rem);margin-inline:auto;text-align:left}.lesson-timetable:before{position:absolute;top:calc(var(--space-sm) + var(--tt-line) / 2);bottom:calc(var(--space-sm) + var(--tt-line) / 2);left:4px;width:1px;background:var(--line-strong);content:""}.lesson-timetable-item{position:relative;display:grid;grid-template-columns:9px 5.5em minmax(0,1fr);gap:var(--space-sm);align-items:start;padding-block:var(--space-sm);line-height:var(--tt-line)}.lesson-timetable-item:before{position:relative;z-index:1;width:9px;height:9px;margin-top:calc((var(--tt-line) - 9px) / 2);border:1px solid var(--ink-900);background:var(--ink-900);content:""}.lesson-timetable-item.is-relative:before{border-color:var(--ink-400);background:var(--paper)}.lesson-timetable-time{color:var(--ink-600);font-family:var(--font-roman);font-size:var(--fs-lead);font-weight:500;letter-spacing:.06em;white-space:nowrap}.lesson-timetable-item.is-relative .lesson-timetable-time{color:var(--ink-400);font-family:var(--font-sans);font-size:var(--fs-xs);font-weight:400;letter-spacing:.04em}.lesson-timetable-label{color:var(--ink-600);font-size:var(--fs-sm)}.lesson-timetable+.lesson-note{margin-top:var(--space-lg)}.lesson-details{display:grid;gap:var(--space-md);width:min(100% - var(--gutter) * 2,56rem);margin:var(--space-3xl) auto 0}@media(min-width:760px){.lesson-details{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr)}}.lesson-detail{padding:var(--space-xl) var(--space-lg) var(--space-md);background:var(--paper-soft);border:1px solid var(--line)}.lesson-detail-head{padding-bottom:var(--space-md);border-bottom:1px solid var(--line)}.lesson-detail-en{padding-inline-start:var(--ls-label);color:var(--ink-400);font-family:var(--font-roman);font-size:var(--fs-label);letter-spacing:var(--ls-label);line-height:1.2;text-transform:uppercase}.lesson-detail-head h3{margin-top:var(--space-2xs);color:var(--ink-heading);font-size:var(--fs-h3);letter-spacing:.08em}.lesson-detail-list{text-align:left}.lesson-detail-item{display:grid;grid-template-columns:2.5rem minmax(0,1fr);gap:var(--space-sm);align-items:start;padding-block:var(--space-md)}.lesson-detail-item+.lesson-detail-item{border-top:1px solid var(--line)}.lesson-detail-icon{width:2.5rem;height:2.5rem;padding:.45rem;border:1px solid var(--line);border-radius:50%;background:var(--paper);fill:none;stroke:var(--ink-700);stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}.lesson-detail-icon .lesson-detail-icon-fill{fill:var(--ink-700)}.lesson-detail-label{display:flex;min-height:2.5rem;align-items:center;color:var(--ink-heading);font-family:var(--font-serif);font-size:var(--fs-h3);font-weight:500;letter-spacing:.04em;line-height:1.5}.lesson-detail-text{margin-top:var(--space-3xs);color:var(--ink-400);font-size:var(--fs-xs);line-height:1.8}.lesson-head-tight{margin-bottom:0}.lesson-price{margin-top:var(--space-sm)}.lesson-price{display:flex;align-items:baseline;justify-content:center;gap:.15em;margin-top:var(--space-xl);color:var(--ink-600);white-space:nowrap}.lesson-price-num{font-family:var(--font-roman);font-size:clamp(2.5rem,1.75rem + 3.5vw,3.5rem);font-weight:500;line-height:1}.lesson-price-unit{font-family:var(--font-serif);font-size:1.25rem}.lesson-price-tax{color:var(--ink-400);font-size:var(--fs-xs)}.lesson-discount{width:min(100%,26rem);margin:var(--space-2xl) auto 0}.lesson-discount-title{color:var(--ink-500);font-size:var(--fs-xs);letter-spacing:.04em}.lesson-discount-list{margin-top:var(--space-xs);border-top:1px solid var(--line);text-align:left}.lesson-discount-list li{display:flex;justify-content:space-between;gap:var(--space-md);padding-block:var(--space-xs);border-bottom:1px solid var(--line);color:var(--ink-500);font-size:var(--fs-xs);line-height:1.7}.lesson-discount-off{flex-shrink:0;white-space:nowrap}.lesson-discount-note{margin-top:var(--space-xs);color:var(--ink-400);font-size:var(--fs-xs)}.lesson-apply-wrap{max-width:60rem}.lesson-flow-steps{width:min(100%,36rem);margin:0 auto var(--space-2xl);border-top:1px solid var(--line-strong);text-align:left}.lesson-flow-step{display:grid;grid-template-columns:3rem minmax(0,1fr);gap:var(--space-sm);align-items:baseline;padding-block:var(--space-lg);border-bottom:1px solid var(--line-strong)}.lesson-flow-num{position:relative;top:.12em;color:var(--ink-400);font-family:var(--font-roman);font-size:1.5rem;font-weight:500;letter-spacing:.04em;line-height:1}.lesson-flow-body h3{color:var(--ink-heading);font-size:var(--fs-h3);line-height:1.5}.lesson-flow-body p{margin-top:var(--space-sm);color:var(--ink-500);font-size:var(--fs-sm);line-height:1.85;word-break:normal}.home-reserve-pill{display:flex;width:min(100%,22rem);min-height:52px;margin:var(--space-xl) auto 0;padding:var(--space-sm) var(--space-md);align-items:center;justify-content:center;border-radius:var(--radius-sm);background:var(--paper-mid);color:var(--ink-600);font-size:var(--fs-sm);letter-spacing:.06em;cursor:default}.home-reserve-pill+.lesson-note{margin-top:var(--space-sm)}.lesson-apply-closed{color:var(--ink-600);font-size:var(--fs-body);line-height:1.9}.lesson-contact-btn{margin-top:var(--space-xl)}.lesson-faq{border-top:1px solid var(--line);text-align:left}.lesson-faq-item{border-bottom:1px solid var(--line)}.lesson-faq-item summary{display:grid;grid-template-columns:1.75rem minmax(0,1fr) 1rem;gap:var(--space-sm);align-items:start;min-height:64px;padding-block:var(--space-md);cursor:pointer;list-style:none}.lesson-faq-item summary::-webkit-details-marker{display:none}.lesson-faq-key{color:var(--ink-600);font-family:var(--font-roman);font-size:var(--fs-body);font-weight:500;line-height:1.6}.lesson-faq-key-a{color:var(--ink-300)}.lesson-faq-q,.lesson-faq-a p{word-break:auto-phrase}.lesson-faq-q{color:var(--ink-600);font-family:var(--font-serif);font-size:var(--fs-sm);font-weight:500;line-height:1.8}.lesson-faq-mark{position:relative;width:16px;height:16px;margin-top:.5em}.lesson-faq-mark:before,.lesson-faq-mark:after{position:absolute;top:50%;left:0;width:100%;height:1px;background:var(--ink-700);content:"";transition:transform var(--dur) var(--ease)}.lesson-faq-mark:after{transform:rotate(90deg)}.lesson-faq-item[open] .lesson-faq-mark:after{transform:rotate(0)}.lesson-faq-a{display:grid;grid-template-columns:1.75rem minmax(0,1fr);gap:var(--space-sm);padding-bottom:var(--space-lg)}.lesson-faq-a p{color:var(--ink-500);font-size:var(--fs-sm);line-height:1.9}.lesson-signature{margin-top:var(--space-3xl);padding-inline-start:.22em;color:var(--ink-400);font-family:var(--font-roman);font-size:1.125rem;letter-spacing:.22em}
