/* 第3次募集LPの修正。既存スタイルの後に読み込む。 */
.about{border-top:1px solid var(--line)}
.about-heading{padding-bottom:0}
.learning{border-top:1px solid var(--line);padding-top:68px}
.learning>.wrap>.section-label{margin-bottom:38px}
.hero-bottom{justify-content:flex-start}

/* 01・02の見出しを同じ配置に揃える。 */
.course-cover,.digital .course-cover{grid-template-columns:43% 57%;min-height:480px}
.cover-title,.digital .cover-title{grid-column:1;grid-row:1;padding:38px 38px 34px;min-width:0}
.course-art,.digital .course-art{grid-column:2;grid-row:1}
.course-heading-marks{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;min-height:136px;margin:32px 0 24px}
.cover-title .course-number{position:static;font-size:160px;line-height:.85;letter-spacing:-.095em;margin:0;opacity:1}
.course .cover-title h3,.digital .cover-title h3{font-size:clamp(30px,3.1vw,42px);line-height:1.4;margin:0;max-width:100%}
.cover-caption,.digital .cover-caption{margin-top:24px;font-size:12px;letter-spacing:.08em}
/* 元の936×281pxカードからアイコンだけを表示し、英語ラベルと文章を除外する。 */
.legacy-course-icon{display:block;flex:0 0 104px;width:104px;height:92px;background-repeat:no-repeat;background-size:561.6px 168.6px;background-position:-25.8px -16.8px;overflow:hidden}
/* デジタルの絵柄は元画像上端から187pxまであるため、専用の表示範囲を使う。 */
.legacy-digital-icon{height:113px;background-position-y:0}
.digital-list section,.digital-list section:last-child{padding-top:28px}
.digital-list section>div{padding-top:0}
.digital-list h5{padding-right:52px;min-height:44px;margin-top:0}

/* 講座サンプルから会員限定プログラムへ続く構成。 */
.samples{padding-top:72px;padding-bottom:76px}
.samples>.section-label{margin-bottom:30px}
.exclusive{padding-top:0;padding-bottom:84px}
.exclusive>.section-label{margin-bottom:30px}
.program-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch}
.program-grid>.program-card{position:relative;min-width:0;margin:0;padding:28px 24px;border:1px solid var(--mint);overflow:hidden;display:flex;flex-direction:column}
.program-grid>.program-barcelona{background:var(--navy);color:var(--mint)}
.program-grid>.program-award{background:var(--coral);color:var(--navy);border-color:var(--coral)}
.program-grid>.program-live{background:var(--mint);color:var(--navy)}
.program-card .event-icon,.program-card .award-mark{position:static;margin:0 0 24px;opacity:1;color:inherit;pointer-events:none}
.program-barcelona .event-icon{color:var(--coral)}
.program-card .event-icon .nomad-icon,.program-card .award-mark>.nomad-icon{width:54px;height:54px;stroke-width:1.1;transform:none;display:block}
.program-card .eyebrow{font-size:11px;line-height:1.7;letter-spacing:.08em;overflow-wrap:anywhere}
.program-barcelona .eyebrow{color:var(--coral)}
.program-card h3,.program-award h3{font-size:22px;line-height:1.6;margin:17px 0 20px;letter-spacing:0;overflow-wrap:anywhere}
.program-card .event-topic{font-size:17px;line-height:1.8;margin-bottom:16px}
.program-card p,.program-award p{font-size:16px;line-height:1.95}
.program-card .event-meta{margin-top:auto;padding-top:26px;gap:8px;font-size:12px}
.program-card .event-meta span{border-color:currentColor;padding:3px 10px}
.program-award .award-top{display:flex;flex-direction:column;align-items:stretch;gap:0}
.program-award .award-top>div{min-width:0}
.program-award .prize{margin:24px 0 0;padding:16px;transform:none;box-shadow:none;background:var(--mint);white-space:normal}
.program-award .prize>span{font-size:14px}
.program-award .prize b{font-size:50px;line-height:1.3;letter-spacing:-.065em;white-space:nowrap}
.program-award .prize b>span{font-size:18px;margin-left:6px}
.program-award .seasons{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:26px;border-color:rgba(17,52,82,.35)}
.program-award .seasons>div,.program-award .seasons>div:first-child{min-width:0;padding:18px 10px 18px 0;border:0}
.program-award .seasons>div:nth-child(2n){padding-left:12px;border-left:1px solid rgba(17,52,82,.35)}
.program-award .seasons>div:nth-child(n+3){border-top:1px solid rgba(17,52,82,.35)}
.program-award .seasons .nomad-icon{width:26px;height:26px;margin-bottom:11px}
.program-award .seasons span{font-size:10px;letter-spacing:0}
.program-award .seasons h4{font-size:14px;line-height:1.65;margin-top:9px}
.program-award>.small-note{font-size:12px;line-height:1.8;margin-top:16px}
.admission h2{font-family:Arial,sans-serif;font-size:clamp(40px,4.2vw,58px);line-height:1.2;letter-spacing:-.035em;max-width:8em}

@media(max-width:1100px) and (min-width:701px){
  .cover-title,.digital .cover-title{padding:30px 26px}
  .cover-title .course-number{font-size:120px}
  .course-heading-marks{min-height:102px}
  .legacy-course-icon{flex-basis:78px;width:78px;height:69px;background-size:421.2px 126.45px;background-position:-19.35px -12.6px}
  .legacy-digital-icon{height:85px;background-position-y:0}
  .course .cover-title h3,.digital .cover-title h3{font-size:30px}
  .program-grid{gap:15px}
  .program-grid>.program-card{padding:25px 18px}
  .program-card h3,.program-award h3{font-size:20px}
  .program-award .prize{padding:13px}
  .program-award .prize b{font-size:40px}
  .program-award .prize b>span{font-size:15px}
}
@media(max-width:700px){
  .learning{padding-top:45px}
  .learning>.wrap>.section-label{margin-bottom:28px}
  .course-cover,.digital .course-cover{display:flex;flex-direction:column;min-height:0}
  .cover-title,.digital .cover-title{padding:28px 25px 30px;min-height:0}
  .course-heading-marks{min-height:102px;margin:26px 0 23px;gap:20px;justify-content:space-between}
  .cover-title .course-number{font-size:106px;position:static;margin:0;line-height:.9;opacity:1}
  .course .cover-title h3,.digital .cover-title h3{font-size:30px;line-height:1.4;margin:0;max-width:100%}
  .legacy-course-icon{flex-basis:94px;width:94px;height:83px;background-size:505.44px 151.74px;background-position:-23.22px -15.12px}
  .legacy-digital-icon{height:102px;background-position-y:0}
  .cover-caption,.digital .cover-caption{margin-top:22px;font-size:11px}
  .course-art,.digital .course-art{grid-column:auto;grid-row:auto}
  .digital-list section,.digital-list section:last-child{padding-top:24px}
  .digital-list h5{padding-right:43px;min-height:39px;font-size:20px}
  .samples{padding-top:54px;padding-bottom:58px}
  .samples>.section-label,.exclusive>.section-label{margin-bottom:27px}
  .exclusive{padding-top:0;padding-bottom:62px}
  .program-grid{grid-template-columns:minmax(0,1fr);gap:20px}
  .program-grid>.program-card{padding:28px 24px}
  .program-card h3,.program-award h3{font-size:23px}
  .program-card .eyebrow{font-size:11px}
  .program-card .event-meta{margin-top:0}
  .program-award .prize{padding:19px 20px}
  .program-award .prize b{font-size:56px}
  .program-award .prize b>span{font-size:20px}
  .program-award .seasons h4{font-size:16px}
  .program-award .seasons span{font-size:11px}
  .admission h2{font-size:48px;line-height:1.12;max-width:6.2em;margin-bottom:34px}
}
@media(max-width:360px){
  .cover-title,.digital .cover-title{padding-left:22px;padding-right:22px}
  .cover-title .course-number{font-size:98px}
  .course .cover-title h3,.digital .cover-title h3{font-size:28px}
  .program-grid>.program-card{padding-left:22px;padding-right:22px}
  .program-card h3,.program-award h3{font-size:22px}
  .program-award .prize b{font-size:50px}
  .admission h2{font-size:43px}
}
