/* make_fonts.py が生成。手で編集しない。 */
@font-face{font-family:'Noto Sans JP';font-style:normal;font-weight:400;font-display:block;src:url('../fonts/noto-sans-jp-400.woff2') format('woff2');unicode-range:U+0020-007E,U+00A7,U+00A9,U+00AE,U+00B0-00B1,U+00B6,U+00D7,U+00F7,U+2014,U+2190-2194,U+2197-2198,U+21C4,U+21C6,U+25A0-25A1,U+25B2-25B3,U+25BC-25BD,U+25C6-25C7,U+25CB,U+25CE-25CF,U+2605-2606,U+3000-30FE,U+4E00-4E01,U+4E07,U+4E09-4E0B,U+4E0D-4E0E,U+4E16,U+4E21,U+4E26,U+4E2D,U+4E3B,U+4E4F,U+4E57,U+4E5D,U+4E86,U+4E88-4E89,U+4E8B-4E8C,U+4E92,U+4E95,U+4EA4,U+4EAC,U+4EBA,U+4ECA-4ECB,U+4ED5-4ED6,U+4ED8,U+4EE3-4EE5,U+4EEE,U+4EF2,U+4EF6,U+4EFB,U+4F01,U+4F11,U+4F1A,U+4F1D,U+4F3A,U+4F4D-4F4F,U+4F53,U+4F55,U+4F59,U+4F7F,U+4F9B,U+4F9D,U+4FA1,U+4FBF,U+4FC2-4FC3,U+4FDD,U+4FE1,U+4FEE,U+500B,U+5024,U+505C,U+5065,U+5074,U+5091,U+5099,U+50CD,U+50CF,U+512A,U+5143,U+5145,U+5148-5149,U+5150,U+5165,U+5168,U+516B-516C,U+5171,U+5177,U+517C,U+5185-5186,U+518D,U+51E6,U+51FA,U+5206-5207,U+521D,U+5224-5225,U+5229,U+5236-5237,U+5247,U+524A,U+524D,U+5272,U+5275,U+529B,U+529F-52A0,U+52A9-52AA,U+52B4,U+52B9,U+52D5,U+52D9,U+52DD,U+52DF,U+52E4,U+5316-5317,U+533A,U+5341,U+5352,U+5354,U+5358,U+5370,U+5373-5374,U+539A,U+539F,U+53B3,U+53BB,U+53C2,U+53CA,U+53CD-53CE,U+53D6-53D7,U+53E3,U+53EF,U+53F7,U+5404,U+5408,U+540C-540D,U+5411,U+5426,U+542B,U+5438,U+544A,U+5468,U+5473,U+547D,U+54C1,U+54E1,U+5546,U+554F,U+5584,U+55B6,U+5668,U+56DE,U+56E3,U+56F0,U+56F2-56F3,U+56FD,U+570F,U+571F,U+5728,U+5730,U+57CB,U+57DF,U+57F9-57FA,U+5800,U+5805,U+5831,U+5834,U+5883,U+5897,U+58EB,U+58F2,U+5909,U+590F,U+5916,U+591A,U+5927,U+592E,U+5931,U+5951,U+596A,U+597D,U+59CB,U+59D4,U+5A92,U+5B09,U+5B50,U+5B57-5B58,U+5B63,U+5B66,U+5B85,U+5B88-5B89,U+5B8C,U+5B9A-5B9B,U+5B9D,U+5B9F,U+5BA2,U+5BB3,U+5BB6,U+5BB9,U+5BC4,U+5BC6,U+5BCC,U+5BFE,U+5C02,U+5C06,U+5C0E-5C0F,U+5C31,U+5C45,U+5C4A,U+5C55,U+5C5E,U+5C65,U+5CA1,U+5D0E,U+5DDE,U+5DE5,U+5DF1,U+5DFB,U+5E02,U+5E0C,U+5E2B,U+5E2D,U+5E33,U+5E38,U+5E45,U+5E73-5E74,U+5E79,U+5E83,U+5E97,U+5EA6,U+5EAD,U+5EB7,U+5EC3,U+5F0F,U+5F15,U+5F35,U+5F37,U+5F53,U+5F62,U+5F69,U+5F71,U+5F79,U+5F85,U+5F8B-5F8C,U+5F92-5F93,U+5F97,U+5FA1,U+5FAA,U+5FC3,U+5FC5,U+5FDC,U+5FF5,U+601D,U+6020,U+6025,U+6027,U+60A9,U+60C5,U+60D1,U+60F3,U+610F,U+611F,U+614B,U+616E,U+61A9,U+6210,U+6226,U+623B,U+6240,U+624B,U+6255,U+6271,U+627F-6280,U+628A,U+629C,U+629E,U+62B1,U+62C5,U+62D2,U+62E1,U+62EC,U+62F6,U+6301,U+6307,U+6311,U+6328,U+632F,U+6357,U+636E,U+63A1-63A2,U+63A5,U+63A7-63A8,U+63AA,U+63B2,U+63D0,U+63DB,U+63E1,U+63EE,U+63F4,U+640D,U+643A,U+652F,U+6539,U+653B,U+6545,U+6559,U+6563,U+6570,U+6574,U+6587,U+6589,U+6599,U+65AD,U+65B0,U+65B9,U+65BD,U+65E2,U+65E5,U+65E7,U+65E9,U+6607,U+660E,U+6613,U+6620,U+6642,U+666F,U+6687,U+6697,U+66F4,U+66F8,U+66FF-6700,U+6708-6709,U+670D,U+671B,U+671F,U+672A-672C,U+6750,U+6765,U+6771,U+677E,U+6790,U+679C,U+67D4,U+67FB,U+682A,U+6838,U+683C,U+6848,U+691C,U+696D,U+6975,U+6982,U+69CB,U+69D8,U+6A19,U+6A21,U+6A29-6A2A,U+6A4B,U+6A5F,U+6B04,U+6B20-6B21,U+6B32,U+6B53,U+6B62-6B63,U+6B69,U+6B74,U+6B8B,U+6BB5,U+6BC0,U+6BD4,U+6C17,U+6C34,U+6C42,U+6C7A,U+6CC1,U+6CD5,U+6D32,U+6D3B,U+6D3E,U+6D41,U+6D45,U+6D77,U+6D88,U+6DF1,U+6E08,U+6E80,U+6E96,U+6EC5,U+6EDE,U+6F0F,U+6F22,U+706B,U+707D,U+70B9,U+7121,U+7167,U+7269,U+7279,U+72B6,U+72EC,U+7372,U+7387,U+73FE,U+7406,U+74B0,U+751F,U+7523,U+7528,U+7533,U+753A-753B,U+754C,U+7559,U+7565,U+756A,U+7570,U+75C5,U+767A-767B,U+7684,U+76D7,U+76DB,U+76E3-76E4,U+76EE,U+76F4,U+76F8,U+770C,U+7740,U+7763,U+77E5,U+77ED,U+7814,U+78BA,U+78E8,U+790E,U+793A,U+793E,U+795D,U+7968,U+798F,U+79C0-79C1,U+79D8,U+79F0,U+79FB,U+7A0B,U+7A2E,U+7A3C,U+7A4D,U+7A74,U+7A7A,U+7A93,U+7ACB,U+7AE5,U+7AEF,U+7AF6,U+7B2C,U+7B49,U+7B54,U+7B97,U+7BA1,U+7BC4,U+7BC9,U+7C3F,U+7CBE,U+7CFB,U+7D04,U+7D0D,U+7D1B,U+7D30,U+7D39,U+7D42,U+7D44,U+7D4C,U+7D50,U+7D61,U+7D66,U+7D71,U+7D76,U+7D99-7D9A,U+7DB2,U+7DD2,U+7DDA,U+7DE0,U+7DF4,U+7E3E,U+7E54,U+7E70,U+7F6E,U+7F72,U+7F85,U+7FA9,U+7FD2,U+8003,U+8005,U+805E,U+8077,U+80A2,U+80B2,U+80CC,U+80FD,U+8155,U+81EA,U+8208,U+822C,U+826F,U+82E5-82E6,U+82F1,U+8305,U+8349,U+83F1,U+84C4,U+85AC,U+878D,U+8846,U+884C,U+8853,U+885B,U+8868,U+88AB,U+88D5,U+88FD,U+8907,U+897F,U+8981,U+898B,U+898F,U+8996,U+899A,U+89A7,U+89B3,U+89E3,U+89E6,U+8A00,U+8A02,U+8A08,U+8A0E,U+8A13,U+8A17-8A18,U+8A2A,U+8A2D,U+8A31,U+8A3C,U+8A55,U+8A71-8A73,U+8A8D,U+8A9E,U+8AA0,U+8AA4,U+8AAC,U+8AB0,U+8AB2,U+8ABF,U+8AC7,U+8ACB,U+8B1B,U+8B58,U+8B77,U+8C37,U+8C4A,U+8C61,U+8CA0-8CA1,U+8CA9-8CAB,U+8CB4,U+8CBB,U+8CC7,U+8CDB,U+8CDE,U+8CEA,U+8D77,U+8D85,U+8DB3,U+8DF5,U+8E0F,U+8E8D,U+8EAB,U+8EDF,U+8EE2,U+8EF8,U+8EFD,U+8F09,U+8F1D,U+8FBC,U+8FCE,U+8FD1,U+8FD4,U+8FF7,U+8FFD,U+9000-9001,U+9014,U+901A,U+901F-9020,U+9023,U+9032,U+9042,U+9045,U+9047,U+904B,U+904E,U+9053-9054,U+9063,U+9069,U+9075,U+9078,U+9084,U+90E8,U+90F5,U+90FD,U+914D,U+916C,U+91CD,U+91D1,U+91DD,U+9244,U+9320,U+9332,U+9435,U+9451,U+9577,U+9580,U+958B,U+9593,U+95A2,U+95B2,U+9632,U+9650,U+9662,U+9664,U+967A,U+968E,U+969B-969C,U+96C6-96C7,U+96D1,U+96E3,U+96FB,U+9762,U+97FF,U+9805-9806,U+9810-9811,U+9818,U+983C,U+984C-984D,U+9858,U+985E,U+9867,U+99C4-99C5,U+9A13,U+9AD8,U+9ED9,U+9F62,U+FF01-FF5F,U+FFE0-FFE6;}
@font-face{font-family:'Noto Sans JP';font-style:normal;font-weight:700;font-display:block;src:url('../fonts/noto-sans-jp-700.woff2') format('woff2');unicode-range:U+0020-007E,U+00A7,U+00A9,U+00AE,U+00B0-00B1,U+00B6,U+00D7,U+00F7,U+2014,U+2190-2194,U+2197-2198,U+21C4,U+21C6,U+25A0-25A1,U+25B2-25B3,U+25BC-25BD,U+25C6-25C7,U+25CB,U+25CE-25CF,U+2605-2606,U+3000-30FE,U+4E00-4E01,U+4E07,U+4E09-4E0B,U+4E0D-4E0E,U+4E16,U+4E21,U+4E26,U+4E2D,U+4E3B,U+4E4F,U+4E57,U+4E5D,U+4E86,U+4E88-4E89,U+4E8B-4E8C,U+4E92,U+4E95,U+4EA4,U+4EAC,U+4EBA,U+4ECA-4ECB,U+4ED5-4ED6,U+4ED8,U+4EE3-4EE5,U+4EEE,U+4EF2,U+4EF6,U+4EFB,U+4F01,U+4F11,U+4F1A,U+4F1D,U+4F3A,U+4F4D-4F4F,U+4F53,U+4F55,U+4F59,U+4F7F,U+4F9B,U+4F9D,U+4FA1,U+4FBF,U+4FC2-4FC3,U+4FDD,U+4FE1,U+4FEE,U+500B,U+5024,U+505C,U+5065,U+5074,U+5091,U+5099,U+50CD,U+50CF,U+512A,U+5143,U+5145,U+5148-5149,U+5150,U+5165,U+5168,U+516B-516C,U+5171,U+5177,U+517C,U+5185-5186,U+518D,U+51E6,U+51FA,U+5206-5207,U+521D,U+5224-5225,U+5229,U+5236-5237,U+5247,U+524A,U+524D,U+5272,U+5275,U+529B,U+529F-52A0,U+52A9-52AA,U+52B4,U+52B9,U+52D5,U+52D9,U+52DD,U+52DF,U+52E4,U+5316-5317,U+533A,U+5341,U+5352,U+5354,U+5358,U+5370,U+5373-5374,U+539A,U+539F,U+53B3,U+53BB,U+53C2,U+53CA,U+53CD-53CE,U+53D6-53D7,U+53E3,U+53EF,U+53F7,U+5404,U+5408,U+540C-540D,U+5411,U+5426,U+542B,U+5438,U+544A,U+5468,U+5473,U+547D,U+54C1,U+54E1,U+5546,U+554F,U+5584,U+55B6,U+5668,U+56DE,U+56E3,U+56F0,U+56F2-56F3,U+56FD,U+570F,U+571F,U+5728,U+5730,U+57CB,U+57DF,U+57F9-57FA,U+5800,U+5805,U+5831,U+5834,U+5883,U+5897,U+58EB,U+58F2,U+5909,U+590F,U+5916,U+591A,U+5927,U+592E,U+5931,U+5951,U+596A,U+597D,U+59CB,U+59D4,U+5A92,U+5B09,U+5B50,U+5B57-5B58,U+5B63,U+5B66,U+5B85,U+5B88-5B89,U+5B8C,U+5B9A-5B9B,U+5B9D,U+5B9F,U+5BA2,U+5BB3,U+5BB6,U+5BB9,U+5BC4,U+5BC6,U+5BCC,U+5BFE,U+5C02,U+5C06,U+5C0E-5C0F,U+5C31,U+5C45,U+5C4A,U+5C55,U+5C5E,U+5C65,U+5CA1,U+5D0E,U+5DDE,U+5DE5,U+5DF1,U+5DFB,U+5E02,U+5E0C,U+5E2B,U+5E2D,U+5E33,U+5E38,U+5E45,U+5E73-5E74,U+5E79,U+5E83,U+5E97,U+5EA6,U+5EAD,U+5EB7,U+5EC3,U+5F0F,U+5F15,U+5F35,U+5F37,U+5F53,U+5F62,U+5F69,U+5F71,U+5F79,U+5F85,U+5F8B-5F8C,U+5F92-5F93,U+5F97,U+5FA1,U+5FAA,U+5FC3,U+5FC5,U+5FDC,U+5FF5,U+601D,U+6020,U+6025,U+6027,U+60A9,U+60C5,U+60D1,U+60F3,U+610F,U+611F,U+614B,U+616E,U+61A9,U+6210,U+6226,U+623B,U+6240,U+624B,U+6255,U+6271,U+627F-6280,U+628A,U+629C,U+629E,U+62B1,U+62C5,U+62D2,U+62E1,U+62EC,U+62F6,U+6301,U+6307,U+6311,U+6328,U+632F,U+6357,U+636E,U+63A1-63A2,U+63A5,U+63A7-63A8,U+63AA,U+63B2,U+63D0,U+63DB,U+63E1,U+63EE,U+63F4,U+640D,U+643A,U+652F,U+6539,U+653B,U+6545,U+6559,U+6563,U+6570,U+6574,U+6587,U+6589,U+6599,U+65AD,U+65B0,U+65B9,U+65BD,U+65E2,U+65E5,U+65E7,U+65E9,U+6607,U+660E,U+6613,U+6620,U+6642,U+666F,U+6687,U+6697,U+66F4,U+66F8,U+66FF-6700,U+6708-6709,U+670D,U+671B,U+671F,U+672A-672C,U+6750,U+6765,U+6771,U+677E,U+6790,U+679C,U+67D4,U+67FB,U+682A,U+6838,U+683C,U+6848,U+691C,U+696D,U+6975,U+6982,U+69CB,U+69D8,U+6A19,U+6A21,U+6A29-6A2A,U+6A4B,U+6A5F,U+6B04,U+6B20-6B21,U+6B32,U+6B53,U+6B62-6B63,U+6B69,U+6B74,U+6B8B,U+6BB5,U+6BC0,U+6BD4,U+6C17,U+6C34,U+6C42,U+6C7A,U+6CC1,U+6CD5,U+6D32,U+6D3B,U+6D3E,U+6D41,U+6D45,U+6D77,U+6D88,U+6DF1,U+6E08,U+6E80,U+6E96,U+6EC5,U+6EDE,U+6F0F,U+6F22,U+706B,U+707D,U+70B9,U+7121,U+7167,U+7269,U+7279,U+72B6,U+72EC,U+7372,U+7387,U+73FE,U+7406,U+74B0,U+751F,U+7523,U+7528,U+7533,U+753A-753B,U+754C,U+7559,U+7565,U+756A,U+7570,U+75C5,U+767A-767B,U+7684,U+76D7,U+76DB,U+76E3-76E4,U+76EE,U+76F4,U+76F8,U+770C,U+7740,U+7763,U+77E5,U+77ED,U+7814,U+78BA,U+78E8,U+790E,U+793A,U+793E,U+795D,U+7968,U+798F,U+79C0-79C1,U+79D8,U+79F0,U+79FB,U+7A0B,U+7A2E,U+7A3C,U+7A4D,U+7A74,U+7A7A,U+7A93,U+7ACB,U+7AE5,U+7AEF,U+7AF6,U+7B2C,U+7B49,U+7B54,U+7B97,U+7BA1,U+7BC4,U+7BC9,U+7C3F,U+7CBE,U+7CFB,U+7D04,U+7D0D,U+7D1B,U+7D30,U+7D39,U+7D42,U+7D44,U+7D4C,U+7D50,U+7D61,U+7D66,U+7D71,U+7D76,U+7D99-7D9A,U+7DB2,U+7DD2,U+7DDA,U+7DE0,U+7DF4,U+7E3E,U+7E54,U+7E70,U+7F6E,U+7F72,U+7F85,U+7FA9,U+7FD2,U+8003,U+8005,U+805E,U+8077,U+80A2,U+80B2,U+80CC,U+80FD,U+8155,U+81EA,U+8208,U+822C,U+826F,U+82E5-82E6,U+82F1,U+8305,U+8349,U+83F1,U+84C4,U+85AC,U+878D,U+8846,U+884C,U+8853,U+885B,U+8868,U+88AB,U+88D5,U+88FD,U+8907,U+897F,U+8981,U+898B,U+898F,U+8996,U+899A,U+89A7,U+89B3,U+89E3,U+89E6,U+8A00,U+8A02,U+8A08,U+8A0E,U+8A13,U+8A17-8A18,U+8A2A,U+8A2D,U+8A31,U+8A3C,U+8A55,U+8A71-8A73,U+8A8D,U+8A9E,U+8AA0,U+8AA4,U+8AAC,U+8AB0,U+8AB2,U+8ABF,U+8AC7,U+8ACB,U+8B1B,U+8B58,U+8B77,U+8C37,U+8C4A,U+8C61,U+8CA0-8CA1,U+8CA9-8CAB,U+8CB4,U+8CBB,U+8CC7,U+8CDB,U+8CDE,U+8CEA,U+8D77,U+8D85,U+8DB3,U+8DF5,U+8E0F,U+8E8D,U+8EAB,U+8EDF,U+8EE2,U+8EF8,U+8EFD,U+8F09,U+8F1D,U+8FBC,U+8FCE,U+8FD1,U+8FD4,U+8FF7,U+8FFD,U+9000-9001,U+9014,U+901A,U+901F-9020,U+9023,U+9032,U+9042,U+9045,U+9047,U+904B,U+904E,U+9053-9054,U+9063,U+9069,U+9075,U+9078,U+9084,U+90E8,U+90F5,U+90FD,U+914D,U+916C,U+91CD,U+91D1,U+91DD,U+9244,U+9320,U+9332,U+9435,U+9451,U+9577,U+9580,U+958B,U+9593,U+95A2,U+95B2,U+9632,U+9650,U+9662,U+9664,U+967A,U+968E,U+969B-969C,U+96C6-96C7,U+96D1,U+96E3,U+96FB,U+9762,U+97FF,U+9805-9806,U+9810-9811,U+9818,U+983C,U+984C-984D,U+9858,U+985E,U+9867,U+99C4-99C5,U+9A13,U+9AD8,U+9ED9,U+9F62,U+FF01-FF5F,U+FFE0-FFE6;}
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:100 900;font-display:block;src:url(data:font/woff2;base64,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) format('woff2-variations');unicode-range:U+0000-00FF,U+2000-206F,U+2190-21FF,U+2200-22FF;}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400 500;font-display:block;src:url(data:font/woff2;base64,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) format('woff2');unicode-range:U+0000-00FF,U+2000-206F,U+2190-21FF,U+2200-22FF;}

/* ===========================================================
   AP CLUSTER / ブランドトークン
   apc-base.css と同名・同値。値を変える場合はここだけを直す。
   =========================================================== */
:root{
  /* --- base.css 準拠トークン ------------------------------ */
  --apc-color-primary:#0F2B5B;
  --apc-color-accent:#DB2777;
  --apc-color-canvas:#F5F7FA;
  --apc-color-surface:#FFFFFF;
  --apc-color-border:#D8E0E8;
  --apc-color-text:#4A5568;
  --apc-color-text-muted:#8896A8;

  /* --- ロゴ固有色（base.css に対応トークンなし） -----------
     生成済みアセットに焼き込み済みの3色。
     UIの罫線・補助文字に流用しないこと。 */
  --brand-dot-inactive:#CBD3E0;
  --brand-navy-mid:#36507F;   /* サイトでは未使用。ブランド定義との対応を保つため残す */
  --brand-paper:#FAFBFD;

  /* --- 派生値 --------------------------------------------- */
  --primary-dark:#0A1F42;
  --on-navy-muted:#8FA0BF;

  /* --- 書体 ----------------------------------------------- */
  /* 和文・欧文とも fonts.css に Base64 で埋め込んである。
     CSSは描画をブロックするため、読み終えた時点で書体は必ず揃っている。
     以降の端末フォントは、CSSが読めなかった場合の保険。 */
  --jp:'Noto Sans JP','Hiragino Sans','Hiragino Kaku Gothic ProN',
       'Yu Gothic Medium','Yu Gothic','Noto Sans CJK JP','Meiryo',sans-serif;
  --en:'Space Grotesk','Space Grotesk Fallback',var(--jp);
  --mono:'IBM Plex Mono','Plex Mono Fallback',ui-monospace,'SFMono-Regular',monospace;

  /* --- レイアウト ----------------------------------------- */
  --wrap:1120px;
  --gutter:24px;
  /* 角丸は「操作できるもの」だけに使う。ボタン・入力欄・メニューボタン。
     罫・表・写真枠などの構造には使わない。触れる対象を見分ける手がかりにする。 */
  --radius-control:4px;
  --header-h:72px;
}

/* ===========================================================
   AP CLUSTER コーポレートサイト / レイアウト
   =========================================================== */

*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 16px);}
body{
  margin:0;background:var(--apc-color-canvas);color:var(--apc-color-text);
  font-family:var(--jp);font-weight:400;font-size:15px;line-height:1.8;
  -webkit-font-smoothing:antialiased;
}
img,svg,canvas{display:block;max-width:100%;}
a{color:inherit;}
h1,h2,h3,h4,p,figure,dl,dd{margin:0;}
ul,ol{margin:0;padding:0;list-style:none;}
:focus-visible{outline:2px solid var(--apc-color-accent);outline-offset:3px;}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  *{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important;}
}

/* ---------- レイアウト部品 ---------------------------------- */
.wrap{width:100%;max-width:var(--wrap);margin-inline:auto;padding-inline:var(--gutter);}
.section{padding:88px 0;}
.section--navy{background:var(--apc-color-primary);color:var(--brand-paper);}
.section--surface{background:var(--apc-color-surface);}
.section + .section{border-top:1px solid var(--apc-color-border);}
.section--navy + .section,.section + .section--navy{border-top:0;}

/* ---------- ブランドマーク（3×3 ドット） --------------------- */
.mark{
  display:grid;grid-template-columns:repeat(3,var(--d,7px));grid-template-rows:repeat(3,var(--d,7px));
  gap:var(--g,5px);flex:0 0 auto;
}
/* 円のままにするのはブランドマークのドットだけ。UIの角はすべて落としてある。 */
.mark i{width:var(--d,7px);height:var(--d,7px);border-radius:50%;background:var(--c);}
.wordmark{font-family:var(--en);font-weight:600;letter-spacing:.2em;color:var(--apc-color-primary);line-height:1;}
.wordmark small{
  display:block;font-family:var(--jp);font-weight:400;font-size:11px;letter-spacing:.12em;
  color:var(--apc-color-text-muted);margin-top:6px;
}

/* ---------- 共通タイポ -------------------------------------- */
.eyebrow{
  font-family:var(--mono);font-size:12px;font-weight:500;letter-spacing:.24em;
  text-transform:uppercase;color:var(--apc-color-accent);display:block;
}
.rule{height:3px;width:54px;background:var(--apc-color-accent);margin:18px 0 22px;}
.sec-title{
  font-family:var(--jp);font-weight:700;font-size:clamp(24px,3.2vw,32px);line-height:1.45;
  color:var(--apc-color-primary);letter-spacing:.02em;
}
.section--navy .sec-title,.section--navy .wordmark{color:var(--brand-paper);}
.lead{font-size:15px;line-height:2;color:var(--apc-color-text);max-width:66ch;}
.section--navy .lead{color:#C7D2E6;}
.note{font-size:13px;line-height:1.8;color:var(--apc-color-text-muted);}
.stack > * + *{margin-top:16px;}

/* ---------- ヘッダー ---------------------------------------- */
/* 半透明＋ぼかし（backdrop-filter）は、iOS Safariで固定要素をスクロールしたときに
   再描画がちらつく原因になるため使わない。不透明で塗る。 */
.site-header{
  position:sticky;top:0;z-index:60;background:var(--apc-color-surface);
  border-bottom:1px solid var(--apc-color-border);
}
.hdr{display:flex;align-items:center;justify-content:space-between;gap:24px;height:var(--header-h);}
.hdr-brand{display:flex;align-items:center;gap:12px;text-decoration:none;}
.hdr-brand .wordmark{font-size:16px;}
.gnav .gnav-inner{display:flex;align-items:center;gap:4px;}
.gnav a{
  display:block;padding:8px 14px;text-decoration:none;
  font-size:13.5px;font-weight:400;color:var(--apc-color-primary);line-height:1.3;
  transition:background .16s ease,color .16s ease;
}
.gnav a .en{
  display:block;font-family:var(--mono);font-size:9px;font-weight:400;letter-spacing:.16em;
  color:var(--apc-color-text-muted);margin-top:3px;transition:color .16s ease;
}
.gnav a:hover{background:var(--apc-color-canvas);}
.gnav a[aria-current="page"]{color:var(--apc-color-accent);}
.gnav a[aria-current="page"] .en{color:var(--apc-color-accent);}
/* .gnav a より詳細度を上げる（同じ a 要素のため） */
.gnav a.hdr-cta{
  display:inline-flex;align-items:center;gap:8px;padding:11px 20px;
  border-radius:var(--radius-control);
  background:var(--apc-color-primary);color:#fff;text-decoration:none;margin-left:10px;
  font-size:13.5px;font-weight:400;white-space:nowrap;transition:background .16s ease;
}
.gnav a.hdr-cta:hover{background:var(--primary-dark);}
.nav-toggle{
  display:none;width:44px;height:44px;border:1px solid var(--apc-color-border);
  border-radius:var(--radius-control);
  background:#fff;cursor:pointer;padding:0;place-items:center;
}
.nav-toggle span{display:block;width:18px;height:1.5px;background:var(--apc-color-primary);margin:3.5px auto;transition:transform .28s cubic-bezier(.4,0,.2,1),opacity .18s ease;}
.nav-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(5px) rotate(45deg);}
.nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0;}
.nav-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-5px) rotate(-45deg);}

@media (max-width:960px){
  .nav-toggle{display:grid;}

  /* 開閉は display の切り替えではなく、高さと不透明度で行う。
     display:none だと途中の状態が作れず、パッと出てパッと消えてしまう。
     grid-template-rows の 0fr → 1fr は、中身の高さを測らずに開閉できる書き方。 */
  .gnav{
    display:grid;grid-template-rows:0fr;
    position:absolute;left:0;right:0;top:var(--header-h);
    background:#fff;
    opacity:0;visibility:hidden;
    transition:grid-template-rows .28s ease,opacity .2s ease,visibility 0s linear .28s;
  }
  .gnav > .gnav-inner{
    overflow:hidden;min-height:0;
    display:flex;flex-direction:column;align-items:stretch;
  }
  .site-header.is-open .gnav{
    grid-template-rows:1fr;opacity:1;visibility:visible;
    border-bottom:1px solid var(--apc-color-border);
    transition:grid-template-rows .28s ease,opacity .2s ease,visibility 0s;
  }
  .gnav > .gnav-inner > *{padding-inline:var(--gutter);}
  .gnav-inner{padding-block:0;}
  .site-header.is-open .gnav-inner{padding-block:8px 20px;}
  .gnav a{padding:14px calc(var(--gutter) + 4px);border-bottom:1px solid var(--apc-color-border);font-size:15px;}
  .gnav a.hdr-cta{
    display:inline-flex;justify-content:center;margin:16px var(--gutter) 0;
    padding:14px 20px;border-bottom:0;
  }

  /* 項目は少し遅れて順に現れる。開くときだけ効かせ、閉じるときは即座に戻す。 */
  .gnav a{opacity:0;transform:translateY(-6px);transition:none;}
  .site-header.is-open .gnav a{
    opacity:1;transform:none;
    transition:opacity .24s ease,transform .24s ease;
  }
  .site-header.is-open .gnav a:nth-child(1){transition-delay:.06s;}
  .site-header.is-open .gnav a:nth-child(2){transition-delay:.10s;}
  .site-header.is-open .gnav a:nth-child(3){transition-delay:.14s;}
  .site-header.is-open .gnav a:nth-child(4){transition-delay:.18s;}
  .site-header.is-open .gnav a:nth-child(5){transition-delay:.22s;}
}

/* 動きを減らす設定の方には、順に現れる演出を行わない。 */
@media (prefers-reduced-motion:reduce){
  .gnav,.gnav a,.nav-toggle span{transition:none !important;}
  .site-header.is-open .gnav a{transition-delay:0s !important;}
}

/* ---------- ヒーロー ---------------------------------------- */
.hero{background:var(--brand-paper);border-bottom:1px solid var(--apc-color-border);overflow:hidden;}
.hero-inner{
  display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:center;
  padding-block:96px 100px;   /* padding ショートハンドを使うと .wrap の左右余白が消える */
}
.hero h1{
  font-family:var(--jp);font-weight:700;letter-spacing:.02em;
  font-size:clamp(30px,4.6vw,48px);line-height:1.34;color:var(--apc-color-primary);
}
.hero .tagline-en{
  font-family:var(--en);font-weight:500;font-size:clamp(14px,1.6vw,17px);letter-spacing:.14em;
  color:var(--apc-color-accent);margin-top:20px;
}
.hero .hero-lead{margin-top:22px;font-size:15.5px;line-height:2;max-width:34em;}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px;}

/* シグネチャ：散らばったドットがクラスタへ収束する */
.cluster-figure{justify-self:center;width:100%;max-width:400px;}
/* canvas は正方形で、マークの上下に余白がある（ドットが外から集まるための領域）。
   下の余白ぶんだけ詰めて、マークと一行の距離を縮める。 */
.cluster-figure canvas{width:100%;height:auto;margin:-30% 0 -20%;}
/* スクリプトが動く時は canvas、動かない時は静止したマークを出す。
   どちらの環境でもマークが必ず表示される。 */
.cluster-static{justify-self:center;margin:0 auto 22px;}
.js .cluster-static{display:none;}
html:not(.js) .cluster-figure canvas{display:none;}
.cluster-cap{
  font-family:var(--jp);font-size:13px;letter-spacing:.1em;
  color:var(--apc-color-text);text-align:center;margin-top:0;
}
/* ドットが集まりきったところで現れる。動きの結論として読ませるための遅延。
   .js が付くのはスクリプトが動いている時だけなので、JSが無効なら最初から見える。 */
.js .cluster-cap{opacity:0;transform:translateY(8px);transition:opacity .7s ease,transform .7s ease;}
.js .cluster-cap.is-in,.cap-in .cluster-cap{opacity:1;transform:none;}
@media (max-width:860px){
  .hero-inner{grid-template-columns:1fr;gap:40px;padding-block:64px 72px;}
  /* 狭い画面では図を本文の後ろに置く。図の下の一行が、
     次の「3つの事業」の節へ渡す言葉になるため。
     マークは canvas の中で中央に描かれるので、箱ごと中央に置いて
     一行と軸を揃える（デスクトップと同じ扱いになる）。 */
  .cluster-figure{max-width:280px;justify-self:center;}
  /* 狭い画面では vw 連動をやめ、固定値にする。
     iOSは読み込み途中で一度別の幅で組むことがあり、そのとき vw 指定の文字が
     大きく変わって見える。幅の振れ幅が小さい画面では固定値で十分。 */
  .hero h1{font-size:33px;}
  .hero .tagline-en{font-size:15px;}
  .sec-title{font-size:24px;}
  .page-head h1{font-size:27px;}
  .cta-band h2{font-size:22px;}
}

/* ---------- ボタン ------------------------------------------ */
.btn{
  display:inline-flex;align-items:center;gap:10px;padding:14px 26px;
  border-radius:var(--radius-control);
  font-size:14px;font-weight:400;text-decoration:none;line-height:1.4;
  transition:background .16s ease,color .16s ease,border-color .16s ease;
}
.btn--primary{background:var(--apc-color-primary);color:#fff;}
.btn--primary:hover{background:var(--primary-dark);}
.btn--accent{background:var(--apc-color-accent);color:#fff;}
.btn--accent:hover{background:#B71F63;}
.btn--ghost{background:transparent;color:var(--apc-color-primary);border:1px solid var(--apc-color-border);}
.btn--ghost:hover{border-color:var(--apc-color-primary);background:#fff;}
.section--navy .btn--ghost,.cta-band .btn--ghost,.page-head .btn--ghost{color:var(--brand-paper);border-color:rgba(255,255,255,.3);}
.section--navy .btn--ghost:hover,.cta-band .btn--ghost:hover,.page-head .btn--ghost:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.6);}
.btn .arw{font-family:var(--mono);font-size:13px;}
/* 「Access VBA」のように空白を含む語が、途中で改行されて
   別々の項目に見えてしまうのを防ぐ。 */
.tag,
table.matrix tbody th{white-space:nowrap;}
/* button 要素はブラウザ既定の枠線と書体を持つため、a.btn と揃うように打ち消す。
   キーボード操作のフォーカスリングは残す。 */
button.btn{border:0;font-family:inherit;cursor:pointer;-webkit-appearance:none;appearance:none;}

.textlink{
  display:inline-flex;align-items:center;gap:8px;text-decoration:none;
  font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--apc-color-accent);border-bottom:1px solid transparent;padding-bottom:2px;
  transition:border-color .16s ease;
}
.textlink:hover{border-bottom-color:var(--apc-color-accent);}

/* ---------- グリッド / カード -------------------------------- */
.grid{display:grid;gap:32px 40px;}
.grid-2{grid-template-columns:repeat(2,1fr);}
.grid-3{grid-template-columns:repeat(3,1fr);}
.grid-4{grid-template-columns:repeat(4,1fr);}
@media (max-width:900px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr);}}
@media (max-width:620px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr;}}

.mt-24{margin-top:24px;}.mt-32{margin-top:32px;}.mt-40{margin-top:40px;}

.card{
  background:transparent;border:0;border-top:2px solid var(--apc-color-primary);padding:20px 0 0;
}
.card h3{font-family:var(--jp);font-weight:700;font-size:17px;color:var(--apc-color-primary);line-height:1.55;}
.card p{margin-top:12px;font-size:14px;line-height:1.9;}
.card .card-en{
  font-family:var(--mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--apc-color-accent);display:block;margin-bottom:9px;
}
.card .textlink{margin-top:18px;}
.section--navy .card{border-top-color:rgba(255,255,255,.45);}
.section--navy .card h3{color:var(--brand-paper);}
.section--navy .card p{color:#C7D2E6;}
.section--navy .card .card-en{color:var(--apc-color-accent);}

/* ---------- タグ（技術・製品名の列記） ---------------------- */
.tags{display:flex;flex-wrap:wrap;gap:0 18px;margin-top:20px;padding-top:14px;border-top:1px solid var(--apc-color-border);}
.tag{
  font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:var(--apc-color-text-muted);
  background:none;border:0;border-radius:0;padding:3px 0;
}

/* ---------- MVV --------------------------------------------- */
.mvv{display:grid;grid-template-columns:repeat(3,1fr);gap:0;}
.mvv > div{padding:24px 32px 0 0;border-top:2px solid rgba(255,255,255,.45);margin-right:32px;}
.mvv > div:last-child{margin-right:0;padding-right:0;}
.mvv .mvv-key{font-family:var(--en);font-weight:600;font-size:12px;letter-spacing:.24em;color:var(--apc-color-accent);text-transform:uppercase;}
.mvv .mvv-jp{font-size:11.5px;letter-spacing:.1em;color:var(--on-navy-muted);margin-top:6px;}
.mvv .mvv-body{font-family:var(--jp);font-weight:700;font-size:19px;line-height:1.65;color:var(--brand-paper);margin-top:18px;}
.mvv .mvv-note{font-size:13.5px;line-height:1.9;color:#C7D2E6;margin-top:14px;}
.mvv ul li{font-size:13.5px;line-height:1.8;color:#C7D2E6;padding-left:16px;position:relative;}
.mvv ul li + li{margin-top:10px;}
.mvv ul li::before{content:"";position:absolute;left:0;top:.72em;width:6px;height:6px;border-radius:50%;background:var(--apc-color-accent);}
@media (max-width:900px){
  .mvv{grid-template-columns:1fr;gap:36px;}
  .mvv > div{margin-right:0;padding-right:0;}
}

/* ---------- 表（会社概要・募集要項） -------------------------- */
.tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch;}
table.spec{
  width:100%;border-collapse:collapse;background:var(--apc-color-surface);
  border:1px solid var(--apc-color-border);
  font-size:14px;line-height:1.85;
}
table.spec th,table.spec td{text-align:left;vertical-align:top;padding:16px 20px;border-bottom:1px solid var(--apc-color-border);}
table.spec tr:last-child th,table.spec tr:last-child td{border-bottom:0;}
table.spec th{
  width:190px;font-weight:700;color:var(--apc-color-primary);background:var(--brand-paper);
  border-right:1px solid var(--apc-color-border);white-space:nowrap;
}
@media (max-width:640px){
  table.spec th{width:120px;white-space:normal;padding:14px;}
  table.spec td{padding:14px;}
}

/* ---------- お知らせ ---------------------------------------- */
.news-list li{border-bottom:1px solid var(--apc-color-border);}
.news-list li:first-child{border-top:1px solid var(--apc-color-border);}
.news-list a,.news-list .row{
  display:grid;grid-template-columns:120px 132px 1fr;gap:20px;align-items:baseline;
  padding:22px 4px;text-decoration:none;color:inherit;transition:background .16s ease;
}
.news-list a:hover{background:var(--brand-paper);}
.news-list time{font-family:var(--mono);font-size:12.5px;letter-spacing:.08em;color:var(--apc-color-text-muted);}
.news-list .cat{
  font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--apc-color-text-muted);border:0;
  padding:0;justify-self:start;background:none;
}
.news-list .ttl{font-size:15px;font-weight:700;color:var(--apc-color-primary);line-height:1.7;}
@media (max-width:720px){
  .news-list a,.news-list .row{grid-template-columns:1fr;gap:8px;padding:18px 4px;}
}

/* ---------- 下層ページ見出し -------------------------------- */
.page-head{background:var(--apc-color-primary);color:var(--brand-paper);position:relative;overflow:hidden;}
.page-head .wrap{padding-block:60px 64px;position:relative;z-index:1;}
.page-head h1{font-family:var(--jp);font-weight:700;font-size:clamp(26px,4vw,38px);line-height:1.4;letter-spacing:.02em;}
.page-head .page-lead{margin-top:16px;font-size:14.5px;line-height:1.95;color:#C7D2E6;max-width:60ch;}
.page-head .glow{
  position:absolute;right:-90px;bottom:-150px;width:380px;height:380px;pointer-events:none;
  border-radius:50%;background:radial-gradient(circle,rgba(54,80,127,.55) 0%,rgba(54,80,127,.18) 45%,transparent 72%);
}
.crumbs{display:flex;flex-wrap:wrap;gap:8px;font-family:var(--mono);font-size:11px;letter-spacing:.12em;color:var(--on-navy-muted);margin-bottom:22px;}
.crumbs a{text-decoration:none;color:var(--on-navy-muted);}
.crumbs a:hover{color:var(--brand-paper);}

/* ページ内ナビ */
/* 固定要素を2段重ねるとiOSで揺れやすいので、狭い画面では固定しない。 */
.pagenav{background:var(--apc-color-surface);border-bottom:1px solid var(--apc-color-border);position:sticky;top:var(--header-h);z-index:50;}
@media (max-width:860px){.pagenav{position:static;}}
.pagenav ul{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;}
.pagenav ul::-webkit-scrollbar{display:none;}
.pagenav a{
  display:block;white-space:nowrap;padding:16px 16px;text-decoration:none;
  font-size:13.5px;color:var(--apc-color-text);border-bottom:2px solid transparent;
  transition:color .16s ease,border-color .16s ease;
}
.pagenav a:hover{color:var(--apc-color-primary);}
.pagenav a.is-active{color:var(--apc-color-accent);border-bottom-color:var(--apc-color-accent);}

/* ---------- 見出し付きブロック ------------------------------ */
.block-head{margin-bottom:36px;}
.block-head .rule{margin-bottom:0;}
.block-head .sec-title + .lead{margin-top:20px;}

/* 代表挨拶など、写真と本文 */
.portrait{display:grid;grid-template-columns:1fr 300px;gap:44px;align-items:start;}
.sig{margin-top:26px;font-family:var(--jp);font-weight:700;font-size:16px;color:var(--apc-color-primary);}
.sig small{display:block;font-family:var(--mono);font-size:11px;font-weight:400;letter-spacing:.14em;color:var(--apc-color-text-muted);margin-bottom:6px;}
.portrait-frame{
  background:var(--brand-paper);border:1px solid var(--apc-color-border);
  aspect-ratio:3/4;display:grid;place-items:center;overflow:hidden;
}
.portrait-frame img{width:100%;height:100%;object-fit:cover;}
.portrait-frame .ph{
  display:flex;flex-direction:column;gap:10px;padding:24px;text-align:center;
  font-size:12.5px;line-height:1.8;color:var(--apc-color-text);
}
.portrait-frame .ph b{
  font-family:var(--mono);font-size:10.5px;font-weight:400;letter-spacing:.16em;
  text-transform:uppercase;color:var(--apc-color-accent);
}
.portrait-frame .ph .s{
  font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;color:var(--apc-color-text-muted);
}
@media (max-width:860px){.portrait{grid-template-columns:1fr;gap:28px;}.portrait-frame{max-width:280px;}}

/* 数字なしの定義リスト */
.deflist{border-top:1px solid var(--apc-color-border);}
.deflist > div{padding:22px 0;border-bottom:1px solid var(--apc-color-border);display:grid;grid-template-columns:230px 1fr;gap:28px;}
.deflist dt{font-family:var(--jp);font-weight:700;font-size:16px;color:var(--apc-color-primary);line-height:1.6;}
.deflist dt .dt-en{
  display:block;font-family:var(--mono);font-size:10.5px;font-weight:400;letter-spacing:.16em;
  text-transform:uppercase;color:var(--apc-color-text-muted);margin-bottom:6px;
}
/* 和文が入る場合は、モノスペースの広い字間だと読みにくいので本文書体にする */
.deflist dt .dt-en:lang(ja),.deflist dt .dt-jp{
  font-family:var(--jp);font-size:11.5px;letter-spacing:.08em;text-transform:none;
}
.deflist dd{font-size:14.5px;line-height:1.95;}
@media (max-width:760px){.deflist > div{grid-template-columns:1fr;gap:10px;}}

/* 引用・強調ボックス */
.callout{
  background:transparent;border:0;border-left:2px solid var(--apc-color-accent);padding:2px 0 2px 20px;
  font-size:14.5px;line-height:1.95;
}
.callout b{color:var(--apc-color-primary);}

/* ---------- CTA 帯 ------------------------------------------ */
.cta-band{background:var(--apc-color-primary);color:var(--brand-paper);}
.cta-band .wrap{padding-block:72px;display:grid;grid-template-columns:1fr auto;gap:36px;align-items:center;}
.cta-band h2{font-family:var(--jp);font-weight:700;font-size:clamp(22px,3vw,30px);line-height:1.5;color:var(--brand-paper);}
.cta-band p{margin-top:14px;font-size:14px;color:#C7D2E6;line-height:1.9;}
.cta-actions{display:flex;flex-wrap:wrap;gap:12px;}
@media (max-width:820px){.cta-band .wrap{grid-template-columns:1fr;gap:28px;}}

/* ---------- フッター ---------------------------------------- */
.site-footer{background:var(--brand-paper);border-top:1px solid var(--apc-color-border);}
/* 列が5つになったため、ブランド欄と横に並べると入りきらない。
   広い画面では上下2段に分け、ナビに全幅を使わせる。 */
.foot-main{display:grid;grid-template-columns:300px 1fr;gap:56px;padding-block:64px 48px;}
.foot-brand .wordmark{font-size:19px;}
.foot-contact{margin-top:26px;display:grid;gap:8px;font-family:var(--mono);font-size:12.5px;letter-spacing:.02em;color:var(--apc-color-text);}
.foot-contact span.k{display:inline-block;width:44px;color:var(--apc-color-text-muted);letter-spacing:.14em;}
.foot-addr{margin-top:14px;font-size:12.5px;line-height:1.9;color:var(--apc-color-text-muted);}
/* 列数は固定せず、幅に応じて折り返す。列が増えても崩れない。 */
/* 製品名は「システム・プロダクト」に属するので、字下げして階層を示す。 */
.foot-nav a.sub,
.foot-nav span.sub{padding-left:14px;position:relative;}
.foot-nav a.sub::before,
.foot-nav span.sub::before{
  content:"";position:absolute;left:2px;top:.95em;width:6px;height:1px;
  background:var(--apc-color-border);
}
.foot-nav a svg.ext{margin-left:5px;opacity:.55;}
.foot-nav{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:28px 24px;}
.foot-nav h4{font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--apc-color-accent);margin-bottom:14px;}
.foot-nav a{display:block;text-decoration:none;font-size:13.5px;line-height:1.7;color:var(--apc-color-text);padding:5px 0;transition:color .16s ease;}
.foot-nav a:hover{color:var(--apc-color-accent);}
.foot-bottom{
  border-top:1px solid var(--apc-color-border);padding-block:22px;
  display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;align-items:center;
  font-family:var(--mono);font-size:11.5px;letter-spacing:.1em;color:var(--apc-color-text-muted);
}
.foot-bottom a{text-decoration:none;color:var(--apc-color-text-muted);}
.foot-bottom a:hover{color:var(--apc-color-accent);}
@media (max-width:960px){
  .foot-main{grid-template-columns:1fr;gap:40px;}
  .foot-nav{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:520px){.foot-nav{grid-template-columns:1fr;}}

/* ---------- ユーティリティ ---------------------------------- */
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;}

/* ---------- 図解 -------------------------------------------
   関係や順序など、文章では伝わりにくいものだけを図にする。
   画像ではなく HTML と CSS で組んでいるため、拡大しても劣化せず、
   本文と同じ書体・同じ色で描かれる。 */
.flow{display:flex;align-items:stretch;}
.flow-step{
  flex:1;min-width:0;border-top:3px solid var(--apc-color-primary);
  padding-top:20px;display:flex;flex-direction:column;
}
.flow-step .no{
  font-family:var(--en);font-weight:600;font-size:13px;letter-spacing:.18em;
  color:var(--apc-color-accent);text-transform:uppercase;
}
.flow-step h3{
  font-family:var(--jp);font-weight:700;font-size:16.5px;line-height:1.55;
  color:var(--apc-color-primary);margin-top:8px;
  /* カタカナ語の途中で折れないようにする（「サー／ビス」を防ぐ） */
  word-break:keep-all;overflow-wrap:anywhere;
}
.flow-step .name{display:block;margin-top:6px;font-size:12.5px;line-height:1.7;color:var(--apc-color-text-muted);}
.flow-step p{margin-top:14px;font-size:13.5px;line-height:1.9;flex:1;}
/* 構造の中心。ここに他の2つが集まる */
.flow-step.is-center{border-top-color:var(--apc-color-accent);border-top-width:4px;}
.flow-step.is-center h3{color:var(--apc-color-accent);}
.flow-step .tags{display:flex;flex-wrap:wrap;gap:0 16px;margin-top:16px;padding-top:12px;border-top:1px solid var(--apc-color-border);}

/* 段のあいだ。何が次に受け渡されるかを書く */
.flow-link{
  flex:0 0 118px;display:flex;flex-direction:column;align-items:center;
  padding:20px 10px 0;text-align:center;
}
.flow-link .arw{display:block;color:var(--apc-color-accent);line-height:0;}
.flow-link .arw-svg{display:block;}
.flow-link span{margin-top:10px;font-size:11.5px;line-height:1.7;color:var(--apc-color-text-muted);}

/* 工程図。受け渡しの説明を持たない、順序だけの図 */
.flow--steps .flow-step{border-top-width:2px;padding-top:14px;}
.flow--steps .flow-step h3{font-size:14.5px;margin-top:6px;}
.flow--steps .flow-step p{font-size:12.5px;line-height:1.8;margin-top:8px;}
.flow--steps .flow-link{flex:0 0 34px;padding-top:14px;}
.flow--steps .flow-step.is-key{border-top-color:var(--apc-color-accent);}
.flow--steps .flow-step.is-key h3{color:var(--apc-color-accent);}

@media (max-width:860px){
  .flow{flex-direction:column;}
  .flow-link{flex:0 0 auto;flex-direction:row;gap:12px;justify-content:flex-start;
    padding:14px 0;text-align:left;}
  .flow-link .arw{transform:rotate(90deg);}
  .flow-link span{margin-top:0;}
  .flow--steps .flow-link{padding:10px 0;}
}

/* 図解の小見出し。節見出しより一段小さい */
.eyebrow--sub{color:var(--apc-color-primary);font-size:11.5px;}

/* ---------- グレード ---------------------------------------
   段階が上がっていくことを、棒の高さで示す。
   エキスパート職（Ex1・Ex2）はマゼンタにして、
   マネジメントとは別の道であることを色で区別する。 */
.grades{display:flex;align-items:flex-end;gap:10px;}
.grades .grade{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:flex-end;text-align:center;}
.grades .bar{
  display:block;height:var(--h);margin-bottom:12px;
  background:var(--apc-color-primary);opacity:var(--o);
  border-radius:var(--radius-control) var(--radius-control) 0 0;
}
.grades .grade.is-expert .bar{background:var(--apc-color-accent);opacity:1;}
.grades .g{
  font-family:var(--en);font-weight:600;font-size:14px;letter-spacing:.08em;
  color:var(--apc-color-primary);display:block;
}
.grades .grade.is-expert .g{color:var(--apc-color-accent);}
.grades .n{display:block;margin-top:4px;font-size:11px;line-height:1.5;color:var(--apc-color-text-muted);}
@media (max-width:860px){
  /* 棒では細くなりすぎるので、3列に積んで順に読ませる */
  .grades{display:grid;grid-template-columns:repeat(3,1fr);gap:18px 14px;align-items:stretch;}
  .grades .bar{height:3px;min-height:3px;margin-bottom:10px;border-radius:0;}
  .grades .grade{display:block;text-align:left;}
}


/* ---------- 箇条書き（カード内） ---------------------------- */
ul.dots li{position:relative;padding-left:16px;font-size:13.5px;line-height:1.85;}
ul.dots li + li{margin-top:8px;}
ul.dots li::before{
  content:"";position:absolute;left:0;top:.75em;width:5px;height:5px;border-radius:50%;
  background:var(--apc-color-accent);
}
.card ul.dots{margin-top:12px;}

/* ---------- 業務の一覧 -------------------------------------- */
.scope{border-top:2px solid var(--apc-color-primary);padding-top:20px;}
.scope h3{font-family:var(--jp);font-weight:700;font-size:17px;color:var(--apc-color-primary);line-height:1.5;}
.scope-list{margin-top:14px;border-top:1px solid var(--apc-color-border);}
.scope-list li{
  display:flex;gap:12px;align-items:baseline;font-size:13.5px;line-height:1.8;
  padding:8px 0;border-bottom:1px solid var(--apc-color-border);
}
.scope-list li .k{font-family:var(--mono);font-size:11.5px;color:var(--apc-color-text-muted);flex:0 0 34px;}

/* 外部サイトへ出ることを示す */
/* 外部サイトへ出ることを示すアイコン。文字の脇に置き、色は本文に従わせる。 */
svg.ext{display:inline-block;vertical-align:-1px;margin-left:5px;flex:0 0 auto;}

/* ---------- 規約・方針などの文書 ---------------------------- */
.legal{max-width:78ch;}
.legal > p:first-child{font-size:14.5px;line-height:1.95;}
.legal h3{
  font-family:var(--jp);font-weight:700;font-size:17px;line-height:1.6;
  color:var(--apc-color-primary);margin-top:48px;padding-top:22px;
  border-top:2px solid var(--apc-color-primary);
}
.legal h4{font-family:var(--jp);font-weight:700;font-size:14.5px;color:var(--apc-color-primary);margin-top:26px;}
.legal p{font-size:14.5px;line-height:1.95;margin-top:14px;}
.legal ul{margin-top:12px;}
.legal ul li{position:relative;padding-left:17px;font-size:14.5px;line-height:1.9;}
.legal ul li + li{margin-top:8px;}
.legal ul li::before{content:"";position:absolute;left:0;top:.78em;width:5px;height:5px;border-radius:50%;background:var(--apc-color-accent);}
.legal ol{counter-reset:legal;margin-top:12px;}
.legal ol li{counter-increment:legal;position:relative;padding-left:30px;font-size:14.5px;line-height:1.9;}
.legal ol li + li{margin-top:8px;}
.legal ol li::before{
  content:"（" counter(legal) "）";position:absolute;left:0;top:0;
  font-size:13px;color:var(--apc-color-text-muted);
}
.legal .date{font-family:var(--mono);font-size:12.5px;letter-spacing:.06em;color:var(--apc-color-text-muted);}

/* ---------- フッターのリモートサポート -----------------------
   保守の電話中に、お客様へ操作していただくための導線。
   宣伝ではないので、目立たせすぎず、見失わない程度に置く。 */
.foot-support{
  display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;
  padding-block:22px;border-top:1px solid var(--apc-color-border);
}
/* バナーは幅に応じて縮む。高さは画像の比率にまかせる。 */
.tv-badge{display:block;width:100%;max-width:300px;text-decoration:none;border-bottom:0;}
.tv-badge img{display:block;width:100%;height:auto;border-radius:6px;}
.tv-badge:hover img{opacity:.88;}

@media (max-width:620px){
  .foot-support{flex-direction:column;align-items:stretch;gap:14px;}
  .tv-badge{max-width:none;}
}

/* 経営理念の後半。見出しと対になる一文なので、本文より一段強くする。
   下の細罫で、ここまでが理念、以降が会社の説明だと分かるようにする。 */
.hero-mission{
  font-family:var(--jp);font-weight:700;font-size:17px;line-height:1.7;
  color:var(--apc-color-primary);margin-top:22px;
  padding-bottom:26px;border-bottom:1px solid var(--apc-color-border);
  /* 「支援す／る。」で折れないよう、収まる幅を確保する */
  max-width:36ch;
}
.hero-mission + .hero-lead{margin-top:26px;}
@media (max-width:860px){
  .hero-mission{font-size:15.5px;max-width:none;}
}

/* ---------- 地図 -------------------------------------------- */
.mapbox{
  position:relative;width:100%;aspect-ratio:16/9;
  border:1px solid var(--apc-color-border);background:var(--apc-color-surface);
}
.mapbox iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block;}
.mapbox-alt{font-size:12.5px;text-align:right;}
.mapbox-alt .textlink{font-family:var(--jp);letter-spacing:.04em;}
@media (max-width:640px){
  .mapbox{aspect-ratio:4/3;}
}

/* ---------- 写真の枠 ----------------------------------------
   写真が入るまでの仮枠。差し替え時にレイアウトが動かないよう、
   比率だけ先に確保しておく。写真を入れるときは <img> に置き換える。 */
.photo{
  position:relative;background:var(--brand-paper);
  border:1px solid var(--apc-color-border);overflow:hidden;
}
.photo img{display:block;width:100%;height:100%;object-fit:cover;}
.photo-ph{
  position:absolute;inset:0;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:10px;padding:24px;text-align:center;
}
.photo-ph .k{
  font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--apc-color-accent);
}
.photo-ph .d{font-size:12.5px;line-height:1.8;color:var(--apc-color-text);max-width:34ch;}
.photo-ph .s{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;color:var(--apc-color-text-muted);}

/* 比率。用途ごとに使い分ける */
.photo--wide{aspect-ratio:16/9;}
.photo--land{aspect-ratio:3/2;}
.photo--square{aspect-ratio:1/1;}
.photo--app{aspect-ratio:16/10;}

/* 横一杯の帯として使う */
.photo-band{margin-top:44px;}
.photo-cap{margin-top:12px;font-size:12.5px;color:var(--apc-color-text-muted);}

/* ---------- 対応領域の表 -------------------------------------
   技術と工程の対応。丸の有無だけを見る表なので、罫は最小限にする。 */
table.matrix{
  width:100%;border-collapse:collapse;font-family:var(--jp);font-size:13.5px;
  border-top:2px solid var(--apc-color-primary);
}
table.matrix thead th{
  font-weight:700;font-size:12px;color:var(--apc-color-primary);
  padding:12px 8px;text-align:center;white-space:nowrap;
  border-bottom:1px solid var(--apc-color-border);
}
table.matrix thead th:first-child{text-align:left;}
table.matrix tbody th{
  font-weight:700;color:var(--apc-color-primary);text-align:left;
  padding:14px 8px;white-space:nowrap;border-bottom:1px solid var(--apc-color-border);
}
table.matrix tbody td{
  padding:14px 8px;text-align:center;color:var(--apc-color-text-muted);
  border-bottom:1px solid var(--apc-color-border);
}
/* 対応可を示す丸。字形の揃う記号が無いため、記号を使わずCSSで描く。 */
table.matrix tbody td.y{color:var(--apc-color-accent);}
table.matrix tbody td.y::before{
  content:"";display:inline-block;width:9px;height:9px;border-radius:50%;
  background:currentColor;vertical-align:middle;
}
table.matrix tbody tr:last-child th,
table.matrix tbody tr:last-child td{border-bottom:0;}
@media (max-width:820px){
  /* 狭い画面では横に流す。先頭の技術名は固定して、どの行かを見失わないようにする。 */
  .tablewrap:has(table.matrix){overflow-x:auto;-webkit-overflow-scrolling:touch;}
  table.matrix{font-size:12.5px;min-width:600px;}
  table.matrix thead th,table.matrix tbody th,table.matrix tbody td{padding:11px 10px;}
  table.matrix thead th:first-child,table.matrix tbody th{
    position:sticky;left:0;background:var(--apc-color-canvas);z-index:1;
  }
  .section--surface .tablewrap table.matrix thead th:first-child,
  .section--surface .tablewrap table.matrix tbody th{background:var(--apc-color-surface);}
}

/* ---------- お問い合わせフォーム ------------------------------
   入力欄はすべて同じ見た目にそろえる。装飾は付けず、
   罫と余白だけで区切る（サイト全体の組版に合わせる）。 */
.cform{max-width:760px;}
.cform-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.cform-field{display:block;}
.cform-full{margin-top:20px;}
.cform-label{
  display:block;font-size:13px;font-weight:700;
  color:var(--apc-color-primary);margin-bottom:8px;
}
.cform-label em{font-style:normal;color:var(--apc-color-accent);}
/* 型ごとに列挙すると、新しい型を使ったときに漏れる。
   チェックボックスとラジオだけ除外して、残りをまとめて指定する。 */
.cform input:not([type=checkbox]):not([type=radio]),
.cform select,
.cform textarea{
  width:100%;padding:12px 14px;
  border:1px solid var(--apc-color-border);border-radius:var(--radius-control);
  font-family:inherit;font-size:14px;line-height:1.6;
  background:var(--apc-color-surface);color:var(--apc-color-text);
}
.cform textarea{resize:vertical;min-height:180px;}
.cform input:not([type=checkbox]):not([type=radio]):focus,
.cform select:focus,.cform textarea:focus{
  outline:2px solid var(--apc-color-accent);outline-offset:1px;border-color:transparent;
}
.cform-check{display:flex;gap:10px;align-items:flex-start;margin-top:26px;font-size:13.5px;line-height:1.8;}
.cform-check input{margin-top:.35em;flex:0 0 auto;}
.cform-check a{color:var(--apc-color-accent);}

/* 迷惑メール対策の欄。画面にも読み上げにも出さない。 */
.cform-trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}

/* 送信中はボタンを押せなくする（二重送信の防止） */
.cform.is-sending button[type=submit]{opacity:.6;pointer-events:none;}

@media (max-width:640px){
  .cform-grid{grid-template-columns:1fr;}
}

/* ---------- フォームの選択肢（複数選択・単一選択） --------------- */
.cform fieldset{border:0;padding:0;margin:0;}
.cform-checks{display:flex;flex-wrap:wrap;gap:12px 26px;}
.cform-checks label{
  display:flex;align-items:center;gap:8px;font-size:13.5px;cursor:pointer;
}
.cform-checks input{flex:0 0 auto;}

/* 種別の選択。ひとつだけ選ぶものなので、面を塗って現在地を示す。
   中身は radio のまま。見た目だけを変えているので、送信内容も
   キーボード操作も変わらない。角丸は操作できるものの印。 */
.cform-seg{
  display:grid;grid-template-columns:repeat(4,1fr);
  border:1px solid var(--apc-color-primary);border-radius:var(--radius-control);overflow:hidden;
}
.cform-seg label{position:relative;display:block;cursor:pointer;border-left:1px solid var(--apc-color-border);}
.cform-seg label:first-child{border-left:0;}
.cform-seg input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer;}
.cform-seg span{display:block;padding:12px 6px;text-align:center;font-size:13.5px;color:var(--apc-color-primary);}
.cform-seg input:not(:checked):hover + span{background:var(--apc-color-canvas);}
.cform-seg input:checked + span{background:var(--apc-color-primary);color:var(--brand-paper);font-weight:700;}
.cform-seg input:focus-visible + span{outline:2px solid var(--apc-color-accent);outline-offset:-3px;}
@media (max-width:640px){
  .cform-seg{grid-template-columns:1fr 1fr;}
  .cform-seg label:nth-child(odd){border-left:0;}
  .cform-seg label:nth-child(n+3){border-top:1px solid var(--apc-color-border);}
}
.cform .mt-20{margin-top:20px;}

/* 条件で必須になる項目の印。既定では隠しておき、
   「SE支援」を選んだときだけ JavaScript が表示する。 */
.cform-label .req-se[hidden]{display:none;}
/* 公開前のサービスサイトを示す一文。リンクではないので下線も矢印も付けない。 */
.soon{margin-top:14px;font-size:13.5px;color:var(--apc-color-text-muted);}
/* フッターで、リンク先がまだない項目。リンクと同じ字面で並べるが押せない。 */
.foot-nav span.sub{display:block;font-size:13.5px;line-height:1.7;padding:5px 0;color:var(--apc-color-text-muted);}

/* .cform-field{display:block} が [hidden] を打ち消すため、明示的に消す */
.cform [hidden]{display:none;}
.cform-label small{
  font-family:var(--jp);font-size:10.5px;font-weight:400;
  color:var(--apc-color-text-muted);margin-left:5px;letter-spacing:.04em;
}
