/* FV以下（A案のテイストに合わせ3案共通） */
.da-body{--da-paper:#f5f1e8;--da-paper2:#fbf9f4;--da-ink:#3e352d;--da-sub:#655c4f;--da-green:#59634c;--da-line:#d9d0c0;background:var(--da-paper);color:var(--da-ink);font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;-webkit-font-smoothing:antialiased;line-height:1.9}
.da-body *{box-sizing:border-box}
.da-body h2,.da-body h3,.da-body p,.da-body ul,.da-body figure{margin:0;padding:0}
.da-body ul{list-style:none}
.da-body a{color:inherit;text-decoration:none}
.da-body a:focus-visible{outline:3px solid var(--da-green);outline-offset:5px}
.da-body h2{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-weight:500;font-size:34px;line-height:1.6;letter-spacing:.04em}
.da-body .da-label{font-size:11px;letter-spacing:.2em;color:var(--da-green);margin-bottom:18px}

/* About：左見出し・右本文、下に大小2枚 */
.da-body .da-about{padding:140px 0 150px;background:var(--da-paper2)}
.da-body .da-about-head{max-width:1120px;margin:0 auto;padding:0 40px;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}
.da-body .da-about-text{padding-top:34px}
.da-body .da-about-text p{font-size:15px;line-height:2.1;letter-spacing:.03em}
.da-body .da-about-text p+p{margin-top:18px;color:var(--da-sub);font-size:14px}
.da-body .da-about-photos{max-width:1200px;margin:90px auto 0;padding:0 40px;display:grid;grid-template-columns:680fr 420fr;gap:40px;align-items:start}
.da-body .da-photo img{display:block;width:100%;object-fit:cover;border-radius:2px}
.da-body .da-photo-main img{aspect-ratio:680/460;object-position:50% 50%}
.da-body .da-photo-sub{margin-top:160px}
.da-body .da-photo-sub img{aspect-ratio:420/300;object-position:45% 60%}
.da-body .da-photo figcaption{margin-top:10px;font-size:10px;line-height:1.6;color:var(--da-sub)}

/* Service：細線で区切る3つの文字導線 */
.da-body .da-service{max-width:1120px;margin:0 auto;padding:140px 40px 150px}
.da-body .da-service-list{margin-top:56px;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--da-line)}
.da-body .da-service-list li{padding:46px 40px 50px;display:flex;flex-direction:column;align-items:flex-start}
.da-body .da-service-list li:first-child{padding-left:0}
.da-body .da-service-list li+li{border-left:1px solid var(--da-line)}
.da-body .da-service-en{font-size:11px;letter-spacing:.18em;color:var(--da-green)}
.da-body .da-service-list h3{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-weight:500;font-size:24px;letter-spacing:.06em;margin:10px 0 14px}
.da-body .da-service-list li>p:not(.da-service-en){font-size:14px;color:var(--da-sub);margin-bottom:26px}
.da-body a.da-textlink{margin-top:auto;display:inline-flex;align-items:center;gap:18px;min-height:44px;padding:8px 0;font-size:13px;letter-spacing:.05em;color:var(--da-ink);border-bottom:1px solid #8a8a77}
.da-body a.da-textlink span{font-size:16px;transition:transform .18s}
.da-body a.da-textlink:hover span{transform:translateX(4px)}

/* For：オリーブの帯で節目 */
.da-body .da-for{background:var(--da-green);color:#fbf8f0}
.da-body .da-for-inner{max-width:1120px;margin:0 auto;padding:110px 40px;display:grid;grid-template-columns:5fr 7fr;gap:60px;align-items:center}
.da-body .da-for .da-label{color:#dfe2cf}
.da-body .da-for-text{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:26px;line-height:1.9;letter-spacing:.05em;padding-left:56px;border-left:1px solid #ffffff55}

/* Contact */
.da-body .da-contact{background:var(--da-paper)}
.da-body .da-contact-inner{max-width:1120px;margin:0 auto;padding:140px 40px 150px;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end}
.da-body .da-contact-note{margin-top:22px;font-size:14px;color:var(--da-sub)}
.da-body .da-contact-ways{display:grid;gap:0;border-top:1px solid var(--da-line)}
.da-body .da-contact-ways>div{padding:30px 0;border-bottom:1px solid var(--da-line)}
.da-body .da-contact-sub{font-size:12px;letter-spacing:.12em;color:var(--da-green);margin-bottom:8px}
.da-body .da-contact-tel a{display:inline-block;font-size:34px;letter-spacing:.08em;line-height:1.3;padding:4px 0}
.da-body .da-contact-tel p:last-child,.da-body .da-contact-mail p:last-child{font-size:12px;color:var(--da-sub);margin-top:6px}
.da-body a.da-btn{display:flex;align-items:center;justify-content:space-between;gap:36px;width:300px;max-width:100%;min-height:56px;padding:16px 24px;margin-top:6px;background:var(--da-green);color:#fffdf7;font-size:14px;letter-spacing:.05em;transition:background .18s}
.da-body a.da-btn:hover{background:#424b36}
.da-body a.da-btn span{font-size:21px;line-height:1}
.da-body .da-contact-mail p:last-child a{display:inline-block;padding:6px 0;border-bottom:1px solid #8a8a77}

/* Footer：文字ロゴ、左下の切り替え領域を空ける */
.da-body .da-footer{background:#3e352d;color:#efe8da;padding:64px 40px 120px;text-align:center}
.da-body .da-footer-logo{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-weight:600;font-size:24px;letter-spacing:.06em;color:#fbf9f4}
.da-body .da-footer-logo span{font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-size:12px;font-weight:400;letter-spacing:0;margin-left:6px}
.da-body .da-footer-info{margin-top:18px;font-size:12px;line-height:2}
.da-body .da-footer-info a{display:inline-block;padding:6px 2px;border-bottom:1px solid #efe8da66}
.da-body .da-footer-note{margin-top:22px;font-size:10px;color:#cfc6b6}
.da-body .da-footer-nav ul{margin-top:26px;display:flex;flex-wrap:wrap;justify-content:center;gap:0 30px}
.da-body .da-footer-nav a{display:inline-flex;align-items:center;min-height:44px;padding:0 2px;font-size:13px;letter-spacing:.05em;color:#efe8da}
.da-body .da-footer-nav a:hover{text-decoration:underline;text-underline-offset:5px}
.da-body .da-footer-nav a[aria-current="page"]{color:#fbf9f4;text-decoration:underline;text-underline-offset:5px}

/* TOPから下層ページへの導線 */
.da-body .da-more{margin-top:48px;display:flex}
.da-body .da-about .da-more{max-width:1120px;margin:56px auto 0;padding:0 40px}
.da-body .da-contact-more{margin-top:28px}

@media(prefers-reduced-motion:reduce){
.da-body a.da-btn,.da-body a.da-textlink span{transition:none}
}
