@charset "utf-8";

@import url('https://fonts.googleapis.com/earlyaccess/notosansjapanese.css');
@import url('https://fonts.googleapis.com/css?family=Sawarabi+Mincho');

/* reset css */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; outline: 0; font-size: 100%; vertical-align: baseline; background: transparent; }body { line-height: 1; }article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }nav ul { list-style: none; }blockquote, q { quotes: none; }blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; }a { margin: 0; padding: 0; font-size: 100%; vertical-align: baseline; background: transparent; }/* change colours to suit your needs */ins { background-color: #ff9; color: #000; text-decoration: none; }/* change colours to suit your needs */mark { background-color: #ff9; color: #000; font-style: italic; font-weight: bold; }del { text-decoration: line-through; }abbr[title], dfn[title] { border-bottom: 1px dotted; cursor: help; }table { border-collapse: collapse; border-spacing: 0; }/* change border colour to suit your needs */hr { display: block; height: 1px; border: 0; border-top: 1px solid #cccccc; margin: 1em 0; padding: 0; }input, select { vertical-align: middle; }


/*
 * defaut style
 */
html { height: 100%; overflow-y: scroll; font-size:16px; letter-spacing:-0.03rem; background:#000000; }
body { background:#fff; /* min-height:100%; */  font-size: 100%; color: #333333; min-width: 1000px; overflow: hidden; word-wrap: break-word; -webkit-text-size-adjust: 100%;  }
body { font-family:'Noto Sans JP',	"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }
table { word-break: break-word; }
img { max-width: 100%; height: auto; width: auto; vertical-align: bottom; border: none; }
li { list-style-type: none; }
ol { margin-bottom:1.5em; }
ol li {  margin-left:20px; padding-left:5px; list-style-type:decimal; margin-bottom:0.5em; }
p { margin-bottom: 2em; line-height:160%; }
p:last-child { margin-bottom:0; }
a { color: inherit; text-decoration: none; }
a:hover { text-decoration: underline; }
sup { position: relative; font-size: 100%; top: -5px; }
sub { position: relative; font-size: 100%; bottom: -5px; }
.clearfix { *zoom: 1; }
.clearfix:after { content: ''; display: block; clear: both; height: 0; margin-top: -1px; }
.sp { display: none!important; }
.center { text-align:center; }
.pc-center { text-align:center; }
.right { text-align:right; } 
.pc-right { text-align:right; } 
strong { /* color:#C00; */ }
em { /* color:#960; */ font-weight:bold; font-style:normal; }
section { position:relative; z-index:1; }
* { box-sizing:border-box; }


#loader-bg {
  display: none;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  background: #fff;
  z-index: 999;
}
#loader {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  width: 29px;
  height: 29px;
  margin-top: -14px;
  margin-left: -14px;
  text-align: center;
  color: #333;
  z-index: 1000;
}


/*
 * header & footer
 */
#container {  }
.scroll-bg { opacity:0; position:fixed; left:0; top:0; width:100%; height:100%; background:url(../img/img_main_visual02.png) repeat-x center top #fff; background-size:cover; }
body.loading #container { visibility:hidden; }


#header { }
#header > .inner { max-width:1040px; margin:0 auto; position:relative; }
#header .logo { width:20.2%; position:relative; top:-2px; }
#header #gnav { position:absolute; right:2%; top:0; margin-top:2rem; }
#header #gnav li { display:inline-block; border-left:1px solid #88602c; padding-left:2rem; margin-left:2rem; }
#header #gnav li:first-child { border-left:none; padding-left:0; }
#header #gnav a { color:#76491b; font-size:1.5rem; }


#footer { background:#03091e; position:relative; padding:34px 0 60px; color:#fff; font-size:14px; line-height:160%; }
#footer .pagetop { text-align:center;  }
#footer .pagetop:hover { opacity:0.7; }
#footer .sns { text-align:center; margin:20px 0 20px; }
#footer .prize { text-align:center; margin-bottom:20px; }
#footer .logo { text-align:center; margin:20px 0 20px; }
#footer .copyright { text-align:center; }



/*
 * contents
 */
.contents {}
.content-wrapper {}
.main-content { padding-bottom:200px; }

/* animation */
.standby { transform: translateY(15px); opacity:0; }
.is-animated { transition-delay:0.50s!important; transform: translateY(0px); opacity:1; transition-duration: 1s!important; transition-property:transform,opacity!important; }
.is-completed { transition-delay:0s!important; transition-duration:0s!important; }

/* anime */
.fadeInEx1 { animation:fadeInEx1 0.8s ease 0s forwards!important; }
.fadeInEx2 { animation:fadeInEx1 1s ease 0s forwards!important; }
.fadeInUpEx1 { animation:fadeInUpEx1 0.7s ease 0s forwards!important; }
.fadeInUpEx2 { animation:fadeInUpEx2 0.7s ease 0s forwards!important; }
.fadeInDownEx1 { animation:fadeInDownEx1 0.5s ease 0s forwards!important; }
.zoomUpEx1 { animation:zoomUpEx1 1s ease 0s forwards!important; }

@keyframes fadeInEx1 {
    0% { opacity:0; }
  100% { opacity:1;  }
}
@keyframes fadeInUpEx1 {
    0% { opacity:0; transform:translateY(100px); }
  100% { opacity:1; transform:translateY(0px); }
}
@keyframes fadeInUpEx2 {
    0% { opacity:0; transform:translateY(400px); }
	100% { opacity:1; transform:translateY(0px); }
}
@keyframes fadeInDownEx1 {
    0% { opacity:0; transform:translateY(-200px); }
  100% { opacity:1; transform:translateY(0px); }
}
@keyframes zoomUpEx1 {
    0% { opacity:0; transform:scale(0.9,0.9) translate(0px,0px); }
  100% { opacity:1; transform:scale(1,1) translate(0px,0px); }
}




/* 汎用 */
.red { color:#e71f19; }
.green { color:#009d42; }
.blue { color:#0099ff; }
.note { line-height:140%; }
.underline { text-decoration:underline; }
.underline:hover { text-decoration:none; }
.btn01 a { display:block; width:62.2%; margin:0rem auto 1.8rem; border:2px solid #76491b; background:#fff; color:#76491b; border-radius:50px; font-size:1.875rem; padding:2rem; position:relative; text-align:center; }
.btn01 a:after { display:block; content:""; background:url(../img/ico_arrow01.png) no-repeat left top; background-size:cover; width:20px; height:22px; position:absolute; right:3.89408099688474%; top:50%; transform:translateY(-50%);	}
.btn01 a:hover { text-decoration:none; opacity:0.7; }

.ruby { position:relative; display:inline-block; }
.ruby .rt { position:absolute; top:-12px; text-align:center; font-size:50%; letter-spacing:0; white-space:nowrap; left:50%; transform:translateX(-50%); }




/* content */
.sns ul {font-size: 0;}
.sns ul li {display: inline-block;}
.sns ul li:not(:last-of-type) {margin-right: 10px;}
#header .sns {position: absolute;top: 15px;right: 0px;z-index: 15;}
#footer .sns ul li > * { vertical-align:bottom; }


/* visual */
.visual-area { margin-bottom:0px; min-height:1364px; }
.visual-area img { max-width:none; }
.visual-area > .inner { width:1000px; height:100%; margin:0 auto; position:relative;  }
.visual-area .logo { position:absolute; left:10px; top:24px; z-index:5; }
.visual-area .title01 { position:absolute; left:283px; top:53px; z-index:5; }
.visual-area .txt01 { position:absolute; left:10px; top:76px; z-index:2; }
.visual-area .book { background:rgba(51,92,195,0.8); padding:8px 14px 8px; display:inline-block; position:absolute; left:10px; top:612px; border-radius:10px; z-index:5; }
.visual-area .book .date {}
.visual-area .book .thumb { margin-bottom:6px;}
.visual-area .book .buy { margin-bottom:2px; }
.visual-area .book .trial {}
.visual-area .catch { position:absolute; left:35px; top:1045px; z-index:5; }
.visual-area .author { position:absolute; left:899px; top:54px; z-index:5; }
.visual-area .visual01 { position:absolute; left:137px; top:25px; z-index:1; }
.visual-area .visual02 { position:absolute; left:-191px; top:272px; z-index:4; }
.visual-area .visual03 { position:absolute; left:25px; top:178px; z-index:3; }
.visual-area .sns { position:absolute; right:10px; top:24px; z-index:3; }

.visual-area .title01,
.visual-area .txt01,
.visual-area .visual01,
.visual-area .visual02,
.visual-area .visual03,
.visual-area .book,
.visual-area .catch,
.visual-area .author { opacity:0; }
/*.visual-area .visual.animated { opacity:1!important; }*/

.review-area { opacity:0; margin:0 auto; padding-bottom:50px; position:relative; z-index:2; background:url(../img/bg_review.png) repeat; }
.review-area img { max-width:none; }
.review-area > .inner { width:1000px; margin:0 auto; position:relative; z-index:1; }
.review-area .title { padding-top:6px; margin-bottom:30px; margin-left:65px; }

.examination-area { opacity:0; margin:0 auto; position:relative; z-index:2; background:url(../img/bg_examination01.png) repeat; height:962px; }
.examination-area img { max-width:none; }
.examination-area > .inner { width:1000px; margin:0 auto; position:relative; z-index:1; height:100%; }
.examination-area > .inner:after { content:""; display:block; position:absolute; left:-203px; top:0; width:1444px; height:962px; background:url(../img/bg_examination02.png) no-repeat left top; }
.examination-area .title { padding-top:6px; margin-bottom:30px; margin-left:65px; }

.goods-area { opacity:0; margin:0 auto; padding-bottom:50px; position:relative; z-index:2; background:url(../img/bg_goods.png) repeat; }
.goods-area img { max-width:none; }
.goods-area > .inner { width:1000px; margin:0 auto; position:relative; z-index:1; }
.goods-area .title { padding-top:6px; margin-bottom:30px; margin-left:65px; }
.goods-area .banner-list { position:relative; }
.goods-area .banner-list .list .item { margin-bottom:15px; text-align:center; }
.goods-area .banner-list .list .item:last-child { margin-bottom:0; }
.goods-area .banner-list .obj01 { position:absolute; left:0; top:0px; }
.goods-area .banner-list .obj02 { position:absolute; right:10px; bottom:0px; }

.story-area { opacity:0; margin:0 auto; padding-bottom:50px; position:relative; z-index:2; background:url(../img/bg_story.png) repeat; height:1066px; }
.story-area img { max-width:none; }
.story-area > .inner { width:1000px; margin:0 auto; position:relative; z-index:1; }
.story-area > .inner:after { content:""; display:block; position:absolute; left:10px; top:37px; width:1002px; height:958px; background:url(../img/img_story01.png) no-repeat left top; }
.story-area .title { padding-top:0px; margin-bottom:30px; margin-left:10px; }
.story-area .txt { position:relative; z-index:2; left:42px; }
.story-area .img { position:absolute; z-index:2; left:130px; top:212px; }

.character-area { opacity:0; margin:0 auto; padding-bottom:50px; position:relative; z-index:2; background:url(../img/bg_character.png) repeat; }
.character-area img { max-width:none; }
.character-area > .inner { width:1000px; margin:0 auto; position:relative; z-index:1; }
.character-area .title { padding-top:0px; margin-bottom:30px; margin-left:10px; }
.character-area .character-list { margin-top:65px; }
.character-area .character-list .item:nth-child(1) { position:relative; left:-26px; top:0; }
.character-area .character-list .item:nth-child(2) { position:absolute; left:215px; bottom:0; }
.character-area .character-list .item:nth-child(3) { position:absolute; left:422px; bottom:0; }
.character-area .character-list .item:nth-child(4) { position:absolute; left:590px; bottom:0; }
.character-area .character-list .item:nth-child(5) { position:absolute; left:794px; bottom:0; }

.information-area { opacity:0; margin:0 auto; padding-bottom:50px; position:relative; z-index:2; background:#fff; }
.information-area img { max-width:none; }
.information-area > .inner { width:1000px; margin:0 auto; position:relative; z-index:1; }
.information-area .title { padding-top:0px; margin-bottom:50px; margin-left:10px; }
.book-box { margin-left:50px; }
.book-box .box-left { float:left; width:180px; }
.book-box .box-right { float:right; width:740px; }
.book-box .thumb { position:relative; }
.book-box .release { position:absolute; left:-32px; top:-32px; }
.book-box .ttl { font-size:30px; font-weight:bold; margin-bottom:20px; line-height:120%; }
.book-box .ttl span { font-size:20px; }
.book-box .author { font-size:18px; margin-bottom:20px; line-height:160%; font-weight:bold; }
.book-box .author span { font-size:14px; margin-left:25px; }
.book-box .lead { font-size:22px; color:#e60012; font-weight:bold; line-height:160%; margin-bottom:0.5em; }
.book-box p { font-size:16px; }
.book-box .btns { margin-top:-5px; }
.book-box .btns a:hover { opacity:0.7; }
.book-box .btns .buy { display:inline-block; margin-right:15px; }
.book-box .btns .trial { display:inline-block; }
