*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:#666;font:16px/1.75 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ Ｐゴシック','メイリオ',Meiryo,sans-serif}a{color:#007acc;text-decoration:none}a:hover{color:#686868}img{max-width:100%;height:auto;vertical-align:middle}p{margin:0 0 28px}h1,h2,h3,h4{font-weight:900}h1{font-size:28px;line-height:1.2727}h2{font-size:34px;line-height:1.25;margin:68px 0 34px;text-align:center;color:#4f4f4f}h3{font-size:23px;line-height:28px;margin:0 0 28px}h4{font-size:16px;line-height:1.3125;letter-spacing:2.1px;margin:0 0 28px}ul,ol{padding:0;margin:0 0 28px}li{margin-left:0}.container{width:58.333333%;margin:auto}.header{max-width:1320px;margin:auto;padding:28px 4.5455%;display:flex;align-items:center;justify-content:space-between;min-height:152px}.header nav{display:flex}.header nav a{color:#444;padding:10px 14px;font:16px/1.3125 'Helvetica Neue',sans-serif}.header nav a:first-child{font-weight:700}.menu-toggle{display:none}.hero{background:url('../images/forest.jpg') center/cover no-repeat;color:#fff}.hero .container{padding-top:35px;padding-bottom:35px}.hero-space{height:150px}.hero h1{margin:47.5152px 0 23.7576px;text-align:center}.hero h2{font-size:26px;color:white;margin:52px 0 26px}.down{display:block;text-align:center;font-family:Arial,sans-serif;font-size:62px;line-height:1.2;width:max-content;margin:50px auto 0;color:inherit}.hero .down{margin-top:76px;margin-bottom:0}#about{padding:35px 0 110px}#about h2{margin-top:0}.section-subtitle{font-size:24px;line-height:36px;margin:58.4348px 0 29.2174px}.columns{display:grid;gap:30px}.two{grid-template-columns:repeat(2,minmax(0,1fr))}.three{grid-template-columns:repeat(3,minmax(0,1fr))}.intro{padding-top:20px}.checks{list-style:none}.checks li{display:grid;grid-template-columns:82px 1fr;gap:15px;margin-bottom:36px}.checks h4{font-size:16px;line-height:24px;letter-spacing:0;margin:0;font-weight:700}.checks p{font-size:13px;line-height:18px;margin:0}.check{font-size:28px;text-align:left;padding:5px 15px}.checks{padding-left:15px}.intro p:last-child{margin-bottom:35px}hr{width:50%;margin:20px 0 0;border:0;border-top:2px dashed #aaa}.profile h3{display:flex;align-items:center;gap:16px}.profile img{width:60px;height:60px}.history h4{text-transform:uppercase}.history ul{list-style:disc}.history{margin-bottom:35px}#services{background:#dd949b;color:white;padding:40px 0 35px}#services h2{color:white}#services h3{font-size:28px;line-height:35px;white-space:nowrap}#services p{margin-bottom:35px}.service-icon{display:flex;border-radius:50%;width:104px;height:104px;background:white;color:#dd7a84;font:76px/1 Arial,sans-serif;align-items:center;justify-content:center;margin:0 auto 36px}.contact-button{display:block;text-align:center;width:200px;min-height:40px;margin:auto;border:1px solid #fff;border-radius:3px;background:white;color:#dd7a84;font-size:15px;line-height:38px}#portfolio{padding:40px 0 35px}#portfolio article img{width:294px;height:auto}#portfolio article h3{font-size:16px;line-height:21px;margin:56px 0 28px}#portfolio article p{margin-bottom:28px}#portfolio .columns{margin-bottom:35px}#portfolio>.container>p{text-align:center}#portfolio .down{color:#dd949b;margin:35px auto 0}#contact{background:#e8e8e8;padding:40px 0 12px}#contact p{text-align:center;margin-top:39px}footer{max-width:1320px;padding:10px 4.5455% 56px;margin:auto}footer nav{display:none}footer p{text-align:center;font-size:13px;line-height:21px;margin:0;color:#777}.to-top{position:fixed;bottom:20px;right:20px;border-radius:50%;width:48px;height:48px;background:linear-gradient(#666,#444);border:1px solid #777;text-align:center;color:white;font:30px/48px Arial;visibility:hidden}.to-top.visible{visibility:visible}.skip,.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.skip:focus{clip-path:none;width:auto;height:auto;background:#fff;z-index:10;padding:12px}
@media(max-width:985px){.container{width:69.27%;margin-left:7.6923%;margin-right:0}.header{min-height:126px;padding:15px 4.5455%;flex-wrap:wrap}.header nav{display:none;width:100%;padding:28px 0}.header nav.open{display:flex;flex-direction:column}.header nav a{padding:14px 0;border-top:1px solid #ddd}.menu-toggle{display:block;background:white;border:1px solid #ddd;border-radius:2px;padding:9px 11px;color:#222;font-weight:bold}.hero .container{padding-top:35px;padding-bottom:35px}.hero h1{margin:56px 0 28px;line-height:35px}.hero h2{margin:63.3043px 0 31.6522px;line-height:31.6522px}.hero .down{margin-top:81.6522px}h2{line-height:1.21739;margin:82.7826px 0 41.3913px}.section-subtitle{margin:70.7368px 0 35.3684px}#services h3{font-size:23px;line-height:28px;white-space:normal}#services{padding-bottom:35px}footer{padding:0 7.6923% 28px}footer nav{display:flex;flex-direction:column;padding:0 0 28px}footer nav a{font-size:16px;padding:7px 0;color:#444}}
@media(max-width:709px){.container{width:84.6154%;margin:auto}.header{min-height:100px;padding:15px 4.5455%}.header img{width:180px}.hero .container{padding-bottom:35px}.columns{grid-template-columns:1fr}.checks{padding:0}.checks li{grid-template-columns:82px 1fr}.intro p:last-child{margin-bottom:35px}.history{gap:0;margin-bottom:35px}.history h4{font-size:16px}#about{padding-bottom:110px}#services article{margin-bottom:35px}#services article:last-child{margin-bottom:0}#services p{margin-bottom:35px}#portfolio article{margin-bottom:35px}#portfolio .columns{gap:0}.profile h3{font-size:19px}footer p{text-align:left}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Local SVG icons retain the original site's Font Awesome shapes. */
svg{width:1em;height:1em;vertical-align:middle}.service-icon svg{height:63px;width:72px}.check svg{height:24px;width:24px}.down svg{height:62px;width:62px;display:block}.contact-button svg{width:20px;height:20px;margin-right:6px}.to-top svg{width:14px;height:14px}.hero .down{margin-top:76px}.hero .container{padding-bottom:35px}.checks .intro{margin:0}
#about{padding-bottom:110px}.checks p{margin:0}.checks li{margin-bottom:36px}.checks li:last-child{margin-bottom:36px}
@media(max-width:985px){.hero .down{margin-top:81.6522px}}

/* Match the measured spacing of the original one-page layout. */
.down svg{height:60px;width:60px}
.checks{padding-left:0}
.intro .checks p{margin:0}
.checks li{min-height:72px;margin-bottom:30px;align-items:center}
.checks li:last-child{margin-bottom:0}
#about{padding-bottom:20px}
#portfolio .columns{margin-bottom:10px}
@media(max-width:985px){#contact{padding-bottom:17px}}
@media(max-width:709px){.header{padding-top:14px;padding-bottom:14px}#services article{margin-bottom:3px}#portfolio article{margin-bottom:17px}}

#about{padding-bottom:5px}#portfolio{padding-bottom:37px}
@media(max-width:985px){#portfolio{padding-bottom:44px}}
@media(max-width:709px){.intro{row-gap:7px}#portfolio{padding-bottom:56px}}

@media(max-width:985px){html:not(.js) .header nav{display:flex;flex-direction:column}html:not(.js) .menu-toggle{display:none}}
