@charset "UTF-8";
/*
font-family: 'Crimson Text', serif;
font-family: 'Noto Serif JP', serif;
*/
@import url("https://fonts.googleapis.com/css2?family=Crimson+Text:wght@600;700&family=Noto+Serif+JP:wght@300;400;700&display=swap");
/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/
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; }

ins { background-color: #ff9; color: #000; text-decoration: none; }

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; }

hr { display: block; height: 1px; border: 0; border-top: 1px solid #cccccc; margin: 1em 0; padding: 0; }

input, select { vertical-align: middle; }

.clearfix:before, .clearfix:after { content: " "; display: table; }

.clearfix:after { clear: both; }

img { vertical-align: bottom; max-width: 100%; }

li { list-style: none; }

body { font-family: YakuHanMP, "Noto Serif JP", "游明朝", YuMincho, "Noto Serif JP", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; font-feature-settings: "palt"; font-weight: 300; -webkit-text-size-adjust: 100%; letter-spacing: 0.01em; background: url("../img/common/bg_brown.jpg"); }

body.is-modal-open { overflow: hidden; }

html { font-size: calc(100vw / 32); }
@media only screen and (min-width: 751px) { html { font-size: 16px; } }

template { display: none; }

#wrapper { overflow: hidden; }

@media only screen and (min-width: 751px) { .sp { display: none; } }
@media only screen and (max-width: 750px) { .pc { display: none; } }
.header_logo .fill_logo { fill: #eeda00; }
.header_logo.is_black .fill_logo { fill: #000; }
.header_logo.is_white .fill_logo { fill: #fff; }

.menu_area .main_menu { position: fixed; width: 100%; height: 100%; top: 0; z-index: 100; background: url("../img/common/bg_yellow.jpg") center top; font-family: "Crimson Text", serif; }
.menu_area .main_menu .main_cover { position: absolute; width: 60%; height: 80%; background: #cb9d2e; right: 0; bottom: 0; }
.menu_area .main_menu .main_cover .chara { position: absolute; }
.menu_area .main_menu .main_cover .menu_chara { fill-rule: evenodd; fill: #b78d27; }
.menu_area .main_menu a { color: #000; text-decoration: none; display: block; font-weight: 700; }
.menu_area .main_menu .menu_list { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
.menu_area .main_menu .menu_list .menu_list__item { position: relative; line-height: 1; overflow: hidden; color: #FFF; }
.menu_area .main_menu .menu_list .menu_list__item::before, .menu_area .main_menu .menu_list .menu_list__item::after { content: ''; display: block; height: 0; width: 0; }
.menu_area .main_menu .menu_list .menu_list__item::before { margin-bottom: calc(-0.01111em + 0px); }
.menu_area .main_menu .menu_list .menu_list__item::after { margin-top: calc(-0.25556em + 0px); }
.menu_area .main_menu .menu_list .menu_list__item:last-child { margin-bottom: 0; }
.menu_area .main_menu .menu_list .menu_list__item:before { content: ""; display: block; position: absolute; height: 100%; background: #fff; top: 0; }
.menu_area .main_menu .menu_list .menu_list__item a { color: #fff; }
.menu_area .main_menu .official_list .official__item { background: url("../img/common/menu/sns_tw.png") no-repeat left center; }
.menu_area .main_menu .official_list a { color: #fff; }
.menu_area .main_menu .share_list p, .menu_area .main_menu .share_list ul, .menu_area .main_menu .share_list li { display: inline-block; vertical-align: middle; color: #fff; }
.menu_area .main_menu .share_list .menu_svg { fill: #fff; }
.menu_area .btn_menu { position: fixed; top: 0; right: 0; background: url("../img/common/menu/menu_bg.svg") no-repeat right top; -webkit-background-size: contain; -o-background-size: contain; background-size: contain; color: #fff; font-family: "Crimson Text", serif; z-index: 150; }
.menu_area .btn_menu .btn_icon { position: relative; }
.menu_area .btn_menu .btn_icon p { width: 100%; height: 2px; background: #fff; position: absolute; }
.menu_area .btn_menu .btn_icon p:nth-child(1) { top: 0; }
.menu_area .btn_menu .btn_icon p:nth-child(2) { top: calc(50% - 1px); }
.menu_area .btn_menu .btn_icon p:nth-child(3) { top: calc(100% - 2px); }
.menu_area .btn_menu .menu_bg { fill: #000; }
@media only screen and (min-width: 751px) { .menu_area .main_menu .main_cover { width: 70%; -webkit-border-radius: 180px 0 0 0; border-radius: 180px 0 0 0; }
  .menu_area .main_menu .main_cover .chara { width: 426px; width: 44.09%; bottom: 23px; right: 60px; }
  .menu_area .main_menu .menu_logo { position: fixed; width: 260px; top: 20px; left: 50px; }
  .menu_area .main_menu .manu_wrap { position: absolute; bottom: 40px; left: 0; width: 400px; width: 28.57%; min-width: 360px; }
  .menu_area .main_menu .menu_list { font-size: 28px; margin-bottom: 30px; }
  .menu_area .main_menu .menu_list .menu_list__item { margin-bottom: 16px; overflow: hidden; padding: 2px 0 2px 50px; }
  .menu_area .main_menu .menu_list .menu_list__item:before { width: 0; left: 0px; -webkit-transition: all 0.2s cubic-bezier(0.5, 1, 0.89, 1); -moz-transition: all 0.2s cubic-bezier(0.5, 1, 0.89, 1); -ms-transition: all 0.2s cubic-bezier(0.5, 1, 0.89, 1); -o-transition: all 0.2s cubic-bezier(0.5, 1, 0.89, 1); transition: all 0.2s cubic-bezier(0.5, 1, 0.89, 1); }
  .menu_area .main_menu .menu_list .menu_list__item:hover:before { width: 35px; }
  .menu_area .main_menu .menu_list .menu_list__item.current:before { width: 35px; }
  .menu_area .main_menu .official_list { font-size: 20px; margin-left: 50px; }
  .menu_area .main_menu .official_list .official__item { padding: 2px 0 2px 40px; -webkit-background-size: contain; -o-background-size: contain; background-size: contain; position: relative; }
  .menu_area .main_menu .official_list .official__item:before { content: ""; display: block; position: absolute; top: 0; width: 0; height: 100%; left: -50px; background: #fff; -webkit-transition: all 0.2s cubic-bezier(0.5, 1, 0.89, 1); -moz-transition: all 0.2s cubic-bezier(0.5, 1, 0.89, 1); -ms-transition: all 0.2s cubic-bezier(0.5, 1, 0.89, 1); -o-transition: all 0.2s cubic-bezier(0.5, 1, 0.89, 1); transition: all 0.2s cubic-bezier(0.5, 1, 0.89, 1); }
  .menu_area .main_menu .official_list .official__item:hover:before { width: 35px; }
  .menu_area .main_menu .share_list { position: fixed; top: 25px; right: 160px; font-size: 12px; }
  .menu_area .main_menu .share_list .share_list__item { width: 28px; margin-left: 35px; }
  .menu_area .main_menu .share_list .menu_svg { -webkit-transition: all 0.2s ease-out; -moz-transition: all 0.2s ease-out; -ms-transition: all 0.2s ease-out; -o-transition: all 0.2s ease-out; transition: all 0.2s ease-out; }
  .menu_area .main_menu .share_list a:hover .menu_svg { fill: #000; }
  .menu_area .btn_menu { width: 75px; height: 75px; text-align: center; font-size: 11px; letter-spacing: 0.22em; cursor: pointer; }
  .menu_area .btn_menu .btn_icon { width: 40px; height: 14px; margin: 25px auto 0; }
  .menu_area .btn_menu .btn_icon p { -webkit-transition: background 0.3s ease-out, transform 0.3s ease-out; -moz-transition: background 0.3s ease-out, transform 0.3s ease-out; -ms-transition: background 0.3s ease-out, transform 0.3s ease-out; -o-transition: background 0.3s ease-out, transform 0.3s ease-out; transition: background 0.3s ease-out, transform 0.3s ease-out; }
  .menu_area .btn_menu .btn_icon p:nth-child(1) { -webkit-transition-delay: 0.08s, 0s; -moz-transition-delay: 0.08s, 0s; -ms-transition-delay: 0.08s, 0s; -o-transition-delay: 0.08s, 0s; transition-delay: 0.08s, 0s; }
  .menu_area .btn_menu .btn_icon p:nth-child(2) { -webkit-transition-delay: 0.16s, 0s; -moz-transition-delay: 0.16s, 0s; -ms-transition-delay: 0.16s, 0s; -o-transition-delay: 0.16s, 0s; transition-delay: 0.16s, 0s; }
  .menu_area .btn_menu .btn_icon p:nth-child(3) { -webkit-transition-delay: 0.24s, 0s; -moz-transition-delay: 0.24s, 0s; -ms-transition-delay: 0.24s, 0s; -o-transition-delay: 0.24s, 0s; transition-delay: 0.24s, 0s; }
  .menu_area .btn_menu .cap_menu { padding-left: 0.4em; margin-top: 5px; }
  .menu_area .btn_menu .cap_menu span { color: #fff; -webkit-transition: color 0.3s ease-out; -moz-transition: color 0.3s ease-out; -ms-transition: color 0.3s ease-out; -o-transition: color 0.3s ease-out; transition: color 0.3s ease-out; }
  .menu_area .btn_menu .cap_menu span:nth-child(1) { -webkit-transition-delay: 0s; -moz-transition-delay: 0s; -ms-transition-delay: 0s; -o-transition-delay: 0s; transition-delay: 0s; }
  .menu_area .btn_menu .cap_menu span:nth-child(2) { -webkit-transition-delay: 0.08s; -moz-transition-delay: 0.08s; -ms-transition-delay: 0.08s; -o-transition-delay: 0.08s; transition-delay: 0.08s; }
  .menu_area .btn_menu .cap_menu span:nth-child(3) { -webkit-transition-delay: 0.16s; -moz-transition-delay: 0.16s; -ms-transition-delay: 0.16s; -o-transition-delay: 0.16s; transition-delay: 0.16s; }
  .menu_area .btn_menu .cap_menu span:nth-child(4) { -webkit-transition-delay: 0.24s; -moz-transition-delay: 0.24s; -ms-transition-delay: 0.24s; -o-transition-delay: 0.24s; transition-delay: 0.24s; }
  .menu_area .btn_menu:hover .btn_icon p { background: #FFF; }
  .menu_area .btn_menu:hover .cap_menu span { color: #FFF; } }
@media only screen and (max-width: 750px) { .menu_area .main_menu .main_cover { width: 76.53vw; -webkit-border-radius: 23.46vw 0 0 0; border-radius: 23.46vw 0 0 0; }
  .menu_area .main_menu .main_cover .chara { width: 60.66vw; bottom: 5.33vw; right: 5.33vw; }
  .menu_area .main_menu .menu_logo { width: 42.93vw; top: 4vw; left: 4vw; position: fixed; }
  .menu_area .main_menu .manu_wrap { position: absolute; bottom: 0; left: 0; }
  .menu_area .main_menu .menu_list { margin-bottom: 10.66vw; }
  .menu_area .main_menu .menu_list .menu_list__item { font-size: 3rem; margin-bottom: 2vw; padding-left: 12vw; }
  .menu_area .main_menu .menu_list .menu_list__item:before { left: 0; }
  .menu_area .main_menu .menu_list .menu_list__item.current:before { width: 8.26vw; }
  .menu_area .main_menu .official_list { font-size: 1.8rem; margin-left: 12vw; margin-bottom: 18.66vw; }
  .menu_area .main_menu .official_list .official__item { -webkit-background-size: contain; -o-background-size: contain; background-size: contain; }
  .menu_area .main_menu .official_list .official__item a { padding: 0.2em 0 0em 10vw; }
  .menu_area .main_menu .share_list { margin: 0 0 14.66vw 12vw; }
  .menu_area .main_menu .share_list .share_list__item { width: 6.4vw; margin-left: 8vw; }
  .menu_area .btn_menu { width: 14.26vw; height: 14.26vw; text-align: center; letter-spacing: 0.08em; }
  .menu_area .btn_menu .btn_icon { width: 9.06vw; height: 14px; margin: 3.2vw 2.4vw 0 auto; }
  .menu_area .btn_menu .cap_menu { padding-left: 0.34em; margin-top: 5px; font-size: 0.8rem; } }
.menu_area .main_menu { width: 0; left: 0; visibility: hidden; -webkit-transition: all 0.18s cubic-bezier(0.33, 1, 0.68, 1) 0.8s; -moz-transition: all 0.18s cubic-bezier(0.33, 1, 0.68, 1) 0.8s; -ms-transition: all 0.18s cubic-bezier(0.33, 1, 0.68, 1) 0.8s; -o-transition: all 0.18s cubic-bezier(0.33, 1, 0.68, 1) 0.8s; transition: all 0.18s cubic-bezier(0.33, 1, 0.68, 1) 0.8s; }
.menu_area .main_menu .menu_list__item { opacity: 0; -webkit-transform: translateY(-20px); -moz-transform: translateY(-20px); -ms-transform: translateY(-20px); -o-transform: translateY(-20px); transform: translateY(-20px); -webkit-transition: opacity 0.5s cubic-bezier(0.5, 1, 0.89, 1), transform 0.5s cubic-bezier(0.33, 1, 0.68, 1); -moz-transition: opacity 0.5s cubic-bezier(0.5, 1, 0.89, 1), transform 0.5s cubic-bezier(0.33, 1, 0.68, 1); -ms-transition: opacity 0.5s cubic-bezier(0.5, 1, 0.89, 1), transform 0.5s cubic-bezier(0.33, 1, 0.68, 1); -o-transition: opacity 0.5s cubic-bezier(0.5, 1, 0.89, 1), transform 0.5s cubic-bezier(0.33, 1, 0.68, 1); transition: opacity 0.5s cubic-bezier(0.5, 1, 0.89, 1), transform 0.5s cubic-bezier(0.33, 1, 0.68, 1); }
.menu_area .main_menu .menu_logo { opacity: 0; }
.menu_area .main_menu .official_list { opacity: 0; }
.menu_area .main_menu .share_list { opacity: 0; }
.menu_area .main_menu .menu_logo, .menu_area .main_menu .official_list, .menu_area .main_menu .share_list { -webkit-transition: opacity 0.5s cubic-bezier(0.5, 1, 0.89, 1) 0.2s; -moz-transition: opacity 0.5s cubic-bezier(0.5, 1, 0.89, 1) 0.2s; -ms-transition: opacity 0.5s cubic-bezier(0.5, 1, 0.89, 1) 0.2s; -o-transition: opacity 0.5s cubic-bezier(0.5, 1, 0.89, 1) 0.2s; transition: opacity 0.5s cubic-bezier(0.5, 1, 0.89, 1) 0.2s; }
.menu_area .main_menu .main_cover .chara { opacity: 0; -webkit-transition: opacity 0.4s cubic-bezier(0.5, 1, 0.89, 1) 0.2s; -moz-transition: opacity 0.4s cubic-bezier(0.5, 1, 0.89, 1) 0.2s; -ms-transition: opacity 0.4s cubic-bezier(0.5, 1, 0.89, 1) 0.2s; -o-transition: opacity 0.4s cubic-bezier(0.5, 1, 0.89, 1) 0.2s; transition: opacity 0.4s cubic-bezier(0.5, 1, 0.89, 1) 0.2s; }
.menu_area.is_open .main_menu { visibility: visible; width: 100%; left: auto; right: 0; -webkit-transition-delay: 0s; -moz-transition-delay: 0s; -ms-transition-delay: 0s; -o-transition-delay: 0s; transition-delay: 0s; }
.menu_area.is_open .main_menu .menu_list__item { opacity: 1; -webkit-transform: translateY(0); -moz-transform: translateY(0); -ms-transform: translateY(0); -o-transform: translateY(0); transform: translateY(0); }
.menu_area.is_open .main_menu .menu_list__item:nth-child(1) { -webkit-transition-delay: 0.38s; -moz-transition-delay: 0.38s; -ms-transition-delay: 0.38s; -o-transition-delay: 0.38s; transition-delay: 0.38s; }
.menu_area.is_open .main_menu .menu_list__item:nth-child(2) { -webkit-transition-delay: 0.46s; -moz-transition-delay: 0.46s; -ms-transition-delay: 0.46s; -o-transition-delay: 0.46s; transition-delay: 0.46s; }
.menu_area.is_open .main_menu .menu_list__item:nth-child(3) { -webkit-transition-delay: 0.54s; -moz-transition-delay: 0.54s; -ms-transition-delay: 0.54s; -o-transition-delay: 0.54s; transition-delay: 0.54s; }
.menu_area.is_open .main_menu .menu_list__item:nth-child(4) { -webkit-transition-delay: 0.62s; -moz-transition-delay: 0.62s; -ms-transition-delay: 0.62s; -o-transition-delay: 0.62s; transition-delay: 0.62s; }
.menu_area.is_open .main_menu .menu_list__item:nth-child(5) { -webkit-transition-delay: 0.7s; -moz-transition-delay: 0.7s; -ms-transition-delay: 0.7s; -o-transition-delay: 0.7s; transition-delay: 0.7s; }
.menu_area.is_open .main_menu .menu_list__item:nth-child(6) { -webkit-transition-delay: 0.78s; -moz-transition-delay: 0.78s; -ms-transition-delay: 0.78s; -o-transition-delay: 0.78s; transition-delay: 0.78s; }
.menu_area.is_open .main_menu .menu_list__item:nth-child(7) { -webkit-transition-delay: 0.86s; -moz-transition-delay: 0.86s; -ms-transition-delay: 0.86s; -o-transition-delay: 0.86s; transition-delay: 0.86s; }
.menu_area.is_open .main_menu .menu_list__item:nth-child(8) { -webkit-transition-delay: 0.94s; -moz-transition-delay: 0.94s; -ms-transition-delay: 0.94s; -o-transition-delay: 0.94s; transition-delay: 0.94s; }
.menu_area.is_open .main_menu .menu_list__item:nth-child(9) { -webkit-transition-delay: 1.02s; -moz-transition-delay: 1.02s; -ms-transition-delay: 1.02s; -o-transition-delay: 1.02s; transition-delay: 1.02s; }
.menu_area.is_open .main_menu .menu_list__item:nth-child(10) { -webkit-transition-delay: 1.1s; -moz-transition-delay: 1.1s; -ms-transition-delay: 1.1s; -o-transition-delay: 1.1s; transition-delay: 1.1s; }
.menu_area.is_open .main_menu .menu_list__item:nth-child(11) { -webkit-transition-delay: 1.18s; -moz-transition-delay: 1.18s; -ms-transition-delay: 1.18s; -o-transition-delay: 1.18s; transition-delay: 1.18s; }
.menu_area.is_open .main_menu .menu_list__item:nth-child(12) { -webkit-transition-delay: 1.26s; -moz-transition-delay: 1.26s; -ms-transition-delay: 1.26s; -o-transition-delay: 1.26s; transition-delay: 1.26s; }
.menu_area.is_open .main_menu .menu_list__item:nth-child(13) { -webkit-transition-delay: 1.34s; -moz-transition-delay: 1.34s; -ms-transition-delay: 1.34s; -o-transition-delay: 1.34s; transition-delay: 1.34s; }
.menu_area.is_open .main_menu .menu_list__item:nth-child(14) { -webkit-transition-delay: 1.42s; -moz-transition-delay: 1.42s; -ms-transition-delay: 1.42s; -o-transition-delay: 1.42s; transition-delay: 1.42s; }
.menu_area.is_open .main_menu .main_cover .chara { opacity: 1; }
.menu_area.is_open .main_menu .menu_logo, .menu_area.is_open .main_menu .official_list, .menu_area.is_open .main_menu .share_list { opacity: 1; -webkit-transition-delay: 0.8s; -moz-transition-delay: 0.8s; -ms-transition-delay: 0.8s; -o-transition-delay: 0.8s; transition-delay: 0.8s; }
.menu_area.is_open .btn_menu .btn_icon p:nth-child(1) { -webkit-transform: rotate(30deg); -moz-transform: rotate(30deg); -ms-transform: rotate(30deg); -o-transform: rotate(30deg); transform: rotate(30deg); top: 50%; }
.menu_area.is_open .btn_menu .btn_icon p:nth-child(2) { width: 0; }
.menu_area.is_open .btn_menu .btn_icon p:nth-child(3) { -webkit-transform: rotate(-30deg); -moz-transform: rotate(-30deg); -ms-transform: rotate(-30deg); -o-transform: rotate(-30deg); transform: rotate(-30deg); top: 50%; }

footer.scroll_in .pagetop { -webkit-transform: translateY(100%); -moz-transform: translateY(100%); -ms-transform: translateY(100%); -o-transform: translateY(100%); transform: translateY(100%); -webkit-transition: all 0.4s ease-out; -moz-transition: all 0.4s ease-out; -ms-transition: all 0.4s ease-out; -o-transition: all 0.4s ease-out; transition: all 0.4s ease-out; }
footer.scroll_in .pagetop .serif { opacity: 0; -webkit-transform: translate(40%, 40%) scale(0.6); -moz-transform: translate(40%, 40%) scale(0.6); -ms-transform: translate(40%, 40%) scale(0.6); -o-transform: translate(40%, 40%) scale(0.6); transform: translate(40%, 40%) scale(0.6); -webkit-transition: all 0.4s ease-out 0.3s; -moz-transition: all 0.4s ease-out 0.3s; -ms-transition: all 0.4s ease-out 0.3s; -o-transition: all 0.4s ease-out 0.3s; transition: all 0.4s ease-out 0.3s; }
footer.scroll_in.active .pagetop { -webkit-transform: translateY(0); -moz-transform: translateY(0); -ms-transform: translateY(0); -o-transform: translateY(0); transform: translateY(0); }
footer.scroll_in.active .pagetop .serif { opacity: 1; -webkit-transform: translate(0, 0) scale(1); -moz-transform: translate(0, 0) scale(1); -ms-transform: translate(0, 0) scale(1); -o-transform: translate(0, 0) scale(1); transform: translate(0, 0) scale(1); }

footer { color: #FFF; text-align: center; position: relative; }
footer:before { content: ""; display: block; position: absolute; width: 100%; left: 0; }
footer .footer_wrap { position: relative; background: url("../img/footer/bg_footer2_repeat.png") top; }
footer .pagetop { position: absolute; }
footer .pagetop .serif { position: absolute; }
footer .share p { font-family: "Crimson Text", serif; letter-spacing: 0.1em; }
footer .share p, footer .share ul, footer .share li { display: inline-block; vertical-align: middle; }
footer .aniplex { font-family: "Crimson Text", serif; display: flex; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: center; justify-content: center; }
footer .aniplex a { color: #FFF; text-decoration: none; letter-spacing: 0.1em; }
@media only screen and (min-width: 751px) { footer:before { background: url("../img/footer/bg_footer1_repeat.png") center; -webkit-background-size: auto 30px; -o-background-size: auto 30px; background-size: auto 30px; height: 30px; top: -30px; }
  footer .pagetop { top: -139px; left: calc(50% - 4px); }
  footer .pagetop .serif { width: 80px; top: -14px; left: -87px; }
  footer .pagetop .chara { width: 123px; }
  footer .pagetop:hover { cursor: pointer; }
  footer .pagetop:hover .serif { -webkit-transform: translate(-10px, 10px) rotate(-8deg) !important; -moz-transform: translate(-10px, 10px) rotate(-8deg) !important; -ms-transform: translate(-10px, 10px) rotate(-8deg) !important; -o-transform: translate(-10px, 10px) rotate(-8deg) !important; transform: translate(-10px, 10px) rotate(-8deg) !important; -webkit-transition-delay: 0s !important; -moz-transition-delay: 0s !important; -ms-transition-delay: 0s !important; -o-transition-delay: 0s !important; transition-delay: 0s !important; }
  footer .footer_wrap { padding: 50px 0; -webkit-background-size: 470px; -o-background-size: 470px; background-size: 470px; }
  footer .share { margin-bottom: 37px; }
  footer .share p { font-size: 12px; }
  footer .share li { width: 30px; margin-left: 30px; }
  footer .aniplex { font-size: 14px; margin-bottom: 24px; }
  footer .aniplex li { margin: 0 12px; }
  footer .notes, footer .copy { line-height: 2; font-size: 12px; } }
@media only screen and (max-width: 750px) { footer:before { background: url("../img/footer/bg_footer_sp.png") no-repeat center bottom; -webkit-background-size: 100%; -o-background-size: 100%; background-size: 100%; height: 36px; top: -36px; }
  footer .pagetop { left: calc(50% - 14vw); top: -29vw; }
  footer .pagetop .serif { width: 130px; width: 17.33vw; left: -18.94vw; top: -2.54vw; }
  footer .pagetop .chara { width: 198px; width: 26.4vw; }
  footer .footer_wrap { padding: 20vw 0; -webkit-background-size: 89vw; -o-background-size: 89vw; background-size: 89vw; }
  footer .share { margin-bottom: 10vw; }
  footer .share p { font-size: 0.9rem; }
  footer .share li { width: 8vw; margin-left: 7.4vw; }
  footer .aniplex { font-size: 1rem; margin-bottom: 6vw; }
  footer .aniplex li { margin: 0 12px; }
  footer .notes, footer .copy { line-height: 2; font-size: 0.9rem; } }


footer .special_banner{

}
@media only screen and (min-width: 751px) {
footer .special_banner{
    overflow: hidden;
    border: 10px solid #fff;
    margin-bottom: 20px;
    width:480px;
    margin:0 auto 30px;
}
}
@media only screen and (max-width: 750px) {
footer .special_banner{
	border: 6px solid #fff;
    margin-bottom: 6vw;
    width: 60vw;
    margin :0 auto 6vw;
}
}

.in_contents { position: relative; }
.in_contents .in_header { background: url("../img/common/bg_title.png") no-repeat, url("../img/common/bg_brown2.jpg"); position: relative; }
.in_contents .in_header .in_logo { position: relative; }
.in_contents .in_header .page_title { font-family: "Crimson Text", serif; color: #000; text-align: center; line-height: 1.3; position: relative; text-shadow: 2px 2px 0px #f1ede0; }
.in_contents .in_header .page_title::before, .in_contents .in_header .page_title::after { content: ''; display: block; height: 0; width: 0; }
.in_contents .in_header .page_title::before { margin-bottom: calc(-0.16111em + 0px); }
.in_contents .in_header .page_title::after { margin-top: calc(-0.40556em + 0px); }
.in_contents .in_header:before { content: ""; display: block; position: absolute; width: 40%; background: url("../img/common/bg_yellow.jpg") center top; top: 0; left: 0; }
@media only screen and (min-width: 751px) { .in_contents { margin-bottom: 180px; }
  .in_contents .in_header { padding-bottom: 60px; margin-bottom: 64px; background-position: right 203px bottom 0px; -webkit-background-size: 130px , auto; -o-background-size: 130px , auto; background-size: 130px , auto; }
  .in_contents .in_header:before { width: 360px; width: 25.71%; }
  .in_contents .in_header .in_logo { width: 260px; margin: 0 0 58px 50px; padding-top: 20px; }
  .in_contents .in_header .page_title { font-size: 90px; text-shadow: 4px 4px 0px #f1ede0; } }
@media only screen and (max-width: 750px) { .in_contents { margin-bottom: 46.4vw; }
  .in_contents .in_header { padding: 4vw 0 13.33vw; margin-bottom: 13.33vw; background-position: right 6vw bottom; -webkit-background-size: 18.66vw, auto; -o-background-size: 18.66vw, auto; background-size: 18.66vw, auto; }
  .in_contents .in_header:before { width: 52vw; }
  .in_contents .in_header .in_logo { width: 41.33vw; margin: 0 0 9.33vw 4vw; }
  .in_contents .in_header .page_title { font-size: 3.4rem; } }
.in_contents .in_header:before { height: 0; }
.in_contents .in_header .in_logo { opacity: 0; -webkit-transition: opacity 0.6s cubic-bezier(0.5, 1, 0.89, 1) 0.2s; -moz-transition: opacity 0.6s cubic-bezier(0.5, 1, 0.89, 1) 0.2s; -ms-transition: opacity 0.6s cubic-bezier(0.5, 1, 0.89, 1) 0.2s; -o-transition: opacity 0.6s cubic-bezier(0.5, 1, 0.89, 1) 0.2s; transition: opacity 0.6s cubic-bezier(0.5, 1, 0.89, 1) 0.2s; }
.in_contents .in_header .page_title { opacity: 0; }
.in_contents .in_header .page_title span { opacity: 0; -webkit-transform: translateY(-20px); -moz-transform: translateY(-20px); -ms-transform: translateY(-20px); -o-transform: translateY(-20px); transform: translateY(-20px); -webkit-transition: transform 0.5s cubic-bezier(0.33, 1, 0.68, 1), opacity 0.5s cubic-bezier(0.11, 0, 0.5, 0); -moz-transition: transform 0.5s cubic-bezier(0.33, 1, 0.68, 1), opacity 0.5s cubic-bezier(0.11, 0, 0.5, 0); -ms-transition: transform 0.5s cubic-bezier(0.33, 1, 0.68, 1), opacity 0.5s cubic-bezier(0.11, 0, 0.5, 0); -o-transition: transform 0.5s cubic-bezier(0.33, 1, 0.68, 1), opacity 0.5s cubic-bezier(0.11, 0, 0.5, 0); transition: transform 0.5s cubic-bezier(0.33, 1, 0.68, 1), opacity 0.5s cubic-bezier(0.11, 0, 0.5, 0); display: inline-block; }
.in_contents .in_header .page_title span:nth-child(1) { -webkit-transition-delay: 0.08s; -moz-transition-delay: 0.08s; -ms-transition-delay: 0.08s; -o-transition-delay: 0.08s; transition-delay: 0.08s; }
.in_contents .in_header .page_title span:nth-child(2) { -webkit-transition-delay: 0.16s; -moz-transition-delay: 0.16s; -ms-transition-delay: 0.16s; -o-transition-delay: 0.16s; transition-delay: 0.16s; }
.in_contents .in_header .page_title span:nth-child(3) { -webkit-transition-delay: 0.24s; -moz-transition-delay: 0.24s; -ms-transition-delay: 0.24s; -o-transition-delay: 0.24s; transition-delay: 0.24s; }
.in_contents .in_header .page_title span:nth-child(4) { -webkit-transition-delay: 0.32s; -moz-transition-delay: 0.32s; -ms-transition-delay: 0.32s; -o-transition-delay: 0.32s; transition-delay: 0.32s; }
.in_contents .in_header .page_title span:nth-child(5) { -webkit-transition-delay: 0.4s; -moz-transition-delay: 0.4s; -ms-transition-delay: 0.4s; -o-transition-delay: 0.4s; transition-delay: 0.4s; }
.in_contents .in_header .page_title span:nth-child(6) { -webkit-transition-delay: 0.48s; -moz-transition-delay: 0.48s; -ms-transition-delay: 0.48s; -o-transition-delay: 0.48s; transition-delay: 0.48s; }
.in_contents .in_header .page_title span:nth-child(7) { -webkit-transition-delay: 0.56s; -moz-transition-delay: 0.56s; -ms-transition-delay: 0.56s; -o-transition-delay: 0.56s; transition-delay: 0.56s; }
.in_contents .in_header .page_title span:nth-child(8) { -webkit-transition-delay: 0.64s; -moz-transition-delay: 0.64s; -ms-transition-delay: 0.64s; -o-transition-delay: 0.64s; transition-delay: 0.64s; }
.in_contents .in_header .page_title span:nth-child(9) { -webkit-transition-delay: 0.72s; -moz-transition-delay: 0.72s; -ms-transition-delay: 0.72s; -o-transition-delay: 0.72s; transition-delay: 0.72s; }
.in_contents .in_header .page_title span:nth-child(10) { -webkit-transition-delay: 0.8s; -moz-transition-delay: 0.8s; -ms-transition-delay: 0.8s; -o-transition-delay: 0.8s; transition-delay: 0.8s; }
.in_contents .in_header .page_title span:nth-child(11) { -webkit-transition-delay: 0.88s; -moz-transition-delay: 0.88s; -ms-transition-delay: 0.88s; -o-transition-delay: 0.88s; transition-delay: 0.88s; }
.in_contents .in_header .page_title span:nth-child(12) { -webkit-transition-delay: 0.96s; -moz-transition-delay: 0.96s; -ms-transition-delay: 0.96s; -o-transition-delay: 0.96s; transition-delay: 0.96s; }
.in_contents .in_header .page_title span:nth-child(13) { -webkit-transition-delay: 1.04s; -moz-transition-delay: 1.04s; -ms-transition-delay: 1.04s; -o-transition-delay: 1.04s; transition-delay: 1.04s; }
.in_contents .in_header .page_title span:nth-child(14) { -webkit-transition-delay: 1.12s; -moz-transition-delay: 1.12s; -ms-transition-delay: 1.12s; -o-transition-delay: 1.12s; transition-delay: 1.12s; }
.in_contents .in_header .page_title span:nth-child(15) { -webkit-transition-delay: 1.2s; -moz-transition-delay: 1.2s; -ms-transition-delay: 1.2s; -o-transition-delay: 1.2s; transition-delay: 1.2s; }
.in_contents .in_header .page_title span:nth-child(16) { -webkit-transition-delay: 1.28s; -moz-transition-delay: 1.28s; -ms-transition-delay: 1.28s; -o-transition-delay: 1.28s; transition-delay: 1.28s; }
.in_contents .in_header .page_title span:nth-child(17) { -webkit-transition-delay: 1.36s; -moz-transition-delay: 1.36s; -ms-transition-delay: 1.36s; -o-transition-delay: 1.36s; transition-delay: 1.36s; }
.in_contents .in_header .page_title span:nth-child(18) { -webkit-transition-delay: 1.44s; -moz-transition-delay: 1.44s; -ms-transition-delay: 1.44s; -o-transition-delay: 1.44s; transition-delay: 1.44s; }
.in_contents .in_header .page_title span:nth-child(19) { -webkit-transition-delay: 1.52s; -moz-transition-delay: 1.52s; -ms-transition-delay: 1.52s; -o-transition-delay: 1.52s; transition-delay: 1.52s; }
.in_contents .in_header .page_title span:nth-child(20) { -webkit-transition-delay: 1.6s; -moz-transition-delay: 1.6s; -ms-transition-delay: 1.6s; -o-transition-delay: 1.6s; transition-delay: 1.6s; }

.is_open .in_contents .in_header:before { height: 0; -webkit-transition: height 0.6s ease-out; -moz-transition: height 0.6s ease-out; -ms-transition: height 0.6s ease-out; -o-transition: height 0.6s ease-out; transition: height 0.6s ease-out; }
.is_open .in_contents .in_header .in_logo { opacity: 1; }
.is_open .in_contents .in_header .page_title { opacity: 1; }
.is_open .in_contents .in_header .page_title span { opacity: 1; -webkit-transform: translateY(0); -moz-transform: translateY(0); -ms-transform: translateY(0); -o-transform: translateY(0); transform: translateY(0); }
@media only screen and (min-width: 751px) { .is_open .in_contents .in_header:before { height: 600px; } }
@media only screen and (max-width: 750px) { .is_open .in_contents .in_header:before { height: 81.33vw; } }

.m-modal { position: fixed; top: 0; left: 0; visibility: hidden; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; opacity: 0; z-index: 500; width: 100%; height: 100%; overflow-y: auto; -ms-overflow-x: hidden; overflow-x: hidden; -webkit-transition: all 0.3s ease-out; -moz-transition: all 0.3s ease-out; -ms-transition: all 0.3s ease-out; -o-transition: all 0.3s ease-out; transition: all 0.3s ease-out; }
.m-modal .m-modal__bg { background: url("../img/common/bg_brown.jpg") center top; position: fixed; width: 100%; height: 100%; top: 0; left: 0; }
.m-modal .m-modal__close { background: url("../img/common/btn_close.png") no-repeat center; -webkit-background-size: contain; -o-background-size: contain; background-size: contain; position: absolute; }
.m-modal[data-modal-type='youtube'] .m-modal__content { position: absolute; width: 90vw; height: 50.625vw; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -moz-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); -o-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }

.m-modal[data-modal-type='img'] .m-modal__content { position: absolute; width: 90vw; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -moz-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); -o-transform: translate(-50%, -50%); transform: translate(-50%, -50%);
	text-align:center;
	max-width:1000px;
}

@media only screen and (min-width: 751px) { .m-modal .m-modal__close { width: 75px; height: 75px; top: 30px; right: 30px; cursor: pointer; -webkit-transition: opacity 0.3s ease-out; -moz-transition: opacity 0.3s ease-out; -ms-transition: opacity 0.3s ease-out; -o-transition: opacity 0.3s ease-out; transition: opacity 0.3s ease-out; }
  .m-modal .m-modal__close:hover { opacity: 0.8; } }
@media only screen and (max-width: 750px) { .m-modal .m-modal__close { width: 12.26vw; height: 12.26vw; top: 4vw; right: 4vw; } }
.m-modal.is-open { visibility: visible; opacity: 1; }