@font-face{font-family:SwitchBold;src:url('assets/switch-bold.ttf') format('truetype');font-weight:900;font-display:swap}@font-face{font-family:SwitchPen;src:url('assets/switch-pen.ttf') format('truetype');font-weight:600;font-display:swap}
:root{--red:#ed0016;--blue:#008cff;--ink:#101010;--line:#e5e5e5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;color:var(--ink);background:#fff;font-family:"Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;line-height:1.8}img{max-width:100%;height:auto;display:block}a{color:inherit}button,input,textarea{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #005cbc;outline-offset:5px}.wrap{width:calc(100% - 88px);max-width:1240px;margin-inline:auto}.skip{position:absolute;top:-100px;background:white;padding:12px;z-index:20}.skip:focus{top:5px}header.wrap{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-block:20px}.brand{flex:none;width:165px}.brand img{width:100%;height:auto}nav{display:flex;gap:26px;align-items:center;flex-wrap:wrap;font-size:13px;font-weight:700}nav a{text-decoration:none}nav a:hover{color:var(--red)}nav a:last-child{background:var(--red);color:#fff;border-radius:30px;padding:9px 22px}.hero{position:relative;display:grid;grid-template-columns:59% 41%;min-height:630px;padding-top:14px;padding-bottom:32px}.hero-copy{position:relative;z-index:2;pointer-events:none}.hero-copy h1{font-family:SwitchBold,sans-serif;font-weight:900;font-size:clamp(62px,8.4vw,118px);line-height:1.15;letter-spacing:-.065em;margin:0 0 22px;transform:skew(-3deg);transform-origin:left bottom;white-space:nowrap}.hero-copy h1 em{font-style:normal;color:var(--red)}.hero-copy p{font-size:18px;font-weight:700;line-height:1.85;margin:0;pointer-events:auto}.photo-collage{position:relative;align-self:start;aspect-ratio:520/660;margin-left:-24px;margin-top:-10px}.ribbon{position:absolute;width:116%;height:110%;left:-8%;top:-4%;overflow:visible;filter:drop-shadow(1px 3px 3px #0002)}.photo{position:absolute;background:white;border:5px solid white;box-shadow:0 8px 26px #0000000c}.photo img{width:100%;height:auto}.photo-camera{width:94%;top:2%;left:0}.photo-filming{width:57%;right:-1%;top:58%}.tape{position:absolute;display:block;z-index:3;background:linear-gradient(100deg,#d2a500,#ffeb54 22%,#ffdb00 70%,#fff386);font-family:SwitchBold,Arial,sans-serif;font-weight:900;font-size:20px;line-height:1;padding:8px 17px;box-shadow:0 3px 4px #0002}.tape-top{top:9%;left:-11%;transform:rotate(55deg);z-index:0}.tape-bottom{right:-7%;top:108%;transform:rotate(-23deg)}.blue-band{background:var(--blue);color:#fff;padding:20px 0}.blue-band .wrap{display:flex;align-items:center;gap:35px;font-size:14px;font-weight:bold;letter-spacing:.65em}.blue-band span{height:1px;background:#fff;flex:1}.section{padding-top:58px}.section-title{display:flex;gap:36px;align-items:center;margin:0 0 12px;line-height:1.1;white-space:nowrap}.section-title>span{font-family:SwitchBold,Arial,sans-serif;font-weight:900;color:var(--red);font-size:clamp(58px,8.7vw,116px);letter-spacing:-.065em}.section-title small{font-size:26px;font-weight:700}.section-title:after{content:"";height:1px;background:var(--red);flex:1;min-width:20px}.works-layout{display:grid;grid-template-columns:21% 1fr;gap:30px}.president h3{font-size:17px;margin:0 0 14px}.president img{width:165px;max-width:90%}.president p{margin:6px 0;line-height:1.6}.president small,.president strong{display:block}.president strong{font-size:22px}.works{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.works img{width:100%;height:auto}.more{text-align:right;color:#666;margin:8px 0 0;font-size:14px}.people{padding-top:35px}.staff{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px;align-items:end}.staff img{width:100%;max-width:180px;justify-self:center}.recruitment{padding-top:72px}.recruit-title{font-family:SwitchBold,sans-serif;font-weight:900;color:var(--red);font-size:clamp(29px,4.5vw,60px);letter-spacing:-.06em;line-height:1.4;margin:0 0 26px}.recruit-grid{display:grid;grid-template-columns:55% 45%;align-items:start}.hand-message{padding-right:28px;font:600 clamp(17px,1.65vw,23px)/1.95 SwitchPen,cursive;color:#164be9}.hand-message p{margin:0}#recruit{border-left:1px solid var(--line);padding-left:28px}#recruit h2{display:flex;align-items:center;gap:20px;font-size:21px;margin:0 0 8px}#recruit h2:after{content:"";height:1px;background:var(--red);flex:1}dl{display:grid;grid-template-columns:100px minmax(0,1fr);font-size:14px;margin:0}dt,dd{margin:0;padding:9px 0;border-bottom:1px solid var(--line)}dt{font-weight:bold}dd{color:#555;overflow-wrap:anywhere}dd small,.salary-note{display:block;font-size:12px}.application-sentence{display:block}.keep{display:inline}.button,.form-button{display:flex;align-items:center;justify-content:center;gap:30px;background:var(--red);color:#fff;border:0;border-radius:17px;padding:12px 20px;font-size:21px;font-weight:700;text-decoration:none;cursor:pointer}.button{margin-top:16px}.button span{margin-left:auto;font-size:32px;line-height:1}.button:hover,.form-button:hover{background:#c90013}.company-wrap{padding-block:55px 38px}.company h2{display:flex;align-items:center;gap:24px;color:var(--red);font-size:32px;margin:0 0 18px}.company h2:after{content:"";height:1px;background:var(--red);flex:1}.company dl{grid-template-columns:150px 1fr;max-width:1000px;margin:auto}.company dd{color:#555}.site-footer{background:#d9effa url('assets/skyline.svg') center bottom/cover no-repeat;height:160px;position:relative}.site-footer .wrap{height:100%;display:flex;justify-content:space-between;align-items:flex-end;padding-bottom:12px}.site-footer small{background:#ffffffdc;padding:2px 8px;font-size:11px}.stay-gold{font:600 35px/.95 SwitchPen,cursive;color:var(--red);transform:rotate(-13deg);background:#ffffffb8;padding:10px}footer:not(.site-footer){padding:35px 24px;text-align:center;font-size:12px;background:#eef8ff;margin-top:60px}
@media(min-width:1400px){.hero{min-height:720px}.photo-collage{margin-top:0}}
@media(max-width:1000px){.wrap{width:calc(100% - 48px)}nav{gap:15px;font-size:11px}.brand{width:140px}.hero{min-height:540px}.hero-copy p{font-size:15px}.section-title{gap:24px}.section-title small{font-size:21px}.staff{gap:15px}.works-layout{gap:20px}.president h3{font-size:13px}.recruit-grid{grid-template-columns:52% 48%}.hand-message{font-size:17px}dl{font-size:12px;grid-template-columns:80px 1fr}.photo-filming{top:58%}.tape{font-size:16px}.tape-bottom{right:-4%}.blue-band .wrap{letter-spacing:.4em;font-size:12px}}
@media(max-width:700px){.wrap{width:calc(100% - 36px)}header.wrap{display:block;padding-block:16px}.brand{display:block;width:125px;margin-bottom:14px}nav{gap:8px 15px;font-size:11px}nav a:last-child{padding:5px 12px}.hero{display:block;min-height:0;padding-top:22px;padding-bottom:35px}.hero-copy h1{font-size:clamp(57px,12.7vw,88px);letter-spacing:-.065em;line-height:1.18}.hero-copy p{font-size:14px;margin-top:20px}.photo-collage{width:87%;max-width:410px;margin:28px auto 35px;aspect-ratio:520/670}.photo-camera{width:85%;left:3%}.photo-filming{width:49%;top:51%;right:3%}.ribbon{width:100%;left:0;height:100%}.tape-top{left:-3%;top:8%}.tape-bottom{top:94%;right:0;font-size:17px}.blue-band{padding:17px 0}.blue-band .wrap{letter-spacing:.18em;font-size:11px;gap:15px}.blue-band span{min-width:18px}.section{padding-top:36px}.section-title{gap:15px;margin-bottom:18px;flex-wrap:wrap}.section-title>span{font-size:58px}.section-title small{font-size:16px}.section-title:after{min-width:10px}.works-layout{grid-template-columns:1fr;gap:22px}.president{display:grid;grid-template-columns:76px 1fr;column-gap:18px;align-items:center}.president h3{grid-column:2;margin:0;grid-row:1;font-size:14px;align-self:end}.president img{width:76px;max-width:100%;grid-column:1;grid-row:1/3}.president p{grid-column:2;grid-row:2;align-self:start}.president strong{font-size:19px}.works{gap:10px}.staff{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 12px}.staff img{max-width:145px}.recruitment{padding-top:45px}.recruit-title{font-size:clamp(26px,6.6vw,43px);letter-spacing:-.065em}.recruit-grid{display:block}.hand-message{font-size:18px;padding:0;margin-bottom:30px;line-height:2}#recruit{border:0;padding:0}dl{font-size:14px;grid-template-columns:90px minmax(0,1fr)}.company-wrap{padding-block:40px}.company h2{font-size:27px}.company dl{grid-template-columns:95px minmax(0,1fr);font-size:13px}.site-footer{height:130px}.stay-gold{font-size:29px}}
@media(max-width:380px){.section-title>span{font-size:49px}.section-title small{font-size:13px}.works{grid-template-columns:repeat(2,minmax(0,1fr))}.hand-message{font-size:16px}nav{gap:8px 11px}.blue-band .wrap{letter-spacing:.05em}.staff{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media(min-width:701px){.photo-collage{margin-bottom:25%}}
