.chronology-page { --chronology-marker-size:48px; --chronology-dot-size:16px; --chronology-gap:96px; --chronology-image-inset:56px; margin:0; padding:72px 0 96px; background:#ffffff; color:#151c2d; font-family:Arial, "Pretendard", "Noto Sans JP", sans-serif; font-size:16px; line-height:1.6; }
.chronology-page, .chronology-page * { box-sizing:border-box; }
.chronology-page .chronology-heading { position:relative; width:calc(100% - 80px); max-width:1400px; margin:0 auto 48px; padding-bottom:20px; border-bottom:1px solid #d9dde1; }
.chronology-page .chronology-heading::after { position:absolute; bottom:-3px; left:0; width:46px; height:6px; transform:skewX(-24deg); background:#0879ff; content:""; }
.chronology-page .chronology-heading h1 { margin:0; color:#151c2d; font-family:Georgia, "Times New Roman", serif; font-size:34px; font-weight:700; line-height:1.2; letter-spacing:-.045em; overflow-wrap:anywhere; }
.chronology-page .chronology-intro { position:relative; display:grid; grid-template-columns:minmax(0, 1fr) minmax(0, 1fr); column-gap:var(--chronology-gap); width:calc(100% - 80px); max-width:1400px; margin:0 auto; padding:0 0 72px; color:#151c2d; font-family:Georgia, "Times New Roman", serif; font-size:22px; font-weight:700; line-height:1.2; letter-spacing:-.035em; text-align:left; overflow-wrap:anywhere; }
.chronology-page .chronology-intro span { grid-column:2; min-width:0; }
.chronology-page .chronology-list { position:relative; width:calc(100% - 80px); max-width:1400px; margin:0 auto; padding:40px 0 80px; list-style:none; }
.chronology-page .chronology-intro::before, .chronology-page .chronology-list::before { position:absolute; top:0; bottom:0; left:50%; width:2px; transform:translateX(-50%); background:#344153; content:""; }
.chronology-page .chronology-entry { --chronology-copy-column:2; --chronology-image-column:1; display:grid; grid-template-columns:minmax(0, 1fr) minmax(0, 1fr); column-gap:var(--chronology-gap); align-items:center; margin:0 0 80px; padding:0; list-style:none; }
.chronology-page .chronology-entry:last-child { margin-bottom:0; }
.chronology-page .chronology-entry.is-left { --chronology-copy-column:1; --chronology-image-column:2; }
.chronology-page .chronology-copy { position:relative; grid-row:1; grid-column:var(--chronology-copy-column); min-width:0; text-align:left; }
.chronology-page .is-left .chronology-copy { text-align:right; }
.chronology-page .chronology-copy::before { position:absolute; top:calc(13px - var(--chronology-marker-size) / 2); width:var(--chronology-marker-size); height:var(--chronology-marker-size); box-sizing:border-box; border:5px solid #68c3df; border-radius:50%; background:radial-gradient(circle, #68c3df 0, #68c3df calc(var(--chronology-dot-size) / 2), #ffffff calc(var(--chronology-dot-size) / 2 + 1px)); content:""; }
.chronology-page .is-right .chronology-copy::before { left:calc(-1 * (var(--chronology-gap) + var(--chronology-marker-size)) / 2); }
.chronology-page .is-left .chronology-copy::before { right:calc(-1 * (var(--chronology-gap) + var(--chronology-marker-size)) / 2); }
.chronology-page .chronology-copy time { display:block; margin:0; color:#151c2d; font-family:Georgia, "Times New Roman", serif; font-size:22px; font-weight:700; line-height:1.2; letter-spacing:-.035em; }
.chronology-page .chronology-copy h2 { margin:0; color:#151c2d; font-family:Georgia, "Times New Roman", serif; font-size:22px; font-weight:700; line-height:1.2; letter-spacing:-.035em; overflow-wrap:anywhere; }
.chronology-page .chronology-copy p { margin:14px 0 0; padding:0; color:#747474; font-size:16px; line-height:1.6; letter-spacing:-.025em; overflow-wrap:anywhere; }
.chronology-page .chronology-visual { grid-row:1; grid-column:var(--chronology-image-column); width:calc(100% - var(--chronology-image-inset)); max-width:calc(var(--chronology-image-width) * .8); min-width:0; margin:0; }
.chronology-page .is-right .chronology-visual { justify-self:end; margin-right:var(--chronology-image-inset); }
.chronology-page .is-left .chronology-visual { justify-self:start; margin-left:var(--chronology-image-inset); }
.chronology-page .chronology-visual img { display:block; width:100%; max-width:100%; height:auto; border:0; border-radius:16px; }
.chronology-page .chronology-visual.is-logo img { border-radius:0; }
@media (max-width:1100px) {
	.chronology-page { --chronology-marker-size:40px; --chronology-dot-size:14px; --chronology-gap:72px; --chronology-image-inset:24px; padding:64px 0 80px; font-size:15px; }
	.chronology-page .chronology-heading { width:calc(100% - 64px); margin-bottom:40px; }
	.chronology-page .chronology-intro { width:calc(100% - 64px); padding:0 0 60px; font-size:20px; }
	.chronology-page .chronology-heading h1 { font-size:32px; }
	.chronology-page .chronology-list { width:calc(100% - 64px); }
	.chronology-page .chronology-entry { margin-bottom:64px; }
	.chronology-page .chronology-copy::before { border-width:4px; }
	.chronology-page .chronology-copy time, .chronology-page .chronology-copy h2 { font-size:20px; }
	.chronology-page .chronology-copy p { font-size:15px; line-height:1.6; }
}
@media (max-width:900px) {
	.chronology-page { --chronology-marker-size:36px; --chronology-dot-size:12px; --chronology-mobile-line:22px; --chronology-mobile-inset:64px; padding:48px 0 64px; }
	.chronology-page .chronology-heading { width:calc(100% - 48px); margin-bottom:32px; padding-bottom:20px; }
	.chronology-page .chronology-intro { grid-template-columns:minmax(0, 1fr); width:calc(100% - 48px); padding:0 var(--chronology-mobile-inset) 52px 0; line-height:1.25; text-align:right; }
	.chronology-page .chronology-intro span { grid-column:1; }
	.chronology-page .chronology-heading h1 { font-size:30px; line-height:1.2; }
	.chronology-page .chronology-heading::after { width:40px; height:5px; }
	.chronology-page .chronology-list { width:calc(100% - 48px); padding:28px 0 48px; }
	.chronology-page .chronology-intro::before, .chronology-page .chronology-list::before { right:var(--chronology-mobile-line); left:auto; transform:translateX(50%); }
	.chronology-page .chronology-entry { --chronology-copy-column:1; --chronology-image-column:1; grid-template-columns:minmax(0, 1fr); gap:20px; margin-bottom:48px; padding:0 var(--chronology-mobile-inset) 0 0; }
	.chronology-page .chronology-entry.is-left { --chronology-copy-column:1; --chronology-image-column:1; }
	.chronology-page .chronology-copy { grid-row:auto; text-align:right; }
	.chronology-page .is-left .chronology-copy { text-align:right; }
	.chronology-page .chronology-entry .chronology-copy::before { top:calc(12px - var(--chronology-marker-size) / 2); right:calc(var(--chronology-mobile-line) - var(--chronology-mobile-inset) - var(--chronology-marker-size) / 2); left:auto; border-width:4px; }
	.chronology-page .chronology-copy time { margin-bottom:4px; font-size:20px; }
	.chronology-page .chronology-copy h2 { font-size:20px; line-height:1.25; }
	.chronology-page .chronology-copy p { margin-top:12px; font-size:15px; line-height:1.7; letter-spacing:-.015em; }
	.chronology-page .chronology-visual { grid-row:auto; width:100%; }
	.chronology-page .is-left .chronology-visual, .chronology-page .is-right .chronology-visual { justify-self:end; margin:0; }
	.chronology-page .chronology-visual img { border-radius:12px; }
	.chronology-page .chronology-visual.is-logo img { border-radius:0; }
}
@media (max-width:480px) {
	.chronology-page { --chronology-marker-size:28px; --chronology-dot-size:10px; --chronology-mobile-line:14px; --chronology-mobile-inset:48px; padding-top:36px; }
	.chronology-page .chronology-heading { width:calc(100% - 32px); margin-bottom:28px; }
	.chronology-page .chronology-intro { width:calc(100% - 32px); padding-bottom:44px; font-size:18px; }
	.chronology-page .chronology-heading h1 { font-size:26px; letter-spacing:-.035em; }
	.chronology-page .chronology-list { width:calc(100% - 32px); padding-top:24px; }
	.chronology-page .chronology-entry { gap:18px; margin-bottom:40px; }
	.chronology-page .chronology-copy time { font-size:18px; }
	.chronology-page .chronology-copy h2 { font-size:18px; }
	.chronology-page .chronology-copy p { font-size:14px; }
}
