.fs75 { font-size: 75%; }
.wbk { word-break: keep-all!important; }
.wnw { white-space: nowrap!important; }
.wpw { white-space: pre-wrap!important; }
.mono { font-family:monospace; }
.noime { ime-mode: disabled; }
.datepicker { ime-mode: disabled; width: 110px; }
.ymdhm_picker { ime-mode: disabled; width: 180px; }
div.ui-datepicker { width: 350px; }
div.ui-datepicker select.ui-datepicker-year { border: 1px solid; border-radius: 4px; padding: 5px; width: 70px; }
div.ui-datepicker .ui-datepicker-calendar { height: 270px; }
div.ui-datepicker .ui-datepicker-calendar td > a { width: 40px; height: 30px; }
div.ui-datepicker .ui-datepicker-calendar td > span { width: 40px; height: 30px; }
div.ui-datepicker .ui-datepicker-calendar .zpad a:before { content: '0'; }
div.ui-datepicker .ui-datepicker-buttonpane { padding: 10px; }
div.ui-datepicker .ui-datepicker-buttonpane .select_wrap { width: 75px; }
div.ui-datepicker .ui-datepicker-buttonpane .select_wrap * { font-size: 30px; padding: 0 5px; }
.x-modal-focus { position: absolute; display: block; width: 1px; height: 1px; opacity: 0; }

.btn:disabled, input:disabled, textarea:disabled, select:disabled { opacity: 0.3; }
.icon_alert { text-align: left; }
input[type=text] { padding: 6px 12px; }
a.btn { vertical-align: middle; }
input[type=number] {
	-moz-appearance:textfield;
	line-height: 26px;
	padding: 6px 12px;
	text-align: right;
	width: 110px;
}
input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}



.login { width: 540px; }
.login__hd h2 { color: #20AEE5; font-size: 45px; line-height: 43px; }
.login__hd h2 a { text-decoration: none; }
.hd__logo a { color: #fff; text-decoration: none; }
.header { left: 0; width: 100%; }
.account_name { display: inline-block; }
.page-login #main { height: 100vh; position: relative; }
.page-login .ft { bottom: 0; position: absolute; width: 100%; }

.hd__account { cursor: pointer; }
.hd__account .account_icon { background-image: url(../img/icon_header_account.svg); width: 30px; }



nav#navigation { overflow: visible; }
.main_wrap .main { margin-top: 0; padding-top: 80px; }
nav#navigation .nav__inr { margin-top: 60px; }
.popup__nav { display: none; }
.popup__nav a { font-weight: normal; }
.popup__nav a.upper { font-weight: bold; }

.nav .nav__inr .nav__item { cursor: default; }
.nav .nav__inr .nav__item > a { display: block; width: 60px; height: 60px; }
.nav .nav__inr .nav__item .popup__nav * { font-size: 14px; line-height: 38px; }
.nav .nav__inr .nav__item .popup__nav a { color: #555; display: block; }

.nav .popup__nav {
	left: 72px;
	position: absolute;
	top: 0;
	width: 208px;
}

.nav .popup__nav:before {
	border:10px solid transparent;
	border-right-color:#fff;
	border-left-width:0;
	left:-9px;
	content:"";
	display:block;
	top:20px;
	position:absolute;
	width:0;
	z-index:1;
}

.nav .popup__nav:after {
	border:10px solid transparent;
	border-right-color:#DDD;
	border-left-width:0;
	left:-12px;
	content:"";
	display:block;
	top:20px;
	position:absolute;
	width:0;
}

.ft .ft__coptright {
	height: auto;
}

.x-checks input + i, .x-file input + i {
	border: 1px solid transparent;
	cursor: pointer;
	font-style: normal;
}
.x-checks input:focus + i, .x-file input:focus + i {
	border: 1px dotted;
}
.x-checks input:disabled + i, .x-file input:disabled + i {
	cursor: default;
	opacity: 0.3;
}

.x-checks label {
	display: table;
	border-collapse: separate;
	padding: 10px 0 10px 20px;
	position: relative;
}
.x-checks.inline label {
	display: inline-block;
	margin-right: 20px;
}
.x-checks input + i {
	margin-left: -20px;
	padding-left: 20px;
}
.x-checks input[type=radio], .x-checks input[type=checkbox] {
	display: inline-block;
	opacity: 0;
	position: absolute;
	left: -5px;
	top: 5px;
}
.x-checks input + i:before {
	background: #FFF;
	border: 1px solid #CCC;
	box-sizing: border-box;
	content: "";
	display: block;
	height: 16px;
	left: 0;
	margin-top: -8px;
	position: absolute;
	top: 50%;
	width: 16px;
}
.x-checks input + i:after {
	box-sizing: border-box;
	content: "";
	display: block;
	left: 3px;
	margin-top: -5px;
	position: absolute;
	top: 50%;
	width: 10px;
}

.x-checks input[type=radio] + i:before { border-radius: 50%; }
.x-checks input[type=radio]:checked + i:after {
	background-color: #20AEE5;
	border-radius: 50%;
	height: 10px;
}

.x-checks input[type=checkbox] + i:before { border-radius: 4px; }
.x-checks input[type=checkbox]:checked + i:before {
	background-color: #20AEE5;
	border-color: #20AEE5;
}
.x-checks input[type=checkbox]:checked + i:after {
	border-bottom: 2px solid #FFF;
	border-left: 2px solid #FFF;
	height: 7px;
	transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
}

.x-file.btn { cursor: default; }
.x-file input[type=file] {
	display: inline-block;
	opacity: 0;
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
}
.x-file input[type=file]::-webkit-file-upload-button { display: none; }
.x-file input[type=file] + i {
	margin: 0 -12px;
	padding: 8px 12px;
	white-space: nowrap;
}

.select_wrap.select2 .select2-container .select2-selection--single { border: 1px solid #ccc; height: 46px; }
.select_wrap.select2 .select2-container .select2-selection--single:focus { border: 1px dotted; }
.select_wrap.select2 .select2-container--default .select2-selection--single .select2-selection__arrow:after {
	border-bottom: 2px solid #ccc;
	border-left: 2px solid #ccc;
	box-sizing: border-box;
	content: "";
	position: absolute;
	left: 0;
	top: 16px;
	width: 10px;
	height: 10px;
	transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
}
.select_wrap.select2 .select2-container--default .select2-selection--single .select2-selection__arrow b { display: none; }
.select_wrap.select2 .select2-container--default .select2-selection--single .select2-selection__rendered {
	color: #555;
	font-size: 16px;
	padding: 12px;
	line-height: 20px;
}
@-moz-document url-prefix(){
	.select_wrap select { padding: 10px; }
}



div.has-error {
	background: #FFF0EF;
	border: 1px solid #FC6356;
	border-radius: 4px;
	margin: -5px;
	padding: 5px;
	position: relative;
}
.has-error > .input-error { position: absolute; top: 0; left: 0; }
.has-error > .input-error span {
	background-color: #FFEEEC;
	border: 1px solid #FC6356;
	color: #FC6356;
	font-size: 12px;
	line-height: 1.2;
	padding: 4px;
	border-radius: 4px;
	position: absolute;
	bottom: -5px;
	left: 5px;
	white-space: nowrap;
	z-index:1;
}
.has-error > .input-error span::before {
	border:6px solid transparent;
	border-top-color: #FFEEEC;
	border-bottom-width:0;
	bottom:-6px;
	content:"";
	display:block;
	left:12px;
	position:absolute;
	width:0;
	z-index:1;
}
.has-error > .input-error span::after {
	border:6px solid transparent;
	border-top-color: #FC6356;
	border-bottom-width:0;
	bottom:-7px;
	content:"";
	display:block;
	left:12px;
	position:absolute;
	width:0;
}

.inline .with_errors { display: inline-block; }
.section__message-alert { display: block; }
.section__message-alert p:not(:first-child) { margin-top: 5px; }


.bottom-buttons {
	left: 88px;		/* for safari */
	min-width: 450px;
}
form.dt_l_2 dt { padding-right: 0; width: 200px; }
form.dt_l_2 dd { width: calc(100% - 200px); }

form.flex_top dl { display: table; width: 100%; height: 72px; }
form.flex_top dt { display: table-cell; padding-top: 24px; }
form.flex_top dd { display: table-cell; vertical-align: middle; }

.main_wrap .main .section__top { padding: 10px 0 20px; }
.select_wrap.dl_as { width: 220px; }



.modal-message-confirm { margin-left: -400px; width: 800px; }

.modal.modal-form.modal-text-style-sample {
	width: 492px;
	margin-left: -246px;
}
.modal.modal-form.modal-text-style-sample .modal_left, .modal.modal-form.modal-text-style-sample .modal_right {
	width: auto;
}
.modal.modal-form.modal-text-style-sample #text_style_sample_modal {
	padding: 0 48px;
}

.modal.modal-form.modal-add-folder {
	width: 500px;
	margin-left: -250px;
	margin-top: -160px;
}

form.file_upload .upload_area.drag {
	background-color: #EEEEEE;
}

table.sortable tbody tr:first-of-type a[name="order_up"] {
	display: none;
}
table.sortable tbody tr:last-of-type a[name="order_down"] {
	display: none;
}

.upload_area .has-error { display: table; margin: auto; }

.dl-col2 { margin: -1px 0 -14px 0; }
.dl-col2 dl {
	border-bottom: none;
	border-top: 1px solid #ddd;
	display: inline-block;
	margin: 0 10px;
	vertical-align: top;
	width: calc(50% - 23px);
}
.dl-col2 dl.wide { width: calc(100% - 23px); }
.dl-col2 dl>dt, .dl-col2 dl>dd { display: table-cell; }
.dl-col2.dt160 dl dt { width: 160px; }



dl.form_item.rank td { padding: 5px 10px 5px 0; vertical-align: middle; }
dl.form_item.rank td.select_wrap select { width: 100px; }
