/*
Theme Name: L-Tech
Theme URI: https://example.com/ltech
Author: 株式会社オブセッシブ
Description: 株式会社L-Tech コーポレートサイト専用テーマ
Version: 1.0.0
Text Domain: ltech
*/

:root{--green:#153d2f;--deep:#0b211a;--lime:#b8d63b;--ink:#17201d;--gray:#f2f4f1;--line:#d9ded9}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:"Noto Sans JP",sans-serif;font-size:15px;line-height:1.9}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.header{height:92px;position:fixed;top:0;left:0;right:0;z-index:20;display:flex;align-items:center;padding:0 3vw;color:#fff;border-bottom:1px solid rgba(255,255,255,.24);transition:.3s}.header.scrolled{height:72px;color:var(--ink);background:rgba(255,255,255,.96);border-color:var(--line)}.logo{font:600 22px/1 Inter,sans-serif;letter-spacing:.08em}.logo span{color:var(--lime)}.nav{margin-left:auto;display:flex;align-items:center;gap:2.2vw;font:500 11px/1 Inter,sans-serif;letter-spacing:.12em}.nav-contact{padding:17px 23px;border:1px solid currentColor}.menu-button{display:none}.hero{height:100svh;min-height:650px;position:relative;color:#fff;overflow:hidden}.hero-media{position:absolute;inset:0;background:url('https://images.unsplash.com/photo-1500382017468-9049fed747ef?auto=format&fit=crop&w=2200&q=88') center/cover}.hero-video{width:100%;height:100%;object-fit:cover;display:block}.hero-shade{position:absolute;inset:0;background:rgba(3,24,17,.34)}.hero-copy{position:absolute;left:8vw;bottom:15vh;z-index:2}.eyebrow{font:500 11px/1.4 Inter,sans-serif;letter-spacing:.18em;margin:0 0 27px;color:#587165}.eyebrow.light{color:#c5d4cc}.hero h1{font-size:clamp(42px,5.8vw,88px);line-height:1.28;letter-spacing:.04em;font-weight:500;margin:0 0 30px}.hero-copy>p:last-child{font-size:17px;letter-spacing:.08em}.scroll{position:absolute;right:3vw;bottom:0;height:150px;display:flex;flex-direction:column;align-items:center;gap:15px;font:10px Inter;letter-spacing:.15em}.scroll i{width:1px;height:100px;background:#fff}.section{padding:140px 8vw}.section-label{display:flex;align-items:center;gap:20px;font:500 11px Inter;letter-spacing:.16em;margin-bottom:85px}.section-label span{color:#8c9993}.section-label:after{content:"";height:1px;background:var(--line);flex:1;margin-left:20px}.light-label:after{background:rgba(255,255,255,.2)}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:start}.intro h2,.section-title h2,.product h2,.company h2{font-size:clamp(38px,4.5vw,67px);line-height:1.35;letter-spacing:.04em;font-weight:500;margin:0}.lead-copy{font-size:17px;max-width:590px}.lead-copy p{margin:0 0 30px}.wide-image{height:590px;margin-top:110px}.image-field{background:url('images/1.jpg') center/cover}.dark{background:var(--deep);color:#fff}.future-head{text-align:center}.future-head h2{font-size:clamp(42px,5.2vw,76px);font-weight:500;line-height:1.45;margin:0}.tech-list{display:grid;grid-template-columns:repeat(4,1fr);margin-top:110px;border-top:1px solid rgba(255,255,255,.2)}.tech-list>div{padding:35px 28px 15px;border-right:1px solid rgba(255,255,255,.2)}.tech-list>div:last-child{border-right:0}.tech-list span{font:11px Inter;color:#81948a}.tech-list h3{font:500 15px Inter;letter-spacing:.1em;margin:55px 0 20px}.tech-list p{color:#bbc5c0;font-size:13px;line-height:1.8}.section-title{margin-bottom:75px}.business-list article{display:grid;grid-template-columns:1.1fr .9fr;min-height:520px;border-top:1px solid var(--line)}.business-list article:nth-child(even) .business-image{order:2}.business-list article:nth-child(even) .business-text{padding-left:0;padding-right:7vw}.business-image{min-height:420px}.image-drone{background:url('images/dr.jpg') center/cover}.image-machine{background:url('https://images.unsplash.com/photo-1592982537447-6f2a6a0c7c31?auto=format&fit=crop&w=1200&q=85') center/cover}.image-data{background:url('https://images.unsplash.com/photo-1586771107445-d3ca888129ff?auto=format&fit=crop&w=1200&q=85') center/cover}.image-product{background:url('images/5.jpg') center/cover}.business-text{padding:70px 0 60px 7vw}.business-text>span{font:11px Inter;color:#819087}.business-text h3{font-size:30px;font-weight:500;margin:25px 0}.business-text p{max-width:520px}.business-text ul{display:grid;grid-template-columns:1fr 1fr;list-style:none;padding:0;margin:35px 0 0;border-top:1px solid var(--line)}.business-text li{padding:13px 0;border-bottom:1px solid var(--line);font-size:13px}.farm{display:grid;grid-template-columns:1fr 1fr;min-height:760px;background:var(--green);color:#fff}.farm-photo{min-height:650px}.image-farm{background:url('https://images.unsplash.com/photo-1464226184884-fa280b87c399?auto=format&fit=crop&w=1400&q=87') center/cover}.farm-content{padding:100px 7vw}.farm-content h2{font-size:clamp(42px,5vw,70px);font-weight:500;margin:0 0 35px}.farm-lead{font-size:16px;max-width:560px}.farm-points{display:grid;grid-template-columns:1fr 1fr;margin-top:70px;border-top:1px solid rgba(255,255,255,.25)}.farm-points span{padding:20px 0;border-bottom:1px solid rgba(255,255,255,.25)}.goals{text-align:center}.goal-lines p{font-size:clamp(34px,5vw,72px);font-weight:500;letter-spacing:.06em;margin:0;line-height:1.55;opacity:.18;transition:.5s}.goal-lines p.visible{opacity:1}.product-grid{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}.product-image{height:740px}.image-vegetables{background:url('images/yasai2.jpg') center/cover}
.home-product .image-vegetables{background-image:url('images/yasai.jpg')}.product-copy>p:not(.eyebrow):not(.collab){font-size:16px;margin:35px 0}.product dl{margin-top:50px}.product dl div{display:flex;gap:30px;padding:17px 0;border-top:1px solid var(--line)}.product dt{font:11px Inter;color:#829087}.product dd{margin:0}.collab{margin-top:40px;padding:25px;border-left:3px solid var(--lime);background:var(--gray)}.gray{background:var(--gray)}.partner-cards{display:grid;grid-template-columns:1fr 1fr;gap:2vw}.partner-cards article{background:#fff;padding-bottom:45px}.partner-image{height:390px;margin-bottom:35px}.image-local{background:url('images/renkei.jpg') center/cover}.image-global{background:url('images/dr3.jpg') center/cover}.partner-cards span,.partner-cards h3,.partner-cards p{margin-left:40px;margin-right:40px}.partner-cards span{font:11px Inter;color:#87958e}.partner-cards h3{font-size:26px;font-weight:500}.partner-cards p{font-size:14px}.statement{margin-top:120px;padding-top:55px;border-top:1px solid #cbd1cc}.statement p{font-size:18px}.statement strong{display:block;font-size:clamp(42px,5.5vw,76px);line-height:1.35;font-weight:500}.news-head{display:flex;align-items:end;justify-content:space-between}.news-head h2{font-size:50px;font-weight:500;margin:0}.news-head a{font:11px Inter;letter-spacing:.14em}.news-list{margin-top:65px;border-top:1px solid var(--line)}.news-list a{display:grid;grid-template-columns:130px 110px 1fr auto;align-items:center;gap:20px;padding:25px 10px;border-bottom:1px solid var(--line)}.news-list time,.news-list em{font:11px Inter;color:#7e8d85;font-style:normal}.news-list p{margin:0}.company-grid{display:grid;grid-template-columns:1fr 1fr;gap:9vw}.message{color:#c4cec9}.signature{color:#fff;margin-top:45px}.company-info{margin-top:110px;border-top:1px solid rgba(255,255,255,.2)}.company-info dl{margin:0}.company-info dl div{display:grid;grid-template-columns:180px 1fr;padding:18px 0;border-bottom:1px solid rgba(255,255,255,.2)}.company-info dt{color:#8ca097}.company-info dd{margin:0}.contact{position:relative;overflow:hidden;text-align:center;padding-top:170px;padding-bottom:170px;color:#fff;background:url('images/future.jpg') center/cover no-repeat}.contact:before{content:"";position:absolute;inset:0;background:rgba(3,24,17,.52)}.contact-inner{position:relative;z-index:1}.contact .eyebrow{color:#c5d4cc}.contact h2{font-size:clamp(45px,6vw,82px);font-weight:500;margin:0 0 25px}.contact a{display:inline-flex;justify-content:space-between;align-items:center;min-width:330px;padding:20px 25px;margin-top:45px;border:1px solid rgba(255,255,255,.8);background:rgba(11,33,26,.72);color:#fff;transition:.3s}.contact a:hover{background:#fff;color:var(--deep)}.footer{background:#081611;color:#fff;padding:70px 8vw 35px;display:grid;grid-template-columns:1fr auto;gap:55px;align-items:start}.footer-logo{display:block;width:min(420px,100%)}.footer-logo img{display:block;width:100%;height:auto}.footer-links{display:flex;gap:30px;font-size:12px}.footer>p{grid-column:1/-1;color:#6f7e77;font:10px Inter}.sp{display:none}@media(max-width:900px){.header{height:70px;padding:0 22px}.nav{position:fixed;inset:0;background:var(--deep);color:#fff;display:flex;flex-direction:column;justify-content:center;gap:30px;opacity:0;visibility:hidden;transition:.3s}.nav.open{opacity:1;visibility:visible}.menu-button{display:flex;position:relative;z-index:22;margin-left:auto;width:34px;height:30px;border:0;background:none;flex-direction:column;justify-content:center;gap:7px}.menu-button span{height:1px;background:currentColor;width:100%}.section{padding:90px 24px}.section-label{margin-bottom:55px}.intro-grid,.product-grid,.company-grid{grid-template-columns:1fr;gap:45px}.wide-image{height:430px;margin-top:65px}.tech-list{grid-template-columns:1fr 1fr}.business-list article{grid-template-columns:1fr}.business-list article:nth-child(even) .business-image{order:0}.business-list article:nth-child(even) .business-text,.business-text{padding:45px 10px 70px}.farm{grid-template-columns:1fr}.farm-photo{min-height:500px}.partner-cards{grid-template-columns:1fr;gap:30px}.product-image{height:520px}.footer{grid-template-columns:1fr}.footer-links{flex-wrap:wrap}}@media(max-width:560px){body{font-size:14px}.hero-copy{left:24px;right:24px;bottom:15vh}.hero h1{font-size:41px}.sp{display:block}.section-label:after{margin-left:5px}.intro h2,.section-title h2,.product h2,.company h2{font-size:37px}.wide-image{height:310px;margin-left:-24px;margin-right:-24px}.tech-list{grid-template-columns:1fr;margin-top:60px}.tech-list>div{border-right:0;border-bottom:1px solid rgba(255,255,255,.2)}.tech-list h3{margin-top:25px}.business-image{min-height:300px}.business-text ul{grid-template-columns:1fr}.farm-photo{min-height:360px}.farm-content{padding:70px 24px}.farm-points{grid-template-columns:1fr}.goal-lines p{font-size:30px;margin:16px 0}.product-image{height:390px}.partner-image{height:280px}.partner-cards span,.partner-cards h3,.partner-cards p{margin-left:25px;margin-right:25px}.statement{margin-top:75px}.statement strong{font-size:38px}.news-list a{grid-template-columns:90px 1fr auto;gap:10px}.news-list em{display:none}.news-list p{grid-column:1/-1}.company-info dl div{grid-template-columns:1fr;gap:5px}.contact a{min-width:100%}.footer-links{flex-direction:column;gap:12px}}

/* Lower pages */
.sub-header{background:rgba(255,255,255,.96);color:var(--ink);border-color:var(--line)}.nav a.active{opacity:.45}.page-hero{height:64vh;min-height:500px;position:relative;color:#fff;background:var(--page-image) center/cover;margin-top:0}.page-hero-shade{position:absolute;inset:0;background:rgba(3,24,17,.35)}.page-hero-copy{position:absolute;left:8vw;bottom:10vh;z-index:1}.page-hero-copy p{font:500 11px Inter;letter-spacing:.2em}.page-hero-copy h1{font-size:clamp(44px,6vw,84px);font-weight:500;margin:12px 0 0;letter-spacing:.05em}.detail-intro h2,.detail-two h2,.contact-page h2{font-size:clamp(38px,4.5vw,67px);line-height:1.35;font-weight:500;margin:0}.detail-two{display:grid;grid-template-columns:1fr 1fr;gap:9vw}.clean-list{list-style:none;padding:0;margin:40px 0 0;border-top:1px solid currentColor}.clean-list li{padding:15px 0;border-bottom:1px solid rgba(128,128,128,.35)}.cms-note{margin-top:40px;padding:25px;background:var(--gray)}.contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:10vw}.contact-form{display:grid;gap:28px}.contact-form label{display:grid;gap:10px;font-size:13px}.contact-form label span{font-size:10px;color:#8b3b2f;margin-left:8px}.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:0;border-bottom:1px solid var(--line);background:#fff;padding:14px 5px;font:inherit;border-radius:0}.contact-form textarea{border:1px solid var(--line);padding:15px}.contact-form button{border:0;background:var(--green);color:#fff;padding:21px 25px;font:inherit;display:flex;justify-content:space-between}.footer-links{max-width:700px;justify-content:flex-end;flex-wrap:wrap}@media(max-width:900px){.detail-two,.contact-layout{grid-template-columns:1fr;gap:45px}.page-hero{height:55vh}.sub-header .nav{background:var(--deep);color:#fff}}@media(max-width:560px){.page-hero{min-height:420px}.page-hero-copy{left:24px;bottom:55px}.page-hero-copy h1{font-size:42px}}
/* TOP page overview links */
.read-more{display:inline-flex;align-items:center;justify-content:space-between;gap:55px;min-width:190px;margin-top:28px;padding:14px 0;border-bottom:1px solid currentColor;font:500 11px/1 Inter,sans-serif;letter-spacing:.16em;transition:.25s}.read-more:hover{gap:70px;opacity:.65}.light-more{color:#fff}.image-link{display:block;transition:opacity .3s}.image-link:hover{opacity:.88}.split-title{display:grid;grid-template-columns:1fr .8fr;gap:9vw;align-items:end}.split-title>div:last-child{max-width:530px}.business-summary{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.business-summary a{min-height:260px;padding:38px 28px;border-right:1px solid var(--line);transition:.25s}.business-summary a:last-child{border-right:0}.business-summary a:hover{background:#fff}.business-summary span{font:11px Inter;color:#87958e}.business-summary h3{font-size:21px;font-weight:500;line-height:1.5;margin:45px 0 18px}.business-summary p{font-size:13px;line-height:1.8;margin:0}.home-product .product-image{height:610px}.home-partners a{display:block;background:#fff;padding-bottom:35px;transition:.25s}.home-partners a:hover{opacity:.82}.home-partners h3{margin-bottom:0}.farm-content>.read-more{margin-top:48px}@media(max-width:900px){.split-title{grid-template-columns:1fr;gap:35px}.business-summary{grid-template-columns:1fr 1fr}.business-summary a:nth-child(2){border-right:0}.business-summary a:nth-child(-n+2){border-bottom:1px solid var(--line)}}@media(max-width:560px){.business-summary{grid-template-columns:1fr}.business-summary a{min-height:0;border-right:0;border-bottom:1px solid var(--line)}.business-summary a:last-child{border-bottom:0}.business-summary h3{margin-top:25px}.home-product .product-image{height:390px}}


/* 2026-07 requested revisions */
.image-farm{background-image:linear-gradient(rgba(5,31,22,.08),rgba(5,31,22,.08)),url('images/dr.jpg');background-position:center;background-size:cover}
.image-machine{background-image:linear-gradient(rgba(5,31,22,.06),rgba(5,31,22,.06)),url('https://images.unsplash.com/photo-1495107334309-fcf20504a5ab?auto=format&fit=crop&w=1600&q=88');background-position:center;background-size:cover;background-repeat:no-repeat}
.brand-highlight{display:inline-block;margin:0 0 22px;padding:9px 15px;background:var(--lime);color:var(--deep);font-size:clamp(20px,2.1vw,31px);font-weight:600;line-height:1.35;letter-spacing:.05em}
.after-list-copy{margin-top:32px;color:#d5ddd9;font-size:16px}
.goals-photo{position:relative;overflow:hidden;background:url('images/1.jpg') center 54%/cover;color:#fff}
.goals-photo:before{content:"";position:absolute;inset:0;background:rgba(7,31,23,.68)}
.goals-photo>*{position:relative;z-index:1}
.goals-photo .eyebrow{color:#c5d4cc}
.goal-lines p{transform:translateY(22px);opacity:0;transition:opacity .7s ease,transform .7s ease}
.goal-lines p.visible{opacity:1;transform:translateY(0)}
.product dt{color:var(--green);font-size:18px;font-weight:600;min-width:34px}
.partnership-page .section-title{margin-bottom:100px}
.partnership-detail{display:grid;grid-template-columns:1fr 1fr;min-height:590px;background:#fff;margin-top:34px}
.partnership-detail.reverse .partnership-detail-image{order:2}
.partnership-detail-image{min-height:470px;background-size:cover;background-position:center}
.partnership-detail-copy{padding:70px 6vw}
.partnership-detail-copy h3,.verification-block h3{font-size:clamp(30px,3.4vw,50px);font-weight:500;line-height:1.4;margin:0 0 28px}
.partnership-subtitle{font-weight:500;margin-bottom:28px}
.numbered-list{counter-reset:item}
.numbered-list li{position:relative;padding-left:44px}
.numbered-list li:before{counter-increment:item;content:"0" counter(item);position:absolute;left:0;color:var(--green);font:600 12px Inter}
.compact-list{display:grid;grid-template-columns:1fr 1fr;column-gap:25px}
.verification-block{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;margin-top:100px;padding:80px 6vw;background:var(--deep);color:#fff}
.verification-block .eyebrow{color:#aabdb3}
.verification-grid{list-style:none;padding:0;margin:35px 0 0;display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(255,255,255,.22)}
.verification-grid li{padding:19px 0;border-bottom:1px solid rgba(255,255,255,.22)}
.verification-grid li:nth-child(odd){padding-right:20px}
.verification-grid span{display:inline-block;min-width:38px;color:var(--lime);font:11px Inter}
.article-header{padding-top:190px;padding-bottom:70px;max-width:1180px;margin:auto}
.article-back{display:inline-flex;gap:18px;font:500 11px Inter;letter-spacing:.13em;color:#687a71}
.article-meta{display:flex;gap:25px;margin:75px 0 25px;font:500 11px Inter;letter-spacing:.1em;color:#718079}
.article-meta span{color:var(--green)}
.article-header h1{font-size:clamp(38px,5vw,68px);line-height:1.45;font-weight:500;max-width:1000px;margin:0}
.article-body{padding-top:0;max-width:1180px;margin:auto}
.article-image{margin:0 0 80px}
.article-image img{width:100%;height:min(62vw,680px);object-fit:cover}
.article-content{max-width:780px;margin:auto;font-size:16px;line-height:2.1}
.article-content h2{font-size:30px;font-weight:500;line-height:1.5;margin:70px 0 25px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.article-back.bottom{display:flex;justify-content:space-between;max-width:780px;margin:90px auto 0;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
@media(max-width:900px){.partnership-detail{grid-template-columns:1fr}.partnership-detail.reverse .partnership-detail-image{order:0}.partnership-detail-copy{padding:55px 35px}.verification-block{grid-template-columns:1fr}.article-header{padding-top:140px}.article-image{margin-bottom:50px}}
@media(max-width:560px){.brand-highlight{font-size:20px}.compact-list{grid-template-columns:1fr}.verification-grid{grid-template-columns:1fr}.partnership-detail-copy{padding:45px 24px}.article-header{padding-top:120px}.article-meta{margin-top:55px}.article-body{padding-left:24px;padding-right:24px}.article-image{margin-left:-24px;margin-right:-24px}.article-content h2{font-size:24px}}

.company-related-links {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 24px;
}
.company-related-links a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 4px;
}
.company-related-links a:hover {
  opacity: .7;
}

/* TOP FV scroll indicator: keep original design, animate only the line */
.scroll i {
  position: relative;
  overflow: hidden;
  background: rgba(255,255,255,.35);
}
.scroll i::after {
  content: "";
  position: absolute;
  left: 0;
  top: -100%;
  width: 1px;
  height: 100%;
  background: #fff;
  animation: scrollLineMove 2s cubic-bezier(.65,0,.35,1) infinite;
}
@keyframes scrollLineMove {
  0% { top: -100%; }
  55%, 100% { top: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .scroll i::after { animation: none; top: 0; }
}

/* Keep the scroll line attached to the bottom edge of the viewport */
.scroll i {
  flex: 1 1 auto;
  height: auto;
  min-height: 0;
}

.sp-menu-logo{display:none}
@media(max-width:900px){
  .sp-menu-logo{display:block!important;margin-bottom:18px;width:max-content}
  .sp-menu-logo img{display:block;width:auto;height:42px;object-fit:contain}
}

/* Page entrance and scroll reveal */
.js body {
  opacity: 0;
  transition: opacity .85s ease;
}
.js body.page-loaded {
  opacity: 1;
}
.scroll-reveal {
  opacity: 0;
  transform: translateY(34px);
  transition: opacity .9s cubic-bezier(.22,1,.36,1), transform .9s cubic-bezier(.22,1,.36,1);
  will-change: opacity, transform;
}
.scroll-reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
}
.scroll-reveal[data-reveal-delay="1"] { transition-delay: .08s; }
.scroll-reveal[data-reveal-delay="2"] { transition-delay: .16s; }
.scroll-reveal[data-reveal-delay="3"] { transition-delay: .24s; }
.scroll-reveal[data-reveal-delay="4"] { transition-delay: .32s; }
@media (prefers-reduced-motion: reduce) {
  .js body,
  .scroll-reveal {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
}

/* Header logo image */
.logo-image{display:flex;align-items:center;width:58px;height:58px;overflow:hidden;flex:0 0 auto}
.logo-image img{display:block;width:100%;height:100%;object-fit:cover}
.header.scrolled .logo-image{width:48px;height:48px}
@media(max-width:900px){.logo-image{width:44px;height:44px}.header.scrolled .logo-image{width:42px;height:42px}}

/* Footer logo size adjustment */
.footer-logo{width:220px;max-width:100%;overflow:hidden}
.footer-logo img{width:100%;height:auto}
@media(max-width:900px){
  .footer-logo{width:180px}
}

/* Footer company information */
.footer-brand{display:flex;flex-direction:column;align-items:flex-start;gap:16px}
.footer-address{margin:0;color:#a7b2ac;font-size:11px;line-height:1.8;letter-spacing:.04em}
@media(max-width:560px){
  .footer-brand{gap:14px}
  .footer-address{font-size:10px;line-height:1.7}
}

/* SP hamburger color: white over the TOP FV, dark after the header turns white */
@media (max-width:900px){
  .menu-button{color:inherit}
  .header:not(.scrolled):not(.sub-header) .menu-button{color:#fff}
  .header.scrolled .menu-button,
  .header.sub-header .menu-button{color:var(--ink)}
  .nav.open + .menu-button,
  .menu-button[aria-expanded="true"]{color:#fff}
}


/* Company background image */
.company {
  background:
    linear-gradient(rgba(3,24,17,.62), rgba(3,24,17,.62)),
    url('images/com.jpg') center center / cover no-repeat;
  color:#fff;
}

/* Contact title line-break adjustment */
.contact-title{line-height:1.25!important}.contact-title span{display:inline}.contact-title span+span:before{content:""}@media(max-width:560px){.contact-title{line-height:1.18!important}.contact-title span{display:block}}

/* PRODUCT item list alignment */
.product-copy dl {
  margin: 50px 0 0;
}
.product-copy dl > div {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  column-gap: 0;
  align-items: baseline;
  padding: 17px 0;
  border-top: 1px solid var(--line);
}
.product-copy dl > div:last-child {
  border-bottom: 1px solid var(--line);
}
.product-copy dt {
  margin: 0;
  color: var(--green);
  font: 500 14px/1.9 Inter, sans-serif;
  letter-spacing: .04em;
}
.product-copy dd {
  margin: 0;
}

/* TOP contact copy: controlled mobile line break */
.sp-contact-break{display:none}
@media(max-width:560px){
  .sp-contact-break{display:block}
}

/* Header logo: white-letter version over the FV, black-letter version on white header */
.logo-image{
  position:relative;
  display:block;
  width:clamp(210px,20vw,300px);
  height:56px;
  overflow:visible;
  flex:0 0 auto;
}
.logo-image img{
  position:absolute;
  left:0;
  top:50%;
  width:100%;
  height:auto;
  max-height:56px;
  object-fit:contain;
  object-position:left center;
  transform:translateY(-50%);
  transition:opacity .25s ease;
}
.logo-image .logo-light{opacity:1}
.logo-image .logo-dark{opacity:0}
.header.scrolled .logo-image,
.header.sub-header .logo-image{
  width:clamp(210px,20vw,300px);
  height:52px;
}
.header.scrolled .logo-image .logo-light,
.header.sub-header .logo-image .logo-light{opacity:0}
.header.scrolled .logo-image .logo-dark,
.header.sub-header .logo-image .logo-dark{opacity:1}

@media(max-width:900px){
  .logo-image,
  .header.scrolled .logo-image,
  .header.sub-header .logo-image{
    width:190px;
    height:44px;
  }
  .logo-image img{max-height:44px}
  .sp-menu-logo{width:190px!important}
  .sp-menu-logo img{width:100%!important;height:auto!important;max-height:44px;object-fit:contain;object-position:left center}
}
@media(max-width:560px){
  .logo-image,
  .header.scrolled .logo-image,
  .header.sub-header .logo-image{
    width:170px;
  }
  .sp-menu-logo{width:170px!important}
}

/* Contact Form 7 integration */
.contact-form .wpcf7-form-control-wrap{display:block}
.contact-form .wpcf7-not-valid-tip{font-size:12px;color:#b33;margin-top:6px}
.contact-form .wpcf7-response-output{margin:24px 0 0!important;padding:14px 18px!important;border-width:1px!important}
.contact-form input[type="submit"]{width:100%;border:0;background:var(--deep);color:#fff;padding:22px 28px;font:500 14px/1.4 "Noto Sans JP",sans-serif;cursor:pointer}
