/* parts/12-faq/style.css */
/* 12-faq専用：details要素でキーボード操作にも対応した開閉 */
.lp-faq{padding:84px 0 72px;background:#f1f9ff;color:var(--color-text);scroll-margin-top:24px}
.lp-faq__heading{text-align:center;margin-bottom:38px}.lp-faq__eyebrow{font-size:10px;font-weight:700;letter-spacing:.2em;color:#1386c4;margin:0 0 14px}
.lp-faq h2{font-size:clamp(25px,2.6vw,34px);line-height:1.6;letter-spacing:-.035em;margin:0 0 14px;font-weight:800}.lp-faq h2 span{color:var(--color-primary)}.lp-faq__heading>p:last-child{font-size:14px;color:#647c90;margin:0}
.lp-faq__list{max-width:940px;margin:0 auto;display:grid;gap:13px}
.lp-faq__item{min-width:0;background:#fff;border:1px solid #dcebf5;border-radius:9px;overflow:hidden}
.lp-faq summary{display:flex;align-items:center;gap:17px;padding:22px 25px;cursor:pointer;list-style:none}.lp-faq summary::-webkit-details-marker{display:none}
.lp-faq__q{flex-shrink:0;font-size:20px;line-height:1.4;color:#1589c5;font-weight:700}.lp-faq__question{font-size:14px;font-weight:700;line-height:1.8;flex:1;min-width:0}
.lp-faq__toggle{position:relative;flex-shrink:0;width:16px;height:16px;margin-left:9px}.lp-faq__toggle::before,.lp-faq__toggle::after{content:'';position:absolute;background:#3795c6;border-radius:1px;left:1px;right:1px;top:7px;height:2px}.lp-faq__toggle::after{transform:rotate(90deg)}.lp-faq details[open] .lp-faq__toggle::after{display:none}
.lp-faq details[open] summary{background:#fbfdff}.lp-faq summary:hover{background:#f7fbff}.lp-faq summary:focus-visible{outline:3px solid #1593c6;outline-offset:-4px;border-radius:8px}
.lp-faq__answer{display:flex;align-items:flex-start;gap:18px;padding:20px 25px 25px;border-top:1px solid #edf4f9}.lp-faq__a{font-size:18px;font-weight:700;line-height:1.6;color:#81a6be;flex-shrink:0}.lp-faq__answer>p{font-size:13px;line-height:2;color:#60788c;margin:0;min-width:0;overflow-wrap:anywhere}
.lp-faq__contact{text-align:center;font-size:13px;color:#6a8295;line-height:2;margin:30px 0 0}.lp-faq__contact a{display:inline-block;text-decoration:none;border-bottom:1px solid #a2cde7;color:#0877c4;margin-left:5px;font-weight:700}.lp-faq__contact a:hover{color:#07538c;border-color:currentColor}.lp-faq__contact a:focus-visible{outline:3px solid #1593c6;outline-offset:4px}
@media(max-width:650px){.lp-faq{padding:58px 0 48px}.lp-faq__heading{text-align:left;margin-bottom:28px}.lp-faq__heading>p:last-child{font-size:13px}.lp-faq summary{padding:19px 18px;gap:12px}.lp-faq__question{font-size:13px}.lp-faq__q{font-size:18px}.lp-faq__answer{padding:18px 18px 21px;gap:13px}.lp-faq__answer>p{font-size:12px}.lp-faq__a{font-size:16px}.lp-faq__contact{font-size:12px;text-align:left}}
