/*
Theme Name: tb_jp v.4.7.62
Author: Katsuhiro Komori
Author URI: techbureau.jp
Version: 4.7.62
*/

/* @generated:font-face start */
/* 生成物。手で編集しない —— infra/tools/gen-webfonts.py が
   docs/design/font-usage.json から作る（M3-T08 / Q-09 / D-27）。
   チャンク 0 が実際に使う文字、チャンク 1 が残り。2 つで元の OTF の
   全 3,596 字を覆うので、1 字も失われない（＝サブセット化ではない）。
   チャンク 1 の unicode-range は、7 ページに現れない符号位置をまたいで
   区間を畳んである（列挙すると 100KB 超になるため）。 */
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 100;
  src: url('/font/NotoSansCJKjp-Thin-0.woff2') format('woff2');
  unicode-range: U+005A, U+0061, U+0066, U+0069, U+3001, U+300C-300D, U+3042, U+3044, U+304A, U+304F, U+3051, U+3054, U+3059, U+305B, U+3068, U+306B, U+306E, U+3078, U+3088-3089, U+308B, U+308F, U+30B5, U+30B9, U+30D3, U+30FC, U+4EA4, U+4F1A, U+4F9B, U+5185, U+53D6, U+53F7, U+5408, U+554F, U+5831, U+5B9F, U+5BA2, U+5E83, U+623B, U+63DB, U+65BD, U+65E7, U+6697, U+6848, U+696D, U+6982, U+69D8, U+6C42, U+7523, U+77E5, U+793E, U+8981, U+8A17, U+8ACB, U+8CC7, U+8CEA, U+95A2, U+FF08-FF09;
}
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 100;
  src: url('/font/NotoSansCJKjp-Thin-1.woff2') format('woff2');
  unicode-range: U+0020-0059, U+005B-0060, U+0062-0065, U+0067-0068, U+006A-2103, U+212B-2312, U+2500-266F, U+3002-300B, U+300E-3041, U+3043, U+3045-3049, U+304B-304E, U+3050, U+3052-3053, U+3055-3058, U+305A, U+305C-3067, U+3069-306A, U+306C-306D, U+306F-3077, U+3079-3087, U+308A, U+308C-308E, U+3090-30B4, U+30B6-30B8, U+30BA-30D2, U+30D4-30FB, U+30FD-4EA1, U+4EA5-4F11, U+4F1D-4F8D, U+4F9D-517C, U+5186-53D4, U+53D7-53F6, U+53F8-5404, U+5409-5546, U+5553-5830, U+5834-5B9D, U+5BA3-5E81, U+5E84-6238, U+623F-63DA, U+63E1-65BC, U+65C5-65E6, U+65E8-6696, U+66A2-6843, U+6850-6962, U+696F-697D, U+698A-69CD, U+69D9-6C41, U+6C4E-751F, U+7525-77E2, U+77E7-793C, U+7941-897F, U+8986-8A13, U+8A18-8AC7, U+8ACC-8CC4, U+8CCA-8CE6, U+8CED-9593, U+95A3-FF06, U+FF0A-FF0F, U+FF1A-FF5D, U+FFE0-FFE5;
}
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 200;
  src: url('/font/NotoSansCJKjp-Light-0.woff2') format('woff2');
  unicode-range: U+0020, U+0026-0029, U+002C-003A, U+0041-005A, U+005F, U+0061-007A, U+007E, U+00A9, U+03B2, U+2019, U+201D, U+203B, U+25A0, U+25CB, U+3001-3002, U+3005, U+3007, U+300C-3011, U+301C, U+3042, U+3044, U+3046, U+3048, U+304A-304F, U+3051-305B, U+305D, U+305F-3060, U+3063-3064, U+3066-306B, U+306D-3070, U+3073, U+3078-3079, U+307E-3082, U+3084, U+3086, U+3088-308C, U+308F, U+3092-3093, U+30A1-30A4, U+30A6-30AB, U+30AD-30B1, U+30B3, U+30B5-30BB, U+30BD, U+30BF-30C1, U+30C3-30C4, U+30C6-30CB, U+30CD-30D1, U+30D3, U+30D5-30D7, U+30D9-30E7, U+30E9-30ED, U+30EF, U+30F3, U+30FB-30FC, U+4E00, U+4E07, U+4E0A-4E0B, U+4E0D, U+4E16, U+4E26, U+4E2D, U+4E3B, U+4E86, U+4E88, U+4E8B, U+4E94, U+4EA4, U+4EBA, U+4ECA, U+4ED6, U+4ED8, U+4EE3, U+4EE5, U+4EEE, U+4F01, U+4F11, U+4F1A, U+4F34, U+4F4F, U+4F53, U+4F59, U+4F5C, U+4F75, U+4F7F, U+4F8B, U+4F9B, U+4F9D, U+4FA1, U+4FBF, U+4FC2, U+4FDD, U+4FE1, U+500B, U+5024, U+505C, U+5074, U+5099, U+5104, U+5143, U+5148, U+5165, U+5168, U+516C, U+5171, U+5185-5186, U+518D, U+5199, U+51FA, U+51FD, U+5206-5207, U+521D, U+5225, U+5229, U+5230, U+523B, U+524D, U+5272, U+529B, U+52A0, U+52A3, U+52B9, U+52D5, U+52D8-52D9, U+5316, U+533A-533B, U+5341, U+5354, U+5358, U+5370, U+53C2, U+53C8, U+53CA, U+53CD-53CE, U+53D6-53D7, U+53E3, U+53EF, U+53F3, U+53F6-53F8, U+5404, U+5408, U+540C-540D, U+5426, U+544A, U+5473, U+54C1, U+54E1, U+554F, U+55B6, U+56DE, U+56E3, U+56F3, U+56FD, U+571F, U+5728, U+5730, U+5747, U+57FA, U+5831, U+5834, U+5883, U+58EB, U+58F0, U+58F2, U+5909, U+5916, U+5927, U+5931, U+5951, U+59CB, U+59D3, U+5B50, U+5B57-5B58, U+5B66, U+5B8C, U+5B98, U+5B9A-5B9B, U+5B9F, U+5BA2, U+5BB6, U+5BB9, U+5BFE, U+5C01-5C02, U+5C0F, U+5C40, U+5C45, U+5C4A, U+5C55, U+5C5E, U+5C71, U+5C90, U+5DEE, U+5E02-5E03, U+5E0C, U+5E30, U+5E73-5E74, U+5EA6-5EA7, U+5EAB, U+5EC3, U+5EF6, U+5EFA, U+5F0A, U+5F0F, U+5F15, U+5F53, U+5F62, U+5F79, U+5F8C, U+5F93, U+5F97, U+5FA1, U+5FA9, U+5FC3, U+5FC5, U+5FDC, U+601D, U+6025, U+6027, U+60C5, U+60F3, U+610F, U+611F, U+616E, U+6210, U+6234, U+6238, U+623B, U+6240, U+624B, U+6255, U+6271, U+627F-6280, U+6284, U+6295, U+6297, U+62B5, U+62BC, U+62C5, U+62D2, U+6301, U+6307, U+632F, U+63B2, U+63D0, U+63DB, U+63F4, U+643A, U+652F, U+6539, U+653E, U+6570, U+6587, U+6599, U+65AD, U+65B0, U+65B9, U+65BD, U+65CF, U+65E2, U+65E5, U+65E7-65E8, U+660E, U+6620, U+6642, U+6697, U+66DC, U+66F4, U+66F8, U+66FF-6700, U+6708-6709, U+671B, U+671D, U+671F, U+6728, U+672A-672D, U+6750-6751, U+6765, U+679A, U+682A, U+683C, U+6848, U+68C4, U+696D, U+6975, U+697D, U+6982, U+69D8, U+6A29, U+6A5F, U+6B04, U+6B21, U+6B62-6B63, U+6B8B, U+6BCE, U+6C0F, U+6C11, U+6C42, U+6C7A, U+6CBF, U+6CC1, U+6CD5, U+6CE8, U+6D3B, U+6D41, U+6D77, U+6D88, U+6DFB, U+6E08, U+6E21, U+6E80, U+6E96, U+6EC5, U+70B9-70BA, U+7121, U+7136, U+7167, U+7248, U+7269, U+7279, U+72B6, U+73FE, U+7406, U+74B0, U+751F, U+7523, U+7528, U+7533, U+753A-753B, U+754C, U+7565, U+756A, U+7570, U+7642, U+767A-767B, U+7684, U+76C6, U+76EE, U+76F4, U+76F8, U+7740, U+77E5, U+7814, U+7834, U+78BA, U+793A, U+793E, U+795D, U+7968, U+79F0, U+79FB, U+7A0B, U+7A2E, U+7A76, U+7A93, U+7ACB, U+7B2C, U+7B49, U+7B52, U+7B54, U+7B97, U+7BA1, U+7C21, U+7C3F, U+7C4D, U+7D04, U+7D10, U+7D1B, U+7D30, U+7D42, U+7D44, U+7D4C, U+7D50, U+7D61, U+7D76, U+7D99-7D9A, U+7DCA, U+7DCF, U+7DE0, U+7DEF, U+7F6E, U+7F72, U+7FCC, U+8003, U+8005, U+80FD, U+81EA, U+81F4, U+8208, U+822C, U+82B8, U+843D, U+878D, U+884C, U+8853, U+8861, U+8868, U+88AB, U+88C5, U+88D5, U+88FD, U+897F, U+8981, U+898F, U+89A7, U+89B3, U+89E3, U+8A08, U+8A17-8A18, U+8A2D, U+8A3C, U+8A55, U+8A71-8A73, U+8A8D, U+8A9E, U+8AA4, U+8AB0, U+8ABF, U+8ACB, U+8AF8, U+8AFE, U+8B04, U+8B70, U+8B72, U+8B77, U+8C61, U+8CA0-8CA1, U+8CA8-8CA9, U+8CAF, U+8CB4, U+8CBC, U+8CC7, U+8CDB, U+8CEA, U+8D77, U+8DB3, U+8E0F, U+8EAB, U+8EE2, U+8F09, U+8F44, U+8F9E, U+8FBC, U+8FC4, U+8FD4, U+8FFD, U+9000-9001, U+9014, U+901A, U+9023, U+9032, U+904B, U+904E, U+9053-9055, U+9060, U+9069, U+9084, U+90AA, U+90E8, U+90F5, U+914D, U+916C, U+91CF, U+91D1, U+91DD, U+9280, U+92AD, U+9332, U+9451, U+9577, U+958B, U+9593, U+95A2, U+95B2, U+961C, U+962A, U+9644, U+964D, U+9650, U+9664, U+969B, U+96FB, U+9762, U+9769, U+97F3, U+9802, U+9805-9806, U+9808, U+9810, U+9818, U+983C, U+984D, U+9858, U+985E, U+9867, U+9AD8, U+9B42, U+9B54, U+FF01, U+FF08-FF09, U+FF1A, U+FF1C, U+FF1E, U+FF28, U+FF30;
}
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 200;
  src: url('/font/NotoSansCJKjp-Light-1.woff2') format('woff2');
  unicode-range: U+0021-0025, U+002A-002B, U+003B-0040, U+005B-005E, U+0060, U+007B-007D, U+00A1-00A8, U+00AA-03B1, U+03B3-2018, U+201C, U+2020-2033, U+2103, U+212B-2312, U+2500-254B, U+25A1-25C7, U+25CE-266F, U+3003, U+3006, U+3008-300B, U+3012-3015, U+3041, U+3043, U+3045, U+3047, U+3049, U+3050, U+305C, U+305E, U+3061-3062, U+3065, U+306C, U+3071-3072, U+3074-3077, U+307A-307D, U+3083, U+3085, U+3087, U+308D-308E, U+3090-3091, U+309B-309E, U+30A5, U+30AC, U+30B2, U+30B4, U+30BC, U+30BE, U+30C2, U+30C5, U+30CC, U+30D2, U+30D4, U+30D8, U+30E8, U+30EE, U+30F0-30F2, U+30F4-30F6, U+30FD-30FE, U+4E01-4E03, U+4E08-4E09, U+4E0E-4E14, U+4E18-4E21, U+4E32-4E39, U+4E43-4E80, U+4E89, U+4E8C-4E92, U+4E95-4EA1, U+4EA5-4EAE, U+4EC0-4EC7, U+4ECB-4ED5, U+4ED9-4EDD, U+4EE4, U+4EF0-4EFB, U+4F0A-4F10, U+4F1D-4F2F, U+4F36-4F4E, U+4F50-4F51, U+4F55, U+4F73, U+4F7C, U+4F83, U+4F8D, U+4FA0, U+4FAD-4FB6, U+4FC3-4FD7, U+4FE3-5009, U+500D-5023, U+5026-504F, U+5065-5072, U+5075-5098, U+50AC-5100, U+5112-5141, U+5144-5147, U+5149-515C, U+516B, U+516D, U+5175-517C, U+518A, U+5192-5197, U+51A0-51F9, U+5200-5203, U+5208-5217, U+5224, U+5236-523A, U+5243-524A, U+5256-5270, U+5275-5289, U+529F, U+52A9-52B4, U+52BE-52C9, U+52DD-5305, U+5317-5339, U+533F, U+5343-5353, U+5357, U+535A-536F, U+5371-53BB, U+53C9, U+53CB-53CC, U+53D4, U+53D9-53E2, U+53E4-53EC, U+53F0-53F2, U+5403, U+5409-540B, U+540E-5420, U+542B-5449, U+5451-546A, U+547C-54C0, U+54C9, U+54E8-5546, U+5553-55B0, U+55E3-56DB, U+56E0, U+56F0-56F2, U+56FA, U+5703-5712, U+5727, U+572D, U+5742, U+574A-57F9, U+57FC-5830, U+5835-587E, U+5893-58D5, U+58EC-58EE, U+58F1, U+58F7, U+590F-5915, U+5919-5922, U+5929-592E, U+5937-594F, U+5954-59C9, U+59D0-59D1, U+59D4-5B30, U+5B54, U+5B5C-5B64, U+5B6B-5B8B, U+5B8D-5B97, U+5B99, U+5B9C-5B9D, U+5BA3-5BB5, U+5BBF-5BFA, U+5BFF, U+5C04-5C0E, U+5C11-5C3F, U+5C48, U+5C4B-5C51, U+5C60-5C6F, U+5CA1-5DE8, U+5DF1-5DFE, U+5E06, U+5E16-5E2F, U+5E33-5E72, U+5E78-5E9C, U+5EAD-5EB8, U+5EC9-5EE0, U+5EF7, U+5EFB-5F04, U+5F10-5F14, U+5F17-5F4A, U+5F66-5F71, U+5F7C-5F8B, U+5F90-5F92, U+5FAA-5FBD, U+5FCC-5FD9, U+5FE0-601C, U+6020, U+6028-60BC, U+60C7-60F0, U+60F9-6109, U+611A-611B, U+6148-6168, U+6170-620E, U+6211-622F, U+623F, U+6247-6249, U+624D-6253, U+6258-626E, U+6276-6279, U+628A-6291, U+6298-62B1, U+62B9, U+62BD, U+62CD-62D0, U+62D3-62FE, U+6309-632B, U+633A-63AC, U+63B4-63CF, U+63D6-63DA, U+63E1-63EE, U+63FA-642D, U+643E-64FE, U+653B, U+653F-656C, U+6574-6577, U+6589-6597, U+659C-65AC, U+65AF, U+65BC, U+65C5-65CB, U+65D7, U+65E6, U+65E9-660C, U+660F-661F, U+6625-663C, U+6643-6696, U+66A2-66D9, U+66DD-66F3, U+66F9-66FE, U+670B-6717, U+6731-674F, U+6753-6762, U+676D-6797, U+679C-6822, U+6834-6839, U+683D-6843, U+6850-68BC, U+68C9-6962, U+696F-6973, U+697C, U+698A-69CD, U+69D9-6A21, U+6A2A-6A58, U+6A61-6AE8, U+6B1D-6B20, U+6B23-6B53, U+6B64-6B8A, U+6B96-6BCD, U+6BD2-6BDB, U+6C17-6C41, U+6C4E-6C72, U+6C7D-6CBC, U+6CC9-6CCC, U+6CE1-6CE5, U+6CF0-6D32, U+6D3E, U+6D44-6D74, U+6D78, U+6D8C-6DF7, U+6E05-6E07, U+6E09-6E20, U+6E25-6E7F, U+6E8C-6E90, U+6E9C-6EBA, U+6ECB-70AD, U+70C8-711A, U+7126, U+713C-7164, U+7169-7247, U+724C-7267, U+7272, U+727D-72AF, U+72C2-73ED, U+7403, U+7409-7483, U+74BD-751C, U+7525, U+752B-7532, U+7537, U+754F-7562, U+7566, U+7573-75F4, U+764C-7656, U+767D-767E, U+7686-76C3, U+76C8-76E4, U+76F2, U+76FE-773C, U+7761-77E2, U+77E7-7802, U+7815-7832, U+783A-78A9, U+78C1-790E, U+793C, U+7941-7956, U+795E-7965, U+796D-79E9, U+7A00, U+7A0E-7A1C, U+7A32-7A74, U+7A7A-7A92, U+7A9F-7AC3, U+7ADC-7B26, U+7B39-7B48, U+7B4B-7B51, U+7B56-7B95, U+7BAA-7BED, U+7C38-7C3E, U+7C73-7D00, U+7D05-7D0D, U+7D14-7D1A, U+7D20-7D2F, U+7D33-7D3A, U+7D43, U+7D5E, U+7D62-7D75, U+7D79, U+7D9C-7DBF, U+7DCB, U+7DD1-7DDA, U+7DE8-7DEC, U+7DF4-7F6B, U+7F70, U+7F75-7FC1, U+7FD2-8001, U+800C-80F8, U+8102-81E8, U+81ED-81F3, U+81FC, U+820C-822A, U+8235-82B3, U+82B9-8431, U+8449-877F, U+87BA-8846, U+8857-885D, U+8863, U+8870-8896, U+88B4-88C2, U+88CF, U+88DC-88F8, U+88FE-8972, U+8986-898B, U+8996-899A, U+89AA, U+89D2, U+89E6-8A02, U+8A0A-8A13, U+8A1F-8A2A, U+8A31-8A3B, U+8A50-8A54, U+8A5E-8A70, U+8A87-8A8C, U+8A93-8A98, U+8AA0, U+8AAC-8AAD, U+8AB2-8ABC, U+8AC7, U+8ACC-8AEE, U+8AFA, U+8B00-8B02, U+8B0E-8B66, U+8B83-8C5A, U+8C6A-8C9E, U+8CA2-8CA7, U+8CAB-8CAC, U+8CB0, U+8CB7-8CBB, U+8CBF-8CC4, U+8CCA-8CD3, U+8CDC-8CE6, U+8CED-8D74, U+8D85-8DA8, U+8DDD-8E0A, U+8E44-8E8D, U+8EAF-8EDF, U+8EF8-8F03, U+8F14-8F3F, U+8F4D-8F9B, U+8FB0-8FBB, U+8FBF-8FC2, U+8FC5-8FD1, U+8FE6-8FF7, U+9003-9013, U+9017-9019, U+901D-9022, U+902E-9031, U+9038-904A, U+904D, U+905C, U+9061-9065, U+906D-907F, U+9091-90A6, U+90B8-90E1, U+90ED, U+90F7-914C, U+914E-916A, U+9175-91CE, U+91D8-91DC, U+91E3-927E, U+9283-929A, U+92D2-932F, U+934B-9438, U+9453, U+9580-9589, U+958F-9591, U+95A3-95A5, U+95C7-95D8, U+9632-9640, U+965B-9663, U+9665-9699, U+969C-96F7, U+9700-975E, U+976D-97EE, U+97FB-9801, U+9803, U+9811-9817, U+981A-983B, U+984C, U+984E-9855, U+985B, U+98A8-9AC4, U+9AEA-9B41, U+9B45, U+9B5A-9F8D, U+FF03-FF06, U+FF0A-FF0F, U+FF1B, U+FF1D, U+FF1F-FF27, U+FF29-FF2F, U+FF31-FF5D, U+FFE0-FFE5;
}
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 400;
  src: url('/font/NotoSansCJKjp-Regular-0.woff2') format('woff2');
  unicode-range: U+0050, U+0052, U+005A, U+0061, U+0066, U+0069, U+3044, U+304A, U+305B, U+305D, U+306E, U+3089, U+308F, U+30B5, U+30B9, U+30D3, U+30FB-30FC, U+4ED6, U+4F1A, U+4F9B, U+5404, U+5408, U+554F, U+5831, U+5E83, U+65E7, U+6982, U+77E5, U+793E, U+7A2E, U+8981, U+8A17;
}
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 400;
  src: url('/font/NotoSansCJKjp-Regular-1.woff2') format('woff2');
  unicode-range: U+0020-004F, U+0051, U+0053-0059, U+005B-0060, U+0062-0065, U+0067-0068, U+006A-2103, U+212B-2312, U+2500-266F, U+3001-3043, U+3045-3049, U+304B-305A, U+305C, U+305E-306D, U+306F-3088, U+308A-308E, U+3090-30B4, U+30B6-30B8, U+30BA-30D2, U+30D4-30F6, U+30FD-4ED5, U+4ED8-4F11, U+4F1D-4F8D, U+4F9D-5403, U+5409-5546, U+5553-5830, U+5834-5E81, U+5E84-65E6, U+65E8-697D, U+698A-77E2, U+77E7-793C, U+7941-7A1C, U+7A32-897F, U+8986-8A13, U+8A18-FF0F, U+FF1A-FF5D, U+FFE0-FFE5;
}
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 500;
  src: url('/font/NotoSansCJKjp-Medium-0.woff2') format('woff2');
  unicode-range: U+0041, U+0043-0044, U+004D, U+004F, U+0053-0054, U+0061, U+0063, U+0065, U+0069-006B, U+006E-006F, U+0072, U+0075;
}
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 500;
  src: url('/font/NotoSansCJKjp-Medium-1.woff2') format('woff2');
  unicode-range: U+0020-0040, U+0042, U+0045-004C, U+004E, U+0050-0052, U+0055-0060, U+0062, U+0064, U+0066-0068, U+006C-006D, U+0070-0071, U+0073-0074, U+0076-2103, U+212B-2312, U+2500-266F, U+3001-FF0F, U+FF1A-FF5D, U+FFE0-FFE5;
}
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 700;
  src: url('/font/NotoSansCJKjp-Bold-0.woff2') format('woff2');
  unicode-range: U+002E-0030, U+0044, U+0046, U+0049, U+004E, U+0051, U+0053-0054, U+005A, U+0061, U+0066, U+0069, U+3001-3002, U+300C-300D, U+3010-3011, U+3042, U+3044, U+3046, U+3048, U+304A-304F, U+3051, U+3053-3055, U+3057, U+3059, U+305B, U+305F-3060, U+3063-3064, U+3066-306B, U+306E-3070, U+3078, U+307B, U+307E, U+3081-3082, U+3084, U+3087-308C, U+308F, U+3092-3093, U+30A2-30A4, U+30A7, U+30AB, U+30AF-30B1, U+30B3, U+30B5, U+30B7-30B9, U+30BD, U+30BF, U+30C1, U+30C3, U+30C7-30C9, U+30CD, U+30D1, U+30D3, U+30D5-30D7, U+30DE, U+30E5, U+30E7, U+30EA-30ED, U+30EF, U+30F3, U+30FB-30FC, U+4E00, U+4E08, U+4E0D, U+4E2D, U+4E88, U+4E8B, U+4EA1, U+4EA4, U+4EBA, U+4ED6, U+4EE3, U+4EE5, U+4EEE, U+4EF6, U+4F1A, U+4F4F, U+4F53, U+4F55, U+4F8B, U+4F9B, U+4FDD, U+5099, U+5148, U+5165, U+5168, U+5185-5186, U+518D, U+5199, U+5206, U+524D, U+52D9, U+5370, U+53BB, U+53C2, U+53CD, U+53D6-53D7, U+53E3, U+53EF, U+53F7, U+5408, U+540C, U+554F, U+55B6, U+5728, U+57FA, U+5834, U+5909, U+5916, U+5927, U+592B, U+5931, U+59D3, U+5B9A, U+5BA2, U+5BB6, U+5BB9, U+5BFE, U+5C40, U+5C45, U+5C4A, U+5E0C, U+5EA6-5EA7, U+5EC3, U+5F0F, U+5F15, U+5F62, U+5F8C, U+5F97, U+5FC5, U+5FD8, U+5FDC, U+601D, U+60F3, U+610F, U+623B, U+6240, U+624B, U+6255, U+627F, U+6301, U+6307, U+632F, U+63DB, U+6539, U+6559, U+6570, U+6599, U+65B9, U+65CF, U+65E5, U+65E7, U+660E, U+6620, U+6697, U+66F4, U+66F8, U+671B, U+671F, U+672C, U+6761, U+6765, U+682A, U+6848, U+696D, U+6982, U+69D8, U+6B8B, U+6C42, U+6C7A, U+6CD5, U+6CE8, U+6D41, U+6D77, U+6E21, U+70B9, U+73FE, U+7406, U+7523, U+7533, U+756A, U+7570, U+767A, U+76F8, U+77E5, U+78BA, U+793E, U+79C1, U+7BA1, U+7D1B, U+7D99-7D9A, U+8003, U+8005, U+80FD, U+81EA, U+826F, U+884C, U+88AB, U+8981, U+899A, U+8A17-8A18, U+8A3C, U+8A8D, U+8ACB, U+8AFE, U+8B72, U+8C61, U+8CA8, U+8CC7, U+8EAB, U+8EE2, U+8F09, U+8F44, U+8F9E, U+8FBC, U+8FD4, U+9000-9001, U+901A, U+904B, U+904E, U+90E8, U+90F5, U+91D1, U+91DD, U+9451, U+9593, U+95A2, U+9650, U+967A, U+969B, U+985E, U+9AD8, U+FF08-FF09, U+FF1F;
}
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 700;
  src: url('/font/NotoSansCJKjp-Bold-1.woff2') format('woff2');
  unicode-range: U+0020-002D, U+0031-0043, U+0045, U+0047-0048, U+004A-004D, U+004F-0050, U+0052, U+0055-0059, U+005B-0060, U+0062-0065, U+0067-0068, U+006A-2103, U+212B-2312, U+2500-266F, U+3003-300B, U+300E-300F, U+3012-3041, U+3043, U+3045, U+3047, U+3049, U+3050, U+3052, U+3056, U+3058, U+305A, U+305C-305E, U+3061-3062, U+3065, U+306C-306D, U+3071-3077, U+3079-307A, U+307C-307D, U+307F-3080, U+3083, U+3085-3086, U+308D-308E, U+3090-3091, U+309B-30A1, U+30A5-30A6, U+30A8-30AA, U+30AC-30AE, U+30B2, U+30B4, U+30B6, U+30BA-30BC, U+30BE, U+30C0, U+30C2, U+30C4-30C6, U+30CA-30CC, U+30CE-30D0, U+30D2, U+30D4, U+30D8-30DD, U+30DF-30E4, U+30E6, U+30E8-30E9, U+30EE, U+30F0-30F2, U+30F4-30F6, U+30FD-30FE, U+4E01-4E07, U+4E09-4E0B, U+4E0E-4E26, U+4E32-4E86, U+4E89, U+4E8C-4E9C, U+4EA5-4EAE, U+4EC0-4ED5, U+4ED8-4EDD, U+4EE4, U+4EF0-4EF2, U+4EFB-4F11, U+4F1D-4F4E, U+4F50-4F51, U+4F59-4F83, U+4F8D, U+4F9D-4FD7, U+4FE1-5098, U+50AC-5147, U+5149-515C, U+516B-517C, U+518A, U+5192-5197, U+51A0-5203, U+5207-524A, U+5256-52D8, U+52DD-536F, U+5371-53B3, U+53C8-53CC, U+53CE-53D4, U+53D9-53E2, U+53E4-53EC, U+53F0-53F6, U+53F8-5404, U+5409-540B, U+540D-5546, U+5553-55B0, U+55E3-5727, U+572D-57F9, U+57FC-5831, U+5835-58F7, U+590F-5915, U+5919-5922, U+5929-592A, U+592E, U+5937-59D1, U+59D4-5B99, U+5B9B-5B9F, U+5BA3-5BB5, U+5BBF-5BFA, U+5BFF-5C3F, U+5C48, U+5C4B-5E06, U+5E16-5E9C, U+5EAB-5EB8, U+5EC9-5F0A, U+5F10-5F14, U+5F17-5F53, U+5F66-5F8B, U+5F90-5F93, U+5FA1-5FC3, U+5FCC-5FD7, U+5FD9, U+5FE0-601C, U+6020-60F0, U+60F9-6109, U+611A-6238, U+623F, U+6247-6249, U+624D-6253, U+6258-6279, U+6280-62FE, U+6309-632B, U+633A-63DA, U+63E1-652F, U+653B-6557, U+6562-656C, U+6574-6597, U+659C-65B0, U+65BC-65CB, U+65D7-65E2, U+65E6, U+65E8-660C, U+660F-661F, U+6625-6696, U+66A2-66F3, U+66F9-6717, U+671D, U+6728-672B, U+672D-675F, U+6762, U+676D-6822, U+6834-6843, U+6850-6962, U+696F-697D, U+698A-69CD, U+69D9-6B8A, U+6B96-6C41, U+6C4E-6C72, U+6C7D-6CCC, U+6CE1-6CE5, U+6CF0-6D3E, U+6D44-6D74, U+6D78-6E20, U+6E25-70AD, U+70BA-73ED, U+7403, U+7409-751F, U+7525-7532, U+7537-7566, U+7573-7656, U+767B-76F4, U+76FE-77E2, U+77E7-78A9, U+78C1-793C, U+7941-79C0, U+79CB-7B97, U+7BAA-7D1A, U+7D20-7D79, U+7D9C-8001, U+800C-80F8, U+8102-81E8, U+81ED-826E, U+8272-8846, U+8853-8896, U+88B4-897F, U+8986-8997, U+89A7-8A13, U+8A1F-8A3B, U+8A50-8A8C, U+8A93-8AC7, U+8ACC-8AFA, U+8B00-8B70, U+8B77-8C5A, U+8C6A-8CA7, U+8CA9-8CC4, U+8CCA-8E8D, U+8EAF-8EDF, U+8EF8-8F03, U+8F14-8F3F, U+8F4D-8F9B, U+8FB0-8FBB, U+8FBF-8FD1, U+8FE6-8FFD, U+9003-9019, U+901D-904A, U+904D, U+9053-90E1, U+90ED, U+90F7-91CF, U+91D8-91DC, U+91E3-9438, U+9453-9591, U+95A3-964D, U+965B-9678, U+967D-9699, U+969C-985B, U+9867-9AC4, U+9AEA-FF06, U+FF0A-FF0F, U+FF1A-FF1E, U+FF20-FF5D, U+FFE0-FFE5;
}
/* @generated:font-face end */
@-webkit-keyframes scale {
    0% { -webkit-transform: scale(1.2, 1.2); transform: scale(1.2, 1.2); }
    100%   { -webkit-transform: scale(1, 1); transform: scale(1, 1); }
}
@keyframes scale {
    0% { -webkit-transform: scale(1.2, 1.2); transform: scale(1.2, 1.2); }
    100%   { -webkit-transform: scale(1, 1); transform: scale(1, 1); }
}

body{
  font-family: "Noto Sans Japanese", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  color: #333333;
  font-weight: 200;
  background: #030712;
}
/* .bodyBg {
  background: url(/img/header01.jpg) no-repeat center center;
  background-size: cover;
  animation: scale 30s ease-out;
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: -1;
  opacity: 0;
} */
a{
  text-decoration: none;
  color: #28387a;
}
input,
textarea{
  -webkit-appearance: none;
}
input.color {
    color: #4797BC;
    font-weight: bold;
    width: 100%;
}
input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
    color: #bbb;
}
input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
    color: #bbb;
}

input:focus::-webkit-input-placeholder,
textarea:focus::-webkit-input-placeholder {
  color: transparent;
}

input:focus:-ms-input-placeholder,
textarea:focus:-ms-input-placeholder {
  color: transparent;
}

input:focus::-ms-input-placeholder,
textarea:focus::-ms-input-placeholder {
  color: transparent;
}

input:focus::placeholder,
textarea:focus::placeholder {
  color: transparent;
}

.clearfix:after {
    content:" ";
    display:block;
    clear:both;
}
.mt0{
  margin-top: 0!important;
}
.spMt40{
  margin-top: 0;
}
.indent1em{
  text-indent: -1em;
  padding-left: 1em;
}
.wrap{
  width: 950px;
  margin: 0 auto;
}
.subTitle{
  font-size: 44px;
  font-weight: 100;
  letter-spacing: 4.5px;
  color: #2f4ca0;
  text-align: center;
}
@-webkit-keyframes gra01 {
    0%{background-position:0% 100%}
    50%{background-position:100% 100%}
    100%{background-position:0% 100%}
}
@keyframes gra01 {
    0%{background-position:0% 100%}
    50%{background-position:100% 100%}
    100%{background-position:0% 100%}
}
.blueArea{
  background: linear-gradient(-45deg, #000066, #0044cc);
  background-size: 150% 150%;
  -webkit-animation: gra01 6s ease infinite;
          animation: gra01 6s ease infinite;
  color: #fff;
}

.blueArea .subTitle{
  color: #fff;
}

@media screen and (min-width: 769px)  {
  .pcNone{
    display: none;
  }
  .opacityHover{
    -webkit-transition: opacity .25s;
    transition: opacity .25s;
  }
  .opacityHover:hover{
    opacity: .8;
  }
  .opacityHover2{
    -webkit-transition: opacity .25s;
    transition: opacity .25s;
  }
  .opacityHover2:hover{
    opacity: .7;
  }
}
input:focus {
  outline: solid 1px #28387a;
}
textarea:focus {
  outline: solid 1px #28387a;
}

@media screen and (max-width: 768px)  {
  .spMt40{
    margin-top: 40px;
  }
  .wrap{
    width: auto;
  }
  .subTitle{
    font-size: 25px;
    letter-spacing: 2.5px;
	  line-height: 1.3;
  }
}

.slideBt{
  width: 300px;
  height: 60px;
  margin: 0 auto;
  font-size: 15px;
  background: #fff;
  color: #28387a;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-transition: all .3s;
  transition: all .3s;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  -webkit-box-shadow: 0 0 1px transparent;
  box-shadow: 0 0 1px transparent;
  position: relative;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  overflow: hidden;
}
.slideBt:before {
  content: "";
  position: absolute;
  z-index: -1;
  margin-left: -13px;
  left: -325px;
  background: #000066;
  height: 100%;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transform-origin: 0 50%;
  transform-origin: 0 50%;
  -webkit-transition-property: left;
  transition-property: left;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
  -moz-transform: skewX(20deg);
  -webkit-transform: skewX(20deg);
  -o-transform: skewX(20deg);
  -ms-transform: skewX(20deg);
  width: 325px;
}
.bt01{
  width: 300px;
  height: 60px;
  margin: 0 auto;
  font-size: 15px;
  background: #fff;
  color: #28387a;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  vertical-align: middle;
  -webkit-box-shadow: 0 0 1px transparent;
  box-shadow: 0 0 1px transparent;
  position: relative;
  overflow: hidden;
}

@media screen and (min-width: 769px)  {
.slideBt:hover:before, .slideBt:focus:before, .slideBt:active:before {
    left:0;
}
.slideBt:hover{
  color: #fff;
}
}

@media screen and (max-width: 768px)  {
  .slideBt{
    width: 200px;
    height: 40px;
  }
  .bt01{
    width: 100%;
    height: 50px;
  }
}

/* header
================================================== */
#header{
  /* background: #030712; */
}
#header .in{
  height: 768px;
  margin: 0 auto;
  position: relative;
  overflow: hidden;
  z-index: 30;
}
#header .in .nav{
  width: 1000px;
  margin: 0 auto;
  padding: 0 50px;
  height: 80px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  z-index: 10;
}
#header .in .nav h1{
}
#header .in .nav .navMenu{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 362px;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
#header .in .nav .navMenu li a{
  color: #fff;
  text-decoration: none;
  font-size: 12px;
}
#header .in .txt01{
  display: block;
  opacity: 0;
  margin: 195px auto 0;
  position: relative;
  z-index: 10;
}
#header .in .nav .navMenuSp{
  display: none;
}
#header .bg{
  background: url(/img/header01.jpg) no-repeat;
  background-size: 100% auto;
  background-position: center top;
  -webkit-animation: scale 25s ease;
          animation: scale 25s ease;
  position: absolute;
  width: 100%;
  height: 1068px;
  top: 0;
  bottom: 0;
  opacity: 0;
}
#header .topArw{
  position: absolute;
  bottom: 40px;
  left: 50%;
  z-index: 2;
  display: inline-block;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  text-decoration: none;
  padding-top: 60px;
  color: #fff;
}
#header .topArw span {
  position: absolute;
  top: 0;
  left: 50%;
  width: 24px;
  height: 24px;
  margin-left: -12px;
  border-left: 1px solid #fff;
  border-bottom: 1px solid #fff;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/* headerFix
================================================== */
#headerFix{
  position: fixed;
  top: 0;
  width: 100%;
  -webkit-box-shadow:0px 0px 40px -11px #333;
          box-shadow:0px 0px 40px -11px #333;
  z-index: 100;
}
#headerFix .in{
  display: none;
  background: #fff;
  padding: 0 50px;
}
#headerFix .nav{
  width: 1000px;
  height: 80px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#headerFix .nav .navMenu{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 362px;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
#headerFix .nav .navMenu li a{
  color: #2f4ca0;
  text-decoration: none;
  font-size: 12px;
  font-weight: 400;
  -webkit-backface-visibility: hidden; /* 追加 */
    backface-visibility: hidden; /* 追加 */
    display: inline-block;
}
#header .nav h1 img,
#headerFix .nav h1 img{
  width: 225px;
}
@media screen and (min-width: 769px)  {
  #headerFix .navSpWrap .menuTrigger,
  #headerFix .navSpWrap .navMenuSp{
    display: none;
  }
}

@media screen and (max-width: 768px)  {
  #header .bg{
    height: 750px;
    background: url(/img/header01_sp.jpg) no-repeat;
    background-size: 100% auto;
    background-position: center top;
    -webkit-animation:none ;
            animation:none ;
  }
  #header .in{
    width: auto;
    height: 450px;
    z-index: auto;
  }
  #headerFix .in{
    width: auto;
    padding: 0;
  }
  #header .in .txt01,
  #headerFix .in .txt01{
    width: 283px;
    margin-top: 140px;
  }
  #header .in .nav,
  #headerFix .in .nav{
    height: 50px;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    padding: 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    z-index: 30;
  }
  #header .in .nav .navSpWrap,
  #headerFix .in .nav .navSpWrap{
    width: 100%;
  }
  #header .in .nav .navSpWrap h1,
  #headerFix .in .nav .navSpWrap h1{
    height: 50px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding-left: 23px;
  }
  #header .in .nav h1 img,
  #headerFix .in .nav h1 img{
    width: 167px;
  }
  #header .in .nav .navMenu,
  #headerFix .in .nav .navMenu{
    display: none;
  }
  #header .in .nav .navMenuSp,
  #headerFix .in .nav .navMenuSp{
    width: 100%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    position: relative;
    top: 0;
    display: none;
  }
  #header .in .nav .navMenuSp li a,
  #headerFix .in .nav .navMenuSp li a{
    font-size: 15px;
    color: #28387a;
    background: #fff;
    height: 50px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    border-top: solid 1px #f0f0f0;
    font-weight: bold;
  }
  #header .headerBg,
  #headerFix .headerBg{
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.3);
    position: fixed;
    top: 50px;
    left: 0;
    z-index: 20;
    display: none;
  }

  #header .nav .menuTrigger,
  #header .nav .menuTrigger span,
  #headerFix .nav .menuTrigger,
  #headerFix .nav .menuTrigger span {
    display: inline-block;
    -webkit-transition: all .4s;
    transition: all .4s;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  #header .nav .menuTrigger,
  #headerFix .nav .menuTrigger {
    position: absolute;
    top: 0;
    right: 15px;
    width: 50px;
    height: 50px;
    -webkit-tap-highlight-color: transparent;
  }
  #header .nav .menuTrigger span,
  #headerFix .nav .menuTrigger span {
    position: absolute;
    left: 15px;
    width: 20px;
    height: 1px;
    background-color: #fff;
  }
  #headerFix .nav .menuTrigger span{
    background-color: #28387a;
  }
  #header .nav .menuTrigger span:nth-of-type(1),
  #headerFix .nav .menuTrigger span:nth-of-type(1) {
    top: 21px;
  }
  #header .nav .menuTrigger span:nth-of-type(2),
  #headerFix .nav .menuTrigger span:nth-of-type(2) {
    top: 27px;
  }
  #header .nav .menuTrigger.active span:nth-of-type(1),
  #headerFix .nav .menuTrigger.active span:nth-of-type(1) {
    -webkit-transform: translateY(3px) rotate(-315deg);
    transform: translateY(3px) rotate(-315deg);
  }
  #header .nav .menuTrigger.active span:nth-of-type(2),
  #headerFix .nav .menuTrigger.active span:nth-of-type(2) {
    -webkit-transform: translateY(-3px) rotate(315deg);
    transform: translateY(-3px) rotate(315deg);
  }
  #header .topArw{
    bottom: -30px;
  }
}

/* news
================================================== */
#news{
  margin-top: -80px;
  padding-top: 80px;
  position: relative;
}
#news .wrap{
  padding: 60px 50px 100px;
}
#news .wrap .subTitle{
  text-align: center;
}
#news .titleWrap{
  position: relative;
}
#news .titleWrap .txt01{
  position: absolute;
  right: 0;
  bottom: 3px;
}
#news .titleWrap .txt01 a{
  color: #fff;
  font-size: 12px;
}
#news ul li{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 15px;
  line-height: 1.8;
  margin-top: 25px;
}
#news ul li:first-child{
  margin-top: 40px;
}
#news ul li .date{
  width: 180px;
}
#news ul li .txt{
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
#news ul li .txt a{
  color: #fff;
}

@media screen and (min-width: 769px)  {
  #news .titleWrap .txt01 a{
    -webkit-transition: color .25s;
    transition: color .25s;
  }
  #news .titleWrap .txt01 a:hover{
    color: #00ffff;
  }
  #news ul li .txt a{
    -webkit-transition: color .25s;
    transition: color .25s;
  }
  #news ul li .txt a:hover{
    color: #00ffff;
  }
}
@media screen and (max-width: 768px)  {
  #news{
    margin-top: -50px;
    padding-top: 50px;
  }
  #news .wrap{
    padding: 40px 20px 55px;
  }
  #news ul li{
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    line-height: 1.6;
    margin-top: 15px;
  }
  #news ul li:first-child{
    margin-top: 15px;
  }
  #news ul li .date{
    width: auto;
  }
  #news ul li .txt a{
    font-size: 14px;
  }
}

/* refund
================================================== */
#refund{
  margin-top: -80px;
  padding-top: 80px;
}
#refund .grayArea{
  background: #f0f0f0;
}
#refund .wrap{
  padding: 100px 0 95px;
}
#refund .txt{
  line-height: 1.9;
  margin-top: 20px;
  text-align: center;
  font-size: 15px;
}
#refund .txt02{
  text-align:center;
  margin-top:10px;
  line-height: 1.3em;
}
#refund .linkArea{
  width: 800px;
  margin: 45px auto 0;
  display: flex;
  justify-content: space-between;
}
#refund .linkAreaL{
  width: 300px;
  padding-right: 95px;
  border-right: solid 1px #ccc;
}
#refund .linkAreaL .link01 img{
  width: 69px;
}
#refund .linkAreaL .link02 img{
  width: 105px;
}
#refund .linkAreaL .link03 img{
  width: 113px;
}
#refund .linkAreaL .link04 img{
  width: 145px;
}
#refund .linkTitle{
  font-size: 15px;
  font-weight: 400;
  margin-bottom: 10px;
}
#refund .linkTitle02{
  margin-top: 30px;
}
#refund .linkArea a{
  margin-top: 20px;
}
#refund .refundWrap{
  width: 800px;
  margin: 0 auto;
}
#refund .radioWrap{
  background: #fff;
  width: 380px;
  height: 50px;
  margin: 60px auto 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: 25px;
}
#refund .radioWrap .radio{
  display: block;
  text-align: center;
}
#refund .radioArea input{
	display: none;
}
#refund .radioArea .last{
  margin-left: 70px;
}
#refund .radioArea label{
	display: inline-block;
	position: relative;
	cursor: pointer;
	padding: 10px 0 10px 20px;
	border-radius: 2px;
	font-size: 15px;
	text-align: center;
	line-height: 1;
  margin-left: 9px;
  -webkit-tap-highlight-color:rgba(0,0,0,0);
}
#refund .radioArea label span:before{
	position: absolute;
	content: "";
	top: 50%;
	left: -9px;
	width: 18px;
	height: 18px;
	margin-top: -9px;
	border-radius: 50%;
  border: solid 2px #28387a;
  background: #fff;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
#refund .radioArea input[type="radio"]:checked + p{
  color: #28387a;
}
#refund .radioArea label input[type="radio"]:checked + span:after {
	position: absolute;
	content: "";
	top: 50%;
	left: -4px;
	width: 8px;
	height: 8px;
	margin-top: -4px;
	border-radius: 50%;
	background: #28387a;
}
#refund .refundWrap01,
#refund .refundWrap02{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 20px;
}
#refund .refundWrap01 br,
#refund .refundWrap02 br{
  display: none;
}
#refund .textArea01{
  width: 390px;
  height: 50px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 15px;
  padding: 15px;
  border: solid 1px #cccccc;
  border-radius: 2px;
}

#refund .textarea{
  width: 800px;
  height: 200px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 15px;
  border: solid 1px #cccccc;
  border-radius: 2px;
  resize: none;
  font-size: 15px;
}
#refund .submitArea{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 30px;
  padding: 0 20px 0 30px;
  position: relative;
}
#refund .submitArea .textArea02{
  width: 260px;
  height: 50px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 15px;
  padding: 15px;
  border: solid 1px #cccccc;
  border-radius: 2px;
}
#refund .submitBt{
  width: 300px;
  height: 60px;
}
#refund .bt{
  width: 300px;
  height: 60px;
  font-size: 15px;
  background: linear-gradient(-45deg, #000066, #003399);
  color: #fff;
  display: block;
  margin: 0 auto 0;
  border: none;
  border-radius: 0;
  text-align: center;
}
#refund .screen-reader-response{
  display: none;
}
#refund .wpcf7-form-control-wrap{
  position: relative;
  display: block;
}
#refund .wpcf7-not-valid-tip{
  background: #ff6666;
  color: #fff;
  position: absolute;
  right: 0;
  top: -10px;
  font-size: 12px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 20px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 10px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
#refund .submitArea .checkArea{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
#refund .submitArea .checkArea img{
  margin-right: 20px;
  margin-bottom: 13px;
}
#refund.submitArea .authenticationTxt{
font-size: 12px;
color: #666;
margin-bottom: 10px;
text-align: center;
}
#refund .submitArea .authenticationTxtSp{
  display: none;
}
#refund .dialArea{
  margin-top: 60px;
  color: #666;
  font-size: 14px;
  line-height: 1.8;
}
#refund .notesArea {
  color: #666;
  font-size: 13px;
  line-height: 1.9;
  margin-top: 70px;
}
#refund .notesArea li{
  text-indent: -1em;
  padding-left: 1em;
}
#refund .notesArea li:first-child{
  margin-top: 0;
}
#refund .wpcf7-validation-errors{
  display: none!important;
}
#refund div.wpcf7-mail-sent-ok{
  display: none!important;
}

@media screen and (max-width: 768px)  {
  #refund{
    margin-top: -50px;
    padding-top: 50px;
  }
  #refund .wrap{
    padding: 40px 20px 45px;
  }
  #refund .refundWrap{
    width: auto;
  }
  #refund .refundWrap01, #refund .refundWrap02{
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-bottom: 10px;
  }
  #refund .your-department,
  #refund .your-email{
    margin-top: 10px;
  }
  #refund .textarea{
    width: 100%;
    padding: 10px 15px;
    font-size: 16px;
  }
  #refund .submitArea{
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-top: 15px;
  }
  #refund .txt{
    font-size: 14px;
    text-align: left;
    line-height: 1.6;
    margin-top: 15px;
  }
  #refund .txt02{
    line-height: 1.6;
  }
  #refund .radioWrap{
    height: 40px;
    width: 250px;
    margin: 25px auto 20px;
  }
  #refund .radioArea .last{
    margin-left: 60px;
  }
  #refund .linkTitle02{
    margin-top: 40px;
  }
  #refund .textArea01{
    width: 100%;
    height: 40px;
    font-size: 16px;
    padding: 5px 15px;
  }
  #refund .submitArea .textArea02{
    width: 150px;
    height: 30px;
    font-size: 16px;
    padding: 5px 15px;
  }
  #refund .submitArea .checkArea img{
    margin-bottom: 3px;
  }
  #refund .submitArea .authenticationTxt{
    display: none;
  }
  #refund .submitArea .authenticationTxtSp{
    display: block;
    font-size: 12px;
    margin-bottom: 8px;
    color: #666666;
  }
  #refund .submitArea .checkArea{
    margin-bottom: 20px;
  }
  #refund .submitBt{
    width: 220px;
    height: 40px;
  }
  #refund .bt{
    width: 220px;
    height: 40px;
  }
  #refund .dialArea{
    margin-top: 30px;
  }
  #refund .authentication .wpcf7-not-valid-tip{
    width: 242px;
  }
  #refund .authentication .wpcf7-not-valid-tip{
    top: auto;
  }
  #refund .notesArea{
    margin-top: 50px;
    font-size: 12px;
    line-height: 1.8;
  }
  #refund .linkArea{
    width: 100%;
    display: block;
  }
  #refund .linkAreaL{
    padding-right: 0;
    border-right: none;
    width: 100%;
  }
}

/* service
================================================== */
#service{
  margin-top: -80px;
  padding-top: 80px;
  background: #fff;
}
#service .wrap{
  width: 1000px;
  padding: 90px 50px 100px;
}
#service li{
  position: relative;
  display: block;
}
#service li .bgArea:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  opacity: 0;
  -webkit-transition: opacity .3s;
  transition: opacity .3s;
}
#service li:nth-child(1) .bgArea:before {
  background: #000;
}
#service li:nth-child(2) .bgArea:before {
  background: #fff;
}
#service li:nth-child(3) .bgArea:before {
  background: #000;
}
#service li .bgArea:hover:before{
  opacity: .25;
}

#service li:nth-child(1){
  margin-top: 30px;
}
#service li:nth-child(1) .bgArea{
  background: url(/wp-content/uploads/2023/03/service_bg01.png) no-repeat;
  background-size: 1000px 400px;
}
/*
#service li:nth-child(2) .bgArea{
  background: url(/img/service_bg02.jpg) no-repeat;
  background-size: 1000px 400px;
}
*/
#service li:nth-child(2) .bgArea{
  background: url(/img/service_bg03.jpg) no-repeat;
  background-size: 1000px 400px;
}
#service li:nth-child(3) .bgArea{
  background: url(/img/service_bg04.png) no-repeat;
  background-size: 1000px 400px;
}
#service li:nth-child(1) .bgArea .thumb img{
  width: 171px;
}
/*
#service li:nth-child(2) .bgArea .thumb img{
  width: 260px;
}
*/
#service li:nth-child(2) .bgArea .thumb img{
  width: 111px;
}
#service li:nth-child(3) .bgArea .thumb img{
  width: 400px;
}

#service li a{
  height: 400px;
  margin-top: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  color: #fff;
  overflow: hidden;
  -webkit-backface-visibility: hidden; /* 追加 */
    backface-visibility: hidden; /* 追加 */
}
#service li:nth-child(1) a{
  color: #000;
}
/*
#service li:nth-child(2) a{
  color: #333;
}
*/
#service li:nth-child(3) a{
  color: #000;
}
#service .thumb{
  width: 450px;
  height: 400px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-right: 50px;
  position: relative;
}
#service .txtArea{
  width: 450px;
  margin-right: 50px;
}
#service .txtArea .txtTop{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
#service .txtArea .serviceTitle{
  font-size: 40px;
  position: relative;
}
#service .txtArea .serviceTitle .eng{
  font-weight: 500;
}
#service .txtArea .serviceTitle .kana{
  font-size: 15px;
  margin-left: 5px;
}
#service .txtArea .txt{
  font-size: 14px;
  line-height: 2.3;
  margin-top: 20px;
  position: relative;
}
#service .txtArea strong{
  font-weight: 600;
}
/*
#service li:nth-child(2) .txtArea .txt{
  font-weight: 600;
}
*/

@media screen and (max-width: 768px)  {
  #service{
    margin-top: -50px;
    padding-top: 50px;
  }
  #service .wrap{
    width: auto;
    padding: 40px 20px 50px;
  }
  #service li a{
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    height: auto;
  }
  #service li:nth-child(1) .bgArea{
    background: url(/wp-content/uploads/2023/03/service_bg01.png) no-repeat center center;
    background-size: cover;
    margin-top: 15px;
  }
/*
    #service li:nth-child(2) .bgArea{
    background: url(/img/service_bg02.jpg) no-repeat center center;
    background-size: cover;
  }
*/
  #service li:nth-child(2) .bgArea{
    background: url(/img/service_bg03_sp.jpg) no-repeat center center;
    background-size: cover;
  }
  #service li:nth-child(3) .bgArea{
    background: url(/img/service_bg04_sp.png) no-repeat center center;
    background-size: cover;
  }
  #service li:nth-child(1) .bgArea .thumb img{
    width: 200px;
  }
  #service li:nth-child(2) .bgArea .thumb img{
  width: 55px;
  }
  #service li:nth-child(3) .bgArea .thumb img{
    width: 200px;
  }
  #service .thumb{
    width: 100%;
    height: 157px;
    margin-right: 0;
  }
  #service li:nth-child(2) .thumb{
    height: 128px;
  }
  #service .txtArea{
    width: 100%;
    margin-right: 0;
    padding: 0 20px 30px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  #service .txtArea .serviceTitle{
    font-size: 20px;
  }
  #service .txtArea .serviceTitle .kana{
    font-size: 12px;
  }
  #service .txtArea .txt{
    font-size: 12px;
    line-height: 2.1;
    margin-top: 5px;
  }
}

/* company
================================================== */
#company{
  margin-top: -80px;
  padding-top: 80px;
}
#company .wrap{
  width: 900px;
  padding: 100px 50px;
}
#company ul{
  margin-top: 40px;
}
#company li{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 10px 0;
  font-size: 15px;
  line-height: 1.9;
  color: #cccccc;
  border-bottom: solid 1px #1a44a0;
}
#company li:last-child{
  border-bottom: none;
}
#company li .left{
  width: 160px;
  margin-right: 15px;
}
#company li .right{
  color: #fff;
}

@media screen and (max-width: 768px)  {
  #company{
    margin-top: -50px;
    padding-top: 50px;
  }
  #company .wrap{
    width: auto;
    padding: 40px 20px 60px;
  }
  #company ul{
    margin-top: 20px;
  }
  #company li{
    line-height: 1.7;
    padding: 14px 0;
  }
  #company li .left{
    font-size: 14px;
    width: 100px;
    margin-right: 10px;
  }
  #company li .right{
    font-size: 12px;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
  #company li .spMt5{
    display: block;
    margin-top: 5px;
  }
}

/* recruit
================================================== */
#recruit{
  margin-top: -80px;
  padding-top: 80px;
}
#recruit .recruitIn{
  position: relative;
  overflow: hidden;

}
#recruit .wrap{
  height: 380px;
  padding: 100px 50px 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
}
#recruit .subTitle{
  color: #fff;
}
#recruit .txt{
  font-size: 15px;
  line-height: 1.6;
  margin: 25px 0 25px;
  color: #fff;
  text-align: center;
}


#recruit .bg {
    background: url(/img/header01.jpg) no-repeat;
    background-size: 100% auto;
    background-position: center;
    -webkit-animation: scale 25s linear;
            animation: scale 25s linear;
    position: absolute;
    height: 980px;
    width: 100%;
}

@media screen and (max-width: 768px)  {
  #recruit{
    margin-top: -50px;
    padding-top: 50px;
  }
  #recruit .wrap{
    height: 235px;
    padding: 40px 20px 0;
  }
  #recruit .txt{
    font-size: 14px;
    margin: 15px 0 20px;
  }
  #recruit .bg {
    background: url(/img/header01_sp.jpg) no-repeat;
    background-size: 100% auto;
    background-position: center center;
    -webkit-animation: none;
            animation: none;
    height: 835px;
  }
}

/* contact
================================================== */
#contact{
  margin-top: -80px;
  padding-top: 80px;
}
#contact .grayArea{
  background: #f0f0f0;
}
#contact .wrap{
  padding: 100px 0 95px;
}
#contact .txt{
  line-height: 1.9;
  margin-top: 20px;
  text-align: center;
  font-size: 15px;
}
#contact .txt02{
  text-align:center;
  margin-top:10px;
  line-height: 1.3em;
}
#contact .linkArea{
  width: 800px;
  margin: 45px auto 0;
  display: flex;
  justify-content: space-between;
}
#contact .linkAreaL{
  width: 300px;
  padding-right: 95px;
  border-right: solid 1px #ccc;
}
#contact .linkAreaL .link01 img{
  width: 69px;
}
#contact .linkAreaL .link02 img{
  width: 105px;
}
#contact .linkAreaL .link03 img{
  width: 113px;
}
#contact .linkAreaL .link04 img{
  width: 145px;
}
#contact .linkTitle{
  font-size: 15px;
  font-weight: 400;
  margin-bottom: 10px;
}
#contact .linkTitle02{
  margin-top: 30px;
}
#contact .linkArea a{
  margin-top: 20px;
}
#contact .contactWrap{
  width: 800px;
  margin: 0 auto;
}
#contact .radioWrap{
  background: #fff;
  width: 380px;
  height: 50px;
  margin: 60px auto 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: 25px;
}
#contact .radioWrap .radio{
  display: block;
  text-align: center;
}
#contact .radioArea input{
	display: none;
}
#contact .radioArea .last{
  margin-left: 70px;
}
#contact .radioArea label{
	display: inline-block;
	position: relative;
	cursor: pointer;
	padding: 10px 0 10px 20px;
	border-radius: 2px;
	font-size: 15px;
	text-align: center;
	line-height: 1;
  margin-left: 9px;
  -webkit-tap-highlight-color:rgba(0,0,0,0);
}
#contact .radioArea label span:before{
	position: absolute;
	content: "";
	top: 50%;
	left: -9px;
	width: 18px;
	height: 18px;
	margin-top: -9px;
	border-radius: 50%;
  border: solid 2px #28387a;
  background: #fff;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
#contact .radioArea input[type="radio"]:checked + p{
  color: #28387a;
}
#contact .radioArea label input[type="radio"]:checked + span:after {
	position: absolute;
	content: "";
	top: 50%;
	left: -4px;
	width: 8px;
	height: 8px;
	margin-top: -4px;
	border-radius: 50%;
	background: #28387a;
}
#contact .contactWrap01,
#contact .contactWrap02{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 20px;
}
#contact .contactWrap01 br,
#contact .contactWrap02 br{
  display: none;
}
#contact .textArea01{
  width: 390px;
  height: 50px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 15px;
  padding: 15px;
  border: solid 1px #cccccc;
  border-radius: 2px;
}

#contact .zipcode{
  width: 200px;
  height: 50px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 15px;
  padding: 15px;
  border: solid 1px #cccccc;
  border-radius: 2px;
}

#contact .address{
  width: 800px;
  height: 50px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 15px;
  padding: 15px;
  border: solid 1px #cccccc;
  border-radius: 2px;
}

#contact .textarea{
  width: 800px;
  height: 200px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 15px;
  border: solid 1px #cccccc;
  border-radius: 2px;
  resize: none;
  font-size: 15px;
}
/* お問い合わせフォームの結線（docs/design/contact-api.md）
   見えない欄・エラー表示・reCAPTCHA の表示。バッジは出さず文言で示す */
#contact .hpArea{
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
#contact .formError{
  display: none;
  margin-top: 20px;
  padding: 12px 15px;
  border: solid 1px #ff6666;
  background: #fff0f0;
  color: #cc0000;
  font-size: 14px;
  line-height: 1.6;
  text-align: left;
}
#contact .formError.isShown{
  display: block;
}
#contact .recaptcha{
  max-width: 420px;
  font-size: 11px;
  line-height: 1.6;
  color: #888;
  text-align: left;
}
#contact .recaptcha a{
  color: #888;
  text-decoration: underline;
}
/* 文言を出しているのでバッジは隠す（発行元が認める代替） */
.grecaptcha-badge{
  visibility: hidden;
}
#contact .submitArea{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 30px;
  padding: 0 20px 0 30px;
  position: relative;
}
#contact .submitArea .textArea02{
  width: 260px;
  height: 50px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 15px;
  padding: 15px;
  border: solid 1px #cccccc;
  border-radius: 2px;
}
#contact .submitBt{
  width: 300px;
  height: 60px;
}
#contact .bt{
  width: 300px;
  height: 60px;
  font-size: 15px;
  background: linear-gradient(-45deg, #000066, #003399);
  color: #fff;
  display: block;
  margin: 0 auto 0;
  border: none;
  border-radius: 0;
  text-align: center;
  cursor: pointer;
}
/* 送信中の見せ方。押しても見た目が変わらないと、届いていないと思われて押し直される */
#contact .submitBt{
  position: relative;
}
#contact .bt:disabled{
  opacity: 0.6;
  cursor: default;
}
/* 印は親に置く。input は疑似要素を持てない */
#contact .submitBt.isSending::after{
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 16px;
  height: 16px;
  margin: -8px 0 0 -66px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: solid 2px rgba(255, 255, 255, 0.4);
  border-top-color: #fff;
  border-radius: 50%;
  -webkit-animation: contactSpin 0.8s linear infinite;
          animation: contactSpin 0.8s linear infinite;
  pointer-events: none;
}
@-webkit-keyframes contactSpin{
  to{
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@keyframes contactSpin{
  to{
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
/* 動きを控える設定では回さない。文言の差し替えだけが残る */
@media (prefers-reduced-motion: reduce){
  #contact .submitBt.isSending::after{
    -webkit-animation: none;
            animation: none;
  }
}
#contact .screen-reader-response{
  display: none;
}
#contact .wpcf7-form-control-wrap{
  position: relative;
  display: block;
}
#contact .wpcf7-not-valid-tip{
  background: #ff6666;
  color: #fff;
  position: absolute;
  right: 0;
  top: -10px;
  font-size: 12px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 20px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 10px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
#contact .submitArea .checkArea{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
#contact .submitArea .checkArea img{
  margin-right: 20px;
  margin-bottom: 13px;
}
#contact .submitArea .authenticationTxt{
font-size: 12px;
color: #666;
margin-bottom: 10px;
text-align: center;
}
#contact .submitArea .authenticationTxtSp{
  display: none;
}
#contact .dialArea{
  margin-top: 60px;
  color: #666;
  font-size: 14px;
  line-height: 1.8;
}
#contact .notesArea {
  color: #666;
  font-size: 13px;
  line-height: 1.9;
  margin-top: 70px;
}
#contact .notesArea li{
  text-indent: -1em;
  padding-left: 1em;
}
#contact .notesArea li:first-child{
  margin-top: 0;
}
#contact .wpcf7-validation-errors{
  display: none!important;
}
#contact div.wpcf7-mail-sent-ok{
  display: none!important;
}


@media screen and (max-width: 768px)  {
  #contact{
    margin-top: -50px;
    padding-top: 50px;
  }
  #contact .wrap{
    padding: 40px 20px 45px;
  }
  #contact .contactWrap{
    width: auto;
  }
  #contact .contactWrap01, #contact .contactWrap02{
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-bottom: 10px;
  }
  #contact .your-department,
  #contact .your-email{
    margin-top: 10px;
  }
  #contact .textarea{
    width: 100%;
    padding: 10px 15px;
    font-size: 16px;
  }
  #contact .formError{
    margin-top: 15px;
    font-size: 13px;
  }
  #contact .recaptcha{
    max-width: none;
    margin-bottom: 15px;
    text-align: center;
  }
  #contact .submitArea{
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-top: 15px;
  }
  #contact .txt{
    font-size: 14px;
    text-align: left;
    line-height: 1.6;
    margin-top: 15px;
  }
  #contact .txt02{
    line-height: 1.6;
  }
  #contact .radioWrap{
    height: 40px;
    width: 250px;
    margin: 25px auto 20px;
  }
  #contact .radioArea .last{
    margin-left: 60px;
  }
  #contact .linkTitle02{
    margin-top: 40px;
  }
  #contact .textArea01{
    width: 100%;
    height: 40px;
    font-size: 16px;
    padding: 5px 15px;
  }
  #contact .zipcode{
    width: 100%;
    height: 40px;
    font-size: 16px;
    padding: 5px 15px;
  }
  #contact .address{
    width: 100%;
    height: 40px;
    font-size: 16px;
    padding: 5px 15px;
  }
  #contact .submitArea .textArea02{
    width: 150px;
    height: 30px;
    font-size: 16px;
    padding: 5px 15px;
  }
  #contact .submitArea .checkArea img{
    margin-bottom: 3px;
  }
  #contact .submitArea .authenticationTxt{
    display: none;
  }
  #contact .submitArea .authenticationTxtSp{
    display: block;
    font-size: 12px;
    margin-bottom: 8px;
    color: #666666;
  }
  #contact .submitArea .checkArea{
    margin-bottom: 20px;
  }
  #contact .submitBt{
    width: 220px;
    height: 40px;
  }
  #contact .bt{
    width: 220px;
    height: 40px;
  }
  #contact .dialArea{
    margin-top: 30px;
  }
  #contact .authentication .wpcf7-not-valid-tip{
    width: 242px;
  }
  #contact .authentication .wpcf7-not-valid-tip{
    top: auto;
  }
  #contact .notesArea{
    margin-top: 50px;
    font-size: 12px;
    line-height: 1.8;
  }
  #contact .linkArea{
    width: 100%;
    display: block;
  }
  #contact .linkAreaL{
    padding-right: 0;
    border-right: none;
    width: 100%;
  }
}

/* footer
================================================== */
footer{
  background: linear-gradient(-45deg, #000066, #003399);
  padding: 30px 0 70px;
}
footer .list{
  text-align: center;
  line-height: 1.5;
}
footer .list a{
  font-size: 12px;
  margin-right: 10px;
  padding-right: 10px;
  border-right: solid 1px #3356a8;
  color: #fff;
}
footer .list a:last-child{
  margin-right: 0;
  padding-right: 0;
  border-right: none;
}
footer .copy{
  font-size: 12px;
  color: #999999;
  text-align: center;
  margin-top: 20px;
}
.pageTop{
  width: 80px;
  height: 80px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: fixed;
  right: 40px;
  bottom: 40px;
  background: #fff;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
.pageTop img{
  width: 14px;
}

@media screen and (max-width: 768px)  {
  footer{
    padding: 25px 20px 50px;
  }
  footer .list{
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    line-height: 2.3;
  }
  footer .list a{
    margin-top: 30px;
    font-size: 11px;
  }
  footer .copy{
    margin-top: 20px;
    font-size: 10px;
  }
  .pageTop{
    width: 40px;
    height: 40px;
    right: 10px;
    bottom: 10px;
  }
  .pageTop img{
    width: 7px;
  }


}
@media screen and (max-width: 768px) and (min-width: 571px) {
  footer .list a:nth-child(4):after{
    content: "\A" ;
  	white-space: pre ;
  }
  footer .list a:nth-child(4){
    margin-right: 0;
    padding-right: 0;
    border-right: none;
  }
}

@media screen and (max-width: 570px) and (min-width: 350px) {
  footer .list a:nth-child(3),
  footer .list a:nth-child(5){
    margin-right: 0;
    padding-right: 0;
    border-right: none;
  }
  footer .list a:nth-child(3):after,
  footer .list a:nth-child(5):after{
    content: "\A" ;
  	white-space: pre ;
  }
}
@media screen and (max-width: 349px) {
  footer .list a:nth-child(2),
  footer .list a:nth-child(4),
  footer .list a:nth-child(5){
    margin-right: 0;
    padding-right: 0;
    border-right: none;
  }
  footer .list a:nth-child(2):after,
  footer .list a:nth-child(4):after,
  footer .list a:nth-child(5):after{
    content: "\A" ;
  	white-space: pre ;
  }
}

.page01{
  background: #f0f0f0;
}
.page01 #header .in{
  height: auto;
  background: linear-gradient(-45deg, #000066, #003399);
}
.page01 .main{
  height: 100%;
  padding: 120px 0 300px;
}
.page01 .thanksWrap{
  width: 1100px;
  margin: 0 auto;
  padding: 0 50px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.page01 .main .txt01{
  font-size: 22px;
  color: #666666;
  text-align: center;
  line-height: 1.7;
}
.page01 .bt{
  width: 300px;
  height: 60px;
  font-size: 15px;
  background: linear-gradient(-45deg, #000066, #003399);
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 45px auto 0;
  border: none;
}
.thanksPage footer{
  position: fixed;
  bottom: 0;
  width: 100%;
}

@media screen and (max-width: 768px)  {
  .page01 .thanksWrap{
    width: 100%;
  }
  .page01 .main .txt01{
    font-size: 18px;
  }
  .page01 .bt{
    margin: 10px auto 0;
    width: 200px;
    height: 50px;
    font-size: 15px;
  }
}

/* Home
================================================== */
.header_linkArea {
width:780px;
/*background:rgba(0,0,0,0.35);*/
border:1px solid rgba(255,255,255,0.75);
padding:40px 20px;
box-sizing: border-box;
position:relative
}
.header_linkArea_title {
color: #fff;
text-align:center;
font-size:140%;
font-weight:bold;
margin:0 auto 20px;
text-shadow:0px 0px 10px rgba(0,0,0,1);
}
.header_linkArea {text-align: center;margin:25px auto;}
.header_linkArea span {display:inline-block;width:31%;margin:0 0.5%;}
.header_linkArea span a {width:100%;box-shadow:0px 0px 10px 2px rgba(0,0,0,0.35)}
.topArw span {margin-top: 30px}
@media only screen and (max-width:767px) {
#header .in {padding-bottom: 190px}
.header_linkArea {width:90%;padding:20px}
.header_linkArea span {display:block;width:90%;margin:1.55% auto;}
.topArw span {margin-top: 10px}
}

/* faq
================================================== */
#faq  {padding: 80px 0;}
#faq .faqWrap {margin-top: 60px;color: #666;font-size: 14px;line-height: 1.8;}
#faq .faqWrap img   {max-width: 100%}
#faq .faqWrap strong {font-weight:600}

#faq .faq_cat_link_list   {text-align: center;margin:50px auto 0;;}
#faq .faq_cat_link_list span  {display:inline-block;margin:0 0.5%;}
#faq .faq_cat_link_list span a  {width:100%;padding-left: 2em;padding-right: 2em;box-sizing:border-box;}

#faq .faq_cat_title {font-weight:bold;font-size: 180%;margin-bottom: 0.5em}

#faq .faqList   {margin-bottom: 2.5em;}
#faq .faqList h3 {font-size: 140%;font-weight:bold;padding:10px 16px;background:#dedede;padding-left:1.75em}
#faq .faqList h3:before {content: 'Q.';margin-right:0.15em;margin-left:-1.25em}
#faq .faqList .faq_A {padding:25px 0;padding-left: 1.25em}
#faq .faqList .faq_A:before {content: 'A.';display:inline;margin-right:0.15em;margin-left:-1em}
#faq .faqList .faq_A p {display:inline;font-size:110%;word-break: break-all}
#faq .faq_img  {display:block;background:#D7DFE2;padding:10px;margin: 0.5em auto;text-align: center;box-sizing:border-box;}
@media screen and (max-width: 768px)  {
#faq {margin-top: -50px;padding-top: 50px;}
#faq .wrap {padding: 40px 20px 45px;}
#faq .faqList .faq_A {padding:15px 0;padding-left: 1.25em}
#faq .faq_cat_link_list {width:90%;}
#faq .faq_cat_link_list span {display:block;width:90%;margin:1.55% auto;}
}

/* ------------------------------------------------------------------
   互換節 —— Contact Form 7 のプラグイン CSS を捨てたことで欠けた余白を補う
   （Q-20 / M3-T05）。

   移行元は contact-form-7/includes/css/styles.css の
   .wpcf7-list-item{display:inline-block;margin:0 0 0 1em} が
   お問い合わせ3ページのラジオ2項目に効いていた。実測したところ、
   静的な器で描画に効いていたのは margin-left の 1em だけで、
   display:inline-block を落としても差分は出ない（span は既定で inline、
   inline 要素にも margin-left は効く）。
   .last の margin-left は上の #contact .radioArea .last が 70px を与えるので、
   ここでは .first にだけ当てる。

   捨てた 177 行のうち、この 1 規則以外は静的な器に影響しない
   （残りは検証状態・スピナー・hidden fields 用で、対応する要素を持ち込んでいない）。
   ------------------------------------------------------------------ */
#contact .radioArea .first{
  margin-left: 1em;
}

/* ------------------------------------------------------------------
   互換節 —— /contact_deposit/ の本文にあった <style> ブロックの移設
   （Q-30 / M3-T07）。

   移行元は本文の途中に <style> を持ち、.selectbox{position:relative} /
   select{...} / .selectbox::after{...} の 3 規則を書いていた。実測すると
   .selectbox は <select> 自身に付いた class なので、前 2 者は同一要素を
   指しており select.selectbox にまとめられる。

   要素セレクタ select をやめてスコープしたのは、style.css が全ページに
   配信されるため。移行元は 1 ページにしか select が無く実害が出て
   いなかったが、そのまま持ち込むと後から select を置いたページに
   意図せず効く。

   .selectbox::after は落とした —— <select> は置換要素で擬似要素が
   描画されないため、移行元でも表示されていない（矢印は出ていない）。

   カスケードは変わらない。style.css / reset.css に select を選択する
   規則は 1 件も無いので、本文の <style>（最も後ろ）から移しても
   勝ち負けは生じない。
   ------------------------------------------------------------------ */
select.selectbox{
  position: relative;
  margin: 5px 10px;
  padding: 5px 20px;
  box-sizing: border-box;
  font-size: 1em;
  color: #333333;
  border: #ccc 1px solid;
  border-radius: 0;
  background: #fff;
}

/* ------------------------------------------------------------------
   互換節 —— /news/ の青エリアのアニメーションを止める
   （M4-T02 の追補 / D-39）。

   .blueArea は gra01 6s ease infinite で background-position を
   往復させる。トップでは上がヒーロー画像・下が白の #service なので
   帯として成立するが、/news/ は上下ともヘッダ・フッタの青グラデ
   （-45deg, #000066 → #003399）に挟まれる。実測すると継ぎ目は
   y=80 で rgb(0,1,103) → rgb(0,57,188)、フッタ境界で
   rgb(0,23,137) → rgb(0,1,103) の段差があり、アニメーションで
   お知らせ帯だけが脈打つため継ぎ目が動いて見えていた。

   色は変えない（ユーザー決定）。止めるのは脈動だけで、
   段差そのものは箱の高さの違いによるものなので残る。

   スコープを .page01 にしたのは、トップの <body> が class を
   持たないため。トップの #news は 1 規則も影響を受けない。

   副作用として /news/ のスクリーンショットが決定的になる
   （G11 の比較でアニメーション無効化の override が要らなくなる）。
   ------------------------------------------------------------------ */
.page01 #news .blueArea{
  animation: none;
}
