body {
    margin: 0;
    font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    font-size: 14px;
    color: #333;
    background: #fff;
}

a { color: #1a6fb5; }

.site-header { border-bottom: 1px solid #ddd; }
.site-header__inner { max-width: 960px; margin: 0 auto; padding: 8px 16px; }
.site-header__logo { display: inline-block; line-height: 0; }

.container { max-width: 960px; margin: 0 auto; padding: 16px; }
.page-title { font-size: 28px; border-left: 8px solid #f98301; padding: 4px 0 4px 14px; margin: 16px 0 24px; }

.site-footer { border-top: 1px solid #ddd; text-align: center; padding: 16px; font-size: 12px; }
.site-footer__copyright { margin: 8px 0 0; color: #666; }

.lead { text-align: center; margin-bottom: 24px; }
.must-mark { color: red; }

.edittable { width: 100%; border-collapse: collapse; }
.edittable > tbody > tr > th,
.edittable > tbody > tr > td { border-bottom: 1px solid #ddd; padding: 10px; vertical-align: top; text-align: left; }
.edittable > tbody > tr > th { width: 200px; background: #f5f5f5; font-weight: normal; }

.must { display: inline-block; margin-left: 6px; padding: 0 4px; font-size: 11px; color: #fff; background: #e60012; border-radius: 2px; }
.note { font-size: 12px; color: #505050; margin-bottom: 4px; }
.error { color: red; display: block; }
.page-error { font-weight: bold; text-align: center; }

.password-check { font-size: 12px; color: #505050; margin-top: 4px; }
.password-strength { font-weight: bold; }
.password-strength--weak { color: red; }
.password-strength--fair { color: #e77801; }
.password-strength--strong { color: #2e8b3a; }
.password-rules { margin: 4px 0 0; padding-left: 0; list-style: none; }
.password-rules li::before { content: "×"; display: inline-block; width: 1.4em; color: red; }
.password-rules li.ok::before { content: "✓"; color: #2e8b3a; }

input[type="text"], input[type="password"], input:not([type]), select, textarea { padding: 4px; font-size: 14px; box-sizing: border-box; }
.short { width: 160px; }
.middle { width: 320px; max-width: 100%; }
.long { width: 100%; }

.platform { margin-bottom: 12px; }
.platform__check { font-weight: bold; }
.platform__fields { width: 100%; border-collapse: collapse; margin: 6px 0 0 20px; }
.platform__fields th, .platform__fields td { padding: 6px; text-align: left; vertical-align: top; }
.platform__fields th { width: 180px; font-weight: normal; }

.terms__frame { width: 100%; max-width: 570px; height: 200px; border: solid 1px #adbe73; }
.center { text-align: center; margin-top: 10px; }

/* ボタンの色は旧 www2 のボタン画像（img/btn_inquiry_confirm.png / btn_inquiry_submit.png）から取った */
.btn { min-width: 200px; padding: 10px 24px; font-size: 15px; color: #fff; border: none; border-radius: 4px; cursor: pointer; margin: 4px; }
.btn--confirm { min-width: 282px; min-height: 62px; font-size: 20px; background: linear-gradient(#f98301, #e77801); }
.btn--confirm:hover { background: linear-gradient(#fa9a2e, #f98301); }
.btn--submit { min-width: 282px; min-height: 62px; font-size: 20px; background: linear-gradient(#fbac01, #f5a501); }
.btn--submit:hover { background: linear-gradient(#fcbd34, #fbac01); }
.btn--sub { color: #333; background: #ddd; }

.complete { text-align: center; padding: 30px; }
.tags { position: absolute; left: -9999px; }
