<br />
<b>Warning</b>:  unlink(/home/losta/withcode.tech/public_html/media/wp-content/plugins/wp-scss/cache/addstyle.css): No such file or directory in <b>/home/losta/withcode.tech/public_html/media/wp-content/plugins/wp-scss/class/class-wp-scss.php</b> on line <b>123</b><br />
{"id":16527,"date":"2026-07-09T07:38:15","date_gmt":"2026-07-09T07:38:15","guid":{"rendered":"https:\/\/withcode.tech\/media\/?p=16527"},"modified":"2026-07-10T07:32:45","modified_gmt":"2026-07-10T07:32:45","slug":"css-loading-animation","status":"publish","type":"post","link":"https:\/\/withcode.tech\/media\/css-loading-animation\/","title":{"rendered":"CSS\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u96c6\uff5c\u30b3\u30d4\u30da\u3067\u5373\u4f7f\u3048\u308b\u5b9f\u88c5\u30b5\u30f3\u30d7\u30eb20"},"content":{"rendered":"<div class=\"swell-block-balloon\">\n<div class=\"c-balloon -bln-left\" data-col=\"gray\">\n<div class=\"c-balloon__icon -square\"><img decoding=\"async\" src=\"https:\/\/withcode.tech\/media\/wp-content\/uploads\/2025\/06\/\u30b9\u30af\u30ea\u30fc\u30f3\u30b7\u30e7\u30c3\u30c8-2025-06-15-14.40.37.jpg\" alt=\"\" class=\"c-balloon__iconImg\" width=\"80px\" height=\"80px\"><span class=\"c-balloon__iconName\">\u751f\u5f92<\/span><\/div>\n<div class=\"c-balloon__body -speaking -border-none\">\n<div class=\"c-balloon__text\">\n<p><strong>\u753b\u50cf\u306e\u8aad\u307f\u8fbc\u307f\u3068\u304b\u901a\u4fe1\u5f85\u3061\u306e\u3068\u304d\u306b\u3001\u304f\u308b\u304f\u308b\u56de\u308b\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u3092\u51fa\u3057\u305f\u3044\u3093\u3067\u3059\u3002CSS\u3060\u3051\u3067\u4f5c\u308c\u307e\u3059\u304b\uff1f20\u7a2e\u985e\u304f\u3089\u3044\u6b32\u3057\u304f\u3066\u3001\u30b3\u30d4\u30da\u3067\u4f7f\u3048\u308b\u3068\u52a9\u304b\u308b\u3093\u3067\u3059\u3051\u3069\u2026\u3002<\/strong><\/p>\n<p><span class=\"c-balloon__shapes\"><span class=\"c-balloon__before\"><\/span><span class=\"c-balloon__after\"><\/span><\/span><\/div>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"swell-block-balloon\">\n<div class=\"c-balloon -bln-right\" data-col=\"gray\">\n<div class=\"c-balloon__icon -square\"><img decoding=\"async\" src=\"https:\/\/withcode.tech\/media\/wp-content\/uploads\/2025\/06\/\u30b9\u30af\u30ea\u30fc\u30f3\u30b7\u30e7\u30c3\u30c8-2025-06-15-15.11.23.jpg\" alt=\"\" class=\"c-balloon__iconImg\" width=\"80px\" height=\"80px\"><span class=\"c-balloon__iconName\">\u30da\u30f3\u535a\u58eb<\/span><\/div>\n<div class=\"c-balloon__body -speaking -border-none\">\n<div class=\"c-balloon__text\">\n<p><strong>\u3044\u3044\u30c6\u30fc\u30de\u3060\u306d\uff01\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u306fCSS\u306e<code>@keyframes<\/code>\u3060\u3051\u3067\u307b\u3068\u3093\u3069\u4f5c\u308c\u308b\u3088\u3002JavaScript\u3082\u30d7\u30e9\u30b0\u30a4\u30f3\u3082\u3044\u3089\u306a\u3044\u3002\u3053\u306e\u8a18\u4e8b\u3067\u306f\u5186\u30b9\u30d4\u30ca\u30fc\u30fb\u30c9\u30c3\u30c8\u30fb\u30d0\u30fc\u30fb\u30d7\u30ed\u30b0\u30ec\u30b9\u30d0\u30fc\u30fb\u30d1\u30eb\u30b9\u30fb\u30b9\u30b1\u30eb\u30c8\u30f3\u30fb\u6ce2\u30fb\u5186\u5f62\u30d7\u30ed\u30b0\u30ec\u30b9\u307e\u3067\u3001\u30b3\u30d4\u30da\u3067\u5373\u4f7f\u3048\u308b20\u7a2e\u985e\u3092\u3001\u53d7\u3051\u76bf\u306eHTML\u3068\u52d5\u304fCSS\u3092\u30bb\u30c3\u30c8\u3067\u5168\u90e8\u898b\u305b\u3066\u3044\u304f\u306d\u3002\u4ed5\u7d44\u307f\u3082\u5206\u304b\u308b\u3088\u3046\u306b<code>@keyframes<\/code>\u306e\u57fa\u790e\u304b\u3089\u89e3\u8aac\u3059\u308b\u3088\uff01<\/strong><\/p>\n<p><span class=\"c-balloon__shapes\"><span class=\"c-balloon__before\"><\/span><span class=\"c-balloon__after\"><\/span><\/span><\/div>\n<\/div>\n<\/div>\n<\/div>\n<p class=\"wp-block-paragraph\">Web\u30b5\u30a4\u30c8\u3084\u30a2\u30d7\u30ea\u3067\u3001\u30c7\u30fc\u30bf\u306e\u8aad\u307f\u8fbc\u307f\u4e2d\u3084\u901a\u4fe1\u5f85\u3061\u306e\u3042\u3044\u3060\u306b\u300c\u304f\u308b\u304f\u308b\u56de\u308b\u30a2\u30a4\u30b3\u30f3\u300d\u3084\u300c\u70b9\u6ec5\u3059\u308b\u30c9\u30c3\u30c8\u300d\u3092\u898b\u305f\u3053\u3068\u304c\u3042\u308b\u306f\u305a\u3067\u3059\u3002\u3053\u308c\u304c<strong><span class=\"swl-marker mark_yellow\">\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\uff08\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u30a4\u30f3\u30b8\u30b1\u30fc\u30bf\u30fc\uff09<\/span><\/strong>\u3067\u3059\u3002\u51e6\u7406\u306b\u6642\u9593\u304c\u304b\u304b\u3063\u3066\u3044\u308b\u3068\u304d\u3001\u753b\u9762\u304c\u771f\u3063\u767d\u306e\u307e\u307e\u3060\u3068\u30e6\u30fc\u30b6\u30fc\u306f\u300c\u56fa\u307e\u3063\u305f\uff1f\u300d\u3068\u4e0d\u5b89\u306b\u306a\u308a\u307e\u3059\u3002\u305d\u3053\u3067\u300c\u3044\u307e\u51e6\u7406\u4e2d\u3067\u3059\u3088\u300d\u3068\u4f1d\u3048\u308b\u306e\u304c\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u306e\u5f79\u5272\u3067\u3059\u3002<\/p>\n<p class=\"wp-block-paragraph\">\u3053\u306e\u8a18\u4e8b\u3067\u306f\u3001<strong><span class=\"swl-marker mark_yellow\">CSS\u3060\u3051\u3067\u4f5c\u308c\u308b\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u309220\u7a2e\u985e<\/span><\/strong>\u3001\u30b3\u30d4\u30da\u3067\u3059\u3050\u4f7f\u3048\u308b\u5b9f\u88c5\u30b5\u30f3\u30d7\u30eb\u3068\u3057\u3066\u307e\u3068\u3081\u307e\u3057\u305f\u3002\u5186\u30b9\u30d4\u30ca\u30fc\u30fb\u4e8c\u91cd\u30ea\u30f3\u30b0\u30fb\u30c9\u30c3\u30c83\u3064\u30fb\u30d0\u30fc\u5f80\u5fa9\u30fb\u30d7\u30ed\u30b0\u30ec\u30b9\u30d0\u30fc\u30fb\u30d1\u30eb\u30b9\u30fb\u30b9\u30b1\u30eb\u30c8\u30f3\u30b9\u30af\u30ea\u30fc\u30f3\u30fb\u6ce2\u30fb\u5186\u5f62\u30d7\u30ed\u30b0\u30ec\u30b9\u306a\u3069\u3001\u5b9f\u52d9\u3067\u3088\u304f\u4f7f\u3046\u30d1\u30bf\u30fc\u30f3\u3092\u7db2\u7f85\u3057\u3066\u3044\u307e\u3059\u3002\u3059\u3079\u3066\u5916\u90e8\u30e9\u30a4\u30d6\u30e9\u30ea\u4e0d\u8981\u3001\u53d7\u3051\u76bf\u306eHTML\u3068\u52d5\u304fCSS\uff08<code>@keyframes<\/code>\u3092\u542b\u3080\uff09\u3092\u30bb\u30c3\u30c8\u3067\u63b2\u8f09\u3057\u3066\u3044\u308b\u306e\u3067\u3001\u4e38\u3054\u3068\u30b3\u30d4\u30fc\u3059\u308c\u3070\u305d\u306e\u307e\u307e\u52d5\u304d\u307e\u3059\u3002<\/p>\n<p class=\"wp-block-paragraph\">\u3042\u308f\u305b\u3066\u3001\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u306e\u571f\u53f0\u3068\u306a\u308b<strong><span class=\"swl-marker mark_yellow\">@keyframes\u3068animation\u30d7\u30ed\u30d1\u30c6\u30a3\u306e\u57fa\u790e<\/span><\/strong>\u3001\u30e2\u30fc\u30b7\u30e7\u30f3\u304c\u82e6\u624b\u306a\u4eba\u306b\u914d\u616e\u3059\u308b<code>prefers-reduced-motion<\/code>\u3001\u30ab\u30af\u3064\u304d\u3092\u9632\u3050\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u306e\u30b3\u30c4\u3001JavaScript\u3067\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u3092\u8868\u793a\u30fb\u975e\u8868\u793a\u306b\u5207\u308a\u66ff\u3048\u308b\u65b9\u6cd5\u3001\u8aad\u307f\u4e0a\u3052\u30bd\u30d5\u30c8\u306b\u914d\u616e\u3059\u308b<code>aria-busy<\/code>\u3084<code>role=\"status\"<\/code>\u307e\u3067\u3001\u521d\u5fc3\u8005\u306e\u65b9\u304c\u3064\u307e\u305a\u304d\u3084\u3059\u3044\u30dd\u30a4\u30f3\u30c8\u3092\u4e01\u5be7\u306b\u89e3\u8aac\u3057\u307e\u3059\u3002\u6700\u5f8c\u307e\u3067\u8aad\u3081\u3070\u3001\u30b7\u30fc\u30f3\u306b\u5408\u308f\u305b\u3066\u81ea\u5206\u3067\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u3092\u9078\u3073\u3001\u8abf\u6574\u3057\u3066\u4f7f\u3048\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3059\u3002<\/p>\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n<h2 class=\"wp-block-heading\">\u3053\u306e\u8a18\u4e8b\u306e\u7d50\u8ad6\uff1aCSS\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u306f@keyframes\u3068animation\u3060\u3051\u3067\u4f5c\u308c\u308b<\/h2>\n<p class=\"wp-block-paragraph\">\u5148\u306b\u7d50\u8ad6\u304b\u3089\u304a\u4f1d\u3048\u3057\u307e\u3059\u3002\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u306f\u3001\u7279\u5225\u306a\u30e9\u30a4\u30d6\u30e9\u30ea\u3092\u5165\u308c\u306a\u304f\u3066\u3082<strong><span class=\"swl-marker mark_yellow\">CSS\u306e@keyframes\u3068animation\u30d7\u30ed\u30d1\u30c6\u30a3\u3060\u3051<\/span><\/strong>\u3067\u307b\u3068\u3093\u3069\u4f5c\u308c\u307e\u3059\u3002\u62bc\u3055\u3048\u308b\u3079\u304d\u30dd\u30a4\u30f3\u30c8\u306f\u6b21\u306e\u3068\u304a\u308a\u3067\u3059\u3002<\/p>\n<ul class=\"wp-block-list\">\n<li><strong><span class=\"swl-marker mark_yellow\">\u52d5\u304d\u306e\u6b63\u4f53\u306f\u300c@keyframes\uff08\u52d5\u304d\u306e\u53f0\u672c\uff09\u300d\u3068\u300canimation\uff08\u305d\u308c\u3092\u518d\u751f\u3059\u308b\u6307\u5b9a\uff09\u300d\u306e2\u3064<\/span><\/strong>\u3060\u3051\u3002\u3053\u308c\u3055\u3048\u5206\u304b\u308c\u307020\u7a2e\u985e\u3059\u3079\u3066\u540c\u3058\u539f\u7406\u3067\u8aad\u307f\u89e3\u3051\u307e\u3059\u3002<\/li>\n<li><strong><span class=\"swl-marker mark_yellow\">\u56de\u8ee2\u306ftransform: rotate()\u3001\u70b9\u6ec5\u306fopacity\u3001\u4f38\u7e2e\u306fscale()<\/span><\/strong>\u3067\u4f5c\u308a\u307e\u3059\u3002\u7d44\u307f\u5408\u308f\u305b\u3092\u5909\u3048\u308b\u3060\u3051\u3067\u898b\u305f\u76ee\u304c\u5927\u304d\u304f\u5909\u308f\u308a\u307e\u3059\u3002<\/li>\n<li><strong><span class=\"swl-marker mark_yellow\">\u7121\u9650\u306b\u56de\u3057\u7d9a\u3051\u308b\u306b\u306fanimation-iteration-count\u306binfinite\u3092\u6307\u5b9a<\/span><\/strong>\u3057\u307e\u3059\u3002\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u306f\u300c\u7d42\u308f\u308a\u304c\u8aad\u3081\u306a\u3044\u5f85\u3061\u6642\u9593\u300d\u306b\u51fa\u3059\u306e\u3067\u57fa\u672c\u306finfinite\u3067\u3059\u3002<\/li>\n<li><strong><span class=\"swl-marker mark_yellow\">\u52d5\u304d\u3092\u6ed1\u3089\u304b\u306b\u3059\u308b\u30fb\u30ab\u30af\u3064\u304d\u3092\u9632\u3050\u306b\u306f\u3001transform\u3068opacity\u3060\u3051\u3067\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3055\u305b\u308b<\/span><\/strong>\u306e\u304c\u9244\u5247\u3067\u3059\uff08GPU\u3067\u51e6\u7406\u3055\u308c\u3066\u8efd\u304f\u306a\u308a\u307e\u3059\uff09\u3002<\/li>\n<li><strong><span class=\"swl-marker mark_yellow\">\u30e2\u30fc\u30b7\u30e7\u30f3\u304c\u82e6\u624b\u306a\u4eba\u306e\u305f\u3081\u306b\u3001prefers-reduced-motion\u3067\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3092\u6b62\u3081\u308b\u914d\u616e<\/span><\/strong>\u3092\u5165\u308c\u3066\u304a\u304f\u3068\u3001\u8ab0\u306b\u3068\u3063\u3066\u3082\u3084\u3055\u3057\u3044\u30b5\u30a4\u30c8\u306b\u306a\u308a\u307e\u3059\u3002<\/li>\n<\/ul>\n<p class=\"wp-block-paragraph\">\u3053\u306e\u8a18\u4e8b\u306e20\u30b5\u30f3\u30d7\u30eb\u306f\u3001\u3059\u3079\u3066\u3053\u306e\u539f\u7406\u306e\u5fdc\u7528\u3067\u3059\u3002\u307e\u305a\u306f\u5168\u4f53\u50cf\u3068\u3057\u3066\u300c\u3069\u3093\u306a\u7a2e\u985e\u304c\u3042\u308b\u306e\u304b\u300d\u3092\u4e00\u89a7\u3067\u78ba\u8a8d\u3057\u3001\u305d\u308c\u304b\u3089<code>@keyframes<\/code>\u306e\u57fa\u790e\u3001\u305d\u3057\u306620\u7a2e\u985e\u306e\u5b9f\u88c5\u30b5\u30f3\u30d7\u30eb\u3078\u3068\u9032\u3093\u3067\u3044\u304d\u307e\u3057\u3087\u3046\u3002\u6c17\u306b\u5165\u3063\u305f\u3082\u306e\u3092\u30b3\u30d4\u30fc\u3057\u3066\u3001\u8272\u3084\u30b5\u30a4\u30ba\u306e\u6570\u5b57\u3092\u5909\u3048\u308b\u3060\u3051\u3067\u81ea\u5206\u306e\u30b5\u30a4\u30c8\u306b\u4f7f\u3048\u307e\u3059\u3002<\/p>\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n<h2 class=\"wp-block-heading\">\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f320\u7a2e\u985e\u306e\u65e9\u898b\u8868<\/h2>\n<p class=\"wp-block-paragraph\">\u6700\u521d\u306b\u3001\u3053\u306e\u8a18\u4e8b\u3067\u7d39\u4ecb\u3059\u308b20\u7a2e\u985e\u3092<strong><span class=\"swl-marker mark_yellow\">\u898b\u305f\u76ee\u3068\u4f7f\u3044\u3069\u3053\u308d<\/span><\/strong>\u3067\u4e00\u89a7\u306b\u307e\u3068\u3081\u307e\u3057\u305f\u3002\u300c\u3069\u3093\u306a\u5834\u9762\u3067\u3069\u308c\u3092\u4f7f\u3048\u3070\u3044\u3044\u304b\u300d\u306e\u76ee\u5b89\u306b\u3057\u3066\u304f\u3060\u3055\u3044\u3002\u540d\u524d\u3092\u30af\u30ea\u30c3\u30af\u3067\u304d\u308b\u76ee\u6b21\u304b\u3089\u3082\u5404\u30b5\u30f3\u30d7\u30eb\u3078\u98db\u3079\u307e\u3059\u3002<\/p>\n<figure class=\"wp-block-table\">\n<table>\n<thead>\n<tr>\n<th>#<\/th>\n<th>\u7a2e\u985e<\/th>\n<th>\u52d5\u304d\u306e\u4ed5\u7d44\u307f<\/th>\n<th>\u4f7f\u3044\u3069\u3053\u308d\u306e\u76ee\u5b89<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>1<\/td>\n<td>\u5186\u30b9\u30d4\u30ca\u30fc<\/td>\n<td>border\uff0brotate<\/td>\n<td>\u6700\u3082\u5b9a\u756a\u3002\u901a\u4fe1\u5f85\u3061\u5168\u822c<\/td>\n<\/tr>\n<tr>\n<td>2<\/td>\n<td>\u4e8c\u91cd\u30ea\u30f3\u30b0<\/td>\n<td>2\u3064\u306e\u30ea\u30f3\u30b0\u3092\u9006\u56de\u8ee2<\/td>\n<td>\u5c11\u3057\u30ea\u30c3\u30c1\u306b\u898b\u305b\u305f\u3044\u3068\u304d<\/td>\n<\/tr>\n<tr>\n<td>3<\/td>\n<td>\u30c9\u30c3\u30c8\u70b9\u6ec5\uff083\u3064\uff09<\/td>\n<td>opacity\u3092\u6642\u9593\u5dee\u3067<\/td>\n<td>\u30c6\u30ad\u30b9\u30c8\u306e\u8fd1\u304f\u30fb\u7701\u30b9\u30da\u30fc\u30b9<\/td>\n<\/tr>\n<tr>\n<td>4<\/td>\n<td>\u30c9\u30c3\u30c8\u30d0\u30a6\u30f3\u30c9<\/td>\n<td>translateY\u3067\u8df3\u306d\u308b<\/td>\n<td>\u8efd\u5feb\u306a\u5370\u8c61\u3092\u51fa\u3057\u305f\u3044\u3068\u304d<\/td>\n<\/tr>\n<tr>\n<td>5<\/td>\n<td>\u30d0\u30fc\u5f80\u5fa9<\/td>\n<td>translateX\u3067\u5de6\u53f3\u79fb\u52d5<\/td>\n<td>\u6a2a\u9577\u30b9\u30da\u30fc\u30b9\u30fb\u30d8\u30c3\u30c0\u30fc\u4e0b<\/td>\n<\/tr>\n<tr>\n<td>6<\/td>\n<td>\u30d7\u30ed\u30b0\u30ec\u30b9\u30d0\u30fc\uff08\u4e0d\u5b9a\uff09<\/td>\n<td>\u80cc\u666f\u3092\u5de6\u53f3\u306b\u30b9\u30e9\u30a4\u30c9<\/td>\n<td>\u9032\u6357\u304c\u8aad\u3081\u306a\u3044\u8aad\u307f\u8fbc\u307f<\/td>\n<\/tr>\n<tr>\n<td>7<\/td>\n<td>\u30d7\u30ed\u30b0\u30ec\u30b9\u30d0\u30fc\uff08\u78ba\u5b9a\uff09<\/td>\n<td>width\u3092JS\u3067\u66f4\u65b0<\/td>\n<td>\uff05\u304c\u5206\u304b\u308b\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u7b49<\/td>\n<\/tr>\n<tr>\n<td>8<\/td>\n<td>\u30d1\u30eb\u30b9\uff08\u62e1\u5927\u7e2e\u5c0f\uff09<\/td>\n<td>scale\u3068opacity<\/td>\n<td>\u3084\u308f\u3089\u304b\u304f\u4e3b\u5f35\u3057\u3059\u304e\u306a\u3044<\/td>\n<\/tr>\n<tr>\n<td>9<\/td>\n<td>\u30d1\u30eb\u30b9\u30ea\u30f3\u30b0\uff08\u6ce2\u7d0b\uff09<\/td>\n<td>scale\uff0bopacity\u3067\u62e1\u6563<\/td>\n<td>\u5730\u56f3\u30d4\u30f3\u30fb\u901a\u77e5\u306e\u5f37\u8abf<\/td>\n<\/tr>\n<tr>\n<td>10<\/td>\n<td>\u30b9\u30b1\u30eb\u30c8\u30f3\u30b9\u30af\u30ea\u30fc\u30f3<\/td>\n<td>linear-gradient\u306e\u30b7\u30de\u30fc<\/td>\n<td>\u8a18\u4e8b\u30fb\u30ab\u30fc\u30c9\u4e00\u89a7\u306e\u8aad\u307f\u8fbc\u307f<\/td>\n<\/tr>\n<tr>\n<td>11<\/td>\n<td>\u56de\u8ee2\u56db\u89d2<\/td>\n<td>rotate\u3067\u56db\u89d2\u304c\u56de\u308b<\/td>\n<td>\u30b7\u30f3\u30d7\u30eb\u3067\u8efd\u91cf<\/td>\n<\/tr>\n<tr>\n<td>12<\/td>\n<td>\u53cd\u8ee2\u3059\u308b\u56db\u89d2<\/td>\n<td>rotateX\/rotateY<\/td>\n<td>\u7acb\u4f53\u611f\u306e\u3042\u308b\u30a2\u30af\u30bb\u30f3\u30c8<\/td>\n<\/tr>\n<tr>\n<td>13<\/td>\n<td>\u6ce2\uff08\u30d0\u30fc3\u301c5\u672c\uff09<\/td>\n<td>scaleY\u3092\u6642\u9593\u5dee\u3067<\/td>\n<td>\u97f3\u58f0\u30fb\u9332\u97f3\u30fb\u51e6\u7406\u4e2d<\/td>\n<\/tr>\n<tr>\n<td>14<\/td>\n<td>\u30c6\u30ad\u30b9\u30c8\u2026\uff083\u70b9\u30ea\u30fc\u30c0\u30fc\uff09<\/td>\n<td>\u7591\u4f3c\u8981\u7d20\u3068content\u5207\u66ff<\/td>\n<td>\u300c\u8aad\u307f\u8fbc\u307f\u4e2d\u2026\u300d\u306e\u6587\u672b<\/td>\n<\/tr>\n<tr>\n<td>15<\/td>\n<td>\u5186\u5f62\u30d7\u30ed\u30b0\u30ec\u30b9<\/td>\n<td>conic-gradient<\/td>\n<td>\u5186\u30b0\u30e9\u30d5\u72b6\u306e\u9032\u6357<\/td>\n<\/tr>\n<tr>\n<td>16<\/td>\n<td>\u56de\u8ee2\u30b0\u30e9\u30c7\u30fc\u30b7\u30e7\u30f3<\/td>\n<td>conic-gradient\uff0brotate<\/td>\n<td>\u30e2\u30c0\u30f3\u306a\u5186\u30b9\u30d4\u30ca\u30fc<\/td>\n<\/tr>\n<tr>\n<td>17<\/td>\n<td>\u8df3\u306d\u308b\u30dc\u30fc\u30eb\uff08\u5f71\u4ed8\u304d\uff09<\/td>\n<td>translateY\u3068\u5f71\u306escale<\/td>\n<td>\u904a\u3073\u5fc3\u306e\u3042\u308b\u6f14\u51fa<\/td>\n<\/tr>\n<tr>\n<td>18<\/td>\n<td>\u30d5\u30ea\u30c3\u30d7\u30ab\u30fc\u30c9\u8aad\u8fbc<\/td>\n<td>rotateY\u3067\u88cf\u8fd4\u308b<\/td>\n<td>\u30ab\u30fc\u30c9UI\u306e\u8aad\u307f\u8fbc\u307f<\/td>\n<\/tr>\n<tr>\n<td>19<\/td>\n<td>\u5186\u5468\u3092\u306a\u305e\u308b\u70b9<\/td>\n<td>\u56de\u8ee2\u3059\u308b\u89aa\u8981\u7d20<\/td>\n<td>\u8ecc\u9053\u3092\u63cf\u304f\u30b9\u30d4\u30ca\u30fc<\/td>\n<\/tr>\n<tr>\n<td>20<\/td>\n<td>\u30aa\u30fc\u30d0\u30fc\u30ec\u30a4\u5168\u753b\u9762<\/td>\n<td>\u534a\u900f\u660e\u80cc\u666f\uff0b\u4e2d\u592e\u914d\u7f6e<\/td>\n<td>\u30da\u30fc\u30b8\u5168\u4f53\u306e\u8aad\u307f\u8fbc\u307f<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/figure>\n<p class=\"wp-block-paragraph\">\u8868\u3092\u898b\u308b\u3068\u3001\u52d5\u304d\u306e\u4ed5\u7d44\u307f\u306f<strong><span class=\"swl-marker mark_yellow\">\u300c\u56de\u8ee2\u300d\u300c\u70b9\u6ec5\uff08opacity\uff09\u300d\u300c\u79fb\u52d5\uff08translate\uff09\u300d\u300c\u4f38\u7e2e\uff08scale\uff09\u300d\u306e\u7d44\u307f\u5408\u308f\u305b<\/span><\/strong>\u304c\u307b\u3068\u3093\u3069\u3060\u3068\u5206\u304b\u308a\u307e\u3059\u3002\u88cf\u3092\u8fd4\u305b\u3070\u3001\u3053\u306e4\u3064\u306e\u52d5\u304b\u3057\u65b9\u3092\u899a\u3048\u308c\u3070\u3001\u3042\u3068\u306f\u5fdc\u7528\u3067\u3044\u304f\u3089\u3067\u3082\u4f5c\u308c\u308b\u3068\u3044\u3046\u3053\u3068\u3067\u3059\u3002\u6b21\u306e\u7ae0\u3067\u3001\u305d\u306e\u571f\u53f0\u3068\u306a\u308b<code>@keyframes<\/code>\u3068<code>animation<\/code>\u3092\u89e3\u8aac\u3057\u307e\u3059\u3002<\/p>\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n<h2 class=\"wp-block-heading\">\u571f\u53f0\u77e5\u8b58\uff1a@keyframes\u3068animation\u30d7\u30ed\u30d1\u30c6\u30a3\u306e\u57fa\u790e<\/h2>\n<p class=\"wp-block-paragraph\">\u30b5\u30f3\u30d7\u30eb\u306b\u5165\u308b\u524d\u306b\u3001\u3059\u3079\u3066\u306e\u571f\u53f0\u3068\u306a\u308b<strong><span class=\"swl-marker mark_yellow\">@keyframes\uff08\u30ad\u30fc\u30d5\u30ec\u30fc\u30e0\uff09\u3068animation\u30d7\u30ed\u30d1\u30c6\u30a3<\/span><\/strong>\u3092\u7406\u89e3\u3057\u3066\u304a\u304d\u307e\u3057\u3087\u3046\u3002\u3053\u3053\u304c\u5206\u304b\u308b\u3068\u300120\u7a2e\u985e\u306e\u30b3\u30fc\u30c9\u304c\u3059\u3079\u3066\u300c\u540c\u3058\u4ed5\u7d44\u307f\u306e\u5fdc\u7528\u300d\u3068\u3057\u3066\u8aad\u3081\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3059\u3002\u9006\u306b\u3053\u3053\u3092\u98db\u3070\u3059\u3068\u3001\u30b3\u30d4\u30da\u306f\u3067\u304d\u3066\u3082\u8abf\u6574\u304c\u3067\u304d\u307e\u305b\u3093\u3002<\/p>\n<h3 class=\"wp-block-heading\">@keyframes\u306f\u300c\u52d5\u304d\u306e\u53f0\u672c\u300d<\/h3>\n<p class=\"wp-block-paragraph\"><code>@keyframes<\/code>\u306f\u3001\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u306e<strong><span class=\"swl-marker mark_yellow\">\u52d5\u304d\u306e\u53f0\u672c\uff08\u3069\u306e\u6642\u70b9\u3067\u3069\u3093\u306a\u72b6\u614b\u304b\uff09<\/span><\/strong>\u3092\u66f8\u304f\u305f\u3081\u306e\u4ed5\u7d44\u307f\u3067\u3059\u3002<code>0%<\/code>\uff08\u958b\u59cb\uff09\u304b\u3089<code>100%<\/code>\uff08\u7d42\u4e86\uff09\u307e\u3067\u306e\u9593\u306b\u3001\u8981\u7d20\u3092\u3069\u3046\u5909\u5316\u3055\u305b\u308b\u304b\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002\u6b21\u306e\u30b3\u30fc\u30c9\u306f\u300c0%\u3067\u56de\u8ee20\u5ea6\u3001100%\u3067\u56de\u8ee2360\u5ea6\u300d\u3068\u3044\u3046\u53f0\u672c\u3067\u3059\u3002<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-css\" data-lang=\"CSS\"><code>\/* rotate \u3068\u3044\u3046\u540d\u524d\u306e\u53f0\u672c\u3092\u5b9a\u7fa9 *\/\n@keyframes rotate {\n  0%   { transform: rotate(0deg); }   \/* \u958b\u59cb\uff1a0\u5ea6 *\/\n  100% { transform: rotate(360deg); } \/* \u7d42\u4e86\uff1a360\u5ea6\uff1d1\u56de\u8ee2 *\/\n}\n\n\/* from \/ to \u3067\u3082\u66f8\u3051\u308b\uff080% \/ 100% \u3068\u540c\u3058\u610f\u5473\uff09 *\/\n@keyframes rotate2 {\n  from { transform: rotate(0deg); }\n  to   { transform: rotate(360deg); }\n}<\/code><\/pre>\n<\/div>\n<p class=\"wp-block-paragraph\">\u53f0\u672c\u3092\u5b9a\u7fa9\u3057\u305f\u3060\u3051\u3067\u306f\u4f55\u3082\u52d5\u304d\u307e\u305b\u3093\u3002\u3053\u306e\u53f0\u672c\u3092<strong><span class=\"swl-marker mark_yellow\">\u3069\u306e\u8981\u7d20\u3067\u30fb\u4f55\u79d2\u304b\u3051\u3066\u30fb\u4f55\u56de\u518d\u751f\u3059\u308b\u304b<\/span><\/strong>\u3092\u6307\u5b9a\u3057\u3066\u3001\u521d\u3081\u3066\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u304c\u52d5\u304d\u307e\u3059\u3002\u305d\u308c\u3092\u62c5\u3046\u306e\u304c<code>animation<\/code>\u30d7\u30ed\u30d1\u30c6\u30a3\u3067\u3059\u3002<\/p>\n<h3 class=\"wp-block-heading\">animation\u30d7\u30ed\u30d1\u30c6\u30a3\u3067\u53f0\u672c\u3092\u518d\u751f\u3059\u308b<\/h3>\n<p class=\"wp-block-paragraph\"><code>animation<\/code>\u306f\u3001\u5b9a\u7fa9\u3057\u305f<code>@keyframes<\/code>\u3092\u8981\u7d20\u306b\u9069\u7528\u3059\u308b\u305f\u3081\u306e\u30d7\u30ed\u30d1\u30c6\u30a3\u3067\u3059\u3002\u5b9f\u306f\u8907\u6570\u306e\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u307e\u3068\u3081\u305f\u300c\u4e00\u62ec\u6307\u5b9a\uff08\u30b7\u30e7\u30fc\u30c8\u30cf\u30f3\u30c9\uff09\u300d\u3067\u3001\u6b21\u306e8\u3064\u3092\u4e00\u884c\u3067\u66f8\u3051\u307e\u3059\u3002<\/p>\n<figure class=\"wp-block-table\">\n<table>\n<thead>\n<tr>\n<th>\u30d7\u30ed\u30d1\u30c6\u30a3<\/th>\n<th>\u610f\u5473<\/th>\n<th>\u3088\u304f\u4f7f\u3046\u5024<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>animation-name<\/td>\n<td>\u518d\u751f\u3059\u308b@keyframes\u306e\u540d\u524d<\/td>\n<td>rotate \u306a\u3069<\/td>\n<\/tr>\n<tr>\n<td>animation-duration<\/td>\n<td>1\u56de\u306b\u304b\u304b\u308b\u6642\u9593<\/td>\n<td>1s \/ 0.8s \/ 1.5s<\/td>\n<\/tr>\n<tr>\n<td>animation-timing-function<\/td>\n<td>\u901f\u5ea6\u306e\u5909\u5316\uff08\u30a4\u30fc\u30b8\u30f3\u30b0\uff09<\/td>\n<td>linear \/ ease \/ ease-in-out<\/td>\n<\/tr>\n<tr>\n<td>animation-delay<\/td>\n<td>\u958b\u59cb\u307e\u3067\u306e\u9045\u5ef6<\/td>\n<td>0s \/ 0.2s<\/td>\n<\/tr>\n<tr>\n<td>animation-iteration-count<\/td>\n<td>\u7e70\u308a\u8fd4\u3059\u56de\u6570<\/td>\n<td>infinite \/ 3<\/td>\n<\/tr>\n<tr>\n<td>animation-direction<\/td>\n<td>\u518d\u751f\u65b9\u5411<\/td>\n<td>normal \/ alternate<\/td>\n<\/tr>\n<tr>\n<td>animation-fill-mode<\/td>\n<td>\u518d\u751f\u524d\u5f8c\u306e\u72b6\u614b<\/td>\n<td>forwards \/ none<\/td>\n<\/tr>\n<tr>\n<td>animation-play-state<\/td>\n<td>\u518d\u751f\/\u4e00\u6642\u505c\u6b62<\/td>\n<td>running \/ paused<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/figure>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-css\" data-lang=\"CSS\"><code>.spinner {\n  \/* \u4e00\u62ec\u6307\u5b9a\uff08\u30b7\u30e7\u30fc\u30c8\u30cf\u30f3\u30c9\uff09\u306e\u66f8\u304d\u65b9 *\/\n  \/* \u540d\u524d \u6642\u9593 \u30a4\u30fc\u30b8\u30f3\u30b0 \u9045\u5ef6 \u56de\u6570 \u65b9\u5411 *\/\n  animation: rotate 1s linear 0s infinite normal;\n}\n\n\/* \u5206\u3051\u3066\u66f8\u304f\u3068\u610f\u5473\u304c\u5206\u304b\u308a\u3084\u3059\u3044 *\/\n.spinner2 {\n  animation-name: rotate;              \/* rotate \u53f0\u672c\u3092\u4f7f\u3046 *\/\n  animation-duration: 1s;              \/* 1\u79d2\u30671\u5468 *\/\n  animation-timing-function: linear;   \/* \u4e00\u5b9a\u901f\u5ea6\u3067 *\/\n  animation-iteration-count: infinite; \/* \u7121\u9650\u306b\u7e70\u308a\u8fd4\u3059 *\/\n}<\/code><\/pre>\n<\/div>\n<p class=\"wp-block-paragraph\">\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u3067\u7279\u306b\u91cd\u8981\u306a\u306e\u304c<strong><span class=\"swl-marker mark_yellow\">animation-iteration-count\u306binfinite\u3092\u6307\u5b9a\u3059\u308b\u3053\u3068<\/span><\/strong>\u3067\u3059\u3002\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u306f\u300c\u3042\u3068\u4f55\u79d2\u3067\u7d42\u308f\u308b\u304b\u5206\u304b\u3089\u306a\u3044\u5f85\u3061\u6642\u9593\u300d\u306b\u51fa\u3059\u3082\u306e\u306a\u306e\u3067\u3001\u6c7a\u307e\u3063\u305f\u56de\u6570\u3067\u306f\u306a\u304f<strong><span class=\"swl-marker mark_yellow\">infinite\uff08\u7121\u9650\uff09<\/span><\/strong>\u3067\u56de\u3057\u7d9a\u3051\u308b\u306e\u304c\u57fa\u672c\u3067\u3059\u3002\u9006\u306b\u30011\u56de\u3060\u3051\u52d5\u304b\u3057\u305f\u3044\u6f14\u51fa\u306a\u3089\u56de\u6570\u3092\u6570\u5b57\u3067\u6307\u5b9a\u3057\u307e\u3059\u3002<\/p>\n<h3 class=\"wp-block-heading\">animation-timing-function\u3067\u300c\u52d5\u304d\u306e\u8cea\u611f\u300d\u304c\u5909\u308f\u308b<\/h3>\n<p class=\"wp-block-paragraph\">\u540c\u3058\u53f0\u672c\u3067\u3082\u3001<code>animation-timing-function<\/code>\uff08\u30a4\u30fc\u30b8\u30f3\u30b0\uff09\u3092\u5909\u3048\u308b\u3068\u5370\u8c61\u304c\u5927\u304d\u304f\u5909\u308f\u308a\u307e\u3059\u3002\u3053\u308c\u306f<strong><span class=\"swl-marker mark_yellow\">\u6642\u9593\u306e\u9032\u307f\u65b9\uff08\u901f\u5ea6\u306e\u7de9\u6025\uff09<\/span><\/strong>\u3092\u6307\u5b9a\u3059\u308b\u3082\u306e\u3067\u3059\u3002\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u3067\u3088\u304f\u4f7f\u3046\u3082\u306e\u3092\u899a\u3048\u3066\u304a\u304d\u307e\u3057\u3087\u3046\u3002<\/p>\n<ul class=\"wp-block-list\">\n<li><strong><span class=\"swl-marker mark_yellow\">linear\uff1a\u4e00\u5b9a\u901f\u5ea6<\/span><\/strong>\u3002\u30b9\u30d4\u30ca\u30fc\u306e\u56de\u8ee2\u306f\u3053\u308c\u304c\u57fa\u672c\u3002\u7de9\u6025\u304c\u306a\u3044\u306e\u3067\u6a5f\u68b0\u7684\u3067\u81ea\u7136\u3067\u3059\u3002<\/li>\n<li><strong><span class=\"swl-marker mark_yellow\">ease-in-out\uff1a\u59cb\u3081\u3068\u7d42\u308f\u308a\u304c\u3086\u3063\u304f\u308a<\/span><\/strong>\u3002\u5f80\u5fa9\uff08alternate\uff09\u3068\u7d44\u307f\u5408\u308f\u305b\u308b\u3068\u3001\u3075\u308f\u3063\u3068\u623b\u308b\u81ea\u7136\u306a\u52d5\u304d\u306b\u306a\u308a\u307e\u3059\u3002<\/li>\n<li><strong><span class=\"swl-marker mark_yellow\">ease-out\uff1a\u59cb\u3081\u304c\u901f\u304f\u7d42\u308f\u308a\u304c\u3086\u3063\u304f\u308a<\/span><\/strong>\u3002\u30d1\u30eb\u30b9\u3084\u30d0\u30a6\u30f3\u30c9\u3067\u300c\u52e2\u3044\u3088\u304f\u51fa\u3066\u3001\u305d\u3063\u3068\u6b62\u307e\u308b\u300d\u8868\u73fe\u306b\u5411\u304d\u307e\u3059\u3002<\/li>\n<li><strong><span class=\"swl-marker mark_yellow\">cubic-bezier(&#8230;)\uff1a\u81ea\u5206\u3067\u66f2\u7dda\u3092\u5b9a\u7fa9<\/span><\/strong>\u3002\u7d30\u304b\u304f\u8abf\u6574\u3057\u305f\u3044\u3068\u304d\u306b\u4f7f\u3044\u307e\u3059\u304c\u3001\u521d\u5fc3\u8005\u306f\u307e\u305a\u4e0a\u306e3\u3064\u3067\u5341\u5206\u3067\u3059\u3002<\/li>\n<\/ul>\n<p class=\"wp-block-paragraph\">\u305f\u3068\u3048\u3070\u30b9\u30d4\u30ca\u30fc\u306e\u56de\u8ee2\u306b<code>ease-in-out<\/code>\u3092\u4f7f\u3046\u3068\u3001\u56de\u8ee2\u304c\u4e00\u5b9a\u306b\u306a\u3089\u305a\u30ac\u30af\u30ac\u30af\u3057\u3066\u898b\u3048\u308b\u3053\u3068\u304c\u3042\u308a\u307e\u3059\u3002\u56de\u8ee2\u7cfb\u306f<code>linear<\/code>\u3001\u4f38\u7e2e\u30fb\u5f80\u5fa9\u7cfb\u306f<code>ease-in-out<\/code>\u3068\u899a\u3048\u3066\u304a\u304f\u3068\u5931\u6557\u304c\u6e1b\u308a\u307e\u3059\u3002<\/p>\n<h3 class=\"wp-block-heading\">animation-direction\u306ealternate\u3067\u300c\u5f80\u5fa9\u300d\u3092\u4f5c\u308b<\/h3>\n<p class=\"wp-block-paragraph\"><code>animation-direction: alternate;<\/code>\u3092\u6307\u5b9a\u3059\u308b\u3068\u3001\u53f0\u672c\u3092<strong><span class=\"swl-marker mark_yellow\">\u884c\u3063\u3066\u623b\u308b\uff08\u5f80\u5fa9\uff09<\/span><\/strong>\u3088\u3046\u306b\u518d\u751f\u3057\u3066\u304f\u308c\u307e\u3059\u3002\u30d0\u30fc\u306e\u5de6\u53f3\u79fb\u52d5\u3084\u30d1\u30eb\u30b9\u306e\u62e1\u5927\u7e2e\u5c0f\u3067\u3001\u308f\u3056\u308f\u3056\u53f0\u672c\u306b\u623b\u308a\u306e\u52d5\u304d\u3092\u66f8\u304b\u306a\u304f\u3066\u3082\u3001\u3053\u308c1\u3064\u3067\u81ea\u7136\u306a\u5f80\u5fa9\u306b\u306a\u308a\u307e\u3059\u3002<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-css\" data-lang=\"CSS\"><code>@keyframes slide {\n  from { transform: translateX(0); }\n  to   { transform: translateX(100px); }\n}\n.bar {\n  \/* alternate \u306a\u306e\u3067 0\u2192100px\u21920\u2192100px\u2026 \u3068\u5f80\u5fa9\u3059\u308b *\/\n  animation: slide 0.8s ease-in-out infinite alternate;\n}<\/code><\/pre>\n<\/div>\n<p class=\"wp-block-paragraph\">\u3053\u3053\u307e\u3067\u304c\u571f\u53f0\u77e5\u8b58\u3067\u3059\u3002<strong><span class=\"swl-marker mark_yellow\">@keyframes\u3067\u53f0\u672c\u3092\u66f8\u304d\u3001animation\u3067\u518d\u751f\u3057\u3001infinite\u3067\u56de\u3057\u7d9a\u3051\u3001timing-function\u3068direction\u3067\u8cea\u611f\u3092\u6574\u3048\u308b<\/span><\/strong>\u3002\u3053\u308c\u304c\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u306e\u3059\u3079\u3066\u3067\u3059\u3002\u305d\u308c\u3067\u306f\u3001\u3044\u3088\u3044\u308820\u7a2e\u985e\u306e\u5b9f\u88c5\u30b5\u30f3\u30d7\u30eb\u306b\u5165\u308a\u307e\u3057\u3087\u3046\u3002\u3059\u3079\u3066\u53d7\u3051\u76bf\u306eHTML\u3068\u52d5\u304fCSS\u3092\u30bb\u30c3\u30c8\u3067\u8f09\u305b\u3066\u3044\u307e\u3059\u3002<\/p>\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n<h2 class=\"wp-block-heading\">\u30101\u3011\u5186\u30b9\u30d4\u30ca\u30fc\uff1a\u6700\u3082\u5b9a\u756a\u306e\u304f\u308b\u304f\u308b\u56de\u308b\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0<\/h2>\n<p class=\"wp-block-paragraph\">\u6700\u521d\u306f\u3001\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u3068\u3044\u3048\u3070\u3053\u308c\u3001\u3068\u3044\u3046<strong><span class=\"swl-marker mark_yellow\">\u5186\u30b9\u30d4\u30ca\u30fc<\/span><\/strong>\u3067\u3059\u3002\u5186\u306e\u4e00\u90e8\u3060\u3051\u8272\u3092\u5909\u3048\u305f\u30ea\u30f3\u30b0\u3092\u56de\u8ee2\u3055\u305b\u308b\u3053\u3068\u3067\u3001\u304f\u308b\u304f\u308b\u56de\u3063\u3066\u3044\u308b\u3088\u3046\u306b\u898b\u305b\u307e\u3059\u3002\u4ed5\u7d44\u307f\u306f\u3068\u3066\u3082\u30b7\u30f3\u30d7\u30eb\u3067\u3001<code>border<\/code>\u306e\u4e00\u8fba\u3060\u3051\u8272\u3092\u5909\u3048\u3001<code>rotate<\/code>\u3067\u56de\u3059\u3060\u3051\u3067\u3059\u3002<\/p>\n<p class=\"wp-block-paragraph\">\u53d7\u3051\u76bf\u306eHTML\u306f<code>div<\/code>1\u3064\u3060\u3051\u3002\u8aad\u307f\u4e0a\u3052\u30bd\u30d5\u30c8\u306e\u305f\u3081\u306b<code>role=\"status\"<\/code>\u3068<code>aria-label<\/code>\u3092\u4ed8\u3051\u3066\u304a\u304f\u306e\u304c\u304a\u3059\u3059\u3081\u3067\u3059\uff08\u8a73\u3057\u304f\u306f\u5f8c\u534a\u306e\u30a2\u30af\u30bb\u30b7\u30d3\u30ea\u30c6\u30a3\u306e\u7ae0\u3067\u89e3\u8aac\u3057\u307e\u3059\uff09\u3002<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-html\" data-lang=\"HTML\"><code>&lt;div class=\"spinner\" role=\"status\" aria-label=\"\u8aad\u307f\u8fbc\u307f\u4e2d\"&gt;&lt;\/div&gt;<\/code><\/pre>\n<\/div>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-css\" data-lang=\"CSS\"><code>.spinner {\n  width: 48px;\n  height: 48px;\n  border: 5px solid #e0e0e0;    \/* \u571f\u53f0\u306e\u30ea\u30f3\u30b0\uff08\u8584\u3044\u30b0\u30ec\u30fc\uff09 *\/\n  border-top-color: #3b82f6;     \/* \u4e0a\u3060\u3051\u9752\u304f\u3059\u308b\uff1d\u56de\u8ee2\u304c\u898b\u3048\u308b *\/\n  border-radius: 50%;            \/* \u6b63\u5186\u306b\u3059\u308b *\/\n  animation: spinner-rotate 0.9s linear infinite;\n}\n\n@keyframes spinner-rotate {\n  to { transform: rotate(360deg); }  \/* 1\u5468\u307e\u308f\u3059 *\/\n}<\/code><\/pre>\n<\/div>\n<p class=\"wp-block-paragraph\">\u30dd\u30a4\u30f3\u30c8\u306f<strong><span class=\"swl-marker mark_yellow\">border\u5168\u4f53\u3092\u8584\u3044\u30b0\u30ec\u30fc\u306b\u3057\u3066\u3001border-top-color\u3060\u3051\u6fc3\u3044\u8272\u306b\u3059\u308b<\/span><\/strong>\u3053\u3068\u3002\u3053\u3046\u3059\u308b\u3068\u300c\u6fc3\u3044\u90e8\u5206\u304c\u56de\u3063\u3066\u3044\u308b\u300d\u3088\u3046\u306b\u898b\u3048\u307e\u3059\u3002\u8272\u3092\u5909\u3048\u308c\u3070\u30d6\u30e9\u30f3\u30c9\u30ab\u30e9\u30fc\u306b\u5408\u308f\u305b\u3089\u308c\u307e\u3059\u3057\u3001<code>width<\/code>\u30fb<code>height<\/code>\u30fb<code>border<\/code>\u306e\u592a\u3055\u3092\u5909\u3048\u308c\u3070\u30b5\u30a4\u30ba\u8abf\u6574\u3082\u81ea\u7531\u81ea\u5728\u3067\u3059\u3002\u307e\u305a\u306f\u3053\u306e1\u3064\u3092\u5b8c\u5168\u306b\u7406\u89e3\u3059\u308c\u3070\u3001\u6b8b\u308a\u306e\u5fdc\u7528\u304c\u3050\u3063\u3068\u697d\u306b\u306a\u308a\u307e\u3059\u3002<\/p>\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n<h2 class=\"wp-block-heading\">\u30102\u3011\u4e8c\u91cd\u30ea\u30f3\u30b0\uff1a\u5185\u5916\u3092\u9006\u56de\u8ee2\u3055\u305b\u308b\u5c11\u3057\u30ea\u30c3\u30c1\u306a\u30b9\u30d4\u30ca\u30fc<\/h2>\n<p class=\"wp-block-paragraph\">\u6b21\u306f\u3001\u5186\u30b9\u30d4\u30ca\u30fc\u3092\u5c11\u3057\u767a\u5c55\u3055\u305b\u305f<strong><span class=\"swl-marker mark_yellow\">\u4e8c\u91cd\u30ea\u30f3\u30b0<\/span><\/strong>\u3067\u3059\u3002\u5916\u5074\u306e\u30ea\u30f3\u30b0\u3068\u5185\u5074\u306e\u30ea\u30f3\u30b0\u3092<strong><span class=\"swl-marker mark_yellow\">\u9006\u65b9\u5411\u306b\u56de\u8ee2<\/span><\/strong>\u3055\u305b\u308b\u3053\u3068\u3067\u3001\u5358\u7d14\u306a\u30b9\u30d4\u30ca\u30fc\u3088\u308a\u30ea\u30c3\u30c1\u3067\u52d5\u304d\u306e\u3042\u308b\u5370\u8c61\u306b\u306a\u308a\u307e\u3059\u3002\u5b50\u8981\u7d20\uff08\u7591\u4f3c\u8981\u7d20\uff09\u3092\u4f7f\u3063\u30662\u3064\u306e\u30ea\u30f3\u30b0\u3092\u91cd\u306d\u307e\u3059\u3002<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-html\" data-lang=\"HTML\"><code>&lt;div class=\"dual-ring\" role=\"status\" aria-label=\"\u8aad\u307f\u8fbc\u307f\u4e2d\"&gt;&lt;\/div&gt;<\/code><\/pre>\n<\/div>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-css\" data-lang=\"CSS\"><code>.dual-ring {\n  position: relative;\n  width: 56px;\n  height: 56px;\n  border: 5px solid transparent;\n  border-top-color: #3b82f6;   \/* \u5916\u30ea\u30f3\u30b0\u306f\u9752 *\/\n  border-radius: 50%;\n  animation: dual-rotate 1s linear infinite;\n}\n.dual-ring::after {\n  content: \"\";\n  position: absolute;\n  inset: 6px;                  \/* \u5185\u5074\u306b\u4e00\u56de\u308a\u5c0f\u3055\u304f\u914d\u7f6e *\/\n  border: 5px solid transparent;\n  border-top-color: #f97316;   \/* \u5185\u30ea\u30f3\u30b0\u306f\u30aa\u30ec\u30f3\u30b8 *\/\n  border-radius: 50%;\n  \/* reverse \u3067\u9006\u56de\u8ee2\u3055\u305b\u308b *\/\n  animation: dual-rotate 0.7s linear infinite reverse;\n}\n\n@keyframes dual-rotate {\n  to { transform: rotate(360deg); }\n}<\/code><\/pre>\n<\/div>\n<p class=\"wp-block-paragraph\">\u9375\u306b\u306a\u308b\u306e\u306f<strong><span class=\"swl-marker mark_yellow\">::after\u306b animation \u2026 reverse \u3092\u4ed8\u3051\u3066\u9006\u56de\u8ee2\u3055\u305b\u308b<\/span><\/strong>\u70b9\u3068\u3001\u5916\u3068\u5185\u3067<code>duration<\/code>\uff08\u56de\u8ee2\u901f\u5ea6\uff09\u3092\u5909\u3048\u3066\u3044\u308b\u70b9\u3067\u3059\u3002\u901f\u5ea6\u3092\u3042\u3048\u3066\u305a\u3089\u3059\u3053\u3068\u3067\u3001\u5358\u8abf\u306b\u306a\u3089\u305a\u52d5\u304d\u306b\u5965\u884c\u304d\u304c\u51fa\u307e\u3059\u3002<code>inset<\/code>\u3067\u5185\u5074\u30ea\u30f3\u30b0\u306e\u4f4d\u7f6e\u3092\u3001<code>border-color<\/code>\u3067\u8272\u3092\u305d\u308c\u305e\u308c\u8abf\u6574\u3067\u304d\u307e\u3059\u3002<\/p>\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n<h2 class=\"wp-block-heading\">\u30103\u3011\u30c9\u30c3\u30c8\u70b9\u6ec5\uff083\u3064\uff09\uff1a\u7701\u30b9\u30da\u30fc\u30b9\u3067\u4f7f\u3048\u308b\u70b9\u6ec5\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0<\/h2>\n<p class=\"wp-block-paragraph\">\u5c0f\u3055\u306a\u30b9\u30da\u30fc\u30b9\u306b\u53ce\u3081\u305f\u3044\u3068\u304d\u306b\u4fbf\u5229\u306a\u306e\u304c<strong><span class=\"swl-marker mark_yellow\">3\u3064\u306e\u30c9\u30c3\u30c8\u304c\u9806\u756a\u306b\u70b9\u6ec5\u3059\u308b<\/span><\/strong>\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u3067\u3059\u3002\u300c\u8aad\u307f\u8fbc\u307f\u4e2d\u2026\u300d\u306e\u3088\u3046\u306a\u30c6\u30ad\u30b9\u30c8\u306e\u305d\u3070\u306b\u7f6e\u3044\u3066\u3082\u9055\u548c\u611f\u304c\u3042\u308a\u307e\u305b\u3093\u30023\u3064\u306e\u4e38\u3092\u4e26\u3079\u3001<code>opacity<\/code>\u3092<strong><span class=\"swl-marker mark_yellow\">\u6642\u9593\u5dee\uff08animation-delay\uff09<\/span><\/strong>\u3067\u70b9\u6ec5\u3055\u305b\u307e\u3059\u3002<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-html\" data-lang=\"HTML\"><code>&lt;div class=\"dots\" role=\"status\" aria-label=\"\u8aad\u307f\u8fbc\u307f\u4e2d\"&gt;\n  &lt;span&gt;&lt;\/span&gt;\n  &lt;span&gt;&lt;\/span&gt;\n  &lt;span&gt;&lt;\/span&gt;\n&lt;\/div&gt;<\/code><\/pre>\n<\/div>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-css\" data-lang=\"CSS\"><code>.dots {\n  display: flex;\n  gap: 8px;\n}\n.dots span {\n  width: 12px;\n  height: 12px;\n  border-radius: 50%;\n  background: #3b82f6;\n  animation: dot-blink 1.2s ease-in-out infinite;\n}\n\/* 2\u3064\u76ee\u30fb3\u3064\u76ee\u306b\u9045\u5ef6\u3092\u4ed8\u3051\u3066\u9806\u756a\u306b\u5149\u3089\u305b\u308b *\/\n.dots span:nth-child(2) { animation-delay: 0.2s; }\n.dots span:nth-child(3) { animation-delay: 0.4s; }\n\n@keyframes dot-blink {\n  0%, 100% { opacity: 0.2; }  \/* \u6d88\u3048\u304e\u308f *\/\n  50%      { opacity: 1; }    \/* \u660e\u308b\u304f *\/\n}<\/code><\/pre>\n<\/div>\n<p class=\"wp-block-paragraph\">\u30dd\u30a4\u30f3\u30c8\u306f<strong><span class=\"swl-marker mark_yellow\">nth-child()\u30672\u3064\u76ee\u30fb3\u3064\u76ee\u306banimation-delay\u3092\u305a\u3089\u3057\u3066\u8a2d\u5b9a\u3059\u308b<\/span><\/strong>\u3053\u3068\u3002\u540c\u3058\u53f0\u672c\u3067\u3082\u958b\u59cb\u30bf\u30a4\u30df\u30f3\u30b0\u3092\u305a\u3089\u3059\u3060\u3051\u3067\u3001\u300c\u5149\u304c\u6d41\u308c\u3066\u3044\u304f\u300d\u3088\u3046\u306b\u898b\u3048\u307e\u3059\u3002\u3053\u306e\u300cdelay\u3067\u6642\u9593\u5dee\u3092\u3064\u3051\u308b\u300d\u30c6\u30af\u30cb\u30c3\u30af\u306f\u3001\u6b21\u306e\u30d0\u30a6\u30f3\u30c9\u3084\u6ce2\u3067\u3082\u7e70\u308a\u8fd4\u3057\u767b\u5834\u3059\u308b\u8d85\u91cd\u8981\u30d1\u30bf\u30fc\u30f3\u3067\u3059\u3002<\/p>\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n<h2 class=\"wp-block-heading\">\u30104\u3011\u30c9\u30c3\u30c8\u30d0\u30a6\u30f3\u30c9\uff1a\u8df3\u306d\u308b3\u3064\u306e\u30c9\u30c3\u30c8\u3067\u8efd\u5feb\u306a\u5370\u8c61\u306b<\/h2>\n<p class=\"wp-block-paragraph\">\u540c\u30583\u3064\u306e\u30c9\u30c3\u30c8\u3067\u3082\u3001\u70b9\u6ec5\u3067\u306f\u306a\u304f<strong><span class=\"swl-marker mark_yellow\">\u4e0a\u4e0b\u306b\u8df3\u306d\u3055\u305b\u308b\uff08\u30d0\u30a6\u30f3\u30c9\uff09<\/span><\/strong>\u3068\u3001\u3088\u308a\u8efd\u5feb\u3067\u304b\u308f\u3044\u3089\u3057\u3044\u5370\u8c61\u306b\u306a\u308a\u307e\u3059\u3002<code>translateY<\/code>\u3067\u4e0a\u4e0b\u79fb\u52d5\u3055\u305b\u3001\u3053\u3061\u3089\u3082<code>animation-delay<\/code>\u3067\u6642\u9593\u5dee\u3092\u3064\u3051\u307e\u3059\u3002HTML\u306f\u30b5\u30f3\u30d7\u30eb3\u3068\u540c\u3058\u69cb\u9020\u3067\u3059\u3002<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-html\" data-lang=\"HTML\"><code>&lt;div class=\"bounce\" role=\"status\" aria-label=\"\u8aad\u307f\u8fbc\u307f\u4e2d\"&gt;\n  &lt;span&gt;&lt;\/span&gt;\n  &lt;span&gt;&lt;\/span&gt;\n  &lt;span&gt;&lt;\/span&gt;\n&lt;\/div&gt;<\/code><\/pre>\n<\/div>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-css\" data-lang=\"CSS\"><code>.bounce {\n  display: flex;\n  gap: 8px;\n}\n.bounce span {\n  width: 12px;\n  height: 12px;\n  border-radius: 50%;\n  background: #10b981;\n  animation: dot-bounce 0.6s ease-in-out infinite alternate;\n}\n.bounce span:nth-child(2) { animation-delay: 0.15s; }\n.bounce span:nth-child(3) { animation-delay: 0.3s; }\n\n@keyframes dot-bounce {\n  from { transform: translateY(0); }\n  to   { transform: translateY(-14px); } \/* \u4e0a\u306b\u8df3\u306d\u308b *\/\n}<\/code><\/pre>\n<\/div>\n<p class=\"wp-block-paragraph\">\u3053\u3053\u3067\u306f<strong><span class=\"swl-marker mark_yellow\">alternate\u3067\u300c\u4e0a\u304c\u3063\u3066\u623b\u308b\u300d\u5f80\u5fa9\u3092\u81ea\u52d5\u5316<\/span><\/strong>\u3057\u3066\u3044\u307e\u3059\u3002\u53f0\u672c\u306b\u306f\u300c\u4e0a\u306b\u4e0a\u304c\u308b\u300d\u52d5\u304d\u3060\u3051\u66f8\u304d\u3001\u623b\u308a\u306f<code>alternate<\/code>\u306b\u4efb\u305b\u3066\u3044\u308b\u306e\u304c\u30b9\u30de\u30fc\u30c8\u306a\u70b9\u3067\u3059\u3002<code>ease-in-out<\/code>\u3092\u4f7f\u3046\u3053\u3068\u3067\u3001\u9802\u70b9\u3067\u3075\u308f\u3063\u3068\u6e1b\u901f\u3057\u3066\u81ea\u7136\u306a\u8df3\u306d\u65b9\u306b\u306a\u308a\u307e\u3059\u3002<code>translateY<\/code>\u306e\u6570\u5024\u3092\u5927\u304d\u304f\u3059\u308c\u3070\u3001\u3088\u308a\u5927\u304d\u304f\u8df3\u306d\u307e\u3059\u3002<\/p>\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n<h2 class=\"wp-block-heading\">\u30105\u3011\u30d0\u30fc\u5f80\u5fa9\uff1a\u6a2a\u9577\u30b9\u30da\u30fc\u30b9\u306b\u5408\u3046\u5de6\u53f3\u79fb\u52d5\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0<\/h2>\n<p class=\"wp-block-paragraph\">\u30d8\u30c3\u30c0\u30fc\u4e0b\u3084\u30ab\u30fc\u30c9\u306e\u4e0a\u7aef\u306a\u3069<strong><span class=\"swl-marker mark_yellow\">\u6a2a\u306b\u9577\u3044\u30b9\u30da\u30fc\u30b9<\/span><\/strong>\u306b\u306f\u3001\u5c0f\u3055\u306a\u30d0\u30fc\u304c\u5de6\u53f3\u306b\u5f80\u5fa9\u3059\u308b\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u304c\u4f3c\u5408\u3044\u307e\u3059\u3002<code>translateX<\/code>\u3067\u5de6\u53f3\u306b\u52d5\u304b\u3057\u307e\u3059\u3002\u89aa\u8981\u7d20\u306b<code>overflow: hidden;<\/code>\u3092\u4ed8\u3051\u3066\u3001\u306f\u307f\u51fa\u3057\u3092\u96a0\u3059\u306e\u304c\u30b3\u30c4\u3067\u3059\u3002<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-html\" data-lang=\"HTML\"><code>&lt;div class=\"track\" role=\"status\" aria-label=\"\u8aad\u307f\u8fbc\u307f\u4e2d\"&gt;\n  &lt;div class=\"thumb\"&gt;&lt;\/div&gt;\n&lt;\/div&gt;<\/code><\/pre>\n<\/div>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-css\" data-lang=\"CSS\"><code>.track {\n  position: relative;\n  width: 200px;\n  height: 6px;\n  background: #e5e7eb;\n  border-radius: 999px;\n  overflow: hidden;          \/* \u30d0\u30fc\u306e\u306f\u307f\u51fa\u3057\u3092\u96a0\u3059 *\/\n}\n.thumb {\n  position: absolute;\n  left: 0;\n  width: 60px;\n  height: 100%;\n  background: #3b82f6;\n  border-radius: 999px;\n  animation: bar-move 1.1s ease-in-out infinite alternate;\n}\n\n@keyframes bar-move {\n  from { transform: translateX(0); }\n  to   { transform: translateX(140px); } \/* \u89aa\u5e45200 \u2212 \u30d0\u30fc\u5e4560 = 140 *\/\n}<\/code><\/pre>\n<\/div>\n<p class=\"wp-block-paragraph\">\u79fb\u52d5\u91cf\u306f<strong><span class=\"swl-marker mark_yellow\">\u300c\u89aa\u306e\u5e45 \u2212 \u30d0\u30fc\u306e\u5e45\u300d\u3074\u3063\u305f\u308a<\/span><\/strong>\u306b\u3059\u308b\u3068\u3001\u7aef\u307e\u3067\u884c\u3063\u3066\u304d\u308c\u3044\u306b\u6298\u308a\u8fd4\u3057\u307e\u3059\uff08\u3053\u306e\u4f8b\u3067\u306f200\u221260\uff1d140px\uff09\u3002\u79fb\u52d5\u306b\u306f<code>left<\/code>\u3067\u306f\u306a\u304f<code>transform: translateX()<\/code>\u3092\u4f7f\u3063\u3066\u3044\u308b\u70b9\u306b\u6ce8\u76ee\u3057\u3066\u304f\u3060\u3055\u3044\u3002<code>transform<\/code>\u306fGPU\u3067\u51e6\u7406\u3055\u308c\u3066\u8efd\u304f\u3001\u6ed1\u3089\u304b\u306b\u52d5\u304d\u307e\u3059\uff08\u7406\u7531\u306f\u5f8c\u534a\u306e\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u306e\u7ae0\u3067\u89e3\u8aac\u3057\u307e\u3059\uff09\u3002<\/p>\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n<h2 class=\"wp-block-heading\">\u30106\u3011\u30d7\u30ed\u30b0\u30ec\u30b9\u30d0\u30fc\uff08\u4e0d\u5b9a\uff09\uff1a\u9032\u6357\u304c\u8aad\u3081\u306a\u3044\u8aad\u307f\u8fbc\u307f\u306b<\/h2>\n<p class=\"wp-block-paragraph\">\u300c\u9032\u6357\u306e\uff05\u306f\u5206\u304b\u3089\u306a\u3044\u3051\u308c\u3069\u3001\u52d5\u3044\u3066\u3044\u308b\u3053\u3068\u306f\u4f1d\u3048\u305f\u3044\u300d\u2015\u2015\u305d\u3093\u306a\u3068\u304d\u306b\u4f7f\u3046\u306e\u304c<strong><span class=\"swl-marker mark_yellow\">\u4e0d\u5b9a\uff08indeterminate\uff09\u30d7\u30ed\u30b0\u30ec\u30b9\u30d0\u30fc<\/span><\/strong>\u3067\u3059\u3002\u80cc\u666f\u306e\u30b0\u30e9\u30c7\u30fc\u30b7\u30e7\u30f3\u3092\u5de6\u304b\u3089\u53f3\u3078\u6d41\u3057\u7d9a\u3051\u308b\u3053\u3068\u3067\u3001\u7d76\u3048\u305a\u52d5\u3044\u3066\u3044\u308b\u5370\u8c61\u3092\u4e0e\u3048\u307e\u3059\u3002<code>background-position<\/code>\u3092\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3055\u305b\u308b\u306e\u304c\u30dd\u30a4\u30f3\u30c8\u3067\u3059\u3002<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-html\" data-lang=\"HTML\"><code>&lt;div class=\"indeterminate\" role=\"status\" aria-label=\"\u8aad\u307f\u8fbc\u307f\u4e2d\"&gt;&lt;\/div&gt;<\/code><\/pre>\n<\/div>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-css\" data-lang=\"CSS\"><code>.indeterminate {\n  width: 100%;\n  max-width: 320px;\n  height: 8px;\n  border-radius: 999px;\n  \/* \u52d5\u304f\u5e2f\u3092\u4f5c\u308b\u305f\u3081\u306e\u30b0\u30e9\u30c7\u30fc\u30b7\u30e7\u30f3 *\/\n  background: linear-gradient(90deg, #e5e7eb 25%, #3b82f6 50%, #e5e7eb 75%);\n  background-size: 200% 100%;   \/* \u5e45\u3092\u500d\u306b\u3057\u3066\u6d41\u305b\u308b\u3088\u3046\u306b\u3059\u308b *\/\n  animation: indeterminate 1.2s linear infinite;\n}\n\n@keyframes indeterminate {\n  from { background-position: 200% 0; }\n  to   { background-position: -200% 0; }\n}<\/code><\/pre>\n<\/div>\n<p class=\"wp-block-paragraph\">\u30b3\u30c4\u306f<strong><span class=\"swl-marker mark_yellow\">background-size\u3092200%\u306b\u3057\u3066\u3001background-position\u3092\u52d5\u304b\u3059<\/span><\/strong>\u3053\u3068\u3002\u5b9f\u969b\u306e\u8981\u7d20\u306f\u52d5\u304b\u3055\u305a\u3001\u80cc\u666f\u306e\u67c4\u3060\u3051\u3092\u6d41\u3059\u3053\u3068\u3067\u8efd\u3044\u52d5\u304d\u306b\u306a\u308a\u307e\u3059\u3002\u6b21\u306e\u78ba\u5b9a\u30d7\u30ed\u30b0\u30ec\u30b9\u30d0\u30fc\u3068\u898b\u305f\u76ee\u304c\u4f3c\u3066\u3044\u307e\u3059\u304c\u3001\u3053\u3061\u3089\u306f\u300c\uff05\u304c\u6c7a\u307e\u3063\u3066\u3044\u306a\u3044\u300d\u5834\u9762\u7528\u3060\u3068\u899a\u3048\u3066\u304a\u304d\u307e\u3057\u3087\u3046\u3002<\/p>\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n<h2 class=\"wp-block-heading\">\u30107\u3011\u30d7\u30ed\u30b0\u30ec\u30b9\u30d0\u30fc\uff08\u78ba\u5b9a\uff09\uff1a\uff05\u304c\u5206\u304b\u308b\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u7b49\u306b<\/h2>\n<p class=\"wp-block-paragraph\">\u30d5\u30a1\u30a4\u30eb\u306e\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3084\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u306e\u3088\u3046\u306b<strong><span class=\"swl-marker mark_yellow\">\u9032\u6357\u306e\uff05\u304c\u5206\u304b\u308b\u5834\u5408<\/span><\/strong>\u306f\u3001\u78ba\u5b9a\u30d7\u30ed\u30b0\u30ec\u30b9\u30d0\u30fc\u3092\u4f7f\u3044\u307e\u3059\u3002\u30d0\u30fc\u306e<code>width<\/code>\u3092\u9032\u6357\u306b\u5408\u308f\u305b\u3066\u4f38\u3070\u3057\u307e\u3059\u3002\uff05\u306e\u66f4\u65b0\u81ea\u4f53\u306fJavaScript\u3067\u884c\u3046\u306e\u3067\u3001CSS\u306f\u300c\u4f38\u3073\u65b9\u3092\u6ed1\u3089\u304b\u306b\u3059\u308b\u300d\u3053\u3068\u306b\u5c02\u5ff5\u3057\u307e\u3059\u3002<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-html\" data-lang=\"HTML\"><code>&lt;div class=\"progress\"&gt;\n  &lt;div class=\"progress-fill\" style=\"width: 0%;\"&gt;&lt;\/div&gt;\n&lt;\/div&gt;\n&lt;p class=\"progress-label\"&gt;0%&lt;\/p&gt;<\/code><\/pre>\n<\/div>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-css\" data-lang=\"CSS\"><code>.progress {\n  width: 100%;\n  max-width: 320px;\n  height: 10px;\n  background: #e5e7eb;\n  border-radius: 999px;\n  overflow: hidden;\n}\n.progress-fill {\n  height: 100%;\n  background: #3b82f6;\n  border-radius: 999px;\n  \/* width \u304c\u5909\u308f\u3063\u305f\u3068\u304d 0.3 \u79d2\u304b\u3051\u3066\u6ed1\u3089\u304b\u306b\u4f38\u3070\u3059 *\/\n  transition: width 0.3s ease;\n}<\/code><\/pre>\n<\/div>\n<p class=\"wp-block-paragraph\">\u3053\u3053\u3067\u306f<code>@keyframes<\/code>\u3067\u306f\u306a\u304f<strong><span class=\"swl-marker mark_yellow\">transition\u3092\u4f7f\u3046<\/span><\/strong>\u70b9\u306b\u6ce8\u76ee\u3057\u3066\u304f\u3060\u3055\u3044\u3002\u9032\u6357\u306f\u300c0\u219230\u219270\u2192100\u300d\u306e\u3088\u3046\u306b<strong><span class=\"swl-marker mark_yellow\">\u5916\u304b\u3089\u4e0e\u3048\u3089\u308c\u305f\u5024\u3078\u5909\u5316<\/span><\/strong>\u3059\u308b\u306e\u3067\u3001\u7e70\u308a\u8fd4\u3057\u306e<code>animation<\/code>\u3067\u306f\u306a\u304f\u3001\u5024\u306e\u5909\u5316\u3092\u6ed1\u3089\u304b\u306b\u3059\u308b<code>transition<\/code>\u304c\u5411\u3044\u3066\u3044\u307e\u3059\u3002\u5b9f\u969b\u306b\uff05\u3092\u66f4\u65b0\u3059\u308bJavaScript\u306f\u6b21\u306e\u3068\u304a\u308a\u3067\u3059\u3002<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-javascript\" data-lang=\"JavaScript\"><code>const fill = document.querySelector(\".progress-fill\");\nconst label = document.querySelector(\".progress-label\");\n\nfunction setProgress(percent) {\n  const value = Math.min(100, Math.max(0, percent)); \/\/ 0\u301c100\u306b\u4e38\u3081\u308b\n  fill.style.width = value + \"%\";\n  label.textContent = value + \"%\";\n}\n\n\/\/ \u4f8b\uff1a\u64ec\u4f3c\u7684\u306b\u9032\u6357\u3092\u9032\u3081\u308b\u30c7\u30e2\nlet current = 0;\nconst timer = setInterval(() =&gt; {\n  current += 10;\n  setProgress(current);\n  if (current &gt;= 100) clearInterval(timer); \/\/ 100%\u3067\u505c\u6b62\n}, 400);<\/code><\/pre>\n<\/div>\n<p class=\"wp-block-paragraph\">\u5b9f\u52d9\u3067\u306f\u3001\u3053\u306e<code>setProgress()<\/code>\u3092<strong><span class=\"swl-marker mark_yellow\">\u30d5\u30a1\u30a4\u30eb\u8aad\u307f\u8fbc\u307f\u306e\u9032\u6357\u30a4\u30d9\u30f3\u30c8\uff08progress\u30a4\u30d9\u30f3\u30c8\uff09<\/span><\/strong>\u306a\u3069\u304b\u3089\u547c\u3073\u51fa\u3057\u307e\u3059\u3002<code>transition<\/code>\u306e\u304a\u304b\u3052\u3067\u3001\u5024\u304c\u98db\u3093\u3067\u3082\u30d0\u30fc\u306f\u30ac\u30af\u30c3\u3068\u305b\u305a\u6ed1\u3089\u304b\u306b\u8ffd\u5f93\u3057\u307e\u3059\u3002<\/p>\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n<h2 class=\"wp-block-heading\">\u30108\u3011\u30d1\u30eb\u30b9\uff08\u62e1\u5927\u7e2e\u5c0f\uff09\uff1a\u3084\u308f\u3089\u304b\u304f\u4e3b\u5f35\u3057\u3059\u304e\u306a\u3044\u8aad\u307f\u8fbc\u307f<\/h2>\n<p class=\"wp-block-paragraph\">\u4e3b\u5f35\u304c\u5f37\u3059\u304e\u306a\u3044\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u304c\u6b32\u3057\u3044\u3068\u304d\u306f<strong><span class=\"swl-marker mark_yellow\">\u30d1\u30eb\u30b9\uff08\u8108\u6253\u3064\u3088\u3046\u306b\u62e1\u5927\u7e2e\u5c0f\u3059\u308b\uff09<\/span><\/strong>\u304c\u5411\u3044\u3066\u3044\u307e\u3059\u3002\u4e38\u3092<code>scale()<\/code>\u3067\u5c11\u3057\u5927\u304d\u304f\u3057\u306a\u304c\u3089<code>opacity<\/code>\u3092\u4e0b\u3052\u308b\u3068\u3001\u3075\u308f\u3063\u3068\u547c\u5438\u3059\u308b\u3088\u3046\u306a\u52d5\u304d\u306b\u306a\u308a\u307e\u3059\u3002<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-html\" data-lang=\"HTML\"><code>&lt;div class=\"pulse\" role=\"status\" aria-label=\"\u8aad\u307f\u8fbc\u307f\u4e2d\"&gt;&lt;\/div&gt;<\/code><\/pre>\n<\/div>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-css\" data-lang=\"CSS\"><code>.pulse {\n  width: 48px;\n  height: 48px;\n  border-radius: 50%;\n  background: #3b82f6;\n  animation: pulse 1.2s ease-in-out infinite;\n}\n\n@keyframes pulse {\n  0%   { transform: scale(0.6); opacity: 1; }\n  100% { transform: scale(1);   opacity: 0; } \/* \u5927\u304d\u304f\u306a\u308a\u3064\u3064\u6d88\u3048\u308b *\/\n}<\/code><\/pre>\n<\/div>\n<p class=\"wp-block-paragraph\"><code>scale()<\/code>\u3068<code>opacity<\/code>\u3092<strong><span class=\"swl-marker mark_yellow\">\u540c\u3058\u53f0\u672c\u306e\u4e2d\u3067\u540c\u6642\u306b\u5909\u5316<\/span><\/strong>\u3055\u305b\u3066\u3044\u308b\u306e\u304c\u30dd\u30a4\u30f3\u30c8\u3067\u3059\u3002\u300c\u5927\u304d\u304f\u306a\u308a\u306a\u304c\u3089\u8584\u304f\u306a\u308b\u300d\u3053\u3068\u3067\u3001\u5149\u304c\u5e83\u304c\u3063\u3066\u6d88\u3048\u3066\u3044\u304f\u3088\u3046\u306a\u67d4\u3089\u304b\u3055\u304c\u51fa\u307e\u3059\u3002\u3053\u306e2\u3064\u306f\u3069\u3061\u3089\u3082GPU\u3067\u51e6\u7406\u3055\u308c\u308b\u8efd\u3044\u30d7\u30ed\u30d1\u30c6\u30a3\u306a\u306e\u3067\u3001\u30ab\u30af\u3064\u304d\u306b\u304f\u3044\u306e\u3082\u5229\u70b9\u3067\u3059\u3002<\/p>\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n<h2 class=\"wp-block-heading\">\u30109\u3011\u30d1\u30eb\u30b9\u30ea\u30f3\u30b0\uff08\u6ce2\u7d0b\uff09\uff1a\u62e1\u6563\u3059\u308b\u6ce2\u7d0b\u3067\u5b58\u5728\u611f\u3092\u51fa\u3059<\/h2>\n<p class=\"wp-block-paragraph\">\u5730\u56f3\u306e\u30d4\u30f3\u3084\u901a\u77e5\u30a2\u30a4\u30b3\u30f3\u306e\u5468\u308a\u3067\u898b\u304b\u3051\u308b<strong><span class=\"swl-marker mark_yellow\">\u6ce2\u7d0b\u306e\u3088\u3046\u306b\u5e83\u304c\u308b\u30ea\u30f3\u30b0<\/span><\/strong>\u3082\u3001\u30d1\u30eb\u30b9\u306e\u5fdc\u7528\u3067\u3059\u3002\u4e2d\u5fc3\u306e\u70b9\u306e\u5916\u5074\u306b\u3001<code>scale<\/code>\u3067\u62e1\u5927\u3057\u306a\u304c\u3089<code>opacity<\/code>\u3067\u6d88\u3048\u3066\u3044\u304f\u30ea\u30f3\u30b0\u3092\u91cd\u306d\u307e\u3059\u3002<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-html\" data-lang=\"HTML\"><code>&lt;div class=\"ripple\" role=\"status\" aria-label=\"\u8aad\u307f\u8fbc\u307f\u4e2d\"&gt;\n  &lt;span class=\"core\"&gt;&lt;\/span&gt;\n  &lt;span class=\"wave\"&gt;&lt;\/span&gt;\n&lt;\/div&gt;<\/code><\/pre>\n<\/div>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-css\" data-lang=\"CSS\"><code>.ripple {\n  position: relative;\n  width: 40px;\n  height: 40px;\n}\n.ripple .core {\n  position: absolute;\n  inset: 12px;\n  background: #ef4444;\n  border-radius: 50%;\n}\n.ripple .wave {\n  position: absolute;\n  inset: 0;\n  border: 3px solid #ef4444;\n  border-radius: 50%;\n  animation: ripple 1.4s ease-out infinite;\n}\n\n@keyframes ripple {\n  0%   { transform: scale(0.3); opacity: 1; }\n  100% { transform: scale(1.6); opacity: 0; } \/* \u5e83\u304c\u3063\u3066\u6d88\u3048\u308b *\/\n}<\/code><\/pre>\n<\/div>\n<p class=\"wp-block-paragraph\"><code>ease-out<\/code>\u3092\u4f7f\u3046\u3068<strong><span class=\"swl-marker mark_yellow\">\u52e2\u3044\u3088\u304f\u5e83\u304c\u3063\u3066\u3001\u5916\u5074\u3067\u305d\u3063\u3068\u6d88\u3048\u308b<\/span><\/strong>\u81ea\u7136\u306a\u6ce2\u7d0b\u306b\u306a\u308a\u307e\u3059\u3002<code>.wave<\/code>\u3092\u8907\u6570\u7528\u610f\u3057\u3066<code>animation-delay<\/code>\u3092\u305a\u3089\u305b\u3070\u3001\u6ce2\u304c\u9023\u7d9a\u3057\u3066\u5e83\u304c\u308b\u8868\u73fe\u3082\u4f5c\u308c\u307e\u3059\u3002\u5b58\u5728\u611f\u304c\u5f37\u3044\u306e\u3067\u3001\u901a\u77e5\u3084\u5f37\u8abf\u3057\u305f\u3044\u30dd\u30a4\u30f3\u30c8\u306b\u7d5e\u3063\u3066\u4f7f\u3046\u306e\u304c\u304a\u3059\u3059\u3081\u3067\u3059\u3002<\/p>\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n<h2 class=\"wp-block-heading\">\u301010\u3011\u30b9\u30b1\u30eb\u30c8\u30f3\u30b9\u30af\u30ea\u30fc\u30f3\uff1a\u8a18\u4e8b\u30fb\u30ab\u30fc\u30c9\u4e00\u89a7\u306e\u8aad\u307f\u8fbc\u307f\u306b\u6700\u9069<\/h2>\n<p class=\"wp-block-paragraph\">\u8fd1\u5e74\u3088\u304f\u4f7f\u308f\u308c\u308b\u306e\u304c<strong><span class=\"swl-marker mark_yellow\">\u30b9\u30b1\u30eb\u30c8\u30f3\u30b9\u30af\u30ea\u30fc\u30f3<\/span><\/strong>\u3067\u3059\u3002\u30b3\u30f3\u30c6\u30f3\u30c4\u304c\u8aad\u307f\u8fbc\u307e\u308c\u308b\u524d\u306b\u3001\u8a18\u4e8b\u3084\u30ab\u30fc\u30c9\u306e\u300c\u9aa8\u683c\uff08\u30b0\u30ec\u30fc\u306e\u7bb1\uff09\u300d\u3092\u5148\u306b\u8868\u793a\u3057\u3001\u305d\u3053\u306b\u5149\u304c\u6d41\u308c\u308b\u30b7\u30de\u30fc\uff08\u304d\u3089\u3081\u304d\uff09\u3092\u5165\u308c\u308b\u624b\u6cd5\u3067\u3059\u3002\u30e6\u30fc\u30b6\u30fc\u306f\u300c\u3082\u3046\u3059\u3050\u8868\u793a\u3055\u308c\u305d\u3046\u300d\u3068\u611f\u3058\u3001\u4f53\u611f\u306e\u5f85\u3061\u6642\u9593\u304c\u77ed\u304f\u306a\u308a\u307e\u3059\u3002<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-html\" data-lang=\"HTML\"><code>&lt;div class=\"skeleton-card\"&gt;\n  &lt;div class=\"skeleton thumb\"&gt;&lt;\/div&gt;\n  &lt;div class=\"skeleton line w80\"&gt;&lt;\/div&gt;\n  &lt;div class=\"skeleton line w60\"&gt;&lt;\/div&gt;\n&lt;\/div&gt;<\/code><\/pre>\n<\/div>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-css\" data-lang=\"CSS\"><code>.skeleton-card {\n  width: 260px;\n  padding: 16px;\n  border: 1px solid #eee;\n  border-radius: 12px;\n}\n.skeleton {\n  \/* \u9aa8\u683c\u306e\u4e0b\u5730\uff0b\u6d41\u308c\u308b\u5149\u3092\u91cd\u306d\u305f\u30b0\u30e9\u30c7\u30fc\u30b7\u30e7\u30f3 *\/\n  background: linear-gradient(90deg, #eee 25%, #f5f5f5 37%, #eee 63%);\n  background-size: 400% 100%;\n  border-radius: 6px;\n  animation: shimmer 1.4s ease infinite;\n}\n.skeleton.thumb { height: 140px; margin-bottom: 14px; }\n.skeleton.line  { height: 14px; margin-bottom: 10px; }\n.skeleton.w80 { width: 80%; }\n.skeleton.w60 { width: 60%; }\n\n@keyframes shimmer {\n  from { background-position: 100% 0; }\n  to   { background-position: 0 0; }   \/* \u5149\u3092\u5de6\u3078\u6d41\u3059 *\/\n}<\/code><\/pre>\n<\/div>\n<p class=\"wp-block-paragraph\">\u4ed5\u7d44\u307f\u306f\u4e0d\u5b9a\u30d7\u30ed\u30b0\u30ec\u30b9\u30d0\u30fc\u3068\u540c\u3058\u3067<strong><span class=\"swl-marker mark_yellow\">linear-gradient\u306e\u660e\u308b\u3044\u5e2f\u3092background-position\u3067\u6d41\u3059\uff08\u30b7\u30de\u30fc\uff09<\/span><\/strong>\u3060\u3051\u3067\u3059\u3002\u5b9f\u969b\u306e\u30b3\u30f3\u30c6\u30f3\u30c4\u3068\u540c\u3058\u5927\u304d\u3055\u30fb\u914d\u7f6e\u3067\u9aa8\u683c\u3092\u4f5c\u308b\u3068\u3001\u8aad\u307f\u8fbc\u307f\u5b8c\u4e86\u6642\u306e\u5165\u308c\u66ff\u308f\u308a\u304c\u81ea\u7136\u306b\u306a\u308a\u307e\u3059\u3002\u30cb\u30e5\u30fc\u30b9\u30fbSNS\u30fb\u5546\u54c1\u4e00\u89a7\u306a\u3069\u3001\u8907\u6570\u306e\u8981\u7d20\u3092\u307e\u3068\u3081\u3066\u8aad\u307f\u8fbc\u3080\u753b\u9762\u3068\u76f8\u6027\u629c\u7fa4\u3067\u3059\u3002<\/p>\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n<h2 class=\"wp-block-heading\">\u301011\u3011\u56de\u8ee2\u56db\u89d2\uff1a\u30b7\u30f3\u30d7\u30eb\u3067\u8efd\u91cf\u306a\u56de\u8ee2\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0<\/h2>\n<p class=\"wp-block-paragraph\">\u5186\u3060\u3051\u3067\u306a\u304f<strong><span class=\"swl-marker mark_yellow\">\u56db\u89d2\u3092\u56de\u8ee2<\/span><\/strong>\u3055\u305b\u3066\u3082\u3001\u7acb\u6d3e\u306a\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u306b\u306a\u308a\u307e\u3059\u3002\u5b9f\u88c5\u306f\u5186\u30b9\u30d4\u30ca\u30fc\u3088\u308a\u7c21\u5358\u3067\u3001\u56db\u89d2\u3044\u8981\u7d20\u3092<code>rotate<\/code>\u3067\u56de\u3059\u3060\u3051\u3067\u3059\u3002\u30df\u30cb\u30de\u30eb\u306a\u30c7\u30b6\u30a4\u30f3\u306e\u30b5\u30a4\u30c8\u306b\u3088\u304f\u5408\u3044\u307e\u3059\u3002<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-html\" data-lang=\"HTML\"><code>&lt;div class=\"square\" role=\"status\" aria-label=\"\u8aad\u307f\u8fbc\u307f\u4e2d\"&gt;&lt;\/div&gt;<\/code><\/pre>\n<\/div>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-css\" data-lang=\"CSS\"><code>.square {\n  width: 40px;\n  height: 40px;\n  background: #3b82f6;\n  border-radius: 6px;\n  animation: square-rotate 1.2s ease-in-out infinite;\n}\n\n@keyframes square-rotate {\n  0%   { transform: rotate(0deg)   scale(1); }\n  50%  { transform: rotate(180deg) scale(0.6); } \/* \u9014\u4e2d\u3067\u5c0f\u3055\u304f *\/\n  100% { transform: rotate(360deg) scale(1); }\n}<\/code><\/pre>\n<\/div>\n<p class=\"wp-block-paragraph\">\u3053\u3053\u3067\u306f<strong><span class=\"swl-marker mark_yellow\">rotate\u3068scale\u3092\u7d44\u307f\u5408\u308f\u305b\u3066\u3001\u56de\u8ee2\u3057\u306a\u304c\u3089\u5927\u5c0f\u306b\u5909\u5316<\/span><\/strong>\u3055\u305b\u3066\u3044\u307e\u3059\u3002<code>50%<\/code>\u306e\u6642\u70b9\u3067\u5c0f\u3055\u304f\u3059\u308b\u3053\u3068\u3067\u3001\u5358\u306a\u308b\u56de\u8ee2\u3088\u308a\u8868\u60c5\u304c\u8c4a\u304b\u306b\u306a\u308a\u307e\u3059\u3002<code>transform<\/code>\u306f\u8907\u6570\u306e\u95a2\u6570\uff08<code>rotate<\/code>\u3068<code>scale<\/code>\uff09\u3092\u7a7a\u767d\u533a\u5207\u308a\u3067\u4e26\u3079\u3066\u540c\u6642\u306b\u304b\u3051\u3089\u308c\u308b\u3001\u3068\u3044\u3046\u70b9\u3082\u899a\u3048\u3066\u304a\u304f\u3068\u5fdc\u7528\u304c\u5229\u304d\u307e\u3059\u3002<\/p>\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n<h2 class=\"wp-block-heading\">\u301012\u3011\u53cd\u8ee2\u3059\u308b\u56db\u89d2\uff1arotateX\/rotateY\u3067\u7acb\u4f53\u611f\u3092\u51fa\u3059<\/h2>\n<p class=\"wp-block-paragraph\">\u56db\u89d2\u3092\u5e73\u9762\u7684\u306b\u3067\u306f\u306a\u304f<strong><span class=\"swl-marker mark_yellow\">\u7acb\u4f53\u7684\u306b\u30d1\u30bf\u30f3\u3068\u53cd\u8ee2<\/span><\/strong>\u3055\u305b\u308b\u3068\u3001\u5965\u884c\u304d\u306e\u3042\u308b\u30a2\u30af\u30bb\u30f3\u30c8\u306b\u306a\u308a\u307e\u3059\u3002<code>rotateX<\/code>\uff08\u6a2a\u8ef8\u307e\u308f\u308a\u306e\u56de\u8ee2\uff09\u3068<code>rotateY<\/code>\uff08\u7e26\u8ef8\u307e\u308f\u308a\u306e\u56de\u8ee2\uff09\u3092\u4ea4\u4e92\u306b\u4f7f\u3044\u3001\u89aa\u306b<code>perspective<\/code>\u3092\u4ed8\u3051\u3066\u7acb\u4f53\u611f\u3092\u51fa\u3057\u307e\u3059\u3002<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-html\" data-lang=\"HTML\"><code>&lt;div class=\"flip-wrap\"&gt;\n  &lt;div class=\"flip-box\" role=\"status\" aria-label=\"\u8aad\u307f\u8fbc\u307f\u4e2d\"&gt;&lt;\/div&gt;\n&lt;\/div&gt;<\/code><\/pre>\n<\/div>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-css\" data-lang=\"CSS\"><code>.flip-wrap {\n  perspective: 200px;   \/* \u5965\u884c\u304d\uff08\u7acb\u4f53\u611f\uff09\u3092\u4e0e\u3048\u308b *\/\n}\n.flip-box {\n  width: 44px;\n  height: 44px;\n  background: #8b5cf6;\n  border-radius: 6px;\n  animation: flip 1.6s ease-in-out infinite;\n}\n\n@keyframes flip {\n  0%   { transform: rotateX(0)      rotateY(0); }\n  50%  { transform: rotateX(180deg) rotateY(0); }      \/* \u524d\u5f8c\u306b\u30d1\u30bf\u30f3 *\/\n  100% { transform: rotateX(180deg) rotateY(180deg); } \/* \u5de6\u53f3\u306b\u30d1\u30bf\u30f3 *\/\n}<\/code><\/pre>\n<\/div>\n<p class=\"wp-block-paragraph\">\u7acb\u4f53\u7684\u306a\u56de\u8ee2\u306b\u306f<strong><span class=\"swl-marker mark_yellow\">\u89aa\u8981\u7d20\u306eperspective\u304c\u5fc5\u9808<\/span><\/strong>\u3067\u3059\u3002\u3053\u308c\u304c\u306a\u3044\u3068\u3001\u5e73\u9762\u7684\u306b\u6f70\u308c\u3066\u898b\u3048\u3066\u3057\u307e\u3044\u307e\u3059\u3002<code>perspective<\/code>\u306e\u6570\u5024\u304c\u5c0f\u3055\u3044\u307b\u3069\u5965\u884c\u304d\u304c\u5f37\u8abf\u3055\u308c\u3001\u5927\u304d\u3044\u307b\u3069\u63a7\u3048\u3081\u306b\u306a\u308a\u307e\u3059\u3002\u5c11\u3057\u30ea\u30c3\u30c1\u306a\u8aad\u307f\u8fbc\u307f\u6f14\u51fa\u3092\u4f5c\u308a\u305f\u3044\u3068\u304d\u306b\u4fbf\u5229\u306a\u30c6\u30af\u30cb\u30c3\u30af\u3067\u3059\u3002<\/p>\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n<h2 class=\"wp-block-heading\">\u301013\u3011\u6ce2\uff08\u30d0\u30fc\u8907\u6570\uff09\uff1a\u97f3\u58f0\u30fb\u9332\u97f3\u30fb\u51e6\u7406\u4e2d\u306b\u5408\u3046\u30a4\u30b3\u30e9\u30a4\u30b6\u30fc\u98a8<\/h2>\n<p class=\"wp-block-paragraph\">\u97f3\u697d\u30d7\u30ec\u30a4\u30e4\u30fc\u3084\u9332\u97f3\u4e2d\u306e\u8868\u793a\u3067\u304a\u306a\u3058\u307f\u306e<strong><span class=\"swl-marker mark_yellow\">\u30a4\u30b3\u30e9\u30a4\u30b6\u30fc\u98a8\u306e\u6ce2<\/span><\/strong>\u3082\u3001CSS\u3060\u3051\u3067\u4f5c\u308c\u307e\u3059\u3002\u7e26\u306e\u30d0\u30fc\u3092\u8907\u6570\u4e26\u3079\u3001<code>scaleY<\/code>\u3067\u9ad8\u3055\u3092\u4f38\u3073\u7e2e\u307f\u3055\u305b\u3001<code>animation-delay<\/code>\u3067\u6642\u9593\u5dee\u3092\u3064\u3051\u308b\u3068\u3001\u6ce2\u6253\u3064\u3088\u3046\u306b\u898b\u3048\u307e\u3059\u3002<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-html\" data-lang=\"HTML\"><code>&lt;div class=\"wave\" role=\"status\" aria-label=\"\u51e6\u7406\u4e2d\"&gt;\n  &lt;span&gt;&lt;\/span&gt;&lt;span&gt;&lt;\/span&gt;&lt;span&gt;&lt;\/span&gt;&lt;span&gt;&lt;\/span&gt;&lt;span&gt;&lt;\/span&gt;\n&lt;\/div&gt;<\/code><\/pre>\n<\/div>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-css\" data-lang=\"CSS\"><code>.wave {\n  display: flex;\n  align-items: center;\n  gap: 5px;\n  height: 40px;\n}\n.wave span {\n  width: 6px;\n  height: 100%;\n  background: #06b6d4;\n  border-radius: 3px;\n  transform-origin: center;   \/* \u4e2d\u5fc3\u3092\u57fa\u6e96\u306b\u4f38\u7e2e *\/\n  animation: wave 1s ease-in-out infinite;\n}\n.wave span:nth-child(2) { animation-delay: 0.1s; }\n.wave span:nth-child(3) { animation-delay: 0.2s; }\n.wave span:nth-child(4) { animation-delay: 0.3s; }\n.wave span:nth-child(5) { animation-delay: 0.4s; }\n\n@keyframes wave {\n  0%, 100% { transform: scaleY(0.3); }\n  50%      { transform: scaleY(1); }   \/* \u771f\u3093\u4e2d\u3067\u4f38\u3073\u308b *\/\n}<\/code><\/pre>\n<\/div>\n<p class=\"wp-block-paragraph\">\u3053\u3053\u3067\u3082<strong><span class=\"swl-marker mark_yellow\">nth-child()\u3067\u30d0\u30fc\u3054\u3068\u306bdelay\u3092\u305a\u3089\u3059<\/span><\/strong>\u5b9a\u756a\u30c6\u30af\u30cb\u30c3\u30af\u304c\u6d3b\u304d\u3066\u3044\u307e\u3059\u3002<code>transform-origin: center;<\/code>\u3092\u6307\u5b9a\u3059\u308b\u3068\u3001\u30d0\u30fc\u304c\u4e2d\u5fc3\u304b\u3089\u5747\u7b49\u306b\u4f38\u3073\u7e2e\u307f\u3057\u3066\u81ea\u7136\u306a\u6ce2\u306b\u306a\u308a\u307e\u3059\uff08\u4e0b\u7aef\u3092\u57fa\u6e96\u306b\u3057\u305f\u3044\u5834\u5408\u306f<code>bottom<\/code>\u306b\u3057\u307e\u3059\uff09\u3002\u30d0\u30fc\u306e\u672c\u6570\u3084\u8272\u3092\u5909\u3048\u308b\u3060\u3051\u3067\u5370\u8c61\u3092\u5927\u304d\u304f\u5909\u3048\u3089\u308c\u307e\u3059\u3002<\/p>\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n<h2 class=\"wp-block-heading\">\u301014\u3011\u30c6\u30ad\u30b9\u30c8\u2026\uff083\u70b9\u30ea\u30fc\u30c0\u30fc\uff09\uff1a\u300c\u8aad\u307f\u8fbc\u307f\u4e2d\u2026\u300d\u306e\u6587\u672b\u3092\u52d5\u304b\u3059<\/h2>\n<p class=\"wp-block-paragraph\">\u300c\u8aad\u307f\u8fbc\u307f\u4e2d\u2026\u300d\u306e\u3088\u3046\u306a\u6587\u306e<strong><span class=\"swl-marker mark_yellow\">\u672b\u5c3e\u306e3\u70b9\uff08\u2026\uff09\u3060\u3051\u3092\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3<\/span><\/strong>\u3055\u305b\u308b\u3068\u3001\u30b7\u30f3\u30d7\u30eb\u306a\u304c\u3089\u300c\u51e6\u7406\u4e2d\u300d\u306e\u96f0\u56f2\u6c17\u304c\u51fa\u307e\u3059\u3002\u7591\u4f3c\u8981\u7d20<code>::after<\/code>\u3067\u70b9\u3092\u51fa\u3057\u3001<code>content<\/code>\u3092\u5207\u308a\u66ff\u3048\u308b\u65b9\u6cd5\u304c\u624b\u8efd\u3067\u3059\u3002<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-html\" data-lang=\"HTML\"><code>&lt;p class=\"loading-text\" role=\"status\"&gt;\u8aad\u307f\u8fbc\u307f\u4e2d&lt;span class=\"ellipsis\"&gt;&lt;\/span&gt;&lt;\/p&gt;<\/code><\/pre>\n<\/div>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-css\" data-lang=\"CSS\"><code>.ellipsis::after {\n  content: \"\";\n  animation: ellipsis 1.2s steps(4, end) infinite;\n}\n\n@keyframes ellipsis {\n  0%   { content: \"\"; }\n  25%  { content: \".\"; }\n  50%  { content: \"..\"; }\n  75%  { content: \"...\"; }\n  100% { content: \"\"; }\n}<\/code><\/pre>\n<\/div>\n<p class=\"wp-block-paragraph\">\u30dd\u30a4\u30f3\u30c8\u306f<strong><span class=\"swl-marker mark_yellow\">steps()\u3092\u4f7f\u3063\u3066\u3001\u306a\u3081\u3089\u304b\u3067\u306f\u306a\u304f\u30ab\u30af\u30ab\u30af\u3068\u6bb5\u968e\u7684\u306b\u5207\u308a\u66ff\u3048\u308b<\/span><\/strong>\u3053\u3068\u3002<code>steps(4, end)<\/code>\u306b\u3059\u308b\u3053\u3068\u3067\u300c\u306a\u3057\u2192.\u2192..\u2192&#8230;\u300d\u3068\u304d\u308c\u3044\u306b1\u6bb5\u305a\u3064\u5207\u308a\u66ff\u308f\u308a\u307e\u3059\uff08<code>linear<\/code>\u3060\u3068\u6587\u5b57\u304c\u306b\u3058\u3080\u3088\u3046\u306b\u88dc\u9593\u3055\u308c\u3066\u3057\u307e\u3044\u307e\u3059\uff09\u3002\u6587\u5b57\u3060\u3051\u3067\u5b8c\u7d50\u3059\u308b\u306e\u3067\u3001\u30c6\u30ad\u30b9\u30c8\u306e\u305d\u3070\u306b\u7f6e\u3044\u3066\u3082\u6d6e\u304d\u307e\u305b\u3093\u3002<\/p>\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n<h2 class=\"wp-block-heading\">\u301015\u3011\u5186\u5f62\u30d7\u30ed\u30b0\u30ec\u30b9\uff1aconic-gradient\u3067\u5186\u30b0\u30e9\u30d5\u72b6\u306e\u9032\u6357\u3092\u8868\u73fe<\/h2>\n<p class=\"wp-block-paragraph\">\u9032\u6357\u3092<strong><span class=\"swl-marker mark_yellow\">\u5186\u30b0\u30e9\u30d5\u306e\u3088\u3046\u306b\u898b\u305b\u305f\u3044<\/span><\/strong>\u3068\u304d\u306f\u3001<code>conic-gradient<\/code>\uff08\u5186\u9310\u30b0\u30e9\u30c7\u30fc\u30b7\u30e7\u30f3\uff09\u304c\u4fbf\u5229\u3067\u3059\u3002\u89d2\u5ea6\u306b\u5fdc\u3058\u3066\u8272\u3092\u5857\u308a\u5206\u3051\u3089\u308c\u308b\u306e\u3067\u3001CSS\u5909\u6570\u306e\u5024\u3092\u5909\u3048\u308b\u3060\u3051\u3067\u300c\u4f55\uff05\u307e\u3067\u5857\u308b\u300d\u3092\u8868\u73fe\u3067\u304d\u307e\u3059\u3002JavaScript\u3067\u5909\u6570\u3092\u66f4\u65b0\u3059\u308c\u3070\u78ba\u5b9a\u9032\u6357\u306b\u306a\u308a\u307e\u3059\u3002<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-html\" data-lang=\"HTML\"><code>&lt;div class=\"circle-progress\" style=\"--value: 65;\"&gt;\n  &lt;span class=\"circle-label\"&gt;65%&lt;\/span&gt;\n&lt;\/div&gt;<\/code><\/pre>\n<\/div>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-css\" data-lang=\"CSS\"><code>.circle-progress {\n  --value: 0;\n  position: relative;\n  width: 90px;\n  height: 90px;\n  border-radius: 50%;\n  display: grid;\n  place-items: center;\n  \/* --value % \u307e\u3067\u9752\u3001\u305d\u308c\u4ee5\u964d\u306f\u30b0\u30ec\u30fc\u3067\u5857\u308b *\/\n  background:\n    conic-gradient(#3b82f6 calc(var(--value) * 1%), #e5e7eb 0);\n}\n.circle-progress::before {\n  content: \"\";\n  position: absolute;\n  width: 66px;\n  height: 66px;\n  border-radius: 50%;\n  background: #fff;   \/* \u4e2d\u592e\u3092\u767d\u304f\u629c\u3044\u3066\u30c9\u30fc\u30ca\u30c4\u306b\u3059\u308b *\/\n}\n.circle-label {\n  position: relative;  \/* \u767d\u3044\u5186\u3088\u308a\u524d\u306b\u51fa\u3059 *\/\n  font-weight: bold;\n  color: #3b82f6;\n}<\/code><\/pre>\n<\/div>\n<p class=\"wp-block-paragraph\">\u9375\u306f<strong><span class=\"swl-marker mark_yellow\">conic-gradient\u3067 &#8211;value% \u307e\u3067\u8272\u3092\u5857\u308a\u3001::before\u306e\u767d\u3044\u5186\u3067\u4e2d\u592e\u3092\u629c\u304f<\/span><\/strong>\u3053\u3068\u3002\u3053\u308c\u3067\u30c9\u30fc\u30ca\u30c4\u578b\u306e\u5186\u5f62\u30d7\u30ed\u30b0\u30ec\u30b9\u306b\u306a\u308a\u307e\u3059\u3002JavaScript\u3067<code>element.style.setProperty(\"--value\", 80)<\/code>\u306e\u3088\u3046\u306b\u66f4\u65b0\u3059\u308c\u3070\u3001\u9032\u6357\u306b\u5408\u308f\u305b\u3066\u5857\u308a\u304c\u5909\u5316\u3057\u307e\u3059\u3002<code>--value<\/code>\u306e\u5909\u5316\u306b<code>transition<\/code>\u3092\u52b9\u304b\u305b\u305f\u3044\u5834\u5408\u306f\u3001<code>@property<\/code>\u3067\u578b\u3092\u5b9a\u7fa9\u3059\u308b\u3068\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3067\u304d\u307e\u3059\u3002<\/p>\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n<h2 class=\"wp-block-heading\">\u301016\u3011\u56de\u8ee2\u30b0\u30e9\u30c7\u30fc\u30b7\u30e7\u30f3\uff1aconic-gradient\uff0brotate\u306e\u30e2\u30c0\u30f3\u306a\u30b9\u30d4\u30ca\u30fc<\/h2>\n<p class=\"wp-block-paragraph\">\u30b5\u30f3\u30d7\u30eb1\u306e\u5186\u30b9\u30d4\u30ca\u30fc\u3092<strong><span class=\"swl-marker mark_yellow\">\u30b0\u30e9\u30c7\u30fc\u30b7\u30e7\u30f3\u3067\u4eca\u98a8\u306b<\/span><\/strong>\u3057\u305f\u306e\u304c\u3053\u308c\u3067\u3059\u3002<code>conic-gradient<\/code>\u3067\u8272\u304c\u4e00\u5468\u3050\u308b\u3063\u3068\u5909\u308f\u308b\u30ea\u30f3\u30b0\u3092\u4f5c\u308a\u3001\u305d\u308c\u3092\u56de\u8ee2\u3055\u305b\u307e\u3059\u3002\u5358\u8272\u30b9\u30d4\u30ca\u30fc\u3088\u308a\u30e2\u30c0\u30f3\u3067\u30ea\u30c3\u30c1\u306b\u898b\u3048\u307e\u3059\u3002<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-html\" data-lang=\"HTML\"><code>&lt;div class=\"grad-spinner\" role=\"status\" aria-label=\"\u8aad\u307f\u8fbc\u307f\u4e2d\"&gt;&lt;\/div&gt;<\/code><\/pre>\n<\/div>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-css\" data-lang=\"CSS\"><code>.grad-spinner {\n  width: 52px;\n  height: 52px;\n  border-radius: 50%;\n  \/* \u900f\u660e\u2192\u9752\u3078\u4e00\u5468\u3059\u308b\u30b0\u30e9\u30c7\u30fc\u30b7\u30e7\u30f3 *\/\n  background: conic-gradient(from 0deg, transparent, #3b82f6);\n  \/* \u4e2d\u592e\u3092\u304f\u308a\u629c\u3044\u3066\u30ea\u30f3\u30b0\u306b\u3059\u308b\uff08mask\u3092\u4f7f\u7528\uff09 *\/\n  -webkit-mask: radial-gradient(farthest-side, transparent 60%, #000 61%);\n          mask: radial-gradient(farthest-side, transparent 60%, #000 61%);\n  animation: grad-rotate 0.9s linear infinite;\n}\n\n@keyframes grad-rotate {\n  to { transform: rotate(360deg); }\n}<\/code><\/pre>\n<\/div>\n<p class=\"wp-block-paragraph\">\u30dd\u30a4\u30f3\u30c8\u306f<strong><span class=\"swl-marker mark_yellow\">mask\u3067\u4e2d\u592e\u3092\u900f\u660e\u306b\u629c\u3044\u3066\u3001\u5857\u308a\u3092\u30ea\u30f3\u30b0\u72b6\u306b\u3059\u308b<\/span><\/strong>\u30c6\u30af\u30cb\u30c3\u30af\u3067\u3059\u3002<code>radial-gradient<\/code>\u306e\u30de\u30b9\u30af\u3067\u300c\u4e2d\u5fc360%\u306f\u900f\u660e\u3001\u5916\u5074\u306f\u8868\u793a\u300d\u3068\u3059\u308b\u3053\u3068\u3067\u30c9\u30fc\u30ca\u30c4\u306b\u306a\u308a\u307e\u3059\u3002<code>transparent<\/code>\u304b\u3089\u8272\u3078\u5909\u308f\u308b\u30b0\u30e9\u30c7\u30fc\u30b7\u30e7\u30f3\u3092\u56de\u3059\u3053\u3068\u3067\u3001\u3057\u3063\u307d\u3092\u5f15\u304f\u3088\u3046\u306b\u6ed1\u3089\u304b\u306b\u56de\u8ee2\u3057\u3066\u898b\u3048\u307e\u3059\u3002<\/p>\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n<h2 class=\"wp-block-heading\">\u301017\u3011\u8df3\u306d\u308b\u30dc\u30fc\u30eb\uff08\u5f71\u4ed8\u304d\uff09\uff1a\u904a\u3073\u5fc3\u306e\u3042\u308b\u6f14\u51fa\u306b<\/h2>\n<p class=\"wp-block-paragraph\">\u30dc\u30fc\u30eb\u304c\u8df3\u306d\u3066\u3001\u5730\u9762\u306e<strong><span class=\"swl-marker mark_yellow\">\u5f71\u304c\u4f38\u3073\u7e2e\u307f\u3059\u308b<\/span><\/strong>\u30ea\u30a2\u30eb\u306a\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3067\u3059\u3002\u30dc\u30fc\u30eb\u306e\u4e0a\u4e0b\u904b\u52d5\uff08<code>translateY<\/code>\uff09\u3068\u3001\u5f71\u306e\u62e1\u5927\u7e2e\u5c0f\uff08<code>scale<\/code>\uff09\u3092\u5225\u3005\u306e\u8981\u7d20\u3067\u9023\u52d5\u3055\u305b\u308b\u3068\u3001\u672c\u5f53\u306b\u5f3e\u3093\u3067\u3044\u308b\u3088\u3046\u306b\u898b\u3048\u307e\u3059\u3002\u904a\u3073\u5fc3\u306e\u3042\u308b\u30b5\u30a4\u30c8\u306e\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u306b\u3074\u3063\u305f\u308a\u3067\u3059\u3002<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-html\" data-lang=\"HTML\"><code>&lt;div class=\"ball-wrap\" role=\"status\" aria-label=\"\u8aad\u307f\u8fbc\u307f\u4e2d\"&gt;\n  &lt;div class=\"ball\"&gt;&lt;\/div&gt;\n  &lt;div class=\"ball-shadow\"&gt;&lt;\/div&gt;\n&lt;\/div&gt;<\/code><\/pre>\n<\/div>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-css\" data-lang=\"CSS\"><code>.ball-wrap {\n  position: relative;\n  width: 40px;\n  height: 60px;\n}\n.ball {\n  position: absolute;\n  top: 0;\n  width: 28px;\n  height: 28px;\n  border-radius: 50%;\n  background: #f59e0b;\n  animation: ball-jump 0.6s ease-in-out infinite alternate;\n}\n.ball-shadow {\n  position: absolute;\n  bottom: 0;\n  width: 28px;\n  height: 6px;\n  border-radius: 50%;\n  background: rgba(0,0,0,0.2);\n  animation: shadow-scale 0.6s ease-in-out infinite alternate;\n}\n\n@keyframes ball-jump {\n  from { top: 0; }\n  to   { top: 26px; }        \/* \u843d\u3061\u308b *\/\n}\n@keyframes shadow-scale {\n  from { transform: scale(0.5); opacity: 0.4; } \/* \u4e0a\u306b\u3044\u308b\u6642\u306f\u5f71\u304c\u5c0f\u3055\u3044 *\/\n  to   { transform: scale(1);   opacity: 1; }   \/* \u7740\u5730\u3067\u5f71\u304c\u5927\u304d\u3044 *\/\n}<\/code><\/pre>\n<\/div>\n<p class=\"wp-block-paragraph\">\u30ea\u30a2\u30eb\u3055\u306e\u79d8\u5bc6\u306f<strong><span class=\"swl-marker mark_yellow\">\u30dc\u30fc\u30eb\u304c\u4e0b\u306b\u3044\u308b\u3068\u304d\u5f71\u3092\u5927\u304d\u304f\u3001\u4e0a\u306b\u3044\u308b\u3068\u304d\u5f71\u3092\u5c0f\u3055\u304f\u3059\u308b<\/span><\/strong>\u70b9\u3067\u3059\u3002\u30dc\u30fc\u30eb\u3068\u5f71\u3067\u540c\u3058<code>duration<\/code>\u30fb<code>alternate<\/code>\u3092\u4f7f\u3044\u3001\u52d5\u304d\u3092\u540c\u671f\u3055\u305b\u3066\u3044\u307e\u3059\u3002\u7269\u7406\u73fe\u8c61\u3092\u300c\u5f71\u306e\u5927\u304d\u3055\u300d\u3067\u8868\u73fe\u3059\u308b\u3053\u306e\u767a\u60f3\u306f\u3001\u4ed6\u306e\u6f14\u51fa\u306b\u3082\u5fdc\u7528\u3067\u304d\u307e\u3059\u3002<\/p>\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n<h2 class=\"wp-block-heading\">\u301018\u3011\u30d5\u30ea\u30c3\u30d7\u30ab\u30fc\u30c9\u8aad\u8fbc\uff1a\u30ab\u30fc\u30c9UI\u306e\u8aad\u307f\u8fbc\u307f\u306b<\/h2>\n<p class=\"wp-block-paragraph\">\u30ab\u30fc\u30c9\u578bUI\u306e\u8aad\u307f\u8fbc\u307f\u306b\u306f<strong><span class=\"swl-marker mark_yellow\">\u30ab\u30fc\u30c9\u81ea\u4f53\u304c\u304f\u308b\u3063\u3068\u88cf\u8fd4\u308b<\/span><\/strong>\u6f14\u51fa\u304c\u4f3c\u5408\u3044\u307e\u3059\u3002<code>rotateY<\/code>\u3067\u7e26\u8ef8\u3092\u4e2d\u5fc3\u306b\u56de\u8ee2\u3055\u305b\u3001<code>perspective<\/code>\u3067\u7acb\u4f53\u611f\u3092\u51fa\u3057\u307e\u3059\u3002\u30b5\u30f3\u30d7\u30eb12\u306e\u5fdc\u7528\u3067\u3001\u3088\u308a\u5927\u304d\u306a\u8981\u7d20\u306b\u4f7f\u3046\u30a4\u30e1\u30fc\u30b8\u3067\u3059\u3002<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-html\" data-lang=\"HTML\"><code>&lt;div class=\"flipcard-wrap\"&gt;\n  &lt;div class=\"flipcard\" role=\"status\" aria-label=\"\u8aad\u307f\u8fbc\u307f\u4e2d\"&gt;&lt;\/div&gt;\n&lt;\/div&gt;<\/code><\/pre>\n<\/div>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-css\" data-lang=\"CSS\"><code>.flipcard-wrap {\n  perspective: 600px;\n}\n.flipcard {\n  width: 80px;\n  height: 100px;\n  border-radius: 10px;\n  background: linear-gradient(135deg, #6366f1, #a855f7);\n  animation: flipcard 1.8s ease-in-out infinite;\n}\n\n@keyframes flipcard {\n  0%   { transform: rotateY(0); }\n  50%  { transform: rotateY(180deg); } \/* \u88cf\u8fd4\u308b *\/\n  100% { transform: rotateY(360deg); } \/* \u4e00\u5468\u3057\u3066\u8868\u306b\u623b\u308b *\/\n}<\/code><\/pre>\n<\/div>\n<p class=\"wp-block-paragraph\"><code>perspective<\/code>\u3092\u5927\u304d\u3081\uff08600px\u7a0b\u5ea6\uff09\u306b\u3059\u308b\u3068<strong><span class=\"swl-marker mark_yellow\">\u30d1\u30fc\u30b9\u304c\u7de9\u3084\u304b\u3067\u4e0a\u54c1\u306a\u56de\u8ee2<\/span><\/strong>\u306b\u306a\u308a\u307e\u3059\u3002\u30d7\u30ec\u30fc\u30b9\u30db\u30eb\u30c0\u30fc\u306e\u30ab\u30fc\u30c9\u3092\u4e26\u3079\u3066\u4e00\u6589\u306b\u88cf\u8fd4\u305b\u3070\u3001\u30b3\u30f3\u30c6\u30f3\u30c4\u8aad\u307f\u8fbc\u307f\u4e2d\u306e\u5f85\u3061\u753b\u9762\u3068\u3057\u3066\u4f7f\u3048\u307e\u3059\u3002<code>animation-delay<\/code>\u3092\u30ab\u30fc\u30c9\u3054\u3068\u306b\u305a\u3089\u3059\u3068\u3001\u9806\u756a\u306b\u88cf\u8fd4\u308b\u6f14\u51fa\u3082\u4f5c\u308c\u307e\u3059\u3002<\/p>\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n<h2 class=\"wp-block-heading\">\u301019\u3011\u5186\u5468\u3092\u306a\u305e\u308b\u70b9\uff1a\u8ecc\u9053\u3092\u63cf\u304f\u30b9\u30d4\u30ca\u30fc<\/h2>\n<p class=\"wp-block-paragraph\">\u5c0f\u3055\u306a\u70b9\u304c<strong><span class=\"swl-marker mark_yellow\">\u5186\u306e\u8ecc\u9053\u3092\u63cf\u3044\u3066\u56de\u308b<\/span><\/strong>\u30b9\u30d4\u30ca\u30fc\u3067\u3059\u3002\u89aa\u3092\u56de\u8ee2\u3055\u305b\u3001\u305d\u306e\u7aef\u306b\u7f6e\u3044\u305f\u70b9\u3092\u4e00\u7dd2\u306b\u56de\u3059\u3053\u3068\u3067\u3001\u70b9\u304c\u5186\u5468\u3092\u306a\u305e\u308b\u3088\u3046\u306b\u52d5\u304d\u307e\u3059\u3002\u56de\u8ee2\u306e\u4e2d\u5fc3\u3068\u70b9\u306e\u4f4d\u7f6e\u95a2\u4fc2\u3092\u7406\u89e3\u3059\u308b\u3068\u3001\u5fdc\u7528\u306e\u5e45\u304c\u5e83\u304c\u308a\u307e\u3059\u3002<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-html\" data-lang=\"HTML\"><code>&lt;div class=\"orbit\" role=\"status\" aria-label=\"\u8aad\u307f\u8fbc\u307f\u4e2d\"&gt;\n  &lt;span class=\"orbit-dot\"&gt;&lt;\/span&gt;\n&lt;\/div&gt;<\/code><\/pre>\n<\/div>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-css\" data-lang=\"CSS\"><code>.orbit {\n  position: relative;\n  width: 50px;\n  height: 50px;\n  animation: orbit-rotate 1s linear infinite; \/* \u89aa\u3054\u3068\u56de\u3059 *\/\n}\n.orbit-dot {\n  position: absolute;\n  top: 0;\n  left: 50%;\n  transform: translateX(-50%);\n  width: 12px;\n  height: 12px;\n  border-radius: 50%;\n  background: #3b82f6;\n}\n\n@keyframes orbit-rotate {\n  to { transform: rotate(360deg); }\n}<\/code><\/pre>\n<\/div>\n<p class=\"wp-block-paragraph\">\u4ed5\u7d44\u307f\u306f<strong><span class=\"swl-marker mark_yellow\">\u70b9\u3092\u89aa\u306e\u4e0a\u7aef\u306b\u7f6e\u304d\u3001\u89aa\u8981\u7d20\u305d\u306e\u3082\u306e\u3092\u56de\u8ee2\u3055\u305b\u308b<\/span><\/strong>\u3060\u3051\u3067\u3059\u3002\u89aa\u304c\u56de\u308c\u3070\u3001\u7aef\u306b\u304f\u3063\u3064\u3044\u305f\u70b9\u3082\u5186\u3092\u63cf\u3044\u3066\u56de\u308a\u307e\u3059\u3002\u70b9\u3092\u8907\u6570\u7f6e\u3044\u3066<code>animation-delay<\/code>\u3092\u5909\u3048\u308c\u3070\u3001\u3044\u304f\u3064\u3082\u306e\u70b9\u304c\u8ecc\u9053\u4e0a\u3092\u8ffd\u3044\u304b\u3051\u308b\u3001\u3088\u308a\u51dd\u3063\u305f\u30b9\u30d4\u30ca\u30fc\u306b\u306a\u308a\u307e\u3059\u3002<\/p>\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n<h2 class=\"wp-block-heading\">\u301020\u3011\u5168\u753b\u9762\u30aa\u30fc\u30d0\u30fc\u30ec\u30a4\uff1a\u30da\u30fc\u30b8\u5168\u4f53\u306e\u8aad\u307f\u8fbc\u307f\u3092\u8986\u3046<\/h2>\n<p class=\"wp-block-paragraph\">\u6700\u5f8c\u306f\u3001\u30da\u30fc\u30b8\u5168\u4f53\u306e\u8aad\u307f\u8fbc\u307f\u4e2d\u306b\u753b\u9762\u3092\u8986\u3046<strong><span class=\"swl-marker mark_yellow\">\u5168\u753b\u9762\u30aa\u30fc\u30d0\u30fc\u30ec\u30a4<\/span><\/strong>\u3067\u3059\u3002\u534a\u900f\u660e\u306e\u80cc\u666f\u3067\u30da\u30fc\u30b8\u5168\u4f53\u3092\u8986\u3044\u3001\u4e2d\u592e\u306b\u30b9\u30d4\u30ca\u30fc\u3092\u7f6e\u304d\u307e\u3059\u3002\u30da\u30fc\u30b8\u8868\u793a\u76f4\u5f8c\u3084\u3001\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u4e2d\u306b\u64cd\u4f5c\u3092\u30d6\u30ed\u30c3\u30af\u3057\u305f\u3044\u3068\u304d\u306b\u4f7f\u3044\u307e\u3059\u3002\u4e2d\u8eab\u306e\u30b9\u30d4\u30ca\u30fc\u306f\u30b5\u30f3\u30d7\u30eb1\u3092\u6d41\u7528\u3057\u3066\u3044\u307e\u3059\u3002<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-html\" data-lang=\"HTML\"><code>&lt;div class=\"overlay\" id=\"overlay\"&gt;\n  &lt;div class=\"spinner\" role=\"status\" aria-label=\"\u8aad\u307f\u8fbc\u307f\u4e2d\"&gt;&lt;\/div&gt;\n&lt;\/div&gt;<\/code><\/pre>\n<\/div>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-css\" data-lang=\"CSS\"><code>.overlay {\n  position: fixed;\n  inset: 0;                       \/* \u753b\u9762\u5168\u4f53\u3092\u8986\u3046 *\/\n  display: flex;\n  align-items: center;\n  justify-content: center;        \/* \u30b9\u30d4\u30ca\u30fc\u3092\u4e2d\u592e\u306b *\/\n  background: rgba(255, 255, 255, 0.8); \/* \u534a\u900f\u660e\u306e\u767d *\/\n  z-index: 9999;                  \/* \u6700\u524d\u9762\u306b *\/\n}\n.overlay.is-hidden {\n  display: none;                  \/* \u975e\u8868\u793a\u306b\u3059\u308b\u30af\u30e9\u30b9 *\/\n}<\/code><\/pre>\n<\/div>\n<p class=\"wp-block-paragraph\"><code>position: fixed;<\/code>\u3068<code>inset: 0;<\/code>\u3067<strong><span class=\"swl-marker mark_yellow\">\u30b9\u30af\u30ed\u30fc\u30eb\u3057\u3066\u3082\u753b\u9762\u5168\u4f53\u3092\u8986\u3044\u7d9a\u3051\u308b<\/span><\/strong>\u306e\u304c\u30dd\u30a4\u30f3\u30c8\u3067\u3059\u3002<code>z-index<\/code>\u3092\u5927\u304d\u304f\u3057\u3066\u6700\u524d\u9762\u306b\u51fa\u3057\u3001<code>display: flex;<\/code>\u306e\u4e2d\u592e\u5bc4\u305b\u3067\u30b9\u30d4\u30ca\u30fc\u3092\u753b\u9762\u306e\u3069\u771f\u3093\u4e2d\u306b\u7f6e\u304d\u307e\u3059\u3002\u8aad\u307f\u8fbc\u307f\u304c\u7d42\u308f\u3063\u305f\u3089<code>is-hidden<\/code>\u30af\u30e9\u30b9\u3092\u4ed8\u3051\u3066\u96a0\u3057\u307e\u3059\u3002\u3053\u306e\u5207\u308a\u66ff\u3048\u306f\u6b21\u306e\u7ae0\u306eJavaScript\u3067\u884c\u3044\u307e\u3059\u3002<\/p>\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n<h2 class=\"wp-block-heading\">JavaScript\u3067\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u3092\u8868\u793a\u30fb\u975e\u8868\u793a\u306b\u5207\u308a\u66ff\u3048\u308b\u65b9\u6cd5<\/h2>\n<p class=\"wp-block-paragraph\">\u3053\u3053\u307e\u3067\u306e\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u306f\u300c\u8868\u793a\u3055\u308c\u7d9a\u3051\u308b\u300d\u72b6\u614b\u3067\u3057\u305f\u3002\u5b9f\u969b\u306b\u306f<strong><span class=\"swl-marker mark_yellow\">\u51e6\u7406\u304c\u59cb\u307e\u3063\u305f\u3089\u8868\u793a\u3057\u3001\u7d42\u308f\u3063\u305f\u3089\u6d88\u3059<\/span><\/strong>\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002\u3053\u306e\u5207\u308a\u66ff\u3048\u306fCSS\u3060\u3051\u3067\u306f\u3067\u304d\u305a\u3001JavaScript\u3067\u884c\u3044\u307e\u3059\u3002\u57fa\u672c\u306f<strong><span class=\"swl-marker mark_yellow\">classList.add \/ remove\u3067\u30af\u30e9\u30b9\u3092\u4ed8\u3051\u5916\u3057\u3059\u308b<\/span><\/strong>\u3060\u3051\u3067\u3059\u3002<\/p>\n<h3 class=\"wp-block-heading\">\u30af\u30e9\u30b9\u306e\u4ed8\u3051\u5916\u3057\u3067\u8868\u793a\u30fb\u975e\u8868\u793a\uff08\u63a8\u5968\uff09<\/h3>\n<p class=\"wp-block-paragraph\">\u6700\u3082\u304a\u3059\u3059\u3081\u306a\u306e\u304c\u3001<code>display: none;<\/code>\u3092\u6301\u3064\u30af\u30e9\u30b9\u3092\u4ed8\u3051\u5916\u3057\u3059\u308b\u65b9\u6cd5\u3067\u3059\u3002\u30b5\u30f3\u30d7\u30eb20\u306e\u30aa\u30fc\u30d0\u30fc\u30ec\u30a4\u3092\u4f8b\u306b\u3057\u307e\u3059\u3002<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-javascript\" data-lang=\"JavaScript\"><code>const overlay = document.getElementById(\"overlay\");\n\n\/\/ \u8868\u793a\u3059\u308b\uff1ais-hidden \u3092\u5916\u3059\nfunction showLoading() {\n  overlay.classList.remove(\"is-hidden\");\n}\n\n\/\/ \u975e\u8868\u793a\u306b\u3059\u308b\uff1ais-hidden \u3092\u4ed8\u3051\u308b\nfunction hideLoading() {\n  overlay.classList.add(\"is-hidden\");\n}\n\n\/\/ \u4f8b\uff1a\u30c7\u30fc\u30bf\u53d6\u5f97\u306e\u524d\u5f8c\u3067\u547c\u3073\u51fa\u3059\nasync function loadData() {\n  showLoading();\n  try {\n    const res = await fetch(\"\/api\/data\");\n    const data = await res.json();\n    \/\/ \u53d6\u5f97\u3057\u305f\u30c7\u30fc\u30bf\u3067\u753b\u9762\u3092\u66f4\u65b0\u2026\n  } catch (e) {\n    console.error(e);\n  } finally {\n    hideLoading(); \/\/ \u6210\u529f\u3067\u3082\u5931\u6557\u3067\u3082\u5fc5\u305a\u6d88\u3059\n  }\n}<\/code><\/pre>\n<\/div>\n<p class=\"wp-block-paragraph\">\u91cd\u8981\u306a\u306e\u306f<strong><span class=\"swl-marker mark_yellow\">finally\u30d6\u30ed\u30c3\u30af\u3067\u5fc5\u305ahideLoading()\u3092\u547c\u3076<\/span><\/strong>\u3053\u3068\u3067\u3059\u3002\u901a\u4fe1\u304c\u5931\u6557\u3057\u305f\u3068\u304d\u306b<code>hideLoading()<\/code>\u3092\u547c\u3073\u5fd8\u308c\u308b\u3068\u3001\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u304c<strong><span class=\"swl-marker mark_yellow\">\u8868\u793a\u3055\u308c\u3063\u3071\u306a\u3057<\/span><\/strong>\u306b\u306a\u3063\u3066\u3057\u307e\u3044\u307e\u3059\u3002\u3053\u308c\u306f\u521d\u5fc3\u8005\u304c\u6700\u3082\u30cf\u30de\u308b\u30d0\u30b0\u306a\u306e\u3067\u3001\u300c\u6d88\u3059\u51e6\u7406\u306f\u5fc5\u305a<code>finally<\/code>\u306b\u66f8\u304f\u300d\u3068\u899a\u3048\u3066\u304a\u304d\u307e\u3057\u3087\u3046\u3002<\/p>\n<h3 class=\"wp-block-heading\">style.display\u3067\u76f4\u63a5\u5207\u308a\u66ff\u3048\u308b\u65b9\u6cd5<\/h3>\n<p class=\"wp-block-paragraph\">\u30af\u30e9\u30b9\u3092\u4f7f\u308f\u305a\u3001<code>style.display<\/code>\u3092\u76f4\u63a5\u66f8\u304d\u63db\u3048\u308b\u65b9\u6cd5\u3082\u3042\u308a\u307e\u3059\u3002\u624b\u8efd\u3067\u3059\u304c\u3001CSS\u3068\u72b6\u614b\u304c\u5206\u6563\u3057\u3066\u7ba1\u7406\u3057\u306b\u304f\u304f\u306a\u308b\u305f\u3081\u3001\u57fa\u672c\u306f\u30af\u30e9\u30b9\u65b9\u5f0f\u304c\u63a8\u5968\u3067\u3059\u3002<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-javascript\" data-lang=\"JavaScript\"><code>const overlay = document.getElementById(\"overlay\");\n\noverlay.style.display = \"flex\"; \/\/ \u8868\u793a\noverlay.style.display = \"none\"; \/\/ \u975e\u8868\u793a<\/code><\/pre>\n<\/div>\n<p class=\"wp-block-paragraph\">\u306a\u305c\u30af\u30e9\u30b9\u65b9\u5f0f\u304c\u826f\u3044\u306e\u304b\u3068\u3044\u3046\u3068\u3001<strong><span class=\"swl-marker mark_yellow\">\u898b\u305f\u76ee\u306e\u30eb\u30fc\u30eb\u306fCSS\u3001\u72b6\u614b\u306e\u5207\u308a\u66ff\u3048\u306fJavaScript\u3001\u3068\u5f79\u5272\u3092\u5206\u3051\u3089\u308c\u308b<\/span><\/strong>\u304b\u3089\u3067\u3059\u3002<code>style.display<\/code>\u3092\u76f4\u63a5\u66f8\u304f\u3068\u3001\u8868\u793a\u3059\u308b\u3068\u304d\u306e\u5024\uff08<code>flex<\/code>\u304b<code>block<\/code>\u304b\uff09\u3092JavaScript\u5074\u3067\u3082\u77e5\u3063\u3066\u3044\u308b\u5fc5\u8981\u304c\u3042\u308a\u3001CSS\u3092\u5909\u3048\u305f\u3068\u304d\u306b\u58ca\u308c\u3084\u3059\u304f\u306a\u308a\u307e\u3059\u3002\u30af\u30e9\u30b9\u306a\u3089\u300c\u30af\u30e9\u30b9\u3092\u4ed8\u3051\u308b\u304b\u5916\u3059\u304b\u300d\u3060\u3051\u3092\u8003\u3048\u308c\u3070\u3088\u304f\u3001\u4fdd\u5b88\u304c\u697d\u306b\u306a\u308a\u307e\u3059\u3002<\/p>\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n<h2 class=\"wp-block-heading\">\u30a2\u30af\u30bb\u30b7\u30d3\u30ea\u30c6\u30a3\uff1aaria-busy\u3068role=&#8221;status&#8221;\u3067\u8aad\u307f\u4e0a\u3052\u306b\u914d\u616e\u3059\u308b<\/h2>\n<p class=\"wp-block-paragraph\">\u898b\u305f\u76ee\u306e\u52d5\u304d\u306f\u76ee\u3067\u898b\u3048\u308b\u4eba\u306b\u3057\u304b\u4f1d\u308f\u308a\u307e\u305b\u3093\u3002<strong><span class=\"swl-marker mark_yellow\">\u76ee\u304c\u898b\u3048\u306a\u3044\u30fb\u898b\u3048\u306b\u304f\u3044\u30e6\u30fc\u30b6\u30fc\u304c\u4f7f\u3046\u8aad\u307f\u4e0a\u3052\u30bd\u30d5\u30c8\uff08\u30b9\u30af\u30ea\u30fc\u30f3\u30ea\u30fc\u30c0\u30fc\uff09<\/span><\/strong>\u306b\u3082\u300c\u3044\u307e\u8aad\u307f\u8fbc\u307f\u4e2d\u3067\u3059\u300d\u3068\u4f1d\u3048\u308b\u306b\u306f\u3001\u9069\u5207\u306a\u30de\u30fc\u30af\u30a2\u30c3\u30d7\u304c\u5fc5\u8981\u3067\u3059\u3002\u3053\u3053\u306f\u5b9f\u52d9\u3067\u898b\u843d\u3068\u3055\u308c\u304c\u3061\u306a\u91cd\u8981\u30dd\u30a4\u30f3\u30c8\u3067\u3059\u3002<\/p>\n<h3 class=\"wp-block-heading\">role=&#8221;status&#8221;\u3068aria-label\u3067\u30b9\u30d4\u30ca\u30fc\u306b\u610f\u5473\u3092\u4e0e\u3048\u308b<\/h3>\n<p class=\"wp-block-paragraph\">\u3053\u308c\u307e\u3067\u306e\u30b5\u30f3\u30d7\u30eb\u3067\u4ed8\u3051\u3066\u3044\u305f<code>role=\"status\"<\/code>\u3068<code>aria-label<\/code>\u304c\u3001\u307e\u3055\u306b\u3053\u306e\u5f79\u5272\u3067\u3059\u3002\u30b9\u30d4\u30ca\u30fc\u306f\u898b\u305f\u76ee\u3053\u305d\u610f\u5473\u3092\u6301\u3061\u307e\u3059\u304c\u3001HTML\u7684\u306b\u306f\u7a7a\u306e<code>div<\/code>\u3067\u3059\u3002\u305d\u306e\u307e\u307e\u3067\u306f\u8aad\u307f\u4e0a\u3052\u30bd\u30d5\u30c8\u306b\u7121\u8996\u3055\u308c\u3066\u3057\u307e\u3044\u307e\u3059\u3002<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-html\" data-lang=\"HTML\"><code>&lt;!-- role \u3068 aria-label \u3067\u300c\u8aad\u307f\u8fbc\u307f\u4e2d\u300d\u3060\u3068\u4f1d\u3048\u308b --&gt;\n&lt;div class=\"spinner\" role=\"status\" aria-label=\"\u8aad\u307f\u8fbc\u307f\u4e2d\"&gt;&lt;\/div&gt;\n\n&lt;!-- \u30c6\u30ad\u30b9\u30c8\u3092\u6dfb\u3048\u308b\u5f62\u3067\u3082\u826f\u3044\uff08\u8996\u899a\u7684\u306b\u96a0\u3059\uff09 --&gt;\n&lt;div class=\"spinner\" role=\"status\"&gt;\n  &lt;span class=\"visually-hidden\"&gt;\u8aad\u307f\u8fbc\u307f\u4e2d\u3067\u3059&lt;\/span&gt;\n&lt;\/div&gt;<\/code><\/pre>\n<\/div>\n<p class=\"wp-block-paragraph\"><code>role=\"status\"<\/code>\u306f\u300c\u3053\u308c\u306f\u72b6\u614b\u3092\u77e5\u3089\u305b\u308b\u9818\u57df\u3060\u300d\u3068\u4f1d\u3048\u308b\u6307\u5b9a\u3067\u3059\u3002<code>aria-label<\/code>\u3084\u4e2d\u306e\u30c6\u30ad\u30b9\u30c8\u3067<strong><span class=\"swl-marker mark_yellow\">\u300c\u8aad\u307f\u8fbc\u307f\u4e2d\u300d\u3068\u3044\u3046\u8a00\u8449<\/span><\/strong>\u3092\u6dfb\u3048\u308c\u3070\u3001\u8aad\u307f\u4e0a\u3052\u30bd\u30d5\u30c8\u304c\u305d\u308c\u3092\u8aad\u307f\u4e0a\u3052\u3066\u304f\u308c\u307e\u3059\u3002\u30c6\u30ad\u30b9\u30c8\u3092\u753b\u9762\u306b\u51fa\u3057\u305f\u304f\u306a\u3044\u5834\u5408\u306f\u3001\u6b21\u306e<code>visually-hidden<\/code>\u3067<strong><span class=\"swl-marker mark_yellow\">\u898b\u305f\u76ee\u4e0a\u3060\u3051\u96a0\u3057\u3064\u3064\u8aad\u307f\u4e0a\u3052\u306b\u306f\u6b8b\u3059<\/span><\/strong>\u30c6\u30af\u30cb\u30c3\u30af\u3092\u4f7f\u3044\u307e\u3059\u3002<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-css\" data-lang=\"CSS\"><code>\/* \u76ee\u306b\u306f\u898b\u3048\u306a\u3044\u304c\u8aad\u307f\u4e0a\u3052\u30bd\u30d5\u30c8\u306b\u306f\u8aad\u307e\u308c\u308b *\/\n.visually-hidden {\n  position: absolute;\n  width: 1px;\n  height: 1px;\n  padding: 0;\n  margin: -1px;\n  overflow: hidden;\n  clip: rect(0 0 0 0);\n  white-space: nowrap;\n  border: 0;\n}<\/code><\/pre>\n<\/div>\n<h3 class=\"wp-block-heading\">aria-busy\u3067\u300c\u3053\u306e\u9818\u57df\u306f\u3044\u307e\u51e6\u7406\u4e2d\u300d\u3068\u793a\u3059<\/h3>\n<p class=\"wp-block-paragraph\">\u8aad\u307f\u8fbc\u307f\u4e2d\u306e\u9818\u57df\u5168\u4f53\u306b\u306f<code>aria-busy=\"true\"<\/code>\u3092\u4ed8\u3051\u308b\u3068\u3001\u8aad\u307f\u4e0a\u3052\u30bd\u30d5\u30c8\u306b\u300c\u3053\u306e\u90e8\u5206\u306f\u307e\u3060\u6e96\u5099\u4e2d\u300d\u3068\u4f1d\u3048\u3089\u308c\u307e\u3059\u3002\u8aad\u307f\u8fbc\u307f\u304c\u7d42\u308f\u3063\u305f\u3089<code>false<\/code>\u306b\u623b\u3057\u307e\u3059\u3002<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-html\" data-lang=\"HTML\"><code>&lt;!-- \u8aad\u307f\u8fbc\u307f\u4e2d --&gt;\n&lt;section id=\"list\" aria-busy=\"true\"&gt;\n  &lt;div class=\"spinner\" role=\"status\" aria-label=\"\u8aad\u307f\u8fbc\u307f\u4e2d\"&gt;&lt;\/div&gt;\n&lt;\/section&gt;<\/code><\/pre>\n<\/div>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-javascript\" data-lang=\"JavaScript\"><code>const list = document.getElementById(\"list\");\n\nlist.setAttribute(\"aria-busy\", \"true\");  \/\/ \u8aad\u307f\u8fbc\u307f\u958b\u59cb\n\/\/ \u2026\u30c7\u30fc\u30bf\u53d6\u5f97\u5f8c\u2026\nlist.setAttribute(\"aria-busy\", \"false\"); \/\/ \u8aad\u307f\u8fbc\u307f\u5b8c\u4e86<\/code><\/pre>\n<\/div>\n<p class=\"wp-block-paragraph\">\u3053\u308c\u3089\u306f\u96e3\u3057\u304f\u898b\u3048\u307e\u3059\u304c\u3001\u8981\u306f<strong><span class=\"swl-marker mark_yellow\">\u300c\u3044\u307e\u51e6\u7406\u4e2d\u3067\u3042\u308b\u300d\u3068\u3044\u3046\u60c5\u5831\u3092\u3001\u898b\u305f\u76ee\u3060\u3051\u3067\u306a\u304f\u8a00\u8449\u3067\u3082\u4f1d\u3048\u308b<\/span><\/strong>\u3068\u3044\u3046\u3060\u3051\u306e\u8a71\u3067\u3059\u3002\u5c5e\u6027\u30921\u301c2\u500b\u8db3\u3059\u3060\u3051\u3067\u3001\u3088\u308a\u591a\u304f\u306e\u4eba\u306b\u3084\u3055\u3057\u3044\u30b5\u30a4\u30c8\u306b\u306a\u308a\u307e\u3059\u3002\u4ed5\u4e8b\u3067Web\u5236\u4f5c\u3092\u3059\u308b\u306a\u3089\u3001\u305c\u3072\u7fd2\u6163\u306b\u3057\u3066\u304a\u304d\u305f\u3044\u30dd\u30a4\u30f3\u30c8\u3067\u3059\u3002<\/p>\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n<h2 class=\"wp-block-heading\">prefers-reduced-motion\u3067\u30e2\u30fc\u30b7\u30e7\u30f3\u304c\u82e6\u624b\u306a\u4eba\u306b\u914d\u616e\u3059\u308b<\/h2>\n<p class=\"wp-block-paragraph\">\u52d5\u304f\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u306f\u697d\u3057\u3044\u4e00\u65b9\u3067\u3001<strong><span class=\"swl-marker mark_yellow\">\u6fc0\u3057\u3044\u52d5\u304d\u3067\u6c17\u5206\u304c\u60aa\u304f\u306a\u308b\uff08\u4e57\u308a\u7269\u9154\u3044\u306e\u3088\u3046\u306a\u75c7\u72b6\u306e\uff09\u4eba<\/span><\/strong>\u3082\u3044\u307e\u3059\u3002\u305d\u3046\u3057\u305f\u30e6\u30fc\u30b6\u30fc\u306e\u305f\u3081\u306b\u3001OS\u306b\u306f\u300c\u8996\u5dee\u52b9\u679c\u3092\u6e1b\u3089\u3059\u300d\u3068\u3044\u3063\u305f\u8a2d\u5b9a\u304c\u3042\u308a\u3001CSS\u304b\u3089\u306f<code>prefers-reduced-motion<\/code>\u3067\u691c\u51fa\u3067\u304d\u307e\u3059\u3002<\/p>\n<p class=\"wp-block-paragraph\">\u3053\u306e\u8a2d\u5b9a\u304c\u30aa\u30f3\u306e\u3068\u304d\u306f\u3001<strong><span class=\"swl-marker mark_yellow\">\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3092\u6b62\u3081\u308b\u30fb\u63a7\u3048\u3081\u306b\u3059\u308b<\/span><\/strong>\u914d\u616e\u3092\u5165\u308c\u307e\u3057\u3087\u3046\u3002\u6b21\u306e\u3088\u3046\u306b\u3001\u30e1\u30c7\u30a3\u30a2\u30af\u30a8\u30ea\u3067\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3092\u7121\u52b9\u5316\u3059\u308b\u306e\u304c\u57fa\u672c\u3067\u3059\u3002<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-css\" data-lang=\"CSS\"><code>\/* \u300c\u52d5\u304d\u3092\u6e1b\u3089\u3059\u300d\u8a2d\u5b9a\u306e\u4eba\u306b\u306f\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3092\u6b62\u3081\u308b *\/\n@media (prefers-reduced-motion: reduce) {\n  .spinner,\n  .dots span,\n  .wave span {\n    animation: none;   \/* \u52d5\u304d\u3092\u6b62\u3081\u308b *\/\n  }\n  \/* \u5b8c\u5168\u306b\u6d88\u3059\u3068\u72b6\u614b\u304c\u4f1d\u308f\u3089\u306a\u3044\u306e\u3067\u3001\u9759\u7684\u306a\u4ee3\u66ff\u3092\u898b\u305b\u308b *\/\n  .spinner {\n    border-top-color: #3b82f6; \/* \u8272\u306f\u6b8b\u3057\u3066\u300c\u51e6\u7406\u4e2d\u300d\u3092\u793a\u3059 *\/\n  }\n}<\/code><\/pre>\n<\/div>\n<p class=\"wp-block-paragraph\">\u3053\u3053\u3067\u6c17\u3092\u3064\u3051\u305f\u3044\u306e\u306f<strong><span class=\"swl-marker mark_yellow\">\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3092\u6b62\u3081\u3066\u3082\u300c\u8aad\u307f\u8fbc\u307f\u4e2d\u300d\u3068\u3044\u3046\u72b6\u614b\u306f\u4f1d\u308f\u308b\u3088\u3046\u306b\u3059\u308b<\/span><\/strong>\u3053\u3068\u3067\u3059\u3002\u52d5\u304d\u3092\u5b8c\u5168\u306b\u6d88\u3057\u3066\u771f\u3063\u767d\u306b\u3057\u3066\u3057\u307e\u3046\u3068\u3001\u4eca\u5ea6\u306f\u300c\u56fa\u307e\u3063\u305f\uff1f\u300d\u3068\u4e0d\u5b89\u306b\u3055\u305b\u3066\u3057\u307e\u3044\u307e\u3059\u3002\u52d5\u304d\u306f\u6b62\u3081\u3066\u3082\u3001\u8272\u3084\u30c6\u30ad\u30b9\u30c8\uff08<code>role=\"status\"<\/code>\uff09\u3067\u72b6\u614b\u304c\u5206\u304b\u308b\u3088\u3046\u306b\u3057\u3066\u304a\u304f\u306e\u304c\u7406\u60f3\u3067\u3059\u3002<\/p>\n<p class=\"wp-block-paragraph\">\u306a\u304a\u3001\u30b5\u30a4\u30c8\u5168\u4f53\u3067\u307e\u3068\u3081\u3066\u914d\u616e\u3057\u305f\u3044\u5834\u5408\u306f\u3001\u6b21\u306e\u3088\u3046\u306b<strong><span class=\"swl-marker mark_yellow\">\u3059\u3079\u3066\u306e\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3068\u30c8\u30e9\u30f3\u30b8\u30b7\u30e7\u30f3\u3092\u307b\u307c\u7121\u52b9\u5316<\/span><\/strong>\u3059\u308b\u66f8\u304d\u65b9\u3082\u3088\u304f\u4f7f\u308f\u308c\u307e\u3059\u3002\u500b\u5225\u6307\u5b9a\u304c\u6f0f\u308c\u308b\u306e\u3092\u9632\u3052\u307e\u3059\u3002<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-css\" data-lang=\"CSS\"><code>@media (prefers-reduced-motion: reduce) {\n  *,\n  *::before,\n  *::after {\n    animation-duration: 0.001ms !important;\n    animation-iteration-count: 1 !important;\n    transition-duration: 0.001ms !important;\n  }\n}<\/code><\/pre>\n<\/div>\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n<h2 class=\"wp-block-heading\">\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\uff1a\u30ab\u30af\u3064\u304d\u3092\u9632\u3050transform\u3068opacity\u306e\u4f7f\u3044\u65b9<\/h2>\n<p class=\"wp-block-paragraph\">\u305b\u3063\u304b\u304f\u306e\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u3082\u3001<strong><span class=\"swl-marker mark_yellow\">\u30ab\u30af\u3064\u3044\u3066\uff08\u30ab\u30af\u30ab\u30af\u3057\u3066\uff09\u3044\u3066\u306f\u9006\u52b9\u679c<\/span><\/strong>\u3067\u3059\u3002\u6ed1\u3089\u304b\u306b\u52d5\u304b\u3059\u306b\u306f\u3001\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3055\u305b\u308b\u30d7\u30ed\u30d1\u30c6\u30a3\u9078\u3073\u304c\u6c7a\u5b9a\u7684\u306b\u91cd\u8981\u3067\u3059\u3002\u7d50\u8ad6\u306f<strong><span class=\"swl-marker mark_yellow\">transform\u3068opacity\u3060\u3051\u3067\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3055\u305b\u308b<\/span><\/strong>\u3053\u3068\u3002\u7406\u7531\u3092\u9806\u3092\u8ffd\u3063\u3066\u8aac\u660e\u3057\u307e\u3059\u3002<\/p>\n<h3 class=\"wp-block-heading\">\u306a\u305ctransform\u3068opacity\u304c\u8efd\u3044\u306e\u304b<\/h3>\n<p class=\"wp-block-paragraph\">\u30d6\u30e9\u30a6\u30b6\u306f\u753b\u9762\u3092\u63cf\u304f\u3068\u304d\u3001\u5927\u304d\u304f3\u3064\u306e\u5de5\u7a0b\u3092\u901a\u308a\u307e\u3059\u3002<strong><span class=\"swl-marker mark_yellow\">\u30ec\u30a4\u30a2\u30a6\u30c8\uff08\u914d\u7f6e\u8a08\u7b97\uff09\u2192 \u30da\u30a4\u30f3\u30c8\uff08\u8272\u5857\u308a\uff09\u2192 \u30b3\u30f3\u30dd\u30b8\u30c3\u30c8\uff08\u5408\u6210\uff09<\/span><\/strong>\u3067\u3059\u3002<code>width<\/code>\u3084<code>left<\/code>\u3001<code>top<\/code>\u3092\u5909\u3048\u308b\u3068\u3001\u6bce\u30d5\u30ec\u30fc\u30e0\u300c\u914d\u7f6e\u8a08\u7b97\u300d\u304b\u3089\u3084\u308a\u76f4\u3057\u306b\u306a\u308a\u3001\u8ca0\u8377\u304c\u9ad8\u304f\u306a\u308a\u307e\u3059\u3002<\/p>\n<p class=\"wp-block-paragraph\">\u4e00\u65b9\u3001<code>transform<\/code>\uff08<code>translate<\/code>\u30fb<code>scale<\/code>\u30fb<code>rotate<\/code>\uff09\u3068<code>opacity<\/code>\u306f\u3001\u591a\u304f\u306e\u30d6\u30e9\u30a6\u30b6\u3067<strong><span class=\"swl-marker mark_yellow\">\u6700\u5f8c\u306e\u30b3\u30f3\u30dd\u30b8\u30c3\u30c8\u5de5\u7a0b\u3060\u3051\u3067\u51e6\u7406\u3067\u304d\u3001GPU\uff08\u753b\u50cf\u51e6\u7406\u304c\u5f97\u610f\u306a\u90e8\u54c1\uff09\u306b\u4efb\u305b\u3089\u308c\u308b<\/span><\/strong>\u305f\u3081\u3001\u975e\u5e38\u306b\u8efd\u304f\u6ed1\u3089\u304b\u306b\u52d5\u304d\u307e\u3059\u3002\u3060\u304b\u3089\u3001\u79fb\u52d5\u306f<code>left<\/code>\u3067\u306f\u306a\u304f<code>translateX<\/code>\u3001\u62e1\u5927\u306f<code>width<\/code>\u3067\u306f\u306a\u304f<code>scale<\/code>\u3067\u884c\u3046\u306e\u304c\u9244\u5247\u3067\u3059\u3002<\/p>\n<figure class=\"wp-block-table\">\n<table>\n<thead>\n<tr>\n<th>\u3084\u308a\u305f\u3044\u3053\u3068<\/th>\n<th>\u91cd\u3044\u66f8\u304d\u65b9\uff08\u907f\u3051\u308b\uff09<\/th>\n<th>\u8efd\u3044\u66f8\u304d\u65b9\uff08\u63a8\u5968\uff09<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>\u5de6\u53f3\u306b\u52d5\u304b\u3059<\/td>\n<td>left \/ margin-left<\/td>\n<td>transform: translateX()<\/td>\n<\/tr>\n<tr>\n<td>\u4e0a\u4e0b\u306b\u52d5\u304b\u3059<\/td>\n<td>top \/ margin-top<\/td>\n<td>transform: translateY()<\/td>\n<\/tr>\n<tr>\n<td>\u5927\u304d\u3055\u3092\u5909\u3048\u308b<\/td>\n<td>width \/ height<\/td>\n<td>transform: scale()<\/td>\n<\/tr>\n<tr>\n<td>\u56de\u8ee2\u3055\u305b\u308b<\/td>\n<td>\uff08rotate\u306f\u5143\u3005\u8efd\u3044\uff09<\/td>\n<td>transform: rotate()<\/td>\n<\/tr>\n<tr>\n<td>\u8584\u304f\u3059\u308b\u30fb\u6d88\u3059<\/td>\n<td>visibility \u306e\u5207\u66ff<\/td>\n<td>opacity<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/figure>\n<p class=\"wp-block-paragraph\">\u3053\u306e\u8a18\u4e8b\u306e\u30b5\u30f3\u30d7\u30eb\u306e\u591a\u304f\u304c<code>transform<\/code>\u3068<code>opacity<\/code>\u3092\u4f7f\u3063\u3066\u3044\u308b\u306e\u306f\u3001\u3053\u306e\u7406\u7531\u304b\u3089\u3067\u3059\u3002\u79fb\u52d5\u3084\u62e1\u5927\u7e2e\u5c0f\u306f\u5fc5\u305a<code>transform<\/code>\u3067\u884c\u3044\u3001<code>left<\/code>\u3084<code>width<\/code>\u306e\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u306f\u907f\u3051\u308b\u3001\u3068\u899a\u3048\u3066\u304a\u304f\u3068\u3001\u5b9f\u52d9\u3067\u30b9\u30e0\u30fc\u30ba\u306b\u52d5\u304f\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u304c\u4f5c\u308c\u307e\u3059\u3002<\/p>\n<h3 class=\"wp-block-heading\">will-change\u306f\u4f7f\u3044\u3059\u304e\u306a\u3044<\/h3>\n<p class=\"wp-block-paragraph\">\u300c\u3053\u308c\u304b\u3089\u52d5\u304f\u8981\u7d20\u3060\u3088\u300d\u3068\u30d6\u30e9\u30a6\u30b6\u306b\u524d\u3082\u3063\u3066\u4f1d\u3048\u308b<code>will-change<\/code>\u3068\u3044\u3046\u30d7\u30ed\u30d1\u30c6\u30a3\u3082\u3042\u308a\u307e\u3059\u3002\u305f\u3060\u3057<strong><span class=\"swl-marker mark_yellow\">\u591a\u7528\u3059\u308b\u3068\u304b\u3048\u3063\u3066\u30e1\u30e2\u30ea\u3092\u5727\u8feb\u3057\u3066\u9045\u304f\u306a\u308b<\/span><\/strong>\u305f\u3081\u3001\u521d\u5fc3\u8005\u306e\u3046\u3061\u306f\u7121\u7406\u306b\u4f7f\u308f\u306a\u304f\u3066\u5927\u4e08\u592b\u3067\u3059\u3002\u307e\u305a\u306f<code>transform<\/code>\u3068<code>opacity<\/code>\u3067\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3059\u308b\u3001\u3068\u3044\u3046\u539f\u5247\u3092\u5b88\u308b\u3060\u3051\u3067\u3001\u307b\u3068\u3093\u3069\u306e\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u306f\u5341\u5206\u6ed1\u3089\u304b\u306b\u52d5\u304d\u307e\u3059\u3002<\/p>\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n<h2 class=\"wp-block-heading\">\u5b9f\u52d9\u3067\u306e\u4f7f\u3044\u3069\u3053\u308d\uff1a\u3069\u306e\u5834\u9762\u3067\u3069\u306e\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u3092\u9078\u3076\u304b<\/h2>\n<p class=\"wp-block-paragraph\">\u7a2e\u985e\u304c\u591a\u3044\u3068\u300c\u7d50\u5c40\u3069\u308c\u3092\u4f7f\u3048\u3070\u3044\u3044\u306e\uff1f\u300d\u3068\u8ff7\u3044\u307e\u3059\u3002\u7de8\u96c6\u90e8\u306e\u7d4c\u9a13\u3082\u8e0f\u307e\u3048\u3001<strong><span class=\"swl-marker mark_yellow\">\u30b7\u30fc\u30f3\u5225\u306e\u304a\u3059\u3059\u3081<\/span><\/strong>\u3092\u6574\u7406\u3057\u307e\u3057\u305f\u3002\u57fa\u672c\u306f\u300c\u5f85\u3061\u6642\u9593\u306e\u9577\u3055\u300d\u3068\u300c\u7f6e\u304f\u5834\u6240\u306e\u5e83\u3055\u300d\u3067\u9078\u3073\u307e\u3059\u3002<\/p>\n<ul class=\"wp-block-list\">\n<li><strong><span class=\"swl-marker mark_yellow\">\u901a\u4fe1\u5f85\u3061\uff08API\u30fb\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\uff09\u304c\u77ed\u3081\uff1a\u5186\u30b9\u30d4\u30ca\u30fc\uff081\uff09\u30fb\u30c9\u30c3\u30c8\uff083\u30fb4\uff09<\/span><\/strong>\u3002\u5b9a\u756a\u3067\u8ab0\u306b\u3067\u3082\u4f1d\u308f\u308a\u3001\u7701\u30b9\u30da\u30fc\u30b9\u3067\u3059\u3002<\/li>\n<li><strong><span class=\"swl-marker mark_yellow\">\u753b\u50cf\u3084\u30b3\u30f3\u30c6\u30f3\u30c4\u306e\u9045\u5ef6\u8aad\u307f\u8fbc\u307f\uff1a\u30b9\u30b1\u30eb\u30c8\u30f3\u30b9\u30af\u30ea\u30fc\u30f3\uff0810\uff09<\/span><\/strong>\u3002\u9aa8\u683c\u3092\u5148\u306b\u898b\u305b\u308b\u3053\u3068\u3067\u4f53\u611f\u306e\u5f85\u3061\u6642\u9593\u304c\u77ed\u304f\u306a\u308a\u3001\u30ec\u30a4\u30a2\u30a6\u30c8\u306e\u30ac\u30bf\u3064\u304d\u3082\u9632\u3052\u307e\u3059\u3002<\/li>\n<li><strong><span class=\"swl-marker mark_yellow\">\u9032\u6357\u304c\u5206\u304b\u308b\u51e6\u7406\uff08\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u30fb\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\uff09\uff1a\u78ba\u5b9a\u30d7\u30ed\u30b0\u30ec\u30b9\u30d0\u30fc\uff087\uff09\u30fb\u5186\u5f62\u30d7\u30ed\u30b0\u30ec\u30b9\uff0815\uff09<\/span><\/strong>\u3002\uff05\u3092\u898b\u305b\u3066\u5b89\u5fc3\u611f\u3092\u4e0e\u3048\u307e\u3059\u3002<\/li>\n<li><strong><span class=\"swl-marker mark_yellow\">\u30da\u30fc\u30b8\u5168\u4f53\u306e\u521d\u56de\u8aad\u307f\u8fbc\u307f\uff1a\u5168\u753b\u9762\u30aa\u30fc\u30d0\u30fc\u30ec\u30a4\uff0820\uff09<\/span><\/strong>\u3002\u64cd\u4f5c\u3092\u30d6\u30ed\u30c3\u30af\u3057\u3064\u3064\u3001\u8aad\u307f\u8fbc\u307f\u5b8c\u4e86\u3067\u6d88\u3057\u307e\u3059\u3002<\/li>\n<li><strong><span class=\"swl-marker mark_yellow\">\u51e6\u7406\u4e2d\u30fb\u751f\u6210\u4e2d\u306e\u6f14\u51fa\uff1a\u6ce2\uff0813\uff09\u30fb\u30d1\u30eb\u30b9\uff088\uff09<\/span><\/strong>\u3002AI\u306e\u751f\u6210\u5f85\u3061\u306a\u3069\u300c\u4f55\u304b\u304c\u52d5\u3044\u3066\u3044\u308b\u300d\u5370\u8c61\u3092\u51fa\u3057\u305f\u3044\u3068\u304d\u306b\u5408\u3044\u307e\u3059\u3002<\/li>\n<\/ul>\n<p class=\"wp-block-paragraph\">\u5927\u5207\u306a\u306e\u306f<strong><span class=\"swl-marker mark_yellow\">\u300c\u5f85\u3061\u6642\u9593\u306e\u898b\u7a4d\u3082\u308a\u300d\u3067\u4f7f\u3044\u5206\u3051\u308b<\/span><\/strong>\u3053\u3068\u3067\u3059\u30021\u301c2\u79d2\u3067\u7d42\u308f\u308a\u305d\u3046\u306a\u3089\u5c0f\u3055\u306a\u30b9\u30d4\u30ca\u30fc\u3067\u5341\u5206\u3002\u6570\u79d2\u4ee5\u4e0a\u304b\u304b\u308b\u306a\u3089\u3001\u9032\u6357\u3084\u9aa8\u683c\u3092\u898b\u305b\u3066\u300c\u3061\u3083\u3093\u3068\u9032\u3093\u3067\u3044\u308b\u300d\u3068\u4f1d\u3048\u308b\u3068\u3001\u96e2\u8131\u3092\u9632\u3052\u307e\u3059\u3002\u9006\u306b\u3001\u4e00\u77ac\u3067\u7d42\u308f\u308b\u51e6\u7406\u306b\u308f\u3056\u308f\u3056\u5168\u753b\u9762\u30aa\u30fc\u30d0\u30fc\u30ec\u30a4\u3092\u51fa\u3059\u3068\u3001\u30c1\u30ab\u30c1\u30ab\u3057\u3066\u7169\u308f\u3057\u304f\u611f\u3058\u3089\u308c\u308b\u306e\u3067\u907f\u3051\u307e\u3057\u3087\u3046\u3002<\/p>\n<h3 class=\"wp-block-heading\">\u7de8\u96c6\u90e8\u304a\u3059\u3059\u3081\uff1a\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u5b9f\u88c5\u30c1\u30a7\u30c3\u30af\u30ea\u30b9\u30c8<\/h3>\n<p class=\"wp-block-paragraph\">\u5b9f\u969b\u306b\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u3092\u5b9f\u88c5\u3059\u308b\u3068\u304d\u3001\u7de8\u96c6\u90e8\u304c\u78ba\u8a8d\u3057\u3066\u3044\u308b\u9805\u76ee\u3092\u30c1\u30a7\u30c3\u30af\u30ea\u30b9\u30c8\u306b\u307e\u3068\u3081\u307e\u3057\u305f\u3002\u30b3\u30d4\u30da\u3057\u305f\u3042\u3068\u3001\u3053\u306e\u30ea\u30b9\u30c8\u3067\u6700\u7d42\u78ba\u8a8d\u3059\u308b\u3068\u5931\u6557\u304c\u6e1b\u308a\u307e\u3059\u3002<\/p>\n<ul class=\"wp-block-list\">\n<li>\u51e6\u7406\u304c\u5931\u6557\u3057\u305f\u3068\u304d\u306b\u3082<strong><span class=\"swl-marker mark_yellow\">\u78ba\u5b9f\u306b\u975e\u8868\u793a\u306b\u306a\u308b<\/span><\/strong>\u304b\uff08<code>finally<\/code>\u3067\u6d88\u3057\u3066\u3044\u308b\u304b\uff09\u3092\u78ba\u8a8d\u3057\u305f\u304b<\/li>\n<li>\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u306f<strong><span class=\"swl-marker mark_yellow\">transform\u3068opacity\u4e2d\u5fc3<\/span><\/strong>\u3067\u3001\u30ab\u30af\u3064\u3044\u3066\u3044\u306a\u3044\u304b\u5b9f\u6a5f\u3067\u78ba\u8a8d\u3057\u305f\u304b<\/li>\n<li><code>role=\"status\"<\/code>\u3084<code>aria-label<\/code>\u3067<strong><span class=\"swl-marker mark_yellow\">\u8aad\u307f\u4e0a\u3052\u30bd\u30d5\u30c8\u306b\u72b6\u614b\u304c\u4f1d\u308f\u308b<\/span><\/strong>\u3088\u3046\u306b\u3057\u305f\u304b<\/li>\n<li><code>prefers-reduced-motion<\/code>\u3067<strong><span class=\"swl-marker mark_yellow\">\u30e2\u30fc\u30b7\u30e7\u30f3\u914d\u616e<\/span><\/strong>\u3092\u5165\u308c\u305f\u304b<\/li>\n<li>\u30b9\u30de\u30db\u306e\u5b9f\u6a5f\u3067<strong><span class=\"swl-marker mark_yellow\">\u91cd\u304f\u306a\u3044\u30fb\u4e2d\u592e\u306b\u6b63\u3057\u304f\u8868\u793a\u3055\u308c\u308b<\/span><\/strong>\u304b\u3092\u78ba\u8a8d\u3057\u305f\u304b<\/li>\n<li>\u8272\u304c\u80cc\u666f\u306b\u5bfe\u3057\u3066<strong><span class=\"swl-marker mark_yellow\">\u5341\u5206\u306a\u30b3\u30f3\u30c8\u30e9\u30b9\u30c8<\/span><\/strong>\u3092\u6301\u3061\u3001\u898b\u3048\u3065\u3089\u304f\u306a\u3044\u304b\u78ba\u8a8d\u3057\u305f\u304b<\/li>\n<\/ul>\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex\">\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link has-white-color has-text-color has-background has-link-color wp-element-button\" href=\"https:\/\/withcode.tech\/reservation\/\" style=\"background-color:#ffbf00\"><strong>\u516c\u5f0f\u30b5\u30a4\u30c8\u304b\u3089\u7121\u6599\u30ab\u30a6\u30f3\u30bb\u30ea\u30f3\u30b0\u306b\u7533\u3057\u8fbc\u3080 \u2192<\/strong><\/a><\/div>\n<\/div>\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n<h2 class=\"wp-block-heading\">\u3088\u304f\u3042\u308b\u8cea\u554f<\/h2>\n<p class=\"wp-block-paragraph\">\u6700\u5f8c\u306b\u3001\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u306b\u3064\u3044\u3066\u521d\u5fc3\u8005\u306e\u65b9\u304b\u3089\u3088\u304f\u5bc4\u305b\u3089\u308c\u308b\u8cea\u554f\u306b\u304a\u7b54\u3048\u3057\u307e\u3059\u3002\u5b9f\u88c5\u3067\u3064\u307e\u305a\u3044\u305f\u3068\u304d\u306e\u53c2\u8003\u306b\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<h3 class=\"wp-block-heading\">Q. \u30b9\u30d4\u30ca\u30fc\u3092\u753b\u9762\u306e\u4e2d\u592e\u306b\u914d\u7f6e\u3057\u305f\u3044\u306e\u3067\u3059\u304c\u3001\u3069\u3046\u3059\u308c\u3070\u3044\u3044\u3067\u3059\u304b\uff1f<\/h3>\n<p class=\"wp-block-paragraph\">\u89aa\u8981\u7d20\u306b<code>display: flex; align-items: center; justify-content: center;<\/code>\u3092\u6307\u5b9a\u3059\u308b\u306e\u304c\u6700\u3082\u7c21\u5358\u3067\u78ba\u5b9f\u3067\u3059\u3002\u3053\u308c\u3067\u30b9\u30d4\u30ca\u30fc\u304c\u4e0a\u4e0b\u5de6\u53f3\u306e\u4e2d\u592e\u306b\u914d\u7f6e\u3055\u308c\u307e\u3059\u3002\u753b\u9762\u5168\u4f53\u306e\u4e2d\u592e\u306b\u7f6e\u304d\u305f\u3044\u5834\u5408\u306f\u3001\u30b5\u30f3\u30d7\u30eb20\u306e\u3088\u3046\u306b<code>position: fixed; inset: 0;<\/code>\u3092\u4ed8\u3051\u305f\u8981\u7d20\u306e\u4e2d\u3067<code>flex<\/code>\u306e\u4e2d\u592e\u5bc4\u305b\u3092\u3057\u307e\u3059\u3002<code>margin: 0 auto;<\/code>\u3060\u3051\u3067\u306f\u6a2a\u65b9\u5411\u3057\u304b\u4e2d\u592e\u306b\u306a\u3089\u306a\u3044\u306e\u3067\u3001\u4e0a\u4e0b\u3082\u4e2d\u592e\u306b\u3057\u305f\u3044\u3068\u304d\u306f<code>flex<\/code>\u304b<code>grid\uff08place-items: center\uff09<\/code>\u3092\u4f7f\u3046\u3068\u899a\u3048\u3066\u304a\u304d\u307e\u3057\u3087\u3046\u3002<\/p>\n<h3 class=\"wp-block-heading\">Q. \u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u304c\u30ab\u30af\u3064\u304d\u307e\u3059\u3002\u3069\u3046\u3059\u308c\u3070\u6ed1\u3089\u304b\u306b\u306a\u308a\u307e\u3059\u304b\uff1f<\/h3>\n<p class=\"wp-block-paragraph\">\u307e\u305a\u3001<code>width<\/code>\u30fb<code>height<\/code>\u30fb<code>left<\/code>\u30fb<code>top<\/code>\u30fb<code>margin<\/code>\u3092\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3057\u3066\u3044\u306a\u3044\u304b\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002\u3053\u308c\u3089\u306f\u6bce\u30d5\u30ec\u30fc\u30e0\u914d\u7f6e\u8a08\u7b97\u304c\u8d70\u308b\u305f\u3081\u91cd\u304f\u306a\u308a\u307e\u3059\u3002\u79fb\u52d5\u306f<code>transform: translate()<\/code>\u3001\u62e1\u5927\u7e2e\u5c0f\u306f<code>transform: scale()<\/code>\u306b\u7f6e\u304d\u63db\u3048\u308b\u3068\u3001GPU\u3067\u51e6\u7406\u3055\u308c\u3066\u6ed1\u3089\u304b\u306b\u306a\u308a\u307e\u3059\u3002\u8a73\u3057\u304f\u306f\u672c\u6587\u300c\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u300d\u306e\u7ae0\u3092\u53c2\u7167\u3057\u3066\u304f\u3060\u3055\u3044\u3002\u305d\u308c\u3067\u3082\u91cd\u3044\u5834\u5408\u306f\u3001\u540c\u6642\u306b\u52d5\u304b\u3059\u8981\u7d20\u306e\u6570\u3092\u6e1b\u3089\u3059\u3001<code>box-shadow<\/code>\u3084<code>filter: blur()<\/code>\u306e\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3092\u907f\u3051\u308b\u3001\u3068\u3044\u3063\u305f\u5bfe\u7b56\u3082\u52b9\u679c\u7684\u3067\u3059\u3002<\/p>\n<h3 class=\"wp-block-heading\">Q. \u8aad\u307f\u8fbc\u307f\u304c\u7d42\u308f\u3063\u3066\u3082\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u304c\u6d88\u3048\u307e\u305b\u3093\u3002\u539f\u56e0\u306f\uff1f<\/h3>\n<p class=\"wp-block-paragraph\">\u307b\u3068\u3093\u3069\u306e\u5834\u5408\u3001<strong><span class=\"swl-marker mark_yellow\">\u975e\u8868\u793a\u306b\u3059\u308bJavaScript\u304c\u547c\u3070\u308c\u3066\u3044\u306a\u3044<\/span><\/strong>\u3053\u3068\u304c\u539f\u56e0\u3067\u3059\u3002\u7279\u306b\u901a\u4fe1\u304c\u5931\u6557\u3057\u305f\u3068\u304d\u306b\u6d88\u3059\u51e6\u7406\u3092\u66f8\u304d\u5fd8\u308c\u3066\u3044\u308b\u30b1\u30fc\u30b9\u304c\u591a\u3044\u3067\u3059\u3002\u672c\u6587\u3067\u89e3\u8aac\u3057\u305f\u3068\u304a\u308a\u3001\u975e\u8868\u793a\u51e6\u7406\u306f<code>try...catch<\/code>\u306e<code>finally<\/code>\u30d6\u30ed\u30c3\u30af\u306b\u66f8\u304d\u3001<strong><span class=\"swl-marker mark_yellow\">\u6210\u529f\u3067\u3082\u5931\u6557\u3067\u3082\u5fc5\u305a\u6d88\u3048\u308b<\/span><\/strong>\u3088\u3046\u306b\u3057\u3066\u304f\u3060\u3055\u3044\u3002\u307e\u305f\u3001\u975e\u8868\u793a\u30af\u30e9\u30b9\uff08<code>is-hidden<\/code>\uff09\u306eCSS\u304c<code>display: none;<\/code>\u306b\u306a\u3063\u3066\u3044\u308b\u304b\u3001\u30af\u30e9\u30b9\u540d\u306e\u30b9\u30da\u30eb\u304c\u5408\u3063\u3066\u3044\u308b\u304b\u3082\u78ba\u8a8d\u3057\u307e\u3057\u3087\u3046\u3002<\/p>\n<h3 class=\"wp-block-heading\">Q. \u30b9\u30de\u30db\u3067\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u304c\u91cd\u3044\u30fb\u767a\u71b1\u3057\u307e\u3059\u3002\u5bfe\u7b56\u306f\uff1f<\/h3>\n<p class=\"wp-block-paragraph\">\u30b9\u30de\u30db\u306fPC\u3088\u308a\u3082\u51e6\u7406\u80fd\u529b\u304c\u9650\u3089\u308c\u308b\u305f\u3081\u3001\u8ca0\u8377\u306e\u9ad8\u3044\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u306f\u91cd\u304f\u611f\u3058\u3089\u308c\u307e\u3059\u3002\u5bfe\u7b56\u306f3\u3064\u3042\u308a\u307e\u3059\u30021\u3064\u76ee\u306f<code>transform<\/code>\u3068<code>opacity<\/code>\u3060\u3051\u3067\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3059\u308b\u3053\u3068\u30022\u3064\u76ee\u306f<code>box-shadow<\/code>\u3084<code>filter<\/code>\u3092\u6bce\u30d5\u30ec\u30fc\u30e0\u5909\u5316\u3055\u305b\u306a\u3044\u3053\u3068\uff08\u5f71\u306e\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u306f\u7279\u306b\u91cd\u3044\u3067\u3059\uff09\u30023\u3064\u76ee\u306f\u3001\u540c\u6642\u306b\u5927\u91cf\u306e\u30b9\u30d4\u30ca\u30fc\u3092\u8868\u793a\u3057\u306a\u3044\u3053\u3068\u3067\u3059\u3002\u30b9\u30b1\u30eb\u30c8\u30f3\u30b9\u30af\u30ea\u30fc\u30f3\u3067\u305f\u304f\u3055\u3093\u306e\u7bb1\u3092\u5149\u3089\u305b\u308b\u5834\u5408\u306f\u3001\u30b7\u30de\u30fc\u306e\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u30921\u3064\u306e\u89aa\u3067\u307e\u3068\u3081\u308b\u306a\u3069\u306e\u5de5\u592b\u3082\u6709\u52b9\u3067\u3059\u3002<\/p>\n<h3 class=\"wp-block-heading\">Q. CSS\u3060\u3051\u3067\u9032\u6357\uff08\uff05\uff09\u4ed8\u304d\u306e\u30d7\u30ed\u30b0\u30ec\u30b9\u30d0\u30fc\u306f\u4f5c\u308c\u307e\u3059\u304b\uff1f<\/h3>\n<p class=\"wp-block-paragraph\">\u9032\u6357\u306e\u300c\u898b\u305f\u76ee\u300d\u306fCSS\u3060\u3051\u3067\u4f5c\u308c\u307e\u3059\u304c\u3001<strong><span class=\"swl-marker mark_yellow\">\u5b9f\u969b\u306e\uff05\u3092\u53cd\u6620\u3059\u308b\u306b\u306fJavaScript\u304c\u5fc5\u8981<\/span><\/strong>\u3067\u3059\u3002CSS\u306f\u30d0\u30fc\u306e<code>width<\/code>\u3084\u5186\u5f62\u30d7\u30ed\u30b0\u30ec\u30b9\u306e<code>--value<\/code>\u3092\u300c\u6ed1\u3089\u304b\u306b\u5909\u5316\u3055\u305b\u308b\u300d\u5f79\u5272\u3092\u62c5\u3044\u3001\u305d\u306e\u5024\u3092\u9032\u6357\u306b\u5fdc\u3058\u3066\u66f4\u65b0\u3059\u308b\u306e\u306fJavaScript\u306e\u4ed5\u4e8b\u3067\u3059\u3002\u672c\u6587\u306e\u30b5\u30f3\u30d7\u30eb7\uff08\u78ba\u5b9a\u30d7\u30ed\u30b0\u30ec\u30b9\u30d0\u30fc\uff09\u3068\u30b5\u30f3\u30d7\u30eb15\uff08\u5186\u5f62\u30d7\u30ed\u30b0\u30ec\u30b9\uff09\u306b\u3001CSS\u3068JavaScript\u306e\u4e21\u65b9\u306e\u5b9f\u88c5\u4f8b\u3092\u8f09\u305b\u3066\u3044\u307e\u3059\u306e\u3067\u53c2\u8003\u306b\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<h3 class=\"wp-block-heading\">Q. \u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u306f\u4f55\u79d2\u8868\u793a\u3059\u308b\u306e\u304c\u9069\u5207\u3067\u3059\u304b\uff1f<\/h3>\n<p class=\"wp-block-paragraph\">\u300c\u4f55\u79d2\u51fa\u3059\u300d\u3067\u306f\u306a\u304f<strong><span class=\"swl-marker mark_yellow\">\u51e6\u7406\u304c\u7d42\u308f\u308b\u307e\u3067\u51fa\u3057\u3001\u7d42\u308f\u3063\u305f\u3089\u5373\u6d88\u3059<\/span><\/strong>\u306e\u304c\u57fa\u672c\u3067\u3059\u3002\u305f\u3060\u3057\u3001\u3042\u307e\u308a\u306b\u4e00\u77ac\uff080.2\u79d2\u306a\u3069\uff09\u3067\u6d88\u3048\u308b\u3068\u30c1\u30ab\u30c1\u30ab\u3057\u3066\u76ee\u969c\u308a\u306a\u306e\u3067\u3001\u5b9f\u52d9\u3067\u306f\u300c\u8868\u793a\u3059\u308b\u306a\u3089\u6700\u4f4e\u3067\u30820.3\u301c0.5\u79d2\u306f\u51fa\u3059\u300d\u3068\u3044\u3063\u305f\u6700\u5c0f\u8868\u793a\u6642\u9593\u3092\u8a2d\u3051\u308b\u3053\u3068\u3082\u3042\u308a\u307e\u3059\u3002\u9006\u306b\u3001\u6570\u79d2\u4ee5\u4e0a\u304b\u304b\u308b\u51e6\u7406\u3067\u306f\u3001\u5358\u306a\u308b\u30b9\u30d4\u30ca\u30fc\u3088\u308a\u9032\u6357\u30d0\u30fc\u3084\u30b9\u30b1\u30eb\u30c8\u30f3\u3092\u4f7f\u3044\u3001\u300c\u3042\u3068\u3069\u308c\u304f\u3089\u3044\u304b\u300d\u300c\u3061\u3083\u3093\u3068\u9032\u3093\u3067\u3044\u308b\u304b\u300d\u3092\u4f1d\u3048\u308b\u3068\u3001\u30e6\u30fc\u30b6\u30fc\u306e\u4e0d\u5b89\u304c\u6e1b\u308a\u307e\u3059\u3002<\/p>\n<h3 class=\"wp-block-heading\">Q. \u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u306e\u901f\u5ea6\u3084\u8272\u3092\u5909\u3048\u305f\u3044\u3068\u304d\u306f\u3001\u3069\u3053\u3092\u3044\u3058\u308c\u3070\u3044\u3044\u3067\u3059\u304b\uff1f<\/h3>\n<p class=\"wp-block-paragraph\">\u901f\u5ea6\u306f<code>animation<\/code>\u306e<code>duration<\/code>\uff08\u4f8b\uff1a<code>0.9s<\/code>\uff09\u306e\u6570\u5b57\u3092\u5909\u3048\u307e\u3059\u3002\u6570\u5b57\u3092\u5c0f\u3055\u304f\u3059\u308b\u3068\u901f\u304f\u3001\u5927\u304d\u304f\u3059\u308b\u3068\u3086\u3063\u304f\u308a\u306b\u306a\u308a\u307e\u3059\u3002\u8272\u306f<code>background<\/code>\u3084<code>border-top-color<\/code>\u306a\u3069\u3001\u8272\u3092\u6307\u5b9a\u3057\u3066\u3044\u308b\u7b87\u6240\u3092\u81ea\u5206\u306e\u30d6\u30e9\u30f3\u30c9\u30ab\u30e9\u30fc\u306b\u66f8\u304d\u63db\u3048\u308b\u3060\u3051\u3067\u3059\u3002\u30b5\u30a4\u30ba\u306f<code>width<\/code>\u30fb<code>height<\/code>\u3084<code>border<\/code>\u306e\u592a\u3055\u3067\u8abf\u6574\u3057\u307e\u3059\u3002\u307e\u305a\u306f\u30b3\u30d4\u30da\u3057\u3066\u52d5\u304b\u3057\u3001\u3053\u308c\u3089\u306e\u6570\u5b57\u3092\u5c11\u3057\u305a\u3064\u5909\u3048\u3066\u6319\u52d5\u3092\u78ba\u304b\u3081\u308b\u3068\u3001\u4ed5\u7d44\u307f\u306e\u7406\u89e3\u304c\u4e00\u6c17\u306b\u9032\u307f\u307e\u3059\u3002<\/p>\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n<h2 class=\"wp-block-heading\">\u307e\u3068\u3081\uff1aCSS\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u306f\u4ed5\u7d44\u307f\u3092\u7406\u89e3\u3059\u308c\u3070\u81ea\u5728\u306b\u4f5c\u308c\u308b<\/h2>\n<p class=\"wp-block-paragraph\">CSS\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u309220\u7a2e\u985e\u3001\u5b9f\u88c5\u30b5\u30f3\u30d7\u30eb\u3068\u3068\u3082\u306b\u89e3\u8aac\u3057\u3066\u304d\u307e\u3057\u305f\u3002\u6570\u306f\u591a\u3044\u3082\u306e\u306e\u3001\u52d5\u304d\u306e\u6b63\u4f53\u306f<strong><span class=\"swl-marker mark_yellow\">@keyframes\u3067\u53f0\u672c\u3092\u66f8\u304d\u3001animation\u3067\u518d\u751f\u3059\u308b<\/span><\/strong>\u3068\u3044\u3046\u30b7\u30f3\u30d7\u30eb\u306a\u4ed5\u7d44\u307f\u3067\u3057\u305f\u3002\u56de\u8ee2\u30fb\u70b9\u6ec5\u30fb\u79fb\u52d5\u30fb\u4f38\u7e2e\u306e4\u3064\u306e\u7d44\u307f\u5408\u308f\u305b\u3092\u899a\u3048\u308c\u3070\u3001\u3042\u3068\u306f\u5fdc\u7528\u3067\u3044\u304f\u3089\u3067\u3082\u30d0\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u3092\u4f5c\u308c\u307e\u3059\u3002<\/p>\n<p class=\"wp-block-paragraph\">\u305d\u3057\u3066\u5fd8\u308c\u3066\u306f\u3044\u3051\u306a\u3044\u306e\u304c\u3001\u898b\u305f\u76ee\u3060\u3051\u3067\u306a\u304f<strong><span class=\"swl-marker mark_yellow\">\u6d88\u3057\u5fd8\u308c\u5bfe\u7b56\uff08finally\uff09\u30fb\u30a2\u30af\u30bb\u30b7\u30d3\u30ea\u30c6\u30a3\u30fb\u30e2\u30fc\u30b7\u30e7\u30f3\u914d\u616e\u30fb\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9<\/span><\/strong>\u3067\u3059\u3002\u3053\u3053\u307e\u3067\u6c17\u3092\u914d\u308c\u308b\u3068\u3001\u5358\u306b\u300c\u52d5\u304f\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u300d\u3067\u306f\u306a\u304f\u300c\u8ab0\u306b\u3068\u3063\u3066\u3082\u4f7f\u3044\u3084\u3059\u304f\u3001\u8efd\u304f\u3066\u6ed1\u3089\u304b\u306a\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u300d\u306b\u306a\u308a\u307e\u3059\u3002\u30b3\u30d4\u30da\u3067\u7d42\u308f\u308a\u306b\u305b\u305a\u3001\u3053\u306e\u8a18\u4e8b\u306e\u539f\u7406\u307e\u3067\u62bc\u3055\u3048\u3066\u304a\u3051\u3070\u3001\u5b9f\u52d9\u3067\u81ea\u4fe1\u3092\u6301\u3063\u3066\u5b9f\u88c5\u3067\u304d\u308b\u306f\u305a\u3067\u3059\u3002<\/p>\n<p class=\"is-style-big_icon_point wp-block-paragraph\"><strong>\u30fb\u4ed5\u7d44\u307f<\/strong>\uff1a\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u306f\u300c@keyframes\uff08\u52d5\u304d\u306e\u53f0\u672c\uff09\u300d\u3068\u300canimation\uff08\u518d\u751f\u6307\u5b9a\uff09\u300d\u306e2\u3064\u3067\u3067\u304d\u3066\u3044\u308b\u3002infinite\u3067\u56de\u3057\u7d9a\u3051\u308b\u306e\u304c\u57fa\u672c\u3002<br \/><strong>\u30fb\u5b9f\u88c5<\/strong>\uff1a\u56de\u8ee2\u30fb\u70b9\u6ec5\uff08opacity\uff09\u30fb\u79fb\u52d5\uff08translate\uff09\u30fb\u4f38\u7e2e\uff08scale\uff09\u306e\u7d44\u307f\u5408\u308f\u305b\u3002JS\u306fclassList\u306e\u4ed8\u3051\u5916\u3057\u3067\u8868\u793a\u5207\u308a\u66ff\u3048\u3001\u6d88\u3059\u51e6\u7406\u306ffinally\u306b\u66f8\u304f\u3002<br \/><strong>\u30fb\u914d\u616e<\/strong>\uff1arole=&#8221;status&#8221;\u3084aria-label\u3067\u8aad\u307f\u4e0a\u3052\u306b\u3001prefers-reduced-motion\u3067\u30e2\u30fc\u30b7\u30e7\u30f3\u306b\u914d\u616e\u3002transform\u3068opacity\u3067\u30ab\u30af\u3064\u304d\u3092\u9632\u3050\u3002<\/p>\n<p class=\"wp-block-paragraph\">\u3068\u306f\u3044\u3048\u3001<strong><span class=\"swl-marker mark_yellow\">CSS\u3084JavaScript\u3092\u72ec\u5b66\u3067\u4f53\u7cfb\u7acb\u3066\u3066\u8eab\u306b\u3064\u3051\u308b\u306e\u306f\u3001\u610f\u5916\u3068\u9060\u56de\u308a\u306b\u306a\u308a\u304c\u3061<\/span><\/strong>\u3067\u3059\u3002\u300c\u30b3\u30d4\u30da\u306f\u52d5\u304f\u3051\u308c\u3069\u3001\u306a\u305c\u52d5\u304f\u306e\u304b\u81ea\u5206\u3067\u8aac\u660e\u3067\u304d\u306a\u3044\u300d\u300c\u5b9f\u52d9\u3067\u901a\u7528\u3059\u308b\u30ec\u30d9\u30eb\u307e\u3067\u81ea\u4fe1\u3092\u6301\u3066\u306a\u3044\u300d\u3068\u611f\u3058\u308b\u65b9\u306f\u3001\u6b63\u3057\u3044\u9806\u5e8f\u3067\u5b66\u3079\u308b\u74b0\u5883\u3092\u6d3b\u7528\u3059\u308b\u306e\u304c\u8fd1\u9053\u3067\u3059\u3002<\/p>\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n<h2 class=\"wp-block-heading\">WithCode\u3092\u4f53\u9a13\u3067\u304d\u308b\u521d\u7d1a\u30b3\u30fc\u30b9\u516c\u958b\u4e2d\uff01<\/h2>\n<figure class=\"wp-block-image alignleft size-full\"><img decoding=\"async\" width=\"600\" height=\"500\" src=\"https:\/\/withcode.tech\/media\/wp-content\/uploads\/2024\/04\/\u30d0\u30ca\u30fc_300\u00d7250_20240425.png\" alt=\"\" class=\"wp-image-2650\"\/><\/figure>\n<h3 class=\"wp-block-heading\">\u521d\u7d1a\u30b3\u30fc\u30b9(\u00a549,800)\u304c\u5b8c\u5168\u7121\u6599\u306b\uff01<\/h3>\n<ul class=\"wp-block-list\">\n<li><strong>\u671f\u9593\uff1a1\u9031\u9593<\/strong><\/li>\n<li><strong>\u5b66\u7fd2\u5185\u5bb9\uff1a<\/strong><br \/><strong>\u30ed\u30fc\u30c9\u30de\u30c3\u30d7\/\u57fa\u790e\u77e5\u8b58\/\u74b0\u5883\u69cb\u7bc9\/HTML\/CSS\/LP\u30fb\u30dd\u30fc\u30c8\u30d5\u30a9\u30ea\u30aa\u4f5c\u6210<\/strong><br \/><strong>\u2192 <span class=\"swl-marker mark_yellow\">\u6b63\u3057\u3044\u5b66\u7fd2\u65b9\u6cd5\u3067\u300c\u78ba\u304b\u306a\u6210\u9577\u300d\u3092\u5b9f\u611f\u3067\u304d\u308b\u30ab\u30ea\u30ad\u30e5\u30e9\u30e0\u3002<\/span><\/strong><\/li>\n<\/ul>\n<p>\u526f\u696d\u30fb\u30d5\u30ea\u30fc\u30e9\u30f3\u30b9\u304c\u4e3b\u6d41\u306b\u306a\u3063\u3066\u3044\u308b\u4eca\u3053\u305d\u3001\u81ea\u3089\u306e\u30b9\u30ad\u30eb\u3067\u7a3c\u3052\u308b\u4eba\u6750\u3092\u76ee\u6307\u3057\u3066\u307f\u307e\u305b\u3093\u304b\uff1f<\/p>\n<p>\u672a\u7d4c\u9a13\u3067\u3082\u5fc3\u914d\u3059\u308b\u3053\u3068\u306f\u3042\u308a\u307e\u305b\u3093\u3002\u521d\u7d1a\u30b3\u30fc\u30b9\u3092\u53d7\u8b1b\u3055\u308c\u308b\u65b9\u306e\u5927\u591a\u6570\u306f\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u672a\u7d4c\u9a13\u3067\u3059\u3002\u307e\u305a\u306f\u7121\u6599\u30ab\u30a6\u30f3\u30bb\u30ea\u30f3\u30b0\u3067\u3001\u60a9\u307f\u3084\u4e0d\u5b89\u3092\u304a\u805e\u304b\u305b\u304f\u3060\u3055\u3044\uff01<\/p>\n<div class=\"wp-block-buttons\">\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link has-white-color has-text-color has-background has-link-color wp-element-button\" href=\"https:\/\/withcode.tech\/reservation\/\" style=\"background-color:#ffbf00\"><strong>\u516c\u5f0f\u30b5\u30a4\u30c8\u304b\u3089\u7121\u6599\u30ab\u30a6\u30f3\u30bb\u30ea\u30f3\u30b0\u306b\u7533\u3057\u8fbc\u3080 \u2192<\/strong><\/a><\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>CSS\u30ed\u30fc\u30c7\u30a3\u30f3\u30b0\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u306e\u30b3\u30d4\u30da\u96c6\u3002\u5186\u30b9\u30d4\u30ca\u30fc\u30fb\u30c9\u30c3\u30c8\u30fb\u30d0\u30fc\u30fb\u30d7\u30ed\u30b0\u30ec\u30b9\u30d0\u30fc\u30fb\u30b9\u30b1\u30eb\u30c8\u30f3\u30fb\u6ce2\u30fb\u5186\u5f62\u30d7\u30ed\u30b0\u30ec\u30b9\u306a\u306920\u7a2e\u985e\u3092\u3001\u53d7\u3051\u76bfHTML\u3068@keyframes\u4ed8\u304d\u306e\u52d5\u304f\u30b3\u30fc\u30c9\u3067\u63b2\u8f09\u3002prefers-reduced-motion\u3084\u30a2\u30af\u30bb\u30b7\u30d3\u30ea\u30c6\u30a3\u3001JS\u3067\u306e\u8868\u793a\u5207\u308a\u66ff\u3048\u307e\u3067\u521d\u5fc3\u8005\u5411\u3051\u306b\u89e3\u8aac\u3057\u307e\u3059\u3002<\/p>\n","protected":false},"author":18,"featured_media":16585,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"swell_btn_cv_data":"","footnotes":"","vk-ltc-link":"","vk-ltc-target":""},"categories":[361],"tags":[],"class_list":["post-16527","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-css"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/withcode.tech\/media\/wp-json\/wp\/v2\/posts\/16527","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/withcode.tech\/media\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/withcode.tech\/media\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/withcode.tech\/media\/wp-json\/wp\/v2\/users\/18"}],"replies":[{"embeddable":true,"href":"https:\/\/withcode.tech\/media\/wp-json\/wp\/v2\/comments?post=16527"}],"version-history":[{"count":2,"href":"https:\/\/withcode.tech\/media\/wp-json\/wp\/v2\/posts\/16527\/revisions"}],"predecessor-version":[{"id":16569,"href":"https:\/\/withcode.tech\/media\/wp-json\/wp\/v2\/posts\/16527\/revisions\/16569"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/withcode.tech\/media\/wp-json\/wp\/v2\/media\/16585"}],"wp:attachment":[{"href":"https:\/\/withcode.tech\/media\/wp-json\/wp\/v2\/media?parent=16527"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/withcode.tech\/media\/wp-json\/wp\/v2\/categories?post=16527"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/withcode.tech\/media\/wp-json\/wp\/v2\/tags?post=16527"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}