@charset "UTF-8";
/* DLDグループ: WordPress共通メニュー・熊本店舗・TOP追加コンテンツ */
/* 既存SHOPLIST用CSSからフッター共通部分を移植（SHOPLIST専用 #access セレクタを除く） */
/* メインフッター：既存5ブランドのレイアウトは変えず、下段に熊本2店舗を新設 */
.Footer .dld-km-footer-addresses { display: flex; flex-wrap: wrap; gap: 0 30px; padding-top: 15px; margin-top: 15px; border-top: 1px solid rgba(255,255,255,.12); }
.Footer .dld-km-footer-addresses .address { flex:1 1 390px; margin:0 0 11px; min-width:0; }
.Footer .dld-km-footer-addresses dl { display: flex; gap: 15px; font-size: 13px; line-height:1.8; }
.Footer .dld-km-footer-addresses dt { flex: 0 0 auto; margin:0; font-weight: 600; color: #c3da6b; }
.Footer .dld-km-footer-addresses dd { margin:0; color:#e5e5e5; overflow-wrap:anywhere; }
.Footer .dld-km-footer { display: flex; align-items: center; gap: 36px; margin: 50px 0 0; padding: 26px 30px; background:#292929; border:1px solid rgba(255,255,255,.14); border-left:4px solid #a3ca0f; }
.Footer .dld-km-footer__brand { flex: 0 0 210px; color:#fff; text-decoration: none; }
.Footer .dld-km-footer__brand strong { font:700 34px/1.05 'Francois One', sans-serif; letter-spacing:.06em; color:#a3ca0f; display:block; }
.Footer .dld-km-footer__brand span { display:block; color:#ddd; font-size:13px; line-height:1.5; letter-spacing:.12em; margin-top:5px; }
.Footer .dld-km-footer__shops { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; flex:1; }
.Footer .dld-km-footer__shop { color: #fff; text-decoration:none; border-left:1px solid rgba(255,255,255,.18); padding-left:24px; min-width:0; display:block; }
.Footer .dld-km-footer__shop-name { display:block; font-size: 15px; font-weight:700; line-height: 1.6; color:#fff; }
.Footer .dld-km-footer__shop-tel { display:block; font: 600 16px/1.7 sans-serif; color:#d6d6d6; letter-spacing:.03em; }
.Footer .dld-km-footer__shop:hover .dld-km-footer__shop-name { color:#a3ca0f; }


/* drawerが長くなったときは内部をスクロール */
.drawer-nav { overflow-y: auto; overflow-x: hidden; overscroll-behavior: contain; }
.drawer-menu li.dld-nav-kumamoto dt a {font-size: 18px; line-height:1.4; overflow-wrap:anywhere;}
.drawer-menu li.dld-nav-kumamoto dd {font-size:12px; line-height:1.6;}
.drawer-menu li.dld-nav-kumamoto:first-of-type {margin-top: 18px;}
@media (max-height:750px){ .drawer-menu { margin-top: 52px; } .drawer-menu li {margin-bottom:10px;} }
/* footer changes on tablet/mobile */
@media (max-width:991px){
.Footer .dld-km-footer {gap:20px; padding:24px 20px;}
.Footer .dld-km-footer__brand {flex-basis:170px;}
.Footer .dld-km-footer__brand strong {font-size:29px;}
.Footer .dld-km-footer__shop {padding-left:15px;}
}
@media (max-width:767px){
.Footer .dld-km-footer-addresses {display:block;}
.Footer .dld-km-footer-addresses .address {margin-bottom:12px;}
.Footer .dld-km-footer-addresses dl {display:block; font-size:13px;}
.Footer .dld-km-footer {display:block; margin-top:30px; padding:20px;}
.Footer .dld-km-footer__brand {margin-bottom:20px; display:block;}
.Footer .dld-km-footer__shops {grid-template-columns:1fr; gap:13px;}
.Footer .dld-km-footer__shop {padding-left:15px;}
.Footer .dld-km-footer__shop-tel {font-size:15px;}
}
/* home common */
.dld-home-km,.dld-home-faq {box-sizing:border-box;padding:80px 20px; color:#303030;}
.dld-home-km *, .dld-home-faq * {box-sizing:border-box;}
.dld-home-km {background:#f6f6f4;}
.dld-home-faq {background:#fff;}
.dld-home-extra-container {width:100%;max-width:1100px;margin:0 auto;}
.dld-home-extra-title {text-align:center;margin:0 auto 14px;}
.dld-home-extra-lead {text-align:center;line-height:1.9;font-size:15px;margin:0 auto 38px;max-width:750px;}
.dld-home-km__grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;}
.dld-home-km__card {background:#fff;overflow:hidden;min-width:0;}
.dld-home-km__image-link {display:block;position:relative;height:310px;overflow:hidden;}
.dld-home-km__image-link img {display:block;width:100%;height:100%;object-fit:cover;object-position:center;max-width:none;transition:transform .3s;}
.dld-home-km__image-link:hover img {transform:scale(1.035);}
.dld-home-km__card:nth-child(2) .dld-home-km__image-link img {object-position:center 44%;}
.dld-home-km__badge {position:absolute;left:18px;top:18px;background:#a3ca0f;color:#202020;padding:8px 13px;font-size:13px;font-weight:700;letter-spacing:.08em;}
.dld-home-km__content {padding:26px 28px 28px;}
.dld-home-km__brand {display:block;font-weight:800;font-size:23px;letter-spacing:.08em;color:#333;margin-bottom:12px;}
.dld-home-km__brand small {font-size:14px;color:#7e9c07;font-weight:600;}
.dld-home-km__content h3 {font-size:22px;font-weight:700;line-height:1.5;margin:0 0 12px;}
.dld-home-km__content p {font-size:14px;line-height:1.9;margin:0 0 21px;min-height:55px;}
.dld-home-km__content p a {color:inherit;text-decoration:underline;}
.dld-home-km__detail {display:flex;align-items:center;justify-content:space-between;background:#292929;padding:14px 20px;color:#fff;text-decoration:none;font-size:14px;}
.dld-home-km__detail:hover{background:#789905;color:#fff;}
.dld-home-km__note {color:#777;font-size:12px;line-height:1.7;margin:17px 0 0;}
.dld-home-extra-action{text-align:center;margin-top:32px;}
.dld-home-extra-action .button {display:inline-block;}
.dld-home-faq__links {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;max-width:1040px;margin:0 auto;}
.dld-home-faq__links a {display:flex;gap:16px;align-items:center;padding:23px 22px;color:#292929;background:#f6f6f4;text-decoration:none;font-size:15px;font-weight:600;line-height:1.7;min-width:0;transition:background .2s;}
.dld-home-faq__links a:hover {background:#ebf4ca;}
.dld-home-faq__q {color:#86a409;font-weight:800;white-space:nowrap;}
.dld-home-faq__arrow {margin-left:auto;color:#777;white-space:nowrap;}
@media(max-width:767px){
.dld-home-km,.dld-home-faq {padding:54px 16px;}
.dld-home-extra-lead {font-size:14px;margin-bottom:26px;}
.dld-home-km__grid,.dld-home-faq__links {grid-template-columns:1fr;gap:17px;}
.dld-home-km__image-link {height:290px;}
.dld-home-km__content {padding:21px;}
.dld-home-km__content h3 {font-size:19px;}
.dld-home-km__content p {min-height:0;}
.dld-home-faq__links a {font-size:14px;padding:18px 15px;gap:12px;}
}
@media(max-width:400px){.dld-home-km__image-link{height:235px;}}
