{"id":705,"date":"2026-07-17T18:13:04","date_gmt":"2026-07-17T09:13:04","guid":{"rendered":"https:\/\/yuki-keiba-brain.com\/umajyo\/?page_id=705"},"modified":"2026-07-19T14:10:49","modified_gmt":"2026-07-19T05:10:49","slug":"bataihantei","status":"publish","type":"page","link":"https:\/\/yuki-keiba-brain.com\/umajyo\/bataihantei\/","title":{"rendered":"\u99ac\u4f53\u5897\u6e1b\u306e\u81ea\u52d5\u5224\u5b9a\u30c4\u30fc\u30eb"},"content":{"rendered":"\n<meta charset=\"UTF-8\">\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n<title>\u300c\u6d88\u3057\u300d\u304b\u300c\u8cb7\u3044\u300d\u3092\u898b\u6975\u3081\u308b \u99ac\u4f53\u91cd \u81ea\u52d5\u5224\u5b9a\u30c4\u30fc\u30eb | \u7af6\u99ac\u4e88\u60f3\u5c4b\u3086\u3046\u304d<\/title>\n<style>\n  :root {\n    --brown: #5C3A21;\n    --brown-dark: #3E2714;\n    --gold: #C9922B;\n    --cream: #FBF8F4;\n    --good-bg: #C6EFCE;\n    --good-text: #2E7D32;\n    --neutral-bg: #EEEEEE;\n    --neutral-text: #616161;\n    --caution-bg: #FFC7CE;\n    --caution-text: #C62828;\n    --line: #E3D9C9;\n  }\n  * { box-sizing: border-box; }\n  body {\n    margin: 0;\n    font-family: \"Hiragino Kaku Gothic ProN\", \"Yu Gothic\", \"Noto Sans JP\", sans-serif;\n    background: var(--cream);\n    color: #333;\n    padding: 24px 16px 60px;\n  }\n  .wrap { max-width: 640px; margin: 0 auto; }\n  header {\n    text-align: center;\n    margin-bottom: 28px;\n  }\n  header .badge {\n    display: inline-block;\n    background: var(--brown-dark);\n    color: var(--gold);\n    font-size: 12px;\n    font-weight: 700;\n    letter-spacing: 0.08em;\n    padding: 4px 14px;\n    border-radius: 20px;\n    margin-bottom: 10px;\n  }\n  header h1 {\n    font-size: 24px;\n    color: var(--brown);\n    margin: 0 0 6px;\n  }\n  header p {\n    font-size: 13px;\n    color: #7a7a7a;\n    margin: 0;\n  }\n  .card {\n    background: #fff;\n    border-radius: 14px;\n    padding: 24px;\n    box-shadow: 0 4px 18px rgba(92,58,33,0.08);\n    margin-bottom: 20px;\n  }\n  .card h2 {\n    font-size: 15px;\n    color: var(--brown);\n    margin: 0 0 16px;\n    border-bottom: 2px solid var(--line);\n    padding-bottom: 8px;\n  }\n  .howto-steps {\n    display: flex;\n    gap: 12px;\n    margin-bottom: 18px;\n  }\n  .howto-step {\n    flex: 1;\n    background: var(--cream);\n    border: 1.5px solid var(--line);\n    border-radius: 10px;\n    padding: 14px 12px;\n    display: flex;\n    align-items: center;\n    gap: 10px;\n    font-size: 13px;\n    font-weight: 700;\n    color: var(--brown);\n  }\n  .howto-num {\n    font-size: 18px;\n    font-weight: 900;\n    color: var(--gold);\n    flex-shrink: 0;\n  }\n  .howto-note {\n    background: var(--cream);\n    border-radius: 10px;\n    padding: 16px 18px;\n  }\n  .howto-note-title {\n    font-size: 13px;\n    font-weight: 900;\n    color: var(--brown);\n    margin: 0 0 8px;\n  }\n  .howto-note-body {\n    font-size: 13px;\n    color: #555;\n    line-height: 1.9;\n    margin: 0;\n  }\n  .grid {\n    display: grid;\n    grid-template-columns: 1fr 1fr;\n    gap: 14px;\n  }\n  .field { display: flex; flex-direction: column; gap: 6px; }\n  .field.full { grid-column: 1 \/ -1; }\n  label {\n    font-size: 12px;\n    font-weight: 700;\n    color: var(--brown);\n  }\n  label .opt { font-weight: 400; color: #999; }\n  select, input[type=number] {\n    font-size: 15px;\n    padding: 10px 12px;\n    border: 1.5px solid var(--line);\n    border-radius: 8px;\n    background: #FFFDE7;\n    color: #333;\n    font-family: inherit;\n  }\n  select:focus, input:focus {\n    outline: none;\n    border-color: var(--gold);\n  }\n  .result-card {\n    text-align: center;\n    padding: 28px 20px;\n  }\n  .result-mark {\n    font-size: 56px;\n    font-weight: 900;\n    line-height: 1;\n    margin-bottom: 6px;\n  }\n  .result-label {\n    font-size: 20px;\n    font-weight: 900;\n    margin-bottom: 18px;\n  }\n  .result-card.good { background: var(--good-bg); }\n  .result-card.good .result-mark, .result-card.good .result-label { color: var(--good-text); }\n  .result-card.neutral { background: var(--neutral-bg); }\n  .result-card.neutral .result-mark, .result-card.neutral .result-label { color: var(--neutral-text); }\n  .result-card.caution { background: var(--caution-bg); }\n  .result-card.caution .result-mark, .result-card.caution .result-label { color: var(--caution-text); }\n\n  .sub-stats {\n    display: flex;\n    justify-content: center;\n    gap: 28px;\n    flex-wrap: wrap;\n  }\n  .stat { text-align: center; }\n  .stat .v { font-size: 20px; font-weight: 900; }\n  .stat .l { font-size: 11px; opacity: 0.75; margin-top: 2px; }\n\n  .placeholder {\n    text-align: center;\n    color: #aaa;\n    font-size: 14px;\n    padding: 20px 0;\n  }\n\n  .cta-card {\n    background: linear-gradient(160deg, #1a2e22 0%, #2a4a35 100%);\n    border-radius: 14px;\n    padding: 26px 24px;\n    text-align: center;\n    margin-bottom: 20px;\n  }\n  .cta-card p {\n    color: #E3D9C9;\n    font-size: 13px;\n    margin: 0 0 16px;\n    line-height: 1.8;\n  }\n  .cta-card p strong {\n    color: #6FCF7A;\n  }\n  .cta-btn {\n    display: block;\n    background: #2E7D32;\n    color: #fff;\n    text-decoration: none;\n    font-weight: 900;\n    font-size: 16px;\n    padding: 16px 20px;\n    border-radius: 10px;\n    transition: transform 0.15s;\n    animation: cta-pulse 1.8s ease-in-out infinite;\n  }\n  .cta-btn:hover {\n    animation-play-state: paused;\n    transform: translateY(-2px) scale(1.05);\n  }\n  .cta-btn small {\n    display: block;\n    font-weight: 400;\n    font-size: 11px;\n    margin-top: 4px;\n    opacity: 0.9;\n  }\n  @keyframes cta-pulse {\n    0%, 100% { transform: scale(1); }\n    50% { transform: scale(1.05); }\n  }\n\n  footer {\n    text-align: center;\n    font-size: 11px;\n    color: #b0a18f;\n    margin-top: 30px;\n    line-height: 1.8;\n  }\n<\/style>\n\n\n<div class=\"wrap\">\n\n  <header>\n    <div class=\"badge\">\u7af6\u99ac\u4e88\u60f3\u5c4b\u3086\u3046\u304d\u72ec\u81ea\u30b7\u30b9\u30c6\u30e0<\/div>\n    <h1>\u300c\u6d88\u3057\u300d\u304b\u300c\u8cb7\u3044\u300d\u3092\u898b\u6975\u3081\u308b<br>\u99ac\u4f53\u91cd \u81ea\u52d5\u5224\u5b9a\u30c4\u30fc\u30eb<\/h1>\n    <p>\u6570\u5b57\u3092\u5165\u308c\u308b\u3060\u3051\u3067\u3001\u8907\u6570\u306e\u89b3\u70b9\u3092\u30af\u30ed\u30b9\u3055\u305b\u5224\u5b9a\u304c\u51fa\u307e\u3059<\/p>\n  <\/header>\n\n  <div class=\"card\">\n    <h2>\u4f7f\u3044\u65b9<\/h2>\n    <div class=\"howto-steps\">\n      <div class=\"howto-step\"><span class=\"howto-num\">\u2460<\/span>\u5fc5\u8981\u9805\u76ee\u3092\u5165\u529b<\/div>\n      <div class=\"howto-step\"><span class=\"howto-num\">\u2461<\/span>\u5224\u5b9a\u7d50\u679c\u3092\u898b\u308b<\/div>\n    <\/div>\n    <div class=\"howto-note\">\n      <p class=\"howto-note-title\">\u5224\u5b9a\u7d50\u679c\u306b\u3064\u3044\u3066<\/p>\n      <p class=\"howto-note-body\">\n        \u72ec\u81ea\u306e\u89b3\u70b9\u304b\u3089\u8907\u6570\u8981\u7d20\u3092\u30af\u30ed\u30b9\u3057\u5408\u3044\u3001\u5224\u5b9a\u7d50\u679c\u3092\u51fa\u3057\u307e\u3059\u3002<br>\n        \u5224\u5b9a\u7d50\u679c\u306f\u3001<span style=\"color:#2E7D32; font-weight:700;\">\u25ce\u597d\u6750\u6599<\/span>\uff0f<span style=\"color:#616161; font-weight:700;\">\u25ef\u666e\u901a<\/span>\uff0f<span style=\"color:#C62828; font-weight:700;\">\u25b3\u6ce8\u610f<\/span>\u306e3\u6bb5\u968e\u3067\u3059\u3002<br>\n        \u597d\u6750\u6599\u99ac\u306f\u8cb7\u3044\u5019\u88dc\u3001\u6ce8\u610f\u99ac\u306f\u6d88\u3057or\u964d\u683c\u5019\u88dc\u3068\u306a\u308a\u307e\u3059\u3002\n      <\/p>\n    <\/div>\n  <\/div>\n\n  <div class=\"card\">\n    <h2>\u2460 \u51fa\u8d70\u99ac\u306e\u60c5\u5831\u3092\u5165\u529b<\/h2>\n    <div class=\"grid\">\n      <div class=\"field\">\n        <label>\u6027\u5225<\/label>\n        <select id=\"sex\">\n          <option value=\"\">\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044<\/option>\n          <option value=\"\u7261\">\u7261<\/option>\n          <option value=\"\u725d\">\u725d<\/option>\n          <option value=\"\u30bb\">\u30bb<\/option>\n        <\/select>\n      <\/div>\n      <div class=\"field\">\n        <label>\u5e74\u9f62<\/label>\n        <input type=\"number\" id=\"age\" placeholder=\"\u4f8b\uff1a4\" min=\"2\" max=\"20\">\n      <\/div>\n      <div class=\"field\">\n        <label>\u5b63\u7bc0<\/label>\n        <select id=\"season\">\n          <option value=\"\">\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044<\/option>\n          <option value=\"\u590f\">\u590f<\/option>\n          <option value=\"\u51ac\">\u51ac<\/option>\n          <option value=\"\u6625\u79cb\">\u6625\u30fb\u79cb<\/option>\n        <\/select>\n      <\/div>\n      <div class=\"field full\">\n        <label>\u8abf\u6559 <span class=\"opt\">\uff08\u4efb\u610f\u3067\u3059\u304c\u3042\u308b\u3068\u7cbe\u5ea6\u306f\u4e0a\u304c\u308a\u307e\u3059\uff09<\/span><\/label>\n        <select id=\"training\">\n          <option value=\"\">\u672a\u5165\u529b\u3067\u3082OK<\/option>\n          <option value=\"\u8efd\u3081\">\u8efd\u3081<\/option>\n          <option value=\"\u666e\u901a\">\u666e\u901a<\/option>\n          <option value=\"\u30cf\u30fc\u30c9\">\u30cf\u30fc\u30c9<\/option>\n        <\/select>\n      <\/div>\n      <div class=\"field\">\n        <label>\u524d\u8d70\u304b\u3089\u306e\u65e5\u6570<\/label>\n        <input type=\"number\" id=\"days\" placeholder=\"\u4f8b\uff1a30\" min=\"0\">\n      <\/div>\n      <div class=\"field\"><\/div>\n      <div class=\"field\">\n        <label>\u4eca\u56de\u99ac\u4f53\u91cd\uff08kg\uff09<\/label>\n        <input type=\"number\" id=\"weight\" placeholder=\"\u4f8b\uff1a498\" min=\"200\" max=\"700\">\n      <\/div>\n      <div class=\"field\">\n        <label>\u5897\u6e1b\uff08kg\uff09<\/label>\n        <input type=\"number\" id=\"diff\" placeholder=\"\u4f8b\uff1a+10 \u306a\u3089 10 \/ -8 \u306a\u3089 -8\">\n      <\/div>\n    <\/div>\n  <\/div>\n\n  <div class=\"card\">\n    <h2>\u2461 \u5224\u5b9a\u7d50\u679c<\/h2>\n    <div id=\"resultArea\">\n      <p class=\"placeholder\">\u3059\u3079\u3066\u306e\u9805\u76ee\u3092\u5165\u529b\u3059\u308b\u3068\u3001\u3053\u3053\u306b\u5224\u5b9a\u304c\u8868\u793a\u3055\u308c\u307e\u3059<\/p>\n    <\/div>\n  <\/div>\n\n  <div class=\"cta-card\">\n    <p>\u3053\u308c\u3092\u3001<strong>\u5165\u529b\u306a\u3057\u3067\u81ea\u52d5\u7684\u306b\u5224\u5b9a<\/strong><br>\u5f53\u65e5\u99ac\u4f53\u91cd\u767a\u8868\u3068\u307b\u307c\u540c\u6642\u306b\u3001\u5bfe\u8c61\u306e\u99ac\u3092\u901a\u77e5\u3002<\/p>\n    <a class=\"cta-btn\" href=\"https:\/\/yuki-keiba-brain.com\/umajyo\/ukeiba_batai\/\">\n      \u5165\u529b\u30bc\u30ed\u306e\u81ea\u52d5\u5224\u5b9a\u901a\u77e5\u306f\u3053\u3061\u3089\n      <small>\u25bc \u8a73\u3057\u304f\u306f\u30bf\u30c3\u30d7\u3057\u3066\u304f\u3060\u3055\u3044<\/small>\n    <\/a>\n  <\/div>\n\n  <footer>\n    \u672c\u30c4\u30fc\u30eb\u306f\u7af6\u99ac\u4e88\u60f3\u5c4b\u3086\u3046\u304d\u306e\u7d4c\u9a13\u5247\u3092\u3082\u3068\u306b\u3057\u305f\u7c21\u6613\u5224\u5b9a\u30b7\u30df\u30e5\u30ec\u30fc\u30bf\u30fc\u3067\u3059\u3002\u7684\u4e2d\u3084\u56de\u53ce\u7387\u3092\u4fdd\u8a3c\u3059\u308b\u3082\u306e\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002<br>\n    \u6700\u7d42\u7684\u306a\u99ac\u5238\u306e\u8cfc\u5165\u5224\u65ad\u306f\u3054\u81ea\u8eab\u306e\u8cac\u4efb\u3067\u884c\u3063\u3066\u304f\u3060\u3055\u3044\u3002\n  <\/footer>\n\n<\/div>\n\n<script>\n(function () {\n  const $ = (id) => document.getElementById(id);\n\n  const inputIds = [`sex`, `age`, `season`, `training`, `days`, `weight`, `diff`];\n  const inputs = inputIds.map($);\n  inputs.forEach(el => el.addEventListener(`input`, calc));\n  inputs.forEach(el => el.addEventListener(`change`, calc));\n\n  function calc() {\n    const sex = $(`sex`).value;\n    const age = parseFloat($(`age`).value);\n    const season = $(`season`).value;\n    const training = $(`training`).value;\n    const days = parseFloat($(`days`).value);\n    const weight = parseFloat($(`weight`).value);\n    const diff = parseFloat($(`diff`).value);\n\n    const resultArea = $(`resultArea`);\n\n    let basicsFilled = false;\n    if (sex !== ``) {\n      if (season !== ``) {\n        basicsFilled = true;\n      }\n    }\n    let numbersFilled = [age, days, weight, diff].every(v => !isNaN(v));\n    let required = false;\n    if (basicsFilled) {\n      if (numbersFilled) {\n        required = true;\n      }\n    }\n\n    if (!required) {\n      resultArea.innerHTML = `<p class=\"placeholder\">\u3059\u3079\u3066\u306e\u9805\u76ee\u3092\u5165\u529b\u3059\u308b\u3068\u3001\u3053\u3053\u306b\u5224\u5b9a\u304c\u8868\u793a\u3055\u308c\u307e\u3059<\/p>`;\n      return;\n    }\n\n    const prevWeight = weight - diff;\n    if (prevWeight <= 0) {\n      resultArea.innerHTML = `<p class=\"placeholder\">\u5165\u529b\u5024\u3092\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\uff08\u524d\u8d70\u99ac\u4f53\u91cd\u304c0\u4ee5\u4e0b\u306b\u306a\u3063\u3066\u3044\u307e\u3059\uff09<\/p>`;\n      return;\n    }\n    const rate = diff \/ prevWeight;\n\n    const judged = judge({ sex, age, season, training, days, diff, prevWeight, rate });\n\n    let cls, mark, label;\n    if (judged === `good`) { cls = `good`; mark = `\u25ce`; label = `\u597d\u6750\u6599`; }\n    else if (judged === `caution`) { cls = `caution`; mark = `\u25b3`; label = `\u6ce8\u610f`; }\n    else { cls = `neutral`; mark = `\u25ef`; label = `\u666e\u901a`; }\n\n    resultArea.innerHTML = `\n      <div class=\"result-card ${cls}\">\n        <div class=\"result-mark\">${mark}<\/div>\n        <div class=\"result-label\">${label}<\/div>\n        <div class=\"sub-stats\">\n          <div class=\"stat\"><div class=\"v\">${prevWeight.toFixed(0)}kg<\/div><div class=\"l\">\u524d\u8d70\u99ac\u4f53\u91cd<\/div><\/div>\n          <div class=\"stat\"><div class=\"v\">${(rate * 100).toFixed(1)}%<\/div><div class=\"l\">\u5897\u6e1b\u7387<\/div><\/div>\n        <\/div>\n      <\/div>\n    `;\n  }\n\n  \/\/ ------------------------------------------------------------\n  \/\/ \u5224\u5b9a\u30ed\u30b8\u30c3\u30af\uff08\u30b5\u30fc\u30d0\u30fc\u79fb\u884c\u3092\u898b\u636e\u3048\u30661\u95a2\u6570\u306b\u307e\u3068\u3081\u3066\u3044\u307e\u3059\uff09\n  \/\/ WordPress\u5074\u306e\u4ed5\u69d8\u306b\u3088\u308aAND\u6f14\u7b97\u5b50\u306f\u4f7f\u7528\u305b\u305a\u3001\u5165\u308c\u5b50\u306eif\u6587\u3067\u8a18\u8ff0\u3057\u3066\u3044\u307e\u3059\n  \/\/ ------------------------------------------------------------\n  function judge({ sex, age, season, training, days, diff, prevWeight, rate }) {\n    if (Math.abs(diff) <= 4) return `neutral`;\n\n    let score = 0;\n\n    \/\/ \u5b63\u7bc0\n    if (season === `\u590f`) score += diff > 0 ? 1 : (diff < 0 ? -1 : 0);\n    else if (season === `\u51ac`) score += diff < 0 ? 1 : (diff > 0 ? -1 : 0);\n\n    \/\/ \u5e74\u9f62\n    if (age <= 3) {\n      score += diff > 0 ? 1 : (diff <= -8 ? -1 : 0);\n    } else if (age >= 6) {\n      if (diff >= 8) score += -1;\n    }\n\n    \/\/ \u671f\u9593\uff08\u77ed\u671f\u9593\u3067\u306e\u5897\u6e1b\u7387\uff09\n    if (days <= 60) {\n      if (Math.abs(rate) >= 0.02) score += -1;\n    }\n\n    \/\/ \u6027\u9f62\uff085\u6b73\u4ee5\u4e0a\u306e\u725d\u99ac\uff09\n    if (age >= 5) {\n      if (sex === `\u725d`) {\n        if (diff >= 8) score += -1;\n        else if (Math.abs(diff) <= 6) score += 0.5;\n      }\n    }\n\n    \/\/ \u5897\u6e1b\u7387\n    if (Math.abs(rate) > 0.03) score += -1;\n\n    \/\/ \u8efd\u91cf\u99ac\n    if (prevWeight <= 440) {\n      if (diff >= 6) score += 1;\n      else if (diff <= -8) score += -1;\n      else if (diff <= -6) score += -0.5;\n    }\n\n    \/\/ \u8abf\u6559\uff08\u4efb\u610f\uff09\n    if (training === `\u30cf\u30fc\u30c9`) {\n      if (diff > 0) score += 1;\n    } else if (training === `\u8efd\u3081`) {\n      if (diff > 0) score += -1;\n    }\n\n    if (score >= 1.5) return `good`;\n    if (score <= -1.5) return `caution`;\n    return `neutral`;\n  }\n})();\n<\/script>\n","protected":false},"excerpt":{"rendered":"<p>\u300c\u6d88\u3057\u300d\u304b\u300c\u8cb7\u3044\u300d\u3092\u898b\u6975\u3081\u308b \u99ac\u4f53\u91cd \u81ea\u52d5\u5224\u5b9a\u30c4\u30fc\u30eb | \u7af6\u99ac\u4e88\u60f3\u5c4b\u3086\u3046\u304d \u7af6\u99ac\u4e88\u60f3\u5c4b\u3086\u3046\u304d\u72ec\u81ea\u30b7\u30b9\u30c6\u30e0 \u300c\u6d88\u3057\u300d\u304b\u300c\u8cb7\u3044\u300d\u3092\u898b\u6975\u3081\u308b\u99ac\u4f53\u91cd \u81ea\u52d5\u5224\u5b9a\u30c4\u30fc\u30eb \u6570\u5b57\u3092\u5165\u308c\u308b\u3060\u3051\u3067\u3001\u8907\u6570\u306e\u89b3\u70b9\u3092\u30af\u30ed\u30b9\u3055\u305b\u5224\u5b9a\u304c\u51fa\u307e\u3059 \u4f7f\u3044\u65b9 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"templates\/page-notitle.php","meta":{"footnotes":""},"class_list":["post-705","page","type-page","status-publish","hentry"],"xw_count_pv":"872","_links":{"self":[{"href":"https:\/\/yuki-keiba-brain.com\/umajyo\/wp-json\/wp\/v2\/pages\/705","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/yuki-keiba-brain.com\/umajyo\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/yuki-keiba-brain.com\/umajyo\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/yuki-keiba-brain.com\/umajyo\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/yuki-keiba-brain.com\/umajyo\/wp-json\/wp\/v2\/comments?post=705"}],"version-history":[{"count":7,"href":"https:\/\/yuki-keiba-brain.com\/umajyo\/wp-json\/wp\/v2\/pages\/705\/revisions"}],"predecessor-version":[{"id":722,"href":"https:\/\/yuki-keiba-brain.com\/umajyo\/wp-json\/wp\/v2\/pages\/705\/revisions\/722"}],"wp:attachment":[{"href":"https:\/\/yuki-keiba-brain.com\/umajyo\/wp-json\/wp\/v2\/media?parent=705"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}