@charset "utf-8";
#ft-btn-entry {
	display: none;
}
h2.title {
	font-size: 3.38rem;
	color: #0050ab;
	letter-spacing: 0.1rem;
	font-family: 'Montserrat';
	font-weight: 700;
	text-align: center;
}
.caption {
	font-size: 1.25rem;
	font-weight: bold;
	color: #0050ab;
	letter-spacing: 0.1rem;
	margin: 5px 0 40px 0;
	text-align: center;
}
.btn {
	position: relative;
	width: 200px;
	text-align: center;
	font-size: 1rem;
	font-weight: bold;
	letter-spacing: 0.1rem;
	margin: 0 auto;
}
.btn a {
	display: block;
	border: 3px solid #0050ab;
	border-radius: 3px;
	box-sizing: border-box;
	text-decoration: none;
	color: #fff;
	padding: 10px 0;
	background: #0050ab;
}
.btn a:hover {
	background: #fff;
	color: #0050ab;
}
.btn a:after {
	position: absolute;
	display: block;
	content: " ";
	background: url(../../img/icon_angle_right.png);
	background-size: contain;
	vertical-align: middle;
	margin: auto;
	top: 0;
	bottom: 0;
	right: 5px;
	width: 14px;
	height: 14px;
}
.btn a:hover:after {
	position: absolute;
	display: block;
	content: " ";
	background: url(../../img/icon_angle_right_pan.png);
	background-size: contain;
	vertical-align: middle;
	margin: auto;
	top: 0;
	bottom: 0;
	right: 5px;
	width: 14px;
	height: 14px;
}
#content-top {
	position: relative;
	width: 1100px;
	margin: 0 auto;
}
svg.top-svg-pc {
	display: block;
	position: absolute;
	z-index: 3;
	top: 385px;
	left: 290px;
}
/* svg pc */
svg.top-svg-pc path {
	fill: none;
	stroke: #0050ab;
	stroke-width: 4;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-dasharray: 4000;
	stroke-miterlimit: 4;
	stroke-dashoffset: 0;
	stroke-opacity: 1;
	max-width: 100%;
}
svg.top-svg-sp {
	display: none;
}
#information {
	padding: 15px 0;
	width: 100%;
	overflow: hidden;
}
.info-box {
	float: right;
	background: #eeeeee;
	margin: 0 -10px 0 0;
	width: 380px;
	padding: 20px;
	font-size: 0.81rem;
	box-shadow: 1px 1px 2px 1px #dedede;
	border-radius: 3px 0px 0px 3px;
}
.info-box a {
	color: #555;
}
.info-box p {
	line-height: 1.4;
	;
}
.info-title {
	font-size: 0.81rem;
	font-weight: bold;
	color: #0050ab;
	margin: 0 0 10px 0;
}
/*-- イラスト　PC--*/
#ill-box-pc {
	z-index: 5;
	position: relative;
	height: 740px;
}
.ill-pc {
	position: absolute;
	width: 980px;
	height: 650px;
	left: 0;
	background: url(../../img/top/ill_pc_bg.png);
	background-size: contain;
}
.hello {
	position: absolute;
	top: 150px;
	left: 220px;
}
.hello img {
	width: 405px;
	height: 95px;
}
.ill-pc-title {
	position: absolute;
	top: 20px;
	right: 45px;
}
.ill-pc-nav {
	position: absolute;
	top: 130px;
	right: 45px;
	text-align: right;
}
.ill-pc-nav-sp {
	display: none;
}
.thumb {
	position: absolute;
	right: 210px;
	text-align: right;
	visibility: hidden;
}
.cp-nav {
	position: relative;
	text-align: right;
	height: 50px;
}
.cp-nav-btn {
	position: absolute;
	right: 0;
}
.cp-nav:hover img {
	visibility: visible;
}
/*--イラスト　ハチ部分 --*/
#ill-box-hachi {
	z-index: 5;
	position: relative;
	height: 770px;
}
.ill-hachi {
	position: absolute;
	width: 900px;
	height: 720px;
	right: 0;
	background: url(../../img/top/ill_hachi_bg.png);
	background-size: contain;
}
.ill-hachi-title {
	position: absolute;
	top: 370px;
	left: 45px;
}
.train {
	position: absolute;
	top: 230px;
	left: 0px;
}
.train img {
	width: 500px;
	height: 125px;
}
/*--イラスト　Earth部分 --*/
#ill-box-earth {
	z-index: 5;
	position: relative;
	height: 860px;
}
.ill-earth {
	position: absolute;
	width: 690px;
	height: 690px;
	left: 0;
	background: url(../../img/top/ill_earth_bg.png);
	background-size: contain;
}
.whale {
	position: absolute;
	top: 570px;
	left: 430px;
}
.whale img {
	width: 100px;
	height: 100px;
}
.satellite {
	position: absolute;
	top: 0px;
	right: -100px;
}
.satellite img {
	width: 180px;
	height: 69px;
}
.ship {
	position: absolute;
	top: 200px;
	left: 400px;
}
.ship img {
	width: 75px;
	height: 105px;
}
.fountain {
	position: absolute;
	top: 520px;
	left: 70px;
}
.fountain img {
	width: 60px;
	height: 40px;
}
.ill-earth-title {
	position: absolute;
	top: 100px;
	right: 50px;
}
/*--イラスト　宇宙部分 --*/
#ill-box-space {
	z-index: 1;
	position: relative;
	height: 850px;
}
.ill-space {
	position: absolute;
	width: 1100px;
	height: 800px;
	right: 0;
	left: 0;
	background: url(../../img/top/ill_space_bg.png);
	background-size: contain;
}
.rocket {
	position: absolute;
	top: -140px;
	left: 50px;
}
.rocket img {
	width: 400px;
	height: 320px;
}
.astronaut {
	position: absolute;
	top: 480px;
	left: 150px;
}
.astronaut img {
	width: 150px;
	height: 150px;
}
.ill-space-title {
	position: absolute;
	top: 170px;
	left: 210px;
}
.btn-entry-area {
	position: absolute;
	margin: auto;
	right: 0;
	left: 0;
	bottom: 90px;
}
.member-ball-area {
	display: none;
}
.ball-area {
	position: absolute;
	right: 0;
	height: 220px;
	width: 185px;
}
.b01 {
	z-index: 10;
	top: 300px;
	right: 220px;
}
.b02 {
	z-index: 9;
	top: 350px;
	right: 0px;
}
.b03 {
	z-index: 8;
	top: 500px;
	right: 295px;
}
.b04 {
	z-index: 7;
	top: 550px;
	right: 70px;
}
.b05 {
	z-index: 6;
	top: 700px;
	right: 210px;
}
.cap {
	position: absolute;
	margin: auto;
	top: 120px;
	right: 0;
	left: 0;
	text-align: center;
	width: 185px;
	height: 56px;
	visibility: hidden;
}
.ball-area:hover img {
	visibility: visible;
}
/* ボールメニュー */
.ball {
	position: absolute;
	margin: auto;
	top: 50%;
	left: 50%;
	right: 50%;
	bottom: 50%;
	border: 3px solid #0050ab;
	border-radius: 50%;
	height: 160px;
	overflow: hidden;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 160px;
}
.ball-nav {
	display: none;
}
.ball-inner {
	border-radius: 50%;
	overflow: hidden;
	-webkit-mask-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAA5JREFUeNpiYGBgAAgwAAAEAAGbA+oJAAAAAElFTkSuQmCC);
	mask-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAA5JREFUeNpiYGBgAAgwAAAEAAGbA+oJAAAAAElFTkSuQmCC);
}
.ball .item {
	-webkit-animation: rotation 9s linear 0s infinite;
	animation: rotation 9s linear 0s infinite;
}
 @-webkit-keyframes rotation {
 from {
 -webkit-transform: translateX(0);
 transform: translateX(0);
}
 from {
 -webkit-transform: translateX(-213%);
 transform: translateX(-213%);
}
}
 @keyframes rotation {
 from {
 -webkit-transform: translateX(0);
 transform: translateX(0);
}
 from {
 -webkit-transform: translateX(-213%);
 transform: translateX(-213%);
}
}

/*-----------------------------------------
	768
------------------------------------------*/
@media only screen and ( max-width: 768px ) {
h2.title {
	font-size: 2.0rem;
}
.btn {
	width: 60%;
	font-size: 0.81rem;
}
.btn a {
	padding: 15px 0;
}
.caption {
	font-size: 0.89rem;
	margin: 5px 0 20px 0;
}
#content-top {
	width: 100%;
}
#information {
	width: 100%;
	padding: 20px 0;
}
.info-box {
	width: 65%;
	padding: 10px;
	font-size: 0.81rem;
}
.info-title {
	font-size: 0.69rem;
	margin: 0 0 5px 0;
}
.info-box p {
	font-size: 0.63rem;
	padding: 0 10px 0 0;
	line-height: 1.2;
}
/* イラスト PC */
#ill-box-pc {
	position: relative;
	width: 100%;
	height: 580px;
}
.ill-pc {
	margin: auto;
	width: 320px;
	height: 212px;
	left: 0;
	right: 0;
	background: url(../../img/top/ill_pc_bg.png);
	background-size: contain;
}
.ill-pc-title {
	position: absolute;
	top: 200px;
	right: auto;
	width: 100%;
}
.hello {
	top: 50px;
	left: 75px;
}
.hello img {
	width: 130px;
	height: 30px;
}
.ill-pc-nav {
	display: none;
}
/* company nav sp */
.ill-pc-nav-sp {
	position: absolute;
	right: 0;
	left: 0;
	top: 265px;
	display: table;
	width: 90%;
	border-collapse: separate;
	border-spacing: 0 5px;
	margin: 0 auto;
	text-align: center;
}
.company-nav-row {
	display: table-row;
}
.ill-pc-nav-sp div {
	display: table-cell;
	vertical-align: middle;
}
.ill-pc-nav-sp div a {
	display: block;
	padding: 10px 0;
}
.sub-nav {
	border: 3px solid #0050ab;
	border-radius: 3px 0 0 3px;
	box-sizing: border-box;
	color: #0050ab;
	text-align: center;
	background: #fff;
	width: 50%;
	height: 55px;
	font-size: 0.69rem;
	line-height: 1.22;
}
.sub-nav a {
	color: #0050ab;
	text-decoration: none;
}
.main-nav {
	position: relative;
	border: 3px solid #0050ab;
	border-radius: 0 3px 3px 0;
	box-sizing: border-box;
	color: #fff;
	text-align: center;
	background: #0050ab;
	width: 50%;
	font-size: 0.81rem;
}
.main-nav a:after {
	position: absolute;
	display: block;
	content: " ";
	background: url(../../img/icon_angle_right.png);
	background-size: contain;
	vertical-align: middle;
	margin: auto;
	top: 0;
	bottom: 0;
	right: 5px;
	width: 14px;
	height: 14px;
}
.main-nav a {
	color: #fff;
	text-decoration: none;
}
/*--イラスト　ハチ部分 --*/
#ill-box-hachi {
	position: relative;
	height: 430px;
}
.ill-hachi {
	margin: auto;
	width: 320px;
	height: 256px;
	right: 0;
	left: 0;
	background: url(../../img/top/ill_hachi_bg.png);
	background-size: contain;
}
.ill-hachi-title {
	top: 235px;
	left: 0;
	width: 100%;
}
.train {
	top: 82px;
	left: 0;
}
.train img {
	width: 175px;
	height: 44px;
}
/*--イラスト　Earth部分 --*/
#ill-box-earth {
	position: relative;
	height: 800px;
}
.ill-earth {
	margin: auto;
	width: 320px;
	height: 320px;
	left: 0;
	right: 0;
	background: url(../../img/top/ill_earth_bg.png);
	background-size: contain;
}
.ill-earth-title {
	top: 310px;
	right: auto;
	width: 100%;
}
.whale {
	position: absolute;
	top: 265px;
	left: 200px;
}
.whale img {
	width: 50px;
	height: 50px;
}
.satellite {
	position: absolute;
	top: -30px;
	right: 0px;
}
.satellite img {
	width: 90px;
	height: 35px;
}
.ship {
	top: 100px;
	right: 60px;
	left: auto;
}
.ship img {
	width: 37px;
	height: 53px;
}
.fountain {
	position: absolute;
	top: 245px;
	left: 35px;
}
.fountain img {
	width: 30px;
	height: 20px;
}
/*--イラスト　宇宙部分 --*/
#ill-box-space {
	position: relative;
	height: 350px;
}
.ill-space {
	margin: auto;
	width: 320px;
	height: 233px;
	right: 0;
	left: 0;
	background: url(../../img/top/ill_space_bg.png);
	background-position: center;
	background-size: contain;
}
.ill-space-title {
	width: 100%;
	top: 185px;
	left: auto;
}
.rocket {
	top: -20px;
	left: -10px;
}
.rocket img {
	width: 150px;
	height: 120px;
}
.astronaut {
	top: 130px;
	left: 20px;
}
.astronaut img {
	width: 60px;
	height: 60px;
}
.btn-entry-area {
	display: none;
}
/* ball nav */
.member-ball-area {
	display: block;
	position: absolute;
	top: 350px;
	height: 420px;
	margin: 40px 0 0 0;
	width: 100%;
	right: auto;
	left: auto;
}
.member-ball {
	display: block;
}
.member-ball li {
	display: block;
	position: relative;
	width: 100%;
	height: 80px;
	margin: -5px 0 0 0;
}
.bg1, .bg2, .bg3, .bg4, .bg5 {
	position: absolute;
	top: auto;
	right: auto;
	bottom: auto;
	left: auto;
}
.ball {
	position: absolute;
	left: auto;
	right: auto;
	height: 80px;
	overflow: hidden;
	-webkit-transform: translate(0, 0);
	transform: translate(0, 0);
	width: 80px;
}
.ball01, .ball05 {
	left: 20px;
}
.ball02 {
	right: 30px;
}
.ball03 {
	left: 60px;
}
.ball04 {
	right: 50px;
}
.item img {
	width: 340px;
	height: 80px;
}
.ball-nav {
	display: block;
	position: absolute;
	height: 40px;
	margin: auto;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}
.nav01 {
	position: absolute;
	left: 110px;
}
.nav02 {
	position: absolute;
	right: 120px;
}
.nav03 {
	position: absolute;
	left: 150px;
}
.nav04 {
	position: absolute;
	right: 140px;
}
.nav05 {
	position: absolute;
	left: 110px;
}
.ball-area {
	display: none;
}
#ft-btn-entry {
	display: block;
}

/* skrollr対策 */
.btn a:hover {
	background: #0050ab;
	color: #fff;
}

.btn a:hover:after {
	position: absolute;
	display: block;
	content: " ";
	background: url(../../img/icon_angle_right.png);
	background-size: contain;
	vertical-align: middle;
	margin: auto;
	top: 0;
	bottom: 0;
	right: 5px;
	width: 14px;
	height: 14px;
}

.btn-entry a:hover {
	background: #fb751c;
	color: #fff;
}
.btn-entry a:hover:after {
	position: absolute;
	display: block;
	content: " ";
	background: url(../../img/icon_angle_right.png);
	background-size: contain;
	vertical-align: middle;
	margin: auto;
	top: 0;
	bottom: 0;
	right: 5px;
	width: 16px;
	height: 16px;
}

}
/*----- SP SVG -----*/
svg.top-svg-sp {
	display: none;
	position: absolute;
	z-index: 3;
	top: 130px;
	display: none;
}
svg.top-svg-sp path {
	fill: none;
	stroke: #0050ab;
	stroke-width: 4;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-dasharray: 3000;
	stroke-miterlimit: 4;
	stroke-dashoffset: 0;
	stroke-opacity: 1;
	max-width: 100%;
}

@media only screen and ( max-width: 768px ) {
svg.top-svg-pc {
	display: none;
}
svg.top-svg-sp {
	display: block;
	left: 265px;
}
}

@media only screen and ( max-width: 650px ) {
svg.top-svg-sp {
	display: block;
	left: 210px;
}
}

@media only screen and ( max-width: 600px ) {
svg.top-svg-sp {
	display: block;
	left: 185px;
}
}

@media only screen and ( max-width: 550px ) {
svg.top-svg-sp {
	display: block;
	left: 165px;
}
}

@media only screen and ( max-width: 500px ) {
svg.top-svg-sp {
	display: block;
	left: 140px;
}
}

@media only screen and ( max-width: 414px ) {
svg.top-svg-sp {
	display: block;
	left: 95px;
}
}

@media only screen and ( max-width: 375px ) {
svg.top-svg-sp {
	display: block;
	left: 75px;
}
}

@media only screen and ( max-width: 320px ) {
svg.top-svg-sp {
	left: 50px;
}
}
