.ank-form {
    margin:0px;
    --cl-bg:#FFFFFF;

    --cl-frm:#336699;
    --cl-btn:#336699;
    --cl-bth:#3399CC;
/*
    --cl-frm:#951A1D;
    --cl-btn:#951A1D;
    --cl-bth:#A52A2D;
*/
    --cl-lab:#333333;
    --cl-req:#FF0033;
    --cl-plh:#999999;
    --cl-dis:#999999;
}

.ank-form.inverse {

    --cl-bg:#951A1D;
    --cl-frm:#850A0D;
    --cl-btn:#CC0033;
    --cl-bth:#FF0033;

    --cl-lab:#FFFFFF;
    --cl-req:#FFCCCC;
    --cl-plh:#999999;
    --cl-dis:#999999;
}

.form-transparent .ank-form {
    --cl-bg:transparent;
}


.ank-form div {
	box-sizing:border-box;
}

.ank-form.frame {
	margin:0px;
	padding:24px;
}

.ank-form .abs-hidden {display:none !important;}

.ank-form {
 	text-align:left;
	background-color:var(--cl-bg);
	color:var(--cl-lab);
}

.ank-form a {
	color:inherit;
	text-decoration:underline;
	cursor:pointer;
}

.ank-form a:hover {
	text-decoration:none;
}

.ank-form .caption {
	width:100%;
	margin:36px 4px 18px 4px;
	font-size:18px;
	text-transform: uppercase;
	line-height:1.33;
/*    font-weight:bold;*/
}

.ank-form .section {
	width:100%;
	margin:36px 4px 18px 4px;
	font-size:18px;
	line-height:1.33;
/*    font-weight:bold;*/
}

.ank-form .panel {
	clear:both;
	display:block;
	text-align:center;
	padding-top:18px;
	padding-bottom:18px;
}


.ank-form .panel.lft {text-align:left;}
.ank-form .panel.rgt {text-align:right;}
.ank-form .panel.cnt {text-align:center;}

.ank-form > .panel {
	width:100%;
	text-align:center;
	padding-left:12px;
	padding-right:12px;
}

.ank-form .textcount {text-align:right;font-size:80%;margin:4px 4px 12px 4px;color:#999999;}


.ank-form .optgroup {
/*	white-space:nowrap;*/
	padding-right:12px;
}

.ank-form .optgroup label {
	display:inline-block;
	white-space:normal;
	vertical-align:middle;
	line-height:120%;
	width:40px;
}

.ank-form .optgroup label[for] {
	width:calc(100% - 80px);
	text-indent:-12px;
}

.ank-form .flex-body {
	display:flex;
	flex-wrap:nowrap;
	flex-direction:row;
	justify-content:space-between;
	align-items:stretch;
}

.ank-form .flex-set {
	display:flex;
	flex-direction:row;
	justify-content:start;
	align-items:center;
}

.ank-form .flex-vert {
	display:flex;
	flex-direction:column;
	justify-content:space-between;
	align-items:stretch;
}

.ank-form .flex-vert > div {
  	flex-grow:1;
  	display:flex;
  	flex-direction:column;
  	justify-content:space-between;
  	align-items:stretch;
}

.ank-form .flex-vert > div.large {
  	flex-grow:100;
}

.ank-form .flex-vert > div > div {
  	flex-grow:0;
}

.ank-form .flex-vert > div > input,
.ank-form .flex-vert > div > select,
.ank-form .flex-vert > div > textarea {
  	flex-grow:1;
}

.ank-form .flex-vert textarea {
  	resize:none;
}

.ank-form .str {
	font-weight:bold !important;
}

.ank-form .topline {
        border-top:1px solid #336666;
}	

.ank-form .nowrap {
	white-space:nowrap;
}

.ank-form .nowrap * {
	white-space:normal;
}


.ank-form .hid {
	display:none;
}

.ank-form .flex-body.middle {
	align-items:center;
}

.ank-form .flex-body.bottom {
	align-items:flex-end;
}

.ank-form .as-flex-body,
.ank-form .flex-body > div {
	padding:4px 8px 4px 8px;
}

.ank-form .flex-body > div.panel {
	padding:18px 12px 18px 8px;
}

.ank-form .w16 {width:16%;}
.ank-form .w15 {width:20%;}
.ank-form .w14 {width:25%;}
.ank-form .w13 {width:33%;}
.ank-form .w25 {width:40%;}
.ank-form .w12 {width:50%;}
.ank-form .w35 {width:60%;}
.ank-form .w23 {width:66%;}
.ank-form .w34 {width:75%;}
.ank-form .w45 {width:80%;}
.ank-form .w56 {width:84%;}
.ank-form .w100 {width:100%;}

.narrow .ank-form .w16,
.narrow .ank-form .w15,
.narrow .ank-form .w14,
.narrow .ank-form .w13,
.narrow .ank-form .w12,
.narrow .ank-form .w23,
.narrow .ank-form .w25,
.narrow .ank-form .w35,
.narrow .ank-form .w34,
.narrow .ank-form .w45,
.narrow .ank-form .w56,
.narrow .ank-form .w100 {
	width:100%;
}

.ank-form .label {
	font-size:18px;
	font-weight:normal;
	color:var(--cl-lab);
	margin:14px 4px 4px 4px;
}

.ank-form .sublabel {
	font-size:16px;
	color:#999999;
	font-style:italic;
	margin:4px 4px 4px 12px;
}

.ank-form .errtext {
	display:none;
	font-size:18px;
	font-weight:normal;
	color:var(--cl-lab);
	margin:14px 4px 4px 4px;
}

.ank-form textarea {
	resize: vertical;
}

.ank-form input.fmt-invalid,
.ank-form input.val-invalid,
.ank-form select.val-invalid,
.ank-form textarea.val-invalid {
	border-color:#CC0033 !important;
	background-color:#FFCCCC !important;
}

.ank-form .invalid-mess {
	display:none;
	font-size:18px;
	font-weight:normal;
	color:#FFFFFF;
	background-color:#FF0033;
	margin:4px 4px 4px 12px;
	text-align:center;
	padding:12px;
}

.ank-form div:has(>.val-invalid,>.fmt-invalid) {
	padding-right:36px;
	position:relative;
}

.ank-form div:has(>.val-invalid,>.fmt-invalid)::before,
.ank-form div:has(>.val-invalid,>.fmt-invalid)::after {
	content:'';
	position:absolute;
	text-align:center;
	z-index:+3;
	width:32px;
	height:32px;
	right:4px;
	top:8px;
	font-weight:bold;
	font-size:28px;
	line-height:32px;
}

.ank-form div:has(>.val-invalid,>.fmt-invalid)::before {
	color:#FFFFFF;
	background-color:#CC0033;
	border-radius:50%;
}

.ank-form div:has(>.val-invalid,>.fmt-invalid)::after {
	content:'!';
	color:#FFFFFF;
	z-index:+4;
}

.ank-form div:has(>.val-invalid) > .invalid-mess,
.ank-form .val-invalid + .invalid-mess {
	display:block;
} 



.ank-form .req > .label,
.ank-form .req-all > .label {
/* 	font-weight:bold;*/
}

.ank-form .req > .label::after,
.ank-form .req-all > .label::after {
	content:'*';
	margin-left:8px;
	font-size:inherit;
/*	font-weight:bold;*/
	color:var(--cl-req);
}

.ank-form .dropsel {
	position:relative;
}

.ank-form .dropsel.dropflex {
	display:flex;
	flex-wrap:nowrap;
	align-items:center;
	flex-direction:row;
	justify-content:stretch;
}

.ank-form .dropsel .dropbtn {
	display:inline-block;
	flex-grow:0;
	flex-shrink:0;
	background-color:#336699;
	color:#FFFFFF;
	min-width:2.0em;
	min-height:2.0em;
/*	font-size:1.2em;*/
	line-height:2.0em;
	text-align:center;
	margin:4px 4px 4px 12px;
	padding:0px 12px;
	cursor:pointer;
	transition:0.2s;
}

.ank-form .dropsel .dropbtn:hover {
	box-shadow:0px 0px 8px #336699;
}

.ank-form .dropsel > .dropwin {
	display:none;
	position:absolute;
	z-index:+12;
	width:100%;
	height:min(500px, 80vh);
	top:100%;left:0px;
	box-shadow:0px 0px 8px #336699;
	background-color:#FFFFFF;
} 

.ank-form .dropsel.is-opn > .dropwin {
	display:flex;
	flex-direction:column;
	align-items:stretch;
	justify-content:stretch;
}

.ank-form .dropsel > .dropwin > div {
	flex-grow:0;
	flex-shrink:0;
}

.ank-form .dropsel > .dropwin > .win-panel {
	text-align:center;
	padding:8px 12px;
}

.ank-form .dropsel > .dropwin > ul.win-list {
	list-style-type:none;
	flex-grow:10;
	position:relative;
	overflow-y:scroll;
	margin:12px 12px 12px 20px;
	padding:8px;
	border:2px solid #336699;
}

.ank-form .dropsel > .dropwin > ul.win-list.is-loading {
	background:transparent url(./image/loading.gif) no-repeat center center;
}

.ank-form .dropsel > .dropwin > ul.win-list > li {
	display:block;
	padding:12px;
}

.ank-form .dropsel > .dropwin > ul.win-list > li.hid {
	display:none;
}

.ank-form .dropsel > .dropwin > ul.win-list > li[data-id] {
	cursor:pointer;
}

.ank-form .dropsel > .dropwin > ul.win-list > li + li {
	border-top:1px solid #CCCCCC;
}

.ank-form .dropsel > .dropwin > ul.win-list > li.sel {
	color:#FFFFFF;
	background-color:#336699;
}


@media (max-width:750px) {

  .ank-form  .flex-body,
  .ank-form  .flex-vert,
  .ank-form  .flex-vert > div {
    display:block;
  }

  .ank-form .flex-vert textarea {
    resize:vertical;
  }

  .ank-form .w16,
  .ank-form .w15,
  .ank-form .w14,
  .ank-form .w13,
  .ank-form .w12,
  .ank-form .w23,
  .ank-form .w25,
  .ank-form .w35,
  .ank-form .w34,
  .ank-form .w45,
  .ank-form .w56,
  .ank-form .w100 {width:100%;}

  .ank-form .panel,
  .ank-form .panel.lft,
  .ank-form .panel.rgt,
  .ank-form .panel.cnt {text-align:center;}

  .ank-form .label {
    margin-top:8px;
  }

  .ank-form .dropsel > .dropwin > .win-panel {
    text-align:center;
    padding:4px 8px;
  }

}


.ank-form input[type="number"],
.ank-form input[type="tel"],
.ank-form input[type="date"],
.ank-form input[type="text"],
.ank-form input[type="password"],
.ank-form input[type="file"],
.ank-form select,
.ank-form textarea {
	box-sizing:border-box;
	background-color:#FFFFFF;
	width:calc(100% - 16px);
	font-size:18px;
	border:2px solid var(--cl-frm);
	margin:4px 4px 4px 12px;
	padding:6px 8px 6px 8px;
}

.ank-form input[type="number"]::placeholder,
.ank-form input[type="tel"]::placeholder,
.ank-form input[type="date"]::placeholder,
.ank-form input[type="text"]::placeholder,
.ank-form input[type="password"]::placeholder,
.ank-form input[type="file"]::placeholder,
.ank-form textarea::placeholder {
	display:inline-block;
	vertical-align:bottom;
	text-align:right;
	font-size:10px;
	font-style:italic;
	font-weight:normal;
	color:var(--cl-plh);
}

.ank-form input[type="checkbox"],
.ank-form input[type="radio"] {
	display:inline-block;
	vertical-align:middle;
	width:20px;
	height:20px;
	margin:4px 4px 4px 12px;
	position:relative;
}

.ank-form label {
	display:inline-block;
	vertical-align:middle;
	font-size:18px;
	font-weight:normal;
	color:var(--cl-lab);
	margin:4px 4px 4px 12px;
}

.ank-form input[type="checkbox"] + label,
.ank-form input[type="radio"] + label {
	display:inline-block;
	max-width:calc(100% - 56px);
}

.ank-form input[type="checkbox"]::before,
.ank-form input[type="radio"]::before {
	content:'';
	position:absolute;
	display:block;
	box-sizing:border-box;
	left:0px;
	top:0px;
	width:20px;
	height:20px;
	z-index:+3;
	border:2px solid var(--cl-frm);
	background-color:#FFFFFF;
}

.ank-form input[type="checkbox"]:disabled::before,
.ank-form input[type="radio"]:disabled::before {
	border-color:var(--cl-dis,#999999);
	background-color:#CCCCCC;
}

.ank-form input[type="checkbox"]:checked::after,
.ank-form input[type="radio"]:checked::after {
	content:'';
	position:absolute;
	display:block;
	box-sizing:border-box;
	left:5px;
	top:5px;
	z-index:+4;
	width:10px;
	height:10px;
	border:1px solid var(--cl-btn);
	background-color:var(--cl-btn);
}

.ank-form input[type="checkbox"]:disabled::after,
.ank-form input[type="radio"]:disabled::after {
	display:none;
}


.ank-form input[type="radio"]::before,
.ank-form input[type="radio"]:checked::after {
	border-radius:50%;
}

.ank-form textarea {
	height:120px;
}

.ank-form .h100, .ank-form .wh100 { height:100px;}
.ank-form .h150, .ank-form .wh150 { height:150px;}
.ank-form .h175, .ank-form .wh175 { height:175px;}
.ank-form .h200, .ank-form .wh200 { height:200px;}
.ank-form .h250, .ank-form .wh250 { height:250px;}
.ank-form .h300, .ank-form .wh300 { height:300px;}

@media (max-width:750px) {
  .ank-form .wh100,
  .ank-form .wh150,
  .ank-form .wh175,
  .ank-form .wh200,
  .ank-form .wh250,
  .ank-form .wh300 { height:auto;}
}

.ank-form input[type="button"],
.ank-form input[type="submit"],
.ank-form button,
.ank-form .as-button {
    display:inline-block;
    font-size:18px;
    min-width:70px;
    text-align:center;
    margin:12px 0px 12px 0px;
    padding:8px 18px 8px 18px;
/*    border:2px solid var(--cl-frm);*/
    border:none;
    background-color:var(--cl-btn);
    color:#F0F0F0;
    text-decoration:none;
    cursor:pointer;
}

.ank-form input[type="button"]:disabled,
.ank-form input[type="submit"]:disabled,
.ank-form button:disabled,
.ank-form .as-button:disabled {
    background-color:var(--cl-dis);
	color:#E0E0E0;
	cursor:default;
}

.ank-form * + input[type="button"],
.ank-form * + input[type="submit"],
.ank-form * + button,
.ank-form * + .as-button {
	margin-left:24px;
}


.ank-form input[type="button"]:hover,
.ank-form input[type="submit"]:hover,
.ank-form button:hover,
.ank-form .as-button:hover {
    background-color:var(--cl-bth);
    color:#FFFFFF;
}


.ank-form .sn-fields {margin:0px;padding:0px;}
.ank-form .sn-fields > .sn-field-num {display:none !important;}
.ank-form .sn-fields > .sn-field-list {margin:0px;padding:0px;}
.ank-form .sn-fields > .sn-field-list>:not(input,select) {display:none;}
.ank-form .sn-fields > .sn-field-add {text-align:right;}
.ank-form .sn-fields.sn-full > .sn-field-add {display:none;}
.ank-form .sn-fields .sn-button-add {margin:4px 4px 12px 0px;}


.ank-form .sn-blocks {margin:0px;padding:0px;}
.ank-form .sn-blocks > .sn-block-num {display:none !important;}
.ank-form .sn-blocks > .sn-block-list {margin:0px;padding:0px;}
.ank-form .sn-blocks .sn-block-add {text-align:right;}
.ank-form .sn-blocks.sn-full > .sn-block-add {display:none;}
.ank-form .sn-blocks .sn-button-add {margin:4px 4px 12px 0px;}
/*
.ank-form .sn-blocks > .sn-block-list > div {display:none;}
*/


.ank-form .rb-vis > .visflag,
.ank-form .ch-vis > .visflag,
.ank-form .se-vis > .visflag {display:none;}

.ank-form .ch-vis[data-vis="0"] > .visflag-0,
.ank-form .ch-vis[data-vis="0"] > .visflag-off,

.ank-form .ch-vis[data-vis="1"] > .visflag-1,
.ank-form .ch-vis[data-vis="1"] > .visflag-on,

.ank-form .ch-vis.vis-show-on > .visflag-on,

.ank-form .ch-vis.vis-show-1 > .visflag-1,
.ank-form .ch-vis.vis-show-2 > .visflag-2,
.ank-form .ch-vis.vis-show-3 > .visflag-3,
.ank-form .ch-vis.vis-show-4 > .visflag-4,
.ank-form .ch-vis.vis-show-5 > .visflag-5,
.ank-form .ch-vis.vis-show-6 > .visflag-6,
.ank-form .ch-vis.vis-show-7 > .visflag-7,
.ank-form .ch-vis.vis-show-8 > .visflag-8,
.ank-form .ch-vis.vis-show-9 > .visflag-9,
.ank-form .ch-vis.vis-show-10 > .visflag-10,
.ank-form .ch-vis.vis-show-11 > .visflag-11,
.ank-form .ch-vis.vis-show-12 > .visflag-12,
.ank-form .ch-vis.vis-show-13 > .visflag-13,
.ank-form .ch-vis.vis-show-14 > .visflag-14,
.ank-form .ch-vis.vis-show-15 > .visflag-15,
.ank-form .ch-vis.vis-show-16 > .visflag-16,
.ank-form .ch-vis.vis-show-17 > .visflag-17,
.ank-form .ch-vis.vis-show-18 > .visflag-18,
.ank-form .ch-vis.vis-show-19 > .visflag-19,
.ank-form .ch-vis.vis-show-20 > .visflag-20,
.ank-form .ch-vis.vis-show-21 > .visflag-21,
.ank-form .ch-vis.vis-show-22 > .visflag-22,
.ank-form .ch-vis.vis-show-23 > .visflag-23,
.ank-form .ch-vis.vis-show-24 > .visflag-24,

.ank-form .rb-vis[data-vis="0"] > .visflag-0,
.ank-form .rb-vis[data-vis="1"] > .visflag-1,
.ank-form .rb-vis[data-vis="2"] > .visflag-2,
.ank-form .rb-vis[data-vis="3"] > .visflag-3,
.ank-form .rb-vis[data-vis="4"] > .visflag-4,
.ank-form .rb-vis[data-vis="5"] > .visflag-5,
.ank-form .rb-vis[data-vis="6"] > .visflag-6,
.ank-form .rb-vis[data-vis="7"] > .visflag-7,
.ank-form .rb-vis[data-vis="8"] > .visflag-8,
.ank-form .rb-vis[data-vis="9"] > .visflag-9,
.ank-form .rb-vis[data-vis="10"] > .visflag-10,
.ank-form .rb-vis[data-vis="11"] > .visflag-11,
.ank-form .rb-vis[data-vis="12"] > .visflag-12,
.ank-form .rb-vis[data-vis="13"] > .visflag-13,
.ank-form .rb-vis[data-vis="14"] > .visflag-14,
.ank-form .rb-vis[data-vis="15"] > .visflag-15,
.ank-form .rb-vis[data-vis="16"] > .visflag-16,
.ank-form .rb-vis[data-vis="17"] > .visflag-17,
.ank-form .rb-vis[data-vis="18"] > .visflag-18,
.ank-form .rb-vis[data-vis="19"] > .visflag-19,
.ank-form .rb-vis[data-vis="20"] > .visflag-20,


.ank-form .se-vis[data-vis="0"] > .visflag-0,
.ank-form .se-vis[data-vis="1"] > .visflag-1,
.ank-form .se-vis[data-vis="2"] > .visflag-2,
.ank-form .se-vis[data-vis="3"] > .visflag-3,
.ank-form .se-vis[data-vis="4"] > .visflag-4,
.ank-form .se-vis[data-vis="5"] > .visflag-5,
.ank-form .se-vis[data-vis="6"] > .visflag-6,
.ank-form .se-vis[data-vis="7"] > .visflag-7,
.ank-form .se-vis[data-vis="8"] > .visflag-8,
.ank-form .se-vis[data-vis="9"] > .visflag-9,
.ank-form .se-vis[data-vis="10"] > .visflag-10,
.ank-form .se-vis[data-vis="11"] > .visflag-11,
.ank-form .se-vis[data-vis="12"] > .visflag-12,
.ank-form .se-vis[data-vis="13"] > .visflag-13,
.ank-form .se-vis[data-vis="14"] > .visflag-14,
.ank-form .se-vis[data-vis="15"] > .visflag-15,
.ank-form .se-vis[data-vis="16"] > .visflag-16,
.ank-form .se-vis[data-vis="17"] > .visflag-17,
.ank-form .se-vis[data-vis="18"] > .visflag-18,
.ank-form .se-vis[data-vis="19"] > .visflag-19,
.ank-form .se-vis[data-vis="20"] > .visflag-20 {display:block;}


table.report {font-size:80%;width:100%;box-sizing:border-box;border-bottom:2px solid #CCCCCC;}
table.report th {text-align:center;padding:6px 9px;background-color:#CCCCCC;font-weight:normal;}
tablee.report > tbody > tr > td {border-top:1px solid #CCCCCC;}
table.report tbody tr:nth-child(even) {background-color:#E8E8E8;}
table.report tbody td {padding:2px;text-align:left;}

.action-panel {display:flex;flex-direction:row;align-items:center;justify-content:flex-start;user-select:none;padding:6px 0px;}

.grp-sel {display:inline-block;margin:0px 12px 0px 0px;user-select:none;}
.grp-sel > span {display:inline-block;cursor:pointer;color:#336699;font-size:120%;transition:0.2s;text-decoration:none;}
.grp-sel > span+span::before {content:'|';display:inline-block;color:#999999;padding:0px 12px;}
.grp-sel > span:hover {text-decoration:underline;}
.grp-btn > input {margin:0px 0px 0px 12px !important;}

