@charset "UTF-8";

a.colorlink {
	color: #00BEFF;
	text-decoration: none;
}
a.colorlink:hover {
	color: #bb0000;
	text-decoration: underline;
}

.imgbox {
	position: absolute;
	top: 0;
	width: 100%;
	height: 65vw;
	overflow: hidden;
	z-index: -10;
}
.imgbox img {
	width: 100%;
	margin-top: 0vw;
	margin-left: 5vw;
}
.imgbox img.m {
	display: none;
}

@media screen and (max-width: 767px) {
	.imgbox {
		position: absolute;
		top: 0;
		width: 100%;
		height: 70vh;
		overflow: hidden;
		z-index: -10;
	}
	.imgbox img.m {
		display: block;
		width: 70vh;
		margin: 0 auto;
		margin-top: 0vh;
		margin-left: 10vw;
	}	
	.imgbox img {
		display: none;
		width: 100vh;
		margin: 0 auto;
		margin-top: 4vh;
	}
}

.pagebg {
	position: absolute;
	width: 90%;
	left: 0%;
	right: 0;
	top: 0;
	margin: auto;
}
.pagebg img {
	width: 100%;
}


.mainimage {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	display: block;
	width: 100vw;
	height: 58.75vw;
	background-image: url(../images/jumbotron.png);
	background-repeat: no-repeat;
	background-size: cover;
	padding-top: 12%;
}
.mainimage .caption {
	width: 50%;
	margin-left: 5%;
	padding-top: 2%;
	padding-bottom: 2%;
	padding-left: 2%;
	padding-right: 2%;
	background-color: rgba(0, 0, 0, 0.3);
}
.mainimage .caption h2 {
	text-align: center;
	text-align: left;
	font-family: 'Lato', sans-serif;
	font-size: 6vw;
	font-weight: 900;
	color: #ffffff;
	line-height: 120%;
	margin-bottom: 2%;
}
.mainimage .caption .lead {
	width: 100%;
	color: #ffffff!important;
}
.mainimage .caption .lead h3 {
	font-size: 160%;
	font-weight: 600;
	color: #fffffff;
	margin-bottom: 5%;
}
.mainimage .caption .lead p {
	text-align: left;
	font-size: 105%;
	font-weight: 300;
	line-height: 160%;
	color: #fffffff;
}

@media screen and (max-width: 767px) {
	.mainimage {
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
		display: block;
		width: 100vw;
		width: auto;
		height: 58.75vw;
		height: 60vh;
		background-image: url(../images/jumbotron.png);
		background-repeat: no-repeat;
		background-size: cover;
		background-position: -7rem 0;
		padding-top: 25%;
	}
	.mainimage .caption {
		width: 90%;
		margin-left: 5%;
		padding-top: 2%;
		padding-bottom: 2%;
		padding-left: 2%;
		padding-right: 2%;
		background-color: rgba(0, 0, 0, 0.3);
	}
	.mainimage .caption h2 {
		text-align: center;
		text-align: left;
		font-family: 'Lato', sans-serif;
		font-size: 10vw;
		font-weight: 900;
		color: #ffffff;
		line-height: 120%;
		margin-bottom: 2%;
	}
	.mainimage .caption .lead {
		width: 100%;
		color: #ffffff!important;
	}
	.mainimage .caption .lead h3 {
		font-size: 4.3vw;
		font-weight: 800;
		line-height: 120%;
		color: #fffffff;
		margin-bottom: 5%;
	}
	.mainimage .caption .lead p {
		text-align: left;
		font-size: 4vw;
		font-weight: 300;
		line-height: 160%;
		color: #fffffff;
	}	
}

.vision {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	display: block;
	width: 100%;
	height: calc(100vw * 0.4166);
	background-image: url(../images/top_visionbg.png);
	background-repeat: no-repeat;
	background-position: right;
	background-size: contain;
	background-color: #f3941a;
	position: relative;
}
.vision .container {
	width: 90%;
	margin: 0 auto;
}
.vision .container .title {
	position: absolute;
	top: -10%;
	left: 5%;
	width: 35%;
}
.vision .title img {
	width: 100%;
}
.vision .container .caption {
	width: 62%;
	padding-top: 12%;
}
.vision .container .caption h2 {
	display: block;
	font-size: 3.5vw;
	font-weight: 800;
	line-height: 120%;
	color: #ffffff;
	margin-bottom: 3%;
}
.vision .container .caption h2.mobile {
	display: none;
}
.vision .container .caption p.pc {
	display: block;
	font-size: 105%;
	font-weight: 300;
	line-height: 160%;
	color: #ffffff;
}
.vision .container .caption p.mobile {
	display: none;
}
.vision .container .caption .readmore {
	margin-top: 3%;
	display: block;
	width: 12em;
	font-size: 90%;
	font-weight: 400;
	line-height: 100%;
	color: #ffffff;
	text-decoration: none;
	padding-top: 0.5em;
	padding-bottom: 0.5em;
	padding-left: 1em;
	padding-right: 1em;
	text-align: center;
	background-color: #333333;
}
.vision .container .caption .readmore:hover {
	color: #ffffff;
	background-color: #00b7fb;
}
.vision .container .caption .readmore:visited {
	color: #ffffff;
	background-color: #014099;
}

@media screen and (max-width: 767px) {
	.vision {
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
		display: block;
		width: 100%;
		height: 65vh;
		padding-bottom: 50%;
		background-image: none;
		background-color: #f3941a;
		position: relative;
	}
	.vision .container {
		width: 90%;
		margin: 0 auto;
	}
	.vision .container .title {
		position: absolute;
		top: -8%;
		left: 5%;
		width: 60%;
	}
	.vision .title img {
		width: 100%;
	}
	.vision .container .caption {
		width: 100%;
		padding-top: 25%;
	}
	.vision .container .caption h2 {
		display: none;
	}
	.vision .container .caption h2.mobile {
		display: block;
		font-size: 7.5vw;
		font-weight: 800;
		line-height: 120%;
		color: #ffffff;
		margin-bottom: 7%;
	}
	.vision .container .caption p.pc {
		display: none;
	}
	.vision .container .caption p.mobile {
		display: block;
		font-size: 4.5vw;
		font-weight: 300;
		line-height: 160%;
		color: #ffffff;
	}
	.vision .container .caption .readmore {
		margin-top: 6%;
		display: block;
		width: 10rem;
		font-size: 4.5vw;
		font-weight: 400;
		line-height: 100%;
		color: #ffffff;
		text-decoration: none;
		padding-top: 0.5em;
		padding-bottom: 0.5em;
		padding-left: 1em;
		padding-right: 1em;
		text-align: center;
		background-color: #333333;
	}
	.vision .container .caption .readmore:hover {
		color: #ffffff;
		background-color: #00b7fb;
	}
	.vision .container .caption .readmore:visited {
		color: #ffffff;
		background-color: #014099;
	}
}


.mission {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	display: block;
	width: 100%;
	position: relative;
	padding-bottom: 15%;
	border-bottom: 1px solid #cccccc;
	margin-bottom: 5%;
}
.mission .container {
	width: 90%;
	margin: 0 auto;
}
.mission .container .title {
	position: absolute;
	top: -4%;
	left: 5%;
	width: 40%;
}
.mission .container .title img {
	width: 100%;
}
.mission .container .caption {
	width: 100%;
	padding-top: 18%;
	margin-bottom: 5%;
}
.mission .container .caption h2 {
	margin-bottom: 3%;
}
.mission .container .caption h2 .jp {
	font-size: 3.5vw;
	font-weight: 800;
	line-height: 120%;
}
.mission .container .caption h2 .en {
	font-family: 'Lato', sans-serif;
	font-size: 3vw;
	font-weight: 300;
	line-height: 120%;
	color: #f3941a;
	margin-left: 1em;
}
.mission .container .caption p {
	font-size: 105%;
	font-weight: 300;
	line-height: 160%;
}
.mission .container .caption .readmore {
	margin-top: 3%;
	display: block;
	width: 12em;
	font-size: 90%;
	font-weight: 400;
	line-height: 100%;
	color: #ffffff;
	text-decoration: none;
	padding-top: 0.5em;
	padding-bottom: 0.5em;
	padding-left: 1em;
	padding-right: 1em;
	text-align: center;
	background-color: #333333;
}
.mission .container .caption .readmore:hover {
	color: #ffffff;
	background-color: #00b7fb;
}
.mission .container .caption .readmore:visited {
	color: #ffffff;
	background-color: #014099;
}
.mission .thumbnail {
	width: 90%;
	margin: 0 auto;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	display: grid;
	width: 100%;
	grid-template-columns: repeat(auto-fit, 32%);
	grid-template-columns: 1fr 1fr 1fr;
	grid-template-rows: 1fr;
	grid-gap: 1rem;
	justify-content: space-between;
}
.mission .thumbnail .item {
	width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	border: 1px solid #ccc;
	padding: 4%;
	position: relative;
}
.mission .thumbnail .item h3 {
	font-size: 3vw;
	font-weight: 800;
	color: #2e3b76;
	line-height: 100%;
	letter-spacing: -1%;
	margin-bottom: 5%;
}
.mission .thumbnail .item h4 {
	font-size: 1.7vw;
	font-weight: 600;
	line-height: 140%;
	margin-bottom: 5%;
}
.mission .thumbnail .item p {
	font-size: 100%;
	font-weight: 300;
	line-height: 160%;
}

.mission .thumbnail .item .readmore {
	margin-top: 5%;
	display: block;
	width: 12em;
	font-size: 90%;
	font-weight: 400;
	line-height: 100%;
	color: #ffffff;
	text-decoration: none;
	padding-top: 0.5em;
	padding-bottom: 0.5em;
	padding-left: 1em;
	padding-right: 1em;
	text-align: center;
	background-color: #333333;
}
.mission .thumbnail .item .readmore:hover {
	color: #ffffff;
	background-color: #00b7fb;
}
.mission .thumbnail .item .readmore:visited {
	color: #ffffff;
	background-color: #014099;
}

@media screen and (max-width: 767px) {
	.mission {
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
		display: block;
		width: 100%;
		position: relative;
		padding-bottom: 20%;
		border-bottom: 1px solid #cccccc;
		margin-bottom: 5%;
	}
	.mission .container {
		width: 90%;
		margin: 0 auto;
	}
	.mission .container .title {
		position: absolute;
		top: -2%;
		left: 5%;
		width: 60%;
	}
	.mission .container .title img {
		width: 100%;
	}
	.mission .container .caption {
		width: 100%;
		padding-top: 18%;
		margin-bottom: 10%;
	}
	.mission .container .caption h2 {
		margin-bottom: 3%;
	}
	.mission .container .caption h2 .jp {
		display: block;
		font-size: 7.5vw;
		font-weight: 800;
		line-height: 120%;
	}
	.mission .container .caption h2 .en {
		display: block;
		font-family: 'Lato', sans-serif;
		font-size: 6vw;
		font-weight: 300;
		line-height: 120%;
		color: #f3941a;
		margin-left: 0;
	}
	.mission .container .caption p {
		font-size: 4.5vw;
		font-weight: 300;
		line-height: 160%;
	}
	.mission .container .caption .readmore {
		margin-top: 6%;
		display: block;
		width: 10rem;
		font-size: 4.5vw;
		font-weight: 400;
		line-height: 100%;
		color: #ffffff;
		text-decoration: none;
		padding-top: 0.5em;
		padding-bottom: 0.5em;
		padding-left: 1em;
		padding-right: 1em;
		text-align: center;
		background-color: #333333;
	}
	.mission .container .caption .readmore:hover {
		color: #ffffff;
		background-color: #00b7fb;
	}
	.mission .container .caption .readmore:visited {
		color: #ffffff;
		background-color: #014099;
	}
	.mission .thumbnail {
		width: 90%;
		margin: 0 auto;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
		display: grid;
		width: 100%;
		grid-template-columns: repeat(auto-fit, 100%);
		grid-template-columns: 1fr;
		grid-gap: 1rem;
		justify-content: space-between;
	}
	.mission .thumbnail .item {
		width: 100%;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
		border: 1px solid #ccc;
		padding: 4%;
		position: relative;
	}
	.mission .thumbnail .item h3 {
		font-size: 8vw;
		font-weight: 800;
		color: #2e3b76;
		line-height: 100%;
		letter-spacing: -1%;
		margin-bottom: 5%;
	}
	.mission .thumbnail .item h4 {
		font-size: 4vw;
		font-weight: 600;
		line-height: 140%;
		margin-bottom: 5%;
	}
	.mission .thumbnail .item p {
		font-size: 4vw;
		font-weight: 300;
		line-height: 160%;
	}
	
	.mission .thumbnail .item .readmore {
		margin-top: 5%;
		display: block;
		width: 8rem;
		font-size: 3.5vw;
		font-weight: 400;
		line-height: 100%;
		color: #ffffff;
		text-decoration: none;
		padding-top: 0.5em;
		padding-bottom: 0.5em;
		padding-left: 1em;
		padding-right: 1em;
		text-align: center;
		background-color: #333333;
	}
	.mission .thumbnail .item .readmore:hover {
		color: #ffffff;
		background-color: #00b7fb;
	}
	.mission .thumbnail .item .readmore:visited {
		color: #ffffff;
		background-color: #014099;
	}
}



.headline {
	width: 90%;
	max-width: 1180px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	margin: 0 auto;
	margin-bottom: 10%;
}
.headline h2 {
	font-family: 'Lato', sans-serif;
	font-size: 160%;
	font-weight: 800;
	line-height: 100%;
	margin-bottom: 5%;
}
.headline .news {
	width: 90%;
	margin-left: 5%;
	margin-bottom: 5%;
}
.headline .news .article {
	width: 100%;
	margin-bottom: 2%;
}
.headline .news .article span.date {
	font-size: 90%;
	font-weight: 300;
	line-height: 100%;
	margin-right: 3%;
}
.headline .news .article span.newstitle {
	font-size: 90%;
	font-weight: 400;
	line-height: 140%;
}
.headline .readmore {
	display: block;
	width: 8em;
	margin: 0 auto;
	padding-top: 0.2em;
	padding-bottom: 0.2em;
	font-size: 90%;
	font-weight: 300;
	line-height: 100%;
	color: #ffffff;
	background-color: #333333;
}
.headline .readmore:hover {
	background-color: #203ab1;
}
.headline .readmore .play {
	margin-left: 0.5em;
	font-size: 0.8em;
}


.aboutus {
	width: 90%;
	margin: 0 auto;
	margin-bottom: 10%;
}
.aboutus h2 {
	font-size: 220%;
	font-weight: 600;
	line-height: 160%;
	margin-bottom: 3%;
}
.aboutus p {
	font-size: 100%;
	font-weight: 300;
	line-height: 160%;
	margin-bottom: 3%;
}
.aboutus p span {
	display: block;
	font-size: 120%;
	font-weight: 600;
	margin-bottom: 1rem;
}
.aboutus .readmore {
	margin:  0 auto;
	margin-top: 5%;
	display: block;
	width: 12em;
	font-size: 90%;
	font-weight: 400;
	line-height: 100%;
	color: #ffffff;
	text-decoration: none;
	padding-top: 0.5em;
	padding-bottom: 0.5em;
	padding-left: 1em;
	padding-right: 1em;
	text-align: center;
	background-color: #333333;
}
.aboutus .readmore:hover {
	color: #ffffff;
	background-color: #00b7fb;
}
.aboutus .readmore:visited {
	color: #ffffff;
	background-color: #014099;
}

@media screen and (max-width: 767px) {
	.aboutus {
		width: 90%;
		margin: 0 auto;
		margin-bottom: 10%;
	}
	.aboutus h2 {
		font-size: 7vw;
		font-weight: 600;
		line-height: 160%;
		margin-bottom: 3%;
	}
	.aboutus p {
		font-size: 4vw;
		font-weight: 300;
		line-height: 160%;
		margin-bottom: 3%;
	}
	.aboutus .readmore {
		margin:  0 auto;
		margin-top: 5%;
		display: block;
		width: 12em;
		font-size: 4vw;
		font-weight: 400;
		line-height: 100%;
		color: #ffffff;
		text-decoration: none;
		padding-top: 0.5em;
		padding-bottom: 0.5em;
		padding-left: 1em;
		padding-right: 1em;
		text-align: center;
		background-color: #333333;
	}
	.aboutus .readmore:hover {
		color: #ffffff;
		background-color: #00b7fb;
	}
	.aboutus .readmore:visited {
		color: #ffffff;
		background-color: #014099;
	}
}


.clear {
	clear: both;
}