@import url(//fonts.googleapis.com/earlyaccess/notosansjp.css);
@charset "utf-8";

body {color: #fff;}
a,a:focus,a:active,a:hover{color: #fff;cursor:pointer;}
.btn{display:block;cursor:pointer;}

ul.asterisk li {
  list-style-type: none;
  text-indent: -1em;
  margin-left:15px;
}
ul.asterisk li:before {
  display: inline;
  content: "※";
}

.margin-top10px{margin-top: 10px;}
.margin-top20px{margin-top: 20px;}
.margin-top30px{margin-top: 30px;}
.margin-top40px{margin-top: 40px;}
.margin-top50px{margin-top: 50px;}

/* COMMON ==================== */
#wrapper{
	width: 100%;
	margin: 0;
	padding: 0;
	font-size: 100%;
}
@media screen and ( min-width:768px ) { /* PC ==================== */
  .pc{display: block !important;}
  .sp{display: none !important;}
}
@media screen and ( max-width:767px ) { /* SP  ==================== */
  .pc{display: none !important;}
  .sp{display: block !important;}
  br.pc{
		display: none !important;
	}
}


/* ヘッダー ナビ ==================== */
.earthspark-header{
  padding: 5px 0;
  margin:0 !important;
  width: 100%;
	background-color: #383150;
}

@media screen and ( min-width:768px ) { /* PC ==================== */
  .earthspark-header-area{
  	width:100%;
  	margin:0;
  }
}
@media screen and ( max-width:767px ) { /* SP  ==================== */
  .earthspark-header-area{
  	width:100%;
  }
}

.earthspark-header-logo{
	float: left;
  margin-left: 20px;
}
@media screen and ( min-width:768px ) { /* PC ==================== */
  .earthspark-header-logo{
    max-width:100px;
  }
}
@media screen and ( max-width:767px ) { /* SP  ==================== */
  .earthspark-header-logo{
    width:200px;
  }
}
.earthspark-header-logo a{
    float: left;
    margin-right:2.5%;
  }
.earthspark-header-logo img{
  width:100%;
} 
@media screen and ( min-width:768px ) { /* PC ==================== */
  .earthspark-header-logo a.logo-earthspark{
    width:100%;
  }
}
@media screen and ( max-width:767px ) { /* SP  ==================== */
  .earthspark-header-logo a.logo-earthspark{
    width:45%;
  }
}

@media screen and ( min-width:768px ) { /* PC ==================== */
  .earthspark-header-menu{
  float: left;
}
}
@media screen and ( max-width:767px ) { /* SP  ==================== */
  .earthspark-header-menu{
  float: right;
}
}
.earthspark-header-menu a{
  color:#fff;
}
@media screen and ( min-width:768px ) { /* PC ==================== */
  .nav-wrapper{
    display: block;
    margin: 10px 30px 0 0;
  }
  .nav-list{
  }
  .nav-list li{
    float: left;
    padding:0 !important;
    margin:0 !important;
    border-right:1px solid #fff;
    text-align: center;
    line-height: 1.0;
    overflow: hidden;
  }
  .nav-list li a{
    text-decoration: none;
  }
  .nav-list li a span{
    display: block;
    width:60%;
    margin:0 auto;
  }
  .nav-list li a span img{
    width:100%;
  }
}
@media screen and ( max-width:767px ) { /* SP  ==================== */
  /* ハンバーガーメニュー ==================== */
  .burger-btn{
    display: block;
    width: 41px;
    height: 41px;
    position: relative;
    z-index: 3;
    /* codepenの挙動のため */
    background-color:transparent;
    border:none;
    cursor: pointer;
  }
  .bar{
    width: 30px;
    height: 3px;
    display: block;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    background-color: #808080;
  }
  .bar_top{
    top: 10px;
  }
  .bar_mid{
    top: 50%;
    transform: translate(-50%,-50%);
  }
  .bar_bottom{
    bottom: 10px;
  }
  .burger-btn.close .bar_top{
    transform: translate(-50%,10px) rotate(45deg);
    transition: transform .3s;
  }
  .burger-btn.close .bar_mid{
    opacity: 0;
    transition: opacity .3s;
  }
  .burger-btn.close .bar_bottom{
    transform: translate(-50%,-8px) rotate(-45deg);
    transition: transform .3s;
  }
  .nav-wrapper{
    display: none;
    width: 100vw;
    height: 100vh;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
  }
  .header-nav{
    width: 100%;
    height: 100%;
    background: linear-gradient(to right, rgba(0,0,0,0.8), rgba(0,0,0,1), rgba(0,0,0,0.8));
    background: -webkit-linear-gradient(left, rgba(0,0,0,1), rgba(30,30,40,1), rgba(0,0,0,1));
    background: -moz-linear-gradient(left, rgba(0,0,0,1), rgba(30,30,40,1), rgba(0,0,0,1));
    background: -o-linear-gradient(left, rgba(0,0,0,1), rgba(30,30,40,1), rgba(0,0,0,1));
    background: -ms-linear-gradient(left, rgba(0,0,0,1), rgba(30,30,40,1), rgba(0,0,0,1));
    z-index: 2;
  }
  .header-nav .nav-list{
    display: block;
    position: absolute;
    text-align: center;
  }
  .header-nav .nav-list{
    width:100%;
    top: 50%;
    transform: translate(0,-50%);
  }
  .header-nav .nav-logo{
    margin-right: 0;
    margin-bottom: 20px;
    padding-bottom:20px;
    border-bottom: 1px solid #808080;
  }
  .header-nav .nav-item{
    margin-right: 0;
    border: 1px solid #808080;
    padding: 0;
    width:75%;
    margin:0 auto 10px;
    text-align: center;
  }
  .header-nav .nav-item a{
    display: flex;
    width:100%;
    height: 100%;
    font-size: 18px;
    color: #fff;
    text-align: center !important;
    text-decoration: none;
    padding:5px 10px;
    margin: 0 auto;
  }
  .header-nav .nav-item a:hover{
    width:100%;
  }
}

.content{
  width:100%;
  margin: 0;
  padding: 0;
  background-image: url("../img/bg_design.png"),url("../img/bg@2x.jpg");
  background-size: 100%,100%;
  background-repeat: no-repeat,no-repeat;
  position: relative;
}
.content img{
  width:100%;
}
.content-bg-podition{
  background-position: 0 50%, 0 0;
}
.content-header{
  position: relative;
}
.bg_screen{
  position:  absolute;
  top:0;
  z-index: 1;
}
.content-header-img{
  position: relative;
  z-index: 2;
}
.content-body{
  position: relative;
  z-index: 2;
  width:80%;
  margin:0 auto;
}
.bg-character{
  position: absolute;
  width:40%;
  z-index:1;
}
.bg-character-left{
  left:0;
}
.bg-character-right{
  right:0;
}

@media screen and ( min-width:768px ) { /* PC ==================== */
  .title-right{
    width:100%;
    text-align: right !important;
  }
}
@media screen and ( max-width:767px ) { /* SP  ==================== */
  .title-right{
    width:100%;
    text-align: right !important;
    position: relative;
    right:0 !important;
  }
}

@media screen and ( min-width:768px ) { /* PC ==================== */
  .content h2{
    width:60%;
    text-align: right !important;
  }
}
@media screen and ( max-width:767px ) { /* SP  ==================== */
  .content h2{
  }
}

.content-footer{
  position: relative;
  z-index:2;
}
.footer_brand_Logo{
  background-color: #000;
}




