{"id":5299,"date":"2025-08-08T13:42:10","date_gmt":"2025-08-08T18:42:10","guid":{"rendered":"https:\/\/itishoemath.com\/?p=5299"},"modified":"2025-10-17T10:18:46","modified_gmt":"2025-10-17T15:18:46","slug":"%e7%b5%90%e5%a9%9a%e3%81%ae%e7%bd%a0%e3%81%8b%e3%80%81%e7%9c%9f%e7%8f%a0%e3%81%ae%e8%81%96%e5%9f%9f%e3%81%8b","status":"publish","type":"post","link":"https:\/\/itishoemath.com\/ja\/%e7%b5%90%e5%a9%9a%e3%81%ae%e7%bd%a0%e3%81%8b%e3%80%81%e7%9c%9f%e7%8f%a0%e3%81%ae%e8%81%96%e5%9f%9f%e3%81%8b\/","title":{"rendered":"\u7d50\u5a5a\uff1a\u7f60\u304b\u8056\u57df\u304b\uff1f[\u30d1\u30fc\u30eb\u3068\u3068\u3082\u306b\uff3d"},"content":{"rendered":"<div data-elementor-type=\"wp-post\" data-elementor-id=\"5299\" class=\"elementor elementor-5299\" data-elementor-post-type=\"post\">\n\t\t\t\t<div class=\"elementor-element elementor-element-97dd7a3 e-flex e-con-boxed e-con e-parent\" data-id=\"97dd7a3\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-ce1c704 elementor-widget elementor-widget-html\" data-id=\"ce1c704\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h4>\u56e3\u584a\u4e16\u4ee3\u304c\u7406\u89e3\u3057\u3066\u3044\u306a\u3044\u3053\u3068<\/h4>\n\n\u7537\u6027\u305f\u3061\u306f\u3001\u7d50\u5a5a\u304c\u3069\u308c\u307b\u3069\u306e\u4ee3\u511f\u3092\u6255\u3046\u3053\u3068\u306b\u306a\u308b\u306e\u304b\u306b\u76ee\u899a\u3081\u3064\u3064\u3042\u308b\u3002 <span>h<\/span>oe_math\u3068\u30d1\u30fc\u30eb\u306f\u3001\u3042\u3089\u3086\u308b\u80cc\u666f\u3092\u6301\u3064\u7537\u305f\u3061\u304c\u3001\u306a\u305c\u7d50\u5a5a\u3092\u60aa\u3044\u53d6\u5f15\u3060\u3068\u8003\u3048\u3066\u3044\u308b\u306e\u304b\u3092\u8ad6\u7834\u3059\u308b\u3002\u96e2\u5a5a\u306e\u8a71\u306f\u300c\u9593\u9055\u3063\u305f\u5973\u6027\u300d\u3092\u9078\u3093\u3060\u3068\u3044\u3046\u3060\u3051\u306e\u8a71\u3067\u306f\u306a\u3044\u3002 <span>h<\/span>oe_math\u306f\u30b7\u30f3\u30d7\u30eb\u306a\u30a2\u30a4\u30c7\u30a2\u3092\u4f7f\u3063\u3066\u3044\u308b\uff1a\u793e\u4f1a\u304c\u4eba\u3005\u306b\u7d50\u5a5a\u751f\u6d3b\u3092\u5f37\u5236\u3057\u305f\u308a\u3001\u30b3\u30df\u30c3\u30c8\u30e1\u30f3\u30c8\u304c\u30bc\u30ed\u306b\u306a\u308b\u3068\u3001\u7d50\u5a5a\u306e\u8cea\u306f\u4f4e\u4e0b\u3059\u308b\u3002\u30b9\u30a4\u30fc\u30c8\u30b9\u30dd\u30c3\u30c8\uff1f\u7d50\u5a5a\u304c\u5b9f\u969b\u306b\u610f\u5473\u3092\u6301\u3064\u3088\u3046\u306b\u3001\u8a93\u3044\u3092\u7834\u3063\u305f\u5834\u5408\u306b\u5341\u5206\u306a\u7d50\u679c\u3092\u3082\u305f\u3089\u3059\u3053\u3068\u3060\u3002\n<br><br>\n\u5f7c\u3089\u306f\u7d50\u5a5a\u5951\u7d04\u3092\u30b9\u30dd\u30fc\u30c4\u5951\u7d04\u306e\u3088\u3046\u306b\u3059\u308b\u3068\u304b\u3001\u7d50\u5a5a\u306b\u661f\u306e\u8a55\u4fa1\u3092\u52a0\u3048\u308b\u3068\u5197\u8ac7\u3092\u8a00\u3044\u3001\u30c8\u30e0\u30fb\u30d6\u30ec\u30a4\u30c7\u30a3\u3067\u3055\u3048\u7d50\u5a5a\u3067\u52dd\u3066\u306a\u3044\u306e\u306b\u3001\u306a\u305c\u7537\u304c\u5951\u7d04\u3059\u308b\u306e\u304b\u3068\u7591\u554f\u3092\u5448\u3059\u308b\u3002\u7d50\u5c40\u306e\u3068\u3053\u308d <span>h<\/span>oe_math\u306f\u3001\u7537\u6027\u304c\u7d50\u5a5a\u306b\u8e0f\u307f\u5207\u308b\u552f\u4e00\u306e\u672c\u5f53\u306e\u7406\u7531\u306f\u3001\u3042\u3093\u306a\u306b\u3044\u3044\u4eba\u3068\u306f\u3082\u3046\u4e8c\u5ea6\u3068\u7d50\u3070\u308c\u306a\u3044\u3068\u601d\u3046\u304b\u3089\u3060\u3068\u8a00\u3046\u3002\u30d1\u30fc\u30eb\u306f\u3001\u7537\u6027\u304c\u7d50\u5a5a\u3059\u308b\u7406\u7531\u304c\u308f\u304b\u3089\u306a\u304f\u306a\u3063\u3066\u3044\u308b\u3002 <span>h<\/span>oe_math\u306f\u3001\u305f\u3068\u3048\u5b9f\u884c\u3059\u308b\u304b\u3069\u3046\u304b\u304c\u534a\u3005\u3067\u3042\u3063\u3066\u3082\u3001\u305d\u306e\u30ea\u30b9\u30af\u3060\u3051\u3092\u8003\u3048\u308b\u3068\u6050\u308d\u3057\u3044\u3053\u3068\u3060\u3068\u8a8d\u3081\u3066\u3044\u308b\u3002<br><br>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8858505 elementor-widget elementor-widget-html\" data-id=\"8858505\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<p> <\/p>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4860eef elementor-widget elementor-widget-html\" data-id=\"4860eef\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!-- CSV for video links and summaries -->\n<!-- Header: Not Translated -->\n<script id=\"video-data-header\" type=\"text\/plain\">\ntime|stop|tab|title|description\n<\/script>\n<div id=\"tp-translatable-strings2\"\n     style=\"color:#000101; background:#000101; width:100vw; height:auto; position:static; z-index:1; font-size:1px;\">\n<pre id=\"video-data-rows\">\n0|70|Perspectives|\u5909\u5316\u3059\u308b\u7d50\u5a5a\u89b3|\u500b\u4eba\u7684\u306a\u4f53\u9a13\u3084\u69d8\u3005\u306a\u80cc\u666f\u3092\u6301\u3064\u7537\u6027\u3078\u306e\u30a4\u30f3\u30bf\u30d3\u30e5\u30fc\u304b\u3089\u3001\u6587\u5316\u7684\u30fb\u5b97\u6559\u7684\u80cc\u666f\u3092\u554f\u308f\u305a\u3001\u7d50\u5a5a\u304c\u7537\u6027\u306b\u3068\u3063\u3066\u307e\u3059\u307e\u3059\u4e0d\u5229\u306b\u306a\u3063\u3066\u3044\u308b\u3068\u3044\u3046\u8a8d\u8b58\u304c\u5e83\u307e\u3063\u3066\u3044\u308b\u3053\u3068\u304c\u660e\u3089\u304b\u306b\u306a\u3063\u305f\u3002  \n70|180|\u5236\u7d04|\u7d50\u5a5a\u306e\u5236\u7d04\u3068\u8cea|\u793e\u4f1a\u7684\u3042\u308b\u3044\u306f\u6cd5\u7684\u306a\u5236\u7d04\u306e\u30ec\u30d9\u30eb\u306e\u9055\u3044\u304c\u3001\u7d50\u5a5a\u306e\u8cea\u306b\u3069\u306e\u3088\u3046\u306a\u5f71\u97ff\u3092\u4e0e\u3048\u308b\u304b\u3092\u8003\u5bdf\u3057\u3066\u304a\u308a\u3001\u6975\u7aef\u306a\u81ea\u7531\u3068\u6975\u7aef\u306a\u5236\u7d04\u306e\u4e21\u65b9\u304c\u4e0d\u5e78\u3092\u3082\u305f\u3089\u3059\u53ef\u80fd\u6027\u304c\u3042\u308b\u4e00\u65b9\u3067\u3001\u30d0\u30e9\u30f3\u30b9\u306e\u53d6\u308c\u305f\u5236\u7d04\u304c\u30d1\u30fc\u30c8\u30ca\u30fc\u3068\u793e\u4f1a\u306e\u4e21\u65b9\u306b\u5229\u76ca\u3092\u3082\u305f\u3089\u3059\u53ef\u80fd\u6027\u304c\u3042\u308b\u3053\u3068\u3092\u793a\u5506\u3057\u3066\u3044\u308b\u3002  \n180|260|\u30aa\u30d7\u30c8\u30fb\u30a2\u30a6\u30c8|\u7d50\u5a5a\u306b\u304a\u3051\u308b\u30aa\u30d7\u30c8\u30fb\u30a2\u30a6\u30c8\u6761\u9805|\u7d50\u5a5a\u306b\u304a\u3044\u3066\u7537\u6027\u306b\u30aa\u30d7\u30c8\u30fb\u30a2\u30a6\u30c8\u6761\u9805\u3092\u8a2d\u3051\u308b\u3068\u3044\u3046\u30a2\u30a4\u30c7\u30a2\u3092\u691c\u8a0e\u3002\u59bb\u304c\u7121\u95a2\u5fc3\u306b\u306a\u3063\u305f\u308a\u3001\u7121\u793c\u306b\u306a\u3063\u305f\u308a\u3059\u308b\u3053\u3068\u3067\u3001\u592b\u306b\u5426\u5b9a\u7684\u306a\u7d50\u679c\u3092\u3082\u305f\u3089\u3059\u4e0d\u5e78\u306a\u7d50\u5a5a\u306e\u89b3\u5bdf\u306b\u57fa\u3065\u304f\u3002  \n260|320|\u4ee3\u66ff\u6848|\u7d50\u5a5a\u5951\u7d04\u306e\u518d\u8a2d\u8a08|\u4eba\u9593\u306e\u6027\u8cea\u3084\u73fe\u4ee3\u793e\u4f1a\u306e\u5909\u5316\u306b\u3088\u308a\u5408\u81f4\u3057\u3001\u7d50\u5a5a\u3092\u3088\u308a\u9b45\u529b\u7684\u3067\u516c\u5e73\u306a\u3082\u306e\u306b\u3059\u308b\u53ef\u80fd\u6027\u306e\u3042\u308b\u65b9\u6cd5\u3068\u3057\u3066\u3001\u671f\u9593\u9650\u5b9a\u5951\u7d04\u3084\u30ec\u30d3\u30e5\u30fc\u30b7\u30b9\u30c6\u30e0\u306a\u3069\u306e\u4ee3\u66ff\u7684\u306a\u7d50\u5a5a\u69cb\u9020\u304c\u8b70\u8ad6\u3055\u308c\u3066\u3044\u308b\u3002  \n320|400|\u30ea\u30b9\u30af|\u7537\u6027\u306b\u3068\u3063\u3066\u306e\u77e5\u899a\u30ea\u30b9\u30af|\u96e2\u5a5a\u3067\u3059\u3079\u3066\u3092\u5931\u3046\u306a\u3069\u3001\u7d50\u5a5a\u306b\u304a\u3051\u308b\u7537\u6027\u306b\u3068\u3063\u3066\u306e\u77e5\u899a\u30ea\u30b9\u30af\u306e\u9ad8\u3055\u306b\u3064\u3044\u3066\u53c2\u52a0\u8005\u304c\u8003\u5bdf\u3002  \n400|450|\u30b8\u30ec\u30f3\u30de|\u7d50\u5a5a\u306b\u95a2\u3059\u308b\u500b\u4eba\u7684\u306a\u30b8\u30ec\u30f3\u30de|\u7537\u6027\u304c\u7d50\u5a5a\u3059\u308b\u304b\u3069\u3046\u304b\u3092\u6c7a\u3081\u308b\u969b\u306b\u611f\u3058\u308b\u4e0d\u5b89\u3084\u4e0d\u78ba\u5b9f\u6027\u3001\u7279\u306b\u4ed6\u306b\u9069\u5f53\u306a\u76f8\u624b\u304c\u898b\u3064\u304b\u3089\u306a\u3044\u53ef\u80fd\u6027\u3068\u30ea\u30b9\u30af\u3092\u5929\u79e4\u306b\u304b\u3051\u305f\u5834\u5408\u306e\u4e0d\u5b89\u3084\u4e0d\u78ba\u5b9f\u6027\u306b\u3064\u3044\u3066\u3001\u500b\u4eba\u7684\u306a\u30a8\u30d4\u30bd\u30fc\u30c9\u3092\u4ea4\u3048\u3066\u5bfe\u8ac7\u306f\u7de0\u3081\u304f\u304f\u3089\u308c\u308b\u3002\n<\/pre>\n<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d08897e elementor-widget elementor-widget-html\" data-id=\"d08897e\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div id=\"tp-translatable-strings5\"\n     style=\"color:#000101; background:#000101; width:100vw; height:auto; position:static; z-index:1; font-size:1px;\">\n<span id=\"hiddenText\">\n0.0 \u3053\u306e\u4e16\u754c\u306b\u5165\u3063\u305f\u5f53\u521d\u306f\u3001\u306a\u305c\u7537\u6027\u304c\u7d50\u5a5a\u306b\u5426\u5b9a\u7684\u306a\u306e\u304b\u7406\u89e3\u3067\u304d\u306a\u304b\u3063\u305f\u3002\u79c1\u306e\u4e21\u89aa\u306f\u7d50\u5a5a\u3057\u3066\u3044\u305f\u3057\u3001\u79c1\u306f\u30af\u30e9\u30b9\u30672\u30013\u4eba\u3057\u304b\u96e2\u5a5a\u3057\u3066\u3044\u306a\u3044\u3088\u3046\u306a\u5c0f\u3055\u306a\u5b66\u6821\u306e\u51fa\u8eab\u3060\u3063\u305f\u306e\u3067\u3001\u7d50\u5a5a\u306f\u3044\u3044\u3082\u306e\u3060\u3068\u601d\u3063\u3066\u3044\u305f\u3002\n30.0 \u3067\u3082\u3001\u7537\u6027\u306b\u30a4\u30f3\u30bf\u30d3\u30e5\u30fc\u3057\u3066\u96e2\u5a5a\u306e\u8a71\u3092\u805e\u304f\u3088\u3046\u306b\u306a\u3063\u305f\u3002\n40.0 \u6700\u521d\u306f\u3001\u300c\u3059\u3079\u3066\u306e\u5973\u6027\u304c\u305d\u3046\u3067\u306f\u306a\u3044\u300d\u3068\u601d\u3044\u3001\u305d\u306e\u7537\u6027\u305f\u3061\u304c\u8d85\u30ea\u30d9\u30e9\u30eb\u306a\u5973\u6027\u3092\u9078\u3093\u3067\u3044\u308b\u3060\u3051\u3060\u3068\u601d\u3063\u305f\u3002\n50.0 \u3057\u304b\u3057\u3001\u6975\u7aef\u306a\u30a4\u30b9\u30e9\u30e0\u6559\u5f92\u3001\u6975\u7aef\u306a\u30ad\u30ea\u30b9\u30c8\u6559\u5f92\u3001\u30de\u30a4\u30b1\u30eb\u30fb\u30ce\u30a6\u30eb\u30ba\u306e\u30e9\u30c6\u30f3\u30fb\u30df\u30b5\u6559\u4f1a\u51fa\u8eab\u306e\u7537\u6027\u306a\u3069\u3001\u975e\u5e38\u306b\u4f1d\u7d71\u7684\u306a\u80cc\u666f\u3092\u6301\u3064\u7537\u6027\u306b\u30a4\u30f3\u30bf\u30d3\u30e5\u30fc\u3057\u305f\u3068\u3053\u308d\u3001\u5f7c\u3089\u306e\u4f55\u4eba\u304b\u306f\u4eca\u307e\u3067\u805e\u3044\u305f\u4e2d\u3067\u6700\u60aa\u306e\u96e2\u5a5a\u8a71\u3092\u3057\u305f\u3002\n70.0 \u7d50\u5c40\u306e\u3068\u3053\u308d\u3001\u7537\u6027\u306b\u3068\u3063\u3066\u7d50\u5a5a\u306f\u826f\u3044\u53d6\u5f15\u3067\u306f\u306a\u3044\u3068\u7d50\u8ad6\u3065\u3051\u305f\u3002\n80.0 Hoe_math\u304c\u300c\u78ba\u304b\u306b\u305d\u3046\u611f\u3058\u308b\u300d\u3068\u540c\u610f\u3057\u3001\u30d1\u30fc\u30eb\u304c\u305d\u306e\u8003\u3048\u3092\u8aac\u660e\u3059\u308b\u3088\u3046\u6c42\u3081\u308b\u3002\n90.0 Hoe_math\u306f\u3001\u793e\u4f1a\u304c\u4eba\u3005\u306b\u3069\u308c\u3060\u3051\u306e\u7d50\u5a5a\u3092\u5f37\u8981\u3057\u3066\u3044\u308b\u304b\u5bfe\u7d50\u5a5a\u306e\u8cea\u306b\u3064\u3044\u3066\u30b0\u30e9\u30d5\u3092\u4f5c\u308b\u3053\u3068\u3092\u63d0\u6848\u3059\u308b\u3002\n120.0 \u5f7c\u306f\u3001\u30cf\u30fc\u30ec\u30e0\u3084\u4e00\u592b\u591a\u59bb\u5236\u306e\u3088\u3046\u306b\u5f37\u5236\u529b\u304c\u5f37\u3059\u304e\u308b\u72b6\u6cc1\u3067\u306f\u3001\u7d50\u5a5a\u306e\u8cea\u306f\u4f4e\u3044\u304c\u3001\u3042\u308b\u7a0b\u5ea6\u306e\u5236\u7d04\u304c\u3042\u308c\u3070\u8cea\u306f\u9ad8\u304f\u306a\u308b\u3068\u8aac\u660e\u3059\u308b\u3002\n150.0 \u675f\u7e1b\u304c\u30bc\u30ed\u306a\u3089\u8cea\u306f\u4f4e\u304f\u3001\u675f\u7e1b\u304c\u6700\u5927\u306a\u3089\u8cea\u3082\u4f4e\u3044\u3002\u4e2d\u9593\u306e\u3069\u3053\u304b\u3001\u3064\u307e\u308a\u8a93\u3044\u3092\u7834\u3063\u305f\u5834\u5408\u306b\u73fe\u5b9f\u7684\u306a\u7d50\u679c\u304c\u4f34\u3046\u3068\u3053\u308d\u3067\u306f\u3001\u7d50\u5a5a\u306f\u6700\u3082\u5e78\u305b\u3067\u3042\u308a\u3001\u793e\u4f1a\u306b\u3068\u3063\u3066\u6700\u826f\u3067\u3042\u308b\u3002\n180.0 \u8a93\u3044\u3092\u7834\u3063\u305f\u5834\u5408\u306b\u3042\u308b\u7a0b\u5ea6\u306e\u7f70\u3092\u4e0e\u3048\u308b\u3053\u3068\u306f\u3001\u5b9f\u969b\u306b\u306f\u914d\u5076\u8005\u3068\u793e\u4f1a\u306e\u53cc\u65b9\u306b\u5229\u76ca\u3092\u3082\u305f\u3089\u3059\u3068\u3044\u3046\u3002\n190.0 \u30d1\u30fc\u30eb\u306f\u3001\u5973\u6027\u3060\u3051\u3067\u306a\u304f\u7537\u6027\u306b\u3082\u7d50\u5a5a\u306e\u30aa\u30d7\u30c8\u30a2\u30a6\u30c8\u6761\u9805\u304c\u3042\u308b\u3053\u3068\u3092\u671b\u3093\u3067\u3044\u308b\u3002\n200.0 \u7d50\u5a5a\u3092\u671b\u307e\u306a\u3044\u5973\u6027\u304c\u3044\u304b\u306b\u592b\u306e\u4eba\u751f\u3092\u60e8\u3081\u306a\u3082\u306e\u306b\u3059\u308b\u304b\u3001\u307e\u305f\u3001\u7121\u793c\u306a\u59bb\u3092\u898b\u308b\u306e\u304c\u3044\u304b\u306b\u4e00\u822c\u7684\u3067\u3042\u308b\u304b\u3092\u8ff0\u3079\u3066\u3044\u308b\u3002\n210.0 \u30d1\u30fc\u30eb\u306f\u3001\u3072\u3068\u305f\u3073 \"\u8d64\u6bdb \"\u306b\u306a\u308b\u3068\u3001\u666e\u901a\u306e\u59bb\u3067\u3055\u3048\u592b\u306b\u5bfe\u3057\u3066\u975e\u5e38\u306b\u7121\u793c\u3067\u3042\u308b\u3053\u3068\u306b\u6c17\u3065\u304f\u3001\u3068\u6307\u6458\u3059\u308b\u3002\n230.0 Hoe_math\u306f\u3001\u300cEverybody Loves Raymond\u300d\u306e\u3088\u3046\u306a\u3001\u59bb\u304c\u4e3b\u5c0e\u6a29\u3092\u63e1\u3063\u3066\u592b\u3092\u618e\u3080\u30b7\u30c3\u30c8\u30b3\u30e0\u3092\u6301\u3061\u51fa\u3057\u3001\u5b9f\u4f53\u9a13\u3092\u53cd\u6620\u3055\u305b\u308b\u3002\n250.0 \u30d1\u30fc\u30eb\u306f\u3001\u305d\u306e\u3088\u3046\u306a\u72b6\u6cc1\u3067\u7537\u6027\u304c\u4f55\u3092\u3059\u3079\u304d\u306a\u306e\u304b\u3001\u59bb\u306b\u518d\u3073\u597d\u5370\u8c61\u3092\u4e0e\u3048\u3088\u3046\u3068\u3059\u308b\u4ee5\u5916\u306b\u306f\u308f\u304b\u3089\u306a\u3044\u304c\u3001\u305d\u308c\u306f\u4e0d\u53ef\u80fd\u306b\u8fd1\u3044\u3068\u8a8d\u3081\u3066\u3044\u308b\u3002\n260.0 \u30c8\u30e0\u30fb\u30d6\u30ec\u30a4\u30c7\u30a3\u306e\u3088\u3046\u306a\u6210\u529f\u8005\u3067\u3055\u3048\u96e2\u5a5a\u3057\u3066\u3044\u308b\u3053\u3068\u3092\u6307\u6458\u3057\u3001\u3053\u308c\u4ee5\u4e0a\u7537\u306b\u4f55\u304c\u3067\u304d\u308b\u306e\u304b\u3068\u7591\u554f\u3092\u5448\u3059\u308b\u3002\n270.0 Hoe_math\u306f\u3001\u8ab0\u304b\u304c\u30c8\u30e0\u30fb\u30d6\u30ec\u30a4\u30c7\u30a3\u306b\u98fd\u304d\u305f\u3089\u3001\u3069\u3046\u3084\u3063\u3066\u300c\u30c8\u30e0\u30fb\u30d6\u30ec\u30a4\u30c7\u30a3\u300d\u3092\u3055\u3089\u306b\u30cf\u30fc\u30c9\u306b\u3059\u308b\u3064\u3082\u308a\u306a\u306e\u304b\u3068\u30b8\u30e7\u30fc\u30af\u3092\u98db\u3070\u3059\u3002\n280.0 \u73fe\u4ee3\u4eba\u306e\u6027\u8cea\u3084\u793e\u4f1a\u306b\u5408\u3046\u3088\u3046\u306b\u3001\u7d50\u5a5a\u5951\u7d04\u3092\u518d\u8a2d\u8a08\u3067\u304d\u306a\u3044\u304b\u3068\u8003\u3048\u3066\u3044\u308b\u3002\n290.0 \u5e7c\u3044\u5b50\u4f9b\u3092\u7523\u307f\u80b2\u3066\u308b\u306e\u306b\u5341\u5206\u306a\u671f\u9593\u30014\u5e74\u9593\u306e\u7d50\u5a5a\u5951\u7d04\u3092\u7d50\u3073\u3001\u305d\u306e\u5f8c\u518d\u8a55\u4fa1\u3059\u308b\u3001\u3068\u3044\u3063\u305f\u30a2\u30a4\u30c7\u30a2\u306b\u8a00\u53ca\u3002\n310.0 \u7d50\u5a5a\u306f\u30b9\u30dd\u30fc\u30c4\u306e\u30c9\u30e9\u30d5\u30c8\u306e\u3088\u3046\u306a\u3082\u306e\u3067\u3001\u30c8\u30ec\u30fc\u30c9\u3055\u308c\u308b\u3053\u3068\u3082\u3042\u308b\u3001\u3068\u30d1\u30fc\u30eb\u304c\u30b8\u30e7\u30fc\u30af\u3092\u98db\u3070\u3059\u3002\n320.0 Hoe_math\u306f\u3001\u653f\u5e9c\u304c\u4ef2\u4ecb\u3059\u308b\u59bb\u306e\u30b9\u30ef\u30c3\u30d4\u30f3\u30b0\u3068\u3044\u3046\u30a2\u30a4\u30c7\u30a2\u306b\u3064\u3044\u3066\u7b11\u3044\u3001\u793e\u4f1a\u306f\u5275\u9020\u7684\u306b\u306a\u308b\u5fc5\u8981\u304c\u3042\u308b\u3068\u8a00\u3046\u3002\n330.0 \u30d1\u30fc\u30eb\u304c\u3001\u7d50\u5a5a\u306e\u30ec\u30d3\u30e5\u30fc\u307e\u305f\u306f\u661f\u8a55\u4fa1\u30b7\u30b9\u30c6\u30e0\u3092\u63d0\u6848\u3002\n335.0 \u7537\u6027\u304c\u7d50\u5a5a\u3059\u308b\u7406\u7531\u304c\u308f\u304b\u3089\u306a\u3044\u3068\u7d50\u8ad6\u3065\u3051\u308b\u3002\n340.0 Hoe_math\u306f\u3001\u552f\u4e00\u306e\u7406\u7531\u306f\u3001\u3053\u308c\u307b\u3069\u3044\u3044\u4eba\u3068\u306f\u3082\u3046\u30c1\u30e3\u30f3\u30b9\u306f\u306a\u3044\u3068\u308f\u304b\u3063\u3066\u3044\u308b\u304b\u3089\u3001\u3059\u3079\u3066\u3092\u5931\u3046\u53ef\u80fd\u6027\u304c50%\u3042\u308b\u3068\u308f\u304b\u3063\u3066\u3044\u3066\u3082\u3001\u30ea\u30b9\u30af\u3092\u53d6\u308b\u7537\u6027\u304c\u3044\u308b\u304b\u3089\u3060\u3068\u8a00\u3046\u3002\n360.0\u5f7c\u306f\u3001\u305d\u308c\u306f\u30ea\u30b9\u30af\u306b\u5bfe\u3059\u308b\u7121\u77e5\u3067\u306f\u306a\u304f\u3001\u7537\u6027\u306f\u3059\u3079\u3066\u3092\u5931\u304650%\u306e\u30c1\u30e3\u30f3\u30b9\u3068\u3001\u4e8c\u5ea6\u3068\u5f7c\u5973\u306e\u3088\u3046\u306a\u4eba\u306b\u51fa\u4f1a\u3048\u306a\u3044100%\u306e\u30c1\u30e3\u30f3\u30b9\u3092\u5929\u79e4\u306b\u304b\u3051\u308b\u306e\u3060\u3068\u8a00\u3046\u3002\n370.0 \u30d1\u30fc\u30eb\u3082\u305d\u306e\u7406\u7531\u3092\u8a8d\u3081\u3066\u3044\u308b\u3002\n380.0 Hoe_math\u3001\u7d50\u5a5a\u306e\u72b6\u6cc1\u3092\u8cea\u5bfe\u529b\u306e\u30b0\u30e9\u30d5\u3067\u8aac\u660e\u3059\u308b\u3068\u8a00\u3046\u3002\n400.0 \u30d1\u30fc\u30eb\u306f\u3001\u6838\u5fc3\u7684\u306a\u8003\u3048\u306f\u3001\u7d50\u5a5a\u306f\u7537\u6027\u306b\u3068\u3063\u3066\u826f\u3044\u53d6\u5f15\u3067\u306f\u306a\u3044\u3068\u3044\u3046\u3053\u3068\u3060\u3068\u307e\u3068\u3081\u308b\u3002\n410.0 Hoe_math\u306f\u3001\u524d\u306e\u30ac\u30fc\u30eb\u30d5\u30ec\u30f3\u30c9\u304c\u65e9\u304f\u7d50\u5a5a\u3057\u305f\u304c\u3063\u305f\u306e\u3067\u3001\u5f7c\u306f\u305d\u308c\u3092\u8003\u3048\u305f\u304c\u3001\u30ea\u30b9\u30af\u304c\u3042\u308b\u306e\u3067\u305d\u306e\u898b\u901a\u3057\u306f\u6050\u308d\u3057\u3044\u3068\u601d\u3063\u305f\u3068\u8a71\u3057\u3066\u3044\u308b\u3002\n420.0 \u7279\u306b\u4eba\u751f\u3067\u3042\u308b\u7a0b\u5ea6\u306e\u6210\u529f\u3092\u53ce\u3081\u305f\u5f8c\u3001\u3059\u3079\u3066\u3092\u5931\u304650% \u30c1\u30e3\u30f3\u30b9\u306b\u30b5\u30a4\u30f3\u3059\u308b\u4fa1\u5024\u304c\u3042\u308b\u304b\u3069\u3046\u304b\u7591\u554f\u8996\u3057\u3066\u3044\u308b\u3002\n430.0 \u30d1\u30fc\u30eb\u304c\u3001\u81ea\u5206\u306a\u3089\u3084\u308b\u3068\u601d\u3046\u304b\u3068\u5c0b\u306d\u308b\u3002\n440.0 Hoe_math\u306f\u3001\u3084\u308b\u53ef\u80fd\u6027\u306f\u5341\u5206\u3042\u308b\u3068\u611f\u3058\u300150%\u306e\u78ba\u7387\u3067\u3084\u308a\u9042\u3052\u308b\u53ef\u80fd\u6027\u304c\u3042\u308b \u3068\u7b54\u3048\u305f\u3002\n<\/span>\n<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-eddabf7 elementor-widget elementor-widget-html\" data-id=\"eddabf7\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<script>\n\/\/ 1. Define which video to play for each language:\nconst videoMap = {\n  en: { type: \"youtube\", id: \"ahtzqVEhWvM\" },\n  es: { type: \"youtube\", id: \"mZ8udleQAfE\" }, \n  fr: { type: \"youtube\", id: \"xLsWk0IP6qs\" },\n  ja: { type: \"youtube\", id: \"vLtS76teAiU\" },\n  pt: { type: \"youtube\", id: \"kbg4Z6_OkAc\" } \n};\n<\/script>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-a010ab1 e-flex e-con-boxed e-con e-parent\" data-id=\"a010ab1\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-4c437ca elementor-widget elementor-widget-template\" data-id=\"4c437ca\" data-element_type=\"widget\" data-widget_type=\"template.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-template\">\n\t\t\t\t\t<div data-elementor-type=\"section\" data-elementor-id=\"3172\" class=\"elementor elementor-3172\" data-elementor-post-type=\"elementor_library\">\n\t\t\t<div class=\"elementor-element elementor-element-7079b43 e-flex e-con-boxed e-con e-parent\" data-id=\"7079b43\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-800d60f elementor-widget elementor-widget-html\" data-id=\"800d60f\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\n#simplified-transcript-note {\n  display: none !important;\n}\n<\/style>\n<div id=\"simplified-transcript-note\">\u7ffb\u8a33\u304a\u3088\u3073\u7c21\u6613\u66f8\u304d\u8d77\u3053\u3057\u306f\u3001\u8907\u6570\u306e\u8a00\u8a9e\u306b\u30ed\u30fc\u30ab\u30e9\u30a4\u30ba\u3055\u308c\u305f\u30aa\u30ea\u30b8\u30ca\u30eb\u8cc7\u6599\u306e\u7ffb\u8a33\u306b\u57fa\u3065\u3044\u3066\u3044\u307e\u3059\u3002PeakCreatorRoyalty.com\u306e\u30e9\u30a4\u30bb\u30f3\u30b9\u306b\u57fa\u3065\u304f\u3002 <span>h<\/span>oe_math.<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3a02ec9 elementor-widget elementor-widget-html\" data-id=\"3a02ec9\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<script>\n  \/\/ Auto-hide translation block after page load\n  window.addEventListener('DOMContentLoaded', function() {\n    for (let i = 1; i <= 5; i++) {\n      document.querySelectorAll(`[id$=\"${i}\"]`).forEach(el => {\n        el.style.display = 'none';\n      });\n    }\n  });\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f2f7b1d elementor-widget elementor-widget-html\" data-id=\"f2f7b1d\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\n  h3 {\n    margin-left: 0px; \/* Adjust as needed *\/\n    \/* Optionally add: *\/\n    text-align: left;  \n  }\n<\/style>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e3ade12 elementor-widget elementor-widget-html\" data-id=\"e3ade12\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!-- VIDEO PLAYER CONTAINER -->\n<div id=\"videoPlayerContainer\" style=\"max-width: 800px; margin: auto; text-align: center;\">\n  <!-- Video player is injected here -->\n<\/div>\n\n<!-- SCROLLING TABS & CHAPTER DETAILS -->\n<div style=\"max-width: 1000px; margin: 32px auto 0 auto;\">\n  <div id=\"chapterTabs\" class=\"chapter-tabs-scroll\">\n    <!-- Tabs will be generated by JavaScript -->\n  <\/div>\n  <!-- div id=\"chapterPlayPause\" style=\"margin:1em 0 0.5em 0;\">\n  <\/div -->\n  <div id=\"chapterPanel\" class=\"chapter-panel\">\n    <!-- Chapter text will appear here  -->\n  <\/div>\n<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-928f586 elementor-widget elementor-widget-html\" data-id=\"928f586\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!-- NO TOUCH Scripts -->\n<!-- Video script v1.0 -->\n<!--[wpcode id=\"1824\"] -->\n\n<script src=\"https:\/\/cdn.jsdelivr.net\/npm\/hls.js@latest\"><\/script> <!-- Include HLS.js -->\r\n\r\n<style>\r\n  .half-br {\r\n    display: block;\r\n    height: 1px;\r\n    width: 100%;\r\n    border: none;\r\n    margin: 0;\r\n    padding: 0;\r\n  }\r\n<\/style>\r\n\r\n<script>\r\n\r\nlet currentChapterIdx = 0;\r\n\t\r\nfunction getCurrentLang() {\r\n  return document.documentElement.lang ? document.documentElement.lang.substring(0,2) : 'en';\r\n}\r\n\r\n\/\/ function waitTranslate(ms=1000) {\r\n\/\/   const end = Date.now() + ms; \/\/ 100 milliseconds = 1\/10 second\r\n\/\/   while (Date.now() < end) {\r\n\/\/     \/\/ Busy-wait: blocks the main thread!\r\n\/\/   }\r\n\/\/ }\r\n\r\n\/\/ const lang = getCurrentLang();\r\n\/\/ if (lang !== \"en\") {\r\n\/\/   var marker = document.getElementById('language-marker');\r\n\/\/   if (marker) {\r\n\/\/     \/\/ You can check for known translations of the phrase\r\n\/\/     var currentLangPhrase = marker.textContent.trim();\r\n\/\/ \r\n\/\/     \/\/ Example for English vs French\r\n\/\/     if (currentLangPhrase === \"Currently English language.\") {\r\n\/\/       console.log(\"Miss, translation in progress to '\/\"+lang+\"\/', 3 second delay.\")\r\n\/\/       waitTranslate(ms=3000);\r\n\/\/     } else {\r\n\/\/       console.log(\"Hit, pre-translated page in '\/\"+lang+\"\/'.\")\r\n\/\/     }\r\n\/\/   }\r\n\/\/ } else {\r\n\/\/   console.log(\"English, no translation needed.\")\r\n\/\/ }\r\n\r\n\/* ====== CONFIGURATION SECTION ====== *\/\r\n\/\/ const BUNNY_VIDEO_LIBRARY_ID = \"vz-c02c9ec9-42b.b-cdn.net\"; \/\/ Replace with your actual Bunny Video Library ID\r\nconst BUNNY_VIDEO_LIBRARY_ID = \"vz-d8eb6cfe-1f7.b-cdn.net\"; \/\/ Replace with your actual Bunny Video Library ID\r\n\r\n\/\/ 1. Define which video to play for each language:\r\n\/\/const videoMap = {\r\n\/\/  en: { type: \"youtube\", id: \"wWrsW76bG88\" },\r\n\/\/  fr: { type: \"bunny\", id: \"fc57904c-7f56-4b36-8d13-d1d715b82e81\" }, \/\/ This is the VIDEO ID\r\n\/\/  de: { type: \"bunny\", id: \"YOUR_GERMAN_VIDEO_ID\" }                   \/\/ This is the VIDEO ID\r\n  \/\/ Add more: es, it, etc.\r\n\/\/};\r\n\r\n\/\/ 2. Define chapters for each language:\r\nfunction parseCSVFromHeaderRows(headerText, rowsText) {\r\n  const headers = headerText.trim().split('|').map(h => h.trim());\r\n  const lines = rowsText.trim().split('\\n').filter(line => line.trim().length);\r\n\r\n  return lines.map(line => {\r\n    const values = [];\r\n    \/\/ Split by |, but don't split inside quotes (simple version assumes no | inside quotes)\r\n    \/\/ If you need to handle | inside quoted fields, regex needs to be more complex\r\n    let regex = \/(\"(?:[^\"]|\"\")*\"|'(?:[^']|'')*'|[^|]+)\/g;\r\n    let match;\r\n    while ((match = regex.exec(line))) {\r\n      let value = match[0].trim();\r\n      \/\/ Remove leading and trailing single or double quotes\r\n      value = value.replace(\/^(['\"])(.*)\\1$\/, '$2');\r\n      values.push(isNaN(value) ? value : Number(value));\r\n    }\r\n    const obj = {};\r\n    headers.forEach((h, i) => { obj[h] = values[i]; });\r\n    return obj;\r\n  });\r\n}\r\n\r\n\r\n\r\n\r\n\r\n\/\/ Parse hiddenText into [{time: number, text: string}]\r\n\/\/ Parses lines like: 12.0 Text, or * Bullet point, or 1. Numbered item\r\nfunction parseHiddenText() {\r\n  const hiddenText = document.getElementById('hiddenText')?.textContent || '';\r\n  const lines = hiddenText.split('\\n').map(line => line.trim()).filter(Boolean);\r\n  const results = [];\r\n  let lastTime = null;\r\n\r\n  for (let line of lines) {\r\n    \/\/ Match timestamps with comma or dot\r\n    let match = \/^(\\d+(?:[.,]\\d+)?)\\s+(.*)$\/.exec(line);\r\n    if (match) {\r\n      lastTime = parseFloat(match[1].replace(',', '.'));\r\n      results.push({ time: lastTime, text: match[2] });\r\n      continue;\r\n    }\r\n    \/\/ Match bullets or numbers\r\n    match = \/^(\\*|\\-|\\d+\\.)\\s+(.*)$\/.exec(line);\r\n    if (match && lastTime !== null) {\r\n      results.push({ time: lastTime, text: line });\r\n      continue;\r\n    }\r\n    if (lastTime !== null) {\r\n      results.push({ time: lastTime, text: line });\r\n    }\r\n  }\r\n  return results;\r\n}\r\n\r\n\r\n\r\n\r\nconst hiddenTextLines = parseHiddenText(); \/\/ Global for later use\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\/\/ Get the header and rows from the DOM\r\nconst csvHeader = document.getElementById('video-data-header').textContent;\r\nconst csvRows = document.getElementById('video-data-rows').textContent;\r\n\r\nconst chapterMap = {\r\n  en: parseCSVFromHeaderRows(csvHeader, csvRows)\r\n};\r\n\r\n\/\/ List of properties to process\r\nconst properties = ['tab', 'title', 'description'];\r\n\r\n\/\/ Loop through each row in chapterMap.en\r\nchapterMap.en.forEach(row => {\r\n  properties.forEach(prop => {\r\n    const val = row[prop];\r\n    if (typeof val === 'string') {\r\n      row[prop] = val.replace(\/^[\\'\\\"]+|[\\'\\\"]+$\/g, '');\r\n    }\r\n  });\r\n});\r\n\r\n\/\/ console.log(chapterMap.en); \/\/ Output objects in browser console\r\n\r\n\r\n\/* ====== END CONFIGURATION ====== *\/\r\n\r\n\/* ----- Global Player Variables ----- *\/\r\nlet ytPlayer, ytReady = false, stopTimer = null;\r\nlet hlsInstance = null; \/\/ To store the HLS.js instance\r\nlet html5VideoElement = null; \/\/ To store the HTML5 video element for Bunny\r\n\r\n\r\n\/* ----- Player and Chapters Logic ----- *\/\r\nfunction cleanupPlayers() {\r\n    \/\/ Clear existing stop timer\r\n    if (stopTimer) {\r\n        clearInterval(stopTimer);\r\n        stopTimer = null;\r\n    }\r\n\r\n    \/\/ Cleanup YouTube Player\r\n    if (ytPlayer && typeof ytPlayer.destroy === 'function') {\r\n        ytPlayer.destroy();\r\n    }\r\n    ytPlayer = null;\r\n    ytReady = false;\r\n\r\n    \/\/ Cleanup HLS.js Player\r\n    if (hlsInstance) {\r\n        hlsInstance.destroy();\r\n        hlsInstance = null;\r\n    }\r\n    html5VideoElement = null; \/\/ Clear reference\r\n\r\n    \/\/ Clear the container\r\n    const container = document.getElementById('videoPlayerContainer');\r\n    if (container) container.innerHTML = \"\";\r\n}\r\n\r\nfunction setVideoPlayer(langObj) {\r\n  cleanupPlayers(); \/\/ Ensure previous players are cleaned up\r\n\r\n  const container = document.getElementById('videoPlayerContainer');\r\n  if (!container) return;\r\n\r\n  if (langObj.type === \"youtube\") {\r\n    container.innerHTML = `<div style=\"position: relative; width: 100%; padding-top: 56.25%;\">\r\n<iframe id=\"myVideo\" style=\"position: absolute;  top: 0; left: 0; width: 100%; height: 100%;\" \r\n            src=\"https:\/\/www.youtube.com\/embed\/${langObj.id}?enablejsapi=1&rel=0&origin=${window.location.origin}\"\r\n            frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\"\r\n            allowfullscreen><\/iframe><\/div>`;\r\n    \/\/ YT API will be loaded\/re-initialized later\r\n  } else if (langObj.type === \"bunny\") {\r\n    const bunnyStreamUrl = `https:\/\/${BUNNY_VIDEO_LIBRARY_ID}\/${langObj.id}\/playlist.m3u8`;\r\n    container.innerHTML = `<video id=\"myVideo\" width=\"100%\" height=\"390\" controls playsinline poster=\"https:\/\/itishoemath.com\/wp-content\/uploads\/2025\/05\/UCsEPI9OwGEw5Lm0E7Paq62g_0003_wWrsW76bG88_en.jpg\"><\/video>`;\r\n    html5VideoElement = document.getElementById('myVideo'); \/\/ Get the new video element\r\n\r\n\tif (html5VideoElement) {\r\n        html5VideoElement.addEventListener('play', () => renderPlayPauseButton(currentChapterIdx));\r\n        html5VideoElement.addEventListener('pause', () => renderPlayPauseButton(currentChapterIdx));\r\n    }\r\n\r\n\t  \r\n    if (Hls.isSupported()) {\r\n        hlsInstance = new Hls();\r\n        hlsInstance.loadSource(bunnyStreamUrl);\r\n        hlsInstance.attachMedia(html5VideoElement);\r\n        hlsInstance.on(Hls.Events.MANIFEST_PARSED, function() {\r\n            \/\/ console.log(\"Bunny HLS: Manifest parsed and video ready.\");\r\n            \/\/ html5VideoElement.play(); \/\/ Optional: Autoplay (mind browser restrictions)\r\n        });\r\n        hlsInstance.on(Hls.Events.ERROR, function(event, data) {\r\n            \/\/ console.error('Bunny HLS Error:', data);\r\n            if (data.fatal) {\r\n                switch(data.type) {\r\n                    case Hls.ErrorTypes.NETWORK_ERROR: hlsInstance.startLoad(); break;\r\n                    case Hls.ErrorTypes.MEDIA_ERROR: hlsInstance.recoverMediaError(); break;\r\n                    default: hlsInstance.destroy(); break;\r\n                }\r\n            }\r\n        });\r\n    } else if (html5VideoElement.canPlayType('application\/vnd.apple.mpegurl')) {\r\n        \/\/ Native HLS support (e.g., Safari)\r\n        html5VideoElement.src = bunnyStreamUrl;\r\n        html5VideoElement.addEventListener('loadedmetadata', function() {\r\n            \/\/ console.log('Bunny Native HLS: Metadata loaded.');\r\n        });\r\n    } else {\r\n        \/\/ console.error('HLS is not supported in this browser for Bunny.net video.');\r\n        container.innerHTML = '<p>Sorry, HLS video playback is not supported in your browser.<\/p>';\r\n    }\r\n  }\r\n}\r\n\r\nfunction renderTabs(activeIdx, chapters) {\r\n  const tabRow = document.getElementById('chapterTabs');\r\n  tabRow.innerHTML = chapters.map((ch, i) =>\r\n    `<button class=\"chapter-tab${i === activeIdx ? \" active\" : \"\"}\" onclick=\"showChapter(${i})\">${ch.tab}<\/button>`\r\n  ).join('');\r\n}\r\n\r\n\r\n\r\n\t\r\nfunction renderPlayPauseButton(idx) {\r\n  const lang = getCurrentLang();\r\n  const chapters = chapterMap['en'];\r\n  const ch = chapters[idx];\r\n  if (!ch) return \"\";\r\n\r\n  let isPlaying = false;\r\n  const videoObj = videoMap[lang] || videoMap['en'];\r\n\r\n  if (videoObj.type === \"youtube\" && ytPlayer && ytReady) {\r\n    isPlaying = ytPlayer.getPlayerState && ytPlayer.getPlayerState() === 1;\r\n  } else if (videoObj.type === \"bunny\" && html5VideoElement) {\r\n    isPlaying = !html5VideoElement.paused;\r\n  }\r\n\r\n  const buttonLabel = isPlaying ? \"Pause\" : \"Play\";\r\n  const buttonIcon = isPlaying ? \"\u23f8\" : \"\u25b6\ufe0f\";\r\n\r\n  const btnHtml = `<button id=\"playPauseBtn\" style=\"padding:0.5em 1em;font-size:1em;border-radius:6px;background: #0F3F91;color:#fff;border:none;cursor:pointer;margin-bottom:1em;transition: background 0.2s;display: block;\">\r\n      ${buttonIcon} ${buttonLabel}\r\n    <\/button>`;\r\n\r\n  const container = document.getElementById('playPauseContainer');\r\n  if (container) {\r\n    container.innerHTML = btnHtml;\r\n    const playPauseBtn = document.getElementById('playPauseBtn');\r\n    if (playPauseBtn) {\r\n      playPauseBtn.onclick = function() {\r\n        let isPlayingNow = false;\r\n        if (videoObj.type === \"youtube\" && ytPlayer && ytReady) {\r\n          isPlayingNow = ytPlayer.getPlayerState && ytPlayer.getPlayerState() === 1;\r\n          ytPlayer.seekTo(ch.time, true);\r\n          if (isPlayingNow) {\r\n            ytPlayer.pauseVideo();\r\n          } else {\r\n            ytPlayer.playVideo();\r\n          }\r\n        } else if (videoObj.type === \"bunny\" && html5VideoElement) {\r\n          isPlayingNow = !html5VideoElement.paused;\r\n          html5VideoElement.currentTime = ch.time;\r\n          if (isPlayingNow) {\r\n            html5VideoElement.pause();\r\n          } else {\r\n            html5VideoElement.play();\r\n          }\r\n        }\r\n        \/\/ No manual re-render here!\r\n      };\r\n    }\r\n  }\r\n}\r\n\r\n\r\nfunction formatTranscriptBlock(lines) {\r\n  let prevTime = null;\r\n  let out = [];\r\n  for (let i = 0; i < lines.length; i++) {\r\n    const { time, text } = lines[i];\r\n    \/\/ Convert seconds to MM:SS\r\n    const min = Math.floor(time \/ 60);\r\n    const sec = Math.floor(time % 60);\r\n    const mmss = `${min}:${sec.toString().padStart(2, '0')}`;\r\n    if (time !== prevTime) {\r\n      out.push(`<br><b><span style=\"color:#FFF\">${mmss}<\/span><\/b> ${text}`);\r\n    } else {\r\n      out.push(text);\r\n    }\r\n    prevTime = time;\r\n  }\r\n  return out.join('<br>');\r\n}\r\n\r\n\r\n\r\n\r\nfunction renderPanel(idx) {\r\n  const lang = getCurrentLang();\r\n\r\n  const simplifiedLabel = document.getElementById('simplified-transcript-label')?.textContent || \"\";\r\n  const simplifiedNote = document.getElementById('simplified-transcript-note')?.textContent || \"Note: ...\";\r\n\r\n  const chapters = chapterMap['en'];\r\n  const ch = chapters[idx];\r\n  if (!ch) {\r\n      console.error(`Chapter index ${idx} not found for language ${lang}.`);\r\n      return;\r\n  }\r\n\r\n  \/\/ --- Find hiddenText lines within this chapter's time range ---\r\n  const linesInRangeArr = hiddenTextLines\r\n    .filter(line => line.time >= ch.time && line.time < ch.stop);\r\n\r\n  const transcriptHTML = formatTranscriptBlock(linesInRangeArr);\r\n\r\n  let extra = \"\";\r\n  if (linesInRangeArr.length) {\r\n    extra = `\r\n      <br><br>\r\n      <!--span style=\"display:block;margin-top:1em;margin-bottom:0.25em;font-weight:bold\">${simplifiedLabel}<\/span-->\r\n      <span style=\"color:#f5f5f5;font-size:100%\">${transcriptHTML}<\/span>\r\n      <br>\r\n      <span style=\"display:block;margin-top:0.75em;font-size:75%;color:#00C2C2;\">\r\n        <br>${simplifiedNote}\r\n      <\/span>\r\n    `;\r\n  }\r\n\r\n  \/\/ Insert the Play\/Pause button at the very top of the panel\r\n  const playPauseButton = renderPlayPauseButton(idx);\r\n\r\n  document.getElementById('chapterPanel').innerHTML =\r\n    `<h3 style=\"margin-top:0;color:#fff\">${ch.title}<\/h3>\r\n     <div id=\"playPauseContainer\" style=\"margin-bottom:1em\"><\/div>\r\n     <p style=\"margin-bottom:0;color:#fff\">${ch.description}${extra}<\/p>`;\r\n\r\n  renderPlayPauseButton(idx);\r\n  renderTabs(idx, chapters);\r\n\r\n  \/\/ Attach the event handler after the button is inserted\r\n  const playPauseBtn = document.getElementById('playPauseBtn');\r\n  if (playPauseBtn) {\r\n    playPauseBtn.onclick = function() {\r\n      const videoObj = videoMap[lang] || videoMap['en'];\r\n      let isPlaying = false;\r\n      if (videoObj.type === \"youtube\" && ytPlayer && ytReady) {\r\n        isPlaying = ytPlayer.getPlayerState && ytPlayer.getPlayerState() === 1;\r\n        ytPlayer.seekTo(ch.time, true);\r\n        if (isPlaying) {\r\n          ytPlayer.pauseVideo();\r\n        } else {\r\n          ytPlayer.playVideo();\r\n        }\r\n      } else if (videoObj.type === \"bunny\" && html5VideoElement) {\r\n        isPlaying = !html5VideoElement.paused;\r\n        html5VideoElement.currentTime = ch.time;\r\n        if (isPlaying) {\r\n          html5VideoElement.pause();\r\n        } else {\r\n          html5VideoElement.play();\r\n        }\r\n      }\r\n      \/\/ Optionally update button after action\r\n      \/\/ setTimeout(() => renderPanel(idx), 300);\r\n    };\r\n  }\r\n}\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\nwindow.showChapter = function(idx) {\r\n  currentChapterIdx = idx;\r\n\r\n  const lang = getCurrentLang();\r\n  \/\/ const chapters = chapterMap[lang] || chapterMap['en']; \/\/ Fallback to 'en'   \r\n  \/\/ will switch for video but NOT for text (translatepress will accomplish)\r\n  const chapters = chapterMap['en']; \/\/ Fallback to 'en' chapters\r\n  const chapterData = chapters[idx];\r\n\r\n  if (!chapterData) {\r\n      console.error(`Chapter data for index ${idx} not found.`);\r\n      return;\r\n  }\r\n  renderPanel(idx); \/\/ Update panel and tabs\r\n\r\n  \/\/ Scroll tab into view\r\n  const buttons = document.getElementsByClassName('chapter-tab');\r\n  if (buttons[idx]) buttons[idx].scrollIntoView({ behavior: 'smooth', inline: 'center', block: 'nearest' });\r\n\r\n  const videoObj = videoMap[lang] || videoMap['en'];\r\n\r\n  \/\/ Clear previous stop timer\r\n  if (stopTimer) clearInterval(stopTimer);\r\n\r\n  if (videoObj.type === \"youtube\") {\r\n    if (ytReady && ytPlayer && typeof ytPlayer.seekTo === 'function') {\r\n      ytPlayer.seekTo(chapterData.time, true);\r\n      ytPlayer.playVideo();\r\n      \r\n    } else {\r\n        console.warn(\"YouTube player not ready or seekTo not available.\");\r\n    }\r\n  } else if (videoObj.type === \"bunny\" && html5VideoElement) {\r\n    html5VideoElement.currentTime = chapterData.time;\r\n    html5VideoElement.play().catch(e => console.warn(\"Autoplay after seek prevented:\", e));\r\n  }\r\n};\r\n\r\nfunction reInitChaptersAndPlayer() {\r\n  const lang = getCurrentLang();\r\n  const videoObj = videoMap[lang] || videoMap['en']; \/\/ Fallback to 'en' video\r\n\r\n  if (!videoObj) {\r\n      console.error(`No video configuration found for language: ${lang} or fallback 'en'.`);\r\n      return;\r\n  }\r\n\r\n  setVideoPlayer(videoObj); \/\/ This now also cleans up old players\r\n\r\n  \/\/ Short delay to ensure DOM is updated, especially for iframe\r\n  setTimeout(function(){\r\n    renderPanel(0); \/\/ Render first chapter panel\r\n    if (videoObj.type === \"youtube\") {\r\n      \/\/ Load or re-initialize YT API for new iframe\r\n      if (typeof YT === 'undefined' || !YT.Player) { \/\/ Check if YT object or YT.Player is undefined\r\n        var tag = document.createElement('script');\r\n        tag.src = \"https:\/\/www.youtube.com\/iframe_api\";\r\n        var firstScriptTag = document.getElementsByTagName('script')[0];\r\n        firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);\r\n      } else {\r\n        \/\/ If API is loaded, re-initialize player for the new iframe if needed\r\n        onYouTubeIframeAPIReady();\r\n      }\r\n    }\r\n  }, 100); \/\/ Reduced delay, might need adjustment\r\n}\r\n\r\n\/* ----- YT API Bootstrapping ----- *\/\r\n\/\/ This global function is called by the YouTube Iframe API script\r\nwindow.onYouTubeIframeAPIReady = function() {\r\n  const iframe = document.getElementById('myVideo');\r\n  if (iframe && iframe.tagName === 'IFRAME' && !ytPlayer) { \/\/ Ensure it's an iframe and player not already set\r\n    \/\/ console.log(\"onYouTubeIframeAPIReady called, initializing YT Player.\");\r\n    ytPlayer = new YT.Player('myVideo', {\r\n      events: {\r\n        'onReady': function(event) {\r\n          ytReady = true;\r\n          \/\/ console.log(\"YouTube Player Ready.\");\r\n          \/\/ If a chapter was clicked before YT was ready, try to apply it now.\r\n          \/\/ This requires knowing the current chapter index, which might need to be stored.\r\n          \/\/ For simplicity, we'll assume the user might click a chapter again or it starts at 0.\r\n        },\r\n        'onStateChange': function(event) {\r\n\t\t\t\/\/ 1 = playing, 2 = paused\r\n\t\t\trenderPlayPauseButton(currentChapterIdx); \/\/ currentChapterIdx should be tracked globally\r\n\t\t}\r\n      }\r\n    });\r\n  } else if (iframe && iframe.tagName === 'IFRAME' && ytPlayer && typeof ytPlayer.destroy === 'function') {\r\n    \/\/ This case handles if the API is reloaded or if reInit is called and iframe exists\r\n    \/\/ It's a bit tricky; ideally, we destroy and recreate fully.\r\n    \/\/ The cleanupPlayers function should handle most of this.\r\n    \/\/ console.log(\"onYouTubeIframeAPIReady called, player might exist. Attempting to re-bind if necessary.\");\r\n  }\r\n};\r\n\r\n\/* ----- Event Hooks ----- *\/\r\ndocument.addEventListener('DOMContentLoaded', function() {\r\n    if (document.getElementById('videoPlayerContainer')) { \/\/ Only run if the container exists\r\n        reInitChaptersAndPlayer();\r\n\r\n\t\t\r\n\r\n\r\n    }\r\n});\r\n\/\/ TranslatePress fires this event on language change\r\ndocument.addEventListener('trp_language_changed', function() {\r\n    if (document.getElementById('videoPlayerContainer')) { \/\/ Only run if the container exists\r\n        reInitChaptersAndPlayer();\r\n\t\t\r\n\r\n    }\r\n});\r\n\r\n<\/script>\r\n\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-40859b7 elementor-widget elementor-widget-html\" data-id=\"40859b7\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\n\/* Your existing CSS is good, no changes needed unless you want to refine *\/\n.chapter-tabs-scroll {\n  display: flex;\n  overflow-x: auto;\n  gap: 10px;\n  margin-bottom: 18px;\n  scrollbar-width: thin;\n  scrollbar-color: #a0aec0 #f7fafc; \/* For Firefox *\/\n  -webkit-overflow-scrolling: touch;\n  padding-bottom: 5px; \/* To make scrollbar visible without cutting content *\/\n  border-radius: 8px; \/* Optional: if you want rounded corners for the scroll area *\/\n}\n\/* Webkit Scrollbar Styles *\/\n.chapter-tabs-scroll::-webkit-scrollbar {\n  height: 7px;\n}\n.chapter-tabs-scroll::-webkit-scrollbar-track {\n  background: #111; \/* Or a lighter color if preferred *\/\n  border-radius: 4px;\n}\n.chapter-tabs-scroll::-webkit-scrollbar-thumb {\n  background: #333; \/* Or a contrasting color *\/\n  border-radius: 4px;\n}\n.chapter-tab {\n  white-space: nowrap;\n  border: none;\n  background: #222; \/* Darker tab background *\/\n  color: #fff;\n  font-size: 1.1em;\n  padding: 8px 22px;\n  border-radius: 999px; \/* Pill shape *\/\n  cursor: pointer;\n  transition: background 0.2s, color 0.2s, font-weight 0.2s, box-shadow 0.2s;\n  margin-bottom: 0; \/* Ensure no extra space below tabs if they wrap *\/\n  outline: none; \/* Remove default focus outline if you have custom focus styles *\/\n  margin-right: 0; \/* Reset if previously set for spacing between items *\/\n}\n.chapter-tab.active,\n.chapter-tab:hover {\n  background: #e0e7ff; \/* Light blue for active\/hover *\/\n  color: #111; \/* Dark text for active\/hover *\/\n  font-weight: bold;\n  box-shadow: 0 2px 8px #dbeafe66; \/* Softer shadow *\/\n}\n.chapter-panel {\n  background: rgba(20,20,20,0.88); \/* Semi-transparent dark background *\/\n  border-radius: 8px;\n  box-shadow: 0 2px 6px #111; \/* Subtle shadow *\/\n  padding: 20px 24px;\n  min-height: 80px; \/* Ensure panel has some height even if description is short *\/\n  transition: box-shadow 0.3s; \/* Smooth shadow transition on hover (if any) *\/\n}\n\/* Add a class for the video player container if you want to target its children more easily *\/\n#videoPlayerContainer video { \/* Ensure video tag fits container *\/\n    display: block; \/* Removes extra space below if it's inline *\/\n}\n<\/style>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-e4bc449 e-flex e-con-boxed e-con e-parent\" data-id=\"e4bc449\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-fdce02d e-con-full e-flex e-con e-child\" data-id=\"fdce02d\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-6160f3a elementor-widget elementor-widget-shortcode\" data-id=\"6160f3a\" data-element_type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><!-- Post Page Mid Roll -->\r\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-ea60902 elementor-widget elementor-widget-html\" data-id=\"ea60902\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!-- 4. NO TOUCH Scripts -->\n<!-- ImageID_4 HTML external scripts to call + JS -->\n<!-- script src=\"https:\/\/code.jquery.com\/jquery-3.7.1.min.js\"><\/script -->\r\n<script>\r\njQuery(document).ready(function ($) {\r\n\r\n  \/\/ --- IMAGE HOTSPOTS AND BUTTONS INIT ---\r\n  $('.hotspot-block').each(function () {\r\n    const $block = $(this);\r\n    const id = $block.data('id');\r\n    const $image = $block.find(`.main-image[data-id=\"${id}\"]`);\r\n    const $container = $block.find('.hotspot-container');\r\n    const $buttons = $block.find('.hotspot-buttons');\r\n    const imageUrl = imageMap[id];\r\n\r\n\r\n\t\r\n    const csvRaw = $(`pre#hotspot-data-${id}`).text().trim();\r\n\r\n    const activeNumbers = [];\r\n    $block.data('activeNumbers', activeNumbers);\r\n\r\n    if (!imageUrl) return;\r\n    $image.attr('src', imageUrl);\r\n\r\n    $image.on('load', function () {\r\n      const imgWidth = $image[0].naturalWidth;\r\n      const imgHeight = $image[0].naturalHeight;\r\n\r\n      \/\/ --- Simple Pipe-Delimited Parse ---\r\n\tconst lines = csvRaw.split('\\n').map(line => line.trim()).filter(Boolean);\r\n\tif (lines.length < 2) return;\r\n\t\/\/ Optionally check header here if you want\r\n\tconst data = lines.slice(1).map(line => {\r\n\t  \/\/ Split by pipe instead of comma, but allow pipes in the text field (by joining the rest)\r\n\t  const parts = line.split('|');\r\n\t  const order = parts[0] ? parts[0].trim() : '';\r\n\t  const x_px = parts[1] ? parts[1].trim() : '';\r\n\t  const y_px = parts[2] ? parts[2].trim() : '';\r\n\t  const direction = parts[3] ? parts[3].trim() : '';\r\n\t  const text = parts.length > 4 ? parts.slice(4).join('|').trim() : '';\r\n\t  return { order, x_px, y_px, direction, text };\r\n\t});\r\n\r\n\t\/\/ console.log('Parsed data:', data);\r\n\r\n\r\n      data.forEach(row => {\r\n        const number = String($.trim(row.order));\r\n        const xPx = parseFloat(row.x_px);\r\n        const yPx = parseFloat(row.y_px);\r\n        const dir = (row.direction || \"A\").trim().toUpperCase();\r\n        const text = $.trim(row.text);\r\n        const leftPercent = (xPx \/ imgWidth) * 100;\r\n        const topPercent = (yPx \/ imgHeight) * 100;\r\n\r\n        const tooltipClass = {\r\n          A: 'tooltip-above',\r\n          B: 'tooltip-below',\r\n          L: 'tooltip-left',\r\n          R: 'tooltip-right'\r\n        }[dir] || 'tooltip-above';\r\n\r\n        \/\/ Tooltip text present in DOM for TranslatePress!\r\n        const formattedText = `${number}. ` + text.replace(\/\\n\/g, '<br>');\r\n        const $hotspot = $(`\r\n          <div class=\"hotspot ${tooltipClass}\" data-number=\"${number}\">\r\n            <span class=\"hotspot-number\">${number}<\/span>\r\n            <span class=\"hotspot-tooltip\" style=\"display:none;\">${formattedText}<\/span>\r\n          <\/div>\r\n        `).css({\r\n          left: `${leftPercent}%`,\r\n          top: `${topPercent}%`,\r\n          transform: 'translate(-50%, -50%)',\r\n          position: 'absolute'\r\n        });\r\n\r\n        $container.append($hotspot);\r\n        $buttons.append(`<button class=\"hotspot-btn\" data-number=\"${number}\">${number}<\/button>`);\r\n      });\r\n    });\r\n  });\r\n\r\n  \/\/ --- STYLE UPDATE FUNCTION ---\r\nfunction updateStyles($block) {\r\n  const active = $block.data('activeNumbers') || [];\r\n  $block.find('.hotspot').each(function () {\r\n    const num = String($(this).data('number'));\r\n    const $tooltip = $(this).find('.hotspot-tooltip');\r\n    if (active.includes(num)) {\r\n      $(this).addClass('enlarged active');\r\n      $tooltip.show(); \/\/ <-- Show tooltip!\r\n    } else {\r\n      $(this).removeClass('enlarged active');\r\n      $tooltip.hide(); \/\/ <-- Hide tooltip!\r\n    }\r\n  });\r\n  $block.find('.hotspot-btn').each(function () {\r\n    const num = String($(this).data('number'));\r\n    $(this)\r\n      .toggleClass('highlight', active.includes(num))\r\n      .toggleClass('enlarged', active.includes(num));\r\n  });\r\n}\r\n\r\n\r\n  \/\/ --- HOTSPOT\/BUTTON CLICK ---\r\n  $(document).on('click', '.hotspot, .hotspot-btn', function (e) {\r\n    e.preventDefault();\r\n    const $clicked = $(e.target).closest('.hotspot, .hotspot-btn');\r\n    const num = String($clicked.data('number'));\r\n    const $block = $clicked.closest('.hotspot-block');\r\n    let active = $block.data('activeNumbers') || [];\r\n\r\n    const wasActive = active.includes(num);\r\n\r\n    \/\/ Clear Hide if checked\r\n    const $hide = $block.find('.hide-numbers-toggle');\r\n    if ($hide.is(':checked')) {\r\n      $hide.prop('checked', false).trigger('change');\r\n    }\r\n\r\n    if (wasActive) {\r\n      active = active.filter(n => n !== num);\r\n    } else {\r\n      active = [num]; \/\/ Only one active at a time\r\n    }\r\n    $block.data('activeNumbers', active);\r\n    updateStyles($block);\r\n\r\n    \/\/ Uncheck \"Show all\" if not all hotspots are active\r\n    const allNums = $block.find('.hotspot').map((_, el) => String($(el).data('number'))).get();\r\n    const $toggle = $block.find('.show-all-toggle');\r\n    const isAllActive = allNums.every(n => active.includes(n));\r\n    $toggle.prop('checked', isAllActive);\r\n  });\r\n\r\n  \/\/ --- SHOW ALL \/ HIDE MUTUAL EXCLUSIVITY AND BEHAVIOR ---\r\n  $(document).on('change', '.show-all-toggle', function() {\r\n    const id = $(this).data('id');\r\n    const $block = $(`.hotspot-block[data-id=\"${id}\"]`);\r\n    const $hide = $block.find('.hide-numbers-toggle');\r\n    const $hotspots = $block.find('.hotspot');\r\n    const allNums = $hotspots.map((_, el) => String($(el).data('number'))).get();\r\n\r\n    \/\/ Mutually exclusive: uncheck Hide if Show All is checked\r\n    if ($(this).is(':checked')) {\r\n      if ($hide.is(':checked')) {\r\n        $hide.prop('checked', false).trigger('change');\r\n      }\r\n      $block.data('activeNumbers', allNums);\r\n    } else {\r\n      $block.data('activeNumbers', []);\r\n    }\r\n\r\n    updateStyles($block);\r\n  });\r\n\r\n  \/\/ Hide handler\r\n  $(document).on('change', '.hide-numbers-toggle', function() {\r\n    const id = $(this).data('id');\r\n    const $block = $(`.hotspot-block[data-id=\"${id}\"]`);\r\n    const $showAll = $block.find('.show-all-toggle');\r\n    const $hotspots = $block.find('.hotspot');\r\n    const checked = $(this).is(':checked');\r\n\r\n    \/\/ Mutually exclusive: uncheck Show All if Hide is checked\r\n    if (checked && $showAll.is(':checked')) {\r\n      $showAll.prop('checked', false).trigger('change');\r\n    }\r\n\r\n    if (checked) {\r\n      $hotspots.hide();\r\n      $block.find('.enlarged, .active').removeClass('enlarged active');\r\n    } else {\r\n      $hotspots.show();\r\n    }\r\n  });\r\n\r\n  \/\/ --- CLICKING OUTSIDE CLEARS EVERYTHING ---\r\n  $(document).on('click', function (e) {\r\n    const $target = $(e.target);\r\n    const $block = $target.closest('.hotspot-block');\r\n    $('.hotspot-block').each(function () {\r\n      const $thisBlock = $(this);\r\n      if (!$block.length || !$block.is(this)) {\r\n        $thisBlock.data('activeNumbers', []);\r\n        $thisBlock.find('.show-all-toggle').prop('checked', false);\r\n        updateStyles($thisBlock);\r\n      }\r\n    });\r\n  });\r\n\r\n});\r\n<\/script>\r\n \t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>","protected":false},"excerpt":{"rendered":"<p>\u56e3\u584a\u306e\u4e16\u4ee3\u304c\u7406\u89e3\u3057\u3066\u3044\u306a\u3044\u3053\u3068 \u7537\u6027\u306f\u3001\u7d50\u5a5a\u304c\u3069\u308c\u307b\u3069\u306e\u4ee3\u511f\u3092\u6255\u3046\u3053\u3068\u306b\u306a\u308b\u304b\u306b\u76ee\u899a\u3081\u3064\u3064\u3042\u308b\u3002hoe_math\u3068Pearl\u306f\u3001\u3042\u3089\u3086\u308b\u80cc\u666f\u3092\u6301\u3064\u7537\u305f\u3061\u304c\u3001\u306a\u305c\u7d50\u5a5a\u304c\u60aa\u3044\u53d6\u5f15\u3060\u3068\u8003\u3048\u3066\u3044\u308b\u306e\u304b\u3092\u8ad6\u7834\u3059\u308b\u3002\u96e2\u5a5a\u306e\u8a71\u306f\u300c\u9593\u9055\u3063\u305f\u5973\u6027\u300d\u3092\u9078\u3093\u3060\u3068\u3044\u3046\u3060\u3051\u3067\u306f\u306a\u3044\u3002hoe_math\u306f\u30b7\u30f3\u30d7\u30eb\u306a\u30a2\u30a4\u30c7\u30a2\u3092\u4f7f\u3046\uff1a\u793e\u4f1a\u304c\u4eba\u3005\u306b\u7d50\u5a5a\u751f\u6d3b\u3092\u5f37\u5236\u3059\u308b\u3068\u304d\u3001\u3042\u308b\u3044\u306f\u30b3\u30df\u30c3\u30c8\u30e1\u30f3\u30c8\u304c\u30bc\u30ed\u306e\u3068\u304d\u3001\u7d50\u5a5a\u306e\u8cea\u306f\u4f4e\u4e0b\u3059\u308b\u3002\u30b9\u30a4\u30fc\u30c8\u30b9\u30dd\u30c3\u30c8\uff1f\u7d50\u5a5a\u304c\u5b9f\u969b\u306b\u610f\u5473\u3092\u6301\u3064\u3088\u3046\u306b\u3001\u8a93\u3044\u3092\u7834\u3063\u305f\u5834\u5408\u306b\u5341\u5206\u306a\u7d50\u679c\u3092\u3082\u305f\u3089\u3059\u3053\u3068\u3060\u3002\u5f7c\u3089\u306f\u3001\u7d50\u5a5a\u5951\u7d04\u3092\u30b9\u30dd\u30fc\u30c4\u306e\u5951\u7d04\u306e\u3088\u3046\u306b\u3057\u305f\u308a\u3001\u7d50\u5a5a\u306b\u661f\u306e\u8a55\u4fa1\u3092\u52a0\u3048\u305f\u308a\u3059\u308b\u3053\u3068\u306b\u3064\u3044\u3066\u5197\u8ac7\u3092\u8a00\u3044\u3001\u30c8\u30e0\u30fb\u30d6\u30ec\u30a4\u30c7\u30a3\u3067\u3055\u3048\u3067\u304d\u306a\u304b\u3063\u305f\u306e\u306b\u3001\u306a\u305c\u3069\u3093\u306a\u7537\u3067\u3082\u5951\u7d04\u3059\u308b\u306e\u304b\u3068\u7591\u554f\u3092\u5448\u3059\u308b\u3002<\/p>","protected":false},"author":6,"featured_media":5301,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[149,106,144,100,137,103],"tags":[127,126,129,128],"class_list":["post-5299","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-clips","category-gender-roles","category-marriage","category-free-newsletter-insider-exclusives","category-relationship-dynamics","category-relationships","tag-es","tag-fr","tag-ja","tag-pt"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/itishoemath.com\/ja\/wp-json\/wp\/v2\/posts\/5299","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/itishoemath.com\/ja\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/itishoemath.com\/ja\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/itishoemath.com\/ja\/wp-json\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/itishoemath.com\/ja\/wp-json\/wp\/v2\/comments?post=5299"}],"version-history":[{"count":16,"href":"https:\/\/itishoemath.com\/ja\/wp-json\/wp\/v2\/posts\/5299\/revisions"}],"predecessor-version":[{"id":5393,"href":"https:\/\/itishoemath.com\/ja\/wp-json\/wp\/v2\/posts\/5299\/revisions\/5393"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/itishoemath.com\/ja\/wp-json\/wp\/v2\/media\/5301"}],"wp:attachment":[{"href":"https:\/\/itishoemath.com\/ja\/wp-json\/wp\/v2\/media?parent=5299"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/itishoemath.com\/ja\/wp-json\/wp\/v2\/categories?post=5299"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/itishoemath.com\/ja\/wp-json\/wp\/v2\/tags?post=5299"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}