/*
Theme Name: Lightning Widget Complete Child
Theme URI: https://atturejapan.com/
Description: Lightning child theme. Front page is fully editable from Appearance > Widgets while keeping WooCommerce, contact form, and plugin functions.
Author: Atture Japan
Template: lightning
Version: 1.0.1
License: GPLv2 or later
Text Domain: lightning-widget-complete-child
*/

:root{
  --lwc-bg:#f4f4f1;
  --lwc-text:#222;
  --lwc-muted:#777;
  --lwc-line:#d9d9d4;
  --lwc-card:#fff;
  --lwc-accent:#111;
}

body.home{background:var(--lwc-bg);color:var(--lwc-text);} 
.lwc-front{background:var(--lwc-bg);font-family:inherit;}
.lwc-container{width:min(1120px,92vw);margin:0 auto;}
.lwc-section{padding:64px 0;border-bottom:1px solid var(--lwc-line);} 
.lwc-section-title{text-align:center;font-size:clamp(28px,4vw,48px);line-height:1.18;letter-spacing:.08em;margin:0 0 36px;font-weight:700;}
.lwc-section-sub{text-align:center;color:var(--lwc-muted);margin-top:-20px;margin-bottom:36px;}

.lwc-widget-area > *{margin-top:0;margin-bottom:0;}
.lwc-widget-area img{max-width:100%;height:auto;display:block;}
.lwc-widget-area .widget{margin:0;}
.lwc-widget-area ul{padding-left:1.2em;}

.lwc-hero{padding:28px 0 70px;}
.lwc-hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:36px;align-items:center;}
.lwc-hero-copy{padding:42px;background:rgba(255,255,255,.62);border:1px solid var(--lwc-line);} 
.lwc-hero-copy h1{font-size:clamp(34px,5vw,72px);line-height:1.08;letter-spacing:.06em;margin:0 0 18px;}
.lwc-hero-copy p{font-size:16px;line-height:2;color:#555;}
.lwc-hero-visual{min-height:380px;background:#e7e7e0;border:1px solid var(--lwc-line);display:flex;align-items:center;justify-content:center;overflow:hidden;}
.lwc-hero-visual img{width:100%;height:100%;object-fit:cover;}

.lwc-six-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.lwc-six-card{background:var(--lwc-card);border:1px solid var(--lwc-line);min-height:185px;display:flex;align-items:center;justify-content:center;overflow:hidden;}
.lwc-six-card img{width:100%;height:100%;object-fit:cover;}

.lwc-two-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:26px;}
.lwc-three-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.lwc-box{background:var(--lwc-card);border:1px solid var(--lwc-line);padding:28px;min-height:120px;}

.lwc-products .woocommerce ul.products{margin-bottom:0;}
.lwc-products .woocommerce ul.products li.product{background:#fff;border:1px solid var(--lwc-line);padding:16px;text-align:left;}
.lwc-products .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:16px;line-height:1.5;}
.lwc-products .woocommerce ul.products li.product .price{font-weight:700;color:#111;}

.lwc-link-panels{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid var(--lwc-line);background:#fff;}
.lwc-link-panel{min-height:150px;display:flex;align-items:center;justify-content:center;text-align:center;border-right:1px solid var(--lwc-line);padding:24px;font-size:22px;letter-spacing:.08em;font-weight:700;}
.lwc-link-panel:last-child{border-right:none;}

.lwc-fallback{color:#777;text-align:center;padding:34px;border:1px dashed #aaa;background:rgba(255,255,255,.45);} 
.lwc-fallback small{display:block;margin-top:8px;color:#999;}

@media (max-width: 782px){
  .lwc-section{padding:44px 0;}
  .lwc-hero-grid,.lwc-two-grid,.lwc-three-grid{grid-template-columns:1fr;}
  .lwc-six-grid{grid-template-columns:repeat(2,1fr);gap:14px;}
  .lwc-hero-copy{padding:26px;}
  .lwc-hero-visual{min-height:260px;}
  .lwc-link-panels{grid-template-columns:1fr;}
  .lwc-link-panel{border-right:none;border-bottom:1px solid var(--lwc-line);}
  .lwc-link-panel:last-child{border-bottom:none;}
}

/* 右上クイックメニュー */
.lwc-top-menu{padding:16px 0 0;background:var(--lwc-bg);}
.lwc-top-menu-inner{display:flex;justify-content:flex-end;align-items:center;gap:10px;flex-wrap:wrap;}
.lwc-top-menu a{display:inline-flex;align-items:center;justify-content:center;padding:10px 16px;border-radius:999px;background:#111;color:#fff;text-decoration:none;font-size:14px;font-weight:700;line-height:1;box-shadow:0 6px 18px rgba(0,0,0,.10);}
.lwc-top-menu a:hover{opacity:.82;color:#fff;text-decoration:none;}
.lwc-recruit .lwc-box{text-align:center;}
@media (max-width:782px){
  .lwc-top-menu{padding:12px 0 0;}
  .lwc-top-menu-inner{justify-content:center;gap:8px;}
  .lwc-top-menu a{font-size:13px;padding:9px 12px;}
}
