/* 静的ページ（apply/rules/privacy/law）共通・ポータル本体の portal.css とは独立の最小スタイル */
.page-wrap { max-width: 760px; margin: 0 auto; padding: 24px 16px 64px; font-family: "Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif; color: #443344; line-height: 1.8; }
.page-wrap h1 { font-size: 1.5rem; margin: 0 0 1rem; color: #d4527f; }
.page-wrap h2 { font-size: 1.1rem; margin: 2rem 0 .5rem; border-left: 4px solid #f3a5c2; padding-left: .5rem; }
.page-wrap p, .page-wrap li { font-size: .95rem; }
.page-head { padding: 16px; background: #fff5fa; }
.page-head a { color: #d4527f; text-decoration: none; font-weight: bold; }
.page-note { background: #fff8e6; border: 1px solid #f0dca0; padding: .75rem 1rem; font-size: .85rem; }
.form-grid { display: grid; gap: 14px; margin-top: 1rem; }
.form-grid label { display: block; font-weight: bold; font-size: .9rem; margin-bottom: .25rem; }
.form-grid .req { color: #d4527f; font-size: .8rem; margin-left: .35rem; }
.form-grid input[type=text], .form-grid input[type=email], .form-grid input[type=url], .form-grid select, .form-grid textarea {
  width: 100%; box-sizing: border-box; padding: .6rem; border: 1px solid #ddc3cf; border-radius: 6px; font-size: 1rem; background: #fff; }
.form-grid textarea { min-height: 8rem; }
.agree-row { display: flex; align-items: flex-start; gap: .5rem; font-size: .9rem; }
.submit-row button { background: #d4527f; color: #fff; border: 0; border-radius: 999px; padding: .8rem 2.5rem; font-size: 1rem; cursor: pointer; }
.submit-row button:hover { background: #b93f68; }
.hp-field { position: absolute; left: -9999px; top: -9999px; }
/* 掲載申込の冒頭（イベント会場で画面を見せる用・フレーズ＋本質 3 行＋自ページの QR） */
.pitch { display: grid; grid-template-columns: 1fr 220px; gap: 24px; align-items: center; margin: 0 0 2.5rem;
  padding: 24px; border-radius: 16px; background: linear-gradient(135deg, #fff0f6, #f3ecff); }
.page-wrap .pitch-phrase { margin: 0 0 1rem; font-size: 1.9rem; font-weight: bold; line-height: 1.35; color: #d4527f; letter-spacing: .02em; }
.page-wrap .pitch-lines { margin: 0; padding: 0; list-style: none; }
.page-wrap .pitch-lines li { position: relative; padding-left: 1.1rem; margin: .45rem 0; font-size: 1rem; line-height: 1.7; }
.pitch-lines li::before { content: ""; position: absolute; left: 0; top: .7em; width: .45rem; height: .45rem; border-radius: 50%; background: #d4527f; }
.pitch-qr { margin: 0; text-align: center; }
.pitch-qr img { display: block; width: 100%; height: auto; border-radius: 8px; background: #fff; }
.pitch-qr figcaption { margin-top: .4rem; font-size: .75rem; color: #775566; line-height: 1.5; }
@media (max-width: 620px) {
  .pitch { grid-template-columns: 1fr; padding: 20px 16px; }
  .page-wrap .pitch-phrase { font-size: 1.5rem; }
  .pitch-qr { max-width: 200px; margin: 0 auto; }
}
.page-footer { margin-top: 3rem; font-size: .8rem; color: #997788; }
.page-footer a { color: #997788; margin-right: 1rem; }
