*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{color:#222;background:#fff;flex-direction:column;min-height:100vh;margin:0;font-family:Hiragino Sans,Hiragino Kaku Gothic ProN,Noto Sans JP,Yu Gothic,Meiryo,sans-serif;line-height:1.7;display:flex}a{color:inherit}.container{width:100%;max-width:1080px;margin:0 auto;padding:0 16px}.site-header{border-bottom:1px solid #ddd;padding:12px 0}.site-name{letter-spacing:.08em;margin-bottom:8px;font-weight:700;text-decoration:none;display:inline-block}.nav-list{flex-wrap:wrap;gap:4px 16px;margin:0;padding:0;font-size:14px;list-style:none;display:flex}.nav-list a{text-decoration:none}.nav-list a:hover{text-decoration:underline}.nav-partner{font-weight:700}.site-main{flex:1;padding-top:24px;padding-bottom:48px}.site-footer{color:#555;border-top:1px solid #ddd;padding:16px 0;font-size:13px}.site-footer p{margin:0}.placeholder h1{margin:0 0 8px;font-size:24px}.item-list{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;margin:16px 0 0;padding:0;list-style:none;display:grid}.item-list a{border:1px solid #ddd;padding:12px;text-decoration:none;display:block}.item-code{color:#666;font-size:12px;display:block}.model-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:24px 16px;margin:16px 0 0;padding:0;list-style:none;display:grid}.model-card{text-decoration:none;display:block}.model-card img,.model-card-nophoto{aspect-ratio:1;background:#fff;width:100%;height:auto;display:block}.model-card-nophoto{color:#888;border:1px dashed #ccc;justify-content:center;align-items:center;font-size:13px;display:flex}.model-card-name{margin-top:8px;font-size:14px;display:block}.model-card:hover .model-card-name{text-decoration:underline}.partner-nav{background:#f4f4f4;flex-wrap:wrap;align-items:center;gap:4px 16px;margin-bottom:24px;padding:8px 12px;font-size:14px;display:flex}.partner-nav ul{flex-wrap:wrap;gap:4px 16px;margin:0;padding:0;list-style:none;display:flex}.nav-logout{margin:0;display:inline}.nav-logout button{font-size:inherit;background:0 0;border:0;padding:0;text-decoration:underline}.login{max-width:400px}.login-form{flex-direction:column;gap:12px;display:flex}.login-form label{flex-direction:column;gap:4px;font-size:14px;display:flex}.login-form input{font:inherit;border:1px solid #999;padding:8px;font-size:16px}.link-button{background:0 0;border:0;align-self:flex-start;padding:0;font-size:14px;text-decoration:underline}.form-error{color:#b00020}.form-notice{color:#1b5e20}.login-note{color:#555;margin-top:24px;font-size:13px}button{font:inherit;cursor:pointer;padding:6px 12px}.content{max-width:760px}.content h1{margin:0 0 16px;font-size:24px}.content h2{margin:32px 0 12px;font-size:20px}.content h3{margin:28px 0 8px;font-size:17px}.content p,.content ol,.content ul{margin:0 0 16px}.content ol,.content ul{padding-left:1.5em}.content li{margin-bottom:8px}.content a{color:#1a4f8b}.table-wrap{max-width:100%;margin:0 0 16px;overflow-x:auto}.content table{border-collapse:collapse;width:100%;font-size:15px}.content th,.content td{text-align:left;vertical-align:top;overflow-wrap:anywhere;border:1px solid #ccc;padding:8px}.content th{background:#f4f4f4}.content td:first-child{white-space:nowrap}.contact{max-width:640px}.contact h1{margin:0 0 12px;font-size:24px}.contact-form{flex-direction:column;gap:18px;margin-top:24px;display:flex}.contact-form label,.contact-form fieldset{flex-direction:column;gap:4px;font-size:14px;display:flex}.contact-form fieldset{border:0;margin:0;padding:0}.contact-form legend{margin-bottom:4px;padding:0}.contact-form input[type=text],.contact-form input[type=email],.contact-form input[type=tel],.contact-form textarea{width:100%;font:inherit;border:1px solid #999;padding:8px;font-size:16px}.contact-form [aria-invalid=true]{border-color:#b00020}.contact-form .choices{flex-wrap:wrap;gap:8px 16px;display:flex}.contact-form .choice{flex-direction:row;align-items:center;gap:6px;font-size:15px}.contact-form .agree{align-items:flex-start}.contact-form .agree input{margin-top:5px}.contact-form em{margin-left:6px;padding:0 4px;font-size:12px;font-style:normal}.contact-form .required{color:#b00020}.contact-form .optional{color:#666}.field-error{color:#b00020;font-size:13px}.field-note{color:#666;text-align:right;font-size:12px}.contact-form button[type=submit]{align-self:flex-start;min-width:160px;padding:10px 24px}.hp-field{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}
