/* Case */

.page_archive #header {
	background: none;
}
.page_archive.fixed #header {
	background: #fff;
	background: #f3f3f3;
}
.page_archive #neck {
	margin-top: 0;
}

/* Hero */

#case_hero {
	position: relative;
	margin-bottom: 4.6em;
	height: 740px;
	height: 580px;
	background: #fcfcfc;
	overflow: hidden;
}
#case_hero #map {
	width: 100%;
	height: 100%;
	background: #fcfcfc;
}
#case_hero #map_static {
	width: 100%;
	height: 100%;
	background: #fdfdfd;
	background: none !important;
	opacity: 0;
	animation: map_reveal 600ms 1 linear forwards;
}
@keyframes map_reveal {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
.jqvmap-pin {
	width: 20px;
	height: 20px;
	background: url(../images/common/marker_country.png) no-repeat center / cover;
}
#case_summary_video {
	position: absolute;
	left: 0;
	top: 50%;
	width: 100%;
	height: 100%;
	opacity: 0.6;
	z-index: 0;
}
#case_summary_video video {
	width: 100%;
	transform: translateY(-50%);
}
#_case_summary_video_overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.5);
	animation: overlay_reveal 1000ms 600ms 1 linear forwards;
	z-index: 1;
	opacity: 1;
}
@keyframes overlay_reveal {
	0% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}
.jqvmap-region {
	fill-opacity: 0.85 !important;
}

/* List */

/* #case_list_filters {
	margin-bottom: 7em;
}
.case_list_filter {
	margin-bottom: 0;
	padding: 1.2em 0 0.5em 0;
	border-bottom: 1px solid #ededed;
}
#case_list_filter_fields {
	padding-bottom: 1.2em;
}
#_case_list_filter_tag {
	margin-bottom: 0;
}
.case_list_filter_heading {
	float: left;
	width: 10em;
}
.case_list_filter_heading h4 {
	margin-bottom: 1em;
	font-weight: 500;
}
.case_list_filter_all {
	width: 4.5em;
	text-align: center;
	padding: 0.4em 1em 0.5em 1em;
	color: #a2a2a2;
	background: #ededed;
	font-size: 0.87em;
	letter-spacing: 0.05em;
	border-radius: 50vh;
	transition: all 200ms linear;
}
.case_list_filter_all.active {
	color: #fff;
	background: #414241;
	transition: all 300ms linear;
}
._case_list_filter_all a {
	display: block;
	padding: 0.4em 1em 0.5em 1em;
	color: #a2a2a2 !important;
	background: #ededed;
	font-size: 0.87em;
	letter-spacing: 0.05em;
	border-radius: 50vh;
	text-decoration: none;
}
.case_list_filter_content {
	float: right;
	width: calc(100% - 11em);
}
.case_list_filter_field,
.case_list_filter_country,
.case_list_filter_tag,
.case_list_filter_all {
	cursor: pointer;
}
#case_list_filter_fields .case_list_filter_heading {
	padding-top: 1.6em;
}
.case_list_filter_field {
	float: left;
	position: relative;
	padding: 0.8em 1.2em 1em 1.2em;
	width: 12.1%;
	background: #ededed;
	text-align: center;
	border-radius: 7px;
	transition: all 200ms linear;
}
.case_list_filter_field::before {
	position: absolute;
	top: 10px;
	right: 8px;
	content: '';
	width: 15px;
	height: 15px;
	background: url(../images/common/icon_check_white.png) no-repeat center / 100%;
	opacity: 0;
	transition: all 200ms linear;
}
.case_list_filter_field.active {
	background: #414241;
	transition: all 300ms linear;
}
.case_list_filter_field.active::before {
	opacity: 1;
	transition: all 300ms linear;
}
.case_list_filter_field:not(:nth-of-type(7n)) {
	margin-right: 2.55%;
}
.case_list_filter_field:nth-of-type(7n + 1) {
	clear: both;
}
#_case_list_filter_field .case_list_filter_pane a {
	display: block;
	padding: 0.8em 1.2em 1em 1.2em;
	text-decoration: none;
}
.case_list_filter_icon {
	margin-bottom: 1em;
	transition: all 200ms linear;
}
.active .case_list_filter_icon {
	transition: all 300ms linear;
}
#case_list_filter_agriculture.case_list_filter_icon {
	background: url(../images/common/icon_agriculture.png) no-repeat center / 100% !important;
}
#case_list_filter_livestock.case_list_filter_icon {
	background: url(../images/common/icon_livestock.png) no-repeat center / 100% !important;
}
#case_list_filter_fishing.case_list_filter_icon {
	background: url(../images/common/icon_fishing.png) no-repeat center / 100% !important;
}
#case_list_filter_disposal.case_list_filter_icon {
	background: url(../images/common/icon_disposal.png) no-repeat center / 100% !important;
}
#case_list_filter_architecture.case_list_filter_icon {
	background: url(../images/common/icon_architecture.png) no-repeat center / 100% !important;
}
#case_list_filter_housecare.case_list_filter_icon {
	background: url(../images/common/icon_housecare.png) no-repeat center / 100% !important;
}
#case_list_filter_purify.case_list_filter_icon {
	background: url(../images/common/icon_purify.png) no-repeat center / 100% !important;
}
#case_list_filter_agricultureactive .case_list_filter_icon {
	background: url(../images/common/icon_agriculture_white.png) no-repeat center / 100% !important;
}
#case_list_filter_livestockactive .case_list_filter_icon {
	background: url(../images/common/icon_livestock_white.png) no-repeat center / 100% !important;
}
#case_list_filter_fishingactive .case_list_filter_icon {
	background: url(../images/common/icon_fishing_white.png) no-repeat center / 100% !important;
}
#case_list_filter_disposalactive .case_list_filter_icon {
	background: url(../images/common/icon_disposal_white.png) no-repeat center / 100% !important;
}
#case_list_filter_architectureactive .case_list_filter_icon {
	background: url(../images/common/icon_architecture_white.png) no-repeat center / 100% !important;
}
#case_list_filter_housecareactive .case_list_filter_icon {
	background: url(../images/common/icon_housecare_white.png) no-repeat center / 100% !important;
}
#case_list_filter_purifyactive .case_list_filter_icon {
	background: url(../images/common/icon_purify_white.png) no-repeat center / 100% !important;
}
.case_list_filter_field h5 {
	color: #909090;
	font-size: 0.8em;
	font-weight: 500;
	letter-spacing: 0.15em;
	transition: all 200ms linear;
}
.case_list_filter_field.active h5 {
	color: #fff;
	transition: all 300ms linear;
}

#_case_list_filter_countries .case_list_filter_heading {
	padding-top: 0.8em;
}
._case_list_filter_country {
	float: left;
	margin-right: 1em;
	width: 10.78%;
	width: 6%;
	text-align: center;
}
.__case_list_filter_country:not(:nth-of-type(8n)) {
	margin-right: 1.965%;
}
.__case_list_filter_country:nth-of-type(8n + 1) {
	clear: both;
}
.__case_list_filter_country:nth-last-of-type(n + 9) {
	margin-bottom: 1em;
}
._case_list_filter_flag {
	margin: 0 auto 0.3em auto;
	width: 98%;
	border-radius: 3px;
	background-color: #ededed !important;
	overflow: hidden;
	transition: all 200ms linear;
}
._case_list_filter_country.active .case_list_filter_flag {
	background-color: #414241 !important;
	transition: all 300ms linear;
}
._case_list_filter_country .case_list_filter_flag img {
	transition: all 200ms linear;
}
._case_list_filter_country.active .case_list_filter_flag img {
	filter: brightness(0) invert(1);
	transition: all 300ms linear;
}
.__case_list_filter_country h5 {
	position: relative;
	display: inline-block;
	font-size: 0.65em;
	letter-spacing: 0.05em;
	line-height: 1.3em;
	transition: all 200ms linear;
}


._case_list_filter_country {
	float: left;
	margin: 0 0.8em 0.8em 0;
	text-align: center;
}
._case_list_filter_country h5 {
	background: #ededed;
	border-radius: 4px;
	padding: 0.4em 1em 0.5em 1em;
	font-size: 0.86em;
	font-weight: 500;
	transition: all 200ms linear;
}
.__case_list_filter_country h5::before {
	position: absolute;
	top: 0.65em;
	left: 0;
	content: '';
	width: 12px;
	height: 12px;
	background: url(../images/common/icon_check.png) no-repeat center / 100%;
	opacity: 0;
	transition: all 200ms ease-out;
}
._case_list_filter_country.active h5 {
	padding-left: 15px;
	color: #fff !important;
	background: #414241;
	transition: all 300ms linear;
}
._case_list_filter_country.active h5::before {
	opacity: 1;
	transition: all 400ms ease-in;
}

#case_list_filter_tag .case_list_filter_heading {
	padding-top: 0.6em;
}
.case_list_filter_country,
.case_list_filter_tag {
	float: left;
	margin: 0 0.8em 0.8em 0;
	padding: 0.4em 1em;
	background: #ededed;
	border-radius: 4px;
	font-size: 0.86em;
	font-weight: 500;
	transition: all 200ms linear;
}
.case_list_filter_country.active,
.case_list_filter_tag.active {
	color: #fff !important;
	background: #414241;
	transition: all 300ms linear;
}
._case_list_filter_tag:not(:last-of-type) {
	margin-right: 0.8em;
}
._case_list_filter_tag a {
	display: block;
	padding: 0.4em 1em 0.5em 1em;
	font-size: 0.86em;
	font-weight: 500;
	text-decoration: none;
	transition: all 200ms linear;
}
._case_list_filter_tag.active a {
	color: #fff !important;
	transition: all 300ms linear;
}
#case_list_filter_active {
	position: fixed;
	bottom: 0;
	left: 0;
	padding: 0.5em 48px;
	padding: 0.65em 48px 0.5em 48px;
	width: 100%;
	background: #ededed;
	z-index: 1;
}
._filters_fixed #case_list_filter_active {
	top: 80px;
	opacity: 1;
	z-index: 10;
	transition: all 200ms ease-out;
}
#case_list_filter_active_action {
	float: right;
}
#case_list_filter_logic {
	float: left;
	color: #111;
	font-size: 0.87em;
	letter-spacing: 0.05em;
	text-align: center;
}
#_case_list_filter_logic p {
	float: left;
	margin-left: 0.5em;
	padding: 0.4em 1.5em 0.5em 1.5em;
	border-radius: 50vh;
	background: #fff;
	cursor: pointer;
}
#case_list_filter_logic p {
	float: left;
	margin-left: 0.75em;
	padding-top: 0.6em;
	line-height: 24px;
	font-weight: 500;
	vertical-align: middle;
}
#case_list_filter_logic p span {
	position: relative;
	display: inline-block;
	margin-left: 0.25em;
	margin-top: -2px;
	width: 22px;
	height: 22px;
	background: #fff;
	border-radius: 50%;
	vertical-align: middle;
}
#case_list_filter_logic p.active span::before {
	position: absolute;
	left: 5px;
	top: 5px;
	content: '';
	width: 12px;
	height: 12px;
	background: #111;
	border-radius: 50%;
}
.filter_logic {
	cursor: pointer;
}
#case_list_filter_search {
	float: left;
	margin-left: 1em;
	padding: 0.4em 1.5em 0.5em 1.5em;
	padding: 0.45em 1.5em;
	color: #fff;
	background: #50ad33;
	font-size: 0.87em;
	letter-spacing: 0.05em;
	border-radius: 50vh;
	text-align: center;
	cursor: pointer;
}
#case_list_filter_reset {
	float: left;
	margin-left: 1em;
	padding: 0.4em 1.5em 0.5em 1.5em;
	padding: 0.45em 1.5em;
	color: #fff;
	background: #a2a2a2;
	font-size: 0.87em;
	letter-spacing: 0.05em;
	border-radius: 50vh;
	text-align: center;
	cursor: pointer;
}
._case_list_filter_reset a {
	display: block;
	padding: 0.4em 1em 0.5em 1em;
	color: #a2a2a2 !important;
	background: #fff;
	font-size: 0.87em;
	letter-spacing: 0.05em;
	border-radius: 50vh;
	text-decoration: none;
}
#case_list_filter_active ul {
	float: right;
	float: left;
	position: relative;
	width: calc(100% - 215px);
	width: auto;
	overflow-x: scroll;
	white-space:nowrap;
}
#case_list_filter_active li {
	float: left;
	margin-right: 1em;
	padding: 0.4em 1em 0.5em 1em;
	padding: 0.4em 1em 0.35em 1em;
	color: #fff !important;
	font-size: 0.86em;
	font-weight: 500;
	background: #414241;
	border-radius: 4px;
	transition: all 200ms linear;
}
#_case_list_filter_active li a {
	display: block;
	padding: 0.4em 1em 0.5em 1em;
	color: #fff !important;
	font-size: 0.86em;
	font-weight: 500;
	text-decoration: none;
	transition: all 200ms linear;
}

#_case_list .case_pane {
	position: relative;
	margin-bottom: 36px;
	padding-bottom: 18px;
	padding-bottom: 0;
}
#_case_list .case_pane:not(:first-of-type):nth-of-type(3n + 1):before {
	position: absolute;
	top: -18px;
	left: 0;
	content: '';
	width: 324.15%;
	height: 1px;
	background: #ededed;
} */


/* Single */

#_case_content {
	margin-bottom: 5em;
}
.page_single #waist {
	margin-top: 196px;
}
#case_single_heading h2 {
	margin-bottom: 1em;
}
#_case_single_heading {
	position: relative;
	margin-bottom: 4.5em;
	padding: 1em 0 1em 45px;
	padding: 2.5em 1em;
	padding: 2.65em 1.5em 2.3em 1.5em;
	border-top: solid 1px #ccc;
	border-bottom: solid 1px #ccc;
	background: url(../images/common/icon_case.png) no-repeat center left / 30px;
	background: none;
}
#_case_single_heading h2 {
	margin-bottom: 1em;
	padding-right: 60px;
	font-size: 1.3em;
	font-size: 1.55em;
	font-weight: 500;
}
#_case_single_heading .case_country_flag {
	position: absolute;
	right: 0;
	top: 2.5rem;
	width: 39px;
	aspect-ratio: 3 / 2;
	border-radius: 3px;
	background-color: #ededed !important;
	overflow: hidden;
}
#case_single_heading #case_desc {
	margin-bottom: 1.5em;
	float: none;
	width: 100%;
	color: #777;
	font-size: 1.15em;
	letter-spacing: 0.1em;
	letter-spacing: 0.05em;
	line-height: 1.8em;
	line-height: 1.6em;
}

/* .case_tags li {
	float: left;
	margin: 0 0.5rem 0.5rem 0;
	padding: 0.75em 1.2em;
	border-radius: 200px;
	font-size: 0.85em;
	color: #909090;
	line-height: 1em;
	letter-spacing: 0;
	background: #ebebec;
	overflow: hidden;
}
.case_tags li a {
	text-decoration: none;
	color: #909090 !important;
}
.case_tags li::before {
	margin-right: 0.25em;
	content: '#';
} */
.case_date {
	float: right;
	margin-top: 3.5em;
	padding-top: 1em;
	text-align: right;
	font-size: 0.85em;
	border-top: solid 1px #111;
	color: #777;
}
#_case_single {
	margin-bottom: 9em;
}

#_case_single_meta {
	position: sticky;
	top: 100px;
	float: left;
	width: 100px;
	width: 120px;
}
#_case_single_meta h2 {
	color: #ddd;
	font-size: 1.2em;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1em;
		-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}
#_case_single_meta h2 a {
	color: #ddd !important;
	color: #111 !important;
	text-decoration: none;
}

#_case_single_article {
	float: right;
	width: calc(100% - 130px);
	width: calc(100% - 150px);
}

#case_country {
	position: absolute;
	top: 20px;
	right: 20px;
	width: 55px;
	text-align: center;
}
#case_country_flag {
	margin: 0 auto 0.3em auto;
	width: 98%;
	aspect-ratio: 3 / 2;
	background: #ccc;
	border-radius: 3px;
	overflow: hidden;
}
#case_country h5 {
	color: #909090;
	font-size: 0.67em;
	line-height: 1.5em;
}
#_case_heading h2 {
	margin-bottom: 1.2em;
	font-size: 2em;
	font-weight: 500;
	line-height: 1.6em;
}
#_case_summary{
	margin-bottom: 5em;
}
#_case_fields {
	float: left;
	width: 80px;
}
._field_multiple #case_fields {
	width: 170px;
}
._case_field_pane {
	display: block;
	float: left;
	padding: 0.5em 1em 0.7em 1em;
	padding: 13px 0;
	min-width: 80px;
	background: #ededed;
	text-align: center;
	border-radius: 7px;
	text-decoration: none;
}
._case_field_pane:nth-last-of-type(n + 3) {
	margin-bottom: 10px;
}
._field_multiple .case_field_pane:nth-of-type(odd) {
	margin-right: 10px;
}
._field_multiple .case_field_pane:nth-of-type(2n + 1) {
	clear: both;
}
._case_field_icon {
	margin: 0 auto 0.3em auto;
	width: 52px;
}
#_case_field_agriculture .case_field_icon {
	background: url(../images/common/icon_agriculture.png) no-repeat center / 100%;
}
#_case_field_livestock .case_field_icon {
	background: url(../images/common/icon_livestock.png) no-repeat center / 100%;
}
#_case_field_fishing .case_field_icon {
	background: url(../images/common/icon_fishing.png) no-repeat center / 100%;
}
#_case_field_disposal .case_field_icon {
	background: url(../images/common/icon_disposal.png) no-repeat center / 100%;
}
#_case_field_architecture .case_field_icon {
	background: green url(../images/common/icon_architecture.png) no-repeat center / 100%;
}
#_case_field_housecare .case_field_icon {
	background: green url(../images/common/icon_housecare.png) no-repeat center / 100%;
}
._case_field_pane h5 {
	color: #909090;
	font-size: 0.8em;
	font-weight: 500;
	line-height: 1.5em;
	letter-spacing: 0.08em;
}
#_case_desc {
	float: right;
	width: calc(100% - 107px);
	width: calc(100% - 115px);
	color: #777;
	font-size: 1.15em;
	letter-spacing: 0.1em;
	line-height: 1.8em;
}
._field_multiple #case_desc {
	width: calc(100% - 207px);
}
#case_main_image {
	margin-bottom: 4em;
}

#_case_content h3 {
	margin-bottom: 1em;
	font-size: 1.47em;
}
#_case_content h4 {
	margin-bottom: 1.24em;
	font-size: 1.25em;
}
._case_content_text {
	margin-bottom: 3em;
}
._case_content_image {
	margin-bottom: 3em;
}
._case_content_image .caption {
	margin-top: 0.75em;
	color: #ccc;
	color: #bbb;
	font-size: 0.8em;
	line-height: 1.5em;
	letter-spacing: 0.1em;
}
._case_content_images {
	margin-bottom: 3em;
}
._case_content_images .case_content_image {
	float: left;
	margin-bottom: 0;
}
._case_content_images_2 .case_content_image {
	width: 48.6%;
}
._case_content_images_2 .case_content_image:nth-of-type(even) {
	float: right;
}
._case_content_images_3 .case_content_image {
	width: 32.5%;
}
._case_content_images_3 .case_content_image:nth-of-type(2n) {
	margin: 0 1.25%;
}
._case_content_image_text,
._case_content_text_image {
	margin-bottom: 3em;
}
._case_content_image_text,
._case_content_text_image {
	margin-bottom: 3em;
}
._case_content_image_text .case_content_image,
._case_content_text_image .case_content_image {
	margin-bottom: 1em;
	width: 48%;
}
._case_content_image_text .case_content_text,
._case_content_text_image .case_content_text {
	margin-bottom: 0;
}
._case_content_image_text .case_content_image {
	float: left;
	margin-right: 4%;
}
._case_content_text_image .case_content_image {
	float: right;
	margin-left: 4%;
}
._case_content_video {
	margin-bottom: 3em;
	width: 100%;
	aspect-ratio: 16 / 9;
}
._case_content_video iframe {
	width: 100%;
	height: 100%;
}
#_case_content ul {
	list-style-type: disc;
	list-style-position: inside;
}
#_case_content ol {
	list-style-type: decimal;
	list-style-position: inside;
}

/** Others **/

#case_others {
	margin-bottom: 0;
	padding: 4.5em 0;
	background: #f8f8f8;
}
#case_others_slide .case_pane {
	margin: 0 !important;
	padding: 0 !important;
	margin-right: 1.8625% !important;
	padding-right: 1.8625% !important;
	border-left: none !important;
	border-right: 1px solid #ededed !important;
	border-right: 1px solid #ddd !important;
}
#case_others_slide .case_pane:last-of-type {
	border-right: none !important;
}
#case_tags {
	margin-top: 5em;
}
.case_tag {
	float: left;
}
.case_tag:not(:last-of-type) {
	margin-right: 1em;
}
.case_tag a {
	display: block;
	padding: 0.35em 1em 0.4em 1.1em;
	color: #909090 !important;
	background: #ebebec;
	font-size: 0.85em;
	border-radius: 50vh;
	text-decoration: none;
}

.page_single.page_case #footer {
	margin-top: 0;
}