@charset "utf-8";
/* CSS Document */

/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
display: block;
}
body {
line-height: 1;
}
ol, ul {
list-style: none;
}
blockquote, q {
quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
content: '';
content: none;
}
table {
border-collapse: collapse;
border-spacing: 0;
}
*, *:before, *:after {
box-sizing: border-box;
}
a{
  outline: none;
  text-decoration:none;
}
img{
	vertical-align: bottom;
}
/* ------ */

html{
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 62.5%;/*rem算出をしやすくするために*/
/*	scroll-behavior: smooth;*/
}

body {
	font-family: "BIZ UDPGothic", "Josefin Sans", sans-serif;
	width: 100%;
	color: #000;
  font-size: 2.1rem;/*body内基本フォントサイズ*/
	background-color: #000;
}

.inner{
	width: 1000px;
  margin: 0 auto;
}

button{
  outline: none;
}
/* Firefox */
button::-moz-focus-inner {
  border: 0;
}

.clearfix:after {
 visibility: hidden;
 display: block;
 font-size: 0;
 content: " ";
 clear: both;
 height: 0;
}

.sp{
  display: none;
}

@media screen and (max-width:940px) {
  .pc{
    display: none;
  }
  
  .sp{
    display: block;
  }
}

/*------------------------------------------------------------------------------------------------
pagetop
------------------------------------------------------------------------------------------------*/
.pagetop {
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 99;
  width: 190px;
	text-align: center;
}

.pagetop p:first-child{
  margin-bottom: 10px;
}


/*------------------------------------------------------------------------------------------------
header
------------------------------------------------------------------------------------------------*/

header{
  background: url("../images/header-bg.jpg") no-repeat top center;
	overflow: hidden;
  height: 859px;
}

header .inner{
  position: relative;
}

header .inner h1{
  position: absolute;
  top: 95px;
  left: 137px;
  z-index: 2;
}

header .inner h2{
  position: absolute;
  top: 19px;
  right: 67px;
  z-index: 2;
}

header .inner .catch{
  position: absolute;
  top: 688px;
  left: 108px;
  z-index: 2;
}


/*------------------------------------------------------------------------------------------------
nav
------------------------------------------------------------------------------------------------*/
nav{
  position: relative;
  background: url(../images/menu-bg.jpg) repeat top center;
  height: 79px;
  top: 0;
  z-index: 1000;
	width: 100%;
}

nav ul{
  display: flex;
  justify-content: center;
}

nav ul li{
  margin-right: 0px;
}

nav ul li:last-child{
  margin-right: 0;
}

nav.fixed{
	position: fixed;
	
}

/*------------------------------------------------------------------------------------------------
loading
------------------------------------------------------------------------------------------------*/
#loader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: #fff; /* 背景色 */
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 9999;
  transition: opacity 1.0s ease-in-out; /* 消える時の時間 */
}

.loading-logo {
  height: auto;
  /* 鼓動のようなアニメーションを適用 */
  animation: logo-pulse 2s ease-in-out infinite;
}

/* 読み込み完了後のクラス */
.loaded {
  opacity: 0;
  pointer-events: none;
}

/* ふわふわと明滅させるアニメーション */
@keyframes logo-pulse {
  0% {
    opacity: 0.3;
    transform: scale(0.98);
  }
  50% {
    opacity: 1;
    transform: scale(1);
  }
  100% {
    opacity: 0.3;
    transform: scale(0.98);
  }
}


/* SLIDE
================= */
.slide {
  overflow: hidden;
}
.slide .thumb_L {
  position: relative;
  margin-bottom: 10px;
  width: 458px;
  height: 298px;
}
.slide .thumb_L li {
  position: absolute;
  top: 1px;
  left: 1px;
}
.slide .thumbArea {
  position: relative;
}
.slide .thumb_S{
	display: flex;
	justify-content: flex-end;
}

.slide .thumb_S li {
  margin-right: 6px;
}
.slide .thumb_S li:last-child{
	margin-right: 0;
}
/*------------------------------------------------------------------------------------------------
genshin
------------------------------------------------------------------------------------------------*/
#genshin{
  background: url("../images/genshin-bg.jpg") no-repeat top center;
  overflow: hidden;
}

#genshin .inner{
  height: 904px;
  position: relative;
}

#genshin .inner .title {
  position: absolute;
  top: 70px;
  left: 113px;
}

#genshin .inner .txt {
  position: absolute;
  top: 191px;
  left: 19px;
}

#genshin .inner .name {
  position: absolute;
  top: 211px;
  right: 0;
}

#genshin .inner .chara {
  position: absolute;
  top: 166px;
  left: -184px;
}

#genshin .inner .btn {
  position: absolute;
  top: 750px;
  right: 74px;
}

#avater_1{
	position: absolute;
	top: 342px;
	right: 20px;
}
/*------------------------------------------------------------------------------------------------
avatar
------------------------------------------------------------------------------------------------*/
#avatar{
  background: url("../images/avatar-bg.jpg") no-repeat top center;
  position: relative;
  overflow: hidden;
}

#avatar .inner{
  height: 904px;
  position: relative;
  text-align: center;
}

#avatar .title{
	position: absolute;
  top: 70px;
	left: 113px
}

#avatar .chara{
	position: absolute;
  top: 94px;
	right: -86px;
}

#avatar .txt{
	position: absolute;
  top: 205px;
	left: 0;
}

#avatar .inner .btn {
  position: absolute;
  top: 750px;
  left: 74px;
}

#avater_2{
	position: absolute;
	top: 342px;
	left: 20px;
}

/*------------------------------------------------------------------------------------------------
about
------------------------------------------------------------------------------------------------*/
#about{
  background: url("../images/about-bg.jpg") no-repeat top center;
  position: relative;
  overflow: hidden;
}

#about .inner{
  height: 889px;
	position: relative;
  text-align: center;
}

#about .inner .anime{
  position: absolute;
  top: 89px;
  left: 20px;
  text-align: left;
}

#about .inner .anime li{
	margin-bottom: 10px;
}

#about .inner .title{
  position: absolute;
  top: 109px;
  right: 20px;
}

#about .inner .txt{
  position: absolute;
  top: 212px;
  left: 433px;
  text-align: left;
}
#about .inner .txt li{
	margin-bottom: 17px;
}
/*------------------------------------------------------------------------------------------------
footer
------------------------------------------------------------------------------------------------*/
footer{
  background-color: #fff;
  height: 281px;
  text-align: center;
}

footer ul{
  padding: 47px 0;
  display: flex;
  justify-content: center;
    align-items: center;
}

footer li{
  padding: 0 35px 0 0;
}

footer #copyright{
    font-size: 12px;
    color: #959aad;
    line-height: 1.5;
    letter-spacing: normal;
}

