body {
	background-color: #eef4f7;
}
.main-class {
	width: fit-content;
	align-items: center;
}
a {
	font-size:100%;
}
p {
	font-size:1.125em;
}
/* search-bar placeholder opacity */
input[type="text"]::-webkit-input-placeholder { /* WebKit browsers */
  opacity: 0.5;
}

input[type="text"]::-moz-placeholder {  /* Mozilla Firefox 19+ */
  opacity: 0.5;
}

input[type="text"]:-ms-input-placeholder {  /* IE 10+ */
  opacity: 0.5;
}

input[type="text"]:-moz-placeholder { /* Older versions of Mozilla Firefox */
  opacity: 0.5;
}

/* Optional: Change opacity on focus for better visibility while typing */
input[type="text"]:focus::-webkit-input-placeholder {
  opacity: 0.5;
}
#mapHeader {
	position: absolute;
	z-index: 998;
	padding: 15px;
	display: flex;
	flex-direction: row;
	width: 100%;
	align-items: center;
}
#layer-selection-warning {
	position: absolute;
	top: 74px;
	left: 15px;
	z-index: 999;
	display: none;
	max-width: min(90vw, 520px);
	padding: 8px 12px;
	border-radius: 4px;
	font-size: 0.9rem;
	line-height: 1.4;
	color: #842029;
	background-color: rgba(248, 215, 218, 0.95);
	border: 1px solid #f5c2c7;
}
#layer-selection-warning .warning-body {
	display: flex;
	align-items: flex-start;
	gap: 10px;
}
#layer-selection-warning-text {
	flex: 1 1 auto;
}
#layer-selection-warning-close {
	flex: 0 0 auto;
	padding: 0;
	border: 0;
	background: transparent;
	color: #842029;
	font-size: 0.85rem;
	line-height: 1.2;
	text-decoration: underline;
	cursor: pointer;
}
#layer-loading-notice {
	position: absolute;
	top: 74px;
	left: 15px;
	z-index: 999;
	display: none;
	max-width: min(90vw, 520px);
	padding: 8px 12px;
	border-radius: 4px;
	font-size: 0.9rem;
	line-height: 1.4;
	color: #0c5460;
	background-color: rgba(209, 236, 241, 0.96);
	border: 1px solid #bee5eb;
}
#layer-loading-notice-text {
	flex: 1 1 auto;
}
#new_map,
#new_map1 {
	font-size: 12px;
	line-height: 1.35;
	white-space: normal;
	word-break: break-word;
	overflow-wrap: anywhere;
}
#new_map a,
#new_map1 a {
	font-size: 12px;
	line-height: 1.35;
}
.leaflet-popup.profile-popup .leaflet-popup-content {
	width: 156px !important;
	max-width: 156px;
	margin: 10px 12px;
	font-size: 12px;
	line-height: 1.35;
	white-space: normal;
	word-break: break-word;
	overflow-wrap: anywhere;
}
.leaflet-popup.profile-popup .leaflet-popup-content-wrapper {
	max-width: 184px;
}
.leaflet-popup.profile-popup .leaflet-popup-content a {
	font-size: 12px;
	line-height: 1.35;
}
#custom_controls {
	position: relative;
	padding: 5px;
}
#layerListBox1 {
	position:relative;
	top: 14px;
	left: 6px;
	display: grid;
	grid-template-rows: minmax(120px, 52%) 10px minmax(90px, 48%) 10px;
	width: 340px;
	height: 450px;
	max-width: 340px;
	padding: 10px;
	overflow: hidden;
	display: none;
	background-color: rgba(255, 255, 255, 0.9);
	border: solid 2px #0275d8;
	box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.2);
}
#container1 {
	grid-row: 1;
	overflow-y: auto;
	overflow-x: hidden;
	scrollbar-gutter: stable;
	padding-right: 4px;
}
#selected-layers-panel {
	grid-row: 3;
	min-height: 90px;
	display: flex;
	flex-direction: column;
	padding-top: 6px;
}
#selected-layers-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
}
.selected-layers-title {
	font-size: 0.95rem;
	font-weight: 600;
	line-height: 1.2;
}
.selected-layers-title-note {
	font-size: 0.8em;
	font-weight: 400;
	margin-left: 0.2rem;
}
#selected-layers-actions {
	display: flex;
	gap: 6px;
}
#selected-layers-actions .btn {
	padding: 0.2rem 0.45rem;
	font-size: 0.78rem;
	line-height: 1.2;
}
#container2 {
	flex: 1 1 auto;
	min-height: 0;
	overflow-y: auto;
	overflow-x: hidden;
	scrollbar-gutter: stable;
	padding-right: 4px;
}
#layer-pane-resizer {
	grid-row: 2;
	height: 10px;
	margin: 2px 0;
	border-radius: 4px;
	background: #eef3f8;
	border: 1px solid #c8d6e5;
	cursor: row-resize;
	touch-action: none;
	position: relative;
}
#layer-pane-resizer::before {
	content: "=";
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -56%);
	color: #5f7389;
	font-weight: 700;
	font-size: 14px;
	line-height: 1;
}
.box-item {
	display: grid;
	grid-template-columns: 18px 16px minmax(0, 1fr) minmax(72px, 96px) 24px;
	align-items: center;
	gap: 6px;
  border: 2px solid rgba(128, 128, 128, 0.2);
	padding: 2px;
	margin-bottom: 2px;
	width: 100%;
	box-sizing: border-box;
}
.box-item > .selected-layer-delete {
	grid-column: 1;
}
.box-item > .form-check-input {
	grid-column: 2;
}
.box-item > .form-check-label {
	grid-column: 3;
}
.box-item > input[type="range"] {
	grid-column: 4;
}
#container2 .form-check-input {
	width: 1rem;
	height: 1rem;
	min-width: 1rem;
	min-height: 1rem;
	flex: 0 0 auto;
	margin: 0;
}
#container2 .form-check-label {
	flex: 1 1 auto;
	min-width: 0;
	margin-right: 0 !important;
	font-size: 0.82rem;
	line-height: 1.1;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
#container2 input[type="range"] {
	width: 100%;
	min-width: 0;
}
.selected-layer-delete {
	width: 18px;
	height: 18px;
	min-width: 18px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: #f3f5f7;
	color: #6c757d;
	font-size: 13px;
	line-height: 18px;
	text-align: center;
	cursor: pointer;
}
.selected-layer-delete:hover {
	background: #e0e3e7;
	color: #212529;
}
.drag-handle {
	grid-column: 5;
	justify-self: center;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	color: #0a58ca;
	font-size: 16px;
	font-weight: bold;
	border: 1px solid #9ec5fe;
	border-radius: 4px;
	background: #eef6ff;
	cursor: grab;
	touch-action: none;
	user-select: none;
}
.drag-handle:active {
	cursor: grabbing;
}
#layer-box-resizer {
	grid-row: 4;
	height: 10px;
	margin-top: 2px;
	border-radius: 4px;
	background: #eef3f8;
	border: 1px solid #c8d6e5;
	cursor: ns-resize;
	touch-action: none;
	position: relative;
}
#layer-box-resizer::before {
	content: "=";
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -56%);
	color: #5f7389;
	font-weight: 700;
	font-size: 14px;
	line-height: 1;
}
.input-group-prepend {
    background-color: none;
		border: none;
    border-radius: 8px;
    padding: 0;
}
.search-bar {
	position: relative;
	padding: 5px;
	.search-list {
		position: absolute;
		z-index: 1000;
		overflow: auto;
		cursor: pointer;
		margin: 0 auto;
		padding-top: 5px;
		width: 97%;
		max-height: 350px;
	}
}
#clearButton {
  position: absolute;
  right: 8px;       /* Adjust to position the button */
  top: 45%;
  transform: translateY(-50%); /* Vertical centering */
  border: none;
  background: none;
	color: #6c757d;
  cursor: pointer;
  opacity: 0.5;      /* Initially semi-transparent */
}
#new_dropdown {
	position: relative;
	padding: 5px;
	margin-left: 0;
	margin-right: 0px;
}
#legend_toggle_box {
	position: relative;
	padding: 5px;
	margin-left: auto;
}
#show_legend_panel {
	min-width: 56px;
	padding-left: 8px;
	padding-right: 8px;
}
#show_legend_panel:disabled {
	opacity: 0.55;
	cursor: not-allowed;
}
#show_legend_panel.is-active {
	background-color: #0b5ed7;
	border-color: #0a58ca;
}
.dropdown-menu {
	top: 54px;
	right: 0;
	left: auto;
}
#mapBox {
	position: absolute;
	z-index: 0;
	width: 100%;
	height: 100dvh;
}
#map {
	position: relative;
	z-index: 0;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 100dvh;
}
#info_dropdown {
	position: absolute;
	z-index: 999;
	bottom: 100px;
	right: 10px;
	display: block;
	display: flex;
	justify-content: flex-end;
}
#showinfo {
	position: absolute;
	height: 34px;
	width: 34px;
}
/* .leaflet-control-locate {
	display: flex;
  align-items: center;
	background-color: none;
	.fad {
	  display: inline-block;
	  width: 30px;
	  height: 30px;
		margin: 0 auto;
		padding-top: 10px;
	}
} */
.leaflet-control-locate.active a {
	color: #fff !important;
	background-color: #0d6efd !important;
}
.leaflet-control-locate.active.following a {
	color: #fff !important;
	background-color: #0d6efd !important;
}
#show_cur_loc {
	margin-top: 10px;
	position: absolute;
	z-index: 999;
	right: 105px;
	font-size: large;
}
#right_dropdown {
	margin-top: 60px;
	position: absolute;
	z-index: 899;
	right: 10px;
}
#layerListBox {
	z-index: 100;
	position: absolute;
	display: none;
	width: 153px;
	top: 320px;
	left: 10px;
	padding: 10px;
	background-color: rgba(255, 255, 255, 0.9);
	border: solid 2px #0275d8;
	box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.2);
}
#rightBox {
	z-index: 100;
	position: absolute;
	top: 100px;
	display: none;
	right: 10px;
	padding: 10px;
	background-color: rgba(255, 255, 255, 0.9);
	border: solid 2px #0275d8;
	box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.2);
}
#rightBox2 {
	z-index: 100;
	position: absolute;
	display: none;
	top: 380px;
	right: 10px;
	padding: 10px;
	background-color: rgba(255, 255, 255, 0.9);
	border: solid 2px #0275d8;
	box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.2);
}
#info-text{
	z-index: 100;
	position: absolute;
	background-color: #ffc000;
	right: 5px;
	bottom:20px;
	width:10%;
	padding: 5px;
	opacity:0.8;
	font-weight: 600;
	text-align:center;
}
#soil_tile_info{
	z-index: 100;
	position: absolute;
	background-color: green;
	right: 45%;
	top:20%;
	padding: 5px;
	opacity:0.6;
	font-weight: 600;
	color: #ffc000;
}
.display-none {
  display: none !important;
}
.display-inline {
  display: inline !important;
}
#leftBox {
	z-index: 999;
	width: 290px;
	max-width: 290px;
	position: absolute;
	display: none;
	overflow: auto;
	top: 140px;
	right: 10px;
	padding: 10px;
	background-color: rgba(255, 255, 255, 0.9);
	border: solid 2px #0275d8;
	box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.2);
}
.img-link{
	max-width: 150px;
	width: auto;
	height: auto;
}
.home-text {
	color: #000;
	text-decoration: none;
}
.home-img {
	width: auto;
  height: auto;
	margin-bottom: 15px;
}
.row-eq-height {
  display: flex;
  flex-wrap: wrap;
}
#legend_img {
	width: 50px;
	height: 100px;
	cursor: pointer;
}
.card {
	border-width: 1px;
	border-color: coral;
}
.card strong{
	font-size: 120%
}
#translationMenu {
	position: absolute;
	top: 0;
  right: 0;
	padding: 5px;
}
/* starting menu 1 */
.cus_header{
	display: flex;
	flex-direction: column;
	align-items: center;
	background-position:  right 50% bottom 70%; ;
	background-repeat: no-repeat;
	background-size: cover;
	animation-name: replace;
	animation-duration: 40s;
	animation-timing-function: steps(1, jump-start);
	animation-iteration-count: infinite;
}
@keyframes replace{
  25%   {background-image:url('../images/menu/13.jpg');}
  50%  {background-image:url('../images/menu/2.jpg');}
  75%  {background-image:url('../images/menu/14.jpg');}
  100%  {background-image:url('../images/menu/7.jpg');}
 }
.cus_header_text1{
	align-self:center;
	margin-top: 50px;
	margin-bottom: 20px;
	margin-right: 20px;
}
.cus_header_text1 h1{
  font-size: 4.3em;
  padding: 20px;
  color: #ffc000;
  font-family: serif;
  text-shadow: 3px 3px 3px #DB7F18;
}
.cus_header_text2{
	align-self:center;
	justify-content: center;
	margin-right: 30px;
	margin-bottom: 10px;
	background:linear-gradient(to top, #BD6428, #F3AC7D);
}
.cus_header_text2 h1{
	padding:5px;
	font-weight: normal;
	color: #fff;
	align-self:flex-end;
	font-size: 1.75em;
	font-family: serif;
	text-decoration:none;
}
.cus_header_text2 a{
	text-decoration:none;
}
.cus_header_text3{
  align-self: center;
  margin-bottom: 0px;
  margin-right: 0px;
  font-size: 1.25em;
  color: white;
}
.cus_header_text3 a{
	color: white;
}
.cus_header_text5{
	align-self:center;
	margin-bottom: 0px;
	margin-right: 0px;
	font-size: 1.00em;
	color: white;
}
.cus_header_text5 a{
	color: white;
}
.cus_header_text4{
	align-self:center;
	padding: 10px;
	margin:50px 50px 10px 40px;
	font-size: 1.375em;
	color: white;
	background-color: rgba(124, 124, 124, 0.801);
	text-align: left;
	font-family: serif
}
.cus_line{
	display:flex;
	flex-direction: row;
	justify-content: center;
	width:100%; height:65px;
	margin-bottom:20px;
	margin-top: 20px;
	background-color:white
}
.cus_line h2{
	font-weight: normal;
	font-size:2em;
	font-family: serif;
	margin: 10px;
}
.cus_line1{
	display:flex;
	flex-direction: row;
	justify-content: center;
	width:100%; height:65px;
	margin-bottom:20px;
	margin-top: 20px;
	background-color:white
}
.cus_line1 h1{
	font-weight: normal;
	 margin: 10px;
}
/* starting menu 2 */
.menu_header{
	display: flex;
	flex-direction: column;
	align-items: center;
	background: linear-gradient(90deg, rgba(114,131,92,1) 0%, rgba(147,173,134,1) 80%);
}
.menu_row{
	display: flex;
	flex-direction:row;
}
.menu_column{
	display: flex;
	flex-direction:column;
}
.menu_img1{
	max-width:680px;
	max-height: 490px;
	width: 100%;
	height: auto;
  padding: 10px;
  -webkit-filter: blur(5px); /* Safari 6.0 - 9.0 */
  filter: blur(5px);
}
.menu_img2{
	max-width:300px;
	max-height: 190px;
	width: 100%;
	height: auto;
	padding: 10px;
}
.menu_img3{
	max-width:300px;
	max-height: 190px;
	width: 100%;
	height: auto;
	padding: 10px;
}
.menu_text{
	align-self: center;
}
.menu_text h1{
	font-weight: bold;
	color:white
}
.menu_img4{
	max-width:200px;
	max-height: 210px;
	width: 100%;
	height: auto;
	padding: 10px;
}
.menu_img5{
	max-width:300px;
	max-height: 210px;
	width: 100%;
	height: auto;
	padding: 10px;
}
.menu_text2{
	padding: 10px;
	color: white;
}
/* Layer フォルダー化 */
ul {
  margin-left: -5%;;
}
li {
  list-style-type: none;
}
/* 横幅 */
#layer-folders {
  width: 100%;
	margin-left: 0;
	padding-left: 0;
	list-style: none;
}
#layer-folders > li {
  font-weight: bold;
  font-size: 0.8rem;
  line-height: 1.1;
  cursor: pointer;
}
/* 初期表示  非表示*/
.layer-folder {
	width: 100%;
	display: none;
}
.layer-folder li {
  padding-left: 10px;
  background: floralwhite;
}

#layer-folders li.folder-header {
  position: relative;
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 4px 0;
  padding: 6px 8px 6px 24px;
  border: 1px solid #d6e6f7;
  border-radius: 4px;
  background: #edf5ff;
  font-weight: 700;
  cursor: pointer;
}

#layer-folders li.folder-header .folder-header-text {
  flex: 1 1 auto;
  min-width: 0;
}

.layer-folder li .source-info-btn {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  border: 1px solid #1f5a96;
  border-radius: 50%;
  background: #ffffff;
  color: #1f5a96;
  font-size: 12px;
  line-height: 1;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  margin-top: 0;
  padding: 0;
}

.layer-folder li .source-info-btn:hover {
  background: #1f5a96;
  color: #ffffff;
}

#layer-folders li.folder-header::before {
  content: "\25B8";
  position: absolute;
  left: 8px;
  top: 50%;
  transform: translateY(-50%);
  color: #2b6cb0;
  font-size: 12px;
}

#layer-folders li.folder-header.is-open::before {
  content: "\25BE";
}

.layer-folder li:not(.folder-header) {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 8px;
}

.layer-folder li .form-check-input {
  flex: 0 0 auto;
  width: 16px;
  margin-top: 0;
}

#layer-folders .check-layer.main-layer-select-input {
  position: absolute;
  width: 0;
  height: 0;
  margin: 0;
  opacity: 0;
  pointer-events: none;
}

#layer-folders .group-toggle.group-select-input {
  position: absolute;
  width: 0;
  height: 0;
  margin: 0;
  opacity: 0;
  pointer-events: none;
}

.main-layer-select-btn {
  flex: 0 0 auto;
  min-width: 46px;
  min-height: 22px;
  padding: 1px 6px;
  border: 1px solid #0d6efd;
  border-radius: 4px;
  background: #ffffff;
  color: #0d6efd;
  font-size: 0.72rem;
  line-height: 1.15;
  cursor: pointer;
}

.group-select-btn {
  flex: 0 0 auto;
  min-width: 46px;
  min-height: 22px;
  padding: 1px 4px;
  border: 1px solid #0d6efd;
  border-radius: 4px;
  background: #ffffff;
  color: #0d6efd;
  font-size: 0.72rem;
  line-height: 1.15;
  cursor: pointer;
}

.main-layer-select-btn.is-selected {
  border-color: #adb5bd;
  background: #e9ecef;
  color: #6c757d;
  cursor: not-allowed;
}

.group-select-btn.is-selected {
  border-color: #adb5bd;
  background: #e9ecef;
  color: #6c757d;
  cursor: not-allowed;
}

.layer-folder li .form-check-label,
.layer-folder li.folder-header > span {
  flex: 1 1 auto;
  min-width: 0;
  font-size: 0.8rem;
  line-height: 1.1;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.check-layer{
	width: auto;
}
.handle {
  cursor: move;
  cursor: -webkit-grabbing;
}
.sticky_table  th {
	position: -webkit-sticky;
	position: sticky;
	top: 0;
	z-index: 1;
}
.sticky_table thead th {
	background: #d5d3d2;
}
.sticky_table thead th:nth-child(-n+2) {
	z-index: 2;
}
.sticky_table  th:nth-child(1)  {
	left: 0.25rem;
	background: #d5d3d2;
}
.sticky_table  th:nth-child(2)  {
	left: 2.25rem;
	background: #d5d3d2;
}
#show_map_3d {
	cursor: pointer;
}
#leftBox2 {
	z-index: 999;
	width: 290px;
	height: auto;
	max-width: 290px;
	max-height: 180px;
	position: absolute;
	display: none;
	top: 74px;
	left: 16px;
	padding: 10px;
	background-color: rgba(255, 255, 255, 0.9);
	border: solid 2px #0275d8;
	box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.2);
}
#popup-mobile {
	display: flex;
  flex-direction: column;
  flex-wrap: wrap;
	gap: 5px;
	position: absolute;
	top: 60px;
	margin-top: 0px;
	left: 10px;
	width: fit-content;
	height: auto;
	z-index: 1001;
	display: none;
}
.sp_silder_title{
	margin: auto;
}
#sp_silder {
	position: relative;
	top: 14px;
	left: 6px;
	width: 190px;
	max-width: 190px;
	height: 215px;
	max-height: 215px;
	height: fit-content;
	display: none;
	margin-top: 0px;
	padding-left: 10px;
	background-color: rgba(255, 255, 255, 0.9);
	border: solid 2px #0275d8;
	box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.2);
}
#sp_silder_nodepth {
	position: relative;
	top: 14px;
	left: 6px;
	width: 190px;
	max-width: 190px;
	height: 200px;
	max-height: 200px;
	height: fit-content;
	display: none;
	margin-top: 0px;
	padding-left: 10px;
	background-color: rgba(255, 255, 255, 0.9);
	border: solid 2px #0275d8;
	box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.2);
}

#sp_silder1 {
	display: flex;
}
#sp_legend_selector_wrap {
	display: none;
	position: relative;
	top: 14px;
	left: 6px;
	width: 190px;
	max-width: 190px;
	padding: 8px 10px;
	background-color: rgba(255, 255, 255, 0.9);
	border: solid 2px #0275d8;
	box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.2);
	margin: 4px 0 6px;
	font-size: 0.85rem;
}
#sp_legend_selector_label {
	font-size: 0.72rem;
	font-weight: 600;
	color: #33454f;
	margin-bottom: 4px;
}
#sp_legend_selector_current {
	font-size: 0.95rem;
	font-weight: 700;
	line-height: 1.3;
	word-break: break-word;
}
#sp_legend_selector_note {
	margin-top: 4px;
	font-size: 0.72rem;
	line-height: 1.35;
	color: #52626c;
}
#soilprop-legend-panel {
	position: fixed;
	top: 74px;
	right: 15px;
	left: auto;
	width: 190px;
	max-width: 190px;
	display: none;
	padding: 8px 10px;
	padding-bottom: 24px;
	background-color: rgba(255, 255, 255, 0.9);
	border: solid 2px #0275d8;
	box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.2);
	z-index: 1002;
	overflow: auto;
}
#soilprop-legend-panel #sp_legend_selector_wrap,
#soilprop-legend-panel #sp_silder,
#soilprop-legend-panel #sp_silder_nodepth {
	position: static;
	top: auto;
	left: auto;
	width: 100%;
	max-width: 100%;
	height: auto;
	max-height: none;
	margin: 0;
	padding: 0;
	border: 0;
	box-shadow: none;
	background: transparent;
}
#soilprop-legend-panel #sp_silder_title,
#soilprop-legend-panel #sp_silder_nodepth_title {
	display: none !important;
}
#soilprop-legend-panel #sp_silder_nodepth {
	margin-top: 4px;
	min-height: 150px;
	display: flex;
	align-items: center;
	justify-content: center;
}
#soilprop-legend-panel #layerpanel_pic1 {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 150px;
}
#soilprop-legend-panel #sp_legend_nodepth_img {
	width: 100%;
	height: 100%;
	max-height: none;
	display: block;
	margin: 0 auto;
	object-fit: fill;
}
#soilprop-legend-resizer {
	position: absolute;
	left: 8px;
	right: 8px;
	bottom: 6px;
	height: 10px;
	border-radius: 4px;
	background: #eef3f8;
	border: 1px solid #c8d6e5;
	cursor: row-resize;
	touch-action: none;
}
#soilprop-legend-resizer::before {
	content: "=";
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -56%);
	color: #5f7389;
	font-weight: 700;
	font-size: 14px;
	line-height: 1;
}
#legend_info_box {
	display: none;
	font-size: 0.8rem;
	line-height: 1.35;
	margin-top: 2px;
	word-break: break-word;
}
#legend_info_box a {
	word-break: break-all;
}
#legend_info_box .forest-mesh-legend {
	display: grid;
	gap: 4px;
}
#legend_info_box .legend-row {
	display: grid;
	grid-template-columns: 12px 1fr;
	align-items: center;
	column-gap: 6px;
}
#legend_info_box .legend-swatch {
	width: 12px;
	height: 12px;
	border: 1px solid rgba(0, 0, 0, 0.25);
	border-radius: 2px;
}
#legend_info_box .legend-label {
	font-size: 0.82rem;
	line-height: 1.2;
}
#legend_info_box .forest-legend-card {
	display: grid;
	gap: 6px;
}
#legend_info_box .forest-legend-image-wrap {
	width: 100%;
	max-height: 62vh;
	overflow: auto;
}
#legend_info_box .forest-legend-loading {
	display: none;
	font-size: 0.76rem;
	color: #46555f;
}
#legend_info_box .forest-legend-card.is-image-loading .forest-legend-loading {
	display: block;
}
#legend_info_box .forest-legend-title {
	font-size: 0.78rem;
	font-weight: 600;
	color: #1d2d35;
}
#legend_info_box .forest-legend-links {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	font-size: 0.76rem;
}
#legend_info_box .forest-legend-image {
	display: block;
	width: 100%;
	height: auto;
	border: 1px solid rgba(0, 0, 0, 0.12);
	border-radius: 4px;
	background: #fff;
}
#legend_info_box .forest-legend-card.is-image-loading .forest-legend-image {
	display: none;
}
#legend_info_box .forest-legend-card.is-large-image .forest-legend-image {
	width: 200%;
	max-width: none;
}
#legend_info_box .forest-legend-missing {
	display: none;
	font-size: 0.76rem;
	color: #7a2e12;
}
#legend_info_box .forest-legend-card.is-image-missing .forest-legend-missing {
	display: block;
}
#seamless_legend_panel {
	display: none;
	margin-top: 2px;
}
#seamless_legend_panel iframe {
	width: 100%;
	height: 220px;
	border: 0;
}
#layer_spchart {
	z-index: 100;
	position: absolute;
	top: 65px;
	left: 700px;
	width: 660px;
	height: 650px;
	overflow: auto;
	display: none;
	padding: 10px;
	background-color: rgba(255, 255, 255, 0.9);
	border: solid 2px #0275d8;
	box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.2);
}
#slide6 {
	appearance: slider-vertical;
	background-color: #ccc;
  height: 110px;
  width: 2px;
  margin: auto auto 8px 10px;
}
#sp_silder11 {
	width: 23px;
}
#sp_silder12 {
	width: 60px;
}
#sp_silder13 {
	width: 80px;
	text-align : center;
}
#layerpanel_tanni {
	height: 30px;
	width: 80px;
	text-align : center;
}
#layerpanel_pic {
	width: 30px;
}
#sp_legend_img {
	width: 50px;
	height: 90px;
  margin-left: 20px;
	margin-top: -10px;
}
#span2 {
	display: none;
}
.layer_panel_text {
    height: 30px;
}
.leaflet-left {
	padding-bottom: 16px;
}
.leaflet-top  {
	position: absolute;
}
.leaflet-top .leaflet-control {
	margin-right: 60px !important;
}
.leaflet-bottom  {
	position: absolute;
	.leaflet-right{
		display: flex;
  	justify-content: flex-end;
	}
}
.leaflet-control-geocoder-form {
	padding: 8px !important;
	width: 55vw !important;
	display: inline-block !important;
}
.button_lang {
	cursor: pointer;
	display: inline-block;
	padding: 0.25em 0em;
	border-radius: 10px;
	width: 5em;
	transition: 0.25s ease;
}
.button_lang:hover {
	background: #b5d6b2;
	transition: 0.25s ease;
}
.current_lang {
	background: #b5d6b2;
}
textarea:focus, input:focus{
	outline: none;
	border: none;
}
.leaflet-popup-content {
	word-break: break-word;
  overflow-x: hidden;
	width: 110px;
	/* Line Clamping Properties */
  display: -webkit-box;
  -webkit-line-clamp: auto;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
}
.leaflet-popup {top: 20px !important;}
.leaflet-popup-tip-container {
	top: 0px !important;
}
.leaflet-popup-tip {
	box-shadow: none !important;
}
.leaflet-popup:before
	{
	content: "";
	position: absolute;
	border: 13px solid transparent;
	border-bottom-color: white;
	bottom: 0px;
	margin-left: -13px;
}
/* Mobile Devices */
@media (max-width: 720px) {
	#popup-mobile {
		top: 58px;
		left: 8px;
		width: fit-content;
		max-width: none;
		max-height: none;
		overflow: visible;
		-webkit-overflow-scrolling: auto;
		touch-action: manipulation;
		gap: 4px;
		padding-right: 0;
	}
	#popup-mobile > #sp_silder,
	#popup-mobile > #sp_silder_nodepth,
	#popup-mobile > #sp_legend_selector_wrap {
		top: 0;
		left: 0;
		width: 100%;
		max-width: 100%;
		margin: 0;
		box-sizing: border-box;
	}
	#soilprop-legend-panel {
		top: 58px;
		right: 8px;
		left: auto;
		width: 190px;
		max-width: 190px;
		padding: 8px 10px;
	}
	#soilprop-legend-panel #sp_legend_selector_wrap {
		font-size: 0.85rem;
		padding: 0;
		margin-bottom: 6px;
	}
	#soilprop-legend-panel #sp_legend_selector_label {
		margin-bottom: 4px;
	}
	#soilprop-legend-panel #sp_legend_selector_current {
		font-size: 1.08rem;
	}
	#soilprop-legend-panel #sp_silder_title,
	#soilprop-legend-panel #sp_silder_nodepth_title {
		font-size: 1.25rem !important;
		line-height: 1.2;
		margin-bottom: 4px !important;
	}
	#soilprop-legend-panel #sp_silder .border-top.mb-1.fs-5 {
		font-size: 1.25rem !important;
		margin-bottom: 4px !important;
	}
	#soilprop-legend-panel #span1,
	#soilprop-legend-panel #span2 {
		font-size: 1rem !important;
	}
	#soilprop-legend-panel #sp_legend_selector_wrap,
	#soilprop-legend-panel #sp_silder,
	#soilprop-legend-panel #sp_silder_nodepth {
		width: 100%;
		max-width: 100%;
	}
	#soilprop-legend-panel #sp_silder {
		min-height: 0;
	}
	#soilprop-legend-panel #sp_silder_nodepth {
		margin-top: 2px;
		min-height: 150px;
	}
	#popup-mobile > #sp_silder {
		height: auto;
		max-height: none;
		min-height: 132px;
		padding: 5px 7px;
	}
	#soilprop-legend-panel #sp_silder1 {
		display: flex;
		align-items: flex-start;
	}
	#soilprop-legend-panel #slide6 {
		height: 110px;
		margin: auto auto 8px 10px;
	}
	#soilprop-legend-panel #sp_silder11 {
		width: 23px;
		display: flex;
		align-items: flex-start;
	}
	#soilprop-legend-panel #sp_silder12 {
		width: 60px;
		padding-top: 0;
		height: auto;
		display: block;
	}
	#soilprop-legend-panel #sp_silder13 {
		width: 80px;
		padding-top: 0;
		display: block;
		align-items: initial;
	}
	#soilprop-legend-panel #sp_silder12 .layer_panel_text {
		height: 30px;
		font-size: 1rem;
		line-height: 1.2;
		white-space: nowrap;
	}
	#soilprop-legend-panel #layerpanel_tanni {
		height: 30px;
		width: auto;
		font-size: 0.9rem;
		line-height: 1.2;
		margin: 0;
		white-space: nowrap;
	}
	#soilprop-legend-panel #layerpanel_pic {
		width: auto;
		display: flex;
		justify-content: center;
	}
	#soilprop-legend-panel #sp_legend_img {
		width: 50px;
		height: 90px;
		margin-left: 12px;
		margin-top: -6px;
	}
	#soilprop-legend-panel #slide6::-webkit-slider-thumb {
		width: 12px;
		height: 12px;
	}
	#soilprop-legend-panel #slide6::-moz-range-thumb {
		width: 12px;
		height: 12px;
	}
	#popup-mobile > #sp_silder_nodepth {
		height: auto;
		max-height: none;
		min-height: 98px;
		padding: 5px 7px;
	}
	#sp_silder_title,
	#sp_silder_nodepth_title {
		font-size: 0.78rem !important;
		line-height: 1.15;
		margin-bottom: 2px !important;
	}
	#sp_silder .fs-5,
	#sp_silder_nodepth .fs-5 {
		font-size: 0.74rem !important;
		line-height: 1.1;
	}
	#sp_silder #span1,
	#sp_silder #span2 {
		font-size: 0.65rem;
	}
	#slide6 {
		height: 74px;
	}
	#sp_silder11 {
		width: 16px;
	}
	#sp_silder12 {
		width: 44px;
	}
	#sp_silder13 {
		width: 56px;
	}
	#sp_silder12 .layer_panel_text {
		height: 18px;
		font-size: 0.64rem;
		line-height: 1.05;
	}
	#layerpanel_tanni {
		width: auto;
		font-size: 0.58rem;
		line-height: 1.05;
	}
	#sp_legend_img {
		width: 28px;
		height: 60px;
		margin-left: 8px;
		margin-top: 0;
	}
	#sp_legend_nodepth_img {
		width: 40px;
		height: auto;
		max-height: 88px;
	}
	#soilprop-legend-panel #sp_legend_nodepth_img {
		width: 100% !important;
		height: 100% !important;
		max-height: none !important;
		object-fit: fill !important;
	}
	#legend_info_box {
		font-size: 0.74rem;
		line-height: 1.3;
	}
	#legend_info_box .legend-label {
		font-size: 0.74rem;
	}
	#legend_info_box .forest-legend-image-wrap {
		max-height: 42vh;
	}
	#seamless_legend_panel iframe {
		height: 200px;
	}
	#sp_legend_selector_wrap {
		padding: 5px 7px;
		font-size: 0.72rem;
		width: min(92vw, 230px);
		max-width: calc(100vw - 16px);
		margin-bottom: 4px;
	}
	#sp_legend_selector_label {
		display: block;
		margin: 0 0 4px 0;
	}
	#soilprop-legend-panel #sp_legend_selector_current {
		font-size: 0.84rem !important;
		width: 100%;
		max-width: 100%;
	}
	#sp_legend_selector_note {
		font-size: 0.68rem;
	}
	body {
		touch-action: manipulation;
	}
	#mapHeader {
		position: absolute;
		z-index: 998;
		padding: 5px;
		display: flex;
		flex-direction: row;
		width: 100%;
		background-color: black;
		-webkit-user-select: none;  /* Chrome, Safari, Opera */
	  -moz-user-select: none;     /* Firefox */
	  -ms-user-select: none;      /* IE 10+ */
		user-select: none;          /* Standard syntax */
		touch-action: manipulation; /* disable accidental zooming */
	}
	#layer-selection-warning {
		top: 58px;
		left: 8px;
		max-width: calc(100vw - 16px);
		font-size: 0.82rem;
	}
	#layer-loading-notice {
		top: 58px;
		left: 8px;
		max-width: calc(100vw - 16px);
		font-size: 0.82rem;
	}
	#show_layers {
		height: 38px;
		width: 40px;
		-webkit-user-select: none;  /* Chrome, Safari, Opera */
	  -moz-user-select: none;     /* Firefox */
	  -ms-user-select: none;      /* IE 10+ */
	  user-select: none;          /* Standard syntax */
		touch-action: manipulation; /* disable accidental zooming */
		.fas {
			display: flex;
			margin-top: 1px;
			margin-left: -6px;
		}
	}
	#layerListBox1 {
		position:relative;
		top: 0px;
		left: -5px;
		display: grid;
		grid-template-rows: minmax(84px, 49%) 8px minmax(74px, 51%) 0px;
		width: min(90vw, 310px);
		height: min(54vh, 400px);
		max-width: 92vw;
		max-height: min(54vh, 400px);
		padding: 8px;
		overflow: hidden;
		display: none;
		background-color: rgba(255, 255, 255, 0.9);
		border: solid 2px #0275d8;
		box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.2);
		-webkit-user-select: none;  /* Chrome, Safari, Opera */
	  -moz-user-select: none;     /* Firefox */
	  -ms-user-select: none;      /* IE 10+ */
	   user-select: none;          /* Standard syntax */
		touch-action: manipulation; /* disable accidental zooming */
	}
	#container1 {
		grid-row: 1;
	}
	#selected-layers-panel {
		grid-row: 3;
	}
	#layer-folders > li {
		font-size: 0.78rem;
		line-height: 1.1;
	}
	.selected-layers-title {
		font-size: 0.82rem;
	}
	.selected-layers-title-note {
		font-size: 0.78em;
	}
	#selected-layers-actions {
		gap: 4px;
	}
	#selected-layers-actions .btn {
		padding: 0.12rem 0.3rem;
		font-size: 0.64rem;
	}
	#container2 input[type="range"] {
		min-width: 0;
	}
	#container2 .form-check-label {
		font-size: 0.78rem;
	}
	.layer-folder li .form-check-label,
	.layer-folder li.folder-header > span {
		font-size: 0.78rem;
		line-height: 1.1;
	}
	.box-item {
		grid-template-columns: 18px 14px minmax(0, 1fr) minmax(72px, 92px) 24px;
		gap: 4px;
	}
	.selected-layer-delete {
		width: 18px;
		height: 18px;
		min-width: 18px;
		font-size: 13px;
		line-height: 18px;
	}
	#layer-pane-resizer {
		height: 12px;
	}
	#layer-box-resizer {
		display: none;
		height: 0;
	}
	.drag-handle {
		width: 24px;
		height: 24px;
	}
	#custom_controls {
		position: relative;
		z-index: 999;
		padding: 5px;
		margin-left: 0px;
		margin-right: auto;
		-webkit-user-select: none;  /* Chrome, Safari, Opera */
	  -moz-user-select: none;     /* Firefox */
	  -ms-user-select: none;      /* IE 10+ */
	  user-select: none;          /* Standard syntax */
		touch-action: manipulation; /* disable accidental zooming */
	}
	.search-bar {
		position: relative;
		padding: 5px;
		margin: 0 auto;
		width: 100%;
		-webkit-user-select: none;  /* Chrome, Safari, Opera */
	  -moz-user-select: none;     /* Firefox */
	  -ms-user-select: none;      /* IE 10+ */
	  user-select: none;          /* Standard syntax */
		touch-action: manipulation; /* disable accidental zooming */
		.search-list {
			position: absolute;
			z-index: 1000;
			overflow: auto;
			cursor: pointer;
			margin: 0 auto;
			padding-top: 5px;
			width: 97%;
			max-height: 350px;
		}
	}
	#new_dropdown {
		position: relative;
		padding: 5px;
		margin-left: 0;
		margin-right: 0px;
		-webkit-user-select: none;  /* Chrome, Safari, Opera */
	  -moz-user-select: none;     /* Firefox */
	  -ms-user-select: none;      /* IE 10+ */
	  user-select: none;          /* Standard syntax */
		touch-action: manipulation; /* disable accidental zooming */
	}
	#legend_toggle_box {
		position: relative;
		padding: 5px;
		margin-left: auto;
		margin-right: 0;
	}
	#show_legend_panel {
		height: 38px;
		min-width: 52px;
		padding: 0 8px;
		font-size: 0.82rem;
	}
	.dropdown-menu {
		top: 55px;
		right: 0;
		left: auto;
		-webkit-user-select: none;  /* Chrome, Safari, Opera */
	  -moz-user-select: none;     /* Firefox */
	  -ms-user-select: none;      /* IE 10+ */
	  user-select: none;          /* Standard syntax */
		touch-action: manipulation; /* disable accidental zooming */
	}
	#leftBox2 {
		top: 60px;
		left: 5px;
	}
}

@media screen and (min-width: 992px) {
	#soilprop-legend-panel.forest-legend-panel-wide {
		width: min(320px, 24vw) !important;
		max-width: min(320px, 24vw) !important;
	}
}

.terms-content-body {
	font-size: 0.92rem;
	line-height: 1.5;
}

.terms-content-body p {
	margin-bottom: 0.45rem;
}
