/* Shared November campaign components: local-only assets, responsive forms and dates. */
.session-schedule{margin-top:34px}.session-year{font-size:16px;font-weight:800;margin:0 0 14px}.session-year span{font-size:12px;font-weight:400;color:#626262;margin-left:12px}.session-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.session-grid li{background:#fff;border:1px solid #d5d5d5;border-radius:12px;padding:20px 16px;min-width:0}.session-round{color:#c52e1c;font-size:11px;font-weight:700}.session-date{font:800 30px/1.4 Arial,sans-serif;letter-spacing:-.025em;margin:7px 0!important;white-space:nowrap}.session-date span{font:700 12px/1.5 sans-serif;letter-spacing:0;margin-left:4px}.session-time{font:700 14px/1.7 Arial,sans-serif;white-space:nowrap;margin:0!important}.embedded-form{scroll-margin-top:108px;max-width:850px;margin:42px auto 0;padding:30px 24px 22px;border:1px solid #d5d5d5;border-radius:18px;background:#fff}.form-heading{padding:2px 10px 24px}.form-heading h2,.form-heading h3{font-size:25px;line-height:1.6;margin:10px 0}.form-heading>p:last-child{font-size:14px;line-height:1.9;margin:10px 0 0}.google-form-frame{display:block;width:100%;max-width:100%;border:0;background:#fafafa}.form-fallback{display:block;font-size:12px;line-height:1.9;padding:12px 0;margin:14px 0 0;min-height:44px;color:#626262;text-align:center;text-underline-offset:4px}.form-fallback a{display:inline-block;min-height:44px;padding:10px 0}.form-pending{min-height:280px;display:grid;place-items:center;background:#fafafa;border:1px dashed #d5d5d5;text-align:center;font-size:14px;padding:24px;border-radius:10px}.official-program-note{margin-top:40px;border-top:1px solid #d5d5d5;padding:28px 0 0;font-size:13px;color:#626262}.official-program-note p{margin:0}.official-program-note .official-program-copy{font-size:18px;font-weight:700;color:#2c2c2c;margin:12px 0}.official-program-note a{display:inline-flex;align-items:center;min-height:44px;font-size:12px}
@media(max-width:760px){.session-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.session-year span{display:block;margin:5px 0 0}.session-grid li{padding:17px 14px}.session-date{font-size:28px}.session-time{font-size:13px}.embedded-form{padding:24px 0 14px;border-radius:14px;scroll-margin-top:90px}.form-heading{padding:0 18px 20px}.form-heading h2,.form-heading h3{font-size:22px}.form-heading>p:last-child{font-size:13px}.form-fallback{padding:12px 16px;margin-top:8px}.embedded-form .form-security-note{margin:18px 14px 0}.official-program-note .official-program-copy{font-size:17px}}

/* 画面高に合わせて枠内をスクロール。送信後は利用者が折りたためる。 */
.quiz-form-frame{height:75vh;height:75svh;max-height:900px}
.quiz-form-disclosure{border:0;margin:0}
.quiz-form-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:48px;padding:14px 18px;border:1px solid #c52e1c;border-radius:8px;background:#fff;color:#a92618;font-size:14px;font-weight:700;cursor:pointer;list-style:none}
.quiz-form-disclosure>summary::-webkit-details-marker{display:none}
.quiz-form-disclosure>summary:focus-visible{outline:3px solid #252525;outline-offset:4px}
.quiz-form-disclosure[open]>summary{margin-bottom:12px}
.quiz-form-disclosure .form-toggle-open,.quiz-form-disclosure[open] .form-toggle-closed{display:none}
.quiz-form-disclosure[open] .form-toggle-open{display:inline}
.form-toggle-icon{font-size:22px;line-height:1}
.quiz-form-disclosure[open] .form-toggle-icon{transform:rotate(180deg)}
@media(max-width:760px){.quiz-form-disclosure>summary{margin-left:12px;margin-right:12px}}

.quiz-form-disclosure>summary::before,.quiz-form-disclosure>summary::after{content:none}
