/*! (c) 2025 Kazuki Kawamura (casp.jp). All rights reserved. Unauthorized copying or redistribution of this stylesheet is prohibited. */
#career{--career-axis-width:2px;--career-axis-gap:clamp(1.8rem, 3.2vw, 2.55rem);--career-dot-size:12px;--career-title-size:clamp(0.84rem, 1.35vw, 0.94rem);--career-title-line-height:1.3;--career-item-gap:clamp(1.35rem, 2.5vw, 1.85rem);--career-item-inner-gap:0.14rem;--career-line:var(--glass-border);--career-dot-ring:rgba(var(--primary-color-rgb), 0.2);color:var(--text-primary)}#career .career-grid{max-width:1040px;margin:0 auto}#career .career-supplemental{max-width:var(--section-block-max-width);margin:clamp(2.1rem,4vw,3rem) auto 0}#career .career-subsection-title{margin:0 0 var(--space-md);color:var(--text-secondary);font-family:var(--font-family-primary);font-size:clamp(.88rem,1.3vw,1rem);font-weight:600;line-height:1.4}#career .career-additional-list{list-style:none;margin:0;padding:0}#career .career-additional-list .experience-list-item{display:grid;grid-template-columns:minmax(0,20rem) minmax(7.5rem,9rem) minmax(0,1fr);align-items:baseline;gap:var(--space-sm);padding:var(--space-xs)0;border-bottom:1px solid var(--glass-border)}#career .career-additional-list .experience-list-item:last-child{border-bottom:none}#career .experience-list-title{color:var(--text-primary);font-size:clamp(.74rem,1vw,.82rem);font-weight:500;line-height:1.35;min-width:0}#career .experience-list-date{color:var(--text-muted);font-size:clamp(.5rem,.7vw,.58rem);font-weight:500;font-family:var(--font-family-mono);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;text-align:left}#career .experience-list-description{margin-top:0;color:var(--text-secondary);font-size:clamp(.68rem,.94vw,.76rem);line-height:1.35;min-width:0}#career .career-lists ul{list-style:none;margin:0;padding:0;position:relative}#career .career-lists ul::before{content:"";position:absolute;top:0;bottom:0;left:50%;width:var(--career-axis-width);transform:translateX(-50%);background:var(--career-line)}#career .career-lists ul.en,#career .career-lists ul.ja{display:none}html[lang=en] #career .career-lists ul.en,html[lang=ja] #career .career-lists ul.ja{display:block}#career .timeline-item{display:grid;grid-template-columns:minmax(0,1fr) calc(var(--career-axis-gap)*2) minmax(0,1fr);align-items:start;padding-bottom:var(--career-item-gap)}#career .timeline-item:last-child{padding-bottom:0}#career .timeline-item::before{content:"";grid-column:2;grid-row:1;align-self:start;justify-self:center;width:var(--career-dot-size);height:var(--career-dot-size);margin-top:calc((var(--career-title-size)*var(--career-title-line-height) - var(--career-dot-size))/2);border-radius:50%;background:var(--bg-primary);border:2px solid var(--primary-color);box-shadow:0 0 0 3px var(--career-dot-ring);transform:none}#career .timeline-content{grid-column:1;justify-self:end;width:min(100%,360px);padding-right:var(--career-axis-gap);text-align:right;display:flex;flex-direction:column;gap:var(--career-item-inner-gap)}#career .timeline-item:nth-child(even) .timeline-content{grid-column:3;justify-self:start;padding-right:0;padding-left:var(--career-axis-gap);text-align:left}#career .timeline-title{order:1;margin:0;color:var(--text-primary);font-family:var(--font-family-primary);font-size:var(--career-title-size);font-weight:600;line-height:var(--career-title-line-height);white-space:pre-line}#career .timeline-date{order:2;margin:0;color:var(--text-muted);font-size:clamp(.55rem,.78vw,.62rem);font-weight:500;font-family:var(--font-family-mono);letter-spacing:.1em;text-transform:uppercase}#career .timeline-description{order:3;margin:0;color:var(--text-secondary);font-size:clamp(.72rem,.98vw,.8rem);line-height:1.38}#career .experience-list-description a,#career .experience-list-title a,#career .timeline-description a,#career .timeline-title a{color:inherit;text-decoration-line:underline;text-decoration-style:dotted;text-decoration-thickness:1px;text-underline-offset:.2em;text-decoration-color:rgba(var(--primary-color-rgb),.45);transition:color var(--transition-fast),text-decoration-color var(--transition-fast),opacity var(--transition-fast)}#career .experience-list-title a,#career .timeline-title a{display:inline-block;white-space:pre-line}#career .experience-list-title{white-space:pre-line}#career .experience-list-description a:hover,#career .experience-list-title a:hover,#career .timeline-description a:hover,#career .timeline-title a:hover{color:var(--primary-color);text-decoration-color:rgba(var(--primary-color-rgb),.85);opacity:1}#career .timeline-item:hover::before{box-shadow:0 0 0 3px rgba(var(--primary-color-rgb),.28)}@media (max-width:960px){#career{--career-dot-size:10px}#career .career-lists ul::before{left:.75rem;transform:none}#career .timeline-item{grid-template-columns:1.8rem minmax(0,1fr);padding-bottom:1.1rem}#career .timeline-item::before{grid-column:1;grid-row:1;align-self:start;justify-self:center;transform:none}#career .timeline-content,#career .timeline-item:nth-child(even) .timeline-content{grid-column:2;justify-self:start;width:100%;padding-left:1.25rem;padding-right:0;text-align:left}#career .career-supplemental{margin-top:1.9rem;max-width:100%}#career .career-additional-list .experience-list-item{grid-template-columns:minmax(0,1fr);gap:calc(var(--space-xs) + 2px)}}@media (max-width:560px){#career{--career-title-size:0.9rem}#career .timeline-title{font-size:var(--career-title-size)}#career .timeline-date{font-size:.56rem}#career .timeline-description{font-size:.7rem;line-height:1.38}#career .career-subsection-title{font-size:.9rem}#career .experience-list-title{font-size:.76rem}#career .experience-list-date{font-size:.54rem}#career .experience-list-description{font-size:.68rem;line-height:1.45}}#career .experience-list-item.fade-in-on-scroll,#career .timeline-item.fade-in-on-scroll{opacity:0;transform:translateY(.75rem);transition:opacity var(--transition-base),transform var(--transition-base)}#career .experience-list-item.fade-in-on-scroll.visible,#career .timeline-item.fade-in-on-scroll.visible{opacity:1;transform:translateY(0)}
