/*! trine.css を縮めたもの。直すのは原本のほう（tools/build_theme.py が作る） */
:root{--bg: #ffffff;--card: #faf6ec;--ink: #262219;--sub: #5b5445;--gold: #a8823a;--brand: #c1ab0a;--line: rgba(60,52,36,.18);--deep: #23211a;--rose: #a8823a;--sage: #8a9a7b;--navy: #1e4d55;--navy-dark: #163a41;--tint-navy: #e4ecec;--tint-gold: #f1e9d9;--tint-rose: #f3ead9;--tint-sage: #ecefe3;--font-display: "Zen Old Mincho", serif;--font-body: "Noto Sans JP", sans-serif;--base: 16px;--rc: 2px;--rb: 2px;--rs: 2px;--rbtn: 2px;--maxw: 1080px;--pad: 60px;--on-deep: #faf6ec;--on-deep-sub: rgba(233,224,205,.74)}*{box-sizing: border-box}html{scroll-behavior: auto}html.smooth{scroll-behavior: smooth}body{margin: 0;background: var(--bg);color: var(--ink);font-family: var(--font-body);font-size: var(--base);line-height: 1.85;-webkit-font-smoothing: antialiased;text-rendering: optimizeLegibility}img{max-width: 100%;display: block}a{color: inherit;text-decoration: none}.book-choice{display:grid;grid-template-columns:1fr 1fr;gap:10px}@media(max-width:520px){.book-choice{grid-template-columns:1fr}}.ft-rec{display:inline-block;margin-left:10px;font-size:10.5px;font-weight:600;letter-spacing:.08em;color:#fff;background:var(--gold);border-radius:2px;padding:3px 9px;white-space:nowrap;vertical-align:middle}.ft-rec.pop{background: #6ecfb0}.ft-table tr.rec td{background: var(--tint-gold)}.tlink,.fst-tbl a,.fst-dl a,.fst-q a{color: var(--gold);text-decoration: underline;text-underline-offset: 3px;text-decoration-thickness: 1px}.tlink:hover,.fst-tbl a:hover,.fst-dl a:hover,.fst-q a:hover{color: var(--ink)}h1,h2,h3{font-family: var(--font-display);font-weight: 500}.container{max-width: var(--maxw);margin: 0 auto;padding: 0 var(--pad)}.center{text-align: center}.ph{position: relative;display: flex;align-items: center;justify-content: center;background: #e8dec9;background-image: repeating-linear-gradient(135deg,rgba(150,128,90,.22) 0 2px,transparent 2px 13px);overflow: hidden;border-radius: var(--rs);border: 1px solid var(--line)}.ph > span{font: 11px/1.4 ui-monospace,"SFMono-Regular",Menlo,monospace;letter-spacing: .07em;text-transform: uppercase;color: #897a5e;background: rgba(250,246,236,.8);padding: 4px 9px;border-radius: 2px;border: 1px solid rgba(137,122,94,.3);text-align: center;max-width: 86%}.ph-deep{background: #322d22;background-image: repeating-linear-gradient(135deg,rgba(120,105,70,.3) 0 2px,transparent 2px 13px);border-color: rgba(216,181,110,.3)}.ph-deep > span{color: #b6a888;background: rgba(34,30,22,.7);border-color: rgba(150,130,90,.4)}.idx{display: flex;align-items: center;gap: 14px}.idx-n{font-family: var(--font-display);font-size: 14px;color: var(--gold);letter-spacing: .08em}.idx-rule{width: 26px;height: 1px;background: var(--gold);flex-shrink: 0}.idx-l{font-weight: 600;font-size: 11px;letter-spacing: .26em;text-transform: uppercase;color: var(--sub)}.idx.center{justify-content: center}.eyebrow{font-weight: 600;font-size: 11px;letter-spacing: .26em;text-transform: uppercase;color: var(--gold)}.sec-title{font-size: 38px;line-height: 1.45;margin: 22px 0 0;letter-spacing: .05em}.sec-lead{color: var(--sub);font-size: 14.5px;line-height: 1.95;margin: 18px 0 0;max-width: 540px}.center .sec-lead{margin-left: auto;margin-right: auto}.btn{display: inline-flex;align-items: center;justify-content: center;gap: 8px;padding: 16px 30px;border-radius: var(--rbtn);font-family: var(--font-body);font-weight: 600;font-size: 13.5px;letter-spacing: .1em;cursor: pointer;border: 1px solid transparent;transition: background .2s,color .2s,transform .15s;white-space: nowrap}.btn-primary{background: var(--ink);color: var(--card)}.btn-primary:hover{background: var(--deep);transform: translateY(-2px)}.btn-ghost{background: transparent;color: var(--ink);border-color: var(--ink)}.btn-ghost:hover{background: var(--ink);color: var(--card)}.btn-gold{background: var(--gold);color: var(--deep)}.btn-gold:hover{transform: translateY(-2px)}.btn-white{background: #fff;color: var(--ink);border-color: var(--line);box-shadow: 0 2px 10px rgba(60,52,36,.08)}.btn-white:hover{background: #fff;border-color: var(--gold);transform: translateY(-2px)}.btn-sm{padding: 11px 20px;font-size: 12.5px}.site-header{position: sticky;top: 0;z-index: 50;background: color-mix(in srgb, var(--bg) 88%, transparent);backdrop-filter: blur(12px) saturate(140%);-webkit-backdrop-filter: blur(12px) saturate(140%);border-bottom: 1px solid var(--line)}.site-header .container{display: flex;align-items: center;justify-content: space-between;height: 94px}.site-header .lt-main{font-size: 37px}.site-header .lt-sub{font-size: 10px;letter-spacing: .18em}.site-header .logo-mark .mark-img{height: 44px !important}.site-header .nav{font-size: 14px;gap: 32px}@media (max-width: 600px){.site-header .container{height: 84px}.site-header .lt-main{font-size: 26px}.site-header .lt-sub{font-size: 9px;letter-spacing: .22em}.site-header .logo-mark .mark-img{height: 32px !important}}@media (max-width: 350px){.site-header .lt-sub{letter-spacing: .16em}}.logo{display: flex;flex-direction: column;align-items: flex-start;gap: 5px}.logo-row{display: flex;align-items: center;gap: 12px}.logo-mark{display: inline-flex;align-items: center;justify-content: center;flex-shrink: 0;line-height: 0}.logo-text{display: flex;flex-direction: column;justify-content: center}.logo-text .lt-main,.lt-main{font-family: var(--font-display);font-weight: 500;font-size: 29px;letter-spacing: .14em;line-height: 1;padding-left: .14em;color: var(--brand)}.logo-text .lt-sub,.lt-sub{font-weight: 500;font-size: 9.5px;letter-spacing: .26em;color: var(--sub);text-transform: uppercase;white-space: nowrap;padding-left: .2em}[data-logo="text"] .logo-mark{display: none}[data-logo="mark"] .logo-text{display: none}.nav{display: flex;align-items: center;gap: 26px;font-weight: 600;font-size: 12.5px;letter-spacing: .08em}.nav > a{color: var(--sub);transition: color .15s;white-space: nowrap}.nav > a:hover,.nav > a.active{color: var(--ink)}.nav .sep{width: 1px;height: 18px;background: var(--line)}.nav .nav-reserve{color: var(--gold);letter-spacing: .12em}.nav .nav-reserve:hover{color: var(--gold);opacity: .75}.nav-item{position: relative}.nav-item > a{color: var(--sub);transition: color .15s;white-space: nowrap}.nav-item > a:hover,.nav-item > a.active{color: var(--ink)}.nav-sub{position: absolute;top: 100%;left: 50%;transform: translateX(-50%);padding-top: 13px;display: none;z-index: 60}.nav-item:hover .nav-sub,.nav-item:focus-within .nav-sub{display: block;animation: navSubIn .18s ease-out both}@keyframes navSubIn{from{opacity: 0;transform: translateX(-50%) translateY(-5px)}to{opacity: 1;transform: translateX(-50%) translateY(0)}}.nav-sub-inner{position: relative;display: block;background-color: rgba(255,252,246,.93);-webkit-backdrop-filter: blur(14px) saturate(1.4);backdrop-filter: blur(14px) saturate(1.4);border: 1px solid var(--line);border-radius: var(--rs);padding: 5px 0;box-shadow: 0 2px 6px rgba(90,74,44,.06),0 18px 40px rgba(90,74,44,.16);min-width: 186px}.nav-sub-inner::before{content: "";position: absolute;top: -6px;left: 50%;margin-left: -6px;width: 11px;height: 11px;background: inherit;border-left: 1px solid var(--line);border-top: 1px solid var(--line);transform: rotate(45deg);border-radius: 2px 0 0 0}.nav-sub a{position: relative;display: block;padding: 11px 22px;font-size: 12.5px;font-weight: 500;letter-spacing: .07em;color: var(--ink);white-space: nowrap;transition: color .15s,background .15s}.nav-sub a + a{border-top: 1px solid var(--line)}.nav-sub a:hover,.nav-sub a.active{color: var(--gold);background: var(--tint-gold)}.mobile-menu nav .mm-sub{font-size: 13.5px;padding-left: 16px;color: var(--sub)}.hamburger{display: none;width: 44px;height: 44px;border: 1px solid var(--line);background: var(--card);border-radius: var(--rs);cursor: pointer;align-items: center;justify-content: center}.hamburger span{display: block;width: 20px;height: 1.5px;background: var(--ink);position: relative}.hamburger span::before,.hamburger span::after{content: "";position: absolute;left: 0;width: 20px;height: 1.5px;background: var(--ink)}.hamburger span::before{top: -6px}.hamburger span::after{top: 6px}.mobile-menu{position: fixed;top: 0;left: 0;right: 0;z-index: 60;background: var(--bg);bottom: 0;overflow-y: auto;-webkit-overflow-scrolling: touch;width: 62%;max-width: 268px;left: auto;border-left: 1px solid var(--line);box-shadow: 0 14px 40px rgba(60,52,36,.16);border-bottom: 1px solid var(--line);display: flex;flex-direction: column;padding: 20px var(--pad) 26px;transform: translateY(-100%);transition: transform .32s cubic-bezier(.4,.8,.3,1);visibility: hidden}.mobile-menu.open{transform: translateY(0);visibility: visible}.mobile-menu .mm-top{display: flex;align-items: center;justify-content: flex-end;margin-bottom: 18px}.mobile-menu .mm-top .logo,.mobile-menu .mm-top .site-logo,.mobile-menu .mm-top a{display: none}.mm-close{width: 44px;height: 44px;border: 1px solid var(--line);background: var(--card);border-radius: var(--rs);font-size: 22px;cursor: pointer;color: var(--ink)}.mobile-menu nav{display: flex;flex-direction: column}.mobile-menu nav a{font-family: var(--font-display);font-size: 16px;letter-spacing: .06em;padding: 11px 0;border-bottom: 1px solid var(--line)}.mobile-menu .btn{margin-top: 22px}.section{padding: 84px 0}.panel{background: #ffffff;border-top: 1px solid var(--line);border-bottom: 1px solid var(--line)}.band-line{border-top: 1px solid var(--line);border-bottom: 1px solid var(--line)}.hero{padding: 64px 0 76px;position: relative}.hero-watermark{position: absolute;top: 36px;right: var(--pad);color: var(--gold);opacity: .42;pointer-events: none}.hero-meta{font-weight: 600;font-size: 11px;letter-spacing: .32em;color: var(--gold);margin-bottom: 30px;text-transform: uppercase}.hero h1{font-size: 62px;line-height: 1.42;margin: 0;letter-spacing: .06em;max-width: 760px}.hero-grid{display: grid;grid-template-columns: 1.4fr 1fr;gap: 48px;margin-top: 50px;align-items: end}.hero-img{min-height: 400px}.hero-side p{color: var(--sub);font-size: 15px;line-height: 2.25;margin: 0 0 30px;letter-spacing: .02em}.hero-side .btn{width: 100%;margin-bottom: 12px}.page-hero{padding: 18px 0 8px;text-align: center}.breadcrumb{font-size: 12px;color: var(--sub);letter-spacing: .06em;text-align: left}.breadcrumb a:hover{color: var(--gold)}.page-hero h1{font-size: 44px;line-height: 1.4;margin: 34px 0 0;letter-spacing: .06em}.page-hero + .section,.page-hero + section.section{padding-top: 46px}.page-hero p{color: var(--sub);max-width: 600px;margin: 20px auto 0;line-height: 2.1}.page-hero-actions{display: flex;gap: 14px;justify-content: center;flex-wrap: wrap;margin-top: 30px}.course-toplink{display: flex;justify-content: flex-end;margin-bottom: 26px}@media (max-width: 600px){.course-toplink{justify-content: stretch}.course-toplink .btn{width: 100%}}.sec-head-row{display: flex;justify-content: space-between;align-items: flex-end;gap: 30px;margin-bottom: 46px}.sec-head-row .sec-note{color: var(--sub);font-size: 13.5px;line-height: 1.95;max-width: 320px;text-align: right}.course-index{display: grid;grid-template-columns: 1fr 1fr;column-gap: 64px}.ci-row{display: flex;align-items: baseline;gap: 22px;padding: 21px 0;border-top: 1px solid var(--line);transition: padding-left .2s}.ci-row:hover{padding-left: 8px}.course-index .ci-row:nth-last-child(-n+2){border-bottom: 1px solid var(--line)}.ci-n{font-family: var(--font-display);font-size: 22px;color: var(--gold);width: 34px;flex-shrink: 0}.ci-main{flex: 1}.ci-line{display: flex;align-items: baseline;justify-content: space-between;gap: 14px}.ci-name{font-family: var(--font-display);font-size: 18px;letter-spacing: .04em}.ci-lat{font-weight: 500;font-size: 10px;letter-spacing: .22em;color: var(--sub);text-transform: uppercase;white-space: nowrap}.ci-desc{font-size: 12.5px;line-height: 1.55;color: var(--sub);margin-top: 7px}.link-line{font-weight: 600;font-size: 12.5px;letter-spacing: .12em;color: var(--gold);border-bottom: 1px solid var(--gold);padding-bottom: 6px}.course-flyers{display: grid;grid-template-columns: repeat(2,1fr);gap: 52px 46px}.cf-card{display: flex;flex-direction: column}.cf-imgwrap{position: relative;overflow: hidden;border: 1px solid var(--line);border-radius: var(--rs);background: #faf6ec}.cf-img{display: block;aspect-ratio: 1601 / 982;width: 100%;height: auto;object-fit: cover;transition: transform .5s cubic-bezier(.2,.8,.25,1)}.cf-card:hover .cf-img{transform: scale(1.045)}.cf-img.full{aspect-ratio: auto;object-fit: contain;background: #faf6ec}.cf-badge{position: absolute;top: 12px;left: 12px;font-weight: 600;font-size: 10.5px;letter-spacing: .14em;color: var(--card);background: var(--deep);padding: 6px 11px;border-radius: var(--rs)}.cf-body{padding: 18px 2px 0;display: flex;flex-direction: column;flex: 1}.cf-lat{font-weight: 600;font-size: 9.5px;letter-spacing: .24em;text-transform: uppercase;color: var(--gold);margin-bottom: 9px}.cf-title{font-family: var(--font-display);font-size: 21px;line-height: 1.5;letter-spacing: .03em;margin: 0 0 13px;color: var(--ink)}.cf-tag{display: inline-block;font-family: var(--font-body);font-weight: 600;font-size: 10px;letter-spacing: .12em;color: var(--card);background: var(--deep);padding: 2px 8px;border-radius: var(--rs);margin-left: 7px;vertical-align: middle}.cf-when{border-top: 1px solid var(--line);padding-top: 12px;margin-bottom: 12px}.cf-date{display: block;font-weight: 600;font-size: 14.5px;letter-spacing: .02em;color: var(--ink)}.cf-time{display: block;font-size: 13.5px;color: var(--sub);margin-top: 4px}.cf-status{font-size: 13px;font-weight: 600;color: var(--gold);margin: 0 0 11px;letter-spacing: .02em;line-height: 1.6}.cf-desc{font-size: 13.5px;line-height: 1.95;color: var(--sub);margin: 0;text-wrap: pretty}@media (max-width: 760px){.course-flyers{grid-template-columns: 1fr}}@media (max-width: 560px){.course-flyers{grid-template-columns: 1fr;gap: 36px}}.course-cards{display: grid;grid-template-columns: repeat(2,1fr);gap: 28px}.course-card{background: var(--bg);border: 1px solid var(--line);border-radius: var(--rc);padding: 30px;display: flex;gap: 22px;align-items: flex-start}.course-card .cc-num{font-family: var(--font-display);font-size: 30px;color: var(--gold);line-height: 1;flex-shrink: 0}.course-card h3{font-size: 20px;margin: 0 0 4px;letter-spacing: .04em}.course-card .cc-lat{font-weight: 600;font-size: 10px;letter-spacing: .2em;color: var(--gold);text-transform: uppercase}.course-card .cc-meta{font-size: 12px;color: var(--sub);margin: 10px 0;padding: 7px 0;border-top: 1px solid var(--line);border-bottom: 1px solid var(--line)}.course-card p{font-size: 13px;line-height: 1.9;color: var(--sub);margin: 12px 0 0}.band-deep{background: var(--deep);color: var(--on-deep);padding: 88px 0}.band-deep .idx-l{color: var(--on-deep-sub)}.band-deep .idx-n,.band-deep .idx-rule{color: #d8b56e;background: transparent}.band-deep .idx-rule{background: #d8b56e}.reading-grid{display: grid;grid-template-columns: 1fr 1.15fr;gap: 64px;align-items: center}.reading-copy h2{font-size: 38px;line-height: 1.5;margin: 22px 0 24px;letter-spacing: .05em;color: var(--on-deep)}.reading-copy p{color: var(--on-deep-sub);font-size: 14.5px;line-height: 2.2;margin: 0 0 34px}.readers{display: grid;grid-template-columns: repeat(3,1fr);gap: 22px}.reader{border-top: 1px solid rgba(216,181,110,.4);padding-top: 18px}.reader .ph{height: 150px;margin-bottom: 16px}.reader .rn{font-family: var(--font-display);font-size: 16px;color: var(--on-deep);letter-spacing: .05em}.reader .rtag{font-weight: 600;font-size: 9px;letter-spacing: .2em;color: #d8b56e;margin: 8px 0 10px}.reader p{font-size: 11.5px;line-height: 1.7;color: var(--on-deep-sub);margin: 0}.reader-grid{display: grid;grid-template-columns: repeat(3,1fr);gap: 28px}.reader-grid-2{grid-template-columns: repeat(2,1fr)}.reader-card{background: var(--card);border: 1px solid var(--line);border-radius: var(--rc);overflow: hidden}.reader-card .ph{height: 250px;border-radius: 0;border: none;border-bottom: 1px solid var(--line)}.reader-card .rc-body{padding: 26px 26px 30px}.reader-card h3{font-size: 22px;margin: 0 0 6px;letter-spacing: .05em}.reader-card .rc-tag{font-weight: 600;font-size: 10px;letter-spacing: .2em;color: var(--gold);text-transform: uppercase;margin-bottom: 16px}.reader-card p{color: var(--sub);font-size: 13px;line-height: 1.95;margin: 0}.price-grid{display: grid;grid-template-columns: repeat(3,1fr);gap: 0;border: 1px solid var(--line)}.price-card{padding: 38px 34px;border-right: 1px solid var(--line);position: relative;background: var(--card)}.price-card:last-child{border-right: none}.price-card.featured{background: var(--bg)}.price-tag{display: inline-block;font-weight: 600;font-size: 10px;letter-spacing: .16em;color: var(--gold);border: 1px solid var(--gold);padding: 5px 11px;margin-bottom: 16px;text-transform: uppercase}.price-card h3{font-size: 22px;margin: 0 0 6px;letter-spacing: .05em}.price-card .pc-sub{color: var(--sub);font-size: 12.5px;margin-bottom: 24px}.price-amt{font-family: var(--font-display);color: var(--ink);display: flex;align-items: baseline;gap: 4px;margin-bottom: 24px;padding-bottom: 24px;border-bottom: 1px solid var(--line)}.price-amt .yen{font-size: 44px;letter-spacing: .02em}.price-amt .unit{font-size: 13px;color: var(--sub)}.price-list{list-style: none;margin: 0;padding: 0}.price-list li{padding: 10px 0;font-size: 13px;color: var(--sub);display: flex;gap: 10px}.price-list li::before{content: "—";color: var(--gold)}.campaign-grid{display: grid;grid-template-columns: 1fr 1fr;gap: 40px}.campaign-card{display: flex;flex-direction: column}.campaign-card .cmp-img{display: block;aspect-ratio: 1601 / 982;width: 100%;height: auto;object-fit: cover;border: 1px solid var(--line);border-radius: var(--rs);background: #faf6ec;transition: opacity .2s}.campaign-card:hover .cmp-img{opacity: .92}.cmp-body{padding: 22px 4px 0}.cmp-title{font-family: var(--font-display);font-size: 21px;line-height: 1.5;letter-spacing: .03em;margin: 0 0 12px;color: var(--ink)}.cmp-desc{font-size: 13.5px;line-height: 1.95;color: var(--sub);margin: 0 0 16px}.cmp-cta{display: inline-flex;align-items: center;gap: 6px;font-weight: 600;font-size: 13px;letter-spacing: .08em;color: var(--gold);border-bottom: 1px solid var(--gold);padding-bottom: 5px}.cmp-note{font-size: 11.5px;line-height: 1.7;color: var(--sub);margin: 14px 0 0}@media (max-width: 760px){.campaign-grid{grid-template-columns: 1fr;gap: 44px}}.news-grid{display: grid;grid-template-columns: repeat(3,1fr);gap: 40px}.news-card{display: block}.news-card .ph{aspect-ratio: 900 / 552;height: auto;margin-bottom: 18px}.nc-meta{display: flex;align-items: center;gap: 12px;margin-bottom: 12px}.nc-date{font-weight: 500;font-size: 10.5px;letter-spacing: .14em;color: var(--sub)}.nc-cat{font-weight: 600;font-size: 9.5px;letter-spacing: .16em;color: var(--gold);border: 1px solid var(--gold);padding: 4px 8px;text-transform: uppercase}.news-card p{font-family: var(--font-display);font-size: 15px;line-height: 1.7;color: var(--ink);margin: 0;letter-spacing: .02em;transition: color .15s}.news-card:hover p{color: var(--gold)}.info-grid{display: grid;grid-template-columns: 1fr 1.1fr;gap: 60px;align-items: center}.info-list{margin: 0}.info-list .row{display: flex;gap: 24px;padding: 15px 0;border-bottom: 1px solid var(--line)}.info-list dt{width: 96px;flex-shrink: 0;font-weight: 600;font-size: 10px;letter-spacing: .2em;color: var(--ink);padding-top: 5px;text-transform: uppercase}.info-list dd{margin: 0;flex: 1;color: var(--sub);font-size: 14px;line-height: 1.8}.map{min-height: 320px}.steps-cols{display: grid;grid-template-columns: repeat(3,1fr);gap: 36px}.step{}.step .num{font-family: var(--font-display);font-size: 28px;color: var(--gold)}.step h3{font-size: 17px;margin: 12px 0 8px;letter-spacing: .04em}.step p{font-size: 13px;line-height: 1.9;color: var(--sub);margin: 0}.step.bordered{border-top: 1px solid var(--line);padding-top: 20px}.cta{text-align: center;padding: 80px 0}.cta .logo-mark{display: inline-flex;margin: 0 auto 16px}.hero-watermark .mark-img,.footer-brand .logo-mark .mark-img{opacity: 1}.cta h2{font-size: 34px;line-height: 1.5;margin: 0 0 16px;letter-spacing: .05em}.cta p{color: var(--sub);max-width: 520px;margin: 0 auto 30px;line-height: 2}.cta-actions{display: flex;gap: 14px;justify-content: center;flex-wrap: wrap}.site-footer{background: #4a4034;color: #e4dbc9;padding: 64px 0 40px;border-top: 2px solid var(--gold)}.site-footer p,.site-footer a,.site-footer li,.site-footer span{color: #e4dbc9}.site-footer h4{color: #e3c47f}.site-footer a:hover{color: #f0d9a6}.footer-top{display: flex;justify-content: space-between;align-items: flex-start;flex-wrap: wrap;gap: 40px}.footer-brand{max-width: 270px;flex: none}.footer-brand .logo{margin-bottom: 18px}.footer-brand .logo-mark{color: #e3c47f}.footer-brand .lt-main{color: var(--brand)}.footer-brand .lt-sub{color: rgba(228,219,201,.8)}.footer-brand .lt-sub{font-size: 9px;letter-spacing: .18em}.footer-brand p{color: rgba(228,219,201,.85);font-size: 12px;line-height: 1.95;margin: 0;letter-spacing: .03em}.footer-cols{display: flex;gap: 22px;flex-wrap: wrap;flex: 0 1 auto;min-width: 0}.footer-map{flex: 1 1 380px;max-width: 540px;min-width: 0;order: 0}.footer-map h4{font-weight: 600;font-size: 10px;letter-spacing: .22em;color: #e3c47f;margin: 0 0 16px}.footer-map .fm-frame{line-height: 0}.footer-map iframe{width: 100%;height: 330px;border: 0;display: block;filter: saturate(.88) brightness(.97)}.footer-map .fm-cap{display: block;font-size: 11.5px;line-height: 1.85;color: rgba(228,219,201,.8);margin-top: 10px;letter-spacing: .03em}.footer-map .fm-cap a{color: #e3c47f}.fm-rating{display: flex;align-items: baseline;gap: 9px;margin-top: 12px;text-decoration: none}.fm-rating .fr-num{font-family: var(--font-display);font-size: 20px;color: #f0e8d8;line-height: 1}.fm-rating .fr-stars{color: #e0a93c;font-size: 14px;letter-spacing: .06em;line-height: 1}.fm-rating .fr-cnt{font-size: 11.5px;color: rgba(228,219,201,.72);letter-spacing: .03em}.fm-rating:hover .fr-cnt{color: #e3c47f}html[data-band="light"] .footer-map h4{color: var(--gold)}html[data-band="light"] .footer-map .fm-cap{color: var(--sub)}.footer-col h4{font-weight: 600;font-size: 10px;letter-spacing: .22em;color: #e3c47f;margin: 0 0 16px}.footer-col a{display: block;color: rgba(228,219,201,.92);font-size: 12.5px;margin-bottom: 13px;letter-spacing: .03em;transition: color .15s}.footer-col a:hover{color: #f0d9a6}.footer-bottom{margin-top: 40px;padding-top: 22px;border-top: 1px solid rgba(228,219,201,.2);font-size: 10.5px;color: rgba(228,219,201,.7);letter-spacing: .12em;text-transform: uppercase}.hero-slides{position: relative;min-height: 400px;border-radius: var(--rs);overflow: hidden;border: 1px solid var(--line);background: #1c160e}.hero-slide{position: absolute;inset: 0;background-size: cover;background-position: center;opacity: 0;transition: opacity 1.1s ease}.hero-slide.active{opacity: 1}.hero-dots{position: absolute;left: 0;right: 0;bottom: 14px;display: flex;gap: 8px;justify-content: center;z-index: 2}.hero-dots button{width: 7px;height: 7px;border-radius: 999px;border: none;padding: 0;cursor: pointer;background: rgba(255,255,255,.45);transition: background .2s,transform .2s}.hero-dots button.on{background: #f3e6c8;transform: scale(1.25)}html[data-band="light"] .band-deep{background: var(--tint-gold);color: var(--ink)}html[data-band="light"] .band-deep .reading-copy h2{color: var(--ink)}html[data-band="light"] .band-deep .reading-copy p{color: var(--sub)}html[data-band="light"] .band-deep .idx-l{color: var(--sub)}html[data-band="light"] .band-deep .idx-n{color: var(--gold)}html[data-band="light"] .band-deep .idx-rule{background: var(--gold)}html[data-band="light"] .band-deep .reader{border-top-color: var(--gold)}html[data-band="light"] .band-deep .reader .rn{color: var(--ink)}html[data-band="light"] .band-deep .reader .rtag{color: var(--gold)}html[data-band="light"] .band-deep .reader p{color: var(--sub)}html[data-band="light"] .ph-deep{background: #e4d8bf;background-image: repeating-linear-gradient(135deg,rgba(150,128,90,.22) 0 2px,transparent 2px 13px);border: 1px solid var(--line)}html[data-band="light"] .ph-deep > span{color: #897a5e;background: rgba(250,246,236,.8);border-color: rgba(137,122,94,.3)}html[data-band="light"] .site-footer{background: var(--tint-gold);color: #4a4234;border-top: 1px solid var(--line)}html[data-band="light"] .site-footer p,html[data-band="light"] .site-footer a,html[data-band="light"] .site-footer li,html[data-band="light"] .site-footer span{color: #4a4234}html[data-band="light"] .site-footer a:hover{color: var(--gold)}html[data-band="light"] .site-footer .footer-brand .logo-mark{color: var(--gold)}html[data-band="light"] .site-footer .footer-brand .lt-main{color: var(--brand)}html[data-band="light"] .site-footer .footer-brand .lt-sub{color: var(--sub)}html[data-band="light"] .site-footer .footer-brand p{color: #4a4234}html[data-band="light"] .footer-col h4{color: var(--gold)}html[data-band="light"] .footer-col a{color: #4a4234}html[data-band="light"] .footer-col a:hover{color: var(--ink)}html[data-band="light"] .footer-bottom{border-top-color: var(--line);color: var(--sub)}.schedule-head{display: flex;justify-content: space-between;align-items: flex-end;gap: 30px;margin-bottom: 30px}.schedule-note{color: var(--sub);font-size: 13px;line-height: 1.9;margin: 14px 0 0}.schedule-note b{font-family: var(--font-display);font-weight: 500;color: var(--ink)}.cal-wrap{border: 1px solid var(--line);background: var(--card);padding: 14px}.cal-frame{width: 100%;height: 620px;border: 0;display: block;background: #fff}.cal-ph{width: 100%;height: 620px;display: flex;flex-direction: column;align-items: center;justify-content: center;gap: 14px;background: repeating-linear-gradient(135deg,rgba(150,128,90,.08) 0 2px,transparent 2px 14px);text-align: center;padding: 0 24px}.cal-ph .cal-ph-mark{color: var(--gold)}.cal-ph p{font-size: 13px;color: var(--sub);line-height: 1.9;margin: 0;max-width: 420px}.cal-ph .cal-ph-title{font-family: var(--font-display);font-size: 19px;color: var(--ink);letter-spacing: .04em}.schedule-foot{display: flex;align-items: center;justify-content: center;gap: 20px;margin-top: 30px;flex-wrap: wrap}.schedule-foot .tel{font-size: 13.5px;color: var(--sub)}.schedule-foot .tel b{font-family: var(--font-display);color: var(--gold);font-size: 17px;letter-spacing: .04em}@media (max-width: 600px){.cal-frame,.cal-ph{height: 520px}.schedule-head{flex-direction: column;align-items: flex-start}}.tcal-top{display: flex;align-items: center;justify-content: space-between;gap: 20px;padding: 6px 6px 18px;flex-wrap: wrap}.tcal-month{font-family: var(--font-display);font-size: 24px;letter-spacing: .06em;color: var(--ink);min-width: 150px;text-align: center}.tcal-month span{color: var(--gold)}.tcal-nav{display: flex;align-items: center;gap: 10px}.tcal-arw{width: 38px;height: 38px;border: 1px solid var(--line);background: var(--bg);color: var(--ink);font-size: 20px;line-height: 1;cursor: pointer;border-radius: var(--rs);transition: background .15s,color .15s}.tcal-arw:hover{background: var(--ink);color: var(--card)}.tcal-empty{padding: 48px 20px;text-align: center;color: var(--sub);font-size: 13.5px;line-height: 1.9}.about-narrow{max-width: 720px;margin: 0 auto}.about-lockup{display: flex;flex-direction: column;align-items: center;gap: 24px;margin-bottom: 54px;color: var(--brand)}.about-word{width: 240px;height: auto}.about-head{display: flex;align-items: center;justify-content: center;gap: 22px;margin-bottom: 32px}.about-head h2{font-family: var(--font-display);font-weight: 500;font-size: 25px;letter-spacing: .08em;margin: 0;white-space: nowrap}.about-head .rule{height: 1px;background: var(--gold);flex: 1;max-width: 110px;opacity: .6}.about-p{color: var(--sub);font-size: 14.5px;line-height: 2.15;margin: 0 0 20px;letter-spacing: .02em}.about-p b{font-weight: 600;color: var(--ink)}@media (max-width: 600px){.about-word{width: 184px}.about-head h2{font-size: 19px}.about-head .rule{max-width: 40px}.about-lockup{gap: 18px;margin-bottom: 40px}}.policy-grid{display: grid;grid-template-columns: repeat(2,1fr);gap: 0;border-top: 1px solid var(--line);border-left: 1px solid var(--line)}.policy-item{padding: 34px 36px 38px;border-right: 1px solid var(--line);border-bottom: 1px solid var(--line)}.policy-n{font-family: var(--font-display);font-size: 22px;color: var(--gold);margin-bottom: 14px}.policy-item h3{font-size: 20px;letter-spacing: .04em;margin: 0 0 12px}.policy-item p{color: var(--sub);font-size: 13.5px;line-height: 2;margin: 0}@media (max-width: 700px){.policy-grid{grid-template-columns: 1fr}}.tcal-legend{display: flex;gap: 20px;font-size: 12.5px;color: var(--sub)}.tcal-legend .lg{display: inline-flex;align-items: center;gap: 7px}.dot{width: 8px;height: 8px;border-radius: 999px;display: inline-block}.dot-rose{background: #d9708f}.dot-mil{background: #e8b923}.tcal-scroll{overflow-x: auto}.tcal-grid{display: grid;grid-template-columns: repeat(7,1fr);border-top: 1px solid var(--line);border-left: 1px solid var(--line);min-width: 720px}.tcal-wd{text-align: center;font-weight: 600;font-size: 11px;letter-spacing: .14em;padding: 11px 0;border-right: 1px solid var(--line);border-bottom: 1px solid var(--line);color: var(--sub);background: var(--bg)}.tcal-wd.sat{color: #5f7a8a}.tcal-wd.sun{color: #a8625a}.tcal-day{min-height: 120px;padding: 9px 9px 12px;border-right: 1px solid var(--line);border-bottom: 1px solid var(--line);background: var(--card)}.tcal-day.dim{background: var(--bg)}.tcal-day .d{font-family: var(--font-display);font-size: 15px;color: var(--ink);margin-bottom: 7px}.tcal-day.dim .d{color: #b7ad97}.tcal-day.sat .d{color: #5f7a8a}.tcal-day.sun .d{color: #a8625a}.tcal-ev{display: flex;align-items: center;gap: 6px;font-size: 11px;color: var(--sub);line-height: 1.6;margin-top: 3px}.tcal-ev .dot{flex-shrink: 0}.tcal-foot{font-size: 12px;color: var(--sub);line-height: 1.8;margin: 16px 2px 0}@media (max-width: 600px){.cal-wrap{padding: 10px}}.tcal-list{display: none}.tcal-li{display: flex;gap: 14px;padding: 14px 4px;border-bottom: 1px solid var(--line)}.tcal-li:first-child{border-top: 1px solid var(--line)}.tcal-li .tdate{flex-shrink: 0;width: 64px}.tcal-li .tdate .dn{font-family: var(--font-display);font-size: 20px;color: var(--ink);line-height: 1}.tcal-li .tdate .dw{font-size: 11px;color: var(--sub);margin-top: 4px}.tcal-li.sat .tdate .dn{color: #5f7a8a}.tcal-li.sun .tdate .dn{color: #a8625a}.tcal-li .tslots{display: flex;flex-direction: column;gap: 6px}.tcal-li .slot{display: inline-flex;align-items: center;gap: 8px;font-size: 13px;color: var(--ink)}.tcal-li .slot .dot{flex-shrink: 0}.tcal-li .slot .sn{color: var(--sub)}.tcal-detail{display: none}.tcal-hint{padding: 16px 4px 2px;color: var(--sub);font-size: 12.5px;line-height: 1.7}.tcal-ev.bookable{cursor: pointer}.tcal-ev.bookable:hover .evtxt{color: var(--gold);text-decoration: underline;text-underline-offset: 2px}.slot.bookable{cursor: pointer;border: 1px solid var(--line);border-radius: var(--rs);padding: 9px 12px;transition: background .15s,border-color .15s}.slot.bookable:hover{border-color: var(--gold);background: var(--tint-gold)}.slot.bookable .arr{margin-left: auto;color: var(--gold);font-size: 12px}.book-modal{position: fixed;inset: 0;z-index: 80;display: flex;align-items: center;justify-content: center;padding: 24px}.book-modal[hidden]{display: none}.book-backdrop{position: absolute;inset: 0;background: rgba(30,24,16,.55)}.book-card{position: relative;background: var(--card);border: 1px solid var(--line);max-width: 440px;width: 100%;padding: 40px 38px 34px;box-shadow: 0 30px 70px rgba(0,0,0,.3);animation: bookIn .25s cubic-bezier(.2,.7,.3,1)}@keyframes bookIn{from{opacity: 0;transform: translateY(14px)}to{opacity: 1;transform: none}}.book-x{position: absolute;top: 14px;right: 16px;width: 36px;height: 36px;border: none;background: transparent;font-size: 24px;color: var(--sub);cursor: pointer;line-height: 1}.book-x:hover{color: var(--ink)}.book-eyebrow{font-weight: 600;font-size: 11px;letter-spacing: .22em;text-transform: uppercase;color: var(--gold)}.book-when{font-family: var(--font-display);font-size: 30px;letter-spacing: .04em;color: var(--ink);margin: 12px 0 10px}.book-who{display: flex;align-items: center;gap: 9px;font-size: 14px;color: var(--ink);padding-bottom: 18px;border-bottom: 1px solid var(--line)}.book-note{font-size: 12.5px;color: var(--sub);line-height: 1.9;margin: 18px 0 22px}.book-actions{display: flex;flex-direction: column;gap: 10px}.book-actions .btn{width: 100%}.book-form-link{display: block;text-align: center;margin-top: 20px;font-size: 12.5px;color: var(--sub);letter-spacing: .04em}.book-form-link:hover{color: var(--gold)}@media (max-width: 600px){.tcal-grid{min-width: 0}.tcal-wd{font-size: 10px;letter-spacing: .04em;padding: 8px 0}.tcal-day{min-height: 52px;padding: 5px 4px 7px}.tcal-day .d{font-size: 12px;margin-bottom: 4px}.tcal-day.has-ev{cursor: pointer;-webkit-tap-highlight-color: transparent}.tcal-day.has-ev:active{background: var(--tint-gold)}.tcal-day.sel{background: var(--tint-gold);box-shadow: inset 0 0 0 2px var(--gold)}.tcal-ev{display: inline-flex;margin: 0 2px 2px 0}.tcal-ev .evtxt{display: none}.tcal-ev .dot{width: 7px;height: 7px}.tcal-detail{display: block;margin-top: 16px}.tcal-detail .tcal-li{border-top: 1px solid var(--line)}.tcal-top{padding-bottom: 12px}}.reveal{opacity: 0;transform: translateY(22px);transition: opacity .7s ease,transform .7s cubic-bezier(.2,.7,.3,1)}.reveal.in{opacity: 1;transform: none}@media (max-width: 980px){:root{--pad: 40px}.hero h1{font-size: 50px}.hero-grid{grid-template-columns: 1fr;gap: 36px}.hero-img{min-height: 300px;order: -1}.reading-grid{grid-template-columns: 1fr;gap: 40px}.course-index{grid-template-columns: 1fr;column-gap: 0}.course-index .ci-row:nth-last-child(2){border-bottom: none}.course-cards,.reader-grid,.reader-grid-2{grid-template-columns: 1fr}.info-grid{grid-template-columns: 1fr;gap: 36px}.price-grid{grid-template-columns: 1fr}.price-card{border-right: none;border-bottom: 1px solid var(--line)}.price-card:last-child{border-bottom: none}}@media (max-width: 1079px){.nav{display: none}.hamburger{display: flex}}@media (max-width: 600px){:root{--pad: 22px}.section,.band-deep{padding: 60px 0}.hero{padding: 44px 0 56px}.hero h1{font-size: 36px;line-height: 1.5}.hero-watermark{display: none}.sec-title{font-size: 30px}.page-hero h1{font-size: 33px}.page-hero h1.oneline-m{white-space: nowrap;font-size: min(33px,7.3vw);letter-spacing: .04em}.sec-head-row{flex-direction: column;align-items: flex-start}.sec-head-row .sec-note{text-align: justify}.sec-head-row .sec-note br{display: none}.readers,.news-grid,.steps-cols{grid-template-columns: 1fr;gap: 30px}.footer-top{flex-wrap: wrap}.footer-cols{gap: 36px}.footer-map{width: 100%;max-width: 420px}}.hero-immersive{position: relative;min-height: 78vh;max-height: 820px;display: flex;align-items: flex-end;overflow: hidden}.hero-immersive .hero-bgs{position: absolute;inset: 0;z-index: 0}.hero-immersive .hero-bg{position: absolute;inset: 0;background-size: cover;background-position: center 28%;opacity: 0;transition: opacity 1.4s ease}.hero-immersive .hero-bg.active{opacity: 1}.hero-immersive .hi-overlay{position: absolute;inset: 0;z-index: 1;background: linear-gradient(180deg,rgba(250,246,236,.04) 0%,rgba(250,246,236,.10) 42%,rgba(248,242,230,.72) 100%);pointer-events: none}.hero-immersive .hi-inner{position: relative;z-index: 2;width: 100%;padding-top: 178px;padding-bottom: 88px}.heroim-dots{position: absolute;left: 0;right: 0;bottom: 26px;z-index: 3;display: flex;gap: 9px;justify-content: center}.heroim-dots button{width: 8px;height: 8px;border-radius: 999px;border: none;padding: 0;cursor: pointer;background: rgba(60,52,36,.26);transition: background .2s,transform .2s}.heroim-dots button.on{background: var(--gold);transform: scale(1.25)}.hero-immersive .hero-bg.has-sp{background-position: center}.hero-immersive .hero-bg.has-sp::after{content: "";position: absolute;inset: 0;pointer-events: none;background: linear-gradient(90deg,rgba(250,246,236,.55) 0%,rgba(250,246,236,.55) 46%,rgba(250,246,236,0) 68%)}@media (max-width: 760px){.hero-immersive .hero-bg.has-sp{background-image: var(--bg-sp) !important}.hero-immersive .hero-bg.has-sp::after{background: rgba(250,246,236,.5)}}.hi-eyebrow{font-weight: 600;font-size: 11.5px;letter-spacing: .2em;color: #2e2818;margin-bottom: 26px;text-shadow: 0 0 14px rgba(250,246,236,.95),0 0 28px rgba(250,246,236,.85),0 1px 2px rgba(250,246,236,.9)}.hi-title{font-family: var(--font-display);font-weight: 500;font-size: 56px;line-height: 1.3;letter-spacing: .07em;margin: 0;color: var(--ink);text-shadow: 0 1px 24px rgba(250,246,236,.6)}.hi-title .t1{display: block;font-size: 44px}.hi-lead{font-size: 15.5px;line-height: 2.15;max-width: 470px;margin: 28px 0 34px;letter-spacing: .03em;color: #514a3b}.hi-actions{display: flex;gap: 14px;flex-wrap: wrap}.hi-watermark{position: absolute;top: 128px;right: var(--pad);opacity: .42;z-index: 2;pointer-events: none}@media (max-width: 760px){.hero-immersive{min-height: 78vh;max-height: none;background-position: center 30%}.hero-immersive .hi-inner{padding-top: 146px;padding-bottom: 56px}.hi-title{font-size: 34px;line-height: 1.42}.hi-title .t1{font-size: 27px}.hi-lead{font-size: 14.5px}.hi-watermark{display: none}}body[data-home] .site-header{position: fixed;left: 0;right: 0;background: transparent;border-bottom-color: transparent;backdrop-filter: none;-webkit-backdrop-filter: none;transition: background .3s ease,border-color .3s ease}body[data-home] .site-header.scrolled{background: color-mix(in srgb, var(--bg) 88%, transparent);border-bottom: 1px solid var(--line);backdrop-filter: blur(12px) saturate(140%);-webkit-backdrop-filter: blur(12px) saturate(140%)}body[data-home] .hero-immersive::before{content: "";position: absolute;left: 0;right: 0;top: 0;height: 210px;z-index: 1;pointer-events: none;background: linear-gradient(180deg,rgba(250,246,236,.92) 0%,rgba(250,246,236,.62) 45%,rgba(250,246,236,0) 100%)}.dot-kao{background: #b39ddb}.tcal-note{display: inline-block;background: #a45a72;color: #fff;font-size: 10px;letter-spacing: .04em;line-height: 1.4;padding: 2px 6px;border-radius: 2px;margin: 0 0 4px;white-space: nowrap}@media (max-width: 700px){.tcal-note{font-size: 9.5px;padding: 2px 4px;letter-spacing: 0;text-align: center}}.tcal-off{display: inline-block;font-size: 10px;letter-spacing: .06em;line-height: 1.4;color: var(--sub);background: rgba(60,52,36,.06);border-radius: 2px;padding: 2px 6px;margin: 0 0 4px;white-space: nowrap}.btn-navy{background: var(--navy);color: #fbf8f0;border: 1px solid var(--navy)}.btn-navy:hover{background: var(--navy-dark);border-color: var(--navy-dark);color: #fbf8f0}.btn-navy-ghost{background: transparent;color: var(--navy);border: 1px solid var(--navy)}.btn-navy-ghost:hover{background: var(--navy);color: #fbf8f0}.book-fine{font-size: 12px;line-height: 1.85;color: var(--sub);margin: 16px 0 0;text-align: center}.tel-nb{white-space: nowrap !important}#bookTel{gap: 15px}@media (max-width: 600px){#bookTel{flex-direction: column;gap: 2px;padding-left: 14px;padding-right: 14px}}.tcal-drow{display: flex;align-items: center;gap: 7px;flex-wrap: wrap}@media (max-width: 700px){.tcal-today{font-size: 9.5px;padding: 2px 4px;letter-spacing: 0;white-space: nowrap}}.tcal-drow .tcal-note,.tcal-drow .tcal-off{margin: 0}.tcal-today{font-size: 10px;letter-spacing: .08em;color: #fff;background: var(--gold);border-radius: 2px;padding: 2px 6px;line-height: 1.4}.tcal-day.today{background: var(--tint-gold)}.tcal-more{display: inline-block;font-size: 11.5px;color: var(--gold);margin-top: 5px;letter-spacing: .04em;cursor: pointer;border-bottom: 1px solid currentColor}.tcal-ev.extra{display: none}.tcal-day.expanded .tcal-ev.extra{display: flex}.sched-tabs[hidden],.sched-slide[hidden]{display: none}.sched-vp.sched-on{overflow: hidden;margin: 0 calc(var(--pad) * -1);transition: height .35s ease}.sched-on .sched-track{display: flex;align-items: flex-start;transition: transform .35s ease;touch-action: pan-y}.sched-on .sched-slide{flex: 0 0 100%;min-width: 0;padding: 0 var(--pad)}@media (prefers-reduced-motion: reduce){.sched-vp.sched-on,.sched-on .sched-track{transition: none}}.sched-tabs{position: relative;display: inline-grid;grid-template-columns: 1fr 1fr;padding: 4px;border: 1px solid var(--line);border-radius: 999px;background: #fff}.sched-tabs::before{content: "";position: absolute;top: 4px;bottom: 4px;left: 4px;width: calc(50% - 4px);border-radius: 999px;background: var(--gold);transition: transform .35s ease}.sched-tabs[data-idx="1"]::before{transform: translateX(100%)}.sched-tabs button{position: relative;min-height: 44px;min-width: 8.5em;padding: 0 20px;border: 0;border-radius: 999px;background: transparent;color: var(--sub);font-family: var(--font-body);font-size: 14.5px;font-weight: 500;letter-spacing: .06em;cursor: pointer;transition: color .35s ease}.sched-tabs button:hover{color: var(--gold)}.sched-tabs button.on{color: #fff}@media (prefers-reduced-motion: reduce){.sched-tabs::before,.sched-tabs button{transition: none}}.dot-sch{background: var(--gold)}@media (max-width: 600px){.sch-grid{display: none}.sch-grid + .tcal-detail{margin-top: 4px}.sch-list-head{padding-bottom: 4px}}.schedule-note b{font-family: inherit;font-weight: 600}.media-strip{background: linear-gradient(180deg, var(--tint-gold) 0%, var(--card) 100%);border-top: 1px solid var(--gold)}.media-strip .ms-inner{padding: 14px var(--pad) 15px;max-width: 1000px;margin: 0 auto;text-align: center}.media-strip .ms-row{display: flex;align-items: center;justify-content: center;flex-wrap: wrap;gap: 8px 16px}.media-strip .ms-row + .ms-row{margin-top: 10px}.media-strip .ms-badge{font-family: var(--font-display);font-size: 9.5px;letter-spacing: .26em;color: #fff;background: var(--gold);border-radius: 2px;padding: 3px 9px;text-indent: .26em;line-height: 1.4;flex: none}.media-strip .ms-prog{font-family: var(--font-display);font-size: 17px;font-weight: 500;letter-spacing: .05em;color: var(--ink);line-height: 1.6;display: inline-flex;align-items: center}.media-strip .ms-prog small{font-family: var(--font-body);font-size: 10.5px;font-weight: 500;letter-spacing: .1em;color: var(--sub);margin-right: 10px;white-space: nowrap;flex: none}.media-strip .ms-sub{font-size: 11.5px;letter-spacing: .04em;color: var(--sub)}.media-strip .ms-lede{font-family: var(--font-display);font-size: 15px;font-weight: 500;letter-spacing: .1em;color: var(--gold)}.media-strip .ms-txt{font-family: var(--font-display);font-size: 17px;font-weight: 500;letter-spacing: .04em;line-height: 1.45;color: var(--ink)}.media-strip .ms-more{font-size: 12px;letter-spacing: .06em;color: var(--gold);border-bottom: 1px solid currentColor;padding-bottom: 2px;text-decoration: none;white-space: nowrap}.media-strip .ms-more:hover{opacity: .7}@media (max-width: 700px){.media-strip .ms-inner{padding: 13px var(--pad) 14px}.media-strip .ms-prog{font-size: 15px}.media-strip .ms-lede{font-size: 13px}.media-strip .ms-txt{font-size: 14.5px}}.ft-btns{display: flex;flex-wrap: wrap;gap: 12px;justify-content: center}@media (max-width: 700px){.ft-btns{flex-direction: column;align-items: stretch}.ft-btns .btn{text-align: center}}.book-card--form{max-width:560px;text-align:left;max-height:88vh;overflow-y:auto}.qf{margin-top:18px}.qf-pick{background:var(--tint-gold);border-radius:var(--rs);padding:14px 16px;display:grid;gap:10px;margin-bottom:18px}.qf-row{display:grid;grid-template-columns:112px 1fr;gap:12px;align-items:center}.qf-row > span{font-size:12.5px;color:var(--sub);letter-spacing:.04em}.qf-row > span b{display:block;margin-top:3px;width:fit-content}.qf-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.qf-wide{grid-column:1 / -1}.qf label{display:block}.qf label > span{display:block;font-size:12.5px;color:var(--sub);letter-spacing:.04em;margin-bottom:5px}.qf label > span b{font-size:10px;color:#fff;background:var(--gold);border-radius:2px;padding:2px 5px;margin-left:6px;font-weight:400;letter-spacing:.06em}.qf label > span b.opt{color:var(--sub);background:none;border:1px solid var(--line)}.qf input,.qf select,.qf textarea{width:100%;font-family:var(--font-body);font-size:14px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:2px;padding:10px 12px;line-height:1.6}.qf textarea{min-height:132px;resize:vertical}.qf select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--gold) 50%),linear-gradient(135deg,var(--gold) 50%,transparent 50%);background-position:calc(100% - 16px) 50%,calc(100% - 11px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:34px}.qf input:focus,.qf select:focus,.qf textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(168,130,58,.1)}.qf-send{width:100%;margin-top:18px}.book-card--form .book-fine{margin-top:14px}.book-card--form .book-fine a{display:inline-block;margin-top:8px;color:var(--ink);border-bottom:1px solid var(--line)}@media(max-width:600px){.qf-grid{grid-template-columns:1fr}.qf-row{grid-template-columns:1fr;gap:5px}.qf input,.qf select,.qf textarea{font-size:16px}}.qf-sub{border-top:1px solid var(--line);padding-top:16px;margin-top:2px}.qf-subh{font-family:var(--font-display);font-size:14px;font-weight:500;color:var(--ink);margin:0 0 4px}.qf-subh b{font-size:10px;color:#fff;background:var(--gold);border-radius:2px;padding:2px 5px;margin-left:7px;font-weight:400;letter-spacing:.06em}.qf-subn{font-size:12.5px;line-height:1.8;color:var(--sub);margin:0 0 12px}.qf-3{display:grid;gap:11px}.rsv-block[hidden],.qf-sub[hidden]{display:none}.dob{display:grid;grid-template-columns:78px 1fr;gap:10px;align-items:start}.dob .f-err{grid-column:2}.dob-l{font-size:13px;color:var(--sub)}.dob-sel{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:8px;align-items:center}.dob-sel select{width:100%;min-width:0;font-family:var(--font-body);font-size:14.5px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:2px;padding:10px 30px 10px 12px;line-height:1.6;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--gold) 50%),linear-gradient(135deg,var(--gold) 50%,transparent 50%);background-position:calc(100% - 15px) 50%,calc(100% - 10px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.dob-sel select:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(168,130,58,.1)}.dob-sel > span{font-size:13px;color:var(--sub)}.f-err{display:none;font-size:12.5px;line-height:1.7;color:#b3402f;margin-top:6px}.f-err.on{display:block}input.invalid,select.invalid,textarea.invalid{border-color:#c4553f!important;box-shadow:0 0 0 3px rgba(196,85,63,.09)!important}@media(max-width:600px){.dob{grid-template-columns:1fr;gap:5px}.dob .f-err{grid-column:1}.dob-sel select{font-size:16px}}.qt-wrap{display:grid;gap:8px}.qt-chips{display:flex;flex-wrap:wrap;gap:6px}.qt-chips button{font-family:var(--font-body);font-size:12.5px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:999px;padding:6px 12px;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.qt-chips button:hover{border-color:var(--gold);color:var(--gold)}.qt-chips button.on{background:var(--gold);border-color:var(--gold);color:#fff}.qt-hint{font-size:12px;color:var(--sub);margin:0}.f-sum{display:none;font-size:13.5px;line-height:1.8;color:#b3402f;background:rgba(196,85,63,.07);border:1px solid rgba(196,85,63,.28);border-radius:var(--rs);padding:12px 14px;margin:22px 0 0;text-align:center}.f-sum.on{display:block}.fc-steps{display:flex;align-items:center;gap:8px;margin:0 0 16px;font-size:12px;letter-spacing:.08em;color:var(--sub);border-bottom:1px solid var(--line);padding-bottom:12px}.fc-steps span.on{color:var(--gold);font-weight:600}.fc-steps span.arw{color:var(--line)}.fc-row{display:grid;grid-template-columns:120px 1fr;gap:12px;padding:12px 2px;border-bottom:1px solid var(--line);min-width:0}.fc-row > span{font-size:12.5px;color:var(--sub);letter-spacing:.04em;padding-top:3px}.fc-row > div{font-size:14px;color:var(--ink);line-height:1.7;min-width:0;overflow-wrap:anywhere;white-space:pre-wrap}.fc-acts{display:flex;flex-direction:column;gap:10px;margin-top:20px}.fc-acts .btn{width:100%}form.fc-cf .qf-pick,form.fc-cf .qf-grid,form.fc-cf .qf-send,form.fc-cf > .book-fine,form.fc-cf .rsv-block,form.fc-cf .rsv-submit,form.fc-cf .wpcf7-response-output,form.fc-done .qf-pick,form.fc-done .qf-grid,form.fc-done .qf-send,form.fc-done > .book-fine,form.fc-done .rsv-block,form.fc-done .rsv-submit{display:none}@media(max-width:600px){.fc-row{grid-template-columns:1fr;gap:2px;padding:10px 2px}}.tcal-day.past{pointer-events:none;background:var(--bg)}.tcal-day.past .d{color:#b7ad97}.tcal-day.past .tcal-off{opacity:.45}.qt-chips button.off{color:var(--sub);border-color:var(--line);background:var(--card);opacity:.5;cursor:not-allowed;text-decoration:line-through;text-decoration-color:var(--line)}.qt-chips button.off:hover{border-color:var(--line);color:var(--sub)}.tcal-fest{display:block;margin-top:6px;background:#f4ead6;border-radius:2px;padding:8px;text-align:center;transition:background .15s}a.tcal-fest:hover{background:#ecdcbe}.tcal-fest-lbl{display:block;font-size:9px;font-weight:600;letter-spacing:.2em;color:#8a6a22}.tcal-fest-name{display:block;font-family:var(--font-display);font-size:14px;letter-spacing:.04em;color:var(--ink);margin-top:3px;line-height:1.35}.tcal-fest-time{display:block;font-size:10.5px;color:var(--sub)}.tcal-fest-note{display:block;font-size:10px;color:#8a6a22;margin-top:4px;border-top:1px solid rgba(168,130,58,.4);padding-top:4px}@media (max-width: 600px){.tcal-fest{padding: 4px 3px;margin-top: 4px}.tcal-fest-lbl{font-size: 8px;letter-spacing: .08em}.tcal-fest-name{font-family: var(--font-body);font-weight: 600;font-size: min(10px,2.7vw);line-height: 1.3;margin-top: 2px;overflow: hidden;text-overflow: ellipsis;white-space: nowrap}.tcal-fest-time{display: none}}@media (max-width: 350px){.tcal-fest-name{white-space: normal;line-height: 1.25}}.tcal-fest-short{display: none}@media (max-width: 600px){.tcal-grid{grid-template-columns: repeat(7,minmax(0,1fr))}.tcal-day{padding: 5px 2px 7px}.tcal-off,.tcal-today,.tcal-fest-lbl{white-space: nowrap !important}.tcal-off,.tcal-today,.tcal-note{font-size: min(9px,2.3vw);letter-spacing: 0;padding: 2px 3px}.tcal-fest{padding: 4px 1px}.tcal-fest-lbl{font-size: min(7.5px,2vw);letter-spacing: .02em}.tcal-fest-name,.tcal-fest-time{display: none}.tcal-fest-short{display: block;font-family: var(--font-body);font-weight: 600;font-size: min(8.5px,2.3vw);line-height: 1.25;letter-spacing: 0;margin-top: 2px;color: var(--ink)}}.slot-fest{display: block;border: 1px solid var(--line);border-radius: var(--rs);padding: 11px 12px}.slot-fest .fl{display: block;font-size: 9.5px;font-weight: 600;letter-spacing: .2em;color: #8a6a22}.slot-fest .sn{display: block;font-size: 13.5px;font-weight: 600;color: var(--ink);line-height: 1.6;margin-top: 3px}.slot-fest .ft{display: block;font-size: 12px;color: var(--sub);margin-top: 2px}.slot-fest .ar{display: block;font-size: 12px;color: var(--gold);margin-top: 6px}a.slot-fest{transition: background .15s,border-color .15s}a.slot-fest:hover{border-color: var(--gold);background: var(--tint-gold)}a.slot-fest:focus-visible{outline: 2px solid var(--gold);outline-offset: 2px}@media (max-width: 600px){.btn{white-space: normal;max-width: 100%}}@media (max-width: 600px){.footer-brand p,.hi-lead,.sec-note,.sg-txt,.schedule-note,.tcal-foot,.cf-desc,.cf-status,.cmp-desc,.cmp-note,.ft-lead,.ft-note,.fl-list li,.fv blockquote,.rsv-attention li,.rsv-help,.cp-note,.ra-strong,.rsv-steps li,.sch-lead p,.sl-1,.g-body,.g-list li,.g-notice p,.gn-h,.tl-d,.rsv-lead p,.rl-h,.cg p,.cg li,.course-card p,.tc-body,.tc-dd,.tc-dd li,.tlead,.about-p,.policy-item p,.rt-lead,.row dd,.just-m,.cp-notice,.rd-lead,.md-lead,.md-body,.md-dd,.as-head p,.rc-body p,.ec-desc,.ec-note,.ar-cond li{text-align: justify}}.cmp-imgwrap{display:block;overflow:hidden;border:1px solid var(--line);border-radius:var(--rs);background:#faf6ec}.cmp-imgwrap .cmp-img{border:none;border-radius:0;transition:transform .5s cubic-bezier(.2,.8,.25,1)}a.campaign-card:hover .cmp-imgwrap .cmp-img{transform:scale(1.045)}.mini-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.mini-item{display:block}.mini-ph{aspect-ratio:16/10;border:1px solid var(--line);border-radius:var(--rs);background:#faf6ec;display:grid;place-items:center;text-align:center;padding:10px;color:#a99a76;font-size:11.5px;line-height:1.8;letter-spacing:.06em}.mini-t{font-size:13.5px;line-height:1.75;margin:12px 0 2px;color:var(--ink);font-weight:600;text-align:center}.mini-tea{font-size:12px;color:#7d7259;margin:0;text-align:center}.mini-head{text-align:center;font-family:var(--font-display);font-weight:500;font-size:20px;letter-spacing:.04em;line-height:1.7;margin:26px 0;color:var(--ink)}@media(max-width:760px){.mini-grid{grid-template-columns:1fr 1fr;gap:18px}.mini-head{font-size:16px}.mini-head.oneline{white-space:nowrap;font-size:min(3.75vw,16px);letter-spacing:.02em}}.mini-im{overflow:hidden;border:1px solid var(--line);border-radius:var(--rs);background:#faf6ec}.mini-im img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;transition:transform .5s cubic-bezier(.2,.8,.25,1)}a.mini-item:hover .mini-im img{transform:scale(1.045)}html[data-band="light"] .fm-rating .fr-num{color:#3f3828}html[data-band="light"] .fm-rating .fr-stars{color:#c8912a}html[data-band="light"] .fm-rating .fr-cnt{color:#5f5744}html[data-band="light"] .footer-map .fm-cap{color:#5f5744}html[data-band="light"] .footer-map .fm-cap a{color:#8a6a22}html[data-band="light"] .footer-map .fm-cap a:hover{color:var(--gold)}.rt-ph.rt-im{background:none;border:1px solid var(--line);overflow:hidden;padding:0;height:auto}.rt-ph.rt-im img{display:block;width:100%;height:auto}.rt-ph.rt-im.rt-fill{aspect-ratio:4/3}.rt-ph.rt-im.rt-fill img{width:100%;height:100%;object-fit:cover}.int-grid{grid-template-columns:repeat(2,1fr)}.int-ph.int-im{background:none;border:1px solid var(--line);padding:0;overflow:hidden;border-radius:var(--rs)}.int-ph.int-im img{display:block;width:100%;height:100%;object-fit:cover}@media(max-width:820px){.int-grid{grid-template-columns:repeat(2,1fr)}}.grecaptcha-badge{display:none !important}.footer-recaptcha{font-size:11px;line-height:1.8;color:#8a8271;text-align:center;margin:18px 16px 6px}.footer-recaptcha a{color:inherit;text-decoration:underline}@media(max-width:350px){.btn{white-space:normal;max-width:100%;text-align:center}}@media (min-width: 601px) and (max-width: 980px){.reader-grid-2{grid-template-columns: repeat(2,1fr)}}@media (max-width: 600px){body *{text-wrap: wrap !important}}.tr-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.tcal-ev.bookable:focus-visible,.tcal-more:focus-visible,.slot.bookable:focus-visible{outline:2px solid var(--gold);outline-offset:2px;border-radius:2px}.sched-tabs button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
