@charset "UTF-8";

.blink { animation: 1s linear 1s normal none infinite running blink;}

.button, .button-fullwidth, .modal .close-btn, .form-wrapper input:is([type=submit], [type=button], [type=reset]), .form-wrapper [type=file] ~ label, .form-wrapper:is(.btn-checkbox, .btn-radio) label, .form-wrapper.textbox input.datebtn:is([readonly=readonly], [readonly=""]), .form-wrapper.select .select-body-wrap, .form-wrapper.btn-select .select-body-wrapper div.select-items, .form-wrapper.file label {
  z-index: 1;
  position: relative;
  border: 1px solid;
  border-radius: 10px;
  transition: color 0.4s, background-color 0.4s, border-color 0.4s, box-shadow 0.4s;
}
.button, .button-fullwidth, .modal .close-btn, .form-wrapper input:is([type=submit], [type=button], [type=reset]), .form-wrapper [type=file] ~ label, .form-wrapper:is(.btn-checkbox, .btn-radio) label, .form-wrapper.textbox input.datebtn:is([readonly=readonly], [readonly=""]), .form-wrapper.select .select-body-wrap, .form-wrapper.btn-select .select-body-wrapper div.select-items, .form-wrapper.file label, .modal .close-btn:is(.nor, .eff) {
  background-color: var(--cs-btn_bg-nor);
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.3);
  color: var(--cs-btn_font-nor);
  cursor: pointer;
}
.button:active, .button-fullwidth:active, .modal .close-btn:active, .form-wrapper input:active:is([type=submit], [type=button], [type=reset]), .form-wrapper [type=file] ~ label:active, .form-wrapper:is(.btn-checkbox, .btn-radio) label:active, .form-wrapper.textbox input.datebtn:active:is([readonly=readonly], [readonly=""]), .form-wrapper.select .select-body-wrap:active, .form-wrapper.btn-select .select-body-wrapper div.select-items:active, .form-wrapper.file label:active, .modal .close-btn:is(.nor, .eff):active {
  background-color: var(--cs-btn_bg-act) !important;
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.3) !important;
  color: var(--cs-btn_font-act) !important;
  transition: none;
}
.sel.button, .sel.button-fullwidth, .modal .sel.close-btn, .form-wrapper input.sel:is([type=submit], [type=button], [type=reset]), .form-wrapper [type=file] ~ label.sel, .form-wrapper:is(.btn-checkbox, .btn-radio) label.sel, .form-wrapper.textbox input.sel.datebtn:is([readonly=readonly], [readonly=""]), .form-wrapper.select .sel.select-body-wrap, .form-wrapper.btn-select .select-body-wrapper div.sel.select-items, .form-wrapper.file label.sel {
  background-color: var(--cs-btn_bg-sel);
  box-shadow: none;
  color: var(--cs-btn_font-sel);
  pointer-events: none;
}
.msk.button, .msk.button-fullwidth, .modal .msk.close-btn, .form-wrapper input.msk:is([type=submit], [type=button], [type=reset]), .form-wrapper [type=file] ~ label.msk, .form-wrapper:is(.btn-checkbox, .btn-radio) label.msk, .form-wrapper.textbox input.msk.datebtn:is([readonly=readonly], [readonly=""]), .form-wrapper.select .msk.select-body-wrap, .form-wrapper.btn-select .select-body-wrapper div.msk.select-items, .form-wrapper.file label.msk {
  background-color: var(--cs-btn_bg-msk);
  box-shadow: none;
  color: var(--cs-btn_font-msk);
  pointer-events: none;
}
.eff.button, .eff.button-fullwidth, .modal .eff.close-btn, .form-wrapper input.eff:is([type=submit], [type=button], [type=reset]), .form-wrapper [type=file] ~ label.eff, .form-wrapper:is(.btn-checkbox, .btn-radio) label.eff, .form-wrapper.textbox input.eff.datebtn:is([readonly=readonly], [readonly=""]), .form-wrapper.select .eff.select-body-wrap, .form-wrapper.btn-select .select-body-wrapper div.eff.select-items, .form-wrapper.file label.eff {
  border-width: 2px;
  box-shadow: 0 0 10px 2px var(--cs-btn_border-eff), 0;
  animation: effectBtn_multi 0.7s linear 0.1s infinite alternate;
}
.button svg, .button-fullwidth svg, .modal .close-btn svg, .form-wrapper input:is([type=submit], [type=button], [type=reset]) svg, .form-wrapper [type=file] ~ label svg, .form-wrapper:is(.btn-checkbox, .btn-radio) label svg, .form-wrapper.textbox input.datebtn:is([readonly=readonly], [readonly=""]) svg, .form-wrapper.select .select-body-wrap svg, .form-wrapper.btn-select .select-body-wrapper div.select-items svg, .form-wrapper.file label svg { fill: inherit;}

.form-wrapper:is(.checkbox, .radio) label span:is(.nor, .eff) {
  color: var(--cs-font_link-nor);
  cursor: pointer;
  pointer-events: auto;
}
.form-wrapper:is(.checkbox, .radio) label span:is(.nor, .eff) svg { fill: var(--cs-font_link-nor);}
.form-wrapper:is(.checkbox, .radio) label span:is(.nor, .eff):link, .form-wrapper:is(.checkbox, .radio) label span:is(.nor, .eff):visited { color: var(--cs-font_link-nor);}
.form-wrapper:is(.checkbox, .radio) label span:is(.nor, .eff):link svg, .form-wrapper:is(.checkbox, .radio) label span:is(.nor, .eff):visited svg { fill: var(--cs-font_link-nor);}
.form-wrapper:is(.checkbox, .radio) label span:is(.sel, .msk) { pointer-events: none;}
.windows .textmark-1, .windows .textmark-2, .windows .textmark-3, .windows table.basic-table thead, table.basic-table .windows thead { font-family: "BIZ UDPGothic";}

body {
  --svgicon-color-blu-01: #0a6fda;
  --svgicon-color-red-01: #DF0C6A;
  --svgicon-color-grn-01: #1AB93F;
  --svgicon-color-ore-01: #ff950a;
  --svgicon-color-pnk-01: #F897C0;
  --svgicon-color-yel-01: #FAC100;
  --svgicon-color-red-00: #de1267;
  --svgicon-color-gry-02: white;
  --svgicon-color-yel-02: #ffefb8;
  --svgicon-color-blu-02: #88d8f1;
  --svgicon-color-blu-03: #ccebf4;
}

.cs-01, .cs-02, .cs-03, .cs-04, .cs-05 {
  --cs-basic-01: white;
  --cs-basic-02: #f8f8f8;
  --cs-basic-04: #e1e4e5;
  --cs-basic-05: #d2dada;
  --cs-basic-06: #bbc1c3;
  --cs-basic-07: #a5b0b1;
  --cs-basic-08: #859499;
  --cs-basic-03: #efefef;
  --cs-basic-01-rgb: 255, 255, 255;
  --cs-basic-02-rgb: 248, 248, 248;
  --cs-basic-04-rgb: 225, 228, 229;
  --cs-basic-05-rgb: 210, 218, 218;
  --cs-basic-06-rgb: 187, 193, 195;
  --cs-basic-07-rgb: 165, 176, 177;
  --cs-basic-08-rgb: 133, 148, 153;
  --cs-basic-03-rgb: 239, 239, 239;
  --cs-key-01: #00a3d6;
  --cs-key-02: #88d8f1;
  --cs-key-03: #ccebf4;
  --cs-ac_01-01: #1ab93f;
  --cs-ac_01-02: #66d37f;
  --cs-ac_01-03: #caf3d4;
  --cs-ac_02-01: #df0c6a;
  --cs-ac_02-02: #e968a1;
  --cs-ac_02-03: #fdd9e9;
  --cs-ac_03-01: #fac100;
  --cs-ac_03-02: #ffdb61;
  --cs-ac_03-03: #ffefb8;
  --cs-key-dark: #0084ad;
  --cs-ac_01-dark: #2d8c43;
  --cs-key_smoke-04: #d9e5ea;
  --cs-key_smoke-03: #9dbeca;
  --cs-key_smoke-02: #5a92a7;
  --cs-key_smoke-01: #285f73;
  --cs-key_smoke-dk: #1b404d;
  --cs-font-01: #222525;
  --cs-font-02: #474d4d;
  --cs-font-03: #6b7575;
  --cs-font-lite: white;
  --cs-font-dark: #222525;
  --cs-font-ltrv: white;
  --cs-font-dkrv: #222525;
  --cs-font_link-nor: #0a6fda;
  --cs-font_link-hov: #11489b;
  --cs-font_link-act: #ff950a;
  --cs-font_link-sel: #474d4d;
  --cs-font_link-msk: #6b7575;
  --cs-btn_bg-nor: white;
  --cs-btn_bg-hov: #88d8f1;
  --cs-btn_bg-act: #d2dada;
  --cs-btn_bg-sel: #0a6fda;
  --cs-btn_bg-msk: #d2dada;
  --cs-btn_bg-eff: #ffffff;
  --cs-btn_border-nor: #0a6fda;
  --cs-btn_border-hov: #11489b;
  --cs-btn_border-act: #ff950a;
  --cs-btn_border-sel: #0a6fda;
  --cs-btn_border-msk: #bbc1c3;
  --cs-btn_border-eff: #DF0C6A;
  --cs-btn_font-nor: #0a6fda;
  --cs-btn_font-hov: #11489b;
  --cs-btn_font-act: #ff950a;
  --cs-btn_font-sel: white;
  --cs-btn_font-msk: #859499;
  --cs-btn_font-eff: #0a6fda;
  --cs-table_border: #bbc1c3;
  --cs-table_header: #efefef;
  --cs-table_cell: #f8f8f8;
  --cs-table_back: #d2dada;
  --cs-table_caption: #1AB93F;
  --cs-modal-bg_01: #181a1a;
  --cs-modal-bg_02: #090a0a;
  --cs-dri-cntl_btn-nor-st1: #4CE9CC;
  --cs-dri-cntl_btn-nor-st2: #0084ad;
  --cs-dri-cntl_btn-hov: #4CE9CC;
  --cs-dri-cntl_btn-act: #4CE9CC;
  --cs-dri-cntl_btn-sel: #0a6fda;
  --cs-dri-cntl_btn-msk: #d2dada;
  --cs-dri-cntl_btn-eff: #DF0C6A;
  --cs-dri-cntl_btn_font-nor: white;
  --cs-dri-cntl_btn_font-hov: white;
  --cs-dri-cntl_btn_font-act: #ff950a;
  --cs-dri-cntl_btn_font-sel: #00A3D6;
  --cs-dri-cntl_btn_font-msk: #859499;
  --cs-dri-cntl_btn_font-eff: white;
  --cs-dri-cntl_extbtn-nor: #005c79;
  --cs-ac_01-01-rgb: 26, 185, 63;
  --cs-ac_01-02-rgb: 102, 211, 127;
  --cs-ac_01-03-rgb: 202, 243, 212;
  --cs-ac_01-dark-rgb: 45, 140, 67;
  --cs-ac_02-01-rgb: 223, 12, 106;
  --cs-ac_02-02-rgb: 233, 104, 161;
  --cs-ac_02-03-rgb: 253, 217, 233;
  --cs-ac_03-01-rgb: 250, 193, 0;
  --cs-ac_03-02-rgb: 255, 219, 97;
  --cs-ac_03-03-rgb: 255, 239, 184;
  --cs-key-01-rgb: 0, 163, 214;
  --cs-key-02-rgb: 136, 216, 241;
  --cs-key-03-rgb: 204, 235, 244;
  --cs-key-dark-rgb: 0, 132, 173;
  --cs-key_smoke-04-rgb: 217, 229, 234;
  --cs-key_smoke-03-rgb: 157, 190, 202;
  --cs-key_smoke-02-rgb: 90, 146, 167;
  --cs-key_smoke-01-rgb: 40, 95, 115;
  --cs-key_smoke-dk-rgb: 27, 64, 77;
  --cs-font-01-rgb: 34, 37, 37;
  --cs-font-02-rgb: 71, 77, 77;
  --cs-font-03-rgb: 107, 117, 117;
  --cs-font-lite-rgb: 255, 255, 255;
  --cs-font-dark-rgb: 34, 37, 37;
  --cs-font_link-nor-rgb: 10, 111, 218;
  --cs-font_link-hov-rgb: 17, 72, 155;
  --cs-font_link-act-rgb: 255, 149, 10;
  --cs-font_link-sel-rgb: 71, 77, 77;
  --cs-font_link-msk-rgb: 107, 117, 117;
  --cs-font-ltrv-rgb: 255, 255, 255;
  --cs-font-dkrv-rgb: 34, 37, 37;
  --cs-btn_bg-nor-rgb: 255, 255, 255;
  --cs-btn_bg-hov-rgb: 136, 216, 241;
  --cs-btn_bg-act-rgb: 210, 218, 218;
  --cs-btn_bg-sel-rgb: 10, 111, 218;
  --cs-btn_bg-msk-rgb: 210, 218, 218;
  --cs-btn_bg-eff-rgb: 255, 255, 255;
  --cs-btn_border-nor-rgb: 10, 111, 218;
  --cs-btn_border-hov-rgb: 17, 72, 155;
  --cs-btn_border-act-rgb: 255, 149, 10;
  --cs-btn_border-sel-rgb: 10, 111, 218;
  --cs-btn_border-msk-rgb: 187, 193, 195;
  --cs-btn_border-eff-rgb: 223, 12, 106;
  --cs-btn_font-nor-rgb: 10, 111, 218;
  --cs-btn_font-hov-rgb: 17, 72, 155;
  --cs-btn_font-act-rgb: 255, 149, 10;
  --cs-btn_font-sel-rgb: 255, 255, 255;
  --cs-btn_font-msk-rgb: 133, 148, 153;
  --cs-btn_font-eff-rgb: 10, 111, 218;
  --cs-table_border-rgb: 187, 193, 195;
  --cs-table_header-rgb: 239, 239, 239;
  --cs-table_cell-rgb: 248, 248, 248;
  --cs-table_back-rgb: 210, 218, 218;
  --cs-table_caption-rgb: 26, 185, 63;
  --cs-dri-cntl_btn-nor-st1-rgb: 76, 233, 204;
  --cs-dri-cntl_btn-nor-st2-rgb: 0, 132, 173;
  --cs-dri-cntl_btn-hov-rgb: 76, 233, 204;
  --cs-dri-cntl_btn-act-rgb: 76, 233, 204;
  --cs-dri-cntl_btn-sel-rgb: 10, 111, 218;
  --cs-dri-cntl_btn-msk-rgb: 210, 218, 218;
  --cs-dri-cntl_btn-eff-rgb: 223, 12, 106;
  --cs-dri-cntl_btn_font-nor-rgb: 255, 255, 255;
  --cs-dri-cntl_btn_font-hov-rgb: 255, 255, 255;
  --cs-dri-cntl_btn_font-act-rgb: 255, 149, 10;
  --cs-dri-cntl_btn_font-sel-rgb: 0, 163, 214;
  --cs-dri-cntl_btn_font-msk-rgb: 133, 148, 153;
  --cs-dri-cntl_btn_font-eff-rgb: 255, 255, 255;
  --cs-dri-cntl_extbtn-nor-rgb: 0, 92, 121;
  --cs-modal-bg_01-rgb: 24, 26, 26;
  --cs-modal-bg_02-rgb: 9, 10, 10;
}

.cs-06 {
  --cs-basic-01: #343434;
  --cs-basic-02: #303030;
  --cs-basic-04: #232424;
  --cs-basic-05: #1d1f1f;
  --cs-basic-06: #181a1a;
  --cs-basic-07: #131414;
  --cs-basic-08: #090a0a;
  --cs-basic-03: #282929;
  --cs-basic-01-rgb: 52, 52, 52;
  --cs-basic-02-rgb: 48, 48, 48;
  --cs-basic-04-rgb: 35, 36, 36;
  --cs-basic-05-rgb: 29, 31, 31;
  --cs-basic-06-rgb: 24, 26, 26;
  --cs-basic-07-rgb: 19, 20, 20;
  --cs-basic-08-rgb: 9, 10, 10;
  --cs-basic-03-rgb: 40, 41, 41;
  --cs-key-01: #0084ad;
  --cs-key-02: #1c4754;
  --cs-key-03: #1b2022;
  --cs-ac_01-01: #2d8c43;
  --cs-ac_01-02: #33683f;
  --cs-ac_01-03: #27412d;
  --cs-ac_02-01: #9f285d;
  --cs-ac_02-02: #823155;
  --cs-ac_02-03: #462634;
  --cs-ac_03-01: #9c7e16;
  --cs-ac_03-02: #74601b;
  --cs-ac_03-03: #50441b;
  --cs-key-dark: #88d8f1;
  --cs-ac_01-dark: #66d37f;
  --cs-key_smoke-04: #285f73;
  --cs-key_smoke-03: #5a92a7;
  --cs-key_smoke-02: #7ba8b9;
  --cs-key_smoke-01: #9dbeca;
  --cs-key_smoke-dk: #bfd4db;
  --cs-font-01: #cccccc;
  --cs-font-02: #a6a6a6;
  --cs-font-03: #808080;
  --cs-font-lite: #bbc1c3;
  --cs-font-dark: #343434;
  --cs-font-ltrv: #222525;
  --cs-font-dkrv: white;
  --cs-font_link-nor: #88d8f1;
  --cs-font_link-hov: #ccebf4;
  --cs-font_link-act: #ff950a;
  --cs-font_link-sel: #a6a6a6;
  --cs-font_link-msk: #808080;
  --cs-btn_bg-nor: #343434;
  --cs-btn_bg-hov: #1c4754;
  --cs-btn_bg-act: #1d1f1f;
  --cs-btn_bg-sel: #88d8f1;
  --cs-btn_bg-msk: #232424;
  --cs-btn_bg-eff: #1b2022;
  --cs-btn_border-nor: #88d8f1;
  --cs-btn_border-hov: #ccebf4;
  --cs-btn_border-act: #ff950a;
  --cs-btn_border-sel: #88d8f1;
  --cs-btn_border-msk: #131414;
  --cs-btn_border-eff: #ff950a;
  --cs-btn_font-nor: #88d8f1;
  --cs-btn_font-hov: #ccebf4;
  --cs-btn_font-act: #ff950a;
  --cs-btn_font-sel: #343434;
  --cs-btn_font-msk: #090a0a;
  --cs-btn_font-eff: #88d8f1;
  --cs-table_border: #181a1a;
  --cs-table_header: #282929;
  --cs-table_cell: #303030;
  --cs-table_back: #1d1f1f;
  --cs-table_caption: #1AB93F;
  --cs-modal-bg_01: #090a0a;
  --cs-modal-bg_02: #090a0a;
  --cs-dri-cntl_btn-nor-st1: #4CE9CC;
  --cs-dri-cntl_btn-nor-st2: #0084ad;
  --cs-dri-cntl_btn-hov: #4CE9CC;
  --cs-dri-cntl_btn-act: #4CE9CC;
  --cs-dri-cntl_btn-sel: #0084ad;
  --cs-dri-cntl_btn-msk: #232424;
  --cs-dri-cntl_btn-eff: #ff950a;
  --cs-dri-cntl_btn_font-nor: white;
  --cs-dri-cntl_btn_font-hov: white;
  --cs-dri-cntl_btn_font-act: #ff950a;
  --cs-dri-cntl_btn_font-sel: #0a6fda;
  --cs-dri-cntl_btn_font-msk: #343434;
  --cs-dri-cntl_btn_font-eff: #0a6fda;
  --cs-dri-cntl_extbtn-nor: #0a6fda;
  --cs-ac_01-01-rgb: 45, 140, 67;
  --cs-ac_01-02-rgb: 51, 104, 63;
  --cs-ac_01-03-rgb: 39, 65, 45;
  --cs-ac_01-dark-rgb: 102, 211, 127;
  --cs-ac_02-01-rgb: 159, 40, 93;
  --cs-ac_02-02-rgb: 130, 49, 85;
  --cs-ac_02-03-rgb: 70, 38, 52;
  --cs-ac_03-01-rgb: 156, 126, 22;
  --cs-ac_03-02-rgb: 116, 96, 27;
  --cs-ac_03-03-rgb: 80, 68, 27;
  --cs-key-01-rgb: 0, 132, 173;
  --cs-key-02-rgb: 28, 71, 84;
  --cs-key-03-rgb: 27, 32, 34;
  --cs-key-dark-rgb: 136, 216, 241;
  --cs-key_smoke-04-rgb: 40, 95, 115;
  --cs-key_smoke-03-rgb: 90, 146, 167;
  --cs-key_smoke-02-rgb: 123, 168, 185;
  --cs-key_smoke-01-rgb: 157, 190, 202;
  --cs-key_smoke-dk-rgb: 191, 212, 219;
  --cs-font-01-rgb: 204, 204, 204;
  --cs-font-02-rgb: 166, 166, 166;
  --cs-font-03-rgb: 128, 128, 128;
  --cs-font-lite-rgb: 187, 193, 195;
  --cs-font-dark-rgb: 52, 52, 52;
  --cs-font_link-nor-rgb: 136, 216, 241;
  --cs-font_link-hov-rgb: 204, 235, 244;
  --cs-font_link-act-rgb: 255, 149, 10;
  --cs-font_link-sel-rgb: 166, 166, 166;
  --cs-font_link-msk-rgb: 128, 128, 128;
  --cs-font-ltrv-rgb: 34, 37, 37;
  --cs-font-dkrv-rgb: 255, 255, 255;
  --cs-btn_bg-nor-rgb: 52, 52, 52;
  --cs-btn_bg-hov-rgb: 28, 71, 84;
  --cs-btn_bg-act-rgb: 29, 31, 31;
  --cs-btn_bg-sel-rgb: 136, 216, 241;
  --cs-btn_bg-msk-rgb: 35, 36, 36;
  --cs-btn_bg-eff-rgb: 27, 32, 34;
  --cs-btn_border-nor-rgb: 136, 216, 241;
  --cs-btn_border-hov-rgb: 204, 235, 244;
  --cs-btn_border-act-rgb: 255, 149, 10;
  --cs-btn_border-sel-rgb: 136, 216, 241;
  --cs-btn_border-msk-rgb: 19, 20, 20;
  --cs-btn_border-eff-rgb: 255, 149, 10;
  --cs-btn_font-nor-rgb: 136, 216, 241;
  --cs-btn_font-hov-rgb: 204, 235, 244;
  --cs-btn_font-act-rgb: 255, 149, 10;
  --cs-btn_font-sel-rgb: 52, 52, 52;
  --cs-btn_font-msk-rgb: 9, 10, 10;
  --cs-btn_font-eff-rgb: 136, 216, 241;
  --cs-table_border-rgb: 24, 26, 26;
  --cs-table_header-rgb: 40, 41, 41;
  --cs-table_cell-rgb: 48, 48, 48;
  --cs-table_back-rgb: 29, 31, 31;
  --cs-table_caption-rgb: 26, 185, 63;
  --cs-dri-cntl_btn-nor-st1-rgb: 76, 233, 204;
  --cs-dri-cntl_btn-nor-st2-rgb: 0, 132, 173;
  --cs-dri-cntl_btn-hov-rgb: 76, 233, 204;
  --cs-dri-cntl_btn-act-rgb: 76, 233, 204;
  --cs-dri-cntl_btn-sel-rgb: 0, 132, 173;
  --cs-dri-cntl_btn-msk-rgb: 35, 36, 36;
  --cs-dri-cntl_btn-eff-rgb: 255, 149, 10;
  --cs-dri-cntl_btn_font-nor-rgb: 255, 255, 255;
  --cs-dri-cntl_btn_font-hov-rgb: 255, 255, 255;
  --cs-dri-cntl_btn_font-act-rgb: 255, 149, 10;
  --cs-dri-cntl_btn_font-sel-rgb: 10, 111, 218;
  --cs-dri-cntl_btn_font-msk-rgb: 52, 52, 52;
  --cs-dri-cntl_btn_font-eff-rgb: 10, 111, 218;
  --cs-dri-cntl_extbtn-nor-rgb: 10, 111, 218;
  --cs-modal-bg_01-rgb: 9, 10, 10;
  --cs-modal-bg_02-rgb: 9, 10, 10;
}
:is(h2, h3):empty { display: hidden;}

h2 {
  display: flex;
  align-items: baseline;
  margin: 2px auto 30px;
  font-weight: normal;
  line-height: normal;
}
h2 ul {
  display: flex;
  align-items: baseline;
}
h2 ul li {
  display: inline-block;
  margin-right: 20px;
}
h2 ul li:not(:last-child) { color: var(--cs-font-03);}
h2 > :is(.left-side, .right-side) > ruby:only-child,
h2 > :is(.left-side, .right-side) > ruby:not(:last-child) { margin-right: 0;}
h2 > .left-side {
  align-items: baseline;
  align-self: center;
}
h2 > .right-side { align-items: baseline;}
.ios.safari h2 { font-weight: bolder;}

h3 {
  display: flex;
  align-items: baseline;
  width: 100%;
  margin: 0 0 20px 0;
  padding: 0.5em 1em;
  border-radius: 50vw;
  border-color: var(--cs-key-02);
  background-color: var(--cs-key-01);
  color: var(--cs-font-lite);
  font-weight: normal;
  font-size: 1.1em;
  line-height: normal;
  text-align: left;
}
h3 * { color: var(--cs-font-lite) !important;}
h3.column-container { align-items: center;}
.safari h3:has(> ruby) { padding-bottom: 0.3em;}
.mac h3:has(> ruby) { padding-bottom: 0.3em;}
.windows h3:has(> ruby) { padding-bottom: 0.14em;}

h3:is(.attention, .better) {
  margin: 0 0 20px 0;
  padding: 0.5em 1em;
}
h3 ul { display: flex;}
h3 .category {
  display: inline-block;
  margin-right: 0.5em;
  padding: 0px 1em;
  border-radius: 1em;
  background-color: var(--cs-font-lite);
  vertical-align: middle;
}
h3 .category .contents {
  display: flex;
  align-items: baseline;
  margin: 2px 0;
  font-size: 14px;
}
h3 .category * { color: var(--cs-key-01) !important;}

h4 {
  display: inline-block;
  margin-bottom: 0.5em;
  padding: 0.2em 1em;
  border-radius: 0.6em;
  border-color: var(--cs-key-02);
  background-color: var(--cs-key-01);
  color: var(--cs-font-lite);
  font-weight: normal;
  line-height: normal;
}
.windows h4 {
  padding-top: 0.1em;
  padding-bottom: 0;
}
.chrome h4:has(> ruby) { padding-top: 0.6em;}

h4.attention {
  margin-bottom: 0.5em;
  padding: 0.2em 1em;
  border-radius: 0.6em;
  background-color: var(--cs-ac_02-01) !important;
}

h5 {
  display: inline-block;
  margin-bottom: 0.5em;
  padding: 0 0.8em;
  border-right: 0.3em solid currentColor;
  border-left: 0.3em solid currentColor;
  color: var(--cs-font-03);
  font-weight: normal;
  line-height: normal;
}

:is(h2, h3, h5) .column-wrapper {
  width: 100%;
  margin-bottom: 0 !important;
}
:is(h2, h3, h5) sup {
  align-self: flex-start;
  margin-top: 0;
  line-height: normal;
}

.table-wrapper {
  height: calc(100% - 20px);
  margin-bottom: 1px;
  border-width: 1px;
  border-style: solid;
  border-color: var(--cs-basic-07);
  background-color: var(--cs-table_back);
}
.table-wrapper > table.basic-table {
  margin-bottom: 0;
  border-top: none;
  border-right: none;
  border-left: none;
}
.table-wrapper table.basic-table {
  border-bottom: none;
  background-color: transparent;
}

table.basic-table {
  --tab-color: var(--cs-basic-07);
  width: 100%;
  margin-bottom: 20px;
  border: 1px solid var(--cs-basic-07);
  border-collapse: separate;
  border-spacing: 0;
  color: var(--cs-font-01);
  font-size: 18px;
}
table.basic-table:is(.explain, .picts) { --tab-color: #ff950a;}
table.basic-table.drill { --tab-color: #00A3D6;}
table.basic-table.test { --tab-color: #e968a1;}
table.basic-table.print { --tab-color: #7392e6;}
table.basic-table.cards { --tab-color: #1AB93F;}
table.basic-table thead:has(~ tbody tr.nor) th:last-child, table.basic-table thead:has(~ tbody tr.nor) td:last-child,
table.basic-table tbody:has(tr.nor) th:last-child,
table.basic-table tbody:has(tr.nor) td:last-child { padding-right: 26px;}
table.basic-table :is(th, td) .contents.clip {
  overflow: hidden;
  text-overflow: ellipsis;
}
table.basic-table thead { font-size: 14px;}
table.basic-table thead tr th {
  padding-bottom: 0.1em;
  padding-left: 0.25em;
  border-bottom: 1px solid var(--cs-basic-07);
  background-color: var(--cs-table_header);
  font-weight: normal;
  text-align: right;
  vertical-align: bottom;
}
table.basic-table thead tr th:last-child { padding-right: calc(0.25em + 13px);}
table.basic-table thead tr th .contents {
  display: inline-block;
  margin-top: 4px;
  padding-top: 0;
  padding-right: 0.5em;
  padding-left: 0.5em;
  border-radius: 50vw;
  line-height: 1.2;
  white-space: nowrap;
}
table.basic-table thead tr th[colspan] .contents {
  width: 100%;
  margin-top: 4px;
  background-color: var(--cs-basic-05);
  text-align: center;
}
table.basic-table thead tr th.fake-colspan { border-bottom: none;}
table.basic-table thead tr th.fake-colspan .contents {
  width: 100%;
  margin-top: 4px;
  background-color: var(--cs-basic-05);
  text-align: center;
}
table.basic-table thead tr th.fake-colspan.w-under_line { border-bottom: 1px solid var(--cs-basic-07);}
table.basic-table thead tr:not(:last-child) th[colspan] {
  padding-bottom: 0;
  border-bottom: none;
}
table.basic-table thead tr:first-child th:first-child[rowspan] { text-align: left;}
table.basic-table thead tr:only-child th .contents { margin-top: 1.4em;}
table.basic-table thead tr:only-child th:first-child { text-align: left;}
table.basic-table tbody tr.better { background-color: inherit !important;}
table.basic-table tbody tr.better :is(td, th) { background-color: var(--cs-ac_01-03);}
table.basic-table tbody tr.better :is(td, th) > .contents {
  border-left-color: var(--cs-ac_01-01);
  color: var(--cs-font-01);
}
table.basic-table tbody tr.attention { background-color: inherit !important;}
table.basic-table tbody tr.attention :is(td, th) { background-color: var(--cs-ac_02-03);}
table.basic-table tbody tr.attention :is(td, th) > .contents {
  border-left-color: var(--cs-ac_02-01);
  color: var(--cs-font-01);
}
table.basic-table tbody tr.warnin { background-color: inherit !important;}
table.basic-table tbody tr.warnin :is(td, th) { background-color: var(--cs-ac_03-03);}
table.basic-table tbody tr.warnin :is(td, th) > .contents {
  border-left-color: var(--cs-ac_03-01);
  color: var(--cs-font-dark);
}
table.basic-table tbody tr th {
  height: 100%;
  padding-top: 11px;
  border-bottom: none;
}
table.basic-table tbody tr th:first-child { border-left: 16px solid transparent;}
table.basic-table tbody tr th:first-child > .contents {
  border-left-width: 6px;
  border-left-style: solid;
}
table.basic-table tbody tr th > .contents {
  display: block;
  width: 100%;
  height: 100%;
  padding-top: 15px;
  border-bottom: 1px solid var(--cs-table_border);
  border-left-color: var(--cs-table_border);
}
table.basic-table tbody tr th > .contents:is(.better, .warnin, .attention) { background-color: transparent !important;}
table.basic-table tbody tr th > .contents.better {
  border-left-color: var(--cs-ac_01-01);
  color: var(--cs-ac_01-01) !important;
}
table.basic-table tbody tr th > .contents.warnin {
  border-left-color: var(--cs-ac_03-01);
  color: var(--cs-ac_03-01);
}
table.basic-table tbody tr th > .contents.attention {
  border-left-color: var(--cs-ac_02-01);
  color: var(--cs-ac_02-01) !important;
}
table.basic-table tbody tr th:only-child { padding-right: 0;}
table.basic-table tbody tr th:only-child > .contents { margin-right: 26px;}
table.basic-table tbody tr[rowspan] {
  border-right: 1px solid var(--cs-table_border);
  vertical-align: middle;
}
table.basic-table tbody tr[rowspan] > .contents { margin-top: 11px;}
table.basic-table tbody tr td {
  padding-bottom: 0.1em;
  padding-left: 0.25em;
  border-bottom: 1px solid var(--cs-table_border);
  text-align: right;
}
table.basic-table tbody tr td > .contents {
  margin-top: 1.4em;
  border-radius: 0.5em;
}
table.basic-table tbody tr td > * { vertical-align: text-bottom !important;}
table.basic-table tbody tr td[rowspan] {
  border-right: 1px solid var(--cs-table_border);
  border-left: 1px solid var(--cs-table_border);
  vertical-align: middle;
}
table.basic-table tbody tr td[rowspan] > .contents { margin-top: 0;}
table.basic-table tbody tr td:first-child .contents > span[class^=elaicon-]:only-child {
  margin-right: 0;
  margin-left: 0;
}
table.basic-table tbody tr td:first-child .contents > span[class^=elaicon-]:only-child::before { text-indent: -0.2em;}
table.basic-table tbody tr.nor { cursor: pointer;}
table.basic-table tbody tr.nor:active :is(td, th) {
  border-bottom-color: var(--cs-btn_font-act) !important;
  background-color: var(--cs-btn_bg-act) !important;
  box-shadow: 0 0 0 0 rgba(0, 0, 0, 0) !important;
  color: var(--cs-btn_font-act) !important;
}
table.basic-table tbody tr.nor:active th > .contents {
  border-bottom-color: var(--cs-btn_font-act) !important;
  border-left-color: var(--cs-btn_font-act) !important;
}
table.basic-table tbody tr.nor :is(td, th):last-child { position: relative;}
table.basic-table tbody tr.nor :is(td, th):last-child::after {
  position: absolute;
  right: 5px;
  bottom: 0.1em;
  content: "\e905";
  color: var(--cs-btn_font-nor);
  font-weight: normal;
  font-family: "elaicon" !important;
}
.windows.edge table.basic-table tbody tr.nor :is(td, th):last-child::after { display: none !important;}
table.basic-table tbody tr.sel { pointer-events: none;}
table.basic-table tbody tr.sel :is(td, th) {
  border-bottom-color: var(--cs-btn_font-sel);
  background-color: var(--cs-btn_bg-sel);
  box-shadow: none;
  color: var(--cs-btn_font-sel);
}
table.basic-table tbody tr.sel th > .contents {
  border-bottom-color: inherit;
  border-left-color: currentColor;
}
table.basic-table tbody tr.msk { pointer-events: none;}
table.basic-table tbody tr.msk :is(td, th) {
  background-color: var(--cs-btn_bg-msk);
  box-shadow: none;
  color: var(--cs-btn_font-msk);
}
table.basic-table tbody tr.msk th > .contents { border-left-color: currentColor;}
table.basic-table tbody :is(th, td) {
  position: relative;
  background-color: var(--cs-table_cell);
  box-shadow: 4px 0px 0px 0px rgba(0, 0, 0, 0);
  vertical-align: bottom;
  white-space: nowrap;
}
table.basic-table tbody :is(th, td):first-child { text-align: left;}
table.basic-table tbody :is(th, td):last-child { padding-right: 13px;}
table.basic-table tbody :is(th, td) > .contents {
  display: inline-block;
  padding: 0 0.5em;
  line-height: 1.1;
  vertical-align: middle;
}
.windows table.basic-table tbody :is(th, td) > .contents:is(.attention, .warnin, .better) { padding-top: 0.1em !important;}

table.basic-table tbody :is(th, td) > :is(.button, .button-fullwidth) {
  min-width: auto;
  min-height: auto;
  margin-top: 10px;
  padding: 0.125em 0.6em;
}
.safari table.basic-table tbody :is(th, td) > :is(.button, .button-fullwidth) { padding: 0 0.6em;}

table.basic-table tbody :is(th, td) > :is(.button, .button-fullwidth) > .contents {
  margin-top: 0;
  font-weight: normal;
}
table.basic-table tbody :is(th, td).icon-x1 .image-wrapper { height: 1em;}
table.basic-table tbody :is(th, td).icon-x2 .image-wrapper {
  height: 2em;
  margin-top: -1em;
}
table.basic-table tbody :is(th, td) > .contents > span[class^=elaicon-]:only-child {
  display: inline-block;
  margin-top: -1em;
  color: var(--cs-key-01);
  font-size: 2em;
}
table.basic-table tbody :is(th, td) > .contents > span[class=elaicon-function-volume-max]:only-child {
  margin-top: auto;
  font-size: 1em;
}
table.basic-table tbody :is(th, td) > .contents > span:is(.elaicon-badge-new-posi, .elaicon-badge-new-nega)::before { transform: translateY(0.2em);}
table.basic-table tbody tr.sel :is(th, td) > .contents > span[class^=elaicon-]:only-child { color: var(--cs-key-02);}
table.basic-table tfoot tr td {
  height: 1.5em;
  padding: 0 1em;
  border: none;
  background-color: var(--cs-table_header);
  vertical-align: middle;
}
table.basic-table caption { text-align: left;}
table.basic-table caption > .contents {
  display: flex;
  align-items: flex-end;
  padding-bottom: 4px;
  color: var(--cs-ac_01-01);
  vertical-align: bottom;
}
table.basic-table caption.titlehead { position: relative;}
table.basic-table caption.titlehead > .contents {
  display: inline-flex;
  align-items: baseline;
  min-width: 10em;
  padding: 0.2em 1.5em 0.2em 0.5em;
  border-top-right-radius: 3vw;
  border-top-left-radius: 0.5em;
  background-color: var(--tab-color);
  color: var(--cs-font-lite);
  line-height: normal;
}
table.basic-table caption.titlehead > .contents:has(ruby) {
  margin-bottom: -1px;
  padding-top: 0.4em;
}
table.basic-table caption.titlehead > .contents ul {
  display: flex;
  align-items: baseline;
}
table.basic-table caption.titlehead > .contents ul li:first-child {
  margin-right: 0.5em;
  font-weight: bolder;
}
table.basic-table caption.titlehead > .description {
  position: absolute;
  right: 0;
  bottom: 1px;
  font-size: 0.9em;
}
table.basic-table caption .left-side { align-items: baseline;}
table.basic-table.nonmt tr td {
  padding-top: 0.5em;
  padding-bottom: 0.5em;
  vertical-align: middle;
}
table.basic-table.nonmt tr td .contents { margin-top: 0 !important;}
table.basic-table.nonmt tr.nor td:last-child::after { top: calc(50% - 0.5em);}
table.basic-table td :is(.error,
.contents.error,
.contents .error) {
  padding: 2em 0;
  text-align: center;
}
table.basic-table tbody tr td.colbg { background-color: var(--cs-basic-03);}
table.basic-table tbody tr td.sort_target { background-color: var(--cs-key-03);}
table.basic-table.hide-bullet tr.nor :is(td, th):last-child:after { content: none;}
table.basic-table td:is(.td_stickerLeft, .td_stickerRight)::before {
  display: flex;
  position: absolute;
  align-items: center;
  justify-content: center;
  margin: 0.2em 0;
  padding: 0.2em;
  border: 1px solid;
  border-radius: 0.5em;
  background-color: var(--cs-basic-01);
  content: attr(data-strings);
  color: var(--cs-ac_02-01);
  font-size: 0.8em;
  text-align: center;
  white-space: pre;
}
table.basic-table td.td_stickerLeft::before { inset: 0 auto 0 0.5em;}
table.basic-table td.td_stickerRight::before { inset: 0 0.5em 0 auto;}
table.basic-table .grade_subject_Bullet li { line-height: 1.1 !important;}

table.nonstyle-table {
  width: 100%;
  margin-bottom: 20px;
  border-collapse: collapse;
  border-spacing: 0;
  color: var(--cs-font-01);
  font-size: 18px;
}
table.nonstyle-table :is(th, td) {
  padding: 0.5em 1em;
  border: 1px solid var(--cs-basic-07);
  vertical-align: middle;
}
table.nonstyle-table thead { font-size: 14px;}
table.nonstyle-table thead tr th {
  position: sticky;
  top: 0;
  left: 0;
  background-color: var(--cs-table_header);
  font-weight: normal;
}
table.nonstyle-table tfoot tr td {
  height: 1.5em;
  padding: 0 1em;
  border-right: none;
  border-left: none;
  background-color: var(--cs-table_header);
}
table.nonstyle-table tfoot tr td:first-child { border-left: 1px solid var(--cs-basic-07);}
table.nonstyle-table tfoot tr td:last-child { border-right: 1px solid var(--cs-basic-07);}
table.nonstyle-table tfoot tr td:only-child { border: 1px solid var(--cs-basic-07);}

.form-wrapper {
  display: inline-flex;
  flex-wrap: wrap;
  align-content: flex-start;
  align-items: center;
}
.form-wrapper :is(input, textarea) {
  font-size: 1em;
  font-family: system-ui;
}
.form-wrapper form { font-size: 1em;}
.form-wrapper :is(select, input, textarea, button) {
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0;
  outline: none;
  background: none;
  -webkit-appearance: none;
          appearance: none;
  position: relative;
  vertical-align: middle;
}
.form-wrapper button {
  background-color: transparent;
  cursor: pointer;
}
.form-wrapper input, .form-wrapper output { vertical-align: middle;}
.form-wrapper input[type=text] { width: 14em;}
.form-wrapper input:is([type=submit], [type=button], [type=reset]), .form-wrapper [type=file] ~ label {
  margin: 0 0.5em 0 0.25em;
  padding: 0.2em 0.5em;
}
.form-wrapper:is(.radio, .checkbox, .btn-radio, .btn-checkbox, .textbox, .textarea, .select, .range) .title {
  display: inline-block;
  margin-right: 0.5em;
  padding: 0.1em 0.5em;
  border-radius: 0 50vh 50vh 0;
  background-color: var(--cs-basic-05);
  color: var(--cs-font-03);
}
.windows .form-wrapper:is(.radio, .checkbox, .btn-radio, .btn-checkbox, .textbox, .textarea, .select, .range) .title { padding-bottom: 0;}
.form-wrapper:is(.checkbox, .radio, .btn-checkbox, .btn-radio, .icon-radio) input:not([type=text]) { display: none;}
.form-wrapper:is(.checkbox, .radio, .btn-checkbox, .btn-radio, .icon-radio) label {
  display: inline-block;
  position: relative;
  margin: 0;
}
.form-wrapper:is(.checkbox, .radio, .btn-checkbox, .btn-radio, .icon-radio) .parts {
  --border_w: 1;
  display: inline-block;
  line-height: normal;
  white-space: nowrap;
  cursor: pointer;
  pointer-events: auto;
  transition: 0.4s;
}
.form-wrapper:is(.checkbox, .radio, .btn-checkbox, .btn-radio, .icon-radio) .parts::before {
  display: inline-block;
  width: 1em;
  height: 1em;
  margin: -0.167em 0.2em 0;
  outline: calc(var(--border_w) * 1px) solid var(--cs-btn_border-nor);
  background-color: var(--cs-btn_bg-nor);
  content: "";
  vertical-align: middle;
}
body.ios.safari .form-wrapper:is(.checkbox, .radio, .btn-checkbox, .btn-radio, .icon-radio) .parts::before {
  outline: none;
  box-shadow: 0 0 0 calc(var(--border_w) * 1px);
}
.form-wrapper:is(.checkbox, .btn-checkbox) .parts::before {
  border-radius: 0.3em;
  outline: calc(var(--border_w) * 1px) solid var(--cs-btn_border-nor);
  content: "\e920";
  color: transparent;
  font-family: "elaicon" !important;
  text-indent: 0;
}
body.ios.safari .form-wrapper:is(.checkbox, .btn-checkbox) .parts::before {
  outline: none;
  box-shadow: 0 0 0 calc(var(--border_w) * 1px) var(--cs-btn_border-nor);
}
.form-wrapper:is(.checkbox, .btn-checkbox) .input:checked + .parts::before { color: var(--cs-btn_font-nor);}
.form-wrapper:is(.checkbox, .btn-checkbox) .input:disabled ~ .parts {
  cursor: not-allowed;
  pointer-events: none;
}
.form-wrapper:is(.checkbox, .btn-checkbox) .input:not(:checked):disabled + .parts { visibility: hidden;}
.form-wrapper:is(.radio, .btn-radio) .parts::before { border-radius: 50%;}
.form-wrapper:is(.radio, .btn-radio) .input { text-align: center;}
.form-wrapper:is(.radio, .btn-radio) .input:checked + .parts { pointer-events: none;}
.form-wrapper:is(.radio, .btn-radio) .input:checked + .parts::before {
  background-image: radial-gradient(var(--cs-btn_border-nor) 45%, var(--cs-btn_bg-nor) 50%);
  background-repeat: no-repeat;
  background-color: var(--cs-btn_border-nor);
}
.form-wrapper:is(.radio, .btn-radio) .input:disabled + .parts {
  cursor: not-allowed;
  pointer-events: none;
}
.form-wrapper:is(.radio, .btn-radio) .input:not(:checked):disabled + .parts::before {
  outline-color: var(--cs-basic-05);
  background-color: var(--cs-basic-05);
}
body.ios.safari .form-wrapper:is(.radio, .btn-radio) .input:not(:checked):disabled + .parts::before { box-shadow: 0 0 0 calc(var(--border_w) * 1px) var(--cs-basic-05);}
.form-wrapper:is(.radio, .btn-radio) .input:checked:disabled + .parts:before {
  outline-color: var(--cs-basic-05);
  background-image: radial-gradient(var(--cs-basic-05) 50%, var(--cs-btn_bg-nor) 60%);
  background-repeat: no-repeat;
}
body.ios.safari .form-wrapper:is(.radio, .btn-radio) .input:checked:disabled + .parts:before { box-shadow: 0 0 0 calc(var(--border_w) * 1px) var(--cs-basic-05);}
.form-wrapper:is(.btn-checkbox, .btn-radio) label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 120px;
  margin: 0.5em 1em 0.5em 0;
  padding: 0.6em;
  font-size: 1em;
  text-align: center;
  text-indent: 0;
  vertical-align: middle;
  cursor: pointer;
  pointer-events: auto;
}
.form-wrapper:is(.btn-checkbox, .btn-radio) label:has(.input:checked) {
  background-color: var(--cs-btn_bg-sel) !important;
  box-shadow: none;
}
.form-wrapper:is(.btn-checkbox, .btn-radio) label:has(.input:checked) .parts { color: var(--cs-btn_font-sel) !important;}
:is(.kougakunen, .teigakunen) .form-wrapper:is(.btn-checkbox, .btn-radio) label {
  min-height: 2.75em;
  padding: 0.3em 0.6em;
}
.form-wrapper:is(.btn-checkbox, .btn-radio) label .parts {
  padding-left: 1.25em;
  text-align: left;
}
.windows .form-wrapper:is(.btn-checkbox, .btn-radio) label .parts { padding-top: 0.1em;}

.form-wrapper:is(.btn-checkbox, .btn-radio) label .parts::before {
  position: absolute;
  top: 50%;
  left: 0.6em;
  margin: 0;
  transform: translateY(-50%);
}
.form-wrapper:is(.checkbox, .radio) label:has(+ label) { margin-right: 0.5em;}
.form-wrapper.icon-radio label {
  width: 3em;
  height: 2em;
  margin-left: 0.5em;
}
.form-wrapper.icon-radio label input.input { display: none;}
.form-wrapper.icon-radio label input.input:checked + span.parts span[class*=elaicon] { color: var(--cs-ac_02-01) !important;}
.form-wrapper.icon-radio label span.parts { width: auto;}
.form-wrapper.icon-radio label span.parts::before, .form-wrapper.icon-radio label span.parts::after { display: none;}
.form-wrapper.icon-radio label span.parts span[class*=elaicon] {
  display: inline-block;
  margin: 0 !important;
  color: var(--cs-basic-06) !important;
  font-size: 2em;
}
table > .form-wrapper { display: table-row-group;}
table > .form-wrapper:is(.checkbox, .radio) tr.checked td { background-color: var(--cs-btn_bg-hov) !important;}
table > .form-wrapper:is(.checkbox, .radio) .parts {
  color: var(--cs-btn_font-nor);
  vertical-align: baseline;
}
table > .form-wrapper:is(.checkbox, .radio) .parts::before { margin-left: 0;}
table > .form-wrapper:is(.checkbox, .radio) .parts::after { left: 0;}
table > .form-wrapper.radio tr.checked {
  cursor: auto;
  pointer-events: none;
}
table > .form-wrapper.radio tr.checked .parts {
  cursor: auto;
  pointer-events: none;
}
table > .form-wrapper.checkbox tr.checked { pointer-events: auto;}
.form-wrapper.textbox input:is([type=text], [type=search], [type=color], [type=date], [type=number], [type=tel], [type=email], [type=url], [type=password], [type=datetime-local], [type=month], [type=week], [type=time]) {
  height: calc(1.4em + 2px);
  border: 1px solid var(--cs-basic-07);
  outline: none;
  background-color: var(--cs-basic-03);
  color: var(--cs-font-01);
  caret-color: var(--cs-ac_01-01);
  line-height: normal;
  text-indent: 0.5em;
  vertical-align: middle;
  word-break: break-all;
  transition: background-color 0.3s;
}
.form-wrapper.textbox input:is([type=text], [type=search], [type=color], [type=date], [type=number], [type=tel], [type=email], [type=url], [type=password], [type=datetime-local], [type=month], [type=week], [type=time]):focus { background-color: var(--cs-basic-01);}
.form-wrapper.textbox input:is([type=text], [type=search], [type=color], [type=date], [type=number], [type=tel], [type=email], [type=url], [type=password], [type=datetime-local], [type=month], [type=week], [type=time])::placeholder {
  color: var(--cs-basic-08) !important;
  font-size: 1em;
  line-height: normal;
}
.form-wrapper.textbox:is(:disabled, [readonly=readonly], [readonly=""]) {
  -webkit-text-fill-color: var(--cs-font-01);
  padding-right: 0 !important;
  padding-left: 0 !important;
  border: none;
  background-color: transparent !important;
  color: var(--cs-font-01);
}
.form-wrapper.textbox input[type=number] {
  text-align: right;
  text-indent: 0 !important;
}
.form-wrapper.textbox input[type=number] :is(:disabled, [readonly=readonly], [readonly=""]) { -moz-appearance: textfield;}
.form-wrapper.textbox input[type=number] :is(:disabled, [readonly=readonly], [readonly=""])::-webkit-inner-spin-button, .form-wrapper.textbox input[type=number] :is(:disabled, [readonly=readonly], [readonly=""])::-webkit-outer-spin-button {
  -webkit-appearance: none;
  appearance: none;
}
.form-wrapper.textbox input.timebox { width: 2.4em !important;}
.form-wrapper.textbox input.datebtn {
  width: 7.5em;
  min-width: auto;
  text-align: center;
  text-indent: 0 !important;
}
.form-wrapper.textbox input.datebtn:focus { outline: none;}
.form-wrapper.select .select-body-wrap {
  position: relative;
  color: var(--cs-btn_font-nor);
}
.form-wrapper.select .select-body-wrap:after {
  position: absolute;
  top: 50%;
  left: 100%;
  padding-right: 0.4em;
  transform: translate(-100%, -50%);
  content: "\e90b";
  color: inherit;
  font-family: "elaicon";
  pointer-events: none;
}
.form-wrapper.select .select-body-wrap select {
  top: 0;
  margin-left: 0.5em;
  padding-right: 1.5em;
  border: none;
  outline: none;
  background-color: transparent;
  color: inherit;
  font-size: inherit;
  line-height: 2.4em !important;
  line-height: 1;
  vertical-align: middle;
  cursor: pointer;
}
.form-wrapper.select .select-body-wrap select option { color: var(--cs-btn_font-nor);}
.form-wrapper.select .select-body-wrap select option:nth-child(odd) { background-color: var(--cs-basic-03);}
.option-container .form-wrapper.select .select-body-wrap select { line-height: normal !important;}
.form-wrapper.select .select-body-wrap:not(:only-child):not(:last-child) { margin-right: 1em;}
.form-wrapper.btn-select { display: flex;}
.form-wrapper.btn-select .select-body-wrapper {
  display: block;
  z-index: 1000;
  position: relative;
  width: 100%;
  height: 2.8em;
  border-radius: 10px;
  background-color: var(--cs-btn_bg-nor);
  cursor: pointer;
}
.form-wrapper.btn-select .select-body-wrapper input.select-close { display: none;}
.form-wrapper.btn-select .select-body-wrapper div.select-items {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  padding-top: calc(2.8em - 2px);
}
.form-wrapper.btn-select .select-body-wrapper div.select-items.nor { background-color: transparent !important;}
.form-wrapper.btn-select .select-body-wrapper div.select-items input.select-expand {
  position: absolute;
  top: 0;
  right: 0;
  width: 0;
  height: calc(2.8em - 2px);
}
.form-wrapper.btn-select .select-body-wrapper div.select-items input.select-expand:checked { z-index: 1001;}
.form-wrapper.btn-select .select-body-wrapper div.select-items input.select-expand:checked + .select-closeLabel { display: block;}
.form-wrapper.btn-select .select-body-wrapper div.select-items input.select-expand:checked + .select-closeLabel + .select-options .select-label { height: calc(2.8em - 2px);}
.form-wrapper.btn-select .select-body-wrapper div.select-items input.select-expand:checked + .select-closeLabel + .select-options + .select-expandLabel { display: none;}
.form-wrapper.btn-select .select-body-wrapper div.select-items input.select-expand::after {
  z-index: 1;
  position: absolute;
  top: 50%;
  right: 0.25em;
  transform: translateY(-50%) rotateZ(0);
  content: "\e90b";
  color: var(--cs-btn_font-nor);
  font-size: 2em;
  font-family: "elaicon" !important;
  opacity: 0.6;
  pointer-events: none;
  transition: all 250ms cubic-bezier(0.4, 0.25, 0.3, 1);
}
.form-wrapper.btn-select .select-body-wrapper div.select-items input.select-expand:checked::after { transform: translateY(-50%) rotateZ(-180deg);}
.form-wrapper.btn-select .select-body-wrapper div.select-items input.select-input { display: none;}
.form-wrapper.btn-select .select-body-wrapper div.select-items input.select-input:checked + .select-label {
  height: calc(2.8em - 2px);
  margin-top: calc(-2.8em + 2px);
  border-radius: 10px;
}
.windows .form-wrapper.btn-select .select-body-wrapper div.select-items input.select-input:checked + .select-label {
  height: calc(2.8em - 6px);
  margin-top: calc(-2.8em + 6px);
}
.form-wrapper.btn-select .select-body-wrapper div.select-items .select-expandLabel {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(2.8em - 2px);
  cursor: pointer;
}
.form-wrapper.btn-select .select-body-wrapper div.select-items .select-closeLabel {
  display: none;
  z-index: -1;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
}
.form-wrapper.btn-select .select-body-wrapper div.select-items input.select-expand:checked + .select-closeLabel + ul.select-options .select-option:first-child { position: relative;}
.form-wrapper.btn-select .select-body-wrapper div.select-items input.select-expand:checked + .select-closeLabel + ul.select-options .select-option:first-child::before {
  display: block;
  z-index: -10;
  position: absolute;
  top: 0;
  width: 100%;
  height: 10px;
  background-color: var(--cs-btn_bg-nor);
  content: "";
}
.form-wrapper.btn-select .select-body-wrapper div.select-items input.select-expand:not(:checked) + .select-closeLabel + ul.select-options .select-option:first-child { position: relative;}
.form-wrapper.btn-select .select-body-wrapper div.select-items input.select-expand:not(:checked) + .select-closeLabel + ul.select-options .select-option:first-child::before {
  display: block;
  z-index: -10;
  position: absolute;
  top: -10px;
  width: 100%;
  height: 0;
  background-color: var(--cs-btn_bg-nor);
  content: "";
  transition: all 250ms cubic-bezier(1, 0, 0.9, 0);
}
.form-wrapper.btn-select .select-body-wrapper .select-label {
  display: flex;
  align-items: baseline;
  width: 100%;
  height: 0;
  padding-right: 1em;
  overflow: hidden;
  background-color: var(--cs-btn_bg-nor);
  font-size: 1em;
  line-height: 2.8em;
  text-overflow: ellipsis;
  white-space: nowrap;
  cursor: pointer;
  transition: all 250ms cubic-bezier(0.4, 0.25, 0.3, 1);
}
.form-wrapper.btn-select .select-body-wrapper .select-label::before {
  display: inline-block;
  width: 1em;
  content: "";
}
.form-wrapper.btn-select .select-body-wrapper .select-label.select-label-placeholder {
  position: absolute;
  top: 0;
  left: 0;
  height: 2.8em;
  border-radius: 10px;
  vertical-align: middle;
  opacity: 0.5;
}
.form-wrapper.btn-select .select-body-wrapper .select-options .select-option:last-child .select-label {
  border-bottom-right-radius: 10px;
  border-bottom-left-radius: 10px;
}
.form-wrapper.btn-select.readonly > .select-body-wrapper {
  background-color: transparent;
  cursor: auto;
  pointer-events: none;
}
.form-wrapper.btn-select.readonly > .select-body-wrapper * { color: var(--cs-font-01) !important;}
.form-wrapper.btn-select.readonly > .select-body-wrapper .select-items.nor {
  border-color: var(--cs-basic-05);
  background-color: transparent !important;
  box-shadow: none !important;
}
.form-wrapper.btn-select.readonly > .select-body-wrapper input.select-expand:after { display: none;}
.form-wrapper.btn-select.readonly > .select-body-wrapper .select-label { background-color: var(--cs-basic-01);}
.form-wrapper.btn-select.readonly > .select-body-wrapper .select-label.select-label-placeholder { display: none;}
.form-wrapper.range form {
  display: inline-flex;
  flex-wrap: nowrap;
  align-content: flex-start;
  align-items: center;
}
.form-wrapper.range form input[type=range] {
  display: inline-block;
  -webkit-appearance: none;
          appearance: none;
  width: 100%;
  height: 2px;
  margin: 0 0.5em;
  border-radius: 6px;
  background-color: var(--cs-basic-08);
}
.form-wrapper.range form input[type=range]:focus, .form-wrapper.range form input[type=range]:active { outline: none;}
.form-wrapper.range form input[type=range]::-webkit-slider-thumb {
  -webkit-appearance: none;
  display: block;
          appearance: none;
  position: relative;
  width: 20px;
  height: 20px;
  border: 2px solid var(--cs-btn_border-nor);
  border-radius: 50%;
  background-color: var(--cs-basic-01);
  cursor: pointer;
}
.form-wrapper.range form input[type=range]::-ms-tooltip { display: none;}
.form-wrapper.range form output {
  display: inline-block;
  width: 3em;
}
.form-wrapper.textarea {
  display: block;
  flex-direction: column;
}
.form-wrapper.textarea textarea {
  width: 100%;
  height: 12.5em;
  margin: 5px 0 10px;
  padding: 0 0.4em;
  overflow: auto;
  border: 1px solid var(--cs-basic-06);
  outline: none;
  color: var(--cs-font-01);
  font-size: 1em;
  line-height: 2;
  resize: none;
  transition: all 0.3s;
}
.form-wrapper.textarea textarea:not([readonly=readonly]):focus { background-color: var(--cs-basic-01);}
.form-wrapper.textarea textarea::placeholder { color: var(--cs-basic-08);}
.form-wrapper.textarea textarea[readonly=readonly] { cursor: default;}
.form-wrapper.file {
  display: flex;
  justify-content: space-between;
}
.form-wrapper.file input[type=file] { display: none;}
.form-wrapper.file input[type=text].filename {
  width: auto !important;
  font-size: 1em !important;
}
.form-wrapper.file label { padding: 0.6em !important;}
.form-wrapper.textarea textarea.note {
  background-image: linear-gradient(to bottom, rgba(var(--cs-basic-06-rgb), 0) 97%, rgba(var(--cs-basic-06-rgb), 1) 98%, rgba(var(--cs-basic-06-rgb), 1) 99%, rgba(var(--cs-basic-06-rgb), 0) 100%);
  background-position: 0 -0.2em;
  background-size: auto 2em;
  background-attachment: local;
  background-color: var(--cs-basic-03);
}
.form-wrapper.textarea textarea.note:not([readonly=readonly]):focus, .form-wrapper.textarea textarea.note[readonly=readonly] {
  background-image: linear-gradient(to bottom, rgba(var(--cs-basic-05-rgb), 0) 97%, rgba(var(--cs-basic-05-rgb), 1) 98%, rgba(var(--cs-basic-05-rgb), 1) 99%, rgba(var(--cs-basic-05-rgb), 0) 100%);
  background-position: 0 -0.2em;
  background-size: auto 2em;
  background-attachment: local;
  background-color: var(--cs-basic-01);
}

.modal {
  display: none;
  z-index: 10010;
  top: 0;
  left: 0;
  margin: auto;
}
.modal .modal-window {
  z-index: 10020;
  position: fixed;
  top: 50%;
  left: 50%;
  width: min-content;
  min-width: 600px;
  max-width: 1004px;
  transform: translate(-50%, -50%);
  border-radius: 20px;
  background-color: var(--cs-basic-01);
}
.modal .modal-window h3 {
  position: relative;
  margin: 0;
  padding: 1em 1em 0.5em;
  border-radius: inherit;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
  font-size: 1.2em;
}
.modal .modal-window h3 + .modal-contents > p {
  margin-top: 0;
  margin-bottom: 1em;
  line-height: normal;
  text-align: left;
}
.modal .modal-window h3 + .modal-contents { max-height: calc(90vh - 4em);}
.modal .modal-window .modal-contents {
  max-height: 90vh;
  padding: 20px;
  overflow-y: auto;
  line-height: normal;
}
.modal .modal-window .modal-contents > :is(p, dl, ul):only-of-type {
  max-height: calc(90vh - 14em);
  overflow-y: auto;
}
.safari .modal .modal-window .modal-contents > :is(p, dl, ul):only-of-type ruby { margin-top: 0;}
.modal .modal-window .modal-contents > p:only-child { margin-bottom: 0 !important;}
.modal .modal-window .modal-contents p {
  margin-bottom: 1em;
  font-size: 0.9em;
  line-height: normal;
  text-align: center;
}
.modal .modal-window .modal-contents dl dt {
  display: block;
  padding: 0.2em 0.5em;
  border-radius: 0.5em;
  background-color: var(--cs-basic-07);
  color: var(--cs-font-lite);
}
.modal .modal-window .modal-contents dl dd {
  display: block;
  padding: 0.5em 0.5em 1.5em 1em;
  font-size: 1.1em;
}
.modal .modal-window .modal-contents ul {
  margin-bottom: 2em;
  line-height: 1.5;
}
.modal .modal-window .modal-contents ul:nth-last-of-type(1) { margin-bottom: 0;}
.modal .modal-window .modal-contents .form .title {
  margin: 0;
  padding: 0;
  background-color: inherit;
}
.modal .modal-window .modal-contents .content-block {
  display: flex;
  flex-wrap: wrap;
}
.modal .modal-window .modal-contents .content-block.button-area {
  justify-content: space-around;
  margin-top: 1em;
  margin-bottom: 0;
  padding: 1em 0 0;
  border-top: 1px solid var(--cs-basic-06);
  background-color: transparent;
}
.modal .modal-window .modal-contents :is(.basic-table, .simplebox) ~ .button-area { border-top: 0;}
.modal .modal-window .modal-contents .grid-3 { min-width: 468px;}
.modal .modal-window .modal-contents .grid-4 { min-width: 468px;}
.modal .modal-window .modal-contents .direction-vertical :is(.button, .button-fullwidth) + :is(p, .contents) {
  margin-bottom: 1em;
  font-size: 0.9em;
  text-align: center;
}
.modal .modal-window .modal-contents.select-term { width: 568px;}
.modal .modal-window .modal-contents.select-term .content-block:not(.button-area) {
  margin-bottom: 10px;
  padding: 0 5px;
  border-top: none;
  border-radius: 10px;
  background-color: var(--cs-basic-04);
}
.modal .modal-window .modal-contents.select-term .content-block:nth-child(1) {
  margin: 0 !important;
  padding: 0 !important;
  background-color: transparent !important;
}
.modal .modal-window .modal-contents.select-term .content-block:nth-child(1) .form-wrapper { margin: 0 0 10px !important;}
.modal .modal-window .modal-contents.select-term .content-block:nth-child(1) > p {
  margin-bottom: 10px;
  font-weight: bolder;
  font-size: 2em !important;
}
.modal .modal-window .modal-contents.select-term .content-block:nth-child(5) { flex-wrap: nowrap;}
.modal .modal-window .modal-contents.select-term .content-block:nth-child(5) input[type=radio] { display: none;}
.modal .modal-window .modal-contents.select-term .content-block:nth-child(5) .btn-radio {
  display: inline-block;
  flex-shrink: 1000;
}
.modal .modal-window .modal-contents.select-term .content-block:nth-child(5) .date-wrapper {
  display: inline-flex;
  opacity: 0.1;
}
.modal .modal-window .modal-contents.select-term .content-block:nth-child(5) .date-wrapper .textbox {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  padding: 0;
}
.modal .modal-window .modal-contents.select-term .content-block:nth-child(5) .date-wrapper .textbox:last-child::before {
  display: block;
  margin: 0 auto;
  content: "〜";
}
.modal .modal-window .modal-contents.select-term .content-block:nth-child(5) .date-wrapper .textbox::after {
  margin-right: 0.5em;
  content: "\e95a";
  color: currentColor;
  font-family: "elaicon" !important;
}
.modal .modal-window .modal-contents.select-term .content-block:nth-child(5) .date-wrapper .textbox input {
  width: 7em;
  margin: 0;
  margin: 0 0.5em;
}
.modal .modal-window .modal-contents.select-term .content-block:nth-child(5) .text-active:checked + .btn-radio label { background-color: var(--cs-btn_bg-sel);}
.modal .modal-window .modal-contents.select-term .content-block:nth-child(5) .text-active:checked + .btn-radio label .parts {
  box-shadow: none;
  color: var(--cs-font-lite);
  pointer-events: none;
}
.modal .modal-window .modal-contents.select-term .content-block:nth-child(5) .text-active:checked + .btn-radio label .parts::before {
  background-image: radial-gradient(var(--cs-btn_border-nor) 45%, var(--cs-btn_bg-nor) 50%);
  background-color: var(--cs-btn_border-nor);
}
.modal .modal-window .modal-contents.select-term .content-block:nth-child(5) .text-active:checked + .btn-radio + .date-wrapper { opacity: 1;}
.modal .modal-window .modal-contents.select-term .content-block:nth-child(5) .text-active:checked + .btn-radio + .date-wrapper .textbox input:is([readonly=readonly], [readonly=""]) {
  border: 1px solid var(--cs-basic-07) !important;
  color: var(--cs-font-01) !important;
  cursor: pointer;
  pointer-events: auto;
}
.modal .modal-window .modal-contents.select-term .content-block:nth-child(5) .text-active:checked + .btn-radio + .date-wrapper .textbox::after { color: var(--cs-btn_font-nor);}
.modal .modal-window .modal-contents.select-term .content-block:nth-child(5) .text-active:checked + .date-wrapper .parts::before {
  background-image: radial-gradient(var(--cs-btn_border-nor) 45%, var(--cs-btn_bg-nor) 50%);
  background-color: var(--cs-btn_border-nor);
}
.modal .modal-window .modal-contents.select-term .content-block .form-wrapper {
  display: flex;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 0;
  padding: 0 5px;
}
.modal .modal-window .modal-contents.select-term .content-block .form-wrapper > section {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
}
.modal .modal-window .modal-contents.select-term .content-block .form-wrapper:not([class*=btn-select]) label {
  margin: 5px 0;
  padding: 0 5px;
}
.modal .modal-window .modal-contents.select-term .content-block .form-wrapper:not([class*=btn-select]) label .parts { min-width: 100px !important;}
.modal .modal-window .modal-contents.select-term-type2 .content-block:nth-child(1) {
  margin: 0 !important;
  padding: 0 !important;
  background-color: transparent !important;
}
.modal .modal-window .modal-contents.select-term-type2 .content-block:nth-child(1) .form-wrapper { margin: 0 0 10px !important;}
.modal .modal-window .modal-contents.select-term-type2 .content-block:nth-child(1) > p {
  margin-bottom: 10px;
  font-weight: bolder;
  font-size: 2em !important;
}
.modal .modal-window .modal-contents.select-term-type2 .content-block:nth-child(2) { display: block;}
.modal .modal-window .modal-contents.select-term-type2 .content-block:nth-child(2) > .month-all {
  margin-bottom: 1em;
  margin-left: 1em;
}
.modal .modal-window .modal-contents.select-term-type2 .content-block:nth-child(2) > :is(.month-short, .month-long) {
  display: flex;
  justify-content: space-between;
  margin-bottom: 10px;
  padding: 1em;
  border-radius: 10px;
  background-color: var(--cs-basic-04);
}
.modal .modal-window .modal-contents.select-term-type2 .content-block:nth-child(2) > :is(.month-short, .month-long) .form-wrapper.radio { width: 11em;}
.modal .modal-window .modal-contents.select-term-type2 .content-block:nth-child(2) > :is(.month-short, .month-long) .form-wrapper.radio p {
  margin: 0 0 0 1em;
  font-size: 0.8em;
}
.modal .modal-window .modal-contents.select-term-type2 .content-block:nth-child(2) > :is(.month-short, .month-long) .form-wrapper.select:first-child::after {
  margin-left: 1em;
  content: "〜";
}
.modal .modal-window .modal-contents.select-term-type2 .content-block:nth-child(2) input.term-switch { display: none;}
.modal .modal-window .modal-contents.select-term-type2 .content-block:nth-child(2) input.term-switch::before { background-color: var(--cs-btn_border-nor);}
.modal .modal-window .modal-contents.select-term-type2 .content-block:nth-child(2) input.term-switch.all:checked ~ .month-all .parts::before {
  background-image: radial-gradient(var(--cs-btn_border-nor) 45%, var(--cs-btn_bg-nor) 50%);
  background-color: var(--cs-btn_border-nor);
}
.modal .modal-window .modal-contents.select-term-type2 .content-block:nth-child(2) input.term-switch.short:checked ~ .month-short .parts::before {
  background-image: radial-gradient(var(--cs-btn_border-nor) 45%, var(--cs-btn_bg-nor) 50%);
  background-color: var(--cs-btn_border-nor);
}
.modal .modal-window .modal-contents.select-term-type2 .content-block:nth-child(2) input.term-switch.long:checked ~ .month-long .parts::before {
  background-image: radial-gradient(var(--cs-btn_border-nor) 45%, var(--cs-btn_bg-nor) 50%);
  background-color: var(--cs-btn_border-nor);
}
.modal .modal-window .modal-contents.slect-grades_01 ul {
  display: grid;
  grid-template-rows: repeat(6, auto);
  grid-template-columns: repeat(3, 1fr);
  grid-column-gap: 1em;
  grid-row-gap: 0.5em;
}
.modal .modal-window .modal-contents.slect-grades_01 ul .cell.c1 { grid-area: 1/1/2/4;}
.modal .modal-window .modal-contents.slect-grades_01 ul .cell.c2 { grid-area: 2/1/3/4;}
.modal .modal-window .modal-contents.slect-grades_01 ul .cell.c3 { grid-area: 3/1/4/2;}
.modal .modal-window .modal-contents.slect-grades_01 ul .cell.c4 { grid-area: 3/2/4/3;}
.modal .modal-window .modal-contents.slect-grades_01 ul .cell.c5 { grid-area: 3/3/4/4;}
.modal .modal-window .modal-contents.slect-grades_01 ul .cell.c6 { grid-area: 4/1/5/2;}
.modal .modal-window .modal-contents.slect-grades_01 ul .cell.c7 { grid-area: 4/2/5/3;}
.modal .modal-window .modal-contents.slect-grades_01 ul .cell.c8 { grid-area: 4/3/5/4;}
.modal .modal-window .modal-contents.slect-grades_01 ul .cell.c9 { grid-area: 5/1/6/4;}
.modal .modal-window .modal-contents.slect-grades_01 ul .cell.c10 { grid-area: 6/1/7/2;}
.modal .modal-window .modal-contents.slect-grades_01 ul .cell.c11 { grid-area: 6/2/7/3;}
.modal .modal-window .modal-contents.slect-grades_01 ul .cell.c12 { grid-area: 6/3/7/4;}
.modal .modal-window .modal-contents.slect-grades_01 ul .cell.c1 { margin-bottom: 1em;}
.modal .modal-window .modal-contents.slect-grades_01 ul .cell.c9 { margin-top: 0.5em;}
.modal .modal-window .modal-contents.slect-grades_01 ul .cell:is(.c1, .c2, .c9) label {
  padding-right: 0.5em;
  border-radius: 0.5em;
  background-color: var(--cs-key-03);
}
.modal .modal-window .modal-contents.slect-subject_01 ul { display: block;}
.modal .modal-window .modal-contents.slect-subject_01 ul li:first-of-type {
  margin-bottom: 1em;
  padding-right: 0.5em;
  border-radius: 0.5em;
  background-color: var(--cs-key-03);
}
.modal .modal-window .modal-contents.form .form-wrapper { width: 100%;}
.modal .modal-window .modal-contents.form .form-wrapper.textbox { font-size: 1em;}
.modal .modal-window .modal-contents.form .form-wrapper.textbox input:is([type=text], [type=search], [type=color], [type=date], [type=number], [type=tel], [type=email], [type=url], [type=password], [type=datetime-local], [type=month], [type=week], [type=time]) {
  width: 100%;
  font-size: 1.5em;
}
.modal .modal-window .modal-contents.form .form-wrapper.textbox .title { border-radius: 0;}
.modal .modal-window .modal-contents.select-term-type2 .content-block:nth-child(2) input.term-switch.all:checked ~ :is(.month-short, .month-long) .right-side *, .modal .modal-window .modal-contents.select-term-type2 .content-block:nth-child(2) input.term-switch.short:checked ~ .month-long .right-side *, .modal .modal-window .modal-contents.select-term-type2 .content-block:nth-child(2) input.term-switch.long:checked ~ .month-short .right-side * {
  color: var(--cs-font-03);
  opacity: 0.5;
  pointer-events: none;
}
.modal .close-btn {
  position: absolute !important;
  top: 0;
  right: -60px;
  width: 50px;
  height: 50px;
  border-radius: 20px;
  text-align: center;
  cursor: pointer;
}
.modal .close-btn:active::before, .modal .close-btn:active::after { background-color: var(--cs-btn_font-act) !important;}
.modal .close-btn::before, .modal .close-btn::after {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 4px;
  border-radius: 4px;
  background-color: var(--cs-btn_font-nor);
  content: "";
}
.modal .close-btn::before { transform: translate(-50%, -50%) rotate(45deg);}
.modal .close-btn::after { transform: translate(-50%, -50%) rotate(-45deg);}

:is(#modal-layer, #modal-layer-wait) {
  display: none;
  z-index: 10000;
  position: fixed;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  transform: translate(-50%, -50%);
  background-color: var(--cs-modal-bg_01);
  cursor: pointer !important;
  opacity: 0.5;
}
.su .lv4 { background-color: #006795;}
.su .lv3 { background-color: #0c9ee0;}
.su.grid-container .button.nor {
  border-color: #0c9ee0;
  color: #04384f;
}
.su .lv2 { background-color: #56beec;}
.su.grid-container .button.nor { background-color: #56beec;}
.su .lv1 { background-color: #a9daf0;}
.koku .lv4 { background-color: #3e0091;}
.koku .lv3 { background-color: #650cdc;}
.koku.grid-container .button.nor {
  border-color: #650cdc;
  color: #22044b;
}
.koku .lv2 { background-color: #9453ec;}
.koku.grid-container .button.nor { background-color: #9453ec;}
.koku .lv1 { background-color: #c5a6ef;}
.ei .lv4 { background-color: #8f0034;}
.ei .lv3 { background-color: #da0b57;}
.ei.grid-container .button.nor {
  border-color: #da0b57;
  color: #49041d;
}
.ei .lv2 { background-color: #ec5189;}
.ei.grid-container .button.nor { background-color: #ec5189;}
.ei .lv1 { background-color: #efa4bf;}
.ri .lv4 { background-color: #864800;}
.ri .lv3 { background-color: #d2760b;}
.ri.grid-container .button.nor {
  border-color: #d2760b;
  color: #402403;
}
.ri .lv2 { background-color: #eba049;}
.ri.grid-container .button.nor { background-color: #eba049;}
.ri .lv1 { background-color: #eec89c;}
.sha .lv4 { background-color: #4b6c00;}
.sha .lv3 { background-color: #83b90a;}
.sha.grid-container .button.nor {
  border-color: #83b90a;
  color: #1c2802;
}
.sha .lv2 { background-color: #b0e831;}
.sha.grid-container .button.nor { background-color: #b0e831;}
.sha .lv1 { background-color: #cbea86;}
.ext .lv4 { background-color: #006450;}
.ext .lv3 { background-color: #09b190;}
.ext.grid-container .button.nor {
  border-color: #09b190;
  color: #02201a;
}
.ext .lv2 { background-color: #2ae7c1;}
.ext.grid-container .button.nor { background-color: #2ae7c1;}
.ext .lv1 { background-color: #80e9d4;}

:is(.su, .koku, .ei, .ri, .sha, .ext) .dis {
  border: 1px solid #eee;
  background-color: transparent;
  color: transparent;
  cursor: auto;
}

[class*=afterstr-] {
  display: inline-block;
  position: relative;
  align-items: baseline;
  white-space: nowrap;
}
[class*=afterstr-]::after {
  color: currentColor;
  font-weight: normal;
  font-size: 0.7em;
  opacity: 0.8;
}
.teigakunen [class*=afterstr-]::after { font-feature-settings: "palt";}
.teigakunen .afterstr-year::after { content: "ねん";}
.teigakunen .afterstr-fisyear::after { content: "ねんど";}
.teigakunen .afterstr-month::after { content: "がつ";}
.teigakunen .afterstr-monthly::after { content: "つき";}
.teigakunen .afterstr-week::after { content: "しゅう";}
.teigakunen .afterstr-day::after { content: "にち";}
.teigakunen .afterstr-hourly::after { content: "じかん";}
.teigakunen .afterstr-hour::after { content: "じ";}
.teigakunen .afterstr-minute::after { content: "ふん";}
.teigakunen .afterstr-second::after { content: "びょう";}
.teigakunen .afterstr-term::after { content: "がっき";}
.teigakunen .afterstr-percent::after { content: "％";}
.teigakunen .afterstr-times::after { content: "かい";}
.teigakunen .afterstr-score::after { content: "てん";}
.teigakunen .afterstr-exam::after { content: "もん";}
.teigakunen .afterstr-piece::after { content: "こ";}
.teigakunen .afterstr-case::after { content: "けん";}
.teigakunen .afterstr-people::after { content: "にん";}
.teigakunen .afterstr-member::after { content: "めい";}
.teigakunen .afterstr-coin::after,
.teigakunen .afterstr-sheet::after { content: "まい";}
.teigakunen .afterstr-per-year::after { content: " / ねん";}
.teigakunen .afterstr-per-fisyear::after { content: " / ねんど";}
.teigakunen .afterstr-per-month::after { content: " / がつ";}
.teigakunen .afterstr-per-monthly::after { content: " / つき";}
.teigakunen .afterstr-per-week::after { content: " / しゅう";}
.teigakunen .afterstr-per-day::after { content: " / にち";}
.teigakunen .afterstr-per-hour::after { content: " / じかん";}
.teigakunen .afterstr-per-minute::after { content: " / ふん";}
.teigakunen .afterstr-per-second::after { content: " / びょう";}
.teigakunen .afterstr-per-term::after { content: " / がっき";}
.teigakunen .afterstr-per-times::after { content: " / かい";}
.teigakunen .afterstr-per-score::after { content: " / てん";}
.teigakunen .afterstr-per-exam::after { content: " / もん";}
.teigakunen .afterstr-per-piece::after { content: " / こ";}
.teigakunen .afterstr-per-case::after { content: " / けん";}
.teigakunen .afterstr-per-people::after { content: " / にん";}
.teigakunen .afterstr-per-member::after { content: " / めい";}

.kougakunen [class*=afterstr-]::before {
  display: block;
  position: absolute;
  top: auto;
  right: 0;
  bottom: 2.43em;
  width: 2.33em;
  font-weight: normal;
  font-size: 0.3em;
  text-align: center;
  white-space: nowrap;
  opacity: 0.8;
}
.kougakunen.chrome [class*=afterstr-]::before {
  font-size: 100% !important;
  zoom: 0.3;
}

.kougakunen.windows.chrome [class*=afterstr-]::before {
  bottom: 2.63em !important;
  font-family: "BIZ UDPGothic";
}
.kougakunen :is(.afterstr-fisyear,
.afterstr-hourly,
.afterstr-days,
.afterstr-term,
.afterstr-per-fisyear,
.afterstr-per-hourly,
.afterstr-per-term)::before { width: 4.66em !important;}
.kougakunen .afterstr-year::before { content: "ねん";}
.kougakunen .afterstr-fisyear::before { content: "ねんど";}
.kougakunen .afterstr-month::before { content: "がつ";}
.kougakunen .afterstr-monthly::before { content: "つき";}
.kougakunen .afterstr-week::before { content: "しゅう";}
.kougakunen .afterstr-day::before { content: "にち";}
.kougakunen .afterstr-days::before { content: "にちかん";}
.kougakunen .afterstr-hourly::before { content: "じかん";}
.kougakunen .afterstr-hour::before { content: "じ";}
.kougakunen .afterstr-minute::before { content: "ふん";}
.kougakunen .afterstr-second::before { content: "びょう";}
.kougakunen .afterstr-term::before { content: "がっき";}
.kougakunen .afterstr-percent::before { content: none;}
.kougakunen .afterstr-times::before { content: "かい";}
.kougakunen .afterstr-score::before { content: "てん";}
.kougakunen .afterstr-exam::before { content: "もん";}
.kougakunen .afterstr-piece::before { content: "こ";}
.kougakunen .afterstr-case::before { content: "けん";}
.kougakunen .afterstr-people::before { content: "にん";}
.kougakunen .afterstr-member::before { content: "めい";}
.kougakunen .afterstr-coin::before,
.kougakunen .afterstr-sheet::before { content: "まい";}
.kougakunen .afterstr-per-year::before { content: " ねん";}
.kougakunen .afterstr-per-fisyear::before { content: " ねんど";}
.kougakunen .afterstr-per-month::before { content: " がつ";}
.kougakunen .afterstr-per-monthly::before { content: " つき";}
.kougakunen .afterstr-per-week::before { content: " しゅう";}
.kougakunen .afterstr-per-day::before { content: " にち";}
.kougakunen .afterstr-per-hourly::before { content: " じかん";}
.kougakunen .afterstr-per-minute::before { content: " ふん";}
.kougakunen .afterstr-per-second::before { content: " びょう";}
.kougakunen .afterstr-per-term::before { content: " がっき";}
.kougakunen .afterstr-per-times::before { content: " かい";}
.kougakunen .afterstr-per-score::before { content: " てん";}
.kougakunen .afterstr-per-exam::before { content: " もん";}
.kougakunen .afterstr-per-piece::before { content: " こ";}
.kougakunen .afterstr-per-case::before { content: " けん";}
.kougakunen .afterstr-per-people::before { content: " にん";}
.kougakunen .afterstr-per-member::after { content: " / めい";}
.kougakunen :is(table,
.gadget-calendar,
.gadget-message .date) [class*=afterstr-]::before { content: none;}
.afterstr-year::after { content: "年";}
.afterstr-fisyear::after { content: "年度";}
.afterstr-month::after { content: "月";}
.afterstr-monthly::after { content: "月";}
.afterstr-week::after { content: "週";}
.afterstr-day::after { content: "日";}
.afterstr-days::after { content: "日間";}
.afterstr-hourly::after { content: "時間";}
.afterstr-hour::after { content: "時";}
.afterstr-minute::after { content: "分";}
.afterstr-second::after { content: "秒";}
.afterstr-term::after { content: "学期";}
.afterstr-percent::after { content: "％";}
.afterstr-times::after { content: "回";}
.afterstr-score::after { content: "点";}
.afterstr-exam::after { content: "問";}
.afterstr-piece::after { content: "個";}
.afterstr-case::after { content: "件";}
.afterstr-people::after { content: "人";}
.afterstr-member::after { content: "名";}
.afterstr-school::after { content: "校";}
.afterstr-class::after { content: "組";}
.afterstr-number::after { content: "番";}
.afterstr-coin::after,
.afterstr-sheet::after { content: "枚";}
.afterstr-per-year::after { content: " / 年";}
.afterstr-per-fisyear::after { content: " / 年度";}
.afterstr-per-month::after { content: " / 月";}
.afterstr-per-week::after { content: " / 週";}
.afterstr-per-day::after { content: " / 日";}
.afterstr-per-hourly::after { content: " / 時間";}
.afterstr-per-minute::after { content: " / 分";}
.afterstr-per-second::after { content: " / 秒";}
.afterstr-per-term::after { content: " / 学期";}
.afterstr-per-times::after { content: " / 回";}
.afterstr-per-score::after { content: " / 点";}
.afterstr-per-exam::after { content: " / 問";}
.afterstr-per-piece::after { content: " / 個";}
.afterstr-per-case::after { content: " / 件";}
.afterstr-per-people::after { content: " / 人";}
.afterstr-per-member::after { content: " / 名";}
.afterstr-per-school::after { content: " / 校";}
.afterstr-per-class::after { content: " / 組";}
.afterstr-times-per-people::after { content: "回 / 人";}

.afterstr, .afterstr-semicolon::after, .afterstr-colon::after, .afterstr-per::after {
  margin: 0 0.2em;
  font-weight: normal;
  font-size: 1em;
  opacity: 0.8;
}
.afterstr-per::after { content: "/";}
.afterstr-colon::after { content: ":";}
.afterstr-semicolon::after { content: ";";}

.beforestr-level::before {
  margin: 0 0.2em;
  content: "Lv.";
  font-weight: normal;
  font-size: 0.7em;
}
.beforestr-per::before { content: " / ";}
.beforestr-colon::before { content: " : ";}
.beforestr-semicolon::before { content: " ; ";}

:is(.beforestr-per, .beforestr-colon, .beforestr-semicolon)::before {
  font-weight: normal;
  font-size: 1em;
  white-space: pre;
  opacity: 0.8;
}

header .login-name {
  display: flex;
  z-index: 1;
  position: relative;
  flex-direction: column;
  justify-content: space-evenly;
  max-width: 300px;
  margin: 10px 0;
  padding: 7px;
  border-bottom-width: 1px;
  border-style: solid;
  border-radius: 1em;
  border-color: var(--cs-basic-01);
  background-image: linear-gradient(to bottom, var(--cs-basic-04) 1%, var(--cs-basic-01) 84%);
  background-repeat: no-repeat;
  white-space: nowrap;
}
header .login-name::before {
  z-index: 10;
  position: absolute;
  top: 7px;
  width: calc(100% - 14px);
  height: calc(100% - 14px);
  border-radius: 0.7em;
  content: "";
}
header .login-name > dl {
  display: flex;
  z-index: 20;
  position: relative;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.android.chrome header .login-name dl dd { line-height: 1.1;}

header .login-name dl.section {
  margin: 0 10px;
  font-size: 14px;
}
.windows header .login-name dl.section dd {
  margin-bottom: -0.2em;
  line-height: 1.2;
}
header .login-name dl.section dd:first-of-type {
  overflow: hidden;
  text-overflow: ellipsis;
}
header .login-name dl.section dd:nth-of-type(2) { margin-left: 5px;}
header .login-name dl.section dd:nth-of-type(3) { margin-left: 5px;}
header .login-name dl.section:not(:has(dd)) { display: none;}
header .login-name dl.name {
  align-items: baseline;
  font-size: 20px;
}
header .login-name dl.name dd {
  position: relative;
  margin-right: 0.25em;
  overflow: hidden;
  text-overflow: ellipsis;
}
.windows header .login-name dl.name dd {
  margin-bottom: -0.2em;
  line-height: 1.2;
}
header .login-name dl.name dd:last-child { margin-right: 10px;}
header .login-name dl.name:only-child { margin: 0 10px;}
header .login-name dl dt { display: none;}
header .login-name > div.name {
  z-index: 20;
  position: relative;
  margin: auto 10px;
  overflow: hidden;
  font-size: 20px;
  line-height: normal;
  text-align: right;
  text-overflow: ellipsis;
}

header .main-sign {
  display: flex;
  position: absolute;
  bottom: 10px;
  left: 270px;
  flex-direction: column;
  align-content: center;
  justify-content: center;
  padding: 10px;
  border-width: 3px;
  border-style: solid;
  border-radius: 10px;
  border-color: #ffb7c5;
  background-color: transparent;
  box-shadow: 0 0 10px 0 rgba(255, 0, 44, 0.3), 0 0 10px 0 rgba(255, 0, 44, 0.3) inset;
  opacity: 0;
}
header .main-sign .contents {
  display: block;
  color: #ff889f;
  font-weight: bolder;
  font-size: 22px;
  text-align: center;
  text-shadow: 0 0 10px rgba(255, 0, 44, 0.3);
}
.teigakunen header .main-sign .contents { font-size: 16px;}
header .main-sign .contents:nth-child(2) {
  margin-top: 0.5em;
  font-size: 1em;
}
header .main-sign.sign-visible { animation: main-sign 1.5s ease 0.1s infinite alternate;}
@keyframes main-sign {from { opacity: 0.1;}
to { opacity: 1;}
}
header menu {
  display: flex;
  margin-top: 10px;
}
header menu button.icon-button {
  display: flex;
  z-index: 0;
  flex-direction: column-reverse;
  align-items: center;
  justify-content: center;
  min-width: 60px;
  margin-right: 20px;
}
header menu button.icon-button:focus { outline: none;}
header menu button.icon-button > .icon-wrap {
  display: flex;
  position: relative;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  border-radius: 16px;
  transition: 0.4s;
}
header menu button.icon-button > .icon-wrap span {
  margin: 0;
  font-size: 26px;
  line-height: 1;
}
header menu button.icon-button > .icon-wrap::after {
  display: block;
  z-index: -1;
  position: absolute;
  top: -5px;
  left: -5px;
  width: 60px;
  height: 60px;
  border: 1px solid var(--cs-basic-01);
  border-radius: 20px;
  background-image: linear-gradient(to bottom, var(--cs-basic-04) 0%, var(--cs-basic-01) 100%);
  background-repeat: no-repeat;
  content: "";
}
header menu button.icon-button > .button-label {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  width: 100%;
  height: 2em;
  margin-top: 10px;
  padding-bottom: 5px;
  color: var(--cs-font-03);
  font-size: 12px;
  white-space: nowrap;
}
.safari header menu button.icon-button > .button-label { height: 2.3em;}

.safari header menu button.icon-button > .button-label ruby rt {
  transform: translateY(0.2em);
  font-size: 60%;
}
.chrome header menu button.icon-button > .button-label ruby rt { zoom: 0.6;}

header menu button.icon-button:is(.nor, .eff) > .icon-wrap {
  background-image: linear-gradient(to bottom, rgba(var(--cs-basic-01-rgb), 1) 0%, rgba(var(--cs-basic-03-rgb), 0) 100%);
  background-repeat: no-repeat;
  background-color: var(--cs-basic-03) !important;
}
header menu button.icon-button:is(.nor, .eff) > .icon-wrap span { color: #00A3D6;}
header menu button.icon-button:is(.nor, .eff):active > .icon-wrap { color: var(--cs-btn_font-act);}
header menu button.icon-button:is(.nor, .eff):active > .icon-wrap span { color: var(--cs-btn_font-act);}
header menu button.icon-button.sel > .icon-wrap { background-color: var(--cs-key-01);}
header menu button.icon-button.sel > .icon-wrap span { color: var(--cs-btn_font-sel);}
header menu button.icon-button.msk > .icon-wrap { background-color: var(--cs-btn_bg-msk);}
header menu button.icon-button.msk > .icon-wrap span { color: var(--cs-btn_font-msk);}
header menu button.icon-button.eff > .icon-wrap {
  box-shadow: 0 0 10px 2px var(--cs-btn_border-eff);
  animation: flashBtn 0.7s linear 0.1s infinite alternate;
}
header menu button.icon-button.eff > .icon-wrap span { color: #00A3D6;}
header menu button.icon-button:is(.sel, .msk) { pointer-events: none;}
nav.page-navi {
  display: flex;
  position: relative;
  right: 0;
  align-items: flex-end;
  height: 1.626em;
  font-size: 0.8em;
}
nav.page-navi .text-link {
  display: inline-block;
  position: relative;
  white-space: nowrap;
}
nav.page-navi .text-link::before {
  color: currentColor !important;
  font-family: "elaicon";
  vertical-align: bottom;
}
.ios.safari nav.page-navi .text-link:has(ruby)::before { transform: translateY(-0.125em);}
nav.page-navi .text-link::after { color: currentColor !important;}
nav.page-navi .text-link:active:after { border-bottom: none;}
nav.page-navi .left-side {
  display: block !important;
  flex-grow: 1;
}
nav.page-navi .left-side > .text-link {
  margin-right: 0.6em;
  margin-left: 0;
}
nav.page-navi .left-side > .text-link::before { content: "\e912";}
nav.page-navi .left-side > .text-link:last-child:not(:first-child) {
  color: var(--cs-font-03);
  cursor: auto;
  pointer-events: none;
}
nav.page-navi .right-side {
  display: block;
  flex-grow: 0;
}
nav.page-navi .right-side > .text-link {
  margin-right: 0;
  margin-left: 0.6em;
}
nav.page-navi .right-side > .text-link::before { content: "\e911";}
nav.page-navi > .text-link {
  margin-right: 0.6em;
  margin-left: 0;
  white-space: nowrap;
}
nav.page-navi > .text-link::before { content: "\e912";}
:is([class^=margin-], [class*=" margin-"]):not([class^=margin-top], [class*=" margin-top"], [class^=margin-bottom], [class*=" margin-bottom"], [class^=margin-left], [class*=" margin-left"], [class^=margin-right], [class*=" margin-right"]) { margin: calc(var(--mgn) * 1px) !important;}
[class^=margin-top], [class*=" margin-top"] { margin-top: calc(var(--mgn_t) * 1px) !important;}
[class^=margin-bottom], [class*=" margin-bottom"] { margin-bottom: calc(var(--mgn_b) * 1px) !important;}
[class^=margin-left], [class*=" margin-left"] { margin-left: calc(var(--mgn_l) * 1px) !important;}
[class^=margin-right], [class*=" margin-right"] { margin-right: calc(var(--mgn_r) * 1px) !important;}
.margin-0 { --mgn: 0;}
.margin-top0 { --mgn_t: 0;}
.margin-bottom0 { --mgn_b: 0;}
.margin-left0 { --mgn_l: 0;}
.margin-right0 { --mgn_r: 0;}
.margin-5 { --mgn: 5;}
.margin-top5 { --mgn_t: 5;}
.margin-bottom5 { --mgn_b: 5;}
.margin-left5 { --mgn_l: 5;}
.margin-right5 { --mgn_r: 5;}
.margin-10 { --mgn: 10;}
.margin-top10 { --mgn_t: 10;}
.margin-bottom10 { --mgn_b: 10;}
.margin-left10 { --mgn_l: 10;}
.margin-right10 { --mgn_r: 10;}
.margin-15 { --mgn: 15;}
.margin-top15 { --mgn_t: 15;}
.margin-bottom15 { --mgn_b: 15;}
.margin-left15 { --mgn_l: 15;}
.margin-right15 { --mgn_r: 15;}
.margin-20 { --mgn: 20;}
.margin-top20 { --mgn_t: 20;}
.margin-bottom20 { --mgn_b: 20;}
.margin-left20 { --mgn_l: 20;}
.margin-right20 { --mgn_r: 20;}
.margin-25 { --mgn: 25;}
.margin-top25 { --mgn_t: 25;}
.margin-bottom25 { --mgn_b: 25;}
.margin-left25 { --mgn_l: 25;}
.margin-right25 { --mgn_r: 25;}
.margin-30 { --mgn: 30;}
.margin-top30 { --mgn_t: 30;}
.margin-bottom30 { --mgn_b: 30;}
.margin-left30 { --mgn_l: 30;}
.margin-right30 { --mgn_r: 30;}
.margin-35 { --mgn: 35;}
.margin-top35 { --mgn_t: 35;}
.margin-bottom35 { --mgn_b: 35;}
.margin-left35 { --mgn_l: 35;}
.margin-right35 { --mgn_r: 35;}
.margin-40 { --mgn: 40;}
.margin-top40 { --mgn_t: 40;}
.margin-bottom40 { --mgn_b: 40;}
.margin-left40 { --mgn_l: 40;}
.margin-right40 { --mgn_r: 40;}
.margin-45 { --mgn: 45;}
.margin-top45 { --mgn_t: 45;}
.margin-bottom45 { --mgn_b: 45;}
.margin-left45 { --mgn_l: 45;}
.margin-right45 { --mgn_r: 45;}
.margin-50 { --mgn: 50;}
.margin-top50 { --mgn_t: 50;}
.margin-bottom50 { --mgn_b: 50;}
.margin-left50 { --mgn_l: 50;}
.margin-right50 { --mgn_r: 50;}
.margin-55 { --mgn: 55;}
.margin-top55 { --mgn_t: 55;}
.margin-bottom55 { --mgn_b: 55;}
.margin-left55 { --mgn_l: 55;}
.margin-right55 { --mgn_r: 55;}
.margin-60 { --mgn: 60;}
.margin-top60 { --mgn_t: 60;}
.margin-bottom60 { --mgn_b: 60;}
.margin-left60 { --mgn_l: 60;}
.margin-right60 { --mgn_r: 60;}
.margin-65 { --mgn: 65;}
.margin-top65 { --mgn_t: 65;}
.margin-bottom65 { --mgn_b: 65;}
.margin-left65 { --mgn_l: 65;}
.margin-right65 { --mgn_r: 65;}
.margin-70 { --mgn: 70;}
.margin-top70 { --mgn_t: 70;}
.margin-bottom70 { --mgn_b: 70;}
.margin-left70 { --mgn_l: 70;}
.margin-right70 { --mgn_r: 70;}
.margin-75 { --mgn: 75;}
.margin-top75 { --mgn_t: 75;}
.margin-bottom75 { --mgn_b: 75;}
.margin-left75 { --mgn_l: 75;}
.margin-right75 { --mgn_r: 75;}
.margin-80 { --mgn: 80;}
.margin-top80 { --mgn_t: 80;}
.margin-bottom80 { --mgn_b: 80;}
.margin-left80 { --mgn_l: 80;}
.margin-right80 { --mgn_r: 80;}
.margin-85 { --mgn: 85;}
.margin-top85 { --mgn_t: 85;}
.margin-bottom85 { --mgn_b: 85;}
.margin-left85 { --mgn_l: 85;}
.margin-right85 { --mgn_r: 85;}
.margin-90 { --mgn: 90;}
.margin-top90 { --mgn_t: 90;}
.margin-bottom90 { --mgn_b: 90;}
.margin-left90 { --mgn_l: 90;}
.margin-right90 { --mgn_r: 90;}
.margin-95 { --mgn: 95;}
.margin-top95 { --mgn_t: 95;}
.margin-bottom95 { --mgn_b: 95;}
.margin-left95 { --mgn_l: 95;}
.margin-right95 { --mgn_r: 95;}
.margin-100 { --mgn: 100;}
.margin-top100 { --mgn_t: 100;}
.margin-bottom100 { --mgn_b: 100;}
.margin-left100 { --mgn_l: 100;}
.margin-right100 { --mgn_r: 100;}
:is([class^=padding-], [class*=" padding-"]):not([class^=padding-top], [class*=" padding-top"], [class^=padding-bottom], [class*=" padding-bottom"], [class^=padding-left], [class*=" padding-left"], [class^=padding-right], [class*=" padding-right"]) { padding: calc(var(--pdg) * 1px) !important;}
[class^=padding-top], [class*=" padding-top"] { padding-top: calc(var(--pdg_t) * 1px) !important;}
[class^=padding-bottom], [class*=" padding-bottom"] { padding-bottom: calc(var(--pdg_b) * 1px) !important;}
[class^=padding-left], [class*=" padding-left"] { padding-left: calc(var(--pdg_l) * 1px) !important;}
[class^=padding-right], [class*=" padding-right"] { padding-right: calc(var(--pdg_r) * 1px) !important;}
.padding-0 { --pdg: 0;}
.padding-top0 { --pdg_t: 0;}
.padding-bottom0 { --pdg_b: 0;}
.padding-left0 { --pdg_l: 0;}
.padding-right0 { --pdg_r: 0;}
.padding-5 { --pdg: 5;}
.padding-top5 { --pdg_t: 5;}
.padding-bottom5 { --pdg_b: 5;}
.padding-left5 { --pdg_l: 5;}
.padding-right5 { --pdg_r: 5;}
.padding-10 { --pdg: 10;}
.padding-top10 { --pdg_t: 10;}
.padding-bottom10 { --pdg_b: 10;}
.padding-left10 { --pdg_l: 10;}
.padding-right10 { --pdg_r: 10;}
.padding-15 { --pdg: 15;}
.padding-top15 { --pdg_t: 15;}
.padding-bottom15 { --pdg_b: 15;}
.padding-left15 { --pdg_l: 15;}
.padding-right15 { --pdg_r: 15;}
.padding-20 { --pdg: 20;}
.padding-top20 { --pdg_t: 20;}
.padding-bottom20 { --pdg_b: 20;}
.padding-left20 { --pdg_l: 20;}
.padding-right20 { --pdg_r: 20;}
.padding-25 { --pdg: 25;}
.padding-top25 { --pdg_t: 25;}
.padding-bottom25 { --pdg_b: 25;}
.padding-left25 { --pdg_l: 25;}
.padding-right25 { --pdg_r: 25;}
.padding-30 { --pdg: 30;}
.padding-top30 { --pdg_t: 30;}
.padding-bottom30 { --pdg_b: 30;}
.padding-left30 { --pdg_l: 30;}
.padding-right30 { --pdg_r: 30;}
:is([class^=font-size-], [class*=" font-size-"]):not(.font-size-xs, .font-size-s, .font-size-nor, .font-size-l, .font-size-xl, .font-size-x2, .font-size-x3) { font-size: calc(var(--fs_em) * 1em) !important;}
.font-size-1em { --fs_em: 1;}
.font-size-2em { --fs_em: 2;}
.font-size-3em { --fs_em: 3;}
.font-size-4em { --fs_em: 4;}
.font-size-5em { --fs_em: 5;}
.font-size-6em { --fs_em: 6;}
.font-size-7em { --fs_em: 7;}
.font-size-8em { --fs_em: 8;}
.font-size-9em { --fs_em: 9;}
.font-size-10em { --fs_em: 10;}
.font-size-0_0em { --fs_em: 0;}
.font-size-0_1em { --fs_em: 0.1;}
.font-size-0_2em { --fs_em: 0.2;}
.font-size-0_3em { --fs_em: 0.3;}
.font-size-0_4em { --fs_em: 0.4;}
.font-size-0_5em { --fs_em: 0.5;}
.font-size-0_6em { --fs_em: 0.6;}
.font-size-0_7em { --fs_em: 0.7;}
.font-size-0_8em { --fs_em: 0.8;}
.font-size-0_9em { --fs_em: 0.9;}
.font-size-1_0em { --fs_em: 1;}
.font-size-1_1em { --fs_em: 1.1;}
.font-size-1_2em { --fs_em: 1.2;}
.font-size-1_3em { --fs_em: 1.3;}
.font-size-1_4em { --fs_em: 1.4;}
.font-size-1_5em { --fs_em: 1.5;}
.font-size-1_6em { --fs_em: 1.6;}
.font-size-1_7em { --fs_em: 1.7;}
.font-size-1_8em { --fs_em: 1.8;}
.font-size-1_9em { --fs_em: 1.9;}
.font-size-2_0em { --fs_em: 2;}
.font-size-2_1em { --fs_em: 2.1;}
.font-size-2_2em { --fs_em: 2.2;}
.font-size-2_3em { --fs_em: 2.3;}
.font-size-2_4em { --fs_em: 2.4;}
.font-size-2_5em { --fs_em: 2.5;}
.font-size-2_6em { --fs_em: 2.6;}
.font-size-2_7em { --fs_em: 2.7;}
.font-size-2_8em { --fs_em: 2.8;}
.font-size-2_9em { --fs_em: 2.9;}
:is([class^=width-per-], [class*=" width-per-"]) { width: calc(var(--wi_p) * 1%) !important;}
:is([class^=width-em-], [class*=" width-em-"]) { width: calc(var(--wi_e) * 1em) !important;}
:is([class^=width-px-], [class*=" width-px-"]) { width: calc(var(--wi_px) * 1px) !important;}
:is([class^=wmax-em-], [class*=" wmax-em-"]) { width: calc(var(--wmax-em) * 1em) !important;}
.width-per-1 { --wi_p: 1;}
.width-per-2 { --wi_p: 2;}
.width-per-3 { --wi_p: 3;}
.width-per-4 { --wi_p: 4;}
.width-per-5 { --wi_p: 5;}
.width-per-6 { --wi_p: 6;}
.width-per-7 { --wi_p: 7;}
.width-per-8 { --wi_p: 8;}
.width-per-9 { --wi_p: 9;}
.width-per-10 { --wi_p: 10;}
.width-per-11 { --wi_p: 11;}
.width-per-12 { --wi_p: 12;}
.width-per-13 { --wi_p: 13;}
.width-per-14 { --wi_p: 14;}
.width-per-15 { --wi_p: 15;}
.width-per-16 { --wi_p: 16;}
.width-per-17 { --wi_p: 17;}
.width-per-18 { --wi_p: 18;}
.width-per-19 { --wi_p: 19;}
.width-per-20 { --wi_p: 20;}
.width-per-21 { --wi_p: 21;}
.width-per-22 { --wi_p: 22;}
.width-per-23 { --wi_p: 23;}
.width-per-24 { --wi_p: 24;}
.width-per-25 { --wi_p: 25;}
.width-per-26 { --wi_p: 26;}
.width-per-27 { --wi_p: 27;}
.width-per-28 { --wi_p: 28;}
.width-per-29 { --wi_p: 29;}
.width-per-30 { --wi_p: 30;}
.width-per-31 { --wi_p: 31;}
.width-per-32 { --wi_p: 32;}
.width-per-33 { --wi_p: 33;}
.width-per-34 { --wi_p: 34;}
.width-per-35 { --wi_p: 35;}
.width-per-36 { --wi_p: 36;}
.width-per-37 { --wi_p: 37;}
.width-per-38 { --wi_p: 38;}
.width-per-39 { --wi_p: 39;}
.width-per-40 { --wi_p: 40;}
.width-per-41 { --wi_p: 41;}
.width-per-42 { --wi_p: 42;}
.width-per-43 { --wi_p: 43;}
.width-per-44 { --wi_p: 44;}
.width-per-45 { --wi_p: 45;}
.width-per-46 { --wi_p: 46;}
.width-per-47 { --wi_p: 47;}
.width-per-48 { --wi_p: 48;}
.width-per-49 { --wi_p: 49;}
.width-per-50 { --wi_p: 50;}
.width-per-51 { --wi_p: 51;}
.width-per-52 { --wi_p: 52;}
.width-per-53 { --wi_p: 53;}
.width-per-54 { --wi_p: 54;}
.width-per-55 { --wi_p: 55;}
.width-per-56 { --wi_p: 56;}
.width-per-57 { --wi_p: 57;}
.width-per-58 { --wi_p: 58;}
.width-per-59 { --wi_p: 59;}
.width-per-60 { --wi_p: 60;}
.width-per-61 { --wi_p: 61;}
.width-per-62 { --wi_p: 62;}
.width-per-63 { --wi_p: 63;}
.width-per-64 { --wi_p: 64;}
.width-per-65 { --wi_p: 65;}
.width-per-66 { --wi_p: 66;}
.width-per-67 { --wi_p: 67;}
.width-per-68 { --wi_p: 68;}
.width-per-69 { --wi_p: 69;}
.width-per-70 { --wi_p: 70;}
.width-per-71 { --wi_p: 71;}
.width-per-72 { --wi_p: 72;}
.width-per-73 { --wi_p: 73;}
.width-per-74 { --wi_p: 74;}
.width-per-75 { --wi_p: 75;}
.width-per-76 { --wi_p: 76;}
.width-per-77 { --wi_p: 77;}
.width-per-78 { --wi_p: 78;}
.width-per-79 { --wi_p: 79;}
.width-per-80 { --wi_p: 80;}
.width-per-81 { --wi_p: 81;}
.width-per-82 { --wi_p: 82;}
.width-per-83 { --wi_p: 83;}
.width-per-84 { --wi_p: 84;}
.width-per-85 { --wi_p: 85;}
.width-per-86 { --wi_p: 86;}
.width-per-87 { --wi_p: 87;}
.width-per-88 { --wi_p: 88;}
.width-per-89 { --wi_p: 89;}
.width-per-90 { --wi_p: 90;}
.width-per-91 { --wi_p: 91;}
.width-per-92 { --wi_p: 92;}
.width-per-93 { --wi_p: 93;}
.width-per-94 { --wi_p: 94;}
.width-per-95 { --wi_p: 95;}
.width-per-96 { --wi_p: 96;}
.width-per-97 { --wi_p: 97;}
.width-per-98 { --wi_p: 98;}
.width-per-99 { --wi_p: 99;}
.width-per-100 { --wi_p: 100;}
.width-em-1 { --wi_e: 1;}
.width-em-2 { --wi_e: 2;}
.width-em-3 { --wi_e: 3;}
.width-em-4 { --wi_e: 4;}
.width-em-5 { --wi_e: 5;}
.width-em-6 { --wi_e: 6;}
.width-em-7 { --wi_e: 7;}
.width-em-8 { --wi_e: 8;}
.width-em-9 { --wi_e: 9;}
.width-em-10 { --wi_e: 10;}
.width-em-11 { --wi_e: 11;}
.width-em-12 { --wi_e: 12;}
.width-em-13 { --wi_e: 13;}
.width-em-14 { --wi_e: 14;}
.width-em-15 { --wi_e: 15;}
.width-em-16 { --wi_e: 16;}
.width-em-17 { --wi_e: 17;}
.width-em-18 { --wi_e: 18;}
.width-em-19 { --wi_e: 19;}
.width-em-20 { --wi_e: 20;}
.width-em-21 { --wi_e: 21;}
.width-em-22 { --wi_e: 22;}
.width-em-23 { --wi_e: 23;}
.width-em-24 { --wi_e: 24;}
.width-em-25 { --wi_e: 25;}
.width-em-26 { --wi_e: 26;}
.width-em-27 { --wi_e: 27;}
.width-em-28 { --wi_e: 28;}
.width-em-29 { --wi_e: 29;}
.width-em-30 { --wi_e: 30;}
.width-em-31 { --wi_e: 31;}
.width-em-32 { --wi_e: 32;}
.width-em-33 { --wi_e: 33;}
.width-em-34 { --wi_e: 34;}
.width-em-35 { --wi_e: 35;}
.width-em-36 { --wi_e: 36;}
.width-em-37 { --wi_e: 37;}
.width-em-38 { --wi_e: 38;}
.width-em-39 { --wi_e: 39;}
.width-em-40 { --wi_e: 40;}
.width-px-50 { --wi_px: 50;}
.width-px-51 { --wi_px: 51;}
.width-px-52 { --wi_px: 52;}
.width-px-53 { --wi_px: 53;}
.width-px-54 { --wi_px: 54;}
.width-px-55 { --wi_px: 55;}
.width-px-56 { --wi_px: 56;}
.width-px-57 { --wi_px: 57;}
.width-px-58 { --wi_px: 58;}
.width-px-59 { --wi_px: 59;}
.width-px-60 { --wi_px: 60;}
.width-px-61 { --wi_px: 61;}
.width-px-62 { --wi_px: 62;}
.width-px-63 { --wi_px: 63;}
.width-px-64 { --wi_px: 64;}
.width-px-65 { --wi_px: 65;}
.width-px-66 { --wi_px: 66;}
.width-px-67 { --wi_px: 67;}
.width-px-68 { --wi_px: 68;}
.width-px-69 { --wi_px: 69;}
.width-px-70 { --wi_px: 70;}
.width-px-71 { --wi_px: 71;}
.width-px-72 { --wi_px: 72;}
.width-px-73 { --wi_px: 73;}
.width-px-74 { --wi_px: 74;}
.width-px-75 { --wi_px: 75;}
.width-px-76 { --wi_px: 76;}
.width-px-77 { --wi_px: 77;}
.width-px-78 { --wi_px: 78;}
.width-px-79 { --wi_px: 79;}
.width-px-80 { --wi_px: 80;}
.width-px-81 { --wi_px: 81;}
.width-px-82 { --wi_px: 82;}
.width-px-83 { --wi_px: 83;}
.width-px-84 { --wi_px: 84;}
.width-px-85 { --wi_px: 85;}
.width-px-86 { --wi_px: 86;}
.width-px-87 { --wi_px: 87;}
.width-px-88 { --wi_px: 88;}
.width-px-89 { --wi_px: 89;}
.width-px-90 { --wi_px: 90;}
.width-px-91 { --wi_px: 91;}
.width-px-92 { --wi_px: 92;}
.width-px-93 { --wi_px: 93;}
.width-px-94 { --wi_px: 94;}
.width-px-95 { --wi_px: 95;}
.width-px-96 { --wi_px: 96;}
.width-px-97 { --wi_px: 97;}
.width-px-98 { --wi_px: 98;}
.width-px-99 { --wi_px: 99;}
.width-px-100 { --wi_px: 100;}
.width-px-101 { --wi_px: 101;}
.width-px-102 { --wi_px: 102;}
.width-px-103 { --wi_px: 103;}
.width-px-104 { --wi_px: 104;}
.width-px-105 { --wi_px: 105;}
.width-px-106 { --wi_px: 106;}
.width-px-107 { --wi_px: 107;}
.width-px-108 { --wi_px: 108;}
.width-px-109 { --wi_px: 109;}
.width-px-110 { --wi_px: 110;}
.width-px-111 { --wi_px: 111;}
.width-px-112 { --wi_px: 112;}
.width-px-113 { --wi_px: 113;}
.width-px-114 { --wi_px: 114;}
.width-px-115 { --wi_px: 115;}
.width-px-116 { --wi_px: 116;}
.width-px-117 { --wi_px: 117;}
.width-px-118 { --wi_px: 118;}
.width-px-119 { --wi_px: 119;}
.width-px-120 { --wi_px: 120;}
.width-px-121 { --wi_px: 121;}
.width-px-122 { --wi_px: 122;}
.width-px-123 { --wi_px: 123;}
.width-px-124 { --wi_px: 124;}
.width-px-125 { --wi_px: 125;}
.width-px-126 { --wi_px: 126;}
.width-px-127 { --wi_px: 127;}
.width-px-128 { --wi_px: 128;}
.width-px-129 { --wi_px: 129;}
.width-px-130 { --wi_px: 130;}
.width-px-131 { --wi_px: 131;}
.width-px-132 { --wi_px: 132;}
.width-px-133 { --wi_px: 133;}
.width-px-134 { --wi_px: 134;}
.width-px-135 { --wi_px: 135;}
.width-px-136 { --wi_px: 136;}
.width-px-137 { --wi_px: 137;}
.width-px-138 { --wi_px: 138;}
.width-px-139 { --wi_px: 139;}
.width-px-140 { --wi_px: 140;}
.width-px-141 { --wi_px: 141;}
.width-px-142 { --wi_px: 142;}
.width-px-143 { --wi_px: 143;}
.width-px-144 { --wi_px: 144;}
.width-px-145 { --wi_px: 145;}
.width-px-146 { --wi_px: 146;}
.width-px-147 { --wi_px: 147;}
.width-px-148 { --wi_px: 148;}
.width-px-149 { --wi_px: 149;}
.width-px-150 { --wi_px: 150;}
.width-px-151 { --wi_px: 151;}
.width-px-152 { --wi_px: 152;}
.width-px-153 { --wi_px: 153;}
.width-px-154 { --wi_px: 154;}
.width-px-155 { --wi_px: 155;}
.width-px-156 { --wi_px: 156;}
.width-px-157 { --wi_px: 157;}
.width-px-158 { --wi_px: 158;}
.width-px-159 { --wi_px: 159;}
.width-px-160 { --wi_px: 160;}
.width-px-161 { --wi_px: 161;}
.width-px-162 { --wi_px: 162;}
.width-px-163 { --wi_px: 163;}
.width-px-164 { --wi_px: 164;}
.width-px-165 { --wi_px: 165;}
.width-px-166 { --wi_px: 166;}
.width-px-167 { --wi_px: 167;}
.width-px-168 { --wi_px: 168;}
.width-px-169 { --wi_px: 169;}
.width-px-170 { --wi_px: 170;}
.width-px-171 { --wi_px: 171;}
.width-px-172 { --wi_px: 172;}
.width-px-173 { --wi_px: 173;}
.width-px-174 { --wi_px: 174;}
.width-px-175 { --wi_px: 175;}
.width-px-176 { --wi_px: 176;}
.width-px-177 { --wi_px: 177;}
.width-px-178 { --wi_px: 178;}
.width-px-179 { --wi_px: 179;}
.width-px-180 { --wi_px: 180;}
.width-px-181 { --wi_px: 181;}
.width-px-182 { --wi_px: 182;}
.width-px-183 { --wi_px: 183;}
.width-px-184 { --wi_px: 184;}
.width-px-185 { --wi_px: 185;}
.width-px-186 { --wi_px: 186;}
.width-px-187 { --wi_px: 187;}
.width-px-188 { --wi_px: 188;}
.width-px-189 { --wi_px: 189;}
.width-px-190 { --wi_px: 190;}
.width-px-191 { --wi_px: 191;}
.width-px-192 { --wi_px: 192;}
.width-px-193 { --wi_px: 193;}
.width-px-194 { --wi_px: 194;}
.width-px-195 { --wi_px: 195;}
.width-px-196 { --wi_px: 196;}
.width-px-197 { --wi_px: 197;}
.width-px-198 { --wi_px: 198;}
.width-px-199 { --wi_px: 199;}
.width-px-200 { --wi_px: 200;}
.wmax-em-1 { --wmax-em: 1;}
.wmax-em-2 { --wmax-em: 2;}
.wmax-em-3 { --wmax-em: 3;}
.wmax-em-4 { --wmax-em: 4;}
.wmax-em-5 { --wmax-em: 5;}
.wmax-em-6 { --wmax-em: 6;}
.wmax-em-7 { --wmax-em: 7;}
.wmax-em-8 { --wmax-em: 8;}
.wmax-em-9 { --wmax-em: 9;}
.wmax-em-10 { --wmax-em: 10;}
.wmax-em-11 { --wmax-em: 11;}
.wmax-em-12 { --wmax-em: 12;}
.wmax-em-13 { --wmax-em: 13;}
.wmax-em-14 { --wmax-em: 14;}
.wmax-em-15 { --wmax-em: 15;}
.wmax-em-16 { --wmax-em: 16;}
.wmax-em-17 { --wmax-em: 17;}
.wmax-em-18 { --wmax-em: 18;}
.wmax-em-19 { --wmax-em: 19;}
.wmax-em-20 { --wmax-em: 20;}
:is([class^=height-em-], [class*=" height-em-"]) { height: calc(var(--h_em) * 1em) !important;}
.height-em-1 { --h_em: 1;}
.height-em-2 { --h_em: 2;}
.height-em-3 { --h_em: 3;}
.height-em-4 { --h_em: 4;}
.height-em-5 { --h_em: 5;}
.height-em-6 { --h_em: 6;}
.height-em-7 { --h_em: 7;}
.height-em-8 { --h_em: 8;}
.height-em-9 { --h_em: 9;}
.height-em-10 { --h_em: 10;}
.height-em-11 { --h_em: 11;}
.height-em-12 { --h_em: 12;}
.height-em-13 { --h_em: 13;}
.height-em-14 { --h_em: 14;}
.height-em-15 { --h_em: 15;}
.height-em-16 { --h_em: 16;}
.height-em-17 { --h_em: 17;}
.height-em-18 { --h_em: 18;}
.height-em-19 { --h_em: 19;}
.height-em-20 { --h_em: 20;}
.height-em-21 { --h_em: 21;}
.height-em-22 { --h_em: 22;}
.height-em-23 { --h_em: 23;}
.height-em-24 { --h_em: 24;}
.height-em-25 { --h_em: 25;}
.height-em-26 { --h_em: 26;}
.height-em-27 { --h_em: 27;}
.height-em-28 { --h_em: 28;}
.height-em-29 { --h_em: 29;}
.height-em-30 { --h_em: 30;}
:is([class^=minw-em-], [class*=" minw-em-"]) { min-width: calc(var(--wmin-em) * 1em) !important;}
.minw-em-0_0 { --wmin-em: 0;}
.minw-em-0_1 { --wmin-em: 0.1;}
.minw-em-0_2 { --wmin-em: 0.2;}
.minw-em-0_3 { --wmin-em: 0.3;}
.minw-em-0_4 { --wmin-em: 0.4;}
.minw-em-0_5 { --wmin-em: 0.5;}
.minw-em-0_6 { --wmin-em: 0.6;}
.minw-em-0_7 { --wmin-em: 0.7;}
.minw-em-0_8 { --wmin-em: 0.8;}
.minw-em-0_9 { --wmin-em: 0.9;}
.minw-em-1_0 { --wmin-em: 1;}
.minw-em-1_1 { --wmin-em: 1.1;}
.minw-em-1_2 { --wmin-em: 1.2;}
.minw-em-1_3 { --wmin-em: 1.3;}
.minw-em-1_4 { --wmin-em: 1.4;}
.minw-em-1_5 { --wmin-em: 1.5;}
.minw-em-1_6 { --wmin-em: 1.6;}
.minw-em-1_7 { --wmin-em: 1.7;}
.minw-em-1_8 { --wmin-em: 1.8;}
.minw-em-1_9 { --wmin-em: 1.9;}
.minw-em-2_0 { --wmin-em: 2;}
.minw-em-2_1 { --wmin-em: 2.1;}
.minw-em-2_2 { --wmin-em: 2.2;}
.minw-em-2_3 { --wmin-em: 2.3;}
.minw-em-2_4 { --wmin-em: 2.4;}
.minw-em-2_5 { --wmin-em: 2.5;}
.minw-em-2_6 { --wmin-em: 2.6;}
.minw-em-2_7 { --wmin-em: 2.7;}
.minw-em-2_8 { --wmin-em: 2.8;}
.minw-em-2_9 { --wmin-em: 2.9;}
.minw-em-3_0 { --wmin-em: 3;}
.minw-em-3_1 { --wmin-em: 3.1;}
.minw-em-3_2 { --wmin-em: 3.2;}
.minw-em-3_3 { --wmin-em: 3.3;}
.minw-em-3_4 { --wmin-em: 3.4;}
.minw-em-3_5 { --wmin-em: 3.5;}
.minw-em-3_6 { --wmin-em: 3.6;}
.minw-em-3_7 { --wmin-em: 3.7;}
.minw-em-3_8 { --wmin-em: 3.8;}
.minw-em-3_9 { --wmin-em: 3.9;}
.minw-em-4_0 { --wmin-em: 4;}
.minw-em-4_1 { --wmin-em: 4.1;}
.minw-em-4_2 { --wmin-em: 4.2;}
.minw-em-4_3 { --wmin-em: 4.3;}
.minw-em-4_4 { --wmin-em: 4.4;}
.minw-em-4_5 { --wmin-em: 4.5;}
.minw-em-4_6 { --wmin-em: 4.6;}
.minw-em-4_7 { --wmin-em: 4.7;}
.minw-em-4_8 { --wmin-em: 4.8;}
.minw-em-4_9 { --wmin-em: 4.9;}
.minw-em-5_0 { --wmin-em: 5;}
.minw-em-5_1 { --wmin-em: 5.1;}
.minw-em-5_2 { --wmin-em: 5.2;}
.minw-em-5_3 { --wmin-em: 5.3;}
.minw-em-5_4 { --wmin-em: 5.4;}
.minw-em-5_5 { --wmin-em: 5.5;}
.minw-em-5_6 { --wmin-em: 5.6;}
.minw-em-5_7 { --wmin-em: 5.7;}
.minw-em-5_8 { --wmin-em: 5.8;}
.minw-em-5_9 { --wmin-em: 5.9;}
.minw-em-6_0 { --wmin-em: 6;}
.minw-em-6_1 { --wmin-em: 6.1;}
.minw-em-6_2 { --wmin-em: 6.2;}
.minw-em-6_3 { --wmin-em: 6.3;}
.minw-em-6_4 { --wmin-em: 6.4;}
.minw-em-6_5 { --wmin-em: 6.5;}
.minw-em-6_6 { --wmin-em: 6.6;}
.minw-em-6_7 { --wmin-em: 6.7;}
.minw-em-6_8 { --wmin-em: 6.8;}
.minw-em-6_9 { --wmin-em: 6.9;}
.minw-em-7_0 { --wmin-em: 7;}
.minw-em-7_1 { --wmin-em: 7.1;}
.minw-em-7_2 { --wmin-em: 7.2;}
.minw-em-7_3 { --wmin-em: 7.3;}
.minw-em-7_4 { --wmin-em: 7.4;}
.minw-em-7_5 { --wmin-em: 7.5;}
.minw-em-7_6 { --wmin-em: 7.6;}
.minw-em-7_7 { --wmin-em: 7.7;}
.minw-em-7_8 { --wmin-em: 7.8;}
.minw-em-7_9 { --wmin-em: 7.9;}
.minw-em-8_0 { --wmin-em: 8;}
.minw-em-8_1 { --wmin-em: 8.1;}
.minw-em-8_2 { --wmin-em: 8.2;}
.minw-em-8_3 { --wmin-em: 8.3;}
.minw-em-8_4 { --wmin-em: 8.4;}
.minw-em-8_5 { --wmin-em: 8.5;}
.minw-em-8_6 { --wmin-em: 8.6;}
.minw-em-8_7 { --wmin-em: 8.7;}
.minw-em-8_8 { --wmin-em: 8.8;}
.minw-em-8_9 { --wmin-em: 8.9;}
.minw-em-9_0 { --wmin-em: 9;}
.minw-em-9_1 { --wmin-em: 9.1;}
.minw-em-9_2 { --wmin-em: 9.2;}
.minw-em-9_3 { --wmin-em: 9.3;}
.minw-em-9_4 { --wmin-em: 9.4;}
.minw-em-9_5 { --wmin-em: 9.5;}
.minw-em-9_6 { --wmin-em: 9.6;}
.minw-em-9_7 { --wmin-em: 9.7;}
.minw-em-9_8 { --wmin-em: 9.8;}
.minw-em-9_9 { --wmin-em: 9.9;}
.minw-em-10_0 { --wmin-em: 10;}
.minw-em-10_1 { --wmin-em: 10.1;}
.minw-em-10_2 { --wmin-em: 10.2;}
.minw-em-10_3 { --wmin-em: 10.3;}
.minw-em-10_4 { --wmin-em: 10.4;}
.minw-em-10_5 { --wmin-em: 10.5;}
.minw-em-10_6 { --wmin-em: 10.6;}
.minw-em-10_7 { --wmin-em: 10.7;}
.minw-em-10_8 { --wmin-em: 10.8;}
.minw-em-10_9 { --wmin-em: 10.9;}

:is([class^=indent-], [class*=" indent-"]) {
  display: block;
  margin-left: calc(var(--ind) * 1em) !important;
}
.indent-1 { --ind: 1;}
.indent-2 { --ind: 2;}
.indent-3 { --ind: 3;}
.indent-4 { --ind: 4;}
.indent-5 { --ind: 5;}

ul.liststyle-square, ul.liststyle-circle, ul.liststyle-asterisk {
  position: relative;
  padding: 0.2em 0 0.2em 1em;
}

ul.liststyle-square li, ul.liststyle-circle li, ul.liststyle-asterisk li {
  padding: 0.4em 0;
  line-height: normal;
  list-style-type: none !important;
}
ul.liststyle-square li::before, ul.liststyle-circle li::before, ul.liststyle-asterisk li::before {
  position: absolute;
  left: 0;
  content: "";
}
ul.liststyle-square li:last-child, ul.liststyle-circle li:last-child, ul.liststyle-asterisk li:last-child { padding-bottom: 0;}
ul.liststyle-asterisk li::before { content: "※";}
ul.liststyle-circle li::before { content: "●";}
ul.liststyle-square li::before { content: "■";}

ruby rt {
  font-weight: normal;
  opacity: 0.8;
}
.safari ruby rt { margin-bottom: -0.3em;}
.windows ruby rt { opacity: 0.9;}

.chrome ruby rt {
  font-size: 100%;
  zoom: 0.5;
}
.ipad.safari ruby rt { transform: translateY(0.3em);}
.windows ruby rt { font-family: "BIZ UDPGothic";}
.windows nav.page-navi ruby rt { zoom: 0.6;}
.mac.safari h2 ruby { margin-bottom: -0.3em;}
.ios.safari h2 ruby { margin-bottom: -0.3em;}
.ipad.safari h2 ruby { margin-bottom: -0.3em;}
.su .hitHex.pt3 { --hex-color-rgb: 0, 103, 149 !important;}
.gadget-historyhead.su .colorball li.lv4::before,
.gadget-historyhead.su .title.lv4::before { background-color: #006795 !important;}

.su .lv4.elaicon-symbol-square {
  background-color: transparent;
  color: #006795 !important;
}
.su .hitHex.pt2 { --hex-color-rgb: 58, 165, 213 !important;}
.gadget-historyhead.su .colorball li.lv3::before,
.gadget-historyhead.su .title.lv3::before { background-color: #3aa5d5 !important;}

.su .lv3.elaicon-symbol-square {
  background-color: transparent;
  color: #3aa5d5 !important;
}
.su .hitHex.pt1 { --hex-color-rgb: 179, 204, 214 !important;}
.gadget-historyhead.su .colorball li.lv2::before,
.gadget-historyhead.su .title.lv2::before { background-color: #b3ccd6 !important;}

.su .lv2.elaicon-symbol-square {
  background-color: transparent;
  color: #b3ccd6 !important;
}
.gadget-historyhead.su .colorball li.lv1::before,
.gadget-historyhead.su .title.lv1::before { background-color: var(--cs-basic-03) !important;}

.su .lv1.elaicon-symbol-square {
  margin-left: 1px !important;
  border: 1px solid var(--cs-basic-06);
  background-color: transparent;
  color: var(--cs-basic-03) !important;
  font-size: calc(2em - 4px) !important;
}

.su {
  --subject-color: #006795;
  --select-color: 149, 21, 0;
}
.koku .hitHex.pt3 { --hex-color-rgb: 62, 0, 145 !important;}
.gadget-historyhead.koku .colorball li.lv4::before,
.gadget-historyhead.koku .title.lv4::before { background-color: #3e0091 !important;}

.koku .lv4.elaicon-symbol-square {
  background-color: transparent;
  color: #3e0091 !important;
}
.koku .hitHex.pt2 { --hex-color-rgb: 122, 55, 213 !important;}
.gadget-historyhead.koku .colorball li.lv3::before,
.gadget-historyhead.koku .title.lv3::before { background-color: #7a37d5 !important;}

.koku .lv3.elaicon-symbol-square {
  background-color: transparent;
  color: #7a37d5 !important;
}
.koku .hitHex.pt1 { --hex-color-rgb: 192, 177, 213 !important;}
.gadget-historyhead.koku .colorball li.lv2::before,
.gadget-historyhead.koku .title.lv2::before { background-color: #c0b1d5 !important;}

.koku .lv2.elaicon-symbol-square {
  background-color: transparent;
  color: #c0b1d5 !important;
}
.gadget-historyhead.koku .colorball li.lv1::before,
.gadget-historyhead.koku .title.lv1::before { background-color: var(--cs-basic-03) !important;}

.koku .lv1.elaicon-symbol-square {
  margin-left: 1px !important;
  border: 1px solid var(--cs-basic-06);
  background-color: transparent;
  color: var(--cs-basic-03) !important;
  font-size: calc(2em - 4px) !important;
}

.koku {
  --subject-color: #3E0091;
  --select-color: 107, 145, 0;
}
.ei .hitHex.pt3 { --hex-color-rgb: 143, 0, 52 !important;}
.gadget-historyhead.ei .colorball li.lv4::before,
.gadget-historyhead.ei .title.lv4::before { background-color: #8f0034 !important;}

.ei .lv4.elaicon-symbol-square {
  background-color: transparent;
  color: #8f0034 !important;
}
.ei .hitHex.pt2 { --hex-color-rgb: 212, 53, 111 !important;}
.gadget-historyhead.ei .colorball li.lv3::before,
.gadget-historyhead.ei .title.lv3::before { background-color: #d4356f !important;}

.ei .lv3.elaicon-symbol-square {
  background-color: transparent;
  color: #d4356f !important;
}
.ei .hitHex.pt1 { --hex-color-rgb: 212, 176, 189 !important;}
.gadget-historyhead.ei .colorball li.lv2::before,
.gadget-historyhead.ei .title.lv2::before { background-color: #d4b0bd !important;}

.ei .lv2.elaicon-symbol-square {
  background-color: transparent;
  color: #d4b0bd !important;
}
.gadget-historyhead.ei .colorball li.lv1::before,
.gadget-historyhead.ei .title.lv1::before { background-color: var(--cs-basic-03) !important;}

.ei .lv1.elaicon-symbol-square {
  margin-left: 1px !important;
  border: 1px solid var(--cs-basic-06);
  background-color: transparent;
  color: var(--cs-basic-03) !important;
  font-size: calc(2em - 4px) !important;
}

.ei {
  --subject-color: #8F0034;
  --select-color: 0, 143, 67;
}
.ri .hitHex.pt3 { --hex-color-rgb: 134, 72, 0 !important;}
.gadget-historyhead.ri .colorball li.lv4::before,
.gadget-historyhead.ri .title.lv4::before { background-color: #864800 !important;}

.ri .lv4.elaicon-symbol-square {
  background-color: transparent;
  color: #864800 !important;
}
.ri .hitHex.pt2 { --hex-color-rgb: 211, 134, 46 !important;}
.gadget-historyhead.ri .colorball li.lv3::before,
.gadget-historyhead.ri .title.lv3::before { background-color: #d3862e !important;}

.ri .lv3.elaicon-symbol-square {
  background-color: transparent;
  color: #d3862e !important;
}
.ri .hitHex.pt1 { --hex-color-rgb: 209, 191, 170 !important;}
.gadget-historyhead.ri .colorball li.lv2::before,
.gadget-historyhead.ri .title.lv2::before { background-color: #d1bfaa !important;}

.ri .lv2.elaicon-symbol-square {
  background-color: transparent;
  color: #d1bfaa !important;
}
.gadget-historyhead.ri .colorball li.lv1::before,
.gadget-historyhead.ri .title.lv1::before { background-color: var(--cs-basic-03) !important;}

.ri .lv1.elaicon-symbol-square {
  margin-left: 1px !important;
  border: 1px solid var(--cs-basic-06);
  background-color: transparent;
  color: var(--cs-basic-03) !important;
  font-size: calc(2em - 4px) !important;
}

.ri {
  --subject-color: #864800;
  --select-color: 0, 84, 134;
}
.sha .hitHex.pt3 { --hex-color-rgb: 75, 108, 0 !important;}
.gadget-historyhead.sha .colorball li.lv4::before,
.gadget-historyhead.sha .title.lv4::before { background-color: #4b6c00 !important;}

.sha .lv4.elaicon-symbol-square {
  background-color: transparent;
  color: #4b6c00 !important;
}
.sha .hitHex.pt2 { --hex-color-rgb: 144, 190, 40 !important;}
.gadget-historyhead.sha .colorball li.lv3::before,
.gadget-historyhead.sha .title.lv3::before { background-color: #90be28 !important;}

.sha .lv3.elaicon-symbol-square {
  background-color: transparent;
  color: #90be28 !important;
}
.sha .hitHex.pt1 { --hex-color-rgb: 186, 200, 153 !important;}
.gadget-historyhead.sha .colorball li.lv2::before,
.gadget-historyhead.sha .title.lv2::before { background-color: #bac899 !important;}

.sha .lv2.elaicon-symbol-square {
  background-color: transparent;
  color: #bac899 !important;
}
.gadget-historyhead.sha .colorball li.lv1::before,
.gadget-historyhead.sha .title.lv1::before { background-color: var(--cs-basic-03) !important;}

.sha .lv1.elaicon-symbol-square {
  margin-left: 1px !important;
  border: 1px solid var(--cs-basic-06);
  background-color: transparent;
  color: var(--cs-basic-03) !important;
  font-size: calc(2em - 4px) !important;
}

.sha {
  --subject-color: #4B6C00;
  --select-color: 15, 0, 108;
}
.ext .hitHex.pt3 { --hex-color-rgb: 0, 100, 80 !important;}
.gadget-historyhead.ext .colorball li.lv4::before,
.gadget-historyhead.ext .title.lv4::before { background-color: #006450 !important;}

.ext .lv4.elaicon-symbol-square {
  background-color: transparent;
  color: #006450 !important;
}
.ext .hitHex.pt2 { --hex-color-rgb: 39, 183, 155 !important;}
.gadget-historyhead.ext .colorball li.lv3::before,
.gadget-historyhead.ext .title.lv3::before { background-color: #27b79b !important;}

.ext .lv3.elaicon-symbol-square {
  background-color: transparent;
  color: #27b79b !important;
}
.ext .hitHex.pt1 { --hex-color-rgb: 148, 197, 187 !important;}
.gadget-historyhead.ext .colorball li.lv2::before,
.gadget-historyhead.ext .title.lv2::before { background-color: #94c5bb !important;}

.ext .lv2.elaicon-symbol-square {
  background-color: transparent;
  color: #94c5bb !important;
}
.gadget-historyhead.ext .colorball li.lv1::before,
.gadget-historyhead.ext .title.lv1::before { background-color: var(--cs-basic-03) !important;}

.ext .lv1.elaicon-symbol-square {
  margin-left: 1px !important;
  border: 1px solid var(--cs-basic-06);
  background-color: transparent;
  color: var(--cs-basic-03) !important;
  font-size: calc(2em - 4px) !important;
}

.ext {
  --subject-color: #006450;
  --select-color: 100, 0, 37;
}
:not(.hitHex).pt3 { --hex-color-rgb: 88, 91, 92 !important;}
:not(.hitHex).pt2 { --hex-color-rgb: 118, 122, 123 !important;}
:not(.hitHex).pt1 { --hex-color-rgb: 180, 183, 183 !important;}

.textmark-1, .textmark-2, .textmark-3 {
  display: inline-block;
  margin: 0 0.4em !important;
  padding: 0.1em 0.5em !important;
  border: 1px solid red;
  border: 1px solid;
  border-radius: 0.3em !important;
  background-color: var(--cs-basic-01);
  color: red;
  font-size: 0.85em;
}
.textmark-1 {
  border-color: var(--cs-ac_01-01);
  color: var(--cs-ac_01-01) !important;
}
.textmark-2 {
  border-color: var(--cs-ac_02-01);
  color: var(--cs-ac_02-01) !important;
}
.textmark-3 {
  border-color: var(--cs-ac_03-01);
  color: var(--cs-ac_03-01) !important;
}

.text-link {
  color: var(--cs-font_link-nor);
  text-decoration: none;
  cursor: pointer;
  transition: 0.16s;
}
.text-link:link { color: var(--cs-font_link-nor);}
.text-link:visited { color: var(--cs-font_link-nor);}
.text-link:active {
  color: var(--cs-font_link-act) !important;
  transition: none !important;
}
.text-link.sel {
  color: var(--cs-font_link-sel);
  pointer-events: none;
}
.text-link.msk {
  color: var(--cs-font_link-msk);
  pointer-events: none;
}
.text-link::before, .text-link::after {
  display: inline-block;
  overflow: hidden;
  text-decoration: none;
  vertical-align: top;
}

.button, .button-fullwidth {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 120px;
  padding: 0.6em;
  font-size: 1em;
  text-align: center;
  text-indent: 0;
  vertical-align: middle;
  cursor: pointer;
  pointer-events: auto;
}
.button *, .button-fullwidth * { pointer-events: none;}
.button > .contents, .button-fullwidth > .contents {
  display: inline-block;
  line-height: normal;
  text-align: left;
}
.windows .button > .contents, .windows .button-fullwidth > .contents { padding-top: 0.1em;}
.button > .contents span[class^=elaicon-], .button-fullwidth > .contents span[class^=elaicon-] { top: 0.05em;}
.button > span[class^=elaicon-]:first-child, .button-fullwidth > span[class^=elaicon-]:first-child { margin-left: 0 !important;}
.button > span[class^=elaicon-]:last-child, .button-fullwidth > span[class^=elaicon-]:last-child { margin-right: 0 !important;}
.button_green, .button-fullwidth_green {
  border-color: #188832 !important;
  border-color: var(--cs-ac_01-01);
  background-color: #caf3d4 !important;
  color: #188832 !important;
}
.button_red, .button-fullwidth_red {
  border-color: #de1267 !important;
  background-color: #fdd9e9 !important;
  color: #de1267 !important;
}
.button_yellow, .button-fullwidth_yellow {
  border-color: #cd7d15 !important;
  background-color: #ffefb8 !important;
  color: #cd7d15 !important;
}
.button.btn-bullet, .button-fullwidth.btn-bullet {
  border-radius: 0;
  border-top-right-radius: 50vh;
  border-bottom-right-radius: 50vh;
}
.button.btn-thin, .button-fullwidth.btn-thin { padding: 1px;}
.button.btn-thin .contents, .button-fullwidth.btn-thin .contents { font-size: 0.8em;}
.button-fullwidth { width: 100%;}

body:is(.kougakunen, .teigakunen) :is(.button, .button-fullwidth) {
  min-height: 2.75em;
  padding: 0.3em 0.6em;
}

:is(.grid-one,
.grid-two,
.grid-three,
.grid-four,
.grid-five,
.grid-six) {
  display: flex !important;
  flex-wrap: wrap;
  width: 100%;
}
:is(.grid-one,
.grid-two,
.grid-three,
.grid-four,
.grid-five,
.grid-six) > * {
  display: flex;
  justify-content: center;
  padding: 0 10px 10px;
}
:is(.grid-one,
.grid-two,
.grid-three,
.grid-four,
.grid-five,
.grid-six) > .item {
  align-items: center;
  padding: 0 10px 20px;
}
:is(.grid-one,
.grid-two,
.grid-three,
.grid-four,
.grid-five,
.grid-six) :is(h3, h4, h5) { margin-bottom: 0;}
:is(.grid-one,
.grid-two,
.grid-three,
.grid-four,
.grid-five,
.grid-six) :is(.button, .button-fullwidth) { min-width: 100%;}
.grid-one > * { width: 100%;}
.grid-two > * { width: 50%;}
.grid-three > * { width: 33%;}
.grid-four > * { width: 25%;}
.grid-five > * { width: 20%;}
.grid-six > * { width: 16%;}

.column-wrapper {
  display: flex;
  flex-wrap: nowrap;
  margin-bottom: 20px;
}
.column-wrapper.equal-two .column-container { width: 50%;}
.column-wrapper.equal-three .column-container { width: 33.3%;}
.column-wrapper.equal-four .column-container { width: 25%;}
.column-wrapper:is(.equal-two, .equal-three, .equal-four) .column-container::after {
  display: block;
  position: absolute;
  top: 0;
  right: -0.75em;
  height: 100%;
  border-right: 1px solid var(--cs-basic-06);
  content: "";
}
.column-wrapper .column-container {
  display: block;
  position: relative;
  flex-grow: 1;
  margin-right: 1.5em;
}
.column-wrapper .column-container.shrink { flex-grow: 0;}
.column-wrapper .column-container:last-child { margin-right: 0;}
.column-wrapper .column-container:last-child::after { display: none;}

.left-side {
  display: flex !important;
  flex-grow: 1;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-start;
}
.left-side > * {
  margin-right: 9px;
  margin-left: 0;
}
.left-side h3, .left-side h4, .left-side h5 { margin: 0;}
.left-side.shrink { flex-grow: 0;}

.right-side {
  display: flex !important;
  flex-grow: 1;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-end;
}
.right-side > :not(dt):not(dd) {
  margin-right: 0;
  margin-left: 9px;
}
.right-side h3, .right-side h4, .right-side h5 { margin: 0;}
.right-side.shrink { flex-grow: 0;}

.center-side {
  display: flex !important;
  flex-grow: 1;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
}
.center-side > * {
  margin-right: 4.5px;
  margin-left: 4.5px;
}
.center-side h3, .center-side h4, .center-side h5 { margin: 0;}
.center-side.shrink { flex-grow: 0;}

.left-side > dl,
.right-side > dl,
.center-side > dl {
  display: inline-flex;
  align-items: center;
}
.left-side > dl dt, .left-side > dl dd,
.right-side > dl dt,
.right-side > dl dd,
.center-side > dl dt,
.center-side > dl dd { display: inline-block;}

.direction-vertical {
  display: flex;
  flex-direction: column;
}
.content-block {
  display: block;
  margin-bottom: 2em;
}

.option-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 1.2em;
  margin-bottom: 4px;
  color: var(--cs-font-01);
  font-size: 1em;
}
.option-container .form-wrapper.radio, .option-container .form-wrapper.checkbox, .option-container .form-wrapper.btn-radio, .option-container .form-wrapper.btn-checkbox, .option-container .form-wrapper.textbox, .option-container .form-wrapper.textarea, .option-container .form-wrapper.select, .option-container .form-wrapper.range { margin-bottom: 0;}
.option-container .form-wrapper.textbox { font-size: 0.8em;}
.option-container .button {
  padding: 0;
  font-size: 0.8em;
}
table .option-container { display: inline-flex;}

.caption-container {
  display: block;
  align-items: baseline;
  color: var(--cs-font-03);
  font-size: 0.8em;
  line-height: 1.3;
}

.frame-inline_block-bodercol-key, .frame-inline_block-bodercol-accent-prime, .frame-inline_block-bodercol-accent-second, .frame-inline_block, .frame-block-bodercol-key, .frame-block-bodercol-accent-prime, .frame-block-bodercol-accent-second, .frame-block {
  margin: 0.4em 0;
  padding: 0.5em;
  border: 1px solid;
  border-radius: 0.3em;
  background-color: var(--cs-basic-01);
  line-height: normal;
}
.frame-inline_block-bodercol-key, .frame-block-bodercol-key { border-color: var(--cs-key-01);}
.frame-inline_block-bodercol-accent-prime, .frame-block-bodercol-accent-prime { border-color: var(--cs-ac_01-01);}
.frame-inline_block-bodercol-accent-second, .frame-block-bodercol-accent-second { border-color: var(--cs-ac_02-01);}

.frame-block {
  display: block;
  border-color: var(--cs-font-01);
}
.frame-block-bodercol-key, .frame-block-bodercol-accent-prime, .frame-block-bodercol-accent-second { display: block;}
.frame-inline_block {
  display: inline-block;
  border-color: var(--cs-font-01);
}
.frame-inline_block-bodercol-key, .frame-inline_block-bodercol-accent-prime, .frame-inline_block-bodercol-accent-second { display: inline-block;}
.better {
  padding: 0 0.5em;
  background-color: var(--cs-ac_01-01);
  color: var(--cs-font-lite) !important;
}
.better[class*=beforestr-]::before, .better[class*=afterstr-]::after { opacity: 1;}

.warnin {
  padding: 0 0.5em;
  background-color: var(--cs-ac_03-01);
  color: var(--cs-font-dark) !important;
}
.warnin[class*=beforestr-]::before, .warnin[class*=afterstr-]::after { opacity: 1;}

.attention {
  background-color: var(--cs-ac_02-01);
  color: var(--cs-font-lite) !important;
}
.attention[class*=beforestr-]::before, .attention[class*=afterstr-]::after { opacity: 1;}

.abort {
  background-image: repeating-linear-gradient(45deg, #DF0C6A, #DF0C6A 5px, #FF0000 5px, #FF0000 10px);
  background-color: var(--cs-ac_02-01);
  color: var(--cs-font-lite) !important;
}
.abort[class*=beforestr-]::before, .abort[class*=afterstr-]::after { opacity: 1;}
.bignum:is(.attention, .better, .warnin, .abort) { padding: 0 0.2em;}
.windows .bignum:is(.attention, .better, .warnin, .abort) { padding-top: 0.1em;}
.left-side > .bignum + .button[onclick*=select] { margin-left: -1.5em;}

.button .contents.attention, .button-fullwidth .contents.attention {
  background-color: transparent !important;
  color: #DF0C6A !important;
}
.button .contents.attention[class*=beforestr-]::before, .button .contents.attention[class*=afterstr-]::after, .button-fullwidth .contents.attention[class*=beforestr-]::before, .button-fullwidth .contents.attention[class*=afterstr-]::after { color: inherit !important;}
.button .contents.better, .button-fullwidth .contents.better {
  background-color: transparent !important;
  color: #1AB93F !important;
}
.button .contents.better[class*=beforestr-]::before, .button .contents.better[class*=afterstr-]::after, .button-fullwidth .contents.better[class*=beforestr-]::before, .button-fullwidth .contents.better[class*=afterstr-]::after { color: inherit !important;}

table td > span.contents:is(.better, .warnin, .attention, .abort) {
  font-size: 0.9em;
  line-height: 1.3;
}

.image-wrapper > :is(img, svg) {
  height: 100%;
  fill: currentColor;
  margin: 0;
}
.image-wrapper.face {
  position: relative;
  width: 60px;
  height: 60px;
}
.image-wrapper.face::before {
  display: block;
  z-index: -1;
  position: absolute;
  width: calc(100% - 2px);
  height: calc(100% - 2px);
  margin: auto;
  inset: 0;
  border: 2px dashed;
  border-radius: 50%;
  content: "スタンプ";
  font-size: 0.7em;
  line-height: 58px;
  letter-spacing: -1px;
  text-align: center;
}
.image-wrapper.teacher { height: 100px;}
.image-wrapper.teacher:empty {
  width: 250px;
  height: 100px;
}
.image-wrapper.teacher:empty::before {
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  content: "スタンプ";
}

dl.counter {
  display: inline-flex;
  position: relative;
  align-items: center;
  color: var(--cs-font-03);
}
dl.counter dt {
  display: inline-flex;
  align-items: baseline;
  align-self: flex-end;
  margin: 0 0 0.35em;
  white-space: nowrap;
}
.safari dl.counter dt { margin: 0 0 0.15em;}
.chrome dl.counter dt { margin: 0 0 0.475em;}

dl.counter dt:empty ~ dd {
  padding-right: 0 !important;
  font-size: 40px;
}
dl.counter dt:empty ~ dd rt { font-size: 0.3em !important;}
.chrome dl.counter dt:empty ~ dd rt { font-size: 50% !important;}
dl.counter dd {
  position: relative;
  color: var(--cs-ac_01-01);
  font-weight: bolder;
}
dl.counter dd span { font-size: 3.3em;}
dl.counter dd span[class*=afterstr-]::after {
  margin-bottom: 0.35em;
  margin-left: 0.1em;
  color: var(--cs-font-03);
  font-size: 0.3em;
  opacity: 1;
}
dl.counter dd span[class*=afterstr-]::before {
  top: auto !important;
  right: -0.1em;
  bottom: 2.5em;
  color: var(--cs-font-03);
  font-size: 0.15em;
}
.kougakunen.chrome dl.counter dd span[class*=afterstr-]::before {
  bottom: 2.7em !important;
  font-size: 50% !important;
}
.kougakunen.windows.chrome dl.counter dd span[class*=afterstr-]::before { bottom: 3em !important;}

.pager {
  display: block;
  margin: 2px auto 20px;
}
.pager ul {
  display: flex;
  justify-content: center;
}
.pager ul li {
  display: flex;
  align-items: center;
  line-height: 2;
}
.pager ul .button {
  min-width: 3em;
  min-height: 2em;
  margin: 0 0.2em;
  padding: 0 0.5em;
  font-size: 14px;
}
.pager ul .current {
  margin: 0 0.5em;
  font-weight: bolder;
  font-size: 20px;
  line-height: 1;
}

.element-block {
  display: inline-block;
  min-width: 6.2em;
  margin: 0.09em 0.4em 0.1em 0;
  padding: 0.09em 0.5em;
  border: 1px solid rgba(0, 0, 0, 0.15);
  background-color: rgba(0, 0, 0, 0.05);
  font-size: 0.8em;
  white-space: nowrap;
  cursor: default;
  transition: 0.4s;
}

.bignum, .bignum-nonmg {
  font-weight: bolder;
  font-size: 2em;
  -webkit-font-smoothing: antialiased;
  margin-right: 1em !important;
  border-radius: 1em;
  color: var(--cs-ac_01-01);
}
.bignum-nonmg { margin: 0 !important;}
.bignum + .button, .bignum-nonmg + .button { margin-left: -1.5em;}

.simplebox {
  --border_w: 1px;
  padding: 1em;
  border: var(--border_w) solid var(--cs-basic-06);
  border-radius: 1em;
  background-color: var(--cs-basic-01);
}
.simplebox:has(h3.head) {
  padding-top: 0;
  overflow: hidden;
}
.simplebox h3.head {
  width: calc(100% + 2em);
  margin-right: -1em;
  margin-left: -1em;
  padding: 0 1em;
  border-bottom: var(--border_w) solid var(--cs-basic-06);
  border-radius: 0;
  line-height: 2.5em;
}

.tiles_10, .tiles_9, .tiles_8, .tiles_7, .tiles_6, .tiles_5, .tiles_4, .tiles_3, .tiles_2, .tiles_1 {
  --colgap: 0;
  --rowgap: 0;
  display: grid !important;
  grid-column-gap: calc(var(--colgap) * 1px);
  grid-row-gap: calc(var(--rowgap) * 1px);
}
.tiles_1 { grid-template-columns: repeat(1, 1fr);}
.tiles_2 { grid-template-columns: repeat(2, 1fr);}
.tiles_3 { grid-template-columns: repeat(3, 1fr);}
.tiles_4 { grid-template-columns: repeat(4, 1fr);}
.tiles_5 { grid-template-columns: repeat(5, 1fr);}
.tiles_6 { grid-template-columns: repeat(6, 1fr);}
.tiles_7 { grid-template-columns: repeat(7, 1fr);}
.tiles_8 { grid-template-columns: repeat(8, 1fr);}
.tiles_9 { grid-template-columns: repeat(9, 1fr);}
.tiles_10 { grid-template-columns: repeat(10, 1fr);}
.tilesGap_5 { gap: 5px;}
.tilesGap_10 { gap: 10px;}
.tilesGap_15 { gap: 15px;}
.tilesGap_20 { gap: 20px;}
.tilesGap_25 { gap: 25px;}
.tilesGap_30 { gap: 30px;}

.candyPlate {
  --cpWidth: 4;
  --cpRadius: 0;
  display: flex;
  position: relative;
  align-items: center;
  justify-content: center;
  width: calc(var(--cpWidth) * 1em);
  border-radius: calc(var(--cpRadius) * 1px);
}
.candyPlate .contents {
  z-index: 1;
  color: white;
  text-align: center;
}
.candyPlate.cp-blue {
  background-image: none !important;
  background-color: #00A3D6 !important;
  box-shadow: inset 0px 3px 10px 7px #0a6fda, 0 -1px 2px 2px rgba(0, 0, 0, 0.2), 0 1px 2px 2px rgba(255, 255, 255, 0.2) !important;
}
.candyPlate.cp-red {
  background-image: none !important;
  background-color: #f65ba0 !important;
  box-shadow: inset 0px 3px 10px 7px #DF0C6A, 0 -1px 2px 2px rgba(0, 0, 0, 0.2), 0 1px 2px 2px rgba(255, 255, 255, 0.2) !important;
}
.candyPlate.cp-green {
  background-image: none !important;
  background-color: #1dcf47 !important;
  box-shadow: inset 0px 3px 10px 7px #1AB93F, 0 -1px 2px 2px rgba(0, 0, 0, 0.2), 0 1px 2px 2px rgba(255, 255, 255, 0.2) !important;
}
.candyPlate.cp-yellow {
  background-image: none !important;
  background-color: #FAC100 !important;
  box-shadow: inset 0px 3px 10px 7px #ff950a, 0 -1px 2px 2px rgba(0, 0, 0, 0.2), 0 1px 2px 2px rgba(255, 255, 255, 0.2) !important;
}
.candyPlate.cp-grey {
  --co-grey_lt-07_adjust: 88, 100, 101;
  background-image: none !important;
  background-color: #a5b0b1 !important;
  box-shadow: inset 0px 3px 10px 7px rgba(var(--co-grey_lt-07_adjust), 0.5), 0 -1px 2px 2px rgba(0, 0, 0, 0.2), 0 1px 2px 2px rgba(255, 255, 255, 0.2) !important;
}
.candyPlate.cp-lightblue {
  background-image: none !important;
  background-color: #3dd1ff !important;
  box-shadow: inset 0px 3px 10px 7px #00A3D6, 0 -1px 2px 2px rgba(0, 0, 0, 0.2), 0 1px 2px 2px rgba(255, 255, 255, 0.2) !important;
}
.candyPlate.cp-red_stripe {
  background-image: repeating-linear-gradient(45deg, #DF0C6A, #DF0C6A 5px, #FF0000 5px, #FF0000 10px) !important;
  background-color: #DF0C6A !important;
  box-shadow: inset 0px 3px 10px 7px #DF0C6A, 0 -1px 2px 2px rgba(0, 0, 0, 0.2), 0 1px 2px 2px rgba(255, 255, 255, 0.2) !important;
}
.candyPlate.cp-polish::after {
  position: absolute;
  inset: calc(var(--cpWidth) * 0.04em);
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: calc(var(--cpRadius) * 0.8px);
  background-image: linear-gradient(175deg, rgba(255, 255, 255, 0.2) 0%, rgba(255, 255, 255, 0.4) 40%, rgba(255, 255, 255, 0) 41%, transparent 100%);
  background-repeat: no-repeat;
  content: "";
}
.candyPlate.cp-square { height: calc(var(--cpWidth) * 1em);}
.candyPlate.cp-circle {
  height: calc(var(--cpWidth) * 1em);
  border-radius: 50%;
}
.candyPlate.cp-circle.cp-polish::after { border-radius: 50%;}
div[class*=status__] .candyPlate { position: relative;}
div[class*=status__] .candyPlate .contents {
  position: absolute;
  inset: auto 2px 0.5em;
}
div[class*=status__] .candyPlate .contents {
  transform: scaleY(95%);
  font-size: 0.8em;
  line-height: 1.2;
}
.ios div[class*=status__] .candyPlate .contents { font-size: 0.7em;}

div[class*=status__] .candyPlate::before {
  position: absolute;
  color: white !important;
  font-size: 1.75em;
  font-family: "elaicon" !important;
  text-align: center;
}

.status__caution .candyPlate {
  background-image: repeating-linear-gradient(45deg, #DF0C6A, #DF0C6A 5px, #FF0000 5px, #FF0000 10px);
  background-color: #DF0C6A;
  box-shadow: inset 0px 3px 10px 7px #DF0C6A, 0 -1px 2px 2px rgba(0, 0, 0, 0.2), 0 1px 2px 2px rgba(255, 255, 255, 0.2);
}
.status__caution .candyPlate::before {
  inset: 0.2em 0;
  content: "\e924" !important;
}
.status__sametime .candyPlate {
  background-color: #f65ba0;
  box-shadow: inset 0px 3px 10px 7px #DF0C6A, 0 -1px 2px 2px rgba(0, 0, 0, 0.2), 0 1px 2px 2px rgba(255, 255, 255, 0.2);
}
.status__sametime .candyPlate::before {
  inset: 0.4em 0;
  content: "\e933" !important;
}
.status__reserve .candyPlate {
  background-color: #1dcf47;
  box-shadow: inset 0px 3px 10px 7px #1AB93F, 0 -1px 2px 2px rgba(0, 0, 0, 0.2), 0 1px 2px 2px rgba(255, 255, 255, 0.2);
}
.status__reserve .candyPlate::before {
  inset: 0.4em 0;
  content: "\e957" !important;
}
.status__pending .candyPlate {
  background-color: #FAC100;
  box-shadow: inset 0px 3px 10px 7px #ff950a, 0 -1px 2px 2px rgba(0, 0, 0, 0.2), 0 1px 2px 2px rgba(255, 255, 255, 0.2);
}
.status__pending .candyPlate::before {
  inset: 0.3em 0;
  content: "\e985" !important;
  font-size: 2.25em !important;
}
.status__execute .candyPlate {
  background-color: #00A3D6;
  box-shadow: inset 0px 3px 10px 7px #0a6fda, 0 -1px 2px 2px rgba(0, 0, 0, 0.2), 0 1px 2px 2px rgba(255, 255, 255, 0.2);
}
.status__execute .candyPlate::before {
  inset: 0.4em 0;
  content: "\e933" !important;
}
.status__finished .candyPlate {
  --co-grey_lt-07_adjust: 88, 100, 101;
  background-color: #a5b0b1;
  box-shadow: inset 0px 3px 10px 7px rgba(var(--co-grey_lt-07_adjust), 0.5), 0 -1px 2px 2px rgba(0, 0, 0, 0.2), 0 1px 2px 2px rgba(255, 255, 255, 0.2);
}
.status__finished .candyPlate::before {
  inset: 0.25em 0;
  content: "\e920" !important;
  font-size: 2.5em !important;
}

.flex_in_grid {
  display: grid;
  gap: 0.25em 0;
}
.flex_in_grid > .flex_wrap {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.flex_in_grid > .flex_wrap > .flex_item {
  display: flex;
  align-items: center;
  padding-bottom: 0.15em;
}
.flex_in_grid > .flex_wrap > .flex_item:not(:last-child) { margin-right: 2em;}
.flex_in_grid > .flex_wrap > .flex_item > :not(:last-child) { margin-right: 0.5em;}
.mc-1 { --macch-color: rgba( 0, 183, 255, 0.6);}
.mc-2 { --macch-color: rgba( 0, 255, 200, 0.6);}
.mc-3 { --macch-color: rgba(110, 250, 0, 0.6);}
.mc-4 { --macch-color: rgba(255, 210, 0, 0.6);}
.mc-5 { --macch-color: rgba(255, 110, 0, 0.6);}
.mc-6 { --macch-color: rgba(170, 100, 255, 0.6);}
.mc-7 { --macch-color: rgba(255, 60, 170, 0.6);}
.mc-bg { background-image: linear-gradient(to top, transparent 10%, var(--macch-color) 20%, var(--macch-color) 80%, transparent 90%);}
.scrollbar-none::-webkit-scrollbar { display: none;}
.scrollbar-none::-webkit-scrollbar-thumb { height: 0;}

body {
  --medal-st01: #ff9;
  --medal-st02: #fc0;
  --medal-st03: #f90;
  --medal-shdw: #c60;
}
body .coin-stop-color01 { stop-color: var(--medal-st01);}
body .coin-stop-color02 { stop-color: var(--medal-st02);}
body .coin-stop-color03 { stop-color: var(--medal-st03);}
@font-face {
  src: local("arial");
  font-family: Arial;
  unicode-range: U+0021-007E;
}
@font-face {
  src: local("HelveticaNeue");
  font-family: HelveticaNeue;
  unicode-range: U+0021-007E;
}
@font-face {
  font-style: normal;
  font-weight: normal;
  src: url("../webfonts/Anton-Regular.woff2") format("woff2");
  font-family: "Anton-num";
  unicode-range: U+0-10FFFF;
}
html {
  display: flex;
  width: 100%;
  height: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-touch-callout: none;
  -webkit-text-size-adjust: 100%;
}
html body {
  display: flex;
  flex-direction: column;
  width: 100%;
  min-width: 100%;
  height: 100%;
  min-height: 100%;
}
html body.ios.safari { -webkit-text-size-adjust: none; -moz-text-size-adjust: none; text-size-adjust: none;}
html body.android.chrome { min-height: 100vh;}
html body :is(header, footer) { flex-shrink: 0;}
html body .contentsWrapper { flex: 1 0 auto;}

body {
  color: var(--cs-font-01);
  font-size: 18px;
  font-family: HelveticaNeue, arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, "BIZ UDPGothic", sans-serif;
  text-rendering: optimizeLegibility;
  word-break: break-word;
  -webkit-overflow-scrolling: touch;
}

:is(button, input, select, textarea) {
  font-size: 100%;
  font-family: inherit;
}
a { text-decoration: none;}
p { line-height: 1.5;}

ul.list li {
  margin-left: 1em;
  line-height: normal;
  list-style: disc;
}

u {
  text-decoration: underline;
  text-decoration-style: solid;
  text-decoration-color: currentColor;
}

sup {
  display: inline-block;
  margin-top: 0.4em;
  font-size: 0.75em;
  line-height: 0.4;
  text-indent: -0.05em;
  vertical-align: 0.4em;
}

sub {
  display: inline-block;
  position: relative;
  bottom: 0;
  font-size: 0.75em;
  letter-spacing: 0;
}
.font-col-key { color: var(--cs-key-01);}
.font-col-accent-prime { color: var(--cs-ac_01-01);}
.font-col-accent-second { color: var(--cs-ac_02-01);}
.bg-col-key { background-color: var(--cs-key-01);}
.bg-col-accent-prime { background-color: var(--cs-ac_01-01);}
.bg-col-accent-second { background-color: var(--cs-ac_02-01);}
.cs-dri-font_strong { color: var(--cs-dri-font_strong);}
.cs-dri-font_weak { color: var(--cs-dri-font_weak);}

.strong {
  color: var(--cs-ac_02-01) !important;
  font-weight: bolder !important;
}

.transparent-string {
  visibility: hidden;
  color: rgba(0, 0, 0, 0);
}

.error {
  color: var(--cs-ac_02-01);
  font-size: 0.8em;
}
:is(.block, .disp-block) { display: block !important;}
:is(.inline-block, .disp-inline-block) { display: inline-block !important;}
:is(.flex, .disp-flex) { display: flex !important;}
:is(.inline-flex, .disp-inline-flex) { display: inline-flex !important;}
.disp-contents { display: contents !important;}

.disp-grid {
  display: grid !important;
  --col-gap: 0;
  --row-gap: 0;
  --col-size: auto;
  --row-size: auto;
  grid-column-gap: var(--col-gap) !important;
  grid-row-gap: var(--row-gap) !important;
  grid-template-rows: var(--row-size) !important;
  grid-template-columns: var(--col-size) !important;
}
.disp-grid .c1 { grid-area: var(--c1-area);}
.disp-grid .c2 { grid-area: var(--c2-area);}
.disp-grid .c3 { grid-area: var(--c3-area);}
.disp-grid .c4 { grid-area: var(--c4-area);}
.disp-grid .c5 { grid-area: var(--c5-area);}
.disp-grid .c6 { grid-area: var(--c6-area);}
.disp-grid .c7 { grid-area: var(--c7-area);}
.disp-grid .c8 { grid-area: var(--c8-area);}
.disp-grid .c9 { grid-area: var(--c9-area);}
.disp-grid .c10 { grid-area: var(--c10-area);}
.hidden { visibility: hidden !important;}
.display-none { display: none !important;}
.del-pseudo::before, .del-pseudo::after { content: none !important;}

.left {
  justify-content: flex-start !important;
  text-align: left !important;
}

.center {
  justify-content: center !important;
  text-align: center !important;
}

.right {
  justify-content: flex-end !important;
  text-align: right !important;
}
.vtop { vertical-align: top !important;}
.vcenter { vertical-align: middle !important;}
.vbottom { vertical-align: bottom !important;}

.fxvtop {
  display: flex !important;
  align-items: flex-start !important;
}

.fxvcenter {
  display: flex !important;
  align-items: center !important;
}

.fxvbottom {
  display: flex !important;
  align-items: flex-end !important;
}

.fxcol {
  display: flex !important;
  flex-direction: column !important;
}

.fxrow {
  display: flex !important;
  flex-direction: row !important;
}
.fxgrow-0 { flex-grow: 0;}
.fxgrow-1 { flex-grow: 1;}
.fxshrink-0 { flex-shrink: 0;}
.fxshrink-1 { flex-shrink: 1;}
.italic { font-style: italic !important;}
.bold { font-weight: bolder !important;}
.normal { font-weight: normal !important;}
.light { font-weight: lighter !important;}
.font-size-xs { font-size: 14px !important;}
.font-size-s { font-size: 16px !important;}
.font-size-nor { font-size: 18px !important;}
.font-size-l { font-size: 20px !important;}
.font-size-xl { font-size: 22px !important;}
.font-size-x2 { font-size: 36px !important;}
.font-size-x3 { font-size: 54px !important;}

.nowrap {
  flex-wrap: nowrap !important;
  white-space: nowrap !important;
}

.wrap {
  flex-wrap: wrap !important;
  white-space: normal !important;
  word-break: break-all;
}

.nowrap-container {
  display: block;
  white-space: nowrap;
}
.nowrap-container > * {
  margin-top: 0 !important;
  margin-right: inherit;
  margin-bottom: 0 !important;
  margin-left: inherit;
}
.under-line { background-image: linear-gradient(transparent calc(100% - 1.5px), var(--cs-font-01) calc(100% - 1px));}
.pointer-events-none { pointer-events: none !important;}

:is(img, svg).icon {
  height: 0.9em !important;
  vertical-align: -0.08em !important;
}

.lock {
  cursor: not-allowed;
  opacity: 0.1;
}
.lock * {
  cursor: not-allowed;
  pointer-events: none;
}

span[class^=elaicon-] {
  position: relative;
  margin-right: 0.4em;
  margin-left: 0.4em;
  text-decoration: none;
}
:is(.elaicon-symbol-maru, .elaicon-symbol-batsu, .elaicon-symbol-sankaku) { color: var(--cs-ac_02-01) !important;}
.elaicon-function-memo::before { color: var(--cs-ac_01-01) !important;}

:is(.elaicon-badge-new-posi, .elaicon-badge-new-nega) {
  color: var(--cs-ac_02-01) !important;
  font-size: 2em;
  line-height: 1;
}

:is(.button-badge-red, .button-badge-green) {
  position: absolute;
  top: -0.6em;
  right: -0.5em;
  padding: 0 0.5em;
  border-radius: 1em;
  color: var(--cs-basic-01) !important;
  line-height: 1.2;
}
.button-badge-red { background-color: var(--cs-ac_02-01);}
.button-badge-green { background-color: var(--cs-ac_01-01);}

@keyframes blink {0% { opacity: 1;}
50% { opacity: 1;}
75% { opacity: 0.3;}
100% { opacity: 1;}
}
.ani-count1 { animation-iteration-count: 1 !important;}
.ani-count2 { animation-iteration-count: 2 !important;}
.ani-count3 { animation-iteration-count: 3 !important;}
hr { display: none;}

@keyframes effectBtn_multi {from { box-shadow: 0 0 10px 2px rgba(var(--cs-btn_border-eff-rgb), 1);}
to { box-shadow: 0 0 10px 2px rgba(var(--cs-btn_border-eff-rgb), 0);}
}
@keyframes effectBtn_single {from { box-shadow: 0 0 10px 2px #df0c6a;}
to { box-shadow: 0 0 10px 2px rgba(223, 12, 106, 0);}
}
@keyframes playBtn-Dcon {from { box-shadow: 0 0 15px 4px rgba(var(--cs-dri-cntl_btn-eff-rgb), 0);}
to { box-shadow: 0 0 15px 4px rgba(var(--cs-dri-cntl_btn-eff-rgb), 1);}
}
@keyframes fadeIn {0% { opacity: 0;}
1% { opacity: 0;}
100% { opacity: 1;}
}
@media (any-hover: hover) {
  .button:hover, .button-fullwidth:hover, .modal .close-btn:hover, .form-wrapper input:hover:is([type=submit], [type=button], [type=reset]), .form-wrapper [type=file] ~ label:hover, .form-wrapper:is(.btn-checkbox, .btn-radio) label:hover, .form-wrapper.textbox input.datebtn:hover:is([readonly=readonly], [readonly=""]), .form-wrapper.select .select-body-wrap:hover, .form-wrapper.btn-select .select-body-wrapper div.select-items:hover, .form-wrapper.file label:hover, .modal .close-btn:is(.nor, .eff):hover {
    background-color: var(--cs-btn_bg-hov);
    box-shadow: 0 8px 8px 0 rgba(0, 0, 0, 0.5);
    color: var(--cs-btn_font-hov);
    text-decoration: none;
  }
.eff.button:hover, .eff.button-fullwidth:hover, .modal .eff.close-btn:hover, .form-wrapper input.eff:hover:is([type=submit], [type=button], [type=reset]), .form-wrapper [type=file] ~ label.eff:hover, .form-wrapper:is(.btn-checkbox, .btn-radio) label.eff:hover, .form-wrapper.textbox input.eff.datebtn:hover:is([readonly=readonly], [readonly=""]), .form-wrapper.select .eff.select-body-wrap:hover, .form-wrapper.btn-select .select-body-wrapper div.eff.select-items:hover, .form-wrapper.file label.eff:hover { animation: effectBtn_multi 0.2s linear 0.1s infinite alternate;}
.form-wrapper:is(.checkbox, .radio) label span:is(.nor, .eff):hover { color: var(--cs-font_link-hov);}
.form-wrapper:is(.checkbox, .radio) label span:is(.nor, .eff):hover svg { fill: var(--cs-font_link-hov);}
  table.basic-table tbody tr.nor:hover :is(td, th) {
    z-index: 1;
    position: relative;
    border-bottom-color: transparent;
    background-color: var(--cs-btn_bg-hov);
    box-shadow: 8px 8px 8px 0px rgba(0, 0, 0, 0.3);
    color: var(--cs-btn_font-hov);
    transition: 0.1s;
  }
  table.basic-table tbody tr.nor:hover th > .contents {
    border-bottom-color: transparent;
    border-left-color: var(--cs-btn_font-hov);
  }
table.basic-table tbody :is(th, td) { transition: 0.4s;}
.form-wrapper.btn-select .select-body-wrapper div.select-items.nor:hover { background-color: transparent !important;}
  .form-wrapper.btn-select .select-body-wrapper div.select-items input.select-expand:checked + .select-closeLabel + .select-options .select-label:hover {
    background-color: var(--cs-btn_bg-hov);
    color: var(--cs-btn_font-hov);
  }
.form-wrapper.btn-select .select-body-wrapper div.select-items input.select-expand:hover::after { opacity: 1;}
.su .lv4:hover { background-color: #00202f;}
.su .lv3:hover { background-color: #075a7f;}
  .su.grid-container .button.nor:hover {
    border-color: #0c9ee0;
    background-color: #9fdefa;
    color: #04384f;
  }
.su .lv2:hover { background-color: #1690c6;}
.su .lv1:hover { background-color: #53b5e1;}
.koku .lv4:hover { background-color: #12002b;}
.koku .lv3:hover { background-color: #38067b;}
  .koku.grid-container .button.nor:hover {
    border-color: #650cdc;
    background-color: #c49bfa;
    color: #22044b;
  }
.koku .lv2:hover { background-color: #6016c3;}
.koku .lv1:hover { background-color: #8d4fe0;}
.ei .lv4:hover { background-color: #29000f;}
.ei .lv3:hover { background-color: #790630;}
  .ei.grid-container .button.nor:hover {
    border-color: #da0b57;
    background-color: #fa99bc;
    color: #49041d;
  }
.ei .lv2:hover { background-color: #c11554;}
.ei .lv1:hover { background-color: #e04d83;}
.ri .lv4:hover { background-color: #201100;}
.ri .lv3:hover { background-color: #713f06;}
  .ri.grid-container .button.nor:hover {
    border-color: #d2760b;
    background-color: #f9c991;
    color: #402403;
  }
.ri .lv2:hover { background-color: #b96d15;}
.ri .lv1:hover { background-color: #de9846;}
.sha .lv4:hover { background-color: #040600;}
.sha .lv3:hover { background-color: #3f5805;}
  .sha.grid-container .button.nor:hover {
    border-color: #83b90a;
    background-color: #d1f878;
    color: #1c2802;
  }
.sha .lv2:hover { background-color: #76a112;}
.sha .lv1:hover { background-color: #a6da30;}
.ext .lv4:hover { background-color: #000000;}
.ext .lv3:hover { background-color: #045041;}
  .ext.grid-container .button.nor:hover {
    border-color: #09b190;
    background-color: #71f8dd;
    color: #02201a;
  }
.ext .lv2:hover { background-color: #119a7f;}
.ext .lv1:hover { background-color: #29d9b6;}
  header menu button.icon-button:is(.nor, .eff):hover > .icon-wrap {
    background-image: linear-gradient(to bottom, rgba(var(--cs-basic-01-rgb), 0) 0%, rgba(var(--cs-basic-05-rgb), 0) 100%);
    background-repeat: no-repeat;
    background-color: var(--cs-btn_bg-hov) !important;
  }
  nav.page-navi .text-link:hover::after {
    position: absolute;
    bottom: -1px;
    left: 1em;
    width: calc(100% - 1em);
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: currentColor;
    content: "";
  }
nav.page-navi .left-side > .text-link:last-child:not(:first-child):hover { text-decoration: none;}
  .text-link:hover {
    color: var(--cs-font_link-hov);
    transition: 0.4s;
  }
.text-link:hover::before, .text-link:hover::after { color: var(--cs-font_link-hov);}
  .element-block:hover {
    border-color: white;
    background-color: white;
  }
}
@media (any-hover: none) {table > .form-wrapper.radio tr.checked.nor:hover td { box-shadow: none;}
}
@media screen and (-webkit-min-device-pixel-ratio: 0) and (-webkit-min-device-pixel-ratio: 0), screen and (-webkit-min-device-pixel-ratio: 0) and (min-resolution: 0.001dpcm) {
  .form-wrapper.textbox input:is([type=text], [type=search], [type=color], [type=date], [type=number], [type=tel], [type=email], [type=url], [type=password], [type=datetime-local], [type=month], [type=week], [type=time])::-webkit-input-placeholder {
    position: relative !important;
    top: 0.05em !important;
  }
}