/* Scoped foundation: theme hooks remain intact; styles apply only to this template. */
html.tdh-document{font-size:16px!important}
body.tdh-page{padding:0!important;margin:0!important;background:#f5f6f2;min-width:0}
#tdh-homepage{isolation:isolate;width:100%;max-width:none;overflow-wrap:break-word;line-height:1.5;text-align:left;font-family:Manrope,"Noto Sans JP","Hiragino Kaku Gothic ProN",Meiryo,sans-serif}
#tdh-homepage *,#tdh-homepage *::before,#tdh-homepage *::after{box-sizing:border-box}
#tdh-homepage :where(h1,h2,h3,p,figure,dl,dd,nav,section,article,header,footer){padding:0;margin:0;border:0;background:none;color:inherit}
#tdh-homepage :where(h1,h2,h3)::before,#tdh-homepage :where(h1,h2,h3)::after{content:none}
#tdh-homepage :where(a,button,summary){font-family:inherit;text-transform:none;letter-spacing:inherit;border-radius:0;box-shadow:none}
#tdh-homepage :where(a){background:none;border:0}
#tdh-homepage :where(img){border:0;border-radius:0;box-shadow:none}
#tdh-homepage p{margin-bottom:1em}
#tdh-homepage{--green:#538234;--ink:#18231b;--paper:#f5f6f2;--muted:#626b60;--line:#d6dccf;--white:#fff;--accent:#dc241b;font-family:'Manrope','Noto Sans JP',sans-serif;color:var(--ink);background:var(--paper);font-size:16px}#tdh-homepage *{box-sizing:border-box}html.tdh-document{scroll-behavior:smooth;scroll-padding-top:100px}body.tdh-page{margin:0}#tdh-homepage a{color:inherit;text-decoration:none}#tdh-homepage button{font:inherit;color:inherit;cursor:pointer}#tdh-homepage button,#tdh-homepage a{-webkit-tap-highlight-color:transparent}#tdh-homepage button:focus-visible,#tdh-homepage a:focus-visible{outline:3px solid #d4241a;outline-offset:6px}#tdh-homepage img{display:block;max-width:100%}#tdh-homepage p{line-height:1.95}#tdh-homepage h1,#tdh-homepage h2,#tdh-homepage h3,#tdh-homepage p{margin-top:0}#tdh-homepage h2{font-weight:800;letter-spacing:-.055em;line-height:1.5;font-size:clamp(2rem,4.3vw,4.3rem)}#tdh-homepage [hidden]{display:none!important}#tdh-homepage .tdh-skip{position:fixed;top:-100px;z-index:90;background:#fff;padding:15px}#tdh-homepage .tdh-skip:focus{top:0}#tdh-homepage .tdh-header{height:92px;padding:0 3.2%;display:flex;gap:32px;align-items:center;background:var(--green);color:white;position:sticky;top:0;z-index:30;border-bottom:1px solid #ffffff22}#tdh-homepage .tdh-brand{width:270px;flex-shrink:0}#tdh-homepage .tdh-brand img{width:100%;height:auto}#tdh-homepage .tdh-nav{display:flex;gap:26px;margin-left:auto;font-size:14px;font-weight:600;white-space:nowrap}#tdh-homepage .tdh-nav a{position:relative;padding:14px 0}#tdh-homepage .tdh-nav a:after{content:'';height:1px;background:#fff;position:absolute;bottom:5px;left:0;width:0;transition:width .25s}#tdh-homepage .tdh-nav a:hover:after{width:100%}#tdh-homepage .tdh-contact-link{padding:14px 22px;border:1px solid #fff8;font-size:14px;white-space:nowrap;transition:.2s}#tdh-homepage .tdh-contact-link:hover{background:#fff;color:var(--green)}#tdh-homepage .tdh-menu-toggle{display:none;background:none;border:0;width:44px;height:44px}#tdh-homepage .tdh-menu-toggle span{display:block;height:1px;background:white;margin:8px 0}#tdh-homepage .tdh-mobile-menu{position:fixed;inset:76px 0 auto;background:var(--green);z-index:29;padding:28px;color:white;box-shadow:0 15px 30px #0002}#tdh-homepage .tdh-mobile-menu a{display:block;font-size:20px;padding:16px;border-top:1px solid #fff3}#tdh-homepage .tdh-hero{height:calc(100svh - 92px);min-height:630px;max-height:1050px;position:relative;color:white;overflow:hidden}#tdh-homepage .tdh-hero-photo{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 59%}#tdh-homepage .tdh-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,#061709aa,#071a0640 75%),linear-gradient(0deg,#09270b88,transparent 60%)}#tdh-homepage .tdh-hero-meta{position:absolute;top:32px;left:4.8%;right:4.8%;display:flex;justify-content:space-between;font-size:13px;letter-spacing:.12em}#tdh-homepage .tdh-hero-copy{position:absolute;left:7%;top:24%}#tdh-homepage .tdh-eyebrow{font-size:13px;letter-spacing:.14em;font-weight:700}#tdh-homepage .tdh-hero h1{font-size:clamp(3.2rem,6.7vw,7.5rem);line-height:1.35;letter-spacing:-.06em;font-weight:800;margin:28px 0}#tdh-homepage .tdh-hero h1 span{color:#e3f3ce}#tdh-homepage .tdh-hero-lead{font-size:17px;line-height:1.9}#tdh-homepage .tdh-hero-foot{position:absolute;left:4.8%;right:4.8%;bottom:30px;display:flex;align-items:flex-end;justify-content:space-between}#tdh-homepage .tdh-hero-foot p{margin:0;font-size:14px;text-align:center}#tdh-homepage .tdh-hero-index{font-size:14px;letter-spacing:.08em}#tdh-homepage .tdh-scroll-link{font-size:12px;letter-spacing:.13em;display:flex;align-items:center;gap:16px}#tdh-homepage .tdh-scroll-link span{height:48px;width:1px;background:#fffc}#tdh-homepage .tdh-intro-strip{display:flex;justify-content:space-between;gap:24px;background:var(--ink);color:#fff;padding:20px 4.8%;font-size:12px;letter-spacing:.13em}#tdh-homepage .tdh-section{padding:112px 7%}#tdh-homepage .tdh-section-label{display:flex;align-items:center;gap:20px;font-size:13px;font-weight:700;letter-spacing:.1em;margin-bottom:46px}#tdh-homepage .tdh-section-label>span{font-size:12px;display:inline-grid;place-items:center;width:29px;height:29px;border:1px solid currentColor;border-radius:50%;opacity:.65}#tdh-homepage .tdh-text-green{color:var(--green)}#tdh-homepage .tdh-about-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:12%}#tdh-homepage .tdh-about h2{margin:0}#tdh-homepage .tdh-about-copy{max-width:440px}#tdh-homepage .tdh-about-copy .tdh-large-copy{font-size:24px;line-height:1.8;font-weight:700;margin-bottom:34px}#tdh-homepage .tdh-about-copy p{color:#45503e}#tdh-homepage .tdh-text-link{display:flex;align-items:center;justify-content:space-between;font-size:15px;border-bottom:1px solid var(--ink);padding:14px 0;margin-top:24px;font-weight:600}#tdh-homepage .tdh-text-link span{font-size:25px}#tdh-homepage .tdh-history-line{margin-top:90px;border-top:1px solid var(--line);padding-top:36px;display:flex;align-items:center;gap:8%}#tdh-homepage .tdh-history-number{font-size:clamp(5rem,10vw,9rem);letter-spacing:-.075em;font-weight:500;line-height:1}#tdh-homepage .tdh-history-number span{font-size:18px;letter-spacing:0;margin-left:18px}#tdh-homepage .tdh-history-line p{font-size:15px;margin:0}#tdh-homepage .tdh-history-en{font-size:17px;line-height:1.6;font-weight:700;margin-left:auto;letter-spacing:.04em}#tdh-homepage .tdh-business{background:#e9eee2}#tdh-homepage .tdh-section-top{display:flex;justify-content:space-between;gap:50px;align-items:flex-end;margin-bottom:56px}#tdh-homepage .tdh-section-top .tdh-section-label{margin-bottom:26px}#tdh-homepage .tdh-section-top h2{margin-bottom:0}#tdh-homepage .tdh-section-top>p{font-size:16px;margin-bottom:12px}#tdh-homepage .tdh-business-layout{display:grid;grid-template-columns:1fr 1.4fr;gap:10%}#tdh-homepage .tdh-business-visual{align-self:start;margin-top:16px;position:sticky;top:125px}#tdh-homepage .tdh-business-visual>img{width:100%;height:300px;object-fit:cover;filter:saturate(.9)}#tdh-homepage .tdh-visual-caption{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid #bbc7b0;padding:19px 0;font-size:12px;font-weight:700;letter-spacing:.06em}#tdh-homepage .tdh-business-visual>p{font-size:14px;color:#4f5c45;margin-top:16px}#tdh-homepage .tdh-business-item{border-top:1px solid #b9c5ac}#tdh-homepage .tdh-business-item:last-child{border-bottom:1px solid #b9c5ac}#tdh-homepage .tdh-business-item h3{margin:0}#tdh-homepage .tdh-business-item summary{width:100%;padding:24px 0;display:flex;align-items:center;text-align:left;gap:28px;border:0;background:none;font-size:26px;font-weight:700}#tdh-homepage .tdh-business-item .tdh-num{font-family:Manrope,sans-serif;font-weight:400;font-size:14px;color:var(--green)}#tdh-homepage .tdh-toggle-symbol{margin-left:auto;font-weight:400}#tdh-homepage .tdh-business-description{padding:0 30px 25px 45px}#tdh-homepage .tdh-business-description p{font-size:15px;line-height:1.9;margin:0;color:#47543d}#tdh-homepage .tdh-business-item[open] summary{color:var(--green)}#tdh-homepage .tdh-work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}#tdh-homepage .tdh-work-card{min-width:0}#tdh-homepage .tdh-work-photo{overflow:hidden;aspect-ratio:4/3;background:#dce4d3}#tdh-homepage .tdh-work-photo img{width:100%;height:100%;object-fit:cover;transition:transform .6s}#tdh-homepage .tdh-work-card:hover .tdh-work-photo img{transform:scale(1.04)}#tdh-homepage .tdh-work-meta{display:flex;justify-content:space-between;gap:12px;margin:22px 0 14px;font-size:12px;color:var(--muted)}#tdh-homepage .tdh-work-card h3{font-size:19px;line-height:1.65;letter-spacing:-.015em;margin-bottom:18px}#tdh-homepage .tdh-work-card details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:14px}#tdh-homepage .tdh-work-card summary{cursor:pointer;padding:13px 0;list-style:none;display:flex;justify-content:space-between}#tdh-homepage .tdh-work-card summary:after{content:'＋'}#tdh-homepage .tdh-work-card details[open] summary:after{content:'−'}#tdh-homepage .tdh-work-card details p{padding-bottom:12px;margin:0;font-size:14px;color:var(--muted)}#tdh-homepage .tdh-work-card details a{text-decoration:underline;text-underline-offset:4px}#tdh-homepage .tdh-works-note{font-size:12px;color:var(--muted);margin:32px 0 0}#tdh-homepage .tdh-statement{position:relative;min-height:620px;display:flex;align-items:center;justify-content:center;text-align:center;color:white;overflow:hidden}#tdh-homepage .tdh-statement>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 80%}#tdh-homepage .tdh-statement-shade{position:absolute;inset:0;background:#071a0dcc}#tdh-homepage .tdh-statement>div:last-child{position:relative;padding:80px 24px}#tdh-homepage .tdh-statement h2{font-size:clamp(2.2rem,5vw,5rem);letter-spacing:-.05em}#tdh-homepage .tdh-statement p:last-child{font-size:17px;margin:0}#tdh-homepage .tdh-company{display:grid;grid-template-columns:1fr 1.1fr;gap:8%;background:white}#tdh-homepage .tdh-company h2{font-size:clamp(2rem,3.1vw,3rem)}#tdh-homepage .tdh-company p{color:var(--muted)}#tdh-homepage .tdh-company dl{margin:0}#tdh-homepage .tdh-company dl div{display:grid;grid-template-columns:100px 1fr;gap:24px;border-top:1px solid var(--line);padding:24px 0;font-size:15px;line-height:1.9}#tdh-homepage .tdh-company dl div:last-child{border-bottom:1px solid var(--line)}#tdh-homepage dt{color:var(--muted)}#tdh-homepage dd{margin:0;font-weight:500}#tdh-homepage .tdh-contact{background:var(--green);color:white}#tdh-homepage .tdh-contact-layout{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:8%}#tdh-homepage .tdh-contact h2{margin:0}#tdh-homepage .tdh-contact-layout>div>p:first-child{font-size:16px}#tdh-homepage .tdh-phone{display:block;font-family:Manrope,sans-serif;font-weight:500;font-size:clamp(1.7rem,3.4vw,3.4rem);letter-spacing:-.05em}#tdh-homepage .tdh-hours{font-size:13px;margin:10px 0 28px}#tdh-homepage .tdh-contact-button{display:flex;align-items:center;justify-content:space-between;gap:16px;background:white;color:var(--ink);padding:23px 24px;font-size:14px;font-weight:600;transition:.2s}#tdh-homepage .tdh-contact-button:hover{background:#e3f3ce}#tdh-homepage .tdh-footer{padding:48px 4.8% 25px;background:var(--ink);color:white;overflow:hidden}#tdh-homepage .tdh-footer-top{display:flex;align-items:center;justify-content:space-between}#tdh-homepage .tdh-footer .tdh-brand{width:250px}#tdh-homepage .tdh-back-top{background:none;color:white;border:1px solid #ffffff66;padding:13px 20px;font-size:13px}#tdh-homepage .tdh-footer-word{font-size:clamp(3rem,14.1vw,14rem);font-weight:600;letter-spacing:-.065em;line-height:1.3;margin-top:40px;white-space:nowrap;color:#ffffff20}#tdh-homepage .tdh-footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ffffff30;padding-top:24px;font-size:12px;color:#d7ddcf}#tdh-homepage .tdh-footer-bottom a{text-decoration:underline;text-underline-offset:4px}@media(min-width:1700px){#tdh-homepage .tdh-section{padding-left:max(7%,calc((100vw - 1460px)/2));padding-right:max(7%,calc((100vw - 1460px)/2))}}@media(max-width:1100px){#tdh-homepage .tdh-header{gap:20px}#tdh-homepage .tdh-brand{width:230px}#tdh-homepage .tdh-nav{gap:17px;font-size:13px}#tdh-homepage .tdh-contact-link{padding:12px}#tdh-homepage .tdh-about-grid{gap:7%}#tdh-homepage .tdh-business-layout{gap:7%}#tdh-homepage .tdh-business-visual>img{height:255px}#tdh-homepage .tdh-work-grid{gap:18px}#tdh-homepage .tdh-work-card h3{font-size:17px}}@media(max-width:900px){#tdh-homepage .tdh-header{height:76px;padding:0 5%}#tdh-homepage .tdh-nav,#tdh-homepage .tdh-header>.tdh-contact-link{display:none}#tdh-homepage .tdh-menu-toggle{display:block;margin-left:auto}#tdh-homepage .tdh-hero{height:calc(90svh - 76px);min-height:650px}#tdh-homepage .tdh-hero-copy{left:6%;top:26%}#tdh-homepage .tdh-hero h1{font-size:clamp(3rem,7.5vw,5rem)}#tdh-homepage .tdh-section{padding:80px 6%}#tdh-homepage .tdh-about-grid{grid-template-columns:1fr 1fr;gap:8%}#tdh-homepage .tdh-about h2{font-size:34px}#tdh-homepage .tdh-about-copy .tdh-large-copy{font-size:20px}#tdh-homepage .tdh-history-en{display:none}#tdh-homepage .tdh-section-top{gap:24px}#tdh-homepage .tdh-business-layout{grid-template-columns:1fr 1.4fr;gap:6%}#tdh-homepage .tdh-business-visual>img{height:220px}#tdh-homepage .tdh-visual-caption span:last-child{display:none}#tdh-homepage .tdh-business-item summary{font-size:23px;gap:20px}#tdh-homepage .tdh-business-description{padding-left:35px}#tdh-homepage .tdh-work-grid{grid-template-columns:1fr 1fr}#tdh-homepage .tdh-work-card:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:25px}#tdh-homepage .tdh-work-card:last-child .tdh-work-content{align-self:center}#tdh-homepage .tdh-company{grid-template-columns:1fr}#tdh-homepage .tdh-company dl{margin-top:12px}#tdh-homepage .tdh-contact-layout{grid-template-columns:1fr 1fr}#tdh-homepage .tdh-contact-button{line-height:1.6}#tdh-homepage .tdh-footer-bottom{flex-wrap:wrap}}@media(max-width:600px){html.tdh-document{scroll-padding-top:90px}#tdh-homepage .tdh-brand{width:232px}#tdh-homepage .tdh-hero{min-height:670px;max-height:820px}#tdh-homepage .tdh-hero-photo{object-position:48% center}#tdh-homepage .tdh-hero-meta{top:25px;left:6%;right:6%;font-size:12px}#tdh-homepage .tdh-hero-meta span:last-child{display:none}#tdh-homepage .tdh-hero-copy{top:25%;right:5%}#tdh-homepage .tdh-eyebrow{font-size:11px;letter-spacing:.08em}#tdh-homepage .tdh-hero h1{font-size:clamp(2.25rem,9.8vw,3.65rem);line-height:1.55;letter-spacing:-.065em;margin:24px 0}#tdh-homepage .tdh-hero-lead{font-size:15px}#tdh-homepage .tdh-hero-foot{bottom:27px;left:6%;right:6%}#tdh-homepage .tdh-hero-foot p{text-align:right;font-size:12px}#tdh-homepage .tdh-hero-index{display:none}#tdh-homepage .tdh-intro-strip{padding:17px 6%;font-size:11px}#tdh-homepage .tdh-intro-strip span:nth-child(2),#tdh-homepage .tdh-intro-strip span:last-child{display:none}#tdh-homepage .tdh-section{padding:68px 6%}#tdh-homepage .tdh-section-label{font-size:12px;gap:14px;margin-bottom:32px}#tdh-homepage h2{font-size:32px}#tdh-homepage .tdh-about-grid{grid-template-columns:1fr;gap:32px}#tdh-homepage .tdh-about h2{font-size:39px;line-height:1.5}#tdh-homepage .tdh-about-copy .tdh-large-copy{font-size:21px;margin-bottom:26px}#tdh-homepage .tdh-about-copy{max-width:none}#tdh-homepage .tdh-history-line{margin-top:45px;gap:20px;align-items:flex-end}#tdh-homepage .tdh-history-number{font-size:80px;white-space:nowrap}#tdh-homepage .tdh-history-number span{font-size:14px;margin-left:8px}#tdh-homepage .tdh-history-line p{font-size:12px;line-height:1.8}#tdh-homepage .tdh-section-top{display:block;margin-bottom:32px}#tdh-homepage .tdh-section-top>p{margin-top:26px;font-size:15px}#tdh-homepage .tdh-business-layout{display:flex;flex-direction:column-reverse;gap:30px}#tdh-homepage .tdh-business-visual{position:static;margin:0;display:grid;grid-template-columns:130px 1fr;column-gap:18px}#tdh-homepage .tdh-business-visual>img{width:130px;height:110px;grid-row:1/3}#tdh-homepage .tdh-visual-caption{padding:0 0 10px;font-size:12px;align-items:start}#tdh-homepage .tdh-business-visual>p{font-size:12px;margin-top:10px;line-height:1.7;margin-bottom:0}#tdh-homepage .tdh-business-item summary{padding:21px 0;font-size:23px}#tdh-homepage .tdh-business-description{padding:0 8px 24px 34px}#tdh-homepage .tdh-work-grid{grid-template-columns:1fr;gap:40px}#tdh-homepage .tdh-work-card:last-child{display:block;grid-column:auto;margin-top:0}#tdh-homepage .tdh-work-card h3{font-size:19px}#tdh-homepage .tdh-work-meta{margin:18px 0 10px}#tdh-homepage .tdh-statement{min-height:470px}#tdh-homepage .tdh-statement h2{font-size:36px}#tdh-homepage .tdh-statement p:last-child{font-size:15px}#tdh-homepage .tdh-company{gap:25px}#tdh-homepage .tdh-company h2{font-size:32px}#tdh-homepage .tdh-company dl div{grid-template-columns:76px 1fr;gap:16px;font-size:14px;padding:20px 0}#tdh-homepage .tdh-contact-layout{grid-template-columns:1fr;gap:36px}#tdh-homepage .tdh-contact h2{font-size:37px}#tdh-homepage .tdh-phone{font-size:38px}#tdh-homepage .tdh-contact-button{padding:20px;font-size:14px}#tdh-homepage .tdh-footer{padding:35px 6% 24px}#tdh-homepage .tdh-footer-top{gap:25px;flex-wrap:wrap}#tdh-homepage .tdh-footer .tdh-brand{width:230px}#tdh-homepage .tdh-footer-word{font-size:14vw;margin-top:35px;margin-bottom:22px}#tdh-homepage .tdh-footer-bottom{display:grid;gap:16px;line-height:1.7}#tdh-homepage .tdh-back-top{font-size:12px}#tdh-homepage .tdh-desktop-break{display:none}}@media(prefers-reduced-motion:reduce){html.tdh-document{scroll-behavior:auto}#tdh-homepage *,#tdh-homepage *:before,#tdh-homepage *:after{transition:none!important;animation:none!important}}@media(min-width:601px){#tdh-homepage .tdh-business-visual{max-width:259px}#tdh-homepage .tdh-business-visual>img{width:259px;height:194px}#tdh-homepage .tdh-visual-caption{flex-wrap:wrap}#tdh-homepage .tdh-visual-caption span:last-child{display:none}}#tdh-homepage .tdh-contact-button{margin-top:28px}#tdh-homepage a:focus-visible,#tdh-homepage button:focus-visible,#tdh-homepage summary:focus-visible{outline:3px solid white;outline-offset:3px;box-shadow:0 0 0 6px #18231b}#tdh-homepage .tdh-business-item .tdh-num{color:#3c6023}@media(max-width:600px){#tdh-homepage .tdh-eyebrow,#tdh-homepage .tdh-intro-strip{font-size:12px}}@media(max-width:600px){#tdh-homepage .tdh-header .tdh-brand{max-width:calc(100% - 64px)}#tdh-homepage .tdh-menu-toggle{flex:0 0 44px}}

/* Native details and useful navigation are available even if JavaScript fails. */
#tdh-homepage .tdh-business-item summary{cursor:pointer;list-style:none}
#tdh-homepage .tdh-business-item summary::-webkit-details-marker{display:none}
#tdh-homepage .tdh-business-item .tdh-toggle-symbol{font-size:0}
#tdh-homepage .tdh-business-item .tdh-toggle-symbol::after{content:'＋';font-size:26px}
#tdh-homepage .tdh-business-item[open] .tdh-toggle-symbol::after{content:'−'}
#tdh-homepage .tdh-mobile-menu{display:none}
#tdh-homepage .tdh-preview-banner{padding:16px 5%;background:#fff3cd;color:#332b00;font-size:14px;line-height:1.7}
#tdh-homepage .tdh-preview-banner a{text-decoration:underline;margin-left:1em}
body.admin-bar #tdh-homepage .tdh-header{top:32px}
@media(max-width:900px){
#tdh-homepage .tdh-menu-toggle{display:none}
#tdh-homepage.tdh-enhanced .tdh-menu-toggle{display:block}
#tdh-homepage .tdh-mobile-menu{display:block;position:static;box-shadow:none}
#tdh-homepage.tdh-enhanced .tdh-mobile-menu{position:fixed;inset:76px 0 auto;max-height:calc(100dvh - 76px);overflow-y:auto}
body.admin-bar #tdh-homepage.tdh-enhanced .tdh-mobile-menu{top:108px}
}
@media(max-width:782px){body.admin-bar #tdh-homepage .tdh-header{top:46px}body.admin-bar #tdh-homepage.tdh-enhanced .tdh-mobile-menu{top:122px}}
@media(max-width:600px){body.admin-bar #tdh-homepage .tdh-header{top:0}body.admin-bar #tdh-homepage.tdh-enhanced .tdh-mobile-menu{top:76px}}

/* SWELL can set fonts directly on headings, paragraphs and inline text.
   Restrict this deliberate override to our own content, leaving external icons,
   the WordPress admin bar and all other routes untouched. */
#tdh-homepage,#tdh-homepage *{font-family:Manrope,"Noto Sans JP","Hiragino Kaku Gothic ProN",Meiryo,sans-serif!important}
#tdh-homepage h1,#tdh-homepage h2,#tdh-homepage h3{font-style:normal}

/* Large responsive business imagery. Real hero/project photography is unchanged. */
#tdh-homepage .tdh-business-layout{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:6%}
#tdh-homepage .tdh-business-visual{max-width:600px;width:100%}
#tdh-homepage .tdh-business-visual>img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
#tdh-homepage .tdh-ai-label{font-size:12px;color:#45543c;line-height:1.6;margin:12px 0 0}
/* Keep every telephone digit at one size, even if theme scripts wrap parts. */
#tdh-homepage .tdh-phone{font-size:clamp(1.65rem,3.4vw,3.4rem)!important;font-weight:600!important;font-variant-numeric:lining-nums tabular-nums!important;font-feature-settings:"lnum" 1,"tnum" 1,"onum" 0!important;white-space:nowrap;line-height:1.4;letter-spacing:0!important}
#tdh-homepage .tdh-phone *{font-size:inherit!important;font-weight:inherit!important;line-height:inherit!important;letter-spacing:inherit!important;font-variant-numeric:inherit!important;font-feature-settings:inherit!important}
#tdh-homepage .tdh-contact-form{margin-top:56px;padding:clamp(24px,4vw,56px);background:#fff;color:#18231b;border-radius:4px}
#tdh-homepage .tdh-contact-form>h3{font-size:clamp(1.4rem,2.5vw,2rem);margin-bottom:28px;line-height:1.5}
#tdh-homepage .tdh-contact-form .wpforms-container{margin:0;color:#18231b}
#tdh-homepage .tdh-contact-form .wpforms-field-label{color:#18231b;font-size:16px;font-weight:700;line-height:1.6}
#tdh-homepage .tdh-contact-form :where(input[type=text],input[type=email],input[type=tel],input[type=number],input[type=url],textarea,select){max-width:100%;border:1px solid #aebba5;background:#f7f9f4;color:#18231b;border-radius:3px;font-size:16px;line-height:1.5}
#tdh-homepage .tdh-contact-form :where(input,textarea,select,button):focus-visible{outline:3px solid #538234;outline-offset:3px;box-shadow:none}
#tdh-homepage .tdh-contact-form .wpforms-submit{background:#538234;color:#fff;border:0;border-radius:3px;padding:16px 36px;font-size:16px;font-weight:700;min-height:52px;cursor:pointer}
#tdh-homepage .tdh-contact-form .wpforms-submit:hover{background:#3c6023}
#tdh-homepage .tdh-contact-form .wpforms-error{color:#a51e17}
#tdh-homepage .tdh-contact-form .wpforms-confirmation-container-full{color:#18231b;background:#edf5e7;border:1px solid #97b482}
@media(max-width:600px){#tdh-homepage .tdh-business-visual{display:block;max-width:none}#tdh-homepage .tdh-business-visual>img{width:100%;height:auto;grid-row:auto}#tdh-homepage .tdh-visual-caption{padding-top:16px}#tdh-homepage .tdh-phone{font-size:clamp(1.65rem,7.7vw,2.5rem)!important}#tdh-homepage .tdh-contact-form{margin-top:36px}}

#tdh-homepage .tdh-form-preview-note{padding:16px;background:#fff3cd;color:#332b00;font-size:14px;line-height:1.7;margin-bottom:24px}

/* Dedicated contact page; selected only for the resolved published contact page. */
#tdh-homepage .tdh-contact-intro{background:#538234;color:#fff;padding-top:80px;padding-bottom:72px}
#tdh-homepage .tdh-contact-intro h1{font-size:clamp(2.3rem,5.5vw,4.75rem);font-weight:800;line-height:1.4;letter-spacing:-.04em;margin:0 0 24px}
#tdh-homepage .tdh-contact-intro>p{font-size:18px;line-height:1.9}
#tdh-homepage .tdh-contact-phone-block{margin-top:40px;padding-top:28px;border-top:1px solid #ffffff55}
#tdh-homepage .tdh-contact-phone-block p{margin:0 0 10px;font-size:15px}
#tdh-homepage .tdh-contact-phone-block .tdh-phone{margin-bottom:12px}
#tdh-homepage .tdh-contact-page-form{max-width:1100px;margin:0 auto;padding-top:48px;padding-bottom:64px}
#tdh-homepage .tdh-contact-page-form .tdh-contact-form{margin-top:0}
#tdh-homepage .tdh-contact-form>h2{font-size:clamp(1.4rem,2.5vw,2rem);margin:0 0 28px;line-height:1.5;letter-spacing:0}
#tdh-homepage .tdh-contact-return{margin:28px 0 0;text-align:center}
#tdh-homepage .tdh-contact-return a,#tdh-homepage .tdh-form-preview-note a{text-decoration:underline;text-underline-offset:4px}
@media(max-width:600px){#tdh-homepage .tdh-contact-intro{padding-top:48px;padding-bottom:44px}#tdh-homepage .tdh-contact-intro>p{font-size:16px}#tdh-homepage .tdh-contact-page-form{padding-top:28px;padding-bottom:40px}}
