:root{--color-primary: #333333;--heading-size-level-1: 1.375rem;--heading-size-level-2: 1.125rem;--heading-size-level-3: 1rem;--heading-size-level-4: .875rem;--heading-size-level-5: .75rem;--heading-size-level-6: .625rem;--heading-size-level-1-sp: 1.25rem;--heading-size-level-2-sp: 1rem;--heading-size-level-3-sp: .875rem;--heading-size-level-4-sp: .75rem;--heading-size-level-5-sp: .625rem;--heading-size-level-6-sp: .5rem;--paragraph-size: 1rem;--paragraph-size-sp: .875rem}body{font-family:Noto Sans JP,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:var(--paragraph-size);line-height:1.5;color:var(--color-primary);background-color:#fff}body:before{content:"";position:fixed;z-index:2000;inset:0;border:solid 5px var(--color-primary);pointer-events:none}body:after{content:"";position:fixed;z-index:999;top:0;left:0;right:0;height:50px;background-color:#fff;pointer-events:none}@media screen and (max-width:768px){body{font-size:var(--paragraph-size-sp)}body:after{height:31px}}a{text-decoration:none;color:inherit}li{list-style:none}body.is-nav-open{overflow:hidden}.c-header{position:fixed;top:50px;left:50%;transform:translate(-50%);width:calc(100% - 80px);max-width:1080px;z-index:1000;border:solid 3px var(--color-primary);border-radius:25px;background-color:#fff;box-shadow:1px 2px 3px #33333340;transition:transform .3s ease}.c-header.is-hidden{transform:translate(-50%) translateY(calc(-100% - 50px))}@media screen and (max-width:768px){.c-header{top:31px;left:32px;right:32px;width:auto;transform:none;border:solid 2px var(--color-primary);border-radius:15px}.c-header.is-hidden{transform:translateY(calc(-100% - 31px))}.c-header.is-menu-open{background-color:transparent;box-shadow:none}.c-header.is-menu-open .c-nav__heading,.c-header.is-menu-open .c-nav__hamburger{opacity:0;pointer-events:none}}.c-nav{display:flex;justify-content:space-between;align-items:center;padding:0 46px;min-height:64px}@media screen and (max-width:768px){.c-nav{padding:0 20px;min-height:56px}}.c-nav__heading{font-size:14px;font-weight:500}@media screen and (max-width:768px){.c-nav__heading{font-size:12px}}.c-nav__list{display:flex;gap:40px}@media screen and (max-width:768px){.c-nav__list{position:fixed;top:0;left:0;width:100%;margin-left:0;height:100vh;height:100dvh;background-color:#fff;flex-direction:column;align-items:center;gap:0;padding:90px 20px 20px;transform:translate(100%);transition:transform .3s ease;z-index:900}.c-nav__list.is-open{transform:translate(0)}.c-nav__list .c-nav__menu-title+.c-nav__item--link{margin-top:72px}}.c-nav__list li{font-size:14px;font-weight:500}.c-nav__link{transition:opacity .3s ease}.c-nav__link:hover{opacity:.6}.c-nav__close-wrap{display:none}@media screen and (max-width:768px){.c-nav__close-wrap{display:block;position:absolute;top:24px;right:15%;padding:0;border:0}}.c-nav__menu-title{display:none}@media screen and (max-width:768px){.c-nav__menu-title{display:block;font-size:var(--heading-size-level-1);font-weight:700;line-height:1.4;text-align:center}}.c-nav__close{display:none}@media screen and (max-width:768px){.c-nav__close{display:flex;align-items:center;justify-content:center;position:relative;width:32px;height:32px;padding:0;border:none;background:transparent;cursor:pointer}.c-nav__close span{position:absolute;width:30px;height:2px;background-color:var(--color-primary);border-radius:2px}.c-nav__close span:first-child{transform:rotate(35deg)}.c-nav__close span:last-child{transform:rotate(-35deg)}}@media screen and (max-width:768px){.c-nav__item{font-size:var(--heading-size-level-2);padding:0;text-align:center;border-bottom:none}.c-nav__item--link{margin-top:28px}.c-nav__item:first-child{margin-top:0}.c-nav__item:last-child{border-bottom:none}}.c-nav__sns{display:flex;gap:10px}.c-nav__sns img{width:16px;height:16px}@media screen and (max-width:768px){.c-nav__sns{display:none}}.c-nav__item--sns{display:none}@media screen and (max-width:768px){.c-nav__item--sns{display:block;margin-top:42px;padding-top:0}}.c-nav__sns-menu{display:flex;gap:16px;justify-content:center}.c-nav__sns-menu img{width:24px;height:24px}.c-nav__hamburger{display:none;flex-direction:column;justify-content:space-around;width:30px;height:30px;background:none;border:none;cursor:pointer;padding:0}.c-nav__hamburger span{width:100%;height:3px;background-color:var(--color-primary);border-radius:2px;transition:all .3s ease}.c-nav__hamburger.is-open span:nth-child(1){transform:rotate(45deg) translate(8px,8px)}.c-nav__hamburger.is-open span:nth-child(2){opacity:0}.c-nav__hamburger.is-open span:nth-child(3){transform:rotate(-45deg) translate(7px,-7px)}@media screen and (max-width:768px){.c-nav__hamburger{display:flex}}.c-nav__overlay{display:none;position:fixed;inset:0;z-index:800}.c-nav__overlay.is-open{display:block}.c-footer{margin-top:140px;background-color:var(--color-primary);color:#fff;min-height:315px;display:flex;flex-direction:column;align-items:center;justify-content:center}.c-footer__inner{width:min(833px,100% - 64px);margin:0 auto;display:flex;justify-content:space-between;align-items:center;font-size:14px;font-weight:500}.c-footer__title{margin:0}.c-footer__list{display:flex;gap:40px;margin:0;padding:0}.c-footer__sns{display:flex;gap:10px}@media screen and (max-width:768px){.c-footer{min-height:258px;margin-top:100px}.c-footer__inner{width:min(327px,100% - 32px);flex-direction:column;row-gap:30px;justify-content:center;font-size:14px}.c-footer__list{font-size:14px;gap:20px}}.c-footer__copy{margin-top:120px;font-size:12px;color:#fff}.section-heading{display:flex;flex-direction:column;gap:0;justify-content:center;text-align:center}.section-heading__title{margin:0;font-size:var(--heading-size-level-2);font-weight:700}.section-heading__subtitle{margin:0;font-size:var(--heading-size-level-6)}.primary-btn{display:inline-block}.primary-btn__link{width:225px;height:49px;display:inline-flex;align-items:center;justify-content:center;border:solid 2px var(--color-primary);border-radius:25px;font-size:14px;font-weight:500;position:relative;transition:background-color .2s ease,color .2s ease}.primary-btn__link:before{content:"";position:absolute;right:34px;width:16px;height:1px;background-color:currentColor}.primary-btn__link:after{content:"";position:absolute;right:27px;width:8px;height:8px;border-top:1px solid currentColor;border-right:1px solid currentColor;transform:rotate(45deg)}.primary-btn__link:hover{background-color:var(--color-primary);color:#fff}.content-card{list-style:none;border-radius:20px;box-shadow:1px 2px 2px #00000040;transition:transform .35s cubic-bezier(.22,1,.36,1),box-shadow .35s ease}.content-card__link{display:block;min-height:286px;border:3px solid var(--color-primary);border-radius:5px;background-color:#fff;padding:8px;overflow:hidden;transition:border-color .25s ease,background-color .25s ease}.content-card__thumb{display:block;width:100%;height:133px;border-radius:2px;object-fit:cover;position:relative;transition:transform .5s cubic-bezier(.22,1,.36,1)}.content-card__thumb--placeholder{background-color:#f3f3f3;background-image:linear-gradient(45deg,rgba(0,0,0,.08) 25%,transparent 25%),linear-gradient(-45deg,rgba(0,0,0,.08) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,rgba(0,0,0,.08) 75%),linear-gradient(-45deg,transparent 75%,rgba(0,0,0,.08) 75%);background-size:20px 20px;background-position:0 0,0 10px,10px -10px,-10px 0}.content-card__thumb:after{content:"";position:absolute;inset:0;transform:translate(-110%);background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.5) 50%,transparent 70%);transition:transform .7s ease}.content-card__tag{display:inline-flex;align-items:center;justify-content:center;min-width:49px;height:20px;margin-top:8px;border:1px solid var(--color-primary);border-radius:3px;font-size:12px;font-weight:700;padding-inline:10px}.content-card__title{display:block;margin-top:8px;font-size:16px;font-weight:700;line-height:1.5;color:var(--color-primary);transition:color .25s ease}.content-card:hover{transform:translateY(-6px);box-shadow:0 10px 24px #0003}.content-card:hover .work-card__thumb{transform:scale(1.04)}.content-card:hover .work-card__thumb:after{transform:translate(120%)}.content-card:hover .work-card__title{color:#1f1f1f}.content-card:focus-within{transform:translateY(-6px);box-shadow:0 10px 24px #0003}.list-section{width:min(1090px,100% - 80px);margin:100px auto 0;display:flex;flex-direction:column;row-gap:40px}.list-section__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px;margin:0;padding:0}@media screen and (max-width:768px){.list-section{width:min(326px,100% - 64px);margin-top:100px}.list-section__grid{grid-template-columns:1fr;gap:20px}}.detail-section{width:min(800px,100% - 80px);margin:100px auto 60px}.detail-section__header{display:flex;flex-direction:column;gap:8px;padding-bottom:24px;border-bottom:1px solid var(--color-primary)}.detail-section__tag{font-size:12px;font-weight:700;color:var(--color-primary);opacity:.6}.detail-section__title{margin:0;font-size:32px;font-weight:700;color:var(--color-primary)}.detail-section__date{font-size:12px;color:var(--color-primary);opacity:.6}.detail-section__url{font-size:14px;color:var(--color-primary);word-break:break-all;transition:opacity .3s}.detail-section__url:hover{opacity:.6}.detail-section__thumbnail{display:block;width:100%;max-height:400px;object-fit:cover;border-radius:4px;margin-top:32px}.detail-section__body{margin-top:40px;line-height:1.8}.detail-section__body h2{font-size:24px;font-weight:700;margin-top:40px;margin-bottom:16px}.detail-section__body h3{font-size:20px;font-weight:700;margin-top:32px;margin-bottom:12px}.detail-section__body p{margin:0 0 16px}.detail-section__body ul,.detail-section__body ol{padding-left:1.5em;margin:0 0 16px}.detail-section__body pre{padding:16px;overflow-x:auto;background-color:#f5f5f5;border-radius:4px;margin-bottom:16px}.detail-section__body code{font-family:monospace}@media screen and (max-width:768px){.detail-section{width:min(326px,100% - 64px);margin-top:80px}.detail-section__title{font-size:24px}}.profile-section{width:min(1090px,100% - 80px);margin:100px auto 0;display:flex;flex-direction:column;row-gap:40px}.profile-section__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px;margin:0;padding:0}.profile-section--page{width:min(760px,100% - 80px)}.profile-section--page .profile-section__intro{display:flex;align-items:center;justify-content:space-between;gap:40px;padding-bottom:8px}.profile-section--page .profile-section__information{display:flex;flex-direction:column;gap:8px;flex:1}.profile-section--page .profile-section__name{margin:0;font-size:var(--heading-size-level-2);font-weight:700}.profile-section--page .profile-section__text{margin:0;font-size:14px}.profile-section--page .profile-section__image{flex-shrink:0}.profile-section--page .profile-section__image img{width:120px;height:120px;border-radius:999px}.profile-section--page .profile-section__actions{display:flex;justify-content:center;gap:20px;flex-wrap:wrap}.profile-section--page .profile-timeline__title{margin:0;font-size:var(--heading-size-level-3);font-weight:700}.profile-section--page .profile-timeline__list{margin:20px 0 0;padding:0;display:flex;flex-direction:column}.profile-section--page .profile-timeline__item{display:grid;grid-template-columns:90px 1fr;column-gap:16px;align-items:start;padding:14px 0}.profile-section--page .profile-timeline__item:not(:last-child){border-bottom:1px solid var(--color-primary)}.profile-section--page .profile-timeline__year,.profile-section--page .profile-timeline__description{margin:0;font-size:.875rem}.profile-section--page .profile-timeline__year{font-weight:700}@media screen and (max-width:768px){.profile-section--page{width:min(326px,100% - 64px);margin-top:80px}.profile-section--page .profile-section__intro{flex-direction:column-reverse;align-items:flex-start}.profile-section--page .profile-section__actions,.profile-section--page .profile-section__actions .primary-btn,.profile-section--page .profile-section__actions .primary-btn__link{width:100%}.profile-section--page .profile-timeline__item{grid-template-columns:1fr;row-gap:4px}}html{scroll-behavior:smooth}body{margin:0}:root{--header-offset-desktop: 134px ;--header-offset-mobile: 103px }main{padding-top:var(--header-offset-desktop)}@media screen and (max-width:768px){main{padding-top:var(--header-offset-mobile)}}
