/*
* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	box-sizing: border-box;
	outline: none;
}

html {
	overflow-y: scroll;
}

body {
	background: #f1f2f4;
	font-size: 16px;
	line-height: 24px;
	font-family: system-ui, Arial, sans-serif;
	color: #000;
	margin: 0;
	padding: 0;
}

.clearfix {
	clear: both;
}
.clearfix:before,
.clearfix:after {
	display: block;
	content: "";
	clear: both;
}

p {margin : 0;}


h1, h2, h3, h4 {margin : 0;}

h1 {
	font-size: 32px;
	line-height: 40px;
	font-weight: 600;
	margin: 0;
}

h2 {
	font-size: 26px;
	line-height: 24px;
	font-weight: 400;
}

h3 {
	font-size: 20px;
	line-height: 24px;
	font-weight: 400;
}

a {
	text-decoration: none;
}
.pointer {
	cursor: pointer;
}
.pointer:hover {color: #d00;}

.underline {
	text-decoration: underline;
}

.text-strike {
	text-decoration: line-through;
}
.large,
.font-xl {
	font-size: 20px;
	line-height: 28px;
}

.big,
.font-l {
	font-size: 16px;
	line-height: 23px;
}

.normal,
.font-m {
	font-size: 14px;
	line-height: 20px;
}

.mid,
.font-s {
	font-size: 13px;
	line-height: 18px;
}

.sm,
.font-xs {
	font-size: 11px;
	line-height: 15px;
}

.ssm,
.font-xxs,
.font-2xs {
	font-size: 10px;
	line-height: 13px;
}

.regular {
	font-weight: 400;
}

.semibold {
	font-weight: 500;
}

.bold {
	font-weight: 600;
}

.italic {
	font-style: italic;
}

.row {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {
	width: 100%;
}

.flex-wrap-nowrap{
	flex-wrap: nowrap;
}
.flex-direction-column{
	flex-direction: column;
}
.flex-justify-content-center {
	justify-content: center;
}
.flex-justify-content-start {
	justify-content: flex-start;
}
.flex-justify-content-end {
	justify-content: flex-end;
}
.flex-align-items-start{
	align-items: start;
}
.flex-align-items-center{
	align-items: center;
}
.flex-align-items-end{
	align-items: end;
}
.flex-align-self-start{
	align-self: start;
}
.flex-align-self-center{
	align-self: center;
}
.flex-align-self-end{
	align-self: end;
}
.block-center {
	margin-left: auto;
	margin-right: auto;
}

.button-generic {
	background-color: rgba(255,255,255,0.15);
	border-width: 1px;
	border-style: solid;
	border-color: rgba(0,0,0,0.15);
	color: #000;
	padding: 0.5ex 0.6em 0.65ex;
	display: inline-block;
	border-radius: 3px;
	font-family: inherit;
}
.button-generic:hover {
	background-color: rgba(255,255,255,0.75);
	color: #000;
	cursor: pointer;
}

.button-accent,
.button-yellow {
	background: #ffde41;
	border-color: #edca23;
}

.button-accent:hover,
 .button-yellow:hover {
	background: #ffeb41;
}

.button-grey {
	background: #f8f8f8;
	border-color: #dbdbdb;
}

.button-generic:disabled {
	cursor: default;
	opacity: 0.5;
	filter: grayscale(1);
}

.input-generic {
	border: none;
	border-bottom: 1px solid rgba(0,0,0,0.15);
	box-shadow: none;
	padding: 0.65ex 0 0.55ex;
	background: none;
	font: inherit;
}

.input-generic + label {
		position: absolute;
		left: 0;
		top: 1ex;
		color: #a3a3a3;
		transition: all 0.2s;
}

.input-generic:focus + label,
.input-generic:not(:placeholder-shown) + label,
.input-generic.focus + label {
		font-size: 0.8em;
		line-height: 1.4em;
		top: -1.5ex;
}

.textarea-generic {
	padding: 0.65ex;
	outline: 0;
	font: inherit;
	border: 1px solid rgba(0,0,0,0.15);
}

.select-generic {
	font: inherit;
	border: 1px solid rgba(0,0,0,0.15);
}

.border-b {
	border-bottom: 1px solid rgba(0,0,0,0.05);
}
.border-n {
	border: none;
}
.border {
	border: 1px solid rgba(0,0,0,0.05);
}

.pos-r {
	position: relative;
}
.pos-a {
	position: absolute;
}

.display-b {
	display: block;
}
.display-ib {
	display: inline-block;
}
.display-f {
	display: flex;
}
.display-f-wrap {
	display: flex;
	flex-wrap: wrap;
}
.display-f-jcenter,
.display-f-justify-content-center {
	justify-content: center;
}

.hide {
	display: none;
}
.hidden {
	visibility: hidden;
}

.float-l {
	float: left;
}
.float-r {
	float: right;
}

.w100 {
	width: 100%;
}
.h100 {
	height: 100%;
}

.ellipsis {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.nobr {
	white-space: nowrap;
}

.text-left {
	text-align: left;
}
.text-center {
	text-align: center;
}
.text-right {
	text-align: right;
}

.mr1x {
	margin-right: 12px;
}
.p1x {
	padding: 10px;
}

.cl-black {color: #000;}

.cl-grey {color: #959595;}

.cl-darkgrey {color: #555;}

.cl-white {color: #fff;}

.cl-red {color: #d00;}

.cl-blue {color: #004677;}

.cl-green {color: #0aa821;}

.cl-yellow {color: #ffde41;}

.cl-transparent {color: transparent;}

.cl-bg-white {background-color: #fff;}

.process-loading {
	background-image: linear-gradient(45deg,rgba(0,0,0,0.05) 25%, transparent 25%, transparent 50%, rgba(0,0,0,0.05) 50%, rgba(0,0,0,0.05) 75%, transparent 75%, transparent) !important;
	animation: -process-loading-animate 2s linear infinite;
	background-size: 40px 40px !important;
}
@keyframes -process-loading-animate {
	from{
		background-position: 40px 0;
	}
	to{
		background-position: 0 0;
	}
}

.opacity-75 {
	opacity: 0.75;
}

.list-none,
.list-num,
.list-check {
	padding: 0;
	list-style: none;
}

.list-none > li {
	padding-left: 0;
}

.list-num {
	counter-reset: num-list;
}

.list-num li,
.list-check li {
	padding-left: 1.5em;
}

.list-check li:before {
	content: '\e91d';
	margin-left: -1.5em;
	margin-right: 0.5em;
	font: inherit;
	font-family: 'offfy-icons';
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	transform: translate(0, 0);
}

.list-num li:before {
	position: absolute;
	content: counter(num-list) ".";
	counter-increment: num-list;
	margin-top: 0;
	margin-left: -1.5em;
}

.process:before {
	opacity: 0;
	font-family: 'icons';
	font-display: swap;
	position: absolute;
	margin-left: 0.2em;
	margin-top: -0.5em;
	font-size: 0.5em;
	line-height: 1.55em;
	width: 1.55em;
	height: 1.55em;
	overflow: hidden;
	text-align: center;
	vertical-align: middle;
	color: #000;
	border-radius: 50%;
	box-shadow: 0 0px 1px 0px rgba(0, 0, 0, 0.5);
}

.process-wait:before {
	content: "\e914";
	opacity: 1;
	background-color: yellow;
	-webkit-animation: fa-spin 1.5s infinite steps(12);
	animation: fa-spin 1.5s infinite steps(12);
}

.process-success::before {
	content: "\e91d";
	opacity: 1;
	color: white;
	background-color: green;
	transition: background-color 1s linear;
	-webkit-animation: none;
	animation: none;
}

.process-fail::before {
	content: "\e91d";
	opacity: 1;
	color: white;
	background-color: #d00;
	transition: background-color 1s linear;
	-webkit-animation: none;
	animation: none;
}

.scroll-y {
	overflow-y: auto;
	scrollbar-width: thin;
	scrollbar-color: #999 transparent;
}            

.scroll-y::-webkit-scrollbar {
	  width: 8px;
}

.scroll-y::-webkit-scrollbar-track {
	  background-color: transparent;
}

.scroll-y::-webkit-scrollbar-thumb {
	  border-radius: 8px;
	  background-color: #999;
}

.height-auto {
	height: auto !important;
}

*, *:focus, *:hover{
	outline:none;
}

.br50perc {border-radius: 50%}
.shadow-0-0-30-n0-05 {box-shadow : 0 0 30px 0px rgba(0, 0, 0, 0.05);}
.shadow-0-0-30-n0-10 {box-shadow : 0 0 30px 0px rgba(0, 0, 0, 0.1);}
.width-auto {width: auto !important;}

[data-id="content"] h2 {margin: revert;}
[data-id="content"] h3 {margin: revert;}

[data-id="content"] p {margin: revert;}

[data-id="content"] blockquote {
	margin: revert !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	border-left: 2px solid var(--cl-bg-grey) !important;
	font-style: italic;
	padding-left: 1.5em !important;
	padding-right: 1.5em !important;
	font-family: serif;
	font-size: 110%;
}

[data-id="content"] p:first-child,
[data-id="content"] blockquote:first-child,
[data-id="content"] blockquote > p:first-child {
	margin-top: 0 !important;
}

[data-id="content"] p:last-child,
[data-id="content"] blockquote:last-child,
[data-id="content"] blockquote > p:last-child {
	margin-bottom: 0 !important;
}

figure.table table {
	border-collapse: collapse;
	border-spacing: 0;
}

figure.table table td {
	border: 1px solid rgba(0,0,0,0.15);
	padding: 5px;
	vertical-align: top;
}

*/

/* table */

table tbody tr:hover {
	background-color: #eee;
}
table tbody tr {
	will-change: transform;
}
table tbody tr.animating {
	transition: transform 300ms ease;
}
table th {
	padding: 5px;
	border-radius: 2px;
	cursor: pointer;
	background-color: #00000011;
}
table th:after {
	margin-left: 5px;
	content : " ";
	color: transparent;
	padding : 0 3px;
	border-radius: 3px;
}
table th:hover {
	background-color: #ffffff;
}
table th[data-order="a"]:after,
table th[data-order="d"]:after {
	color: #000000;
	background-color: #fff;
}
table th[data-order="a"]:after {
	content : "\25B2";
}
table th[data-order="d"]:after {
	content : "\25BC";
}
table td {
	padding: 0px 3px;
	min-width: 100px;
	text-align: right;
}
table td[data-num="0"] {
	text-align: left;
}
table td:not([data-num="0"]) {
	border-bottom: 3px solid;
	border-image: linear-gradient(90deg, transparent 0%, transparent 100%, transparent 100%, transparent 100%) 1;
}
table td[data-num="0"] {
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: nowrap;
	min-width: 150px;
}
table td.local-region {
	padding: 2px 3px;
	border-radius: 3px;
	transform: translateX(-5px);
	background-color: #dfdfdf;
	width: 2em;
	text-align: left;
	display: inline-block;
}

nav a {
	display: inline-block;
	padding: 4px;
}
nav a:hover {
	background-color: #fff;
}