{"id":878,"date":"2026-10-16T11:38:16","date_gmt":"2026-10-16T02:38:16","guid":{"rendered":"https:\/\/www.selfmedix.com\/?page_id=878"},"modified":"2026-10-16T13:10:16","modified_gmt":"2026-10-16T04:10:16","slug":"%e9%85%8d%e9%80%81%e4%ba%88%e5%ae%9a%e6%97%a5%e3%82%ab%e3%83%ac%e3%83%b3%e3%83%80%e3%83%bc","status":"publish","type":"page","link":"https:\/\/www.selfmedix.com\/?page_id=878","title":{"rendered":"\u767a\u9001\u4e88\u5b9a\u65e5\u30ab\u30ec\u30f3\u30c0\u30fc"},"content":{"rendered":"\n<!-- \u767a\u9001\u4e88\u5b9a\u30ab\u30ec\u30f3\u30c0\u30fc\uff1a\u3053\u3053\u304b\u3089\u5168\u6587\u3092\u300c\u30ab\u30b9\u30bf\u30e0HTML\u300d\u30d6\u30ed\u30c3\u30af\u306b\u8cbc\u308a\u4ed8\u3051 -->\n<style>\n.sm-theme .sm-original-copy [data-shipping-calendar] p{font-size:inherit;line-height:inherit}\n\n.sm-theme .sm-original-copy [data-shipping-calendar]{--sc-ink:#172b40;--sc-muted:#627184;--sc-line:#dce3e9;--sc-normal:#3155a0;--sc-express:#08766c;--sc-rose:#a75661;font-family:-apple-system,BlinkMacSystemFont,\"Hiragino Kaku Gothic ProN\",\"Yu Gothic\",sans-serif;color:var(--sc-ink);font-size:15px;line-height:1.7;max-width:960px;margin:24px auto;text-align:left}\n.sm-theme .sm-original-copy [data-shipping-calendar] *,.sm-theme .sm-original-copy [data-shipping-calendar] *::before,.sm-theme .sm-original-copy [data-shipping-calendar] *::after{box-sizing:border-box}\n.sm-theme .sm-original-copy [data-shipping-calendar] [hidden]{display:none!important}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-panel{display:flex;flex-direction:column;background:#fff;border:1px solid var(--sc-line);border-radius:20px;overflow:hidden;padding:32px;box-shadow:0 12px 36px #172b4009}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-panel>.sc-header{order:0}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-panel>.sc-notice{order:1}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-panel>.sc-period{order:2}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-panel>.sc-results{order:3}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-panel>.sc-controls{order:4}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-panel>.sc-calendars{order:5}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-panel>.sc-legend{order:6}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-panel>.sc-footer{order:7}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-header{margin:0 0 20px;padding:0;border:0;background:none;position:static}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-eyebrow{font-size:11px;letter-spacing:.17em;font-weight:700;color:var(--sc-muted)}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-title{font-size:26px;font-weight:750;line-height:1.5;letter-spacing:.02em;margin:4px 0 8px;padding:0;border:0;background:none;color:var(--sc-ink)}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-title::before,.sm-theme .sm-original-copy [data-shipping-calendar] .sc-title::after,.sm-theme .sm-original-copy [data-shipping-calendar] h3::before,.sm-theme .sm-original-copy [data-shipping-calendar] h3::after{content:none}\n.sm-theme .sm-original-copy [data-shipping-calendar] p{margin:0}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-intro{color:var(--sc-muted);font-size:14px}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-notice{font-size:13px;background:#f4f7f9;border-left:3px solid #95a8bc;border-radius:0 8px 8px 0;padding:11px 14px;margin:0 0 22px;white-space:pre-line}\n.sm-theme .sm-original-copy [data-shipping-calendar] button,.sm-theme .sm-original-copy [data-shipping-calendar] input,.sm-theme .sm-original-copy [data-shipping-calendar] label{font:inherit;letter-spacing:normal;text-transform:none}\n.sm-theme .sm-original-copy [data-shipping-calendar] button{cursor:pointer;box-shadow:none;min-width:0;margin:0;outline-offset:3px;background-image:none;appearance:none;-webkit-appearance:none}\n.sm-theme .sm-original-copy [data-shipping-calendar] button:disabled{cursor:default}\n.sm-theme .sm-original-copy [data-shipping-calendar] button:focus-visible,.sm-theme .sm-original-copy [data-shipping-calendar] input:focus-visible{outline:3px solid #7b9fca}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-period{border:0;margin:0 0 24px;padding:0;display:flex;gap:12px;flex-wrap:wrap;min-width:0}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-period legend{font-size:13px;font-weight:700;margin:0 0 9px;padding:0;float:none;width:100%}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-period-option{display:flex;align-items:center;gap:8px;border:1px solid var(--sc-line);background:#fff;padding:8px 14px;border-radius:9px;cursor:pointer;line-height:1.6;color:var(--sc-ink);margin:0}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-period-option:has(input:checked){background:#eff4fa;border-color:#7b96b5}\n.sm-theme .sm-original-copy [data-shipping-calendar] input[type=radio]{appearance:auto;-webkit-appearance:radio;width:16px;height:16px;accent-color:var(--sc-ink);padding:0;margin:0;position:static;opacity:1}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-controls{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-month-nav{display:flex;align-items:center;gap:14px}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-month-label{font-size:14px;font-weight:700;min-width:88px;text-align:center}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-nav-button{font-size:25px;color:var(--sc-ink);background:#fff;border:1px solid var(--sc-line);border-radius:8px;width:36px;height:36px;padding:0;line-height:1}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-nav-button:disabled{color:#bdc5ce;background:#f8f9fa}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-today{color:var(--sc-ink);background:#fff;border:1px solid var(--sc-line);border-radius:8px;font-size:12px;font-weight:650;padding:7px 12px;line-height:1.6}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-calendars{display:grid;grid-template-columns:repeat(2,minmax(240px,1fr));gap:28px;overflow-x:auto;padding-bottom:6px}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-month{min-width:0}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-month-title{font-size:16px;font-weight:700;text-align:center;margin:0 0 13px;padding:0;border:0;background:none;color:var(--sc-ink);line-height:1.6}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-table{border-collapse:separate;border-spacing:3px;table-layout:fixed;width:100%;margin:0;border:0;background:none}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-table th{font-size:11px;font-weight:650;color:var(--sc-muted);text-align:center;padding:0 0 7px;border:0;background:none;width:auto}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-table .sc-sunday{color:var(--sc-rose)}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-table .sc-saturday{color:#5e7eab}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-table td{padding:0;height:66px;vertical-align:top;border:0;background:none;min-width:0;position:static}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-day{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:3px;width:100%;height:65px;padding:6px 0 3px;border:1px solid transparent;border-radius:9px;background:#f4f7f9;color:var(--sc-ink);line-height:1.4}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-day:hover:not(:disabled){border-color:#91a8bd;background:#eaf0f5}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-day-number{font-size:15px;font-weight:600}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-day.sc-closed{background:#faf1f2;color:var(--sc-rose)}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-day.sc-current:not(.sc-selected){border-color:#7c8fa3}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-day.sc-ship-express,.sm-theme .sm-original-copy [data-shipping-calendar] .sc-day.sc-ship-express:hover:not(:disabled){background:var(--sc-express);color:#fff;border-color:var(--sc-express)}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-day.sc-ship-normal,.sm-theme .sm-original-copy [data-shipping-calendar] .sc-day.sc-ship-normal:hover:not(:disabled){background:var(--sc-normal);color:#fff;border-color:var(--sc-normal)}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-day.sc-selected,.sm-theme .sm-original-copy [data-shipping-calendar] .sc-day.sc-selected:hover:not(:disabled){background:var(--sc-ink);color:#fff;border-color:var(--sc-ink)}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-day:disabled{background:#fafbfc;color:#c1c9d2;border-color:transparent}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-day-tags{display:flex;flex-wrap:wrap;justify-content:center;gap:2px;width:100%;min-height:17px}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-tag{display:block;font-size:9px;font-weight:650;border-radius:3px;padding:0 3px;line-height:1.65;white-space:nowrap}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-tag-express{background:#d5eee8;color:#076c62}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-tag-normal{background:#e1e8fa;color:#2e509b}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-ship-express .sc-tag-express,.sm-theme .sm-original-copy [data-shipping-calendar] .sc-ship-normal .sc-tag-normal{background:#ffffff2e;color:#fff}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-legend{display:flex;gap:15px;flex-wrap:wrap;list-style:none;font-size:11px;color:var(--sc-muted);margin:14px 0 24px;padding:0}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-legend li{display:flex;align-items:center;gap:5px;list-style:none;margin:0;padding:0}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-dot{display:inline-block;width:8px;height:8px;border-radius:50%;flex:0 0 auto}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-dot-selected{background:var(--sc-ink)}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-dot-express{background:var(--sc-express)}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-dot-normal{background:var(--sc-normal)}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-dot-closed{background:#daabb1}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-results{border-bottom:1px solid var(--sc-line);padding-bottom:22px;margin-bottom:22px}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-selection{font-size:15px;font-weight:700;line-height:1.7}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-receipt{font-size:12px;color:var(--sc-muted);margin:4px 0 15px}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-result-card{border:1px solid #d5e6e1;background:#f0f8f5;border-radius:12px;padding:17px 19px}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-result-normal{border-color:#d9e2f0;background:#f1f5fb}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-result-card h3{font-size:14px;font-weight:700;color:var(--sc-express);line-height:1.6;border:0;background:none;padding:0;margin:0 0 9px}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-result-normal h3{color:var(--sc-normal)}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-result-year{font-size:11px;color:var(--sc-muted);display:block;margin-bottom:1px}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-result-date{display:block;font-size:23px;line-height:1.6;font-weight:750;letter-spacing:.005em;color:var(--sc-ink)}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-result-card p{font-size:12px;color:var(--sc-muted)}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-footer{font-size:11px;color:var(--sc-muted);line-height:1.8;margin-top:17px}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-footer p+p{margin-top:5px}\n.sm-theme .sm-original-copy [data-shipping-calendar] .sc-error{font-size:13px;color:var(--sc-muted);padding:15px 0}\n@media(max-width:620px){.sm-theme .sm-original-copy [data-shipping-calendar]{margin:16px auto}.sm-theme .sm-original-copy [data-shipping-calendar] .sc-panel{padding:21px 15px;border-radius:14px}.sm-theme .sm-original-copy [data-shipping-calendar] .sc-title{font-size:22px}.sm-theme .sm-original-copy [data-shipping-calendar] .sc-intro{font-size:12px}.sm-theme .sm-original-copy [data-shipping-calendar] .sc-calendars{grid-template-columns:repeat(2,minmax(240px,1fr));gap:18px}.sm-theme .sm-original-copy [data-shipping-calendar] .sc-period{gap:8px}.sm-theme .sm-original-copy [data-shipping-calendar] .sc-period-option{padding:8px 10px;font-size:13px}.sm-theme .sm-original-copy [data-shipping-calendar] .sc-table td{height:58px}.sm-theme .sm-original-copy [data-shipping-calendar] .sc-day{height:57px}.sm-theme .sm-original-copy [data-shipping-calendar] .sc-cards{gap:9px}.sm-theme .sm-original-copy [data-shipping-calendar] .sc-result-card{padding:13px 10px}.sm-theme .sm-original-copy [data-shipping-calendar] .sc-result-date{font-size:19px}.sm-theme .sm-original-copy [data-shipping-calendar] .sc-selection{font-size:13px}.sm-theme .sm-original-copy [data-shipping-calendar] .sc-legend{gap:10px}}\n@media(prefers-reduced-motion:reduce){.sm-theme .sm-original-copy [data-shipping-calendar] *{scroll-behavior:auto}}\n@media print{.sm-theme .sm-original-copy [data-shipping-calendar] .sc-controls,.sm-theme .sm-original-copy [data-shipping-calendar] .sc-period{display:none}.sm-theme .sm-original-copy [data-shipping-calendar] .sc-panel{box-shadow:none;break-inside:avoid}}\n\n\n\/* Keep widget headings independent of the article typography. *\/\n.sm-theme .sm-original-copy [data-shipping-calendar] :is(h2,h3){font-family:inherit}\n\n\/* Keep month navigation and the Today button readable on narrow screens. *\/\n@media(max-width:620px){.sm-theme .sm-original-copy [data-shipping-calendar] .sc-controls{flex-direction:column;align-items:stretch}.sm-theme .sm-original-copy [data-shipping-calendar] .sc-month-nav{justify-content:space-between}.sm-theme .sm-original-copy [data-shipping-calendar] .sc-month-label{white-space:nowrap}.sm-theme .sm-original-copy [data-shipping-calendar] .sc-today{align-self:flex-end;white-space:nowrap}}\n<\/style>\n<div data-shipping-calendar>\n  <noscript>\u767a\u9001\u4e88\u5b9a\u65e5\u306e\u8868\u793a\u306b\u306fJavaScript\u3092\u6709\u52b9\u306b\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/noscript>\n  <!-- \u7de8\u96c6\u3059\u308b\u8a2d\u5b9a\u306f\u3001\u3053\u306eJSON\u5185\u3067\u3059\u3002\u795d\u65e5\u30c7\u30fc\u30bf\u306e\u9014\u4e2d\u306f\u5909\u66f4\u3057\u306a\u3044\u3067\u304f\u3060\u3055\u3044\u3002 -->\n  <script type=\"application\/json\" data-shipping-config>\n{\n  \"normalBusinessDays\": 6,\n  \"expressBusinessDays\": 3,\n  \"bufferBusinessDays\": 1,\n  \"cutoffHour\": 12,\n  \"verifiedFrom\": \"2026-01-01\",\n  \"verifiedThrough\": \"2027-12-31\",\n  \"extraClosedDates\": [],\n  \"closedDateRanges\": [],\n  \"notice\": \"\u55b6\u696d\u65e5\u306e\u6b63\u5348\u4ee5\u964d\u306e\u3054\u8cfc\u5165\u306f\u3001\u7fcc\u55b6\u696d\u65e5\u53d7\u4ed8\u3068\u3057\u3066\u8a08\u7b97\u3057\u307e\u3059\u3002\u4f11\u696d\u65e5\u306e\u3054\u8cfc\u5165\u306f\u3001\u6b21\u306e\u55b6\u696d\u65e5\u53d7\u4ed8\u3068\u306a\u308a\u307e\u3059\u3002\",\n  \"holidays\": {\n    \"2026-01-01\": \"\u5143\u65e5\",\n    \"2026-01-12\": \"\u6210\u4eba\u306e\u65e5\",\n    \"2026-02-11\": \"\u5efa\u56fd\u8a18\u5ff5\u306e\u65e5\",\n    \"2026-02-23\": \"\u5929\u7687\u8a95\u751f\u65e5\",\n    \"2026-03-20\": \"\u6625\u5206\u306e\u65e5\",\n    \"2026-04-29\": \"\u662d\u548c\u306e\u65e5\",\n    \"2026-05-03\": \"\u61b2\u6cd5\u8a18\u5ff5\u65e5\",\n    \"2026-05-04\": \"\u307f\u3069\u308a\u306e\u65e5\",\n    \"2026-05-05\": \"\u3053\u3069\u3082\u306e\u65e5\",\n    \"2026-05-06\": \"\u4f11\u65e5\",\n    \"2026-07-20\": \"\u6d77\u306e\u65e5\",\n    \"2026-08-11\": \"\u5c71\u306e\u65e5\",\n    \"2026-09-21\": \"\u656c\u8001\u306e\u65e5\",\n    \"2026-09-22\": \"\u4f11\u65e5\",\n    \"2026-09-23\": \"\u79cb\u5206\u306e\u65e5\",\n    \"2026-10-12\": \"\u30b9\u30dd\u30fc\u30c4\u306e\u65e5\",\n    \"2026-11-03\": \"\u6587\u5316\u306e\u65e5\",\n    \"2026-11-23\": \"\u52e4\u52b4\u611f\u8b1d\u306e\u65e5\",\n    \"2027-01-01\": \"\u5143\u65e5\",\n    \"2027-01-11\": \"\u6210\u4eba\u306e\u65e5\",\n    \"2027-02-11\": \"\u5efa\u56fd\u8a18\u5ff5\u306e\u65e5\",\n    \"2027-02-23\": \"\u5929\u7687\u8a95\u751f\u65e5\",\n    \"2027-03-21\": \"\u6625\u5206\u306e\u65e5\",\n    \"2027-03-22\": \"\u4f11\u65e5\",\n    \"2027-04-29\": \"\u662d\u548c\u306e\u65e5\",\n    \"2027-05-03\": \"\u61b2\u6cd5\u8a18\u5ff5\u65e5\",\n    \"2027-05-04\": \"\u307f\u3069\u308a\u306e\u65e5\",\n    \"2027-05-05\": \"\u3053\u3069\u3082\u306e\u65e5\",\n    \"2027-07-19\": \"\u6d77\u306e\u65e5\",\n    \"2027-08-11\": \"\u5c71\u306e\u65e5\",\n    \"2027-09-20\": \"\u656c\u8001\u306e\u65e5\",\n    \"2027-09-23\": \"\u79cb\u5206\u306e\u65e5\",\n    \"2027-10-11\": \"\u30b9\u30dd\u30fc\u30c4\u306e\u65e5\",\n    \"2027-11-03\": \"\u6587\u5316\u306e\u65e5\",\n    \"2027-11-23\": \"\u52e4\u52b4\u611f\u8b1d\u306e\u65e5\"\n  }\n}\n<\/script>\n<\/div>\n<script>\n(function (root, factory) {\n  'use strict';\n  if (typeof module === 'object' && module.exports) module.exports = factory();\n  else root.ShippingCalendarEngine = factory();\n})(typeof globalThis !== 'undefined' ? globalThis : this, function () {\n  'use strict';\n  var DAY = 86400000;\n  function fail(code) { var error = new Error(code); error.code = code; throw error; }\n  function dayNumber(key) {\n    if (typeof key !== 'string' || !\/^\\d{4}-\\d{2}-\\d{2}$\/.test(key)) fail('INVALID_DATE');\n    var value = Date.parse(key + 'T00:00:00Z');\n    if (!Number.isFinite(value) || new Date(value).toISOString().slice(0, 10) !== key) fail('INVALID_DATE');\n    return value \/ DAY;\n  }\n  function dayKey(number) {\n    if (!Number.isInteger(number)) fail('INVALID_DAY');\n    return new Date(number * DAY).toISOString().slice(0, 10);\n  }\n  function weekday(key) { return new Date(dayNumber(key) * DAY).getUTCDay(); }\n  function japanNow(value) {\n    var instant = value instanceof Date ? value.getTime() : Date.parse(value);\n    if (!Number.isFinite(instant)) fail('INVALID_CLOCK');\n    var local = new Date(instant + 9 * 3600000);\n    return { date: local.toISOString().slice(0, 10), hour: local.getUTCHours(), minute: local.getUTCMinutes() };\n  }\n  function integer(value, min, max) { return Number.isInteger(value) && value >= min && value <= max; }\n  function create(config) {\n    if (!config || !integer(config.normalBusinessDays, 1, 60) || !integer(config.expressBusinessDays, 1, 60) ||\n        !integer(config.bufferBusinessDays, 0, 30) || !integer(config.cutoffHour, 0, 23)) fail('INVALID_SETTINGS');\n    var start = dayNumber(config.verifiedFrom), end = dayNumber(config.verifiedThrough);\n    if (end < start || end - start > 3660) fail('INVALID_COVERAGE');\n    var holidays = Object.create(null), closed = Object.create(null);\n    Object.keys(config.holidays || {}).forEach(function (key) {\n      dayNumber(key); holidays[key] = String(config.holidays[key]);\n    });\n    (config.extraClosedDates || []).forEach(function (key) { dayNumber(key); closed[key] = true; });\n    (config.closedDateRanges || []).forEach(function (range) {\n      var from = dayNumber(range.from), to = dayNumber(range.to);\n      if (to < from || to - from > 370) fail('INVALID_CLOSURE_RANGE');\n      for (var n = from; n <= to; n++) closed[dayKey(n)] = true;\n    });\n    function supports(key) { var n = dayNumber(key); return n >= start && n <= end; }\n    function assertSupported(key) { if (!supports(key)) fail('OUT_OF_COVERAGE'); }\n    function closedReason(key) {\n      assertSupported(key);\n      if (closed[key]) return '\u4f11\u696d\u65e5';\n      if (holidays[key]) return holidays[key];\n      var w = weekday(key);\n      return w === 0 || w === 6 ? '\u571f\u65e5\u4f11\u696d' : '';\n    }\n    function isBusiness(key) { return closedReason(key) === ''; }\n    function seek(key, include) {\n      var n = dayNumber(key) + (include ? 0 : 1);\n      for (var count = 0; count < 400; count++, n++) {\n        var candidate = dayKey(n); assertSupported(candidate);\n        if (isBusiness(candidate)) return candidate;\n      }\n      fail('NO_BUSINESS_DAY');\n    }\n    function addBusinessDays(key, count) {\n      if (!integer(count, 0, 120)) fail('INVALID_BUSINESS_DAYS');\n      assertSupported(key);\n      var result = key;\n      for (var n = 0; n < count; n++) result = seek(result, false);\n      return result;\n    }\n    function calculate(key, period) {\n      assertSupported(key);\n      if (!(period === 'before' || period === 'after')) fail('INVALID_PERIOD');\n      var closedDay = !isBusiness(key);\n      \/\/ \u4f11\u65e5\u306e\u6b63\u5348\u4ee5\u964d\u3082\u3001\u6700\u521d\u306e\u55b6\u696d\u65e5\u53d7\u4ed8\u3002\u4e8c\u91cd\u306b\u7fcc\u55b6\u696d\u65e5\u3078\u9001\u3089\u306a\u3044\u3002\n      var receipt = closedDay ? seek(key, true) : period === 'after' ? seek(key, false) : key;\n      return Object.freeze({\n        selectedDate: key, period: period, receiptDate: receipt, selectedDateClosed: closedDay,\n        normalDate: addBusinessDays(receipt, config.normalBusinessDays + config.bufferBusinessDays),\n        expressDate: addBusinessDays(receipt, config.expressBusinessDays + config.bufferBusinessDays)\n      });\n    }\n    return Object.freeze({ supports: supports, isBusiness: isBusiness, closedReason: closedReason,\n      addBusinessDays: addBusinessDays, calculate: calculate,\n      verifiedFrom: config.verifiedFrom, verifiedThrough: config.verifiedThrough, cutoffHour: config.cutoffHour });\n  }\n  return Object.freeze({ dayNumber: dayNumber, dayKey: dayKey, weekday: weekday, japanNow: japanNow, create: create });\n});\n\n<\/script>\n<script>\n(function (root) {\n  'use strict';\n  var E = root.ShippingCalendarEngine, weekdays = ['\u65e5', '\u6708', '\u706b', '\u6c34', '\u6728', '\u91d1', '\u571f'];\n  var instanceCount = 0;\n  function formatDate(key, year) {\n    return (year ? Number(key.slice(0, 4)) + '\u5e74' : '') + Number(key.slice(5, 7)) + '\u6708' +\n      Number(key.slice(8, 10)) + '\u65e5\uff08' + weekdays[E.weekday(key)] + '\uff09';\n  }\n  function element(tag, className, text) {\n    var node = document.createElement(tag);\n    if (className) node.className = className;\n    if (text !== undefined) node.textContent = text;\n    return node;\n  }\n  function button(className, text) {\n    var node = element('button', className, text); node.type = 'button'; return node;\n  }\n  function monthKey(index) {\n    var year = Math.floor(index \/ 12), month = index % 12 + 1;\n    return String(year).padStart(4, '0') + '-' + String(month).padStart(2, '0');\n  }\n  function monthIndex(key) { return Number(key.slice(0, 4)) * 12 + Number(key.slice(5, 7)) - 1; }\n  function mount(container, settings, options) {\n    options = options || {};\n    var engine = E.create(settings), id = 'shipping-cal-' + (++instanceCount) + '-' + Math.random().toString(36).slice(2, 9);\n    var cutoffText = engine.cutoffHour === 12 ? '\u6b63\u5348' : String(engine.cutoffHour).padStart(2, '0') + ':00';\n    var clock = options.clock || function () { return new Date(); };\n    var today = E.japanNow(clock());\n    var state = { date: today.date, period: today.hour >= engine.cutoffHour ? 'after' : 'before',\n      month: monthIndex(today.date), followClock: true, manualPeriod: false };\n    var minMonth = monthIndex(engine.verifiedFrom), maxMonth = monthIndex(engine.verifiedThrough);\n    var panel = element('section', 'sc-panel'); panel.setAttribute('aria-label', '\u767a\u9001\u4e88\u5b9a\u65e5\u30ab\u30ec\u30f3\u30c0\u30fc');\n    var header = element('header', 'sc-header');\n    header.append(element('span', 'sc-eyebrow', 'SHIPPING CALENDAR'), element('h2', 'sc-title', '\u767a\u9001\u4e88\u5b9a\u65e5\u30ab\u30ec\u30f3\u30c0\u30fc'),\n      element('p', 'sc-intro', '\u3054\u8cfc\u5165\u4e88\u5b9a\u65e5\u3092\u30af\u30ea\u30c3\u30af\u3059\u308b\u3068\u3001\u901a\u5e38\u4fbf\u30fb\u6025\u884c\u4fbf\u306e\u767a\u9001\u4e88\u5b9a\u65e5\u304c\u8868\u793a\u3055\u308c\u307e\u3059\u3002'));\n    var notice = element('p', 'sc-notice');\n    notice.textContent = settings.notice || '';\n    if (!notice.textContent) notice.hidden = true;\n    var form = element('fieldset', 'sc-period');\n    form.append(element('legend', '', '\u3054\u6ce8\u6587\u6642\u523b'));\n    var radioBefore = element('input'), radioAfter = element('input');\n    [[radioBefore, 'before', cutoffText + '\u3088\u308a\u524d'], [radioAfter, 'after', cutoffText + '\u4ee5\u964d']].forEach(function (entry) {\n      var radio = entry[0]; radio.type = 'radio'; radio.name = id + '-period'; radio.value = entry[1]; radio.id = id + '-' + entry[1];\n      var label = element('label', 'sc-period-option'); label.htmlFor = radio.id;\n      label.append(radio, element('span', '', entry[2])); form.append(label);\n      radio.addEventListener('change', function () { if (radio.checked) { state.period = radio.value; state.manualPeriod = true; state.followClock = false; render(); } });\n    });\n    var controls = element('div', 'sc-controls'), nav = element('div', 'sc-month-nav');\n    var prev = button('sc-nav-button', '\u2039'), next = button('sc-nav-button', '\u203a'), nowButton = button('sc-today', '\u4eca\u65e5\u3092\u9078\u629e');\n    prev.setAttribute('aria-label', '\u524d\u306e\u6708\u3092\u8868\u793a'); next.setAttribute('aria-label', '\u6b21\u306e\u6708\u3092\u8868\u793a');\n    var monthLabel = element('span', 'sc-month-label');\n    nav.append(prev, monthLabel, next); controls.append(nav, nowButton);\n    var calendars = element('div', 'sc-calendars');\n    var legend = element('ul', 'sc-legend');\n    [['selected', '\u9078\u629e\u3057\u305f\u65e5'], ['express', '\u6025\u884c\u4fbf'], ['normal', '\u901a\u5e38\u4fbf'], ['closed', '\u4f11\u696d\u65e5']].forEach(function (entry) {\n      var li = element('li'); li.append(element('i', 'sc-dot sc-dot-' + entry[0]), element('span', '', entry[1])); legend.append(li);\n    });\n    var results = element('section', 'sc-results'); results.setAttribute('aria-live', 'polite'); results.setAttribute('aria-atomic', 'true');\n    var selectedText = element('p', 'sc-selection');\n    var receiptText = element('p', 'sc-receipt');\n    var cards = element('div', 'sc-cards');\n    function card(kind, label) {\n      var node = element('div', 'sc-result-card sc-result-' + kind), date = element('strong', 'sc-result-date'), year = element('span', 'sc-result-year');\n      node.append(element('h3', '', label), year, date, element('p', '', '\u307e\u3067\u306b\u767a\u9001\u4e88\u5b9a')); cards.append(node);\n      return { node: node, date: date, year: year };\n    }\n    var express = card('express', '\u6025\u884c\u4fbf'), normal = card('normal', '\u901a\u5e38\u4fbf');\n    var error = element('p', 'sc-error'); error.hidden = true;\n    results.append(selectedText, receiptText, cards, error);\n    var footer = element('div', 'sc-footer');\n    footer.append(element('p', '', '\u8868\u793a\u306f\u3054\u8cfc\u5165\u78ba\u8a8d\u5f8c\u306e\u767a\u9001\u4e88\u5b9a\u3067\u3059\u3002\u5546\u54c1\u304c\u304a\u624b\u5143\u306b\u5c4a\u304f\u65e5\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002'),\n      element('p', '', '\u571f\u65e5\u30fb\u795d\u65e5\u30fb\u8a2d\u5b9a\u3055\u308c\u305f\u4f11\u696d\u65e5\u3092\u9664\u3044\u3066\u8a08\u7b97\u3057\u307e\u3059\u3002\u7d0d\u671f\u5909\u66f4\u306e\u3054\u6848\u5185\u304c\u3042\u308b\u5834\u5408\u306f\u3001\u304a\u77e5\u3089\u305b\u306e\u5185\u5bb9\u3092\u512a\u5148\u3057\u3066\u304f\u3060\u3055\u3044\u3002'));\n    var noScript = container.querySelector('noscript');\n    container.replaceChildren(panel);\n    panel.append(header, notice, form, results, controls, calendars, legend, footer);\n    if (noScript) panel.append(noScript);\n    function chooseDay(key) {\n      state.date = key;\n      var current = E.japanNow(clock());\n      if (!state.manualPeriod) state.period = key === current.date && current.hour >= engine.cutoffHour ? 'after' : 'before';\n      state.followClock = key === current.date && !state.manualPeriod;\n      render();\n    }\n    function month(index, plan, current) {\n      var key = monthKey(index), year = Number(key.slice(0, 4)), m = Number(key.slice(5, 7));\n      var wrap = element('section', 'sc-month');\n      var heading = element('h3', 'sc-month-title', year + '\u5e74 ' + m + '\u6708');\n      heading.id = id + '-month-' + index;\n      var table = element('table', 'sc-table'); table.setAttribute('aria-labelledby', heading.id);\n      var thead = element('thead'), tr = element('tr');\n      weekdays.forEach(function (text, n) { var th = element('th', n === 0 ? 'sc-sunday' : n === 6 ? 'sc-saturday' : '', text); th.scope = 'col'; tr.append(th); });\n      thead.append(tr); var tbody = element('tbody');\n      var first = E.dayNumber(key + '-01'), lead = E.weekday(key + '-01');\n      for (var row = 0; row < 6; row++) {\n        var line = element('tr');\n        for (var col = 0; col < 7; col++) {\n          var n = first - lead + row * 7 + col, date = E.dayKey(n), td = element('td');\n          if (date.slice(0, 7) === key) {\n            var supported = engine.supports(date), closed = supported ? engine.closedReason(date) : '';\n            var day = button('sc-day', '');\n            var label = formatDate(date, true);\n            day.dataset.date = date;\n            if (closed) { day.classList.add('sc-closed'); label += '\u30fb' + closed; }\n            if (date === current.date) day.classList.add('sc-current');\n            if (date === state.date) { day.classList.add('sc-selected'); label += '\u30fb\u9078\u629e\u4e2d'; }\n            day.setAttribute('aria-pressed', date === state.date ? 'true' : 'false');\n            day.append(element('span', 'sc-day-number', Number(date.slice(8, 10))));\n            var tags = element('span', 'sc-day-tags');\n            if (plan ? date === plan.expressDate : false) { day.classList.add('sc-ship-express'); tags.append(element('span', 'sc-tag sc-tag-express', '\u6025\u884c')); label += '\u30fb\u6025\u884c\u4fbf\u767a\u9001\u4e88\u5b9a'; }\n            if (plan ? date === plan.normalDate : false) { day.classList.add('sc-ship-normal'); tags.append(element('span', 'sc-tag sc-tag-normal', '\u901a\u5e38')); label += '\u30fb\u901a\u5e38\u4fbf\u767a\u9001\u4e88\u5b9a'; }\n            day.append(tags);\n            day.disabled = !supported;\n            day.setAttribute('aria-label', label);\n            day.addEventListener('click', function (event) { chooseDay(event.currentTarget.dataset.date); });\n            td.append(day);\n          }\n          line.append(td);\n        }\n        tbody.append(line);\n      }\n      table.append(thead, tbody); wrap.append(heading, table); return wrap;\n    }\n    function render() {\n      var current = E.japanNow(clock()), plan = null;\n      try { plan = engine.calculate(state.date, state.period); } catch (e) { \/* \u78ba\u8a8d\u6e08\u307f\u306e\u795d\u65e5\u7bc4\u56f2\u5916\u306f\u63a8\u6e2c\u3057\u306a\u3044\u3002 *\/ }\n      state.month = Math.max(minMonth, Math.min(maxMonth, state.month));\n      radioBefore.checked = state.period === 'before'; radioAfter.checked = state.period === 'after';\n      prev.disabled = state.month <= minMonth; next.disabled = state.month >= maxMonth;\n      var left = monthKey(state.month), right = monthKey(state.month + 1);\n      monthLabel.textContent = Number(left.slice(0, 4)) + '\u5e74 ' + Number(left.slice(5, 7)) + '\u6708 \u2013 ' +\n        (left.slice(0, 4) !== right.slice(0, 4) ? Number(right.slice(0, 4)) + '\u5e74 ' : '') + Number(right.slice(5, 7)) + '\u6708';\n      calendars.replaceChildren(month(state.month, plan, current), month(state.month + 1, plan, current));\n      selectedText.textContent = formatDate(state.date, true) + ' ' + cutoffText + (state.period === 'before' ? '\u3088\u308a\u524d' : '\u4ee5\u964d') + '\u306e\u3054\u8cfc\u5165';\n      cards.hidden = !plan; receiptText.hidden = !plan; error.hidden = !!plan;\n      if (plan) {\n        receiptText.textContent = formatDate(plan.receiptDate, true) + '\u306e\u53d7\u4ed8\u3068\u3057\u3066\u8a08\u7b97\u3057\u3066\u3044\u307e\u3059\u3002';\n        [[express, plan.expressDate], [normal, plan.normalDate]].forEach(function (entry) {\n          entry[0].year.textContent = Number(entry[1].slice(0, 4)) + '\u5e74';\n          entry[0].date.textContent = formatDate(entry[1], false);\n        });\n      } else error.textContent = '\u3053\u306e\u65e5\u306e\u767a\u9001\u4e88\u5b9a\u306f\u73fe\u5728\u3054\u6848\u5185\u3067\u304d\u307e\u305b\u3093\u3002\u5225\u306e\u65e5\u3092\u304a\u9078\u3073\u3044\u305f\u3060\u304f\u304b\u3001\u5f53\u5e97\u306e\u304a\u77e5\u3089\u305b\u3092\u3054\u78ba\u8a8d\u304f\u3060\u3055\u3044\u3002';\n      return plan;\n    }\n    prev.addEventListener('click', function () { state.month--; render(); });\n    next.addEventListener('click', function () { state.month++; render(); });\n    nowButton.addEventListener('click', function () {\n      var current = E.japanNow(clock()); state.date = current.date; state.month = monthIndex(current.date);\n      state.period = current.hour >= engine.cutoffHour ? 'after' : 'before'; state.followClock = true; state.manualPeriod = false; render();\n    });\n    var lastClock = today.date + '\/' + (today.hour >= engine.cutoffHour);\n    function tick() {\n      var current = E.japanNow(clock()), key = current.date + '\/' + (current.hour >= engine.cutoffHour);\n      if (key !== lastClock) {\n        if (state.followClock) {\n          state.date = current.date; state.period = current.hour >= engine.cutoffHour ? 'after' : 'before';\n          if (current.date.slice(0, 7) !== today.date.slice(0, 7)) state.month = monthIndex(current.date);\n        }\n        today = current; lastClock = key; render();\n      }\n    }\n    render();\n    var timer = options.noTimer ? null : root.setInterval(tick, 15000);\n    return Object.freeze({ render: render, tick: tick, chooseDay: chooseDay,\n      destroy: function () { if (timer !== null) root.clearInterval(timer); } });\n  }\n  function mountAll() {\n    document.querySelectorAll('[data-shipping-calendar]').forEach(function (container) {\n      if (container.dataset.shippingMounted) return;\n      var config = container.querySelector('[data-shipping-config]');\n      if (!config) return;\n      try {\n        var settings = JSON.parse(config.textContent); mount(container, settings); container.dataset.shippingMounted = 'true';\n      } catch (e) {\n        container.textContent = '\u767a\u9001\u4e88\u5b9a\u30ab\u30ec\u30f3\u30c0\u30fc\u3092\u6e96\u5099\u4e2d\u3067\u3059\u3002\u3057\u3070\u3089\u304f\u3057\u3066\u304b\u3089\u3054\u78ba\u8a8d\u304f\u3060\u3055\u3044\u3002';\n      }\n    });\n  }\n  root.ShippingCalendarWidget = Object.freeze({ mount: mount, mountAll: mountAll });\n  if (document.readyState === 'loading') document.addEventListener('DOMContentLoaded', mountAll);\n  else mountAll();\n})(typeof globalThis !== 'undefined' ? globalThis : this);\n\n<\/script>\n<!-- \u767a\u9001\u4e88\u5b9a\u30ab\u30ec\u30f3\u30c0\u30fc\uff1a\u3053\u3053\u307e\u3067 -->\n\n","protected":false},"excerpt":{"rendered":"<p>\u767a\u9001\u4e88\u5b9a\u65e5\u306e\u8868\u793a\u306b\u306fJavaScript\u3092\u6709\u52b9\u306b\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-878","page","type-page","status-publish","hentry"],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.selfmedix.com\/index.php?rest_route=\/wp\/v2\/pages\/878","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.selfmedix.com\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.selfmedix.com\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.selfmedix.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.selfmedix.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=878"}],"version-history":[{"count":5,"href":"https:\/\/www.selfmedix.com\/index.php?rest_route=\/wp\/v2\/pages\/878\/revisions"}],"predecessor-version":[{"id":885,"href":"https:\/\/www.selfmedix.com\/index.php?rest_route=\/wp\/v2\/pages\/878\/revisions\/885"}],"wp:attachment":[{"href":"https:\/\/www.selfmedix.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=878"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}