:focus-visible {outline: 2px solid #008bae !important; outline-offset: 4px;}
.form-notice{padding:20rem 24rem;margin:24rem auto;border:1px solid #c8dfe4;border-radius:8rem;background:#eef8fa;line-height:1.6;max-width:1200rem;}
.form-notice.error{background:#fff1ed;border-color:#e0b4aa;}
.form-notice ul{list-style:disc;padding-left:22rem;}
.trap-field{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden;}
.pdct-popup{position:fixed;z-index:10000;top:40px;left:40px;width:min(460px,calc(100vw - 40px));max-height:90vh;overflow:auto;background:white;box-shadow:0 12px 50px #0005;border:1px solid #ddd;}
.pdct-popup+.pdct-popup{left:80px;top:80px;}
.pdct-popup h2{font-size:22px;font-weight:700;padding:18px;}
.pdct-popup p{white-space:pre-wrap;padding:18px;font-size:16px;line-height:1.6;}
.pdct-popup img{width:100%;height:auto;}
.pdct-popup footer{display:flex;border-top:1px solid #ddd;}
.pdct-popup button{flex:1;padding:12px;font-size:14px;background:#f5f5f5;}
.privacy #sub_visual img{display:none;}
@media(max-width:1280px){.form-notice{margin:20px;}.pdct-popup{left:20px;top:20px;}.pdct-popup+.pdct-popup{left:30px;top:30px;}}
@media(prefers-reduced-motion:reduce){[data-aos]{opacity:1!important;transform:none!important;transition:none!important;}}
