.button{border-radius:0!important}
.desktop-nav{gap:20px}
.nav{gap:28px}

.core-faq{padding:96px 0;background:#f5f3ef;border-top:1px solid #dedbd5}
.core-faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:72px;align-items:start}
.core-faq h2{font-size:clamp(40px,4.8vw,66px);line-height:.98;letter-spacing:-.05em;margin:14px 0 0}
.core-faq-list details{border-bottom:1px solid #d8d4cc;padding:20px 0}
.core-faq-list summary{cursor:pointer;list-style:none;font-size:18px;font-weight:800;line-height:1.35;padding-right:28px;position:relative}
.core-faq-list summary::-webkit-details-marker{display:none}
.core-faq-list summary:after{content:'+';position:absolute;right:0;top:0;font-weight:500}
.core-faq-list details[open] summary:after{content:'−'}
.core-faq-list p{color:#5d6065;margin:12px 0 0;max-width:720px}

.seo-related{padding:88px 0;background:#fff;border-top:1px solid #e6e2dc}
.seo-related-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:30px}
.seo-related-head h2{font-size:clamp(34px,4vw,54px);line-height:1;letter-spacing:-.045em;margin:10px 0 0;max-width:680px}
.seo-related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid #dedbd5;border-left:1px solid #dedbd5}
.seo-related-grid a{min-height:220px;padding:26px;display:flex;flex-direction:column;border-right:1px solid #dedbd5;border-bottom:1px solid #dedbd5;transition:background .2s ease}
.seo-related-grid a:hover{background:#f5f3ef}
.seo-related-grid strong{font-size:20px;letter-spacing:-.025em}
.seo-related-grid span{color:#6d6f73;margin:10px 0 24px;line-height:1.55}
.seo-related-grid b{margin-top:auto;font-size:13px}

.evidence-note{padding:48px 0;background:#111216;color:#fff;border-top:1px solid #2a2d31}
.evidence-note .shell{display:grid;grid-template-columns:180px minmax(0,1fr) auto;gap:32px;align-items:center}
.evidence-note .section-label{color:#c9bcaa}
.evidence-note p{margin:0;max-width:720px;color:#c7c9ce;font-size:14px;line-height:1.65}
.evidence-note a{display:block;color:#fff;font-size:13px;font-weight:800;padding:5px 0;border-bottom:1px solid #55585d}
.evidence-note a:hover{color:#d8cec0}

.week-schedule{display:block!important;border-top:1px solid #14161a;margin:10px 0 42px;background:#fff;color:#111216}
.week-schedule .schedule-day{display:grid;grid-template-columns:190px minmax(0,1fr);gap:38px;padding:0!important;border:0!important;border-bottom:1px solid #dedbd5!important;background:#fff;transition:background .2s ease;color:#111216}
.week-schedule .schedule-day:hover{background:#f8f7f4}
.schedule-day-heading{padding:28px 0;display:flex;align-items:baseline;gap:14px;color:#111216}
.schedule-day-heading span{font-size:10px;letter-spacing:.16em;color:#9b8b73;font-weight:800}
.schedule-day-heading h2{font-size:22px!important;line-height:1.1;margin:0!important;letter-spacing:-.025em;color:#111216!important}
.schedule-slots{border-left:1px solid #e5e1da;padding:12px 0 12px 30px}
.week-schedule .slot{display:grid;grid-template-columns:150px minmax(0,1fr);gap:20px;align-items:center;min-height:48px;padding:10px 0!important;border:0!important;border-bottom:1px solid #efede8!important;font-size:14px!important}
.week-schedule .slot:last-child{border-bottom:0!important}
.slot-time{font-size:12px;letter-spacing:.03em;color:#73767b;font-variant-numeric:tabular-nums;white-space:nowrap}
.slot-name{font-size:14px;line-height:1.35;font-weight:800;color:#111216}
.notice{border-radius:0!important;background:#f5f3ef!important;border:1px solid #dedbd5!important;border-left:3px solid #111216!important;padding:18px 20px!important;color:#51545a!important;font-size:14px;line-height:1.65}

@media(max-width:1050px){
  .core-faq-grid{grid-template-columns:1fr;gap:32px}
  .seo-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .evidence-note .shell{grid-template-columns:1fr;gap:14px}
}
@media(max-width:720px){
  .core-faq,.seo-related{padding:68px 0}
  .core-faq h2{font-size:40px}
  .seo-related-head{display:block}
  .seo-related-grid{grid-template-columns:1fr}
  .seo-related-grid a{min-height:0;padding:22px}
  .evidence-note{padding:38px 0}
  .evidence-note .shell{gap:12px}
  .week-schedule .schedule-day{grid-template-columns:1fr;gap:0}
  .schedule-day-heading{padding:22px 0 14px;border-bottom:1px solid #efede8}
  .schedule-day-heading h2{font-size:25px!important;color:#111216!important}
  .schedule-slots{border-left:0;padding:4px 0 14px}
  .week-schedule .slot{grid-template-columns:126px minmax(0,1fr);gap:12px;min-height:46px}
  .slot-time{font-size:11px}
  .slot-name{font-size:13px}
}
