body, html {
	width: 100%;
	min-height: 100vh;
	padding: 0;
	margin: 0;
	background: url(img/bg.jpg);
	background-size: 100% 100%;
	/*-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;*/
	background-repeat: no-repeat;
	background-attachment: fixed;
	text-align: center;
}

html * {
	padding: 0;
	margin: auto;
	border: 0;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	position: relative;
	font-size: 3.6vw;
	line-height: 4.5vw;
	font-family: 'PT Sans Narrow', sans-serif;
}

a {
	text-decoration: none;
}

h1, h2, h3, h4, h5, h6 {
	margin: 0;
	padding: 0;
	font-weight: 400;
}

p {
	color: #ffffff;
}

p img {
	vertical-align: bottom;
}

hr {
	content: '';
	display: block;
	width: 100%;
	height: 0.3vw;
	background-color: #FFFFFF;
	border: 0;
}

.clearfix {
	display: block;
	width: 0;
	height: 0;
	clear: both;
}

.font-50 {
	color: #FFFFFF;
	text-transform: uppercase;
	font-size: 1.25em;
	line-height: 1.1em;
	letter-spacing: 0.2vw;
}

.font-40 {
	color: #FFFFFF;
	text-transform: uppercase;
	font-size: 1.0em;
	line-height: 1.0em;
	letter-spacing: 0.15vw;
}

.font-30 {
	color: #FFFFFF;
	font-size: 0.75em;
	line-height: 1em;
}

.page {
	padding: 12vw 0 13.5vw;
}

.padding {
	padding: 2.5vw;	
}

.logo_02 {
	width: 57.4vw;
	height: 22vw;
	margin: 20vw auto 2vw;
}

.form .font-50 {
	font-family: 'PT Sans', sans-serif;
	padding-bottom: 2vw;
	letter-spacing: 0.2vw;
}

.form input {
	display: block;
	width: 50vw;
	height: auto;
	padding: 2vw;
	margin: 2vw auto 0 auto;
	text-align: center;
	text-transform: uppercase;
	letter-spacing: 0.2vw;
	border: 0.3vw solid #ffffff;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
	background-color: transparent;
	color: #ffffff;
}

.form input::placeholder,
.settings_form input::placeholder,
.settings_form textarea::placeholder {
	color: #ffffff;
	letter-spacing: 0.2vw;
	opacity: 1;
}

.form input[type=submit] {
	margin: 12vw auto 4vw auto;
	background-color: #ffffff;
	color: #00aeef;
	cursor: pointer;
	-webkit-appearance: none;
}

.form a {
	color: #FFFFFF;
	text-decoration: underline;
	text-transform: uppercase;
	letter-spacing: 0.2vw;
	margin: auto 3vw 0;
}

.form input:focus,
.settings_form input:focus,
.settings_form textarea:focus,
select:focus {
	outline: none;
}

.form input:focus::placeholder,
.settings_form input:focus::placeholder ,
.settings_form textarea:focus::placeholder  {
	color: transparent;
}

.form input:disabled
{
	opacity: 0.5;
}

.fixed-menu {
	position: fixed;
	bottom: 0;
	width: 100%;
	height: 13.5vw;
	background-image: url(img/bg.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center bottom;
	z-index: 1000;
}

.fixed-menu ul {
	width: 100%;
	height: inherit;
	background-color: rgba(255,255,255,0.3);
	list-style: inside none;
}

.fixed-menu ul li {
	display: block;
	width: 20%;
	padding: 1.5vw;
	float: left;
}

.fixed-menu ul li a {
	display: block;
	width: 100%;
	height: 10.5vw;
}

.fixed-menu ul li a img {
	display: block;
	width: 7vw;
	height: 7vw;
}

.fixed-menu ul li a p {
	padding: 0.5vw 0;
	text-transform: uppercase;
}

.fixed-menu ul li a.marked::after {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	right: 4.5vw;
	width: 2vw;
	height: 2vw;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	background-color: #FF0000;
}

.top-stripe {
	/*position: static;*/
	position: fixed;
	width: 100%;
	height: 12vw;
	/*background-color: rgba(199,199,204,0.3);*/
	/*background-color: rgba(255,255,255,0.3);
	background-image: url(img/bg.jpg);*/

	background:
			linear-gradient(
					rgba(199,199,204, 0.3),
					rgba(199,199,204, 0.3)
			),
			url(img/bg.jpg);

	background-size: cover;
	background-repeat: no-repeat;
	background-position: center bottom;
	z-index: 1000;
}

.top-stripe > .font-50 {
	text-align: left;
	line-height: 12vw;
	padding: 0 12.5vw 0 24vw;
}

.profile_icon {
	display: block;
	position: absolute;
	top: 2.5vw;
	left: 2.5vw;
	width: 7vw;
	height: 7vw;
	z-index: 5;
}

.profile_icon img {
	width: 100%;
	height: 100%;
}

.logo-icon {
	display: block;
	position: absolute;
	top: 2.5vw;
	left: 14.5vw;
	width: 7vw;
	height: 7vw;
	z-index: 5;
}

.menu_button {
	width: 7.5vw;
	height: 7vw;
	position: absolute;
	top: 2.5vw;
	right: 2.5vw;
	cursor: pointer;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	z-index: 5;
}

.menu_button.on {
	background-image: url(img/menu_02.png);
}

.menu_button.off {
	background-image: url(img/menu.png);
}

.menu {
	display: none;
	width: 100%;
	background: url(img/bg.jpg);
	background-size: 100% 100%;
	background-repeat: no-repeat;
	margin-bottom: 13.5vw;
	z-index: 999;
}

.menu ul {
	padding: 0vw 2.5vw 2.5vw; 
	width: 100%;
	height: 100%;
	background-color: rgba(255,255,255,0.5);
	list-style: inside none;
}

.menu ul li {
	display: block;
	width: 100%;
	padding: 2.5vw 0 0;
}

.menu ul li.sb {
	display: block;
	width: 100%;
	padding: 0;
}

.menu ul li::before {
	content: "●";
	position: absolute;
	top: 2.5vw;
	left: 5vw;
	display: inline-block;
	width: 8.7vw;
	height: 8.7vw;
	line-height: 8.1vw;
	color: #FFFFFF;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
	border: 0.3vw solid #FFFFFF;
}

.menu ul li.sb::before {
	content: "●";
	position: absolute;
	top: 0.7vw;
	left: 6.5vw;
	display: inline-block;
	width: 6vw;
	height: 6vw;
	line-height: 6vw;
	color: #FFFFFF;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
	border: 0.3vw solid #FFFFFF;
}

.menu ul li a {
	display: block;
	width: 100%;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
	text-align: left;
	padding: 2.5vw 0 2.5vw 17vw;
}

.menu ul li.sb a {
	display: block;
	width: 100%;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
	text-align: left;
	padding: 1.5vw 0 2.5vw 17vw;
}

.menu ul li a:hover {
	background-color: rgba(255,255,255,0.3);
}

.search {
	display: block;
	width: auto;
	margin-right: 9.5vw;
	padding: 0 0 2.5vw 0;
}

.search2 {
	display: block;
	width: 100%;
	padding: 0 0 2.5vw 0;
}

.search_field {
	width: 100%;
	height: 8.7vw;
	line-height: 6.7vw;
	padding: 1vw 9vw 1vw 2.5vw;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
	border: 0.3vw solid #FFFFFF;
	background-color: transparent;
	color: #FFFFFF;
	outline: none;
}

.filter_icon {
	display: block;
	position: absolute;
	top: 1vw;
	right: 0;
	width: 7vw;
	height: 7vw;
	z-index: 2;
}

.search_button {
	display: block;
	width: 7vw;
	height: 7vw;
	position: absolute;
	top: 1vw;
	right: 1vw;
	background-color: transparent;
	outline: none;
	cursor: pointer;
}

.filter_icon img,
.search_button img {
	display: block;
	width: 7vw;
	height: 7vw;
}


.title p a
{
	text-decoration: none;
	color: #FFFFFF;
	cursor: pointer;

}

.info_box {
	width: 100%;
	min-height: 12.5vw;
	padding: 1vw 1vw 1vw 12.5vw;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
	border: 0.3vw solid #FFFFFF;
	margin-bottom: 2.5vw;
}

.info_box::before {
	content: '';
	display: block;
	position: absolute;
	top: 1vw;
	left: 1vw;
	width: 10vw;
	height: 10vw;
	-webkit-border-radius: 1.75vw;
	-moz-border-radius: 1.75vw;
	border-radius: 1.75vw;
	background-color: rgba(255,255,255,0.5);
}

.info_box p {
	text-align: left;
}

.info_box::after {
	content: '';
	display: block;
	position: absolute;
	height: 9vw;
}

.warning::after {
	background: url(img/info_icon_01.png);
	background-size: contain;
	background-repeat: no-repeat;
	width: 1.5vw;
	top: 1.5vw;
	left: 5.5vw;
}

.motivation::after {
	background: url(img/info_icon_02.png);
	background-size: contain;
	background-repeat: no-repeat;
	width: 4vw;
	top: 3vw;
	left: 4vw;
}

.scoreboard {
	padding: 3vw 0 0;
}

.score {
	height: 20vw;
	overflow: hidden;
	margin-top: 2vw;
}

.score .font-50 {
	position: absolute;
	left: 24vw;
	top: 2vw;
	color: #FFFFFF;
	text-transform: uppercase;
}

.score img {
	width: 100%;
	height: auto;
}

.profile_member_box hr,
.boost_box hr {
	margin: 2.5vw 0;
}

.profile_member,
.boost {
	text-align: left;
	padding-left: 28vw;
	min-height: 28vw;
}

.profile_photo,
.boost_photo {
	position: absolute;
	top: 0;
	left: 0;
	width: 25.8vw;
	height: 25.8vw;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
}

.profile_name,
.boost_title {
	padding: 1.5vw 0 2.5vw;
}

.boost_title {
	text-overflow: ellipsis;
}

.profile_text,
.boost_text {
	text-align: left;
}

.profile_text img,
.boost_text img {
	width: auto;
	height: 4vw;
}

.profile_text a,
.boost_text a {
	text-decoration: underline;
	color: #FFFFFF;
}

.profile_text a:hover,
.boost_text a:hover {
	text-decoration: none;
}

.profile_text.right_space,
.boost_text.right_space {
	padding-right: 10vw;
	min-height: 15.4vw;
}

.profile_text.right_space .icons,
.boost_text.right_space .icons,
.stats_diagram .icons{
	width: 8.7vw;
	height: auto;
	text-align: right;
	position: absolute;
	right: 0;
	bottom: 0;
}

.profile_text.right_space .icons .icon1,
.profile_text.right_space .icons .icon2 {
	display: block;
	width: 5.2vw;
	height: 5.2vw;
	margin: 0 0 2.5vw 0; 
	background-size: contain;
	text-decoration: none;
}

.boost_text.right_space .icons .icon3,
.stats_diagram .icons .icon3{
	display: block;
	width: 8.7vw;
	height: 8.7vw; 
	background-size: 4vw 4vw;
	background-position: center center;
	background-repeat: no-repeat;
	text-decoration: none;
	border: 1px solid #FFFFFF;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
}

.profile_text.right_space .icons .icon1 {
	text-align: right;
	font-size: 0.5em;
	line-height: 0.25em;
	font-weight: 700;
	background-image: url(img/icon_07.png);
}

.profile_text.right_space .icons .icon2 {
	background-image: url(img/icon_echo.png);
}

.boost_text.right_space .icons .icon3,
.stats_diagram .icons .icon3 {
	background-image: url(img/icon_lock.png);
}

.profile_section {
	text-align: left;
	width: 100%;
}

.round_button {
	width: 30vw;
	text-align: center;
	padding: 2.5vw;
	color: #FFFFFF;
	margin: 0 0 2.5vw 0;
	border: 1px solid #FFFFFF;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
	float: left;
}

.round_button:nth-of-type(even) {
	margin-left: 10vw;
	float: right;
}

.round_button.disabled:after {
	content: '';
	background-image: url(img/icon_lock.png); 
	background-size: contain;
	position: absolute;
	top: 2.5vw;
	right: 2.5vw;
	width: 4vw;
	height: 4vw;
}

.squares {
	width: 62vw;
	float: right;
}

.square {
	width: 19vw;
	height: 19vw;
	margin: 0 2.5vw 2.5vw 0;
	border: 0.3vw solid #FFFFFF;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
	float: left;
	overflow: hidden;
}

.square img {
	width: 100%;
	height: 100%;
}

.square:nth-of-type(3n) {
	margin: 0 0 2.5vw 0;
}

.program_title {
	display: block;
	max-width: 100%;
	overflow: hidden;
	text-align: left;
}

.program_title * {
	display: block;
	width: 100%;
	color: #FFFFFF;
	text-transform: uppercase;
	text-align: left;
	overflow: hidden;
	white-space: nowrap;
  text-overflow: ellipsis;
}

.program_box .program_title {
	padding-right: 10vw;
}

.program_pic {
	position: absolute;
  top: 0;
  left: 0;
  width: 25.8vw;
  height: 25.8vw;
  -webkit-border-radius: 2vw;
  -moz-border-radius: 2vw;
  border-radius: 2vw;
	overflow: hidden;
	z-index: 2;
}

.program_box .program_pic {
	top: 7vw;
}

.program_box.detail .program_pic {
	top: 0;
}

.program_box + hr {
	margin-bottom: 4vw;
}

.program_pic img {
	width: 100%;
	height: 100%;
}

.program_pic:before,
.program_photo:before {
	content: '';
	display: block;
	width: 100%;
	height: 1vw;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 100;
}

.program_pic.cat_01:before { background-color: rgb(0,122,255); }
.program_pic.cat_02:before { background-color: rgb(245,145,10); }
.program_pic.cat_03:before { background-color: rgb(0,255,0); }
.program_pic.cat_04:before { background-color: rgb(255,225,0); }
.program_pic.cat_05:before { background-color: rgb(245,71,255); }

.program_left_content {
	padding: 2vw 0 0 30vw;
	min-height: 28.4vw;
}

.program_perex {
	height: 9vw;
	text-align: left;
	overflow: hidden;
	padding-right: 13vw; /* 7 */
}

.program_perex_box .program_title * {
	overflow: hidden;
	white-space: normal;
  text-overflow: auto;
    height: 10vw;
}

.program_box.detail .program_perex {
	margin-top: 2.5vw;
}

.program_perex .more {
	color: rgb(200,199,204);
	font-size: 5vw;
}

.program_perex .name {
	display: block;
	font-size: 4vw;
	color: rgb(200,199,204);
}

.challenge {
	margin-bottom: 3.5vw;
}

.challenge .program_pic {
	top: 0;
}

.challenge .program_title {
	/*width: ;*/
	margin: 0;
}

.challenge .program_title * {
	white-space: normal;
	text-overflow: initial;
	/*min-height: 64px;*/
}

.program_stats {
	text-align: right;
	position: absolute;
	bottom: 0;
	right: 0;
}

.challenge .program_stats {
	position: absolute;
	bottom: 3.6vw;
	right: 0;
}

.program_left_content .users {
	text-align: left;
	padding-bottom: 2.5vw;
}

.program_left_content .photo_user {
	display: inline-block;
	margin: 1vw 1vw 0 0;
	width: 12vw;
	height: 12vw;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
	overflow: hidden;
}

.program_left_content .photo_user img {
	display: block;
	width: 100%;
	height: 100%;
}

.nr {
	font-size: 1.85vw;
	font-weight: bold;
	line-height: 3vw;
	width: 100%;
	height: auto;
	text-align: center;
}

.nr2 {
	position: absolute;
	right: 0.8vw;
	top: 0;
	font-size: 1.85vw;
	font-weight: bold;
	line-height: 3vw;
	text-align: center;
}

.stats_box {
	display: block;
	float: right;
	text-align: center;
	margin-left: 3.7vw;
}

.stats_wrap {
	display: block;
	width: 11.5vw;
	height: 11.5vw;
	padding: 2vw;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
	border: 0.3vw solid #FFFFFF;
}

.stats_wrap.red {
	border-color: #FF0000;
}

.stats_wrap.orange {
	border-color: #FFCC00;
}

.stats_wrap img {
	display: block;
	width: 7.5vw;
	height: 7.5vw;
}

.stats_wrap.center img {
	margin-top: 1vw;
	width: 4.5vw;
	height: 4.5vw;
}

.stats_wrap.marked::after {
	content: '';
	display: block;
	position: absolute;
	right: -0.75vw;
	top: -0.75vw;
	width: 2vw;
	height: 2vw;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	background-color: #FF0000;
}

.options_button {
	display: block;
	width: 7.5vw;
	height: 7.5vw;
	position: absolute;
	top: 0;
	right: 0;
}

.options_button_2 {
	display: block;
	width: 7.5vw;
	height: 7.5vw;
	position: absolute;
	top: 2.5vw;
	right: 2.5vw;
}

.options_button img,
.options_button_2 img {
	display: block;
	width: 100%;
	height: 100%;
}

.options_menu {
	display: none;
	position: absolute;
	top: 12vw;
	width: 100vw;
	height: calc(100vh - 24vw);
	background: url(img/bg.jpg);
	background-size: 100% 100%;
	overflow-y: auto;
	z-index: 50;
}

.options_menu ul {
	width: 100%;
	min-height: 100%;
	padding: 10vw;
	list-style: none;
	background-color: rgba(255,255,255,0.5);
}

.options_menu ul li {
	width: 100%;
	height: auto;
	margin-bottom: 2.5vw;
}

.options_menu ul li a {
	display: block;
	text-align: left;
	width: 100%;
	height: auto;
}

.options_menu ul li a .icon {
	display: inline-block;
	width: 8.7vw;
	height: 8.7vw;
	border: 0.3vw solid #ffffff;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
	padding: 1vw;
	vertical-align: middle;
	margin-right: 2.5vw;
}

.options_menu ul li a .icon img {
	width: 100%;
	height: 100%;
}

.options_menu ul li a .font-50 {
	display: inline-block;
	line-height: 8.7vw;
	vertical-align: middle;
}

.options_menu ul li .social_links {
	padding-left: 15vw;
}

.options_menu ul li .social_links .font-50 {
	margin: 2vw;
}

.program_badge {
	width: 4.5vw;
	height: auto;
	position: absolute;
	right: 0;
	top: 0;
}

.program_box.detail .program_badge {
	top: auto;
	bottom: 0;
}

.program_badge img {
	width: 4.5vw;
	height: 4.5vw;
}

.program_dates {
	width: 100%;
	margin-top: 1vw;
    top: 4vw;
}

.program_dates.show_program {
    margin-top: 5vw;
    top: 0;
}

.program_dates .date_first {
	text-align: left;
	margin: 0;
}

.program_dates .date_last {
	position: absolute;
	top: 0;
	right: 0;
	text-align: right;
}

.program_photos_box {
	left: 50%;
	transform: translateX(-50%);
	width: 100vw;
	max-width: 100vw;
	height: 12vw;
	margin-top: 3.6vw;
	overflow: hidden;
	white-space: nowrap;
}

.photos_box_carousel {
	width: 100%;
	height: auto;
	font-size: 0;
	text-align: center;
}

.completed_half {
	text-align: left;
	float: left;
	width: 50%;
}

.completed_half .count {
	position: absolute;
	right: 0;
	top: 1vw;
}

.completed_half .program_photos_box {
	position: absolute;
	left: auto;
	right: 0;
	width: 200%;
	text-align: right;
	white-space: normal;
	transform: translateX(0) scaleX(-1);
}

.completed_half .photos_box_carousel {
	text-align: right;
	right: 0;
}

.completed_half .photos_box_carousel .slide {
	float: left;
}

.completed_half .logo_badge {
	width: 22.5vw;
	height: 22.5vw;
	margin: 2.5vw 2.5vw 0;
}

.completed_half .logo_badge img {
	width: auto;
	height: 100%;
}

.completed_half .rocket {
	display: block;
	position: absolute;
	right: 0;
	bottom: 0;
	border: 0.3vw solid #FFF;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
	width: 12vw;
	height: 12vw;
	padding: 1vw;
}

.completed_half .rocket img {
	width: 10vw;
	height: 10vw;
}

.congrats {
	margin-top: 2.5vw;
	font-weight: 700;
	line-height: 7vw;
	letter-spacing: 0.35vw;
	text-transform: uppercase;
	border: 0.7vw double #FFF;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
	background-color: #00aeef;
}

.slide {
	height: 12vw;
	width: 9vw;
	display: inline-block;
}

.add_photo.yellow {
	background-color: rgba(255,255,0,0.4);
}

.add_photo.red {
	background-color: rgba(255,0,0,0.4);
}

.photo_link {
	width: 100%;
	height: 100%;
}

.slide:first-of-type .photo_link {
	-webkit-border-radius: 2vw 0 0 2vw;
	-moz-border-radius: 2vw 0 0 2vw;
	border-radius: 2vw 0 0 2vw;
}

.add_photo {
	-moz-border-radius: 0 2vw 2vw 0;
	-webkit-border-radius: 0 2vw 2vw 0;
	border-radius: 0 2vw 2vw 0;
}

.slide:hover .photo_link {
	-ms-transform: scale(2); /* IE 9 */
  -webkit-transform: scale(2); /* Safari 3-8 */
  transform: scale(2); 
	-moz-border-radius: 1vw;
	-webkit-border-radius: 1vw;
	border-radius: 1vw;
	z-index: 999;
}

.slide:hover .photo_link p {
	position: absolute;
	top: -1vw;
	right: 0.5vw;
	color: #FFFFFF;
	font-size: 1.85vw;
}

.slide:hover:before {
	content: '';
	display: block;
	position: absolute;
	top: -12vw;
	right: -5vw;
	width: 0.5vw;
	height: 30vw;
	background-color: #FF0000;
	z-index: 999;
}

.slide:nth-last-of-type(2):hover:before {
	display: none;
}

.slide:hover:after {
	content: '';
	display: block;
	position: absolute;
	top: -12vw;
	right: -12vw;
	width: 0;
	height: 0;
	border: 3.6vw solid transparent;
	border-left: 3.6vw solid #FF0000;
	z-index: 999;
}

.slide:nth-last-of-type(2):hover:after {
	display: none;
}

.photo_link, .add_photo {
	display: block;
	top: 0;
	width: 100%;
	height: 100%;
	border: 0.3vw solid #FFFFFF;
	overflow: hidden;
}

.add_photo span {
	display: block;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	color: #FFFFFF;
}

.add_photo:hover span {
	font-size: 4.5vw;
}

.photo_link img {
	width: auto;
	min-width: 100%;
	height: 100%;
	margin-left: 50%;
	transform: translateX(-50%);
}

.program_description {
	overflow: hidden;
	text-align: left;
	padding: 0 0 0 65%;
	margin: 2.5vw 0;
	height: 9vw;
    top: -7vw;
}

.program_comment {
	margin-top: 2.5vw;
	width: 100%;
	padding: 2vw 2vw 2vw 15vw;
	border: 0.3vw solid #FFFFFF;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
	text-align: left;
}

.program_comment .photo {
	width: 12vw;
	height: 12vw;
	display: block;
	position: absolute;
	top: 1vw;
	left: 1vw;
	-webkit-border-radius: 1.5vw;
	-moz-border-radius: 1.5vw;
	border-radius: 1.5vw;
}

.program_comment .text_info {
	line-height: 5.5vw;
}

.program_comment .text_info .time {
	padding: 0 2vw;
}

.program_comment .text_info .starter {
	color: rgb(200,199,204);
}

.program_comment .text_info .username {
	color: #FFFFFF;
}

.program_comment .text img {
	display: inline-block;
	margin: 0 0.6vw;
}

.on_off_switch {
	height: 7vw;
  display: inline-block;
  position: relative;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.on_off_switch input {
  position: absolute;
	left: 0;
	top: 1.25vw;
  opacity: 0;
  cursor: pointer;
}

.checkmark {
  position: absolute;
  top: 1.25vw;
  left: 0;
  height: 5vw;
  width: 8.5vw;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
  border: 0.3vw solid rgba(255,255,255,0.8);
}

.on_off_switch:hover input ~ .checkmark {
  border: 0.3vw solid rgba(255,255,255,1);
}

.checkmark:after {
  content: "";
  position: absolute;
  top: 0.35vw;
  left: 0.35vw;
  display: block;
	width: 3.7vw;
	height: 3.7vw;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
  background-color: rgba(255,255,255,0.3);
	transition: all ease 0.3s;
}

.on_off_switch input:checked ~ .checkmark:after {
  left: 3.9vw;
  background-color: rgba(255,255,255,1);
}

.friend_box {
	width: 100%;
	text-align: left;
	padding: 1.5vw 0 2vw;
}

.friend {
	width: 100%;
	text-align: left;
	padding-left: 14vw;
}

.small_photo {
	display: block;
	width: 11.5vw;
	height: 11.5vw;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
	overflow: hidden;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 5;
}

.small_photo img {
	display: block;
	width: 100%;
	height: 100%;
}

.buddy_box {
	width: 100%;
}

.buddy_name {
	display: block;
	width: 100%;
	text-align: left;
	padding-left: 14vw;
}

.buddy_name .font-50 {
	line-height: 8vw;
}

.buddy_box .text {
	padding: 4vw 0 0;
}

.buddy_stats  {
	text-align: left;
}

.buddy_stats .stats_box {
	float: none;
	display: inline-block;
	width: 8.7vw;
	height: auto;
	margin: 0 2vw 2.5vw 0;
}

.buddy_stats .stats_wrap {
	display: block;
	width: 8.7vw;
	height: 8.7vw;
	padding: 1vw;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
	border: 0.3vw solid #FFFFFF;
}

.buddy_stats .stats_wrap img {
	display: block;
	width: 5.7vw;
	height: 5.7vw;
}

.buddy_stats .reply {
	position: absolute;
	right: 0;
	bottom: 2.5vw;
	display: block;
	height: 8.7vw;
	padding: 2vw 5vw;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
	border: 0.3vw solid #FFFFFF;
	text-align: center;
	text-transform: uppercase;
	color: #FFF;
}

.transparent_box {
	background-color: rgba(255,255,255,0.3);
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
	margin: 4vw 0 0;
	padding: 2.5vw 2.5vw 0 2.5vw;
}

.popup_text{
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	z-index: 1000;
	padding: 2.5vw;
}

.close_popup {
	position: absolute;
	width: 100%;
	height: 100%;
}

.popup_media {
	display: none;
	width: 95vw;
	position: absolute;
	/*top: 255pt; /* 45vh */
	top:calc(25vw + 80px);
	left: 2.5vw;
	background-color: #FFF;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
	padding: 0.3vw;
	z-index: 100;
}

.popup_media .caption {
	padding: 0 2.5vw 1vw;
	color: #000;
	text-align: left;
}

.popup_media .caption .name {
	color: rgb(160,160,160);
}

.close_popup_media {
	display: block;
	color: #fff;
	font-size: 15vw;
	font-weight: 700;
	position: absolute;
	top: 1.5vw;
	right: 1.5vw;
	width: auto;
	height: auto;
	z-index: 10;
	cursor: pointer;
}

.text_paragraph {
	position: absolute;
	bottom: 20vw;
	padding: 2.5vw;
	margin: 0;
	z-index: 10;
}

.text_paragraph .close_popup_media {
	display: block;
	color:#7c2b4b;
	font-size: 15vw;
	font-weight: 700;
	position: absolute;
	top: 1.5vw;
	right: 1.5vw;
	width: auto;
	height: auto;
	z-index: 10;
	cursor: pointer;
}

.text_paragraph .text_content {
	background-color: #FFFFFF;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
	padding: 2.5vw;
	width: 100%;
	height: 60vh;
}

.text_paragraph p {
	color: #000000;
	margin-bottom: 2.5vw;
}

.right {
	text-align: right !important;
}

.left {
	text-align: left !important;
}

.tab_bar {
	width: 100%;
	text-align: left;
}

.tab_bar .tab {
	width: 10.75vw;
	height: 13vw;
	background-color: transparent;
	background-size: 7.5vw 7.5vw;
	background-position: center 2vw;
	background-repeat: no-repeat;
	-webkit-border-radius: 2vw 2vw 0 0;
	-moz-border-radius: 2vw 2vw 0 0;
	border-radius: 2vw 2vw 0 0;
	outline: none;
	cursor: pointer;
}

.tab_bar .tab.marked::after {
	content: '';
	display: block;
	position: absolute;
	right: 0.9vw;
	top: 2.2vw;
	width: 2vw;
	height: 2vw;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	background-color: #FF0000;
}

.tab_bar .tab.active {
	background-color: #FFFFFF;
}

.tab_bar .tab-07 {
	width: 5vw;
	display: block;
	position: absolute;
	right: 0;
	top: 0;
	background-size: 5vw 5vw;
	background-position: right 3vw;
}

.tab_bar .tab-00 { background-image: url(img/icon_14.png); }
.tab_bar .tab-00.active { background-image: url(img/icon_14b.png); }
.tab_bar .tab-01 { background-image: url(img/icon_15.png); }
.tab_bar .tab-01.active { background-image: url(img/icon_15b.png); }
.tab_bar .tab-02 { background-image: url(img/icon_16.png); }
.tab_bar .tab-02.active { background-image: url(img/icon_16b.png); }
.tab_bar .tab-03 { background-image: url(img/icon_17.png); }
.tab_bar .tab-03.active { background-image: url(img/icon_17b.png); }
.tab_bar .tab-04 { background-image: url(img/icon_18.png); }
.tab_bar .tab-04.active { background-image: url(img/icon_18b.png); }
.tab_bar .tab-05 { background-image: url(img/icon_19.png); }
.tab_bar .tab-05.active { background-image: url(img/icon_19b.png); }
.tab_bar .tab-06 { background-image: url(img/icon_20.png); }
.tab_bar .tab-06.active { background-image: url(img/icon_20b.png); }
.tab_bar .tab-07 { background-image: url(img/icon_24.png); }

.tab_content {
	background-color: #FFFFFF;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
	padding: 2vw;
	top: -3vw;
	display: none;
	height: auto;
	text-align: left;
}

.tab_content_2 {
	display: block;
	background-color: #FFFFFF;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
	padding: 2vw;
	height: auto;
	text-align: left;
	margin-bottom: 1vw;
}

#tab_00, #tab_01 {
	padding-bottom: 8vw;
}

#tab_00 {
	display: block;
}

.scrollbox {
	width: 100%;
	max-height: 100%;
	text-align: left;
	padding-right: 5vw;
}

.message_box {
	width: 100%;
	min-height: 7vw;
	margin-bottom: 2vw;
}

.message_box .message_button {
	width: 7vw;
	height: 7vw;
	position: absolute;
	left: 0;
	top: 0;
	background-size: 7vw 7vw;
}

.message_box .to_be_done {
	margin: 0 0 2vw 9.5vw;
	color: #000000;
}

.message_box .to_be_done .number {
	color: #FF0000;
	margin: 0 1vw 0 2vw;
}

.message_box.done .to_be_done:before {
	content: '';
	display: inline-block;
	width: 2.5vw;
	height: 2.5vw;
	background: url(img/check_on.png);
	background-size: 2.5vw 2.5vw;
}

.message_box.pending .to_be_done:before {
	content: '';
	display: inline-block;
	width: 2.5vw;
	height: 2.5vw;
	background: url(img/check.png);
	background-size: 2.5vw 2.5vw;
}

.message_box.done .message_button {
	background-image: url(img/icon_21b.png);
}

.message_box.pending .message_button {
	background-image: url(img/icon_21.png);
}

.message_box .response {
	padding: 2vw;
	background-color: rgb(220,220,220);
	color: #000000;
	margin-bottom: 2vw;
	margin-left: 9vw;
}

.new_message {
	width: 100%;
	height: 7.5vw;
	position: absolute;
	left: 0;
	bottom: 0;
	padding: 1vw 3vw 0 3vw;
	border: 0.3vw solid rgb(160,160,160);
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
}

.groups_box .transparent_box,
.chat_box .transparent_box {
	padding: 2vw;
}

.new_message_2 {
	width: 100%;
	height: auto;
	padding: 0 2vw;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
	background-color: #fff;
}

.new_message_field {
	width: 100%;
	padding-right: 4.5vw;
	color: rgb(160,160,160);
	outline: none;
}

.new_message_emotes {
	display: block;
	width: 3.6vw;
	height: 3.6vw;
	position: absolute;
	right: 2vw;
	top: 1.35vw;
}

.new_message_emotes img {
	display: block;
	width: 100%;
	height: 100%;
}

.new_message_2 .new_message_emotes {
	display: block;
	float: left;
	position: relative;
	right: auto;
	left: 0;
	width: 4.5vw;
	height: 4.5vw;
}

.new_message_2 .new_message_file {
	display: block;
	float: left;
	position: relative;
	right: auto;
	top: 1.35vw;
	width: 4.5vw;
	height: 4.5vw;
	margin: 0 1vw;
	text-align: center;
	color: rgb(160,160,160);
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
	border: 0.3vw solid rgb(160,160,160);
}

.new_message_2 .new_message_field {
	width: calc(100% - 18vw);
	height: 6.5vw;
	border: 0.3vw solid rgb(160,160,160);
	color: rgb(160,160,160);
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
	margin: 0.5vw 0;
	padding: 0 2vw;
}

.new_message_2 .new_message_submit {
	width: 3.6vw;
	height: 3.6vw;
	border: 0.5vw solid rgb(160,160,160);
	border-color: transparent rgb(160,160,160) rgb(160,160,160) transparent;
	background-color: #fff;
	transform: rotate(-45deg);
	-webkit-appearance: none;
}

.new_message_2 .message_box {
	
	height: auto;
	margin-bottom: 2.5vw;
}

.message_box .message_name {
	color: rgb(160,160,160);
	padding: 0.5vw 2.3vw;
}

.message_box .message_text {
	color: #000;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
	padding: 2vw;
	border: 0.3vw solid rgb(220,220,220);
}

.message_box:nth-of-type(even) .message_text {
	background-color: rgb(220,220,220);
}

.chat {
	display: -webkit-flex;
	display: flex;
}

.user_col, .message_col {
	height: 70vh;
}

.user_col {
	width: 15vw;
	text-align: left;
}

.user_col .pencil {
	display: block;
	width: 12vw;
	height: 8.7vw;
	padding: 2vw;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
	border: 0.3vw solid #FFFFFF;
	outline: none;
	margin: 0 auto 2.5vw 0;
}

.user_col .pencil img {
	width: 100%;
	height: auto;
}

.user_col .user_list {
	width: 12vw;
	height: 100%;
	text-align: left;
	padding: 4vw 0 0;
	margin: 0;
}

.user_col .user_list .prev_arrow,
.user_col .user_list .next_arrow {
	display: block;
	position: absolute;
	top: 1vw;
	left: 5vw;
	width: 2.5vw;
	height: 2.5vw;
	border: 0.5vw solid rgb(255,255,255);
	border-color: transparent rgb(255,255,255) rgb(255,255,255) transparent;
	background-color: transparent;
	transform: rotate(-135deg);
	z-index: 10;
}

.user_col .user_list .prev_arrow {
	top: 1vw;
	transform: rotate(-135deg);
}

.user_col .user_list .next_arrow {
	top: calc(100% + 4vw);
	transform: rotate(45deg);
}

.user_col .user_list .photo_user {
	display: block;
	width: 12vw;
	height: 12vw;
	margin: 0 auto 2.5vw 0;
}

.user_col .user_list .photo_user.active::after {
	content: '';
	display: block;
	position: absolute;
	right: -3vw;
	top: 4vw;
	width: 0;
	height: 0;
	border: 2vw solid rgba(255,255,255,0.3);
	border-left: 2vw solid transparent;
	border-top: 1.5vw solid transparent;
	border-bottom: 1.5vw solid transparent;
}

.user_col .user_list .photo_user img {
	width: 100%;
	height: 100%;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
}

.message_col {
	width: calc(100% - 15vw);
}

.message_col .groups_box {
	height: 100%;
}

.message_col .groups_box .transparent_box {
	height: 100%;
}

.message_col .tab_content_2 {
	height: calc(100% - 10vw);
	overflow-y: auto;
}

.message_col .new_message_2 {
	position: absolute;
	bottom: 2vw;
	width: calc(100% - 4vw);
}

.message_col .message_box.gray .message_text {
	background-color: rgb(220,220,220);
	width: 75%;
	margin-right: 25%;
}

.message_col .message_box.white .message_text {
	background-color: transparent;
	width: 75%;
	margin-left: 25%;
}

.emote {
	width: 4vw;
	height: 4vw;
}

.more {
	color: rgb(160,160,160);
}

.list_box_people {
	width: 100%;
	min-height: 12vw;
	margin-bottom: 5.5vw;
}

.list_box_people:last-of-type {
	min-height: 12vw;
	margin-bottom: 2vw;
}

.people {
	padding: 1vw 0;
}

.add {
	display: block;
	width: 7.5vw;
	height: 7.5vw;
	line-height: 7.5vw;
	color: #FFFFFF;
	background-color: rgba(255,255,255,0.3);
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
	border: 0.3vw solid #fff;
	margin: 4vw auto;
	z-index: 10;
}

.list_box_people_2 {
	width: 100%;
	min-height: 12vw;
	margin-top: 3vw;
	padding: 0 24vw 0 15vw;
}

.list_box_people .photo_user,
.list_box_people_2 .photo_user {
	display: block;
	width: 12vw;
	height: 12vw;
	position: absolute;
	left: 0;
	top: 0;
}

.list_box_people .photo_user img,
.list_box_people_2 .photo_user img {
	width: 100%;
	height: 100%;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
}

.list_box_people div {
	padding-left: 14.5vw;
}

.list_box_people div .name,
.list_box_people_2 .name {
	color: rgb(160,160,160);
	text-transform: uppercase;
	margin-right: 1vw;
}

.list_box_people div .date,
.list_box_people div .place {
	color: #000000;
}

.list_box_people div .text {
	color: #000000;
}

.list_box_people_2 .text {
	text-align: left;
	color: #000000;
	background-color: #FFFFFF;
	padding: 1vw 2vw;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
}

.list_box_people div .text.indented {
	padding: 1vw 13.5vw 0 0;
}

.list_box_people .icon_box,
.list_box_people_2 .icon_box {
	width: 12vw;
	height: auto;
	position: absolute;
	top: 0;
	right: 0;
	padding: 0;
}

.list_box_people_2 .icon_box {
	right: 12vw;
}

.list_box_people .icon_box .nr {
	font-size: 1.85vw;
	line-height: 3.6vw;
	color: #00aeef;
	text-align: center;
	height: auto;
}

.list_box_people_2 .icon_box .nr {
	line-height: 2.5vw;
}

.list_box_people .icon_box img,
.list_box_people_2 .icon_box img {
	display: block;
	width: 7vw;
	height: 7vw;
}

.list_box_people_2 .switch_box {
	width: 12vw;
	height: 12vw;
	position: absolute;
	top: 0;
	right: 2.5vw;
}

.trophy {
	display: block;
	width: 12vw;
	height: 12vw;
	margin: 4vw auto;
	border: 0.3vw solid #00aeef;
	background-image: url(img/icon_16b.png);
	background-repeat: no-repeat;
	background-size: 7.5vw 7.5vw;
	background-position: center center;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
}

.comments_box {
	top: -10vw;
}

.box01 {
	width: 100%;
}

.box_inside01 {
	display: block;
	width: 12vw;
	height: 12vw;
	margin: 0 2vw 2vw 0;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
	overflow: hidden;
	float: left;
}

.box_inside02 {
	display: block;
	width: 69vw;
	height: auto;
	margin: 0 0 2vw 0;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
	overflow: hidden;
	float: right;
}

.box_inside01 img,
.box_inside02 img {
	display: block;
	width: 100%;
	height: auto;
}

.photo_list {
	width: 100%;
	display: flex;
	display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}

.photo_list .photo_wrapper {
	width: 30%;
	height: auto;
	padding-bottom: 30%;
	margin: 1.5vw auto;
	overflow: hidden;
}

.photo_list .photo_wrapper img {
	position: absolute;
	top: 0;
	left: 0;
	min-width: 100%;
	width: auto;
	height: 100%;
}

.photo_list .photo_wrapper .name {
	position: absolute;
	bottom: 0;
	left: 1vw;
	color: #FFFFFF;
}

.photo_list .photo_wrapper:before {
	content: '';
	background-size: contain;
	background-repeat: no-repeat;
	display: block;
	width: 5.5vw;
	height: 3.6vw;
	position: absolute;
	top: 1vw;
	left: 1vw;
	z-index: 10;
}

.photo_list .photo_wrapper.picture:before {	background-image: url(img/icon_photo.png); }
.photo_list .photo_wrapper.video:before {	background-image: url(img/icon_video.png); }

.blu {
	color: #00aeef;
}

.ad {
	display: block;
	width: 100%;
	height: auto;
	margin: 0 0 4vw 0;
}

.ad img {
	display: block;
	width: 100%;
	height: auto;
}

.challenge .more_users {
	color: #FFFFFF;
}

.mediawrapper {
  width: 100%;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
	overflow: hidden;
}

.mediawrapper img {
  width: 100%;
	height: auto;
}

.videowrapper {
  float: none;
  clear: both;
  width: 100%;
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
}

.videowrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  min-height: 100%;
  max-height: 100%;
}

.awards {
	padding: 0 0 2.5vw 0;
}

.awards .points_total {
	padding: 1vw 0 2.5vw;
	text-align: center;
}

.award .stats_wrap {
	width: 12vw;
	height: 12vw;
	padding: 0;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
	border: 0.3vw solid #FFFFFF;
}

.awards .points_total .stats_box .stats_wrap {
	padding: 0;
}

.award .nr, .awards .nr {
	line-height: 3vw;
}

.awards .points_total .stats_box {
	display: inline-block;
	width: 20vw;
	text-align: center;
	float: none;
}

.awards .points_total .stats_box .stats_name {
	font-size: 2.25vw;
	line-height: 4.5vw;
	font-weight: 700;
	text-transform: uppercase;
}

.awards .title_awards {
	padding: 2vw 2vw 2vw 0;
	text-align: left;
}

.awards .paragraph {
	padding: 2.5vw 0;
	text-align: left;
	color: #FFFFFF;
}
.award {
	padding: 6vw 0 0;
	text-align: left;
}

.award .program_left_content {
	padding: 0 0 0 23vw;
	min-height: 24vw;
}

.award .program_title * {
	text-align: left;
}

.award .text .number {
	margin-right: 4.5vw;
}

.award .program_stats {
	padding-bottom: 4.5vw;
}

.award .program_pic {
	top: 5vw;
	width: 20vw;
	height: 20vw;
}

.stats_wrap.red {
	border-color: #FF0000;
}

.stats_wrap.orange {
	border-color: #FFCC00;
}

.user_box {
	width: 100%;
	text-align: left;
	padding: 0 0 0 10vw;
}

.user_box .profile_icon {
	width: 7.5vw;
	height: 7.5vw;
	position: absolute;
	top: 0;
	left: 0;

	overflow: hidden;

	-webkit-border-radius: 1vw;
	-moz-border-radius: 1vw;
	border-radius: 1vw;
}

.user_box .username {
	line-height: 7.5vw;
}

.user_program {
	padding: 3.5vw 0 2.5vw 17vw;
	text-align: left;
}

.user_program .photo_user {
	position: absolute;
	top: 2.5vw;
	left: 0;
	display: block;
	width: 12vw;
	height: 12vw;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
	overflow: hidden;
}

.user_program .photo_user img {
	width: 100%;
	height: 100%;
}

.user_program .time {
	line-height: 5.5vw;
}

.user_program + .program_pic {
	top: 19vw;
}

.program_left_content_2 {
	padding-right: 30vw;
	min-height: 15vw;
	margin-bottom: 2.5vw;
}

.program_left_content_2 .program_perex {
	padding-right: 0;
	height: auto;
	overflow: visible;
}

.program_stats {
	text-align: right;
}

.programs_box .program_dates {
	margin-top: 2.5vw;
}

.programs {
	display: flexbox;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	padding: 2.5vw 2.5vw 4vw;
}

.programs .program_photo {
	margin: 0;
	width: 24vw;
	height: 24vw;
	overflow: hidden;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
	z-index: 2;
}

.programs .program_photo img {
	display: block;
	width: 100%;
	height: 100%;
}

.program_photo.other p {
	color: #FFFFFF;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	z-index: 4;
}

.program_photo.other:after {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background-color: rgba(0,0,0,0.7);
	z-index: 3;
}

.program_photo.cat_01:before { background-color: rgb(0,122,255); }
.program_photo.cat_02:before { background-color: rgb(245,145,10); }
.program_photo.cat_03:before { background-color: rgb(0,255,0); }
.program_photo.cat_04:before { background-color: rgb(255,225,0); }
.program_photo.cat_05:before { background-color: rgb(245,71,255); }

.settings_form {
	width: 100%;
}

.settings_form .full {
	display: block;
	min-height: 9vw;
	width: 100%;
	margin-bottom: 2.5vw;
}

.settings_form .half {
	width: 50%;
	float: left;
	margin-bottom: 2.5vw
}

.settings_form .abs {
	position: absolute;
	right: 2.5vw;
	top: 0.5vw;
	padding-bottom: 1vw;
}

.add_picture, .add_picture_2,
.settings_form input,
.settings_form textarea,
.settings_form select {
	text-align: left;
	background-color: transparent;
	color: #fff;
	border: 0.3vw solid #fff;
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
	padding: 2vw;
	letter-spacing: 0.2vw;
}

.add_picture {
	position: absolute;
	top: 0;
	left: 0;
}

.add_picture:after {
	content: '';
	background-image: url(img/icon_picture.png);
	background-size: contain;
	background-repeat: no-repeat;
	display: block;
	width: 4vw;
	height: 2.5vw;
	position: absolute;
	right: 2.5vw;
	top: 3vw;
}

.add_picture_2 {
	position: absolute;
	top: 0;
	left: 0;
	margin: 0 !important;
}

.add_picture_2::before {
	content: '';
	background-image: url(img/icon_video.png);
	background-size: contain;
	background-repeat: no-repeat;
	display: block;
	width: 2.5vw;
	height: 2.5vw;
	position: absolute;
	right: 2vw;
	top: 3vw;
}

.add_picture_2::after {
	content: '';
	background-image: url(img/icon_picture.png);
	background-size: contain;
	background-repeat: no-repeat;
	display: block;
	width: 4vw;
	height: 2.5vw;
	position: absolute;
	right: 5.5vw;
	top: 3vw;
}

.add_pic_input {
	opacity: 0;
	height: 6.5vw;
	overflow: hidden;
	margin: 0 !important;
}

.settings_form .one {
	width: 30%;
	float: left;
	margin-right: 2.5%;
}

.settings_form .three {
	width: 67.5%;
	float: right;
}

.settings_form .center {
	padding-left: 26.5%;
}

.settings_form option {
	color: rgb(160,160,160);
}

.settings_form .switch_box {
	text-align: left;
}

.settings_form .on_off_switch .label {
	color: #fff;
	margin-left: 10.5vw;
	top: 1.5vw;
	letter-spacing: 0.2vw;
}

.settings_form input[type=button] {
	text-align: center;
}

.small_input {
	width: 45%;
}

.small_input input {
	text-align: center;
}

.small_input.L {
	float: left;
}

.small_input.R {
	float: right;
}

.settings_form input.save,
.settings_form input.publish {
	float: left;
	width: 42.5%;
	margin-right: 2.5%;
}

.settings_form input.publish {
	background-color: #0f0;
	text-align: center;
	-webkit-appearance: none;
}

.settings_form input.close {
	float: left;
	width: 10%;
	font-size: 4.5vw;
	font-weight: 700;
	background-color: #f00;
	-webkit-appearance: none;
}

.settings_form .transparent {
	background-color: rgba(255,255,255,0.3);
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
	margin-bottom: 2.5vw;
}

.settings_form .transparent .index {
	float: left;
	width: 10%;
	padding: 0 2.5vw;
	line-height: 9vw;
	text-align: left;
}

.settings_form .transparent .title {
	float: left;
	width: 57.5%;
	margin-right: 2.5%;
}

.settings_form .transparent .duration {
	float: left;
	width: 30%;
	text-align: center;
}

.settings_form .transparent .switch_box {
	padding: 0 2vw;
	margin: 0;
}

.settings_form .transparent .switch_box:last-of-type {
	padding-bottom: 2.5vw;
}

.settings_form .transparent .switch_box .txt {
	padding: 1vw 0 0 13.5vw;
}

.settings_form .switch_box .txt {
	padding: 2.5vw 0 2.5vw 10.5vw;
}

.settings_form .square_add {
	width: 9vw;
	background-color: rgba(255,255,255,0.3);
	margin-bottom: 2.5vw;
	font-size: 4.5vw;
	-webkit-appearance: none;
}

.collapsible_box {
	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;
	padding: 2.5vw;
	margin-bottom: 1vw;
}

.collapsible_box.active {
	background-color: rgba(255,255,255,0.3);
}

.collapsible_box.news_box {
	margin-bottom: 2vw;
}

.news_text {
	padding-top: 1.5vw;
	text-align: left;
	/*text-transform: uppercase;
	letter-spacing: 1pt;*/
}

.collapsible {
	width: 11.5vw;
	height: 11.5vw;
	position: absolute;
	right: 0;
	top: 2vw;
	padding: 4vw
}

.collapsible img {
	display: block;
	width: 3.5vw;
	height: 3.5vw;
}

.collapsible.active img {
	transform: rotate(90deg);
}


.collapsible_menu {
	width: 11.5vw;
	height: 11.5vw;
	position: absolute;
	right: 0;
	top: 2vw;
	padding: 4vw
}

.collapsible_menu img {
	display: block;
	width: 3.5vw;
	height: 3.5vw;
}

.collapsible_menu.active img {
	transform: rotate(90deg);
}

.menu .submenu
{
	display: none;
}

.content {
	padding-top: 2.5vw;
	display: none;
}

.content .switch_box {
	min-height: auto;
	margin: 0;
}

.content .switch_box .label {
	text-transform: uppercase;
}

.content .link {
	display: block;
	color: #000;
	font-size: 4.5vw;
	text-align: left;
	margin: 2vw 0;
}

.content .link img {
	display: inline-block;
	width: 3vw;
	height: 3vw;
}

.content .link.active img {
	transform: rotate(90deg);
}

.groups_box .program_left_content {
	min-height: 32vw;
}

.groups_box .program_perex {
	height: auto;
}

.groups_box .marked::after {
	content: '';
	display: block;
	position: absolute;
	left: 24.5vw;
	bottom: 3vw;
	width: 2vw;
	height: 2vw;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	background-color: #FF0000;
	z-index: 10;
}

.e404_title {
	color: #00aeef;
	font-size: 6vw;
	font-weight: 800;
	letter-spacing: 1.5pt;
	text-transform: uppercase;
	line-height: normal;
	padding: 8vw 0 4vw;
}

.e404_title span {
	font-size: 150%;
}

.e404_image {
	width: 100%;
	height: auto;
}

.stats_box2 {
	width: 100%;
	text-align: left;
	border-bottom: 1px solid #FFF;
}

.dia_stats_wrap {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	padding: 4vw 0;
}

.stats_diagram {
	margin-top: 0;
}

.stats_diagram table {
	margin: 2vw 0 0 auto;
}

.stats_diagram table tr td {
	padding: 0 1vw;
}

.stats_diagram table tr:nth-of-type(1) td:nth-of-type(2) {
	color: rgb(247,120,36);
}

.stats_diagram table tr:nth-of-type(2) td:nth-of-type(2) {
	color: rgb(255,61,158);
}

.stats_diagram table tr:nth-of-type(3) td:nth-of-type(2) {
	color: rgb(77,207,232);
}

.stats_diagram table tr:nth-of-type(4) td:nth-of-type(2) {
	color: rgb(245,245,245);
}

.stats_diagram.big {
	flex-grow: 2;
}

.diagram_value {
	width: 100%;
	padding: 0 0vw 0 0;
	text-align: center;
	position: absolute;
	top: 9vw; /* 12 */
	left: 42%; /* 50 */
	transform: translateX(-50%);
	text-transform: uppercase;
}

.diagram_info
{
	font-size: 3.2vw;
}

.arcs {
	width: 100%;
	height: 100%;
}

.dia_text {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	text-align: left;
	padding: 0 0 2vw 4vw;
}

.welcome .text
{
	padding: 3vw 0 8vw;
}

.welcome .text p, .welcome .text p strong
{
	font-size: 4.5vw;
	text-transform: uppercase;
	letter-spacing: 0.3vw;
	line-height: 5vw;
}

.welcome .rows .row
{
	width: 100%;
	margin-bottom: 1vw;
}

.welcome .rows .row .left2
{
	width: 15%;
	display: inline-block;
	text-align: center;
}

.welcome .rows .row .right2
{
	width: 80%;
	display: inline-block;
	text-align: left;
	vertical-align: top;
}


.welcome .rows .row .left2 a
{
	width: 50%;
	text-align: center;
}

.welcome .rows .row .left2 img
{
	width: 9vw;
}

.welcome .rows .row .right2 p
{
	text-align: left;
	margin-bottom: 2vw;
}

.welcome .category.cen:before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	height: 100%;
}

.welcome .category
{
	width: 22vw;
	height: 12vw;
	color: #FFFFFF;
	padding: 1.5vw;
	text-transform: uppercase;
	margin-right: 2vw;
	margin-bottom: 1vw;
	font-size: 3vw;
	display: inline-block;
	text-align: center;
	vertical-align: middle;
	font-weight: 600;
	border-radius: 5pt;
}

.welcome .category div
{
	display: inline-block;
	vertical-align: middle;
}

.welcome .rows .cat_01 { background-color: rgb(0,122,255); }
.welcome .rows .cat_02 { background-color: rgb(245,145,10); }
.welcome .rows .cat_03 { background-color: rgb(0,255,0); }
.welcome .rows .cat_04 { background-color: rgb(255,225,0); }
.welcome .rows .cat_05 { background-color: rgb(245,71,255); }

.welcome .programs_box .square2 {
	width: 16vw;
	height: 16vw;
	margin: 0 2vw 2vw 0;
	-moz-border-radius: 1.5vw;
	-webkit-border-radius: 1.5vw;
	border-radius: 1.5vw;
	/*float: left;*/
	overflow: hidden;
	display: inline-block;
}

.welcome .programs_box .square2 img {
	width: 100%;
	height: 100%;
}


.welcome .bottom
{
	width: 90%;
	margin-top: 2vw;
}

.welcome .bottom a
{
	display: block;
	width: 100%;
	padding: 2vw;
	margin-bottom: 2vw;

	border: 0.5vw solid #FFFFFF;
	color: #FFFFFF;
	text-transform: uppercase;
	font-size: 3.5vw;
	background-color: rgba(255,255,255,0.3);

	-webkit-border-radius: 2vw;
	-moz-border-radius: 2vw;
	border-radius: 2vw;

	letter-spacing: 0.3vw;
}

.welcome .bottom a strong
{
	font-size: 3.5vw;
}

.cookies {
	display: none;
	position: fixed;
	bottom: 0;
	width: 100%;
	height: auto;
	padding: 20px 40px;
	font-size: 16px;
	line-height: 30px;
	text-align: center;
	background-color: rgb(234, 45, 86);
	color: #fff;
	z-index: 9999;
	cursor: pointer;
}

.cookies:hover {
	background-color: rgb(234, 89, 106);
	color: #fff;
}

.cookies a
{
	color: #FFFFFF;
	text-decoration: underline;
	cursor: pointer;
	font-size: inherit;
}

.cookies span {
	font-size: 30px;
	line-height: 30px;
	margin-left: 20px;
}

.blur
{
	-webkit-filter: blur(2px);
	-moz-filter: blur(2px);
	-o-filter: blur(2px);
	-ms-filter: blur(2px);
	filter: blur(2px);
}