

#np_body {
    width: 100%;
    font-size: 12px;
    min-width: 900px;
    max-width: 1300px;
    margin: 0 auto;
    color: #58585a;
}

#np_title {
    width: auto;
    padding: 15px 0px;
    margin-left: 320px;
    margin-right: 175px;
    position: relative;
    left: 0px;
}

#np_title_main {
    font-size: 36px;
    font-weight: bold;
    text-transform: uppercase;
    color:#000;
}
#np_title_main a {
    font-size: 36px;
    font-weight: bold;
    text-transform: uppercase;
    color:#000;
}
#np_title_main a:hover {
    color: #007d40;
}

#np_title_menu {
    margin-left: 0px;
}

.np_title_menu_item {
    font-size: 16px;
    font-weight: normal;
    text-decoration: none;
    text-transform: uppercase;
    display: inline-block;
    margin: 2px 0px;
    position: relative;
    left: 0px;
}
.np_title_menu_divider {
    display: inline-block;
    background: #58585a;
    height: 12px;
    width: 2px;
    margin: 0px 24px;
}

.np_title_menu_item > * {
    text-transform: none;
    text-decoration:none;
}

#np_title_logo_rot {
    display: block;
    position: absolute;
    left: -210px;
    top:18px;
}

div.np_title_menu_infohover {
    position: absolute;
    z-index: 5;
    top: 22px;
    left: -26px;
    border-left: 2px solid #58585a;
    background: #fff;
    max-height: 400px;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    overflow-x: hidden;
    text-decoration:none;
    padding-top: 10px;
    width: 250px;
}
.np_title_menu_itemdummy {
    position: absolute;
    z-index: 2;
    top: 12px;
    left: -26px;
    height: 20px;
    width: 2px;
    background: #58585a;
}

div.np_title_menu_infohover p,
div.np_title_menu_infohover a {
    display: block;
    padding: 3px 2px 3px 24px;
}

div.np_title_menu_infohover p:first-letter {
    color:  #007d40;
    font-size: 18px;
    font-weight: bold;
}

#np_left {
    width: 290px;          /* LC width */
    right: 300px;          /* LC width */
    margin-left: -100%;
    position: relative;
    float: left;
    padding: 0 5px;
}

#np_main {
    padding-left: 300px;   /* LC width */
    padding-right: 200px;  /* RC width */
}

#np_center {
    width: 100%;
    background: #fff;
    position: relative;
    float: left;
    min-height: 500px;
}

#np_center_spacer {
    margin: 0 25px 0 20px;
}

#np_center .np_center_address {
    padding: 0px;
    font-size: 16px;
    min-height: 150px;
}
#np_center .np_center_nav {
    padding: 0px;
    font-size: 16px;
    position: absolute;
    right: 20px;
    top: 0px;
}
#np_center div.bigimage  {
    margin: 40px 10px 40px 0px;
}
#np_center div.bigimage img,
#np_center div.bigimage canvas {
    border: 1px solid #000;
    box-shadow: 3px 3px 3px 0 #888888;
    -webkit-box-shadow: 3px 3px 3px 0 #888888;
    max-width: 95%;
}
.anbieter_link a,
.np_center_nav a {
    display: block;
    padding-left: 20px;
    background: url(Pfeil-Gruen-18.png) no-repeat 0px 2px;
    text-transform: uppercase;
    font-size: 16px;
    margin-bottom: 12px;
    color: #58585a;
}
.np_center_nav a:hover{
    background: url(Pfeil-Gruen-18.png) no-repeat 0px 2px;
}

/* ADS in right frame */
#np_right {
    width: 200px;          /* RC width */
    margin-right: -200px;  /* RC width */
    background: #fff;
    position: relative;
    float: left;
    padding: 0px;
    -webkit-user-select: none;
    user-select: none;
}

#np_ads_roller_top {
    top:-48px;
    height: 48px;
    width: 200px;
    position: absolute;
    background: url(Pfeil-oben-70-48.png) no-repeat center 0px;
    -webkit-user-select: none;
    user-select: none;
    z-index: 2;
}
#np_ads_roller_center {
    overflow: hidden;
    margin-top: 1px;
    background: #fff;
    z-index: 2;
    position: relative;
    top: 0px;
    -webkit-user-select: none;
    user-select: none;
}

#np_ads_roller_center img {
    -x-width: 100%;
}

#np_ads_roller_bottom {
    height: 48px;
    width: 200px;
    bottom:-48px;
    background: url(Pfeil-unten-70-48.png) no-repeat center 0px;
    -webkit-user-select: none;
    user-select: none;
    position: absolute;

}

#np_right a {
    display: block;
    margin: 0px 0px 10px 5px;
    visibility: hidden;
    width: 185px;
    border: 1px solid #000;
    box-shadow:  2px 2px 2px 0 #888888;
    -webkit-box-shadow:  2px 2px 2px 0 #888888;
    text-align: center;
    line-height: 0px;
}

#np_right a img {
    text-align: center;
    max-height: 185px;
}

#np_form {
    margin-left: 20px;
}

#np_footer {
    height: 40px;
    padding-top: 4px;
    clear: both;
    margin-left: 320px;
    margin-right: 225px;
    line-height: 16px;
    font-size:11px;
    width: auto;
}
.impressleft {
    display: inline-block;
    width: auto;
}
.impressright {
    display: inline-block;
    text-align: right;
    width: auto;
}
#np_footer a {
    font-size:inherit;
}

/* FORMS --------------------------------------------------------------------------------*/
.poi_form
{
    padding: 5px;
    background: #fff;
}
.poi_form fieldset {
    padding: 5px;
    border: 1px solid #aaa;
    border-radius: 0px;
    margin-bottom: 10px;
    background: #f8f8f8;
}
.poi_form legend {
    padding: 0px 5px;
}
.poi_form div.label,
.poi_form div.buttonbox {
    display: block;
    padding: 5px 3px;
    vertical-align: top;
}
.poi_form div.buttonbox {
    margin-top: 5px;
}

.poi_form div.label.image {
    color:blue;
    cursor: pointer;
}

.poi_form a {
    color:blue;
    /*display: block;*/
    vertical-align: top;
}

/* image box */
.poi_form div.label.image div {
    height: 100px;
    width: 100px;
    vertical-align: top;
    background: #fffffd;
    border: 1px solid #aaa;
}

.poi_form div.fileset {
    background: #fffffd;
    border: 1px solid #aaa;
    height: auto;
    width: 100%;
    margin-bottom: 8px;
    padding: 2px;
}

.poi_form div.fileset div:hover {
    background: #e0ffe0;
}

.poi_form div.label.image input[type=file] {
    height: 100px;
    width: 100px;
    position: absolute;
    top: 0px;
    left:0px;
    opacity: 0;
    cursor: pointer;
}

.poi_form div.label input.fileset {
    position: absolute;
    top: 0px;
    left:0px;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
    z-index: 1;
}
.poi_form div.label.image img {
    height: 100%;
    width: 100%;
}


.poi_form div.label span.label {
    display: block;
}

.poi_form div.label input {
}

.poi_form div.label input[type=date],
.poi_form div.label input[type=text],
.poi_form div.label input[type=password],
.poi_form div.label select,
.poi_form div.label textarea,
.poi_form div.label button,
.poi_form div.label input[type=radio]
.poi_form div.label input[type=checkbox]
{
    padding: 3px;
    display:block;
    width: 100%;
    /*background: #fffffd;*/
    border: 1px solid #aaa;
    color:#000;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
}
.poi_form div.label input[type=radio] {
}

.poi_form div.label input[type=checkbox] {
    margin: 0px 8px 0 0;
    height: 18px;
    width: 18px;
    border: none;
    background-color: rgba(0,0,0,0);
    -webkit-appearance: checkbox;
    display: inline;
    position: relative;
    top: 3px;
    float: left;
}
.poi_form div.label span.cbox {
}
.poi_form div.label div.radio {
    padding: 4px 4px 4px 0px;
}

.poi_form div.label .error {
    background: #fffffd;
    color: #f00;
    border: 1px solid #f00;
}

.poi_form div.label input[type=date],
.poi_form div.label select {
    width: 100%;
    margin:-1px 0 0 0;
}
.poi_form div.label textarea {
    /*height: 200px;*/
}

.poi_form div.label button {
    height: 23px;
    background: #eee;
    cursor: pointer;
}

a.buttonspan ,
.poi_form .buttonspan {
    border: 1px solid #aaa;
    background: #e0ffe0;
    padding: 2px 10px;
    display: inline;
    margin-right: 10px;
}
.poi_form .buttonspan input {
    background: inherit;
    cursor: pointer;
}

.poi_form input:focus,
.poi_form div.label input:focus,
.poi_form div.label select:focus,
.poi_form div.label textarea:focus {
    outline: 1px dotted #000;
}

.poi_form p {
    margin: 0 0 5px 0;
}

.poi_form div.fileset a,
.poi_form div.fileset progress.right
{
    float:right;
    padding: 0 10px;
    z-index: 2;
}

/* LOGIN --------------------------------------------------------------------------*/
.np_left_item_head .poi_form div.label div,
.np_left_item_head .poi_form div.label input[type=submit]
{
    background: #ffe;
}

/* FRONTPAGE --------------------------------------------------------------------------*/
#np_frontpage {
    margin: 0px auto;
    padding-bottom: 50px;
    width: 800px;
}
#fps_search {
    /* margin-top: 50px; */
    position: relative;
    top: 0px;
    left: 0px;
    /*    background: url(bg-desktop-frontpage.png) no-repeat -111px 0px;      */
    background: url(front-1047.png) no-repeat;
    background-size: 802px;
    min-height: 691px;
}
#fps_logo {
    position: absolute;
    top: 43px;
    left: 20px;
}
#fps_text_h1 {
    position: absolute;
    top: 55px;
    left: 175px;
    height: 20px;
    font-weight: bold;
    font-size: 20px;
}
#fps_location {
    position: absolute;
    top: 105px;
    left: 175px;
    width: 318px;
    height: 22px;
    border: 2px solid #8e8e8e;
    padding: 3px 30px 3px 3px;
    font-weight: bold;
    background-image: url(lupe-70.png);
    background-position: right;
    background-repeat: no-repeat;
    background-color: #fff;
    background-size: 30px;
    box-shadow:  2px 2px 4px #888;
}
#fps_button {
    position: absolute;
    top: 145px;
    left: 290px;
    height: 32px;
    line-height: 32px;
    width: 70px;
    font-size: 18px;
    background: #999;
    color:#fff;
    text-align: center;
    display: none;
}
#fps_kundenlogin {
    position: absolute;
    top: 105px;
    right: 10px;
    height: 30px;
    line-height: 30px;
    font-size: 18px;
    background: #999;
    color:#fff;
    text-align: center;
    padding: 0px;
    display: inline-block;
}

#fps_location input,#fps_name input {
    padding: 0px;
    margin: 0px;
    border: none;
    font-size: 18px;
    width: 99%;
}
#fps_distance {
    position: absolute;
    top: 94px;
    left: 523px;
    height: 22px;
    line-height: 16px;
    width: 70px;
    font-size: 14px;
    font-weight: bold;
    display: none;
}
.fps_result {
    margin-top: 135px;
    position: absolute;
    top: 0px;
    left: 175px;
    width: inherit;
    border: 2px solid #aaa;
    padding: 3px 75px 3px 3px;
    font-size: 14px;
    display: none;
    overflow: auto;
    background: #fff;
}
.fps_result  a {
    display: block;
    padding: 5px 0px;
}
.fps_footer_search {
    width: 100%;
}
.fps_text1 {
    text-align: justify;
    margin: 10px 0;
}
.fps_footer_result {
    position: relative;
    top: 0px;
    width: 100%;
}

/* POI --------------------------------------------------------------------------*/
#poi_search_all
{
    border: 2px solid #aaa;
    padding: 2px 23px 2px 3px;
    background-image: url(Lupe-25.png);
    background-position: right;
    background-repeat: no-repeat;
    vertical-align: middle;
    margin-bottom: 8px;
}
#poi_search_branche {
    position: relative;
    padding: 2px 60px 1px 3px;
}
#poi_search_branche input,#poi_search_ort input {
    width: 100%;
    border: 0;
    background: #fff;
}
#poi_search_branche #poi_distance {
    position: absolute;
    top: 2px;
    right: 2px;
    z-index: 1;
    width: 55px;
    height: 21px;
    text-align: right;
    display: none;
}
.poi_search_result {
    position: absolute;
    top: 26px;
    left: -2px;
    width: 345px;
    border: 2px solid #aaa;
    padding: 3px 75px 3px 3px;
    font-size: 14px;
    font-weight: normal;
    display: none;
    max-height: 300px;
    overflow: auto;
    z-index: 1;
    background: #fff;
}
.np_search_box {
    margin: 0px 0px 10px 0px;
}

.np_search_box button {
    line-height: 28px;
    height: 28px;
    width: 94px;
    color: #fff;
    cursor: pointer;
    font-size: 12px;
    padding: 0px;
}

#isearch_all {
    width: 100%;
}



/* LEFT ITEM BOX ------------------------------------------------------------------------- */
.np_left_item_box {
    margin: 0px 0px 10px 0px;
    border: 2px solid #aaa;
    background: #fff;
    font-size: 14px;
    line-height: 16px;
    position: relative;
    top: 0px;
}
.np_left_item_box.closed {
    height: 25px;
    overflow: hidden;
}
.np_left_item_box h5 {
    font-size: 16px;
    background: #fff;
    padding: 0 5px;
    line-height: 25px;
    text-transform: uppercase;
    font-weight: normal;
    border-bottom: 1px solid #aaa;
    cursor:pointer;
}
.np_left_item_box h5.selected,
.np_left_item_box h5:hover {
    color: #007d40;
}
.np_left_item_box p {
    font-size: 14px;
    padding: 5px;
    display: block;
}
.np_left_item_box a {
    font-size: 14px;
    line-height: 25px;
    padding: 0px 5px;
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.np_left_item_box input {
    border: 1px solid #ffcc00;
    background: #ffe;
    padding: 2px;
}
/* LEFT ITEM BOX ------------------------------------------------------------------------- */
.np_left_item_head {
    margin: 5px 2px;
}
.np_left_item_head.closed {
    height: 27px;
    overflow: hidden;
}
.np_left_item_head h5 {
    border-top: 1px #aaa solid;
    font-size: 16px;
    line-height: 25px;
    background: #fff url('Pfeil-Gruen-22.png') no-repeat -6px 4px;
    padding: 2px 4px 0px 14px;
    text-transform: uppercase;
    font-weight: normal;
    cursor:pointer;
}
.np_left_item_head h5.selected,
.np_left_item_head h5:hover {
    color: #007d40;
}
.np_left_item_head a {
    font-size: 14px;
    display: block;
    background: #fff url('Pfeil-Grau-18.png') no-repeat -4px 3px;
    padding: 2px 2px 2px 14px;
}
.np_left_item_head a.selected,
.np_left_item_head a:hover {
    background: #fff url('Pfeil-Gruen-18.png') no-repeat -4px 3px;
    color: #007d40;
}
.np_left_item_head p {
    font-size: 14px;
    padding: 0px 20px;
    display: inline-block;
    width: 170px;
}

/* MAP --------------------------------------------------------------------------*/

#np_map_div {
    min-height: 300px;
    position: relative;
    top:0px;
    display: none;
}

#np_map_show {
    position: absolute;
    right: 0px;
    top: 0px;
    z-index:2;
}

#np_map_layer {
    position: absolute;
    top: 0px;
    overflow: hidden;
    z-index: 0;
}

#np_map_show_world
,#np_map_show_local {
    line-height: 25px;
    height: 25px;
    display: inline-block;
    margin-left: 10px;
    color: #fff;
    background: #999;
    padding: 2px 5px 2px 5px;
    z-index: 1;
    text-transform: uppercase;
    cursor: pointer;
}

#np_map_show_world.isselected,
#np_map_show_local.isselected {
    background: #007d40;
}


#np_sponsor {
}
#np_sponsor a {
    margin: 15px 0 0 0px;
    padding: 0px;
    cursor: pointer;
    display: block;
    text-align: center;
    background: #fff;
}
#np_sponsor a img {
    max-width: 110px;
}
#np_othermaps {
    margin: 20px 0px;
}

.wiki_imgdiv_frame {
    padding: 0px;
    background: #eee;
    display: inline-block;
    float: right;
    clear: right;
    margin: 0 0 10px 10px;
    line-height: 0px;
    text-decoration: none;
    max-width:100%;
}

.wiki_imgdiv_right {
    display: inline-block;
    float: right;
    clear: right;
    margin: 0 0 10px 10px;
    text-decoration: none;
    max-width:100%;
}

table.wiki_infobox_head {
    display: inline-block;
    width: 300px;
    float: right;
    clear: right;
    font-size: 12px;
    margin: 0 0 10px 10px;
}

.wiki_body {
    margin: 15px 0;
    padding-bottom: 30px;
    font-size: 14px;
}


/* admin */
#np_poi_listForm {
    height: 400px;
    overflow-y: scroll;
    border: 1px solid #aaa;
    margin: 0 5px;
}
#np_poi_listForm table {
    width: 100%;
    border-collapse: collapse;
}
#np_poi_listForm td {
    padding: 2px;
    border-left: 1px dashed #aaa;
}
#np_poi_listForm td a {
    margin-left: 5px;
}
#np_poi_listForm th {
    padding: 2px;
    font-weight: bold;
    text-align: left;
    border-left: 1px dashed #aaa;
}
#np_poi_listForm th:first-child,
#np_poi_listForm td:first-child {
    border: none;
}
#np_poi_listForm p.error {
    padding: 5px;
    font-size: 16px;
    color: red;
    font-weight: bold;
}

#np_poi_listForm tr:nth-child(even) {
    background: #efe;
}

#np_poi_listForm tr:nth-child(odd) {
    background: #fff
}
#np_poi_listForm tr:hover {
    background: #eee;    
}

pre {
    background: #000;
    color: #0f0;
    font-family: monospace;
    padding: 10px;
    margin: 5px;
}

.red {
    color: #c00;
}

.kndfrminnerdiv {
    font-size: 20px;
    padding: 20px;
}

.kndfrminnerdiv p {
    font-size: inherit;
    color: inherit;
}
.kndfrmerror {
    color: red;
    font-size: 20px;
    font-weight: bold;
    padding: 5px 20px;
}

label.checkboxbig input[type=checkbox] {
    margin: 0px 5px 0 0;
    height: 16px;
    width: 16px;
    border: none;
    background-color: rgba(0,0,0,0);
    -webkit-appearance: checkbox;
    display: inline;
    float: left;
}

#admin_back {
    padding: 4px;
    color: #fff;
    background-color: #007d40;
    position: absolute;
    top: 120px;
    left: -147px;
}

.anbieter_frame {
    border: 1px solid #aaa;
    padding: 10px;
    position: relative;
}

.anbieter_titel {
    display: inline-block;
    background: #fff;
    position: absolute;
    top: -10px;
}

.anbieter_link {
    text-align: right;
    padding-top: 10px;
}

.anbieter_link a {
    display: inline-block;
}

.jobheader {
   ;
}

.joblogo {
    margin: 0px 0 0 0;
    padding: 20px 0 0 0;
    border-top: 1px solid #aaa;
    background-image: url(joblogo.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: auto 80px;
    height: 80px;
    position: relative;
}

.joblogo > .anzeige90ccw {
    top: 125px;
    left: -15px;
}

.jjob {
    display: flex;
     flex-direction: row;
}

.jlinkbox {
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin: 5px 0 5px 0;
    text-decoration: none;
    border: 1px solid #aaa;
    padding: 5px 0;
    height: 85px;
    background: #fff;
}
.jtitle {
    text-align: center;
    font-weight: bold;
    font-size: 14px;
}
.jdescr {
    text-align: center;
    font-size: 12px;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}

.jobListForm  td:nth-child(2)  {
    max-width: 200px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}
.jobListForm td:nth-child(3)  {
    max-width: 250px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.jobListForm {
    height: 200px !important;
}
.jobListForm tr:hover {
    cursor:pointer;
}
.np_left_item_job h5.link {
    font-size: 16px;
    line-height: 25px;
    background: #fff url('Pfeil-Gruen-22.png') no-repeat -6px 4px;
    padding: 2px 4px 0px 14px;
    font-weight: normal;
    cursor:pointer;
}


form input[readonly],
form select[readonly],
form textarea[readonly] {
    background-color: #eee !important;
}


red {
    color:red;
    font-weight: bold;
}

.stelelink {
    display: block;
    width: 100%;
    height: 107px;
    background-image: url(stelelink.webp);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
    border-top: 1px solid ;
    padding-top: 10px;
}