*{box-sizing:border-box}
html{color-scheme:light;scroll-behavior:smooth}
body{margin:0;background:#fff;color:#171717;font-family:"Noto Sans JP","Yu Gothic",Meiryo,sans-serif;font-size:16px;line-height:1.8}
main{width:100%;overflow:hidden}
figure,p{margin:0}
img{display:block;max-width:100%;height:auto}
.panel{width:min(100%,1080px);margin:0 auto;padding:0;line-height:0}
.panel img{width:100%;margin:0;padding:0;vertical-align:bottom}
.hero-desktop{width:100%;max-width:1920px}
.hero-mobile{display:none}
.cta{position:relative;width:100%;margin:28.8px 0 0;text-align:center;line-height:0}
.cta a{display:inline-block;max-width:100%;line-height:0}
.cta img{display:block;width:auto;max-width:100%;height:auto}
@keyframes slideInRight{0%{opacity:0;transform:translateX(2000px)}100%{transform:translateX(0)}}
.has-js .cta-motion{opacity:1!important}
.has-js .cta-motion.is-animated{animation:slideInRight 1s ease both}
@keyframes poyopoyo{0%,40%,55%,75%{transform:scale(1)}50%,65%{transform:scale(.95)}}
.sticky-cta{position:fixed;z-index:999;left:0;bottom:0;width:100%;display:flex;justify-content:center;visibility:hidden;opacity:0;line-height:0;pointer-events:none;transition:.3s;animation:poyopoyo 3s ease-out infinite}
.sticky-cta.is-visible{visibility:visible;opacity:1;pointer-events:auto}
.sticky-cta a{display:block;max-width:984px;line-height:0}
.sticky-cta img{display:block;width:auto;max-width:100%;height:auto}
.faq-cta a:hover{filter:brightness(1.05)}
a{color:#a70808;text-underline-offset:.18em;overflow-wrap:anywhere}
a:focus-visible,summary:focus-visible{outline:3px solid #0a63cf;outline-offset:5px}
.faq{width:min(calc(100% - 40px),960px);margin:12px auto 56px}
details{border-bottom:1px solid #ddd;background:#fff}
summary{position:relative;cursor:pointer;font-size:1.125rem;font-weight:700;line-height:1.65;padding:24px 44px 24px 0;list-style:none}
summary::-webkit-details-marker{display:none}
summary::after{content:"＋";position:absolute;right:4px;top:24px;color:#b10909;font-size:1.4rem;line-height:1.3}
details[open] summary::after{content:"−"}
.answer{padding:0 0 24px;overflow-wrap:anywhere}
.answer p+p{margin-top:16px}
.faq-cta{max-width:600px;margin:24px auto 0}
.company{width:min(calc(100% - 40px),960px);margin:48px auto 64px;font-size:1rem}
table{width:100%;border-collapse:collapse;table-layout:fixed}
th,td{border:1px solid #ddd;padding:18px;text-align:left;vertical-align:top;overflow-wrap:anywhere}
th{width:28%;background:#f6f6f6;font-weight:600}
.sr-only,.skip:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip:focus{position:fixed;z-index:10;top:8px;left:8px;background:#fff;padding:10px 18px;border:2px solid #111}
@media(max-width:767px){.hero-desktop{display:none}.hero-mobile{display:block;max-width:750px}.faq{width:calc(100% - 32px);margin-bottom:36px}summary{font-size:1rem;padding:20px 34px 20px 0}summary::after{top:20px}.company{width:calc(100% - 32px);margin:32px auto 40px}th,td{padding:12px;font-size:.875rem}th{width:30%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.has-js .cta-motion.is-animated,.sticky-cta{animation:none}.sticky-cta{transition:none}}
