:root{--navy:#07182d;--sand:#f5f0e8;--tan:#b49678;--ink:#162638;--muted:#566477;--line:#ded8cf}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--sand);color:var(--ink);font:16px/1.9 "Yu Gothic",Meiryo,sans-serif}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}a:focus-visible,summary:focus-visible{outline:3px solid #1677f2;outline-offset:5px}header{height:86px;background:var(--navy);border-bottom:2px solid var(--tan);display:flex;align-items:center;justify-content:space-between;padding:0 4%;position:sticky;top:0;z-index:10;color:white}.logo{background:white;border-radius:8px;padding:5px 12px;display:flex}.logo img{width:116px;height:46px;object-fit:contain}nav{display:flex;align-items:center;gap:28px;font-size:13px;font-weight:bold}.line{background:#067c37;color:white}.line:hover{background:#05652d}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:15px 25px;border-radius:9px;font-size:14px;font-weight:bold;min-height:54px;transition:transform .2s}.button:hover{transform:translateY(-2px);text-decoration:none}.tan{background:var(--tan);color:#07182d}nav .line{padding:9px 20px;border-radius:30px}.wrap{max-width:1100px;width:calc(100% - 64px);margin:auto}.hero{background:linear-gradient(120deg,#07182d,#25334b);color:white;padding:74px 0 80px}.hero-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:62px;align-items:center}.pill{display:inline-block;border:1px solid #9f8f7e;border-radius:24px;padding:5px 15px;font-size:12px;font-weight:bold}.eyebrow{font-size:12px;letter-spacing:.15em;font-weight:bold;color:#806345;margin:24px 0 12px}.hero .eyebrow,.contact .eyebrow{color:#d2b99f}h1{font-size:clamp(34px,3.8vw,51px);line-height:1.5;letter-spacing:.025em;margin:14px 0 20px}h2{font-size:clamp(28px,3vw,38px);line-height:1.55;letter-spacing:.02em;margin:10px 0 16px}h3{font-size:21px;line-height:1.6;margin:17px 0 12px}.lead{font-size:17px;color:#f0eee9}.sub{font-size:14px;color:#c6ccd4}.actions{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0 0}figure{margin:0;position:relative}figure img{display:block;width:100%;height:345px;object-fit:cover;border-radius:22px}figcaption{font-size:10px;letter-spacing:.2em;margin:15px 0;color:#d0c1b0}.ribbon{text-align:center;background:var(--tan);padding:16px 20px;color:#07182d;font-size:13px;font-weight:bold}.ribbon span{padding:0 20px;opacity:.7}.section{padding-top:80px;padding-bottom:80px}.heading{text-align:center;margin-bottom:38px}.heading p{color:var(--muted);font-size:14px}.heading .eyebrow{color:#806345}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.cards article{padding:30px;background:white;border:1px solid var(--line);border-radius:16px}.cards p{font-size:14px;color:var(--muted)}.cards a{font-size:12px;font-weight:bold;display:block;margin-top:25px}.number{font-size:11px;letter-spacing:.14em;color:#806345;font-weight:bold}.about{background:#e9e1d6;padding:60px 0}.split{display:grid;grid-template-columns:1fr 1.15fr;gap:75px;align-items:center}.split p,.split li{font-size:14px}.split ul{padding-left:22px}.split li{margin:10px 0}.price-main{background:var(--navy);color:white;border-radius:18px;padding:34px 40px;display:grid;grid-template-columns:1.2fr 1fr;gap:40px}.price-main h3{font-size:19px}.price-main h3 strong{font-size:48px;white-space:nowrap;margin-left:12px}.price-main h3 span{font-size:20px}.price-main p{font-size:13px;color:#c9d2dc}dl{margin:0}dl div{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #ffffff30;padding:10px 0}dd{margin:0;font-weight:bold}.rates{margin-top:22px}.rates article{text-align:center}.rates strong{font-size:32px}.rates small{font-size:12px;margin-left:6px}.rates p{font-size:12px}.note{font-size:12px;color:var(--muted);margin-top:22px}.center{text-align:center;margin-top:28px}.outline{border:1px solid var(--tan)}.text-link{display:block;font-size:13px;margin-top:18px}.flow{background:#e9e1d6}.flow article{background:transparent;border:0;border-radius:0;border-top:2px solid var(--tan);padding-left:0}.company{font-size:14px}.company div{border-color:var(--line);padding:16px 0}.company dt{min-width:65px;color:var(--muted)}.faq{padding-bottom:45px}.faq details{border-bottom:1px solid var(--line);padding:20px 10px}.faq summary{font-weight:bold;cursor:pointer;font-size:15px}.faq details p{font-size:14px;color:var(--muted);padding:5px 12px}.recruit{border:1px solid var(--line);border-radius:16px;padding:25px 32px;display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:70px;background:#eee7dd}.recruit .eyebrow{margin:0}.recruit h3{margin:8px 0}.recruit p{font-size:12px;margin:0}.contact{text-align:center;background:var(--navy);color:white}.contact .actions{justify-content:center}.contact p{font-size:14px}.contact .note{color:#bdc8d6;font-size:12px}.telephone{display:inline-block;font-size:32px;font-weight:bold;letter-spacing:.05em;margin-top:30px}footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:35px 0;font-size:11px}footer img{width:125px}footer p{margin:0}.mobile,.mobile-contact{display:none}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}@media(max-width:850px){nav{gap:15px;font-size:11px}.hero-grid{gap:30px}.hero-grid figure img{height:300px}.cards{gap:12px}.cards article{padding:22px}.split{gap:35px}.price-main{gap:20px}.price-main h3 strong{font-size:38px}}@media(max-width:650px){body{padding-bottom:58px}header{height:72px;padding:0 20px}nav{display:none}.mobile{display:block;font-size:13px}.mobile summary{cursor:pointer}.mobile div{position:absolute;left:0;right:0;top:72px;background:var(--navy);padding:20px;display:grid;gap:15px;border-bottom:2px solid var(--tan)}.wrap{width:calc(100% - 40px)}.hero{padding:36px 0}.hero-grid,.split,.price-main{grid-template-columns:1fr}.hero-grid{gap:30px}h1{font-size:34px}.hero .eyebrow{font-size:10px}.hero figure img{height:230px}.hero figcaption{font-size:9px}.hero .actions{display:grid;grid-template-columns:1fr}.ribbon{font-size:11px;line-height:2}.ribbon span{padding:0 4px}.section{padding-top:52px;padding-bottom:52px}.cards{grid-template-columns:1fr;gap:16px}.heading{text-align:left;margin-bottom:26px}h2{font-size:27px}.about{padding:40px 0}.price-main{padding:26px}.price-main h3 strong{font-size:40px}.rates{grid-template-columns:1fr}.rates article{text-align:left;display:grid;grid-template-columns:1fr auto;gap:2px}.rates article h3{margin:4px 0}.rates article strong{grid-column:2;grid-row:1/4;align-self:center}.rates article p{margin:2px 0}.rates article small{display:block}.company dd{text-align:right}.recruit{display:block;padding:25px}.recruit .button{margin-top:20px}.contact h2{font-size:28px}.contact .actions{display:grid}.telephone{font-size:28px}footer{flex-wrap:wrap;padding:30px 0}.mobile-contact{display:grid;grid-template-columns:1fr 1fr;position:fixed;bottom:0;left:0;right:0;z-index:20;background:var(--navy);color:white;text-align:center;box-shadow:0 -2px 12px #0002}.mobile-contact a{padding:15px;font-size:13px;font-weight:bold}}

.recruit-nav{background:var(--tan);color:var(--navy);padding:9px 16px;border-radius:8px;white-space:nowrap}.contract-notice{font-size:13px;color:#e5d4bf;border-left:3px solid var(--tan);padding-left:12px}.recruit-summary{background:var(--navy);color:white;border-radius:18px;padding:35px 40px}.recruit-summary .eyebrow{color:#d2b99f;margin-top:0}.recruit-summary h3{font-size:28px}.recruit-summary>p:not(.eyebrow){font-size:15px;max-width:760px}.tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.tags span{padding:5px 13px;background:#ffffff13;border:1px solid #ffffff30;border-radius:22px;font-size:12px}.job-table{margin-top:25px}.job-table div{border-color:var(--line);justify-content:flex-start;padding:20px 10px;font-size:14px}.job-table dt{flex:0 0 120px;color:var(--muted)}.job-table dd{font-weight:500}.reason-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.reason-grid article{padding:30px;background:white;border:1px solid var(--line);border-radius:15px}.reason-grid span{font-size:11px;font-weight:bold;letter-spacing:.15em;color:#806345}.reason-grid p{font-size:14px;color:var(--muted)}.back-home{display:inline-block;margin-top:25px;font-size:13px}header nav{gap:20px}@media(max-width:850px){header nav{gap:12px}.recruit-nav{padding:8px 12px}}@media(max-width:650px){.recruit-summary{padding:25px}.job-table div{display:block}.job-table dt{margin-bottom:7px;font-weight:bold}.reason-grid{grid-template-columns:1fr}.recruit-summary h3{font-size:24px}}
.mobile-recruit{display:none}@media(max-width:650px){.mobile-recruit{display:inline-block;margin-left:auto;margin-right:15px;font-size:12px;padding:7px 12px}}
@media(max-width:650px){header{gap:10px;padding:0 14px}.logo{padding:4px 8px;flex-shrink:0}.logo img{width:85px;height:40px}.mobile{flex-shrink:0;white-space:nowrap;font-size:11px}.mobile-recruit{margin-right:0;font-size:11px;padding:7px 9px;flex-shrink:0}h1{font-size:clamp(27px,7.5vw,34px)}.contract-notice{font-size:12px}}
