:root{--refresh-max:1200px;--refresh-green:#7ac142;}

/* feature strip */
.astkohth-refresh-strip{max-width:var(--refresh-max);margin:0 auto;padding:16px 20px;box-sizing:border-box;display:flex;flex-direction:column;gap:8px;}
.astkohth-refresh-strip-item{display:flex;align-items:center;justify-content:center;gap:8px;font-size:12.5px;color:#333333;text-align:center;padding:6px 0;}
.astkohth-refresh-strip-icon{width:5px;height:5px;border-radius:50%;background:var(--refresh-green);flex-shrink:0;display:inline-block;}
.astkohth-refresh-strip-divider{display:none;}
@media (max-width:640px){
.astkohth-refresh-strip-item:first-child{margin-bottom:76px;}
}
@media (min-width:641px){
.astkohth-refresh-strip{flex-direction:row;justify-content:center;align-items:stretch;gap:0;padding:20px 24px;}
.astkohth-refresh-strip-item{font-size:13px;padding:0 28px;}
.astkohth-refresh-strip-divider{display:block;width:1px;align-self:stretch;background:#e6e6e6;margin:2px 0;}
}

/* ABOUT */
.astkohth-refresh-about{max-width:var(--refresh-max);margin:0 auto;padding:44px 20px;box-sizing:border-box;}
.astkohth-refresh-about-text{max-width:560px;}
.astkohth-refresh-about-text h2{font-size:21px;margin:0 0 20px;padding:0 0 14px!important;color:#111111!important;font-weight:700;background:transparent!important;box-shadow:none!important;border-bottom:1px solid #e6e6e6;}
.astkohth-refresh-about-text p{font-size:14px;line-height:1.9;color:#444444;margin:0 0 16px;}
.astkohth-refresh-about-text p:last-child{margin-bottom:0;}
.astkohth-refresh-about-cards{display:flex;flex-direction:column;gap:14px;margin-top:28px;}
.astkohth-refresh-about-card{display:flex;align-items:center;gap:16px;min-height:92px;padding:14px 16px;border:1px solid #eeeeee;border-radius:6px;background:#fafafa;box-sizing:border-box;}
.astkohth-refresh-about-card-logo{width:auto;height:48px;flex-shrink:0;display:flex;align-items:center;justify-content:center;}
.astkohth-refresh-about-card-logo img{display:block;width:auto;height:auto;object-fit:contain;}
.astkohth-refresh-about-card--carzoo .astkohth-refresh-about-card-logo img{max-width:52px;max-height:46px;}
.astkohth-refresh-about-card--ones .astkohth-refresh-about-card-logo img{max-width:92px;max-height:38px;}
.astkohth-refresh-about-card--snet .astkohth-refresh-about-card-logo img{max-width:48px;max-height:48px;}
.astkohth-refresh-about-card-name{font-size:13px;font-weight:700;color:#222222;text-align:left;word-break:keep-all;overflow-wrap:break-word;}
@media (min-width:641px){
.astkohth-refresh-about{padding:64px 24px;display:flex;gap:48px;align-items:flex-start;}
.astkohth-refresh-about-text{flex:0 1 560px;}
.astkohth-refresh-about-cards{flex:1 1 auto;margin-top:0;max-width:352px;}
}
@media (min-width:768px){
.astkohth-refresh-about-card-name{white-space:nowrap;}
}
@media (min-width:1280px){
.astkohth-refresh-about{padding:84px 24px;gap:56px;}
}

/* SERVICE (3事業への入口) */
.astkohth-refresh-service{background:#f6f6f6;padding:44px 20px 52px;box-sizing:border-box;}
.astkohth-refresh-label{font-size:12px;letter-spacing:3px;color:#999999;margin:0 0 10px;text-transform:uppercase;text-align:center;}
.astkohth-refresh-service h2{font-size:22px;margin:0 0 10px;color:#111111!important;font-weight:700;text-align:center;background:transparent!important;padding:0!important;box-shadow:none!important;}
.astkohth-refresh-service-sub{font-size:14px;color:#555555;margin:0 0 32px;text-align:center;}
.astkohth-refresh-service-grid{display:flex;flex-direction:column;gap:16px;max-width:var(--refresh-max);margin:0 auto 28px;}
.astkohth-refresh-service-row{display:flex;flex-direction:column;gap:16px;}
.astkohth-refresh-card{background:#ffffff;border:1px solid #ececec;border-radius:8px;text-align:center;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;box-shadow:0 1px 3px rgba(0,0,0,.04);transition:transform .25s ease,box-shadow .25s ease;}
.astkohth-refresh-card:hover{transform:translateY(-3px);box-shadow:0 8px 20px rgba(0,0,0,.08);}
.astkohth-refresh-card-logo{display:flex;align-items:center;justify-content:center;margin:0 auto;flex-shrink:0;}
.astkohth-refresh-card-logo img{max-height:100%;max-width:100%;width:auto;height:auto;object-fit:contain;display:block;}
.astkohth-refresh-card h3{font-weight:700;color:#111111;margin:0;}
.astkohth-refresh-card p{color:#666666;margin:0;line-height:1.7;}
.astkohth-refresh-card a{display:inline-block;text-decoration:none;font-weight:700;white-space:nowrap;}
.astkohth-refresh-card--primary{padding:30px 24px;border-top:3px solid var(--refresh-green);border-radius:10px;}
.astkohth-refresh-card-inner{display:flex;flex-direction:column;align-items:center;width:100%;}
.astkohth-refresh-card--primary .astkohth-refresh-card-logo{width:100px;height:58px;margin-bottom:16px;}
.astkohth-refresh-card--primary h3{font-size:20px;margin-bottom:8px;}
.astkohth-refresh-card--primary p{font-size:14px;margin-bottom:20px;max-width:480px;}
.astkohth-refresh-card--primary a{padding:13px 34px;background:#111111;color:#ffffff;font-size:13.5px;letter-spacing:1px;border-radius:3px;}
.astkohth-refresh-card--secondary{flex:1 1 0;padding:24px 20px;border-top:2px solid #e2001a;}
.astkohth-refresh-card--secondary .astkohth-refresh-card-logo{width:180px;height:50px;margin-bottom:14px;}
.astkohth-refresh-card--secondary h3{font-size:15px;margin-bottom:6px;}
.astkohth-refresh-card--secondary p{font-size:13px;margin-bottom:16px;}
.astkohth-refresh-card--secondary a{padding:9px 24px;background:#111111;color:#ffffff;font-size:11.5px;letter-spacing:1px;border-radius:3px;}
.astkohth-refresh-card--subdued{flex:1 1 0;padding:22px 18px;background:#fafafa;border-top:1px solid #e6e6e6;}
.astkohth-refresh-card--subdued .astkohth-refresh-card-logo{width:80px;height:52px;margin-bottom:12px;opacity:.85;}
.astkohth-refresh-card--subdued h3{font-size:13.5px;margin-bottom:6px;color:#333333;}
.astkohth-refresh-card--subdued p{font-size:12px;margin-bottom:14px;color:#888888;}
.astkohth-refresh-card--subdued a{padding:8px 20px;background:#ffffff;color:#222222;border:1px solid #666666;font-size:11px;letter-spacing:1px;border-radius:3px;transition:background-color .22s ease,color .22s ease,transform .22s ease;}
.astkohth-refresh-card--subdued a:hover{background:#111111;color:#ffffff;transform:translateY(-2px);}
.astkohth-refresh-service-more{text-align:center;}
.astkohth-refresh-service-more a{display:inline-block;padding:12px 32px;border:1px solid #666666;color:#222222;text-decoration:none;font-size:13px;letter-spacing:1px;border-radius:3px;transition:background-color .22s ease,color .22s ease,transform .22s ease;}
.astkohth-refresh-service-more a:hover{background:#111111;color:#ffffff;transform:translateY(-2px);}
@media (min-width:641px){
.astkohth-refresh-service{padding:64px 24px 72px;}
.astkohth-refresh-service-grid{gap:24px;margin-bottom:36px;}
.astkohth-refresh-service-row{gap:24px;flex-direction:row;}
.astkohth-refresh-card-inner{flex-direction:row;text-align:left;gap:32px;align-items:center;}
.astkohth-refresh-card--primary .astkohth-refresh-card-logo{width:110px;height:72px;margin-bottom:0;}
.astkohth-refresh-card--primary p{margin-bottom:0;}
.astkohth-refresh-card-body{flex:1 1 auto;}
.astkohth-refresh-card-body h3{margin-bottom:8px;}
.astkohth-refresh-card-cta{flex-shrink:0;}
.astkohth-refresh-card--secondary .astkohth-refresh-card-logo{width:210px;height:62px;}
.astkohth-refresh-card--subdued .astkohth-refresh-card-logo{width:80px;height:60px;}
}
@media (min-width:1280px){
.astkohth-refresh-service{padding:88px 24px 96px;}
.astkohth-refresh-service-grid{gap:28px;}
.astkohth-refresh-service-row{gap:28px;}
}

/* COMPANY */
.astkohth-refresh-company{background:#fafafa;padding:46px 20px;box-sizing:border-box;text-align:center;}
.astkohth-refresh-company-inner{max-width:960px;margin:0 auto;}
.astkohth-refresh-company-inner h2{font-size:22px;margin:0 0 16px;color:#111111!important;font-weight:700;text-align:center;background:transparent!important;padding:0!important;box-shadow:none!important;}
.astkohth-refresh-company-text{font-size:14px;color:#555555;margin:0 0 28px;line-height:1.9;max-width:520px;margin-left:auto;margin-right:auto;}
.astkohth-refresh-outline-btn{display:inline-block;padding:12px 32px;border:1px solid #666666;color:#222222;text-decoration:none;font-size:13px;letter-spacing:1px;border-radius:3px;transition:background-color .22s ease,color .22s ease,transform .22s ease;}
.astkohth-refresh-outline-btn:hover{background:#111111;color:#ffffff;transform:translateY(-2px);}
@media (min-width:641px){
.astkohth-refresh-company{padding:64px 24px;}
}
@media (min-width:1280px){
.astkohth-refresh-company{padding:66px 24px;}
}

/* CONTACT */
.astkohth-refresh-contact{background:#111111;color:#ffffff;text-align:center;padding:60px 20px;box-sizing:border-box;}
.astkohth-refresh-contact-inner{max-width:960px;margin:0 auto;}
.astkohth-refresh-label--dark{color:#999999;}
.astkohth-refresh-contact-line{width:32px;height:2px;background:var(--refresh-green);margin:0 auto 18px;}
.astkohth-refresh-contact-inner h2{font-size:22px;margin:0 0 16px;color:#ffffff!important;font-weight:700;text-align:center;background:transparent!important;padding:0!important;box-shadow:none!important;}
.astkohth-refresh-contact-text{font-size:14px;color:#cfcfcf;margin:0 0 30px;line-height:1.9;}
.astkohth-refresh-solid-btn{display:inline-block;padding:14px 42px;background:#ffffff;color:#111111;text-decoration:none;font-weight:700;font-size:14px;letter-spacing:1.5px;border-radius:3px;transition:transform .2s ease;}
.astkohth-refresh-solid-btn:hover{transform:translateY(-2px);}
@media (min-width:641px){
.astkohth-refresh-contact{padding:88px 24px;}
}

/* 表示演出（IntersectionObserver、top-content-refresh.js側で制御） */
[data-reveal]{opacity:0;transform:translateY(8px);transition:opacity .5s ease,transform .5s ease,box-shadow .25s ease;}
[data-reveal].is-revealed{opacity:1;transform:translateY(0);}
@media (prefers-reduced-motion: reduce){
[data-reveal]{opacity:1!important;transform:none!important;transition:none!important;}
.astkohth-refresh-card,.astkohth-refresh-service-more a,.astkohth-refresh-outline-btn,.astkohth-refresh-solid-btn{transition:none!important;}
.astkohth-refresh-card:hover{transform:none!important;box-shadow:0 1px 3px rgba(0,0,0,.04)!important;}
}
