*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:#17283e;background:#fff;font-family:"Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;line-height:1.9}a{color:inherit}header{height:104px;display:flex;align-items:center;justify-content:space-between;gap:30px;max-width:1280px;margin:auto;padding:0 6%}.logo{text-decoration:none;line-height:1.1;font-size:24px;font-weight:600;letter-spacing:.1em}.logo small{display:block;font-size:10px;letter-spacing:.12em;margin-top:10px}nav{display:flex;gap:30px}nav a{font-size:13px;text-decoration:none;padding:10px 0;border-bottom:1px solid transparent}nav a[aria-current]{border-color:#17283e}.wrap{max-width:1120px;margin:auto;padding:80px 40px}.eyebrow{font-size:11px;letter-spacing:.22em;color:#62748b}.hero{background:linear-gradient(90deg,rgba(10,28,49,.79),rgba(10,28,49,.40)),url("city-hero.jpg") center 60%/cover no-repeat;min-height:620px;color:white;position:relative;overflow:hidden}.hero:after{display:none}.hero .hero-note{position:absolute;right:24px;bottom:12px;z-index:2;font-size:10px;color:#e2e8ef;margin:0}.hero p{color:#e2e8ef}.hero .eyebrow{color:#e2e8ef}.hero .wrap{position:relative;z-index:1;padding-top:95px;padding-bottom:95px}.hero .eyebrow{color:#c1cbd6}.hero h1{font-size:clamp(46px,7vw,90px);letter-spacing:.035em;line-height:1.13;font-weight:500;margin:35px 0}.hero h2{font-family:"Yu Mincho",serif;font-size:27px;font-weight:400;margin:28px 0}.hero p{max-width:610px;font-size:14px;color:#ccd6e1}.button{display:inline-flex;align-items:center;gap:55px;text-decoration:none;border-bottom:1px solid #b6c0cb;padding:12px 0;font-size:13px;margin-top:20px}.title{background:#f1f3f5}.title .wrap{padding-top:60px;padding-bottom:60px}h1{font-size:36px;font-weight:500;margin:14px 0 0}h2{font-size:29px;font-weight:500;line-height:1.6;margin:14px 0 24px}h3{font-size:21px;font-weight:500}.intro{display:grid;grid-template-columns:1fr 1.4fr;gap:80px}.intro p{margin-top:18px;font-size:15px}.business-preview{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin-top:40px}.business-preview article{border-top:1px solid #c7cdd4;padding-top:20px}.number{font-size:12px;letter-spacing:.1em;color:#738298}.business-preview p{font-size:14px;color:#516073}.soft{background:#f4f5f6}.image{width:100%;display:block;aspect-ratio:16/9;object-fit:cover}.caption{font-size:11px;color:#6c7680;margin:8px 0 0}.profile{width:100%;border-collapse:collapse;font-size:15px}.profile th,.profile td{border-bottom:1px solid #dfe3e7;padding:24px 18px;text-align:left;vertical-align:top}.profile th{width:25%;font-weight:500;background:#f7f8f9}.business-row{display:grid;grid-template-columns:.65fr 1.5fr;gap:75px;padding:15px 0 65px}.business-row+ .business-row{border-top:1px solid #dfe3e7;padding-top:60px}.business-row p{font-size:15px}.group-link{border:1px solid #d5dbe1;padding:24px;display:flex;justify-content:space-between;align-items:center;text-decoration:none;margin-top:30px}.group-link small{display:block;color:#718094;font-size:11px}.group-link:hover{background:#f4f6f8}.locations{display:flex;gap:35px;margin:25px 0}.locations span{border-left:2px solid #243b55;padding:0 20px}.message{max-width:800px}.draft{display:inline-block;font-size:12px;background:#edf0f3;padding:5px 15px;letter-spacing:.03em}.message p{margin:30px 0;font-size:15px}.sign{text-align:right;margin-top:50px}.sign strong{font-family:"Yu Mincho",serif;font-size:27px;font-weight:500;letter-spacing:.16em}.contact{border-top:1px solid #dfe3e7;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:45px 0;margin-top:40px}.contact p{font-size:12px}.phone{font-size:22px;text-decoration:none;letter-spacing:.06em}footer{background:#10263f;color:#fff}.footer-inner{max-width:1120px;margin:auto;padding:45px 40px;display:flex;justify-content:space-between;gap:30px}.footer-inner p{font-size:11px;color:#b7c3d0}.footer-nav{display:flex;gap:22px;font-size:12px;flex-wrap:wrap}.footer-nav a{text-decoration:none}.copyright{margin-top:25px}.menu{display:none;background:none;border:1px solid #d8dde3;padding:8px 12px;color:#17283e;font:inherit;font-size:12px}a:focus-visible,button:focus-visible{outline:3px solid #9aafc6;outline-offset:5px}@media(max-width:760px){header{height:90px;padding:0 24px}.logo{font-size:20px}.menu{display:block}nav{display:none;position:absolute;top:90px;left:0;right:0;background:#fff;z-index:10;padding:20px 24px;box-shadow:0 10px 15px #10263f12}nav.open{display:flex;flex-direction:column;gap:8px}.wrap{padding:55px 24px}.hero{min-height:560px}.hero .wrap{padding-top:70px;padding-bottom:65px}.hero h2{font-size:22px}.hero p{font-size:13px}.intro,.business-row{grid-template-columns:1fr;gap:15px}.business-preview{grid-template-columns:1fr;gap:30px}.title .wrap{padding:42px 24px}h1{font-size:29px}h2{font-size:25px}.profile th,.profile td{padding:19px 12px;font-size:13px}.profile th{width:30%}.contact,.footer-inner{flex-direction:column;align-items:flex-start}.footer-inner{padding:36px 24px}.locations{gap:12px}.locations span{padding:0 12px}.business-row{padding-bottom:40px}.message p{font-size:14px}}
.mobile-break{display:none}.phrase{display:inline-block}p{line-break:strict;word-break:normal;text-wrap:pretty}.intro>* ,.business-row>*{min-width:0}@media(max-width:760px){header{gap:12px}.logo{font-size:clamp(15px,4.5vw,20px);white-space:nowrap}.logo small{font-size:clamp(8px,2.3vw,10px);letter-spacing:.06em}.menu{flex-shrink:0;padding:8px 10px}.hero h1{font-size:clamp(40px,12vw,70px)}.hero h2 .phrase{display:block}.mobile-break{display:block}.profile{table-layout:fixed}.profile th{width:27%;padding-left:10px;padding-right:6px;white-space:nowrap}.profile td{padding-left:12px;padding-right:8px}.profile .company-name{font-size:clamp(11px,3.2vw,13px);white-space:nowrap}.group-link{padding:20px 16px;gap:12px}.group-link small{font-size:10px}.contact p{line-height:1.8}.message h2{font-size:clamp(22px,6vw,25px)}.footer-inner p{line-height:1.9}.button{gap:45px}}
.email-button{display:block;border:1px solid #a8b5c3;padding:16px 20px;text-decoration:none;margin-top:22px;transition:background .15s,color .15s}.email-label{display:block;font-size:12px;margin-bottom:3px}.email-address{display:flex;justify-content:space-between;gap:24px;font-size:15px;white-space:nowrap}.email-button:hover{background:#10263f;color:#fff}@media(max-width:760px){.contact>div{width:100%}.email-button{width:100%;max-width:360px;padding:16px}.email-address{font-size:clamp(13px,3.8vw,15px);gap:10px}}
.email-button{display:inline-block;width:auto;max-width:none;padding:8px 14px;margin-top:12px;border-color:#cbd2da;font-size:12px;color:#516073;line-height:1.7}.email-button:hover{background:#f1f3f5;color:#17283e}.email-label,.email-address{display:none}
.site-figure{margin:0 0 28px}.site-figure figcaption{font-size:10px;color:#73808d;margin-top:7px;line-height:1.6}.business-preview .site-figure{margin-bottom:25px}.business-row .site-figure{margin-top:25px}.message-preview{display:grid;grid-template-columns:1fr 1.2fr;gap:65px;align-items:center}.message-preview .site-figure{margin:0}.message-scenery{float:right;width:45%;margin:10px 0 25px 35px}.message:after{content:"";display:block;clear:both}@media(max-width:760px){.message-preview{grid-template-columns:1fr;gap:30px}.message-scenery{float:none;width:100%;margin:28px 0}.business-preview .site-figure{margin-bottom:20px}}
.site-figure{max-width:340px}.business-preview .site-figure{max-width:320px}.site-figure .image{height:170px;aspect-ratio:auto}.business-row .image{max-width:340px;height:180px;aspect-ratio:auto}.message-preview{grid-template-columns:1fr 340px;gap:45px}.message-preview .image{height:180px}.message-scenery{width:38%;max-width:280px}.message-scenery .image{height:160px}@media(max-width:760px){.business-preview .site-figure,.site-figure{max-width:260px}.site-figure .image,.business-row .image{height:140px;max-width:260px}.message-preview{grid-template-columns:1fr;gap:22px}.message-preview .site-figure{max-width:260px;order:-1}.message-preview .image{height:140px}.message-scenery{width:100%;max-width:240px;margin:22px 0}.message-scenery .image{height:130px}}
.back-home{display:block;width:fit-content;font-size:12px;color:#516073;text-decoration:none;margin-bottom:25px;padding:8px 0}.back-home:hover{text-decoration:underline}.bottom-return{padding-top:0;padding-bottom:35px}.bottom-return .back-home{margin-bottom:0}