@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; }
body { /* 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: 1.5em; 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; }
* { 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 { background:url(../img/bg_dot.png) repeat; }
.scroll-bg { background:#000; position:fixed; left:0; top:0; width:100%; height:100%; opacity:0; }
body.loading #container { visibility:hidden; }


#header { }
#header > .inner { max-width:960px; 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:#000; 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 {  }


/* anime */
.fadeInUpEx { animation:_fadeInUpEx 0.5s ease 0s forwards; }
.fadeInDownEx { animation:_fadeInDownEx 0.5s ease 0s forwards; }

@keyframes _fadeInUpEx {
    0% { opacity:0; transform:translateY( -50px); }
  100% { opacity:1; transform:translateY(  0px); }
}

@keyframes _fadeInDownEx {
    0% { opacity:0; transform:translateY( 50px); }
  100% { opacity:1; transform:translateY(  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: 30px;left: 244px;z-index: 15;}
#footer .sns ul li > * { vertical-align:bottom; }

.visual-area { margin-bottom:0px; background:url(../img/bg_main.png) repeat-x left bottom; padding-bottom:30px; }
.visual-area > .inner { max-width:1000px; margin:0 auto; position:relative; height:1380px; background:url(../img/bg_main02.png) no-repeat center top; }
.visual-area .title01 { position:absolute; left:680px; top:0px; z-index:3; }
.visual-area .title02 { position:absolute; left:30px; top:0px; z-index:3; }
.visual-area .title03 { position:absolute; left:223px; top:40px; z-index:3; }
.visual-area .visual { position:absolute; left:-0px; top:0px; z-index:2; width:980px; }
.visual-area .book { position:absolute; left:37px; top:712px; z-index:10; }
.visual-area .book .thumb { background:#e60012; padding:4px; }
.visual-area .book .date { position:absolute; left:90px; top:-96px; width:173px; z-index:-1; }
.visual-area .book .buy { margin-top:8px; text-align:center; }
.visual-area .book .buy a:hover { opacity:0.7; }
.visual-area .book .trial { margin-top:8px; text-align:center; }
.visual-area .book .trial a:hover { opacity:0.7; }
.visual-area .comic { position:absolute; left:218px; top:678px; z-index: 10;}
.visual-area .comic a:hover { opacity: 0.9;}
.visual-area .author { position:absolute; right:19px; top:788px; z-index:10; }
.visual-area .catch { position:absolute; left:73px; bottom:45px; z-index:5; }


.visual-area .title01,
.visual-area .title02,
.visual-area .title03,
.visual-area .visual,
.visual-area .author,
.visual-area .book,
.visual-area .comic,
.visual-area .catch { opacity:0; }

.topics-area { position:relative;  z-index:2; padding-bottom:50px; background:url(../img/bg_topics.png) no-repeat center top; background-size:auto,auto 100%; }
.topics-area .inner { max-width:980px; margin:0 auto; }
.topics-area .title { text-align:center; padding-top:40px; margin-bottom:40px; }
.topics-area .box01 {}
.topics-area .box01 .box-left { float:left; width:480px; text-align:center; }
.topics-area .box01 .box-right { float:right; width:480px; text-align:center; }
.topics-area .box01 .ttl { height:107px; margin-bottom:15px; }
.topics-area .box01 .thumb { margin-bottom:18px; }
.topics-area .box01 .buy { margin-bottom:10px; }
.topics-area .box01 .niconico { margin-bottom:10px; }
.topics-area .box01 .text { padding-top: 16px;}
.topics-area .btn a:hover { opacity:0.7; }


.special-area { margin:0 auto; padding-bottom:50px; position:relative; background:url(../img/bg_dot.png) repeat, url(../img/bg_special.png) no-repeat center top #ff2929; background-size:auto,auto 100%; }
.special-area > .inner { max-width:940px; margin:0 auto; position:relative; }
.special-area .title { text-align:center; padding-top:40px; margin-bottom:40px; }
.special-area .title02 { margin-bottom:12px; }
.special-area .title03 { padding-top:24px;margin-bottom:12px; }
.special-area .title04 { padding-top:60px;margin-bottom:12px; }
.special-area .special-list ul { margin-bottom:0px;}
.special-area .special-list li { float:left; margin-left:20px; margin-bottom:20px; }
.special-area .special-list li.ml0 {margin-left:0;}
/*.special-area .special-list li:nth-child(2n+1) { margin-left:0px; }*/
.special-comic { margin:0 auto; padding-bottom:50px; position:relative; background:url(../img/bg_dot.png) repeat, url(../img/bg_special2.png) no-repeat center top #00a7db; background-size:auto,auto 100%; }

.story-area {  margin:0 auto; padding-bottom:50px; position:relative; background:url(../img/bg_story.png) no-repeat center top #fff; background-size:auto 100%; z-index:2; }
.story-area > .inner { max-width:1000px; margin:0 auto; position:relative; }
.story-area .title { text-align:center; padding-top:15px; margin-bottom:40px;  }
.story-area p { text-align:center; margin-top:-20px; }

.opening-area {  margin:0 auto; padding-bottom:50px; position:relative; background:url(../img/bg_dot.png) repeat, url(../img/bg_opening.png) no-repeat center top #d3cab6; background-size:auto, auto 100%; z-index:2; }
.opening-area > .inner { max-width:1000px; margin:0 auto; position:relative; }
.opening-area .title { text-align:center; padding-top:15px; margin-bottom:0px;  }
.opening-area p { text-align:center; margin-top:-20px; }


.character-area { margin:0 auto; padding-bottom:50px; position:relative;  }
.character-area > .inner { max-width:980px; margin:0 auto; position:relative; }
.character-area .title { text-align:center; padding-top:40px; margin-bottom:40px; }
.character-area .char-list h3 { z-index:2; position:relative; }
.character-area .char-list li { float:left; margin-left:25px; margin-bottom:20px; }
.character-area .char-list li:nth-child(3n+1) { margin-left:0px; }

.keywords-area { margin:0 auto; padding-bottom:50px; position:relative; background: url(../img/bg_keywords.png) no-repeat center top rgba(177,165,169,0.75); background-size:auto; }
.keywords-area > .inner { max-width:980px; margin:0 auto; position:relative; }
.keywords-area .title { text-align:center; padding-top:40px; margin-bottom:40px; }
.keywords-area .keywords-list { font-family:"游明朝","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif; font-size:18px; }
.keywords-area .keywords-list .item { position:relative; background:#fff; border:2px solid #000; margin-bottom:15px; padding:3px; }
.keywords-area .keywords-list .item > .inner { border:1px solid #b1a5a9; background:url(../img/bg_keywords_box.png) no-repeat left top; padding:32px 24px; }
.keywords-area .keywords-list .item .ttl { font-size:24px; text-align:center; margin-bottom:10px; color:#1a4f63; font-weight:bold; }
.keywords-area .keywords-list .item p { line-height:180%;}

.gallery-area { margin:0 auto; padding-bottom:50px; position:relative; }
.gallery-area > .inner { max-width:980px; margin:0 auto; position:relative; }
.gallery-area .title { text-align:center; padding-top:40px; margin-bottom:40px; }
.gallery-area .gallery-list h3 { z-index:2; position:relative; }
.gallery-area .gallery-list li { float:left; margin-left:25px; margin-bottom:20px; }
.gallery-area .gallery-list li:nth-child(4n+1) { margin-left:0px; }
.gallery-modal img { box-shadow:0 0 7px #685e5b; border:1px solid #c3bab7; }
.gallery-modal .bg { position:fixed; left:0; top:0; width:100%; height:100%; z-index:-1; pointer-events:none; background:#e0dad0; opacity:0.75; }

.information-area { margin:0 auto 0; padding:45px 20px; position:relative; background:#fff; z-index:2; }
.information-area > .inner { width:960px; margin:0 auto; }
.information-area .title { text-align:center; margin-bottom:35px; }
.information-area p { line-height:180%; }
.book-box { margin-bottom:50px; }
.book-box .box-left { float:left; width:269px; }
.book-box .box-right { float:right; width:625px; }
.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:20px; margin-bottom:20px; }
.book-box .author span { font-size:14px; margin-left:25px; }
.book-box .lead { font-size:22px; color:#e60012; font-weight:bold; line-height:140%; margin-bottom:0.5em; }
.book-box p { font-size:16px; }
.book-box .btns { margin-top:-5px; }
.book-box .btns .buy { display:inline-block; margin-right:30px; }
.book-box .btns .trial { display:inline-block; }

.other-area { position:relative; background:rgba(255,255,255,1); z-index:2; }
.other-area .title { text-align:center; padding:17px; background:#dcbc60; }
.other-area .other-list { width:962px; margin:0 auto; }
.other-area .other-list .item { position:relative; float:left; overflow:hidden; }
.other-area .other-list .item .name { position:absolute; right:20px; top:20px;}
.other-area .other-list .item .thumb { transition:0.2s ease-in-out; }
.other-area .other-list .item .thumb img { transition:0.2s ease-in-out; }
.other-area .other-list .item:nth-child(1) .thumb { background:url(../img/img_other01_on.png) no-repeat; }
.other-area .other-list .item:nth-child(2) .thumb { background:url(../img/img_other02_on.png) no-repeat; }
.other-area .other-list .item:nth-child(3) .thumb { background:url(../img/img_other03_on.png) no-repeat; }
.other-area .other-list .item:nth-child(4) .thumb { background:url(../img/img_other04_on.png) no-repeat; }
.other-area .other-list .item:hover .thumb { transform:scale(1.2,1.2); }
.other-area .other-list .item:hover .thumb img { opacity:0; }

.char-modal .bg { position:fixed; left:0; top:0; width:100%; height:100%; z-index:-1; pointer-events:none; background:rgba(255,255,255,0.9);}
.mfp-close-btn-in .mfp-close { color:#aaa; }
/*
#char-modal01 .bg { background:rgba(25,162,196,0.7); }
#char-modal02 .bg { background:rgba(205,9,21,0.7); }
#char-modal03 .bg { background:rgba(253,95,119,0.7); }
#char-modal04 .bg { background:rgba(85,71,122,0.7); }
#char-modal05 .bg { background:rgba(33,121,161,0.7); }
#char-modal06 .bg { background:rgba(230,140,20,0.7); }
#char-modal07 .bg { background:rgba(29,151,128,0.7); }
#char-modal08 .bg { background:rgba(120,170,47,0.7); }
*/



