@charset "UTF-8";
/*
Theme Name: ba
Theme URI: https://blue-anole.co.jp/
Author: Blue Anole
Description: ブルーアノール株式会社 コーポレートサイト用オリジナルテーマ
Version: 1.0.0
Requires at least: 6.5
Requires PHP: 8.1
Text Domain: ba
*/
@layer reset, base, components, pages, plugins;
@font-face {
  font-family: "IBM Plex Sans JP";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/fonts/ibm-plex-sans-jp-400-extra.woff2") format("woff2");
  unicode-range: U+4E00-9FFF;
}
@font-face {
  font-family: "IBM Plex Sans JP";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/fonts/ibm-plex-sans-jp-400-core.woff2") format("woff2");
  unicode-range: U+20-7E, U+A2-A3, U+A7-A9, U+AC, U+B0-B1, U+B4, U+B6, U+D7, U+F7, U+391-3A1, U+3A3-3A9, U+3B1-3C1, U+3C3-3C9, U+401, U+410-44F, U+451, U+2010, U+2013-2016, U+2018-2019, U+201C-201D, U+2020-2022, U+2025-2026, U+2030, U+2032-2033, U+203B, U+2103, U+2113, U+2122, U+212B, U+2190-2193, U+21D2, U+21D4, U+2200, U+2202-2203, U+2207-2208, U+220B, U+2212, U+221A, U+221D-221E, U+2220, U+2227-222C, U+2234-2235, U+223D, U+2252, U+2260-2261, U+2266-2267, U+226A-226B, U+2282-2283, U+2286-2287, U+22A5, U+2312, U+2500-2503, U+250C, U+250F-2510, U+2513-2514, U+2517-2518, U+251B-251D, U+2520, U+2523-2525, U+2528, U+252B-252C, U+252F-2530, U+2533-2534, U+2537-2538, U+253B-253C, U+253F, U+2542, U+254B, U+25A0-25A1, U+25B2-25B3, U+25BC-25BD, U+25C6-25C7, U+25CB, U+25CE-25CF, U+25EF, U+2605-2606, U+2640, U+2642, U+266A, U+266D, U+266F, U+3000-3003, U+3005-3015, U+301C, U+3041-3093, U+309B-309E, U+30A1-30F6, U+30FB-30FE, U+4E00, U+4E0B, U+4E0D, U+4E16, U+4E2D, U+4E5D, U+4E7E, U+4E88, U+4EAC, U+4EBA, U+4ECA-4ECB, U+4ED5-4ED6, U+4ED8, U+4EDD, U+4EE3, U+4EE5, U+4EF6, U+4EFB, U+4F01, U+4F1A, U+4F3C, U+4F4D, U+4F4F, U+4F53, U+4F59, U+4F5C, U+4F7F, U+4F9B, U+4FA1, U+4FDD, U+4FE1, U+5019, U+50BE, U+5100, U+5165, U+5168, U+5171, U+5185-5186, U+5199, U+51E6, U+51FA, U+5206, U+5208, U+5236, U+523B, U+524D, U+5264, U+529B, U+52B9, U+52D5, U+52E7, U+5316, U+533A, U+534A, U+5357, U+5370, U+53B3, U+53CA, U+53CE, U+53D6, U+53E3, U+53EF-53F0, U+53F3, U+53F7, U+5404, U+5408, U+540C-540D, U+5411, U+542B, U+5473, U+548C, U+54C1, U+54E1, U+554F, U+55B6, U+56DB, U+56DE, U+56E3, U+56F2, U+56FA, U+56FD, U+5703, U+5712, U+571F, U+5728, U+5730, U+578B, U+57CE, U+57F9, U+5834, U+5857, U+5897, U+58CC, U+58F2, U+5909, U+5916, U+591A, U+5927, U+5929, U+59A8, U+59CB, U+5B50, U+5B63, U+5B66, U+5B88-5B89, U+5B9A, U+5B9F, U+5BB3, U+5BB6, U+5BB9, U+5BFE, U+5C0E, U+5C11, U+5CF6, U+5DDE, U+5DE1, U+5DE5-5DE6, U+5E03, U+5E38, U+5E45, U+5E74, U+5E83, U+5EA6, U+5F0F, U+5F15, U+5F37, U+5F62, U+5F79, U+5F8C, U+5F93, U+5FB4, U+5FC5, U+5FCC, U+5FDC, U+5FF5, U+601D, U+6027, U+60F3, U+610F, U+611F, U+6163, U+61D0, U+61F8, U+6210, U+6240, U+6280, U+6291, U+62C5, U+62E0, U+6301, U+6398, U+63A5, U+63C3, U+63D0, U+63EE, U+64AD, U+653E, U+6570, U+6574, U+6587, U+6599, U+65B0, U+65B9, U+65BD, U+65E5, U+660E, U+6613, U+6625, U+6642, U+666F, U+6708, U+671F, U+672A-672C, U+6750, U+6761, U+6765, U+6771, U+679C, U+682A, U+6838, U+683C-683D, U+68B0, U+68C4, U+690D, U+696D, U+6982, U+69D8, U+6A19, U+6A5F, U+6B62, U+6B69, U+6BD4, U+6C17, U+6C34, U+6C96, U+6CA1, U+6D77, U+6DF1, U+6DFA, U+6E5B, U+6E7F, U+6E96, U+6E9D, U+6F0F, U+6FE1, U+70B9, U+7121, U+7167, U+71E5, U+7279, U+727D, U+72B6, U+7387, U+7389, U+73FE, U+7406, U+751F, U+7528, U+7530, U+753B, U+754C, U+755D, U+7566, U+756A, U+7570, U+767A, U+7684, U+76EE, U+76F4, U+7701, U+7740, U+77E5, U+77ED, U+7814, U+7834, U+793E, U+79C1, U+79FB, U+7A0B, U+7A2E, U+7A76, U+7ACB, U+7B11, U+7B49, U+7B56, U+7B87, U+7BA1, U+7BC4, U+7C73, U+7D04, U+7D20, U+7D39, U+7D4C, U+7D50, U+7DE0, U+7E04, U+7E2E, U+7E3E, U+7E4B, U+7E70, U+7F6E, U+7F8E, U+8003, U+8010, U+8015, U+80B2, U+80FD, U+81EA, U+8208, U+822C, U+826F, U+8272, U+82E6, U+8349, U+884C, U+8853, U+8868, U+88C5, U+88FD, U+8981, U+898B, U+899A, U+8A08, U+8A3C, U+8A66, U+8A70-8A71, U+8AAD, U+8ABF, U+8C46, U+8CA0, U+8CA9, U+8CC7, U+8CEA, U+8D70, U+8D85, U+8ECA, U+8EE2, U+8EF8, U+8EFD, U+8F2A, U+8FB2, U+8FBC, U+8FCE, U+9003, U+901A, U+901F-9020, U+9032, U+9054, U+905C, U+9069, U+907F, U+90E8, U+90FD, U+9178, U+91CD-91CF, U+91D1, U+958B, U+9593, U+95A2, U+9632, U+963B, U+964D, U+9650, U+9664, U+96C6, U+96D1, U+96E2-96E3, U+96E8, U+96FB, U+9762, U+9803, U+9805, U+9808, U+983C, U+9858, U+98A8, U+98DF, U+99AC, U+9A13, U+9A30, U+9AD8, U+9BAE, U+9CE5, U+9EA6, U+FF01-FF5E, U+FF64, U+FFE3, U+FFE5;
}
@font-face {
  font-family: "IBM Plex Sans JP";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/fonts/ibm-plex-sans-jp-500-extra.woff2") format("woff2");
  unicode-range: U+4E00-9FFF;
}
@font-face {
  font-family: "IBM Plex Sans JP";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/fonts/ibm-plex-sans-jp-500-core.woff2") format("woff2");
  unicode-range: U+20-7E, U+A2-A3, U+A7-A9, U+AC, U+B0-B1, U+B4, U+B6, U+D7, U+F7, U+391-3A1, U+3A3-3A9, U+3B1-3C1, U+3C3-3C9, U+401, U+410-44F, U+451, U+2010, U+2013-2016, U+2018-2019, U+201C-201D, U+2020-2022, U+2025-2026, U+2030, U+2032-2033, U+203B, U+2103, U+2113, U+2122, U+212B, U+2190-2193, U+21D2, U+21D4, U+2200, U+2202-2203, U+2207-2208, U+220B, U+2212, U+221A, U+221D-221E, U+2220, U+2227-222C, U+2234-2235, U+223D, U+2252, U+2260-2261, U+2266-2267, U+226A-226B, U+2282-2283, U+2286-2287, U+22A5, U+2312, U+2500-2503, U+250C, U+250F-2510, U+2513-2514, U+2517-2518, U+251B-251D, U+2520, U+2523-2525, U+2528, U+252B-252C, U+252F-2530, U+2533-2534, U+2537-2538, U+253B-253C, U+253F, U+2542, U+254B, U+25A0-25A1, U+25B2-25B3, U+25BC-25BD, U+25C6-25C7, U+25CB, U+25CE-25CF, U+25EF, U+2605-2606, U+2640, U+2642, U+266A, U+266D, U+266F, U+3000-3003, U+3005-3015, U+301C, U+3041-3093, U+309B-309E, U+30A1-30F6, U+30FB-30FE, U+4E00, U+4E0B, U+4E0D, U+4E16, U+4E2D, U+4E5D, U+4E7E, U+4E88, U+4EAC, U+4EBA, U+4ECA-4ECB, U+4ED5-4ED6, U+4ED8, U+4EDD, U+4EE3, U+4EE5, U+4EF6, U+4EFB, U+4F01, U+4F1A, U+4F3C, U+4F4D, U+4F4F, U+4F53, U+4F59, U+4F5C, U+4F7F, U+4F9B, U+4FA1, U+4FDD, U+4FE1, U+5019, U+50BE, U+5100, U+5165, U+5168, U+5171, U+5185-5186, U+5199, U+51E6, U+51FA, U+5206, U+5208, U+5236, U+523B, U+524D, U+5264, U+529B, U+52B9, U+52D5, U+52E7, U+5316, U+533A, U+534A, U+5357, U+5370, U+53B3, U+53CA, U+53CE, U+53D6, U+53E3, U+53EF-53F0, U+53F3, U+53F7, U+5404, U+5408, U+540C-540D, U+5411, U+542B, U+5473, U+548C, U+54C1, U+54E1, U+554F, U+55B6, U+56DB, U+56DE, U+56E3, U+56F2, U+56FA, U+56FD, U+5703, U+5712, U+571F, U+5728, U+5730, U+578B, U+57CE, U+57F9, U+5834, U+5857, U+5897, U+58CC, U+58F2, U+5909, U+5916, U+591A, U+5927, U+5929, U+59A8, U+59CB, U+5B50, U+5B63, U+5B66, U+5B88-5B89, U+5B9A, U+5B9F, U+5BB3, U+5BB6, U+5BB9, U+5BFE, U+5C0E, U+5C11, U+5CF6, U+5DDE, U+5DE1, U+5DE5-5DE6, U+5E03, U+5E38, U+5E45, U+5E74, U+5E83, U+5EA6, U+5F0F, U+5F15, U+5F37, U+5F62, U+5F79, U+5F8C, U+5F93, U+5FB4, U+5FC5, U+5FCC, U+5FDC, U+5FF5, U+601D, U+6027, U+60F3, U+610F, U+611F, U+6163, U+61D0, U+61F8, U+6210, U+6240, U+6280, U+6291, U+62C5, U+62E0, U+6301, U+6398, U+63A5, U+63C3, U+63D0, U+63EE, U+64AD, U+653E, U+6570, U+6574, U+6587, U+6599, U+65B0, U+65B9, U+65BD, U+65E5, U+660E, U+6613, U+6625, U+6642, U+666F, U+6708, U+671F, U+672A-672C, U+6750, U+6761, U+6765, U+6771, U+679C, U+682A, U+6838, U+683C-683D, U+68B0, U+68C4, U+690D, U+696D, U+6982, U+69D8, U+6A19, U+6A5F, U+6B62, U+6B69, U+6BD4, U+6C17, U+6C34, U+6C96, U+6CA1, U+6D77, U+6DF1, U+6DFA, U+6E5B, U+6E7F, U+6E96, U+6E9D, U+6F0F, U+6FE1, U+70B9, U+7121, U+7167, U+71E5, U+7279, U+727D, U+72B6, U+7387, U+7389, U+73FE, U+7406, U+751F, U+7528, U+7530, U+753B, U+754C, U+755D, U+7566, U+756A, U+7570, U+767A, U+7684, U+76EE, U+76F4, U+7701, U+7740, U+77E5, U+77ED, U+7814, U+7834, U+793E, U+79C1, U+79FB, U+7A0B, U+7A2E, U+7A76, U+7ACB, U+7B11, U+7B49, U+7B56, U+7B87, U+7BA1, U+7BC4, U+7C73, U+7D04, U+7D20, U+7D39, U+7D4C, U+7D50, U+7DE0, U+7E04, U+7E2E, U+7E3E, U+7E4B, U+7E70, U+7F6E, U+7F8E, U+8003, U+8010, U+8015, U+80B2, U+80FD, U+81EA, U+8208, U+822C, U+826F, U+8272, U+82E6, U+8349, U+884C, U+8853, U+8868, U+88C5, U+88FD, U+8981, U+898B, U+899A, U+8A08, U+8A3C, U+8A66, U+8A70-8A71, U+8AAD, U+8ABF, U+8C46, U+8CA0, U+8CA9, U+8CC7, U+8CEA, U+8D70, U+8D85, U+8ECA, U+8EE2, U+8EF8, U+8EFD, U+8F2A, U+8FB2, U+8FBC, U+8FCE, U+9003, U+901A, U+901F-9020, U+9032, U+9054, U+905C, U+9069, U+907F, U+90E8, U+90FD, U+9178, U+91CD-91CF, U+91D1, U+958B, U+9593, U+95A2, U+9632, U+963B, U+964D, U+9650, U+9664, U+96C6, U+96D1, U+96E2-96E3, U+96E8, U+96FB, U+9762, U+9803, U+9805, U+9808, U+983C, U+9858, U+98A8, U+98DF, U+99AC, U+9A13, U+9A30, U+9AD8, U+9BAE, U+9CE5, U+9EA6, U+FF01-FF5E, U+FF64, U+FFE3, U+FFE5;
}
@font-face {
  font-family: "IBM Plex Sans JP";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("assets/fonts/ibm-plex-sans-jp-700-extra.woff2") format("woff2");
  unicode-range: U+4E00-9FFF;
}
@font-face {
  font-family: "IBM Plex Sans JP";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("assets/fonts/ibm-plex-sans-jp-700-core.woff2") format("woff2");
  unicode-range: U+20-7E, U+A2-A3, U+A7-A9, U+AC, U+B0-B1, U+B4, U+B6, U+D7, U+F7, U+391-3A1, U+3A3-3A9, U+3B1-3C1, U+3C3-3C9, U+401, U+410-44F, U+451, U+2010, U+2013-2016, U+2018-2019, U+201C-201D, U+2020-2022, U+2025-2026, U+2030, U+2032-2033, U+203B, U+2103, U+2113, U+2122, U+212B, U+2190-2193, U+21D2, U+21D4, U+2200, U+2202-2203, U+2207-2208, U+220B, U+2212, U+221A, U+221D-221E, U+2220, U+2227-222C, U+2234-2235, U+223D, U+2252, U+2260-2261, U+2266-2267, U+226A-226B, U+2282-2283, U+2286-2287, U+22A5, U+2312, U+2500-2503, U+250C, U+250F-2510, U+2513-2514, U+2517-2518, U+251B-251D, U+2520, U+2523-2525, U+2528, U+252B-252C, U+252F-2530, U+2533-2534, U+2537-2538, U+253B-253C, U+253F, U+2542, U+254B, U+25A0-25A1, U+25B2-25B3, U+25BC-25BD, U+25C6-25C7, U+25CB, U+25CE-25CF, U+25EF, U+2605-2606, U+2640, U+2642, U+266A, U+266D, U+266F, U+3000-3003, U+3005-3015, U+301C, U+3041-3093, U+309B-309E, U+30A1-30F6, U+30FB-30FE, U+4E00, U+4E0B, U+4E0D, U+4E16, U+4E2D, U+4E5D, U+4E7E, U+4E88, U+4EAC, U+4EBA, U+4ECA-4ECB, U+4ED5-4ED6, U+4ED8, U+4EDD, U+4EE3, U+4EE5, U+4EF6, U+4EFB, U+4F01, U+4F1A, U+4F3C, U+4F4D, U+4F4F, U+4F53, U+4F59, U+4F5C, U+4F7F, U+4F9B, U+4FA1, U+4FDD, U+4FE1, U+5019, U+50BE, U+5100, U+5165, U+5168, U+5171, U+5185-5186, U+5199, U+51E6, U+51FA, U+5206, U+5208, U+5236, U+523B, U+524D, U+5264, U+529B, U+52B9, U+52D5, U+52E7, U+5316, U+533A, U+534A, U+5357, U+5370, U+53B3, U+53CA, U+53CE, U+53D6, U+53E3, U+53EF-53F0, U+53F3, U+53F7, U+5404, U+5408, U+540C-540D, U+5411, U+542B, U+5473, U+548C, U+54C1, U+54E1, U+554F, U+55B6, U+56DB, U+56DE, U+56E3, U+56F2, U+56FA, U+56FD, U+5703, U+5712, U+571F, U+5728, U+5730, U+578B, U+57CE, U+57F9, U+5834, U+5857, U+5897, U+58CC, U+58F2, U+5909, U+5916, U+591A, U+5927, U+5929, U+59A8, U+59CB, U+5B50, U+5B63, U+5B66, U+5B88-5B89, U+5B9A, U+5B9F, U+5BB3, U+5BB6, U+5BB9, U+5BFE, U+5C0E, U+5C11, U+5CF6, U+5DDE, U+5DE1, U+5DE5-5DE6, U+5E03, U+5E38, U+5E45, U+5E74, U+5E83, U+5EA6, U+5F0F, U+5F15, U+5F37, U+5F62, U+5F79, U+5F8C, U+5F93, U+5FB4, U+5FC5, U+5FCC, U+5FDC, U+5FF5, U+601D, U+6027, U+60F3, U+610F, U+611F, U+6163, U+61D0, U+61F8, U+6210, U+6240, U+6280, U+6291, U+62C5, U+62E0, U+6301, U+6398, U+63A5, U+63C3, U+63D0, U+63EE, U+64AD, U+653E, U+6570, U+6574, U+6587, U+6599, U+65B0, U+65B9, U+65BD, U+65E5, U+660E, U+6613, U+6625, U+6642, U+666F, U+6708, U+671F, U+672A-672C, U+6750, U+6761, U+6765, U+6771, U+679C, U+682A, U+6838, U+683C-683D, U+68B0, U+68C4, U+690D, U+696D, U+6982, U+69D8, U+6A19, U+6A5F, U+6B62, U+6B69, U+6BD4, U+6C17, U+6C34, U+6C96, U+6CA1, U+6D77, U+6DF1, U+6DFA, U+6E5B, U+6E7F, U+6E96, U+6E9D, U+6F0F, U+6FE1, U+70B9, U+7121, U+7167, U+71E5, U+7279, U+727D, U+72B6, U+7387, U+7389, U+73FE, U+7406, U+751F, U+7528, U+7530, U+753B, U+754C, U+755D, U+7566, U+756A, U+7570, U+767A, U+7684, U+76EE, U+76F4, U+7701, U+7740, U+77E5, U+77ED, U+7814, U+7834, U+793E, U+79C1, U+79FB, U+7A0B, U+7A2E, U+7A76, U+7ACB, U+7B11, U+7B49, U+7B56, U+7B87, U+7BA1, U+7BC4, U+7C73, U+7D04, U+7D20, U+7D39, U+7D4C, U+7D50, U+7DE0, U+7E04, U+7E2E, U+7E3E, U+7E4B, U+7E70, U+7F6E, U+7F8E, U+8003, U+8010, U+8015, U+80B2, U+80FD, U+81EA, U+8208, U+822C, U+826F, U+8272, U+82E6, U+8349, U+884C, U+8853, U+8868, U+88C5, U+88FD, U+8981, U+898B, U+899A, U+8A08, U+8A3C, U+8A66, U+8A70-8A71, U+8AAD, U+8ABF, U+8C46, U+8CA0, U+8CA9, U+8CC7, U+8CEA, U+8D70, U+8D85, U+8ECA, U+8EE2, U+8EF8, U+8EFD, U+8F2A, U+8FB2, U+8FBC, U+8FCE, U+9003, U+901A, U+901F-9020, U+9032, U+9054, U+905C, U+9069, U+907F, U+90E8, U+90FD, U+9178, U+91CD-91CF, U+91D1, U+958B, U+9593, U+95A2, U+9632, U+963B, U+964D, U+9650, U+9664, U+96C6, U+96D1, U+96E2-96E3, U+96E8, U+96FB, U+9762, U+9803, U+9805, U+9808, U+983C, U+9858, U+98A8, U+98DF, U+99AC, U+9A13, U+9A30, U+9AD8, U+9BAE, U+9CE5, U+9EA6, U+FF01-FF5E, U+FF64, U+FFE3, U+FFE5;
}
@layer reset {
  :where(html, body, header, nav, main, section, article, aside, footer, div, p, h1, h2, h3, h4,
  ul, ol, li, dl, dt, dd, figure, figcaption, address, form, fieldset, label, input, textarea,
  button, a, span, time, small, img, svg) {
    box-sizing: border-box;
  }
  :where(html, body, header, nav, main, section, article, aside, footer, div, p, h1, h2, h3, h4,
  ul, ol, li, dl, dt, dd, figure, figcaption, address, form, fieldset, label, input, textarea,
  button, a, span, time, small, img, svg)::before, :where(html, body, header, nav, main, section, article, aside, footer, div, p, h1, h2, h3, h4,
  ul, ol, li, dl, dt, dd, figure, figcaption, address, form, fieldset, label, input, textarea,
  button, a, span, time, small, img, svg)::after {
    box-sizing: border-box;
  }
  :where(body) {
    margin: 0;
  }
  :where(h1, h2, h3, h4, p, ul, ol, dl, dd, figure, address) {
    margin: 0;
    padding: 0;
  }
  :where(ul, ol) {
    list-style: none;
  }
  :where(address) {
    font-style: normal;
  }
  :where(picture) {
    display: block;
  }
  :where(img, svg) {
    display: block;
    max-width: 100%;
    height: auto;
  }
  :where(a) {
    color: inherit;
    text-decoration: none;
  }
  :where(button) {
    font: inherit;
    color: inherit;
  }
  :where([hidden]) {
    display: none !important;
  }
}
@layer base {
  :root {
    --color-key: #005d9c;
    --color-key-hover: #004988;
    --color-light: #edf4f8;
    --color-green: #46ad44;
    --color-green-hover: #31a42f;
    --color-text: #281e1d;
    --color-error: #d90012;
    --color-gray: #9e9e9f;
    --color-border: #dfdddd;
    --color-border-light: #d9e7f0;
    --color-white: #fff;
    --color-input-border: #4c8eba;
    --color-legend-trial: #f0c400;
    --color-legend-demo: #00a63c;
    --font-base: 'IBM Plex Sans JP', sans-serif;
    --duration: 0.2s;
    --header-height: 80px;
  }
  html {
    scroll-behavior: smooth;
    scroll-padding-top: var(--header-height);
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
  }
  html.is-menu-open {
    overflow: hidden;
  }
  @media (prefers-reduced-motion: reduce) {
    html {
      scroll-behavior: auto;
    }
  }
  body {
    display: flex;
    flex-direction: column;
    min-height: 100svh;
    font-family: var(--font-base);
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.6;
    color: var(--color-text);
    background-color: var(--color-white);
    font-feature-settings: "halt";
    letter-spacing: 0.025em;
  }
  .main {
    flex: 1 0 auto;
  }
  .site-header,
  .site-footer {
    flex-shrink: 0;
  }
  :where(h1, h2, h3, h4) {
    font-weight: 500;
    letter-spacing: 0;
    text-wrap: balance;
  }
  :focus-visible {
    outline: 2px solid var(--color-key);
    outline-offset: 2px;
  }
  .main:focus {
    outline: 0;
  }
  .screen-reader-text {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
    border: 0;
  }
  .skip-link {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 200;
    padding: 8px 16px;
    color: var(--color-white);
    background-color: var(--color-key);
    transform: translateY(-120%);
    transition: transform var(--duration);
  }
  .skip-link:focus {
    transform: none;
  }
  .br-pc {
    display: none;
  }
  @media (min-width: 1280px) {
    .br-sp {
      display: none;
    }
    .br-pc {
      display: inline;
    }
    body {
      letter-spacing: 0;
    }
  }
  @media (min-width: 768px) and (max-width: 1279px) {
    html {
      background-color: var(--color-border-light);
    }
    body {
      max-width: 480px;
      margin-inline: auto;
    }
  }
}
@layer components {
  .button {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 60px;
    margin-inline: auto;
    padding: 0;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1;
    color: var(--color-white);
    text-align: center;
    background-color: var(--color-green);
    border: 1px solid transparent;
    border-radius: 30px;
    cursor: pointer;
    transition: background-color var(--duration);
  }
  .button:disabled {
    cursor: default;
    opacity: 0.6;
  }
  @media (hover: hover) {
    .button:hover:not(:disabled) {
      background-color: var(--color-green-hover);
    }
  }
  .section-title {
    display: block;
    padding-bottom: 44px;
    font-size: 1.875rem;
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: 0.5em;
    color: var(--color-key);
    text-align: center;
    text-indent: 0.7em;
    background: url("assets/images/ill_title_ornament.svg") no-repeat center bottom/307px auto;
  }
  .box-title {
    display: flex;
    justify-content: center;
    gap: 20px;
    font-size: 1.5rem;
    font-weight: 500;
    line-height: 1;
    color: var(--color-key);
  }
  .box-title__box {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    background-color: var(--color-white);
  }
  .box-title__char {
    display: block;
    text-box-trim: trim-both;
    text-box-edge: cap alphabetic;
  }
  @supports not (text-box-trim: trim-both) {
    .box-title__char {
      padding-top: 4px;
    }
  }
  .site-header {
    position: sticky;
    top: 0;
    z-index: 100;
    height: var(--header-height);
    background-color: var(--color-white);
  }
  .site-header__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 100%;
    padding-inline: 20px 0;
  }
  .site-header__logo-link {
    display: block;
  }
  .menu-toggle {
    position: relative;
    z-index: 2;
    display: flex;
    flex: none;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 80px;
    height: 80px;
    padding: 0;
    background: none;
    border: 0;
    cursor: pointer;
  }
  .menu-toggle__bars {
    position: relative;
    width: 32px;
    height: 18px;
    color: var(--color-text);
    border-top: 2px solid;
    transform: translateY(8px);
    transition: transform var(--duration) ease-in, border-color var(--duration) ease-in;
  }
  .menu-toggle__bars::before, .menu-toggle__bars::after {
    position: absolute;
    top: -2px;
    right: 0;
    left: 0;
    content: "";
    border-top: 2px solid;
    transition: transform var(--duration) ease-in;
  }
  .menu-toggle__bars::before {
    transform: translateY(-8px);
  }
  .menu-toggle__bars::after {
    transform: translateY(8px);
  }
  .menu-toggle__label {
    font-size: 0.75rem;
    font-weight: 700;
    line-height: 1;
    text-align: center;
  }
  .global-menu {
    position: fixed;
    inset: var(--header-height) 0 0;
    padding: 40px 44px 0;
    overflow-y: auto;
    visibility: hidden;
    background-color: var(--color-white);
    opacity: 0;
    transition: opacity var(--duration), visibility var(--duration);
  }
  .global-menu__list {
    margin-bottom: 52px;
  }
  .global-menu__link {
    display: flex;
    align-items: center;
    height: 48px;
    transition: color var(--duration);
  }
  .global-menu__link[aria-current] {
    color: var(--color-key);
  }
  @media (hover: hover) {
    .global-menu__link:hover {
      color: var(--color-key);
    }
  }
  .global-menu__contact {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 220px;
    height: 80px;
    margin-inline: auto;
    font-weight: 700;
    color: var(--color-white);
    background-color: var(--color-key);
    transition: background-color var(--duration);
  }
  @media (hover: hover) {
    .global-menu__contact:hover {
      background-color: var(--color-key-hover);
    }
  }
  .is-menu-open .global-menu {
    visibility: visible;
    opacity: 1;
  }
  .is-menu-open .menu-toggle__bars {
    border-top-color: transparent;
  }
  .is-menu-open .menu-toggle__bars::before {
    transform: translateY(0) rotate(45deg);
  }
  .is-menu-open .menu-toggle__bars::after {
    transform: translateY(0) rotate(-45deg);
  }
  @media (min-width: 1280px) {
    .site-header__inner {
      padding-inline: 100px 0;
    }
    .menu-toggle {
      display: none;
    }
    .global-menu {
      position: static;
      display: flex;
      align-items: center;
      margin-left: auto;
      padding: 0;
      overflow: visible;
      visibility: visible;
      background: none;
      opacity: 1;
    }
    .global-menu__list {
      display: flex;
      gap: 48px;
      margin: 0 40px 0 0;
    }
    .global-menu__link {
      height: auto;
      padding-top: 4px;
      font-weight: 500;
    }
    .global-menu__contact {
      margin: 0;
    }
  }
  @media (min-width: 768px) and (max-width: 1279px) {
    .global-menu {
      inset: var(--header-height) calc(50% - 240px) 0;
    }
  }
  .site-footer {
    color: var(--color-white);
    text-align: center;
    background-color: var(--color-key);
  }
  .site-footer__inner {
    padding: 72px 20px 60px;
  }
  .site-footer__logo {
    margin-bottom: 28px;
  }
  .site-footer__logo img {
    margin-inline: auto;
  }
  .site-footer__name {
    margin-bottom: 8px;
    font-size: 1rem;
    font-weight: 700;
    text-align: center;
  }
  .site-footer__address {
    margin-bottom: 32px;
    font-size: 0.875rem;
    line-height: 1.5;
    text-align: center;
  }
  .site-footer__tel {
    display: inline-block;
  }
  .site-footer__tel + .site-footer__tel {
    margin-left: 8px;
  }
  .site-footer__copyright {
    font-size: 0.8125rem;
    text-align: center;
  }
}
@layer pages {
  .hero {
    position: relative;
    background-color: var(--color-light);
  }
  .hero__photo {
    width: 100%;
    height: 420px;
    object-fit: cover;
    border-bottom-left-radius: 60px;
  }
  .hero__title {
    position: absolute;
    top: 31px;
    left: 40px;
    font-size: 2.5rem;
    font-weight: 500;
    line-height: 1.5;
    color: var(--color-white);
  }
  .hero__line {
    display: block;
  }
  .product {
    padding-bottom: 64px;
    background: url("../../../../images/home/ill_machine_sp.svg") no-repeat center top/100% auto, var(--color-light);
  }
  .product__head {
    padding-top: 52px;
    padding-inline: 20px;
  }
  .product__lead {
    margin-top: 40px;
    font-size: 1.8125rem;
    font-weight: 500;
    line-height: 1.3;
    text-align: center;
  }
  .uune {
    margin-top: 40px;
  }
  .uune__photo {
    width: 100%;
    height: auto;
  }
  .uune__body {
    padding: 20px 20px 0;
  }
  .uune__label {
    display: block;
    font-size: 1.625rem;
    font-weight: 500;
    line-height: 1.4;
    color: var(--color-key);
  }
  .uune__name {
    display: flex;
    align-items: center;
    gap: 4px;
    margin-left: -2px;
    font-size: 4.375rem;
    font-weight: 700;
    line-height: 1;
    color: var(--color-key);
  }
  .uune__reading {
    position: relative;
    top: -4px;
    margin-left: -1px;
    font-size: 1.25rem;
    font-weight: 500;
  }
  .uune__catch {
    margin-top: 12px;
    font-size: 1.25rem;
    font-weight: 500;
    line-height: 1.4;
  }
  .uune__text {
    margin-top: 12px;
  }
  .uune__photos {
    display: flex;
    gap: 10px;
    margin-top: 12px;
  }
  .uune__detail {
    flex: 1;
    min-width: 0;
    height: auto;
  }
  .merit {
    padding: 0 20px;
    margin-top: 40px;
  }
  .merit__title {
    position: relative;
    padding-block: 24px 28px;
    font-size: 1.8125rem;
    font-weight: 500;
    line-height: 1.4;
    color: var(--color-key);
    text-align: center;
    text-box-trim: trim-both;
    text-box-edge: cap alphabetic;
  }
  .merit__title::before, .merit__title::after {
    position: absolute;
    right: 0;
    left: 0;
    content: "";
    background-position: center top;
    background-repeat: no-repeat;
  }
  .merit__title::before {
    top: 0;
    height: 2px;
    background-image: url("assets/images/ill_speech_upperline.svg");
  }
  .merit__title::after {
    bottom: 0;
    height: 11px;
    background-image: url("assets/images/ill_speech_underline.svg");
  }
  .merit__list {
    margin-top: 32px;
  }
  .merit__item + .merit__item {
    margin-top: 32px;
  }
  .merit__point {
    display: flex;
    margin-inline: auto;
    padding-top: 1px;
    align-items: center;
    justify-content: center;
    width: 120px;
    height: 30px;
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1;
    color: var(--color-white);
    text-box-trim: trim-both;
    text-box-edge: cap alphabetic;
    background-color: var(--color-key);
    border-radius: 15px;
  }
  .merit__name {
    margin-top: 16px;
    font-size: 1.5rem;
    font-weight: 500;
    line-height: 1.4;
    text-align: center;
    text-box-trim: trim-both;
    text-box-edge: cap alphabetic;
  }
  .merit__text {
    margin-top: 8px;
  }
  .feature {
    padding-top: 56px;
  }
  .feature__lead, .feature__list {
    padding-inline: 20px;
  }
  .feature__lead {
    margin-top: 28px;
    font-size: 1.25rem;
    font-weight: 500;
    line-height: 1.4;
  }
  .feature__list {
    margin-top: 24px;
  }
  .feature__item {
    display: grid;
    grid-template-columns: 24px 1fr;
    column-gap: 8px;
    row-gap: 4px;
    align-items: center;
  }
  .feature__item + .feature__item {
    margin-top: 16px;
  }
  .feature__name {
    font-size: 1.5rem;
    font-weight: 500;
    line-height: 1.4;
    text-box-trim: trim-both;
    text-box-edge: cap alphabetic;
  }
  .feature__text {
    grid-column: 2;
  }
  .feature__visual {
    position: relative;
    margin-top: 24px;
  }
  .feature__photo {
    width: 100%;
    height: auto;
  }
  .feature__badge {
    position: absolute;
    bottom: 26px;
    left: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 110px;
    height: 110px;
    font-size: 1.125rem;
    font-weight: 500;
    line-height: 1.3;
    color: var(--color-white);
    text-align: center;
    background-color: var(--color-key);
    border-radius: 50%;
  }
  .spec {
    padding-inline: 20px;
    margin-top: 16px;
  }
  .spec__title {
    font-size: 1.125rem;
    font-weight: 500;
    line-height: 1.4;
  }
  .spec__list {
    margin-top: 12px;
    font-size: 0.875rem;
    line-height: 1.7;
  }
  .spec__note {
    margin-top: 4px;
    font-size: 0.71875rem;
  }
  .spec__visual {
    position: relative;
    height: 190px;
    margin-top: 16px;
  }
  .spec__photo {
    position: absolute;
    top: -76px;
    left: -12px;
    width: 328px;
    height: auto;
    max-width: none;
    pointer-events: none;
  }
  .spec__tractor {
    width: 100%;
    height: auto;
    margin-top: 12px;
  }
  .field {
    padding-inline: 20px;
  }
  .field__card {
    display: flow-root;
    background-color: var(--color-white);
  }
  .field__body {
    padding: 28px 30px 0;
  }
  .field__title {
    font-size: 1.5rem;
    font-weight: 500;
    line-height: 1.4;
    color: var(--color-key);
  }
  .field__text {
    margin-top: 4px;
  }
  .field__rice {
    width: calc(100% - 60px);
    height: auto;
    margin: 12px 30px 32px;
  }
  .results {
    padding-top: 68px;
  }
  .results__lead, .results__count, .results__text, .results__map {
    padding-inline: 20px;
  }
  .results__lead, .results__count {
    font-size: 1.125rem;
    font-weight: 500;
    line-height: 1.4;
  }
  .results__lead {
    margin-top: 32px;
    line-height: 1.2;
  }
  .results__count {
    margin-top: 12px;
  }
  .results__count-note {
    display: block;
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 1.6;
  }
  .results__text {
    margin-top: 24px;
  }
  .results__map {
    position: relative;
    margin-top: -4px;
  }
  .results__legend {
    position: absolute;
    top: 36px;
    left: 22px;
    display: grid;
    gap: 4px;
    font-size: 0.75rem;
    line-height: 1.5;
  }
  .results__legend-item {
    display: flex;
    align-items: center;
    gap: 12px;
  }
  .results__legend-item::before {
    width: 20px;
    height: 10px;
    content: "";
  }
  .results__legend-item--trial::before {
    background-color: var(--color-legend-trial);
  }
  .results__legend-item--demo::before {
    background-color: var(--color-legend-demo);
  }
  .results__map-img {
    width: 100%;
    height: auto;
  }
  .results__photos {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-top: 40px;
  }
  .results__photo {
    width: 100%;
    height: auto;
  }
  .results__photo-wide {
    width: 100%;
    height: auto;
    margin-top: 10px;
  }
  .faq {
    position: relative;
    padding: 88px 20px 64px;
  }
  .faq::before {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 32px;
    content: "";
    background: url("assets/images/bg_gear_sp.svg") no-repeat center top/1280px 32px;
  }
  .faq__list {
    margin-top: 44px;
  }
  .faq__item + .faq__item {
    margin-top: 32px;
  }
  .faq__q, .faq__a {
    display: grid;
    grid-template-columns: 27px 1fr;
    column-gap: 20px;
  }
  .faq__q {
    align-items: center;
    min-height: 40px;
  }
  .faq__a {
    margin-top: 12px;
    margin-left: 0;
  }
  .faq__mark {
    font-size: 2.5rem;
    font-weight: 700;
    line-height: 1;
  }
  .faq__mark--q {
    color: var(--color-gray);
  }
  .faq__mark--a {
    color: var(--color-key);
  }
  .faq__q-text {
    font-size: 1.125rem;
    font-weight: 700;
  }
  .faq__a-text {
    line-height: 1.6;
    letter-spacing: 0;
  }
  .faq__a-text p {
    margin: 0;
  }
  .company {
    padding: 56px 20px 52px;
  }
  .message {
    margin-top: 64px;
  }
  .message__title {
    font-size: 1.25rem;
    font-weight: 500;
    line-height: 1.4;
  }
  .message__body {
    margin-top: 12px;
    font-feature-settings: normal;
    line-height: 1.6;
    letter-spacing: 0.01em;
    text-spacing-trim: trim-both;
  }
  .message__body p + p {
    margin-top: 24px;
  }
  .profile {
    margin-top: 44px;
    font-size: 0.875rem;
    line-height: 1.4;
  }
  .profile__row {
    display: grid;
    grid-template-columns: 97px 1fr;
    padding-block: 4px;
  }
  .president {
    width: 240px;
    max-width: 100%;
    margin: 56px auto 0;
  }
  .president__caption {
    display: block;
    margin-top: 16px;
    text-align: left;
  }
  .president__role {
    display: block;
    font-size: 0.875rem;
  }
  .president__name {
    display: block;
    font-size: 1.5rem;
  }
  @media (min-width: 1280px) {
    .hero__photo {
      height: 540px;
      border-bottom-left-radius: 300px;
    }
    .hero__title {
      top: 108px;
      left: 62%;
      font-size: 3.75rem;
      line-height: 1.8;
    }
    .product {
      padding-bottom: 96px;
      background: url("../../../../images/home/ill_machine_pc.svg") no-repeat center top/100% auto, var(--color-light);
    }
    .product__head {
      padding-top: 76px;
    }
    .product__lead {
      margin-top: 48px;
      font-size: 2.25rem;
      line-height: 1.4;
    }
    .uune {
      display: grid;
      grid-template-columns: 400px 660px;
      column-gap: 40px;
      width: 1100px;
      margin: 48px auto 0;
    }
    .uune__photo {
      grid-column: 2;
      grid-row: 1;
    }
    .uune__body {
      grid-column: 1;
      grid-row: 1;
      padding: 0;
    }
    .uune__catch {
      margin-top: 8px;
    }
    .uune__photos {
      width: 290px;
    }
    .merit {
      width: 1100px;
      margin: 80px auto 0;
      padding: 0;
    }
    .merit__title {
      width: 602px;
      margin-inline: auto;
      padding-block: 24px 28px;
    }
    .merit__list {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      column-gap: 48px;
      row-gap: 32px;
      width: 1050px;
      margin: 36px 0 0 50px;
    }
    .merit__item {
      display: grid;
      grid-template-columns: 120px 1fr;
      column-gap: 20px;
      align-items: center;
    }
    .merit__item + .merit__item {
      margin-top: 0;
    }
    .merit__point {
      margin-inline: 0;
    }
    .merit__name {
      margin-top: 0;
      text-align: left;
    }
    .merit__text {
      grid-column: 1/-1;
      margin-top: 12px;
    }
    .feature {
      display: grid;
      grid-template-areas: "heading heading" "visual lead" "visual list";
      grid-template-columns: 520px 540px;
      grid-template-rows: auto auto 1fr;
      column-gap: 40px;
      width: 1100px;
      margin: 80px auto 0;
      padding: 0;
    }
    .feature__heading {
      grid-area: heading;
      margin-bottom: 40px;
    }
    .feature__lead {
      grid-area: lead;
      margin: 0;
      padding: 0;
    }
    .feature__list {
      grid-area: list;
      margin-top: 32px;
      padding: 0;
    }
    .feature__item + .feature__item {
      margin-top: 12px;
    }
    .feature__visual {
      grid-area: visual;
      margin: 0;
    }
    .feature__badge {
      bottom: 20px;
      left: 20px;
      width: 160px;
      height: 160px;
      font-size: 1.5rem;
      line-height: 1.4;
    }
    .spec {
      position: relative;
      width: 1100px;
      margin: 36px auto 0;
      padding: 0;
    }
    .spec__list {
      width: 338px;
      margin-top: 12px;
      column-gap: 0;
      columns: 2;
    }
    .spec__item {
      white-space: nowrap;
    }
    .spec__note {
      margin: -24px 0 0 169px;
    }
    .spec__visual {
      position: static;
      height: 0;
      margin: 0;
    }
    .spec__photo {
      top: -232px;
      left: 520px;
      z-index: 1;
      width: 557px;
    }
    .spec__tractor {
      position: absolute;
      top: 44px;
      left: 476px;
      width: 240px;
      margin: 0;
    }
    .field {
      width: 1100px;
      margin: 60px auto 0;
      padding: 0;
    }
    .field__card {
      display: grid;
      grid-template-columns: 420px 680px;
    }
    .field__body {
      padding: 32px 40px 0;
    }
    .field__rice {
      width: 680px;
      height: 200px;
      margin: 0;
      object-fit: cover;
    }
  }
  @media (min-width: 1280px) {
    .results {
      display: grid;
      grid-template-columns: 550px 520px;
      column-gap: 35px;
      width: 1105px;
      margin: 80px 0 0 calc(50% - 550px);
      padding-top: 0;
    }
    .results__heading {
      grid-column: 1/-1;
      margin: 0 8px 56px 0;
    }
    .results__info {
      position: relative;
      min-height: 436px;
    }
    .results__lead, .results__count, .results__text {
      position: relative;
      z-index: 1;
      padding-inline: 0;
    }
    .results__lead {
      margin-top: 0;
    }
    .results__text {
      max-width: 300px;
    }
    .results__map {
      position: absolute;
      top: 0;
      left: 0;
      width: 550px;
      margin: 0;
      padding: 0;
    }
    .results__legend {
      top: 232px;
      left: 0;
    }
    .results__photos {
      margin-top: 0;
    }
    .faq {
      padding: 140px 0 72px;
    }
    .faq::before {
      height: 64px;
      background: url("assets/images/bg_gear_pc.svg") no-repeat center top/1920px 64px;
    }
    .faq__list {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      column-gap: 80px;
      row-gap: 32px;
      width: 1100px;
      margin: 64px auto 0;
    }
    .faq__item + .faq__item {
      margin-top: 0;
    }
    .company {
      padding: 76px 0 80px;
    }
    .company__inner {
      display: grid;
      grid-template-areas: "heading heading" "president message" "president profile";
      grid-template-columns: 240px 500px;
      grid-template-rows: auto auto 1fr;
      column-gap: 60px;
      justify-content: center;
    }
    .company .section-title {
      grid-area: heading;
    }
    .company .message {
      grid-area: message;
      margin-top: 60px;
    }
    .company .profile {
      grid-area: profile;
    }
    .company .president {
      grid-area: president;
      margin: 60px 0 0;
    }
  }
  .news {
    padding: 64px 20px 60px;
    background-color: var(--color-light);
  }
  .news__card {
    background-color: var(--color-white);
  }
  .news__head {
    padding-top: 56px;
  }
  .news__body {
    padding: 0 30px 60px;
  }
  .news__more {
    margin-top: 60px;
  }
  .news__empty {
    margin-top: 24px;
    text-align: center;
  }
  .news-list {
    margin-top: 40px;
  }
  .news-list__item {
    border-bottom: 1px solid var(--color-border);
  }
  .news-list__item:first-child {
    border-top: 1px solid var(--color-border);
  }
  .news-list__link {
    display: block;
    padding-block: 28px 24px;
    transition: color var(--duration);
  }
  @media (hover: hover) {
    .news-list__link:hover {
      color: var(--color-key);
    }
  }
  .news-list__date {
    display: block;
    font-size: 0.875rem;
    line-height: 1.6;
  }
  .news-list__title {
    display: block;
    margin-top: 4px;
    font-size: 1.125rem;
    line-height: 1.4;
  }
  @media (min-width: 1280px) {
    .news {
      padding: 84px 0 80px;
    }
    .news__card {
      width: 1100px;
      margin-inline: auto;
    }
    .news__head {
      padding-top: 76px;
    }
    .news__body {
      padding: 0 80px 80px;
    }
    .news__more {
      width: 300px;
    }
    .news-list {
      margin-top: 56px;
    }
    .news-list__link {
      display: grid;
      grid-template-columns: 177px 1fr 10px;
      align-items: center;
      height: 100px;
      padding-block: 0;
      padding-right: 20px;
    }
    .news-list__link::after {
      width: 10px;
      height: 18px;
      content: "";
      background: url("assets/images/arrow_right.svg") no-repeat center/contain;
    }
    .news-list__title {
      margin-top: 0;
    }
  }
  .main--single {
    padding: 60px 20px 80px;
    font-weight: 500;
    background-color: var(--color-light);
  }
  .post-detail__card {
    padding: 20px 30px 40px;
    background-color: var(--color-white);
  }
  .post-detail {
    /*
        &__header {
            display: flex;
            justify-content: space-between;
            align-items: flex-start;
            gap: 16px;
        }
    */
  }
  .post-detail__title {
    flex: 1;
    min-width: 0;
    border-block: 1px solid var(--color-border);
    padding-block: 28px 24px;
    font-size: 1.25rem;
    font-weight: 500;
    line-height: 1.4;
    font-feature-settings: normal;
  }
  .post-detail__date {
    flex: none;
    margin-bottom: 8px;
    font-size: 0.8125rem;
    font-weight: 400;
    text-align: right;
    white-space: nowrap;
  }
  .post-detail__content {
    margin-top: 12px;
    font-weight: 400;
    font-feature-settings: normal;
    text-spacing-trim: trim-both;
  }
  .post-detail__content p {
    line-height: 1.6;
  }
  .post-detail__content p + p,
  .post-detail__content figure + p,
  .post-detail__content p + figure {
    margin-top: 32px;
  }
  .post-detail__content p + figure {
    margin-top: 32px;
  }
  .post-detail__content figure img {
    width: 100%;
  }
  .post-detail__content figcaption {
    margin-top: 8px;
    font-size: 0.75rem;
    line-height: 1.6;
  }
  .post-detail__content h2,
  .post-detail__content h3,
  .post-detail__content h4 {
    margin-top: 40px;
    line-height: 1.5;
  }
  .post-detail__content ul,
  .post-detail__content ol {
    margin-top: 24px;
    padding-left: 1.5em;
    list-style: revert;
  }
  .post-detail__content a {
    text-decoration: underline;
  }
  .post-detail__content .aligncenter {
    margin-inline: auto;
  }
  .post-detail__content .alignleft {
    float: left;
    margin: 0 16px 16px 0;
  }
  .post-detail__content .alignright {
    float: right;
    margin: 0 0 16px 16px;
  }
  .single-nav {
    margin-top: 40px;
  }
  .single-nav__item {
    font-size: 0.8125rem;
    font-weight: 400;
    line-height: 1.6;
  }
  .single-nav__item + .single-nav__item {
    margin-top: 16px;
  }
  .single-nav__item a {
    text-decoration: underline dotted;
    text-decoration-thickness: 1px;
    text-underline-offset: 6px;
    transition: color var(--duration);
  }
  @media (hover: hover) {
    .single-nav__item a:hover {
      color: var(--color-key);
    }
  }
  .latest {
    margin-top: 60px;
  }
  .latest__title {
    font-size: 0.8125rem;
  }
  .latest__list {
    margin-top: 12px;
  }
  .latest__item {
    border-bottom: 1px solid var(--color-border-light);
    padding-top: 2px;
  }
  .latest__item:first-child {
    border-top: 1px solid var(--color-border-light);
  }
  .latest__link {
    display: flex;
    align-items: center;
    height: 59px;
    font-size: 0.8125rem;
    font-weight: 400;
    transition: color var(--duration);
  }
  @media (hover: hover) {
    .latest__link:hover {
      color: var(--color-key);
    }
  }
  @media (min-width: 1280px) {
    .main--single {
      padding: 60px 0 100px;
    }
    .post-detail {
      display: grid;
      grid-template-columns: 800px 260px;
      column-gap: 40px;
      align-items: start;
      width: 1100px;
      margin-inline: auto;
    }
    .post-detail__card {
      min-height: 400px;
      padding: 30px 60px 60px;
    }
    .post-detail__content {
      margin-top: 48px;
    }
    .latest {
      margin-top: 0;
    }
  }
}
@layer plugins {
  .contact {
    padding: 60px 20px 60px;
    background-color: var(--color-light);
  }
  .contact__lead {
    margin-top: 40px;
    font-feature-settings: normal;
  }
  .contact__note {
    margin-top: 4px;
    font-size: 0.75rem;
    line-height: 1.5;
  }
  .wpcf7 {
    margin-top: 36px;
  }
  .wpcf7 form {
    position: relative;
  }
  .contact-form__field + .contact-form__field {
    margin-top: 36px;
  }
  .contact-form__label {
    display: block;
    margin-bottom: 4px;
  }
  .contact-form__req {
    font-size: 0.625rem;
    vertical-align: top;
    color: var(--color-text);
  }
  .contact-form__submit {
    margin-top: 60px;
    padding-inline: 10px;
    text-align: center;
  }
  .wpcf7-form-control-wrap {
    display: block;
  }
  .wpcf7-text,
  .wpcf7-email,
  .wpcf7-tel,
  .wpcf7-textarea {
    display: block;
    width: 100%;
    padding: 0 16px;
    font: inherit;
    color: var(--color-text);
    background-color: var(--color-white);
    border: 1px solid var(--color-input-border);
    border-radius: 10px;
    transition: border-color var(--duration);
  }
  .wpcf7-text:focus-visible,
  .wpcf7-email:focus-visible,
  .wpcf7-tel:focus-visible,
  .wpcf7-textarea:focus-visible {
    border-color: var(--color-key);
  }
  .wpcf7-text,
  .wpcf7-email,
  .wpcf7-tel {
    height: 60px;
  }
  .wpcf7-textarea {
    height: 300px;
    padding-block: 16px;
    resize: vertical;
  }
  .wpcf7-not-valid-tip {
    display: block;
    margin-top: 4px;
    font-size: 0.875rem;
    color: var(--color-error);
  }
  .wpcf7 .hidden-fields-container {
    display: none;
  }
  .wpcf7 .screen-reader-response {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
  }
  .contact-form__submit {
    position: relative;
  }
  .wpcf7-spinner {
    position: absolute;
    top: calc(100% + 12px);
    left: 50%;
    display: none;
    width: 28px;
    height: 28px;
    margin: 0;
    border: 3px solid var(--color-input-border);
    border-top-color: var(--color-key);
    border-radius: 50%;
    transform: translateX(-50%);
    animation: spinner 0.8s linear infinite;
  }
  .wpcf7 form.submitting .wpcf7-spinner {
    display: block;
  }
  @keyframes spinner {
    to {
      transform: translateX(-50%) rotate(360deg);
    }
  }
  .wpcf7 form.init .wpcf7-response-output,
  .wpcf7 form.resetting .wpcf7-response-output,
  .wpcf7 form.submitting .wpcf7-response-output {
    display: none;
  }
  .wpcf7 form .wpcf7-response-output {
    width: 100%;
    margin: 32px 0 0;
    padding: 40px;
    font-size: 1rem;
    color: var(--color-text);
    background-color: var(--color-white);
    border: 0;
    border-radius: 20px;
  }
  .wpcf7 form.sent .wpcf7-response-output {
    color: var(--color-green);
  }
  .wpcf7 form.invalid .wpcf7-response-output,
  .wpcf7 form.unaccepted .wpcf7-response-output,
  .wpcf7 form.failed .wpcf7-response-output,
  .wpcf7 form.aborted .wpcf7-response-output,
  .wpcf7 form.spam .wpcf7-response-output {
    color: var(--color-error);
  }
  @media (min-width: 1280px) {
    .contact {
      padding: 76px 0 80px;
    }
    .contact__inner {
      width: 800px;
      margin-inline: auto;
    }
    .contact__lead, .contact__note {
      text-align: center;
    }
    .contact-form__submit {
      width: 300px;
      margin-inline: auto;
      padding-inline: 0;
    }
  }
}
