@charset "utf-8";

html {
	font-size: 62.5%;
}

body {
	max-width: 1920px;
	margin: 0 auto;
	color: #333;
	font-family: "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
	font-weight: 500;
	font-size: 2.4rem;
	position: relative;
}

main {
	display: flex;
}

#side-content {
	width: 25%;
	height: 100vh;
	height: 100dvh;
	padding: 1.6rem 0 2.8rem 3.2rem;
	overflow-y: scroll;
}

#side-content h1 {
	margin: 2.8rem 0;
	padding-right: 1.6rem;
	font-size: 2.5rem;
	font-weight: 700;
}

#side-content h2 {
	margin-bottom: 5px;
	padding: 2.0rem 1.2rem;
	background-color: #F5F5F5;
	border-left: 1.2rem solid #FF0000;
	box-shadow: 1px 3px 5px #DDD;
	font-weight: 700;
	cursor: pointer;
}

#side-content h3 {
	margin-bottom: 5px;
	margin-left: 1.2rem;
	padding: 2.0rem 1.2rem;
	background-color: #E5E5E5;
	border-left: 1.2rem solid #E5E5E5;
	box-shadow: 1px 3px 5px #DDD;
	cursor: pointer;
	transition: all .5s;
}

#side-content h4 {
	margin-bottom: 5px;
	margin-left: 2.4rem;
	padding: 2.0rem 1.2rem;
	background-color: #B3B3B3;
	border-left: 1.2rem solid #B3B3B3;
	box-shadow: 1px 3px 5px #DDD;
	color: #FFF;
	cursor: pointer;
	transition: all .5s;
	font-size: 1.8rem;
}

#side-content h2:hover,
#side-content h3:hover,
#side-content h4:hover {
	background-color: #D1ABB4;
	color: #FFF;
}

#side-content h3:hover {
	border-color: #888;
}

#side-content h4:hover {
	border-color: #FFF;
}

#side-content h3.second-menu.select {
	border-color: #888;
}

#side-content h4.third-menu.select {
	background-color: #D1ABB4;
	border-color: #FFF;
}

.me-logo {
	width: 100%;
	padding-right: 1.6rem;
}

.open-btn {
	position: relative;
}

.open-btn::before,
.open-btn::after {
	width: 15px;
	height: 2px;
	content: '';
	position: absolute;
	background-color: #333;
	transition: transform .5s ease-in;
}

.open-btn:hover::before,
.open-btn:hover::after {
	background-color: #FFF;
}

.open-btn::before {
	top: 50%;
	right: 2.4rem;
	transform: translateY(-50%) rotate(0deg);
}

.open-btn::after {
	top: 50%;
	right: 2.4rem;
	transform: translateY(-50%) rotate(90deg);
}

.open-btn.close-btn::after {
	transform: translateY(-50%) rotate(0deg);
}

.closed-menu {
	display: none;
}


#main-content {
	width: 75%;
	height: 100vh;
	height: 100dvh;
	background-color: #999;
	position: relative;
}

#main-content .main-menu {
	height: 100%;
	position: relative;
	display: none;
}

#main-content .main-menu.select {
	display: block;
}

#ngo #ngo-top {
	background: url(../img/ngo-all-bg.jpg) no-repeat center/cover;
}

#ngo #ngo-all {
	background: url(../img/ngo-top-bg.jpg) no-repeat center/cover;
}

#ngo #ngo-e4 {
	background: url(../img/ngo-e4-bg.png) no-repeat center/cover;
}

#ngo #ngo-e4-f6 {
	background: url(../img/ngo-e4-f6-bg.png) no-repeat left/cover;
}

#ngo #ngo-e4-f5 {
	background: url(../img/ngo-e4-f5-bg.png) no-repeat left/cover;
}

#main-content #backscreen {
	width: 100%;
	height: 100%;
	background-color: #00000080;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	display: none;
}

#main-content h2 {
	width: 40%;
	margin: 0 4.8rem;
	padding: 3.2rem 0 2.4rem;
	color: #FFF;
	font-size: 4.8rem;
	font-weight: bold;
	position: relative;
	cursor: pointer;
}

#main-content #ngo-top h2,
#main-content #ngo-all h2 {
	text-shadow: 2px 2px 5px #616161;
}

#main-content h2 span {
	font-size: 4.2rem;
}

#main-content h2::before {
	width: 100%;
	height: 8px;
	content: '';
	/* background: linear-gradient(to right, red, red 16.67%, #616161 16.67%, #616161 33.33%, #bdbdbd 33.33%, #bdbdbd 50%, #f5f5f5 50%, #f5f5f5); */
	background: linear-gradient(to right, #f5f5f5, #f5f5f5 16.67%, #f5f5f5 16.67%, #f5f5f5 33.33%, #f5f5f5 33.33%, #f5f5f5 50%, #f5f5f5 50%, #f5f5f5);
	position: absolute;
	bottom: 0;
	left: 0;
}

#main-content video {
	width: 100%;
	margin: 0 auto;
	display: block;
	cursor: pointer;
}

.menu-link {
	min-width: 15rem;
	padding: 2.4rem 2.0rem;
	background-color: #FFFFFFCC;
	font-weight: bold;
	text-align: center;
	position: absolute;
	cursor: pointer;
}

.menu-link::before {
	width: 100%;
	height: 8px;
	content: '';
	/* background: linear-gradient(to right, red, red 33.33%, #616161 33.33%, #616161 66.66%, #bdbdbd 66.66%, #bdbdbd 100%); */
	background: linear-gradient(to right, #f5f5f5, #f5f5f5 16.67%, #f5f5f5 16.67%, #f5f5f5 33.33%, #f5f5f5 33.33%, #f5f5f5 50%, #f5f5f5 50%, #f5f5f5);
	position: absolute;
	bottom: 0;
	left: 0;
}

.menu-link.ngo-e4-link {
	top: 38%;
	right: 30%;
}

.video-link {
	background-color: #FFFFFF80;
	position: absolute;
}

.video-link.onMap {
	min-width: 27rem;
}

.video-link.rightHead {
	background-color: #F5F5F5;
	border-radius: .8rem;
	right: 2.4rem;
}

.video-link.rightHead {
	top: 1.6rem;
}

/*///// NGO E4 F6 //////*/
.video-link.ngo-e4-f6-system {
	bottom: 27%;
	right: 5%;
}

.video-link.ngo-e4-f6-produce {
	bottom: 32%;
	left: 15%;
}

.video-link.ngo-e4-f6-check {
	top: 46%;
	right: 28%;
}

.video-link.ngo-e4-f6-open {
	top: 50%;
	left: 8%;
}

/*///// NGO E4 F5 //////*/
.video-link.ngo-e4-f5-system {
	bottom: 32%;
	right: 6%;
}

.video-link.ngo-e4-f5-procedure {
	top: 20%;
	left: 42%;
}

.video-link.ngo-e4-f5-investigate {
	top: 32%;
	left: 16%;

}

.video-link.ngo-e4-f5-human {
	top: 34%;
	right: 22%;

}

.video-link.ngo-e4-f5-robot {
	top: 45%;
	left: 32%;
}

.video-link.ngo-e4-f5-packing {
	top: 56%;
	left: 3%;
}

.video-link.ngo-e4-f5-edgecross {
	bottom: 35%;
	left: 35%;
}

.video-link.ngo-e4-f5-efactory {
	bottom: 18%;
	left: 40%;
}

.video-link .video-link-btn {
	padding: 2.0rem 1.0rem;
	font-size: 1.3rem;
	font-weight: bold;
	cursor: pointer;
}

.video-link.rightHead .video-link-btn,
.video-link.rightFoot .video-link-btn {
	padding: 1.2rem 2.4rem;
}

.video-link .me-line {
	width: 100%;
	position: relative;
}

.video-link .me-line::before {
	width: 100%;
	height: 8px;
	content: '';
	/* background: linear-gradient(to right, red, red 16.67%, #616161 16.67%, #616161 33.33%, #bdbdbd 33.33%, #bdbdbd 50%, #f5f5f5 50%, #f5f5f5); */
	background: linear-gradient(to right, #f5f5f5, #f5f5f5 16.67%, #f5f5f5 16.67%, #f5f5f5 33.33%, #f5f5f5 33.33%, #f5f5f5 50%, #f5f5f5 50%, #f5f5f5);
	position: absolute;
	bottom: 0;
	left: 0;
}

.video-link .video-modal {
	width: 67.5%;
	padding: 2.4rem 2.4rem 1.6rem;
	background-color: #FFF;
	text-align: right;
	position: fixed;
	top: 50%;
	left: 62%;
	z-index: 2;
	transform: translate(-50%, -50%);
	display: none;
}

.video-link .video-modal .video-modal-close {
	margin-bottom: 1.6rem;
	padding-right: 3.6rem;
	color: #333;
	display: inline-block;
	position: relative;
	cursor: pointer;
}

.video-link .video-modal .video-modal-close::before,
.video-link .video-modal .video-modal-close::after {
	width: 30px;
	height: 2.5px;
	content: '';
	border-radius: 10px;
	position: absolute;
	top: 50%;
	right: 0;
	background-color: #FF0000;
}

.video-link .video-modal .video-modal-close::before {
	transform: translateY(-50%) rotate(45deg);
}

.video-link .video-modal .video-modal-close::after {
	transform: translateY(-50%) rotate(-45deg);
}