@charset "UTF-8";
/* 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;
}
/*
 * Mixin for placeholder
 * @include placeholderColor;
 */
.g-header__logo--kayac, .modal__letter--input__text, .modal__letter--input__btn, .modal__letter--confirm__btn, .modal__letter--input__error-text, .modal__border--complete__title, .modal__letter--complete__btn, .fv__hero, .bnr__link, .roll__title, .roll__lead, .roll__btn__text, .letter__pagination button {
  text-indent: -9999em;
  color: transparent; }

#message-modal .modal__close-btn, .modal__letter--input__btn, .modal__letter--confirm__btn, .modal__letter--complete__btn, .letter__pagination button {
  display: block;
  box-sizing: border-box;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: transparent;
  border: none;
  outline: none;
  cursor: pointer; }

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
  100% {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; } }

@keyframes fadeIn {
  0% {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
  100% {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; } }

html,
.wrapper {
  font-family: -apple-system, "Helvetica Neue", "Hiragino Kaku Gothic ProN", "游ゴシック Medium", "メイリオ", meiryo, sans-serif;
  -webkit-text-size-adjust: 100%;
      -ms-text-size-adjust: 100%;
          text-size-adjust: 100%;
  -moz-osx-font-smoothing: auto | grayscale;
  -webkit-font-smoothing: antialiased;
  background: #cce97e url("../images/bg/top_mobile.jpg") no-repeat 50% 0;
  background-size: 100% auto;
  font-size: 14px;
  line-height: 1.4;
  text-size-adjust: 100%; }

textarea,
input {
  border-style: solid;
  font-family: inherit; }

#g-header {
  position: relative;
  box-sizing: border-box;
  border-bottom: 1px solid rgba(0, 0, 0, 0.75);
  height: 32px;
  background-color: #fff; }

.g-header__inner {
  position: relative;
  padding: 0 1.5%;
  margin: 0 auto;
  max-width: 1200px;
  height: 100%; }

.g-header__box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100%; }

.g-header__logo--kayac {
  display: block;
  text-decoration: none;
  width: 152px;
  height: 12px;
  background-image: url("../images/module/header/kayac_horizontal.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  background-position: 0 50%; }

.g-header__share-btn {
  display: block;
  outline: none;
  width: 20px;
  height: 20px;
  background-image: url("../images/module/header/plus.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain; }

#g-header-btn {
  display: none; }

.g-header__share {
  display: none;
  pointer-events: auto;
  width: 370px; }

#g-header-btn:checked + .g-header__share {
  display: block;
  position: absolute;
  top: 32px;
  right: 1.5%;
  z-index: 5;
  -webkit-animation: fadeIn .15s ease-in-out 0s 1 both;
          animation: fadeIn .15s ease-in-out 0s 1 both; }

.g-header__share__inner {
  position: relative;
  margin: 10px 1px 10px 10px;
  padding: 8px;
  border-radius: 5px;
  background-color: rgba(0, 0, 0, 0.75);
  text-align: left; }
  .g-header__share__inner:before {
    content: "";
    display: block;
    position: absolute;
    top: -10px;
    right: 8px;
    border-style: solid;
    border-width: 0 8px 10px 8px;
    border-color: transparent transparent rgba(0, 0, 0, 0.75) transparent;
    width: 0;
    height: 0; }

.g-header__share__item {
  display: inline-block;
  vertical-align: middle;
  text-align: left;
  overflow: hidden;
  margin-left: 8px;
  margin-bottom: 4px; }
  .g-header__share__item[data-facebook] {
    width: 100px; }
  .g-header__share__item[data-twitter] {
    width: 102px; }
  .g-header__share__item[data-gplus] {
    width: 68px; }
  .g-header__share__item[data-hatebu] {
    width: 52px;
    margin-bottom: 0; }

.g-nav__container {
  margin: 0 auto 10px;
  text-align: center; }
  .g-nav__container p {
    display: inline-block;
    width: 310px;
    padding: 0.75em 0;
    border-radius: 7px;
    background-color: rgba(0, 0, 0, 0.7);
    color: #fff;
    font-size: 11px; }

.g-nav__item {
  box-sizing: border-box;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100%; }
  .g-nav__item[data-news] {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1;
    -webkit-flex-basis: 60px;
        -ms-flex-preferred-size: 60px;
            flex-basis: 60px;
    width: 60px; }
    .g-nav__item[data-news] a {
      padding-left: 15px;
      border-top-left-radius: 7px;
      border-bottom-left-radius: 7px; }
  .g-nav__item[data-about] {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1;
    -webkit-flex-basis: 65px;
        -ms-flex-preferred-size: 65px;
            flex-basis: 65px;
    width: 65px; }
    .g-nav__item[data-about] a {
      text-align: center; }
  .g-nav__item[data-support] {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1;
    -webkit-flex-basis: 60px;
        -ms-flex-preferred-size: 60px;
            flex-basis: 60px;
    width: 60px; }
    .g-nav__item[data-support] a {
      text-align: center; }
  .g-nav__item[data-close] {
    width: 125px; }
    .g-nav__item[data-close] a {
      padding-right: 15px;
      -webkit-box-pack: end;
      -webkit-justify-content: flex-end;
          -ms-flex-pack: end;
              justify-content: flex-end;
      color: #fff100;
      border-top-right-radius: 7px;
      border-bottom-right-radius: 7px; }

.g-nav__link {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 100%;
  font-size: 10px;
  letter-spacing: -.03em;
  text-decoration: none;
  white-space: nowrap; }
  .g-nav__link:link, .g-nav__link:visited {
    color: #fff; }
  .g-nav__link:hover {
    background-color: rgba(0, 0, 0, 0.4);
    color: #fff; }
  .g-nav__link:active {
    color: #fff; }
  .g-nav__link[data-active="active"] {
    background-color: rgba(0, 0, 0, 0.4);
    color: yellow; }

#g-banner {
  display: table;
  width: 310px;
  margin: 0 auto 20px; }
  #g-banner li {
    display: table-cell;
    width: 50%; }
  #g-banner .g-banner__webbnr_comic {
    padding-right: 2px; }
  #g-banner .g-banner__webbnr_chara {
    padding-left: 2px; }

.g-footer__quikin {
  width: 279.5px;
  padding-top: 5px;
  padding-bottom: 10px;
  margin-left: 0;
  margin-right: 0;
  margin: auto; }
  .g-footer__quikin__icon {
    width: 60px;
    height: 60px;
    background-image: url("../images/module/footer/quikin__icon.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    float: left;
    margin-right: 10px; }
  .g-footer__quikin__text1 {
    color: #5a1e06;
    font-weight: bold;
    font-size: 13px; }
  .g-footer__quikin__text2 {
    color: #5a1e06;
    font-weight: bold;
    font-size: 14px;
    margin-bottom: 5px; }
  .g-footer__quikin__text3 {
    color: #5a1e06;
    font-weight: bold;
    font-size: 12px; }

.g-footer__mobile-footer {
  position: relative;
  padding-bottom: 75px; }
  .g-footer__google_store {
    width: 135.5px;
    height: 40px;
    background-image: url("../images/module/footer/google_store.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    position: absolute;
    top: 0;
    right: 50%;
    margin-right: 5px; }
  .g-footer__app_store {
    width: 135.5px;
    height: 40px;
    background-image: url("../images/module/footer/app_store.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    position: absolute;
    top: 0;
    left: 50%;
    margin-left: 5px; }

.g-footer__pickup-apps {
  border-top: 4px solid #381600;
  background-color: #fff;
  text-align: center; }
  .g-footer__pickup-apps h6 {
    position: relative;
    background-image: url("../images/module/footer/pickup_apps.png");
    background-repeat: no-repeat;
    background-size: contain;
    font: 0/0 a;
    top: -16px;
    width: 100%;
    height: 31px;
    margin-bottom: -4px;
    background-position: 50% 50%;
    margin-left: -90px; }

.g-footer__bokupoke {
  width: 279.5px;
  padding-bottom: 10px;
  margin-left: 0;
  margin-right: 0;
  margin: auto; }
  .g-footer__bokupoke__icon {
    width: 60px;
    height: 60px;
    background-image: url("../images/module/footer/bokupoke__icon.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    float: left;
    margin-right: 10px; }
  .g-footer__bokupoke__text1 {
    color: #5a1e06;
    font-weight: bold;
    text-align: left;
    font-size: 14px;
    margin-bottom: 5px; }
  .g-footer__bokupoke__text2 {
    color: #5a1e06;
    font-weight: bold;
    text-align: left;
    font-size: 11px;
    font-weight: normal; }

.g-footer__footer-links {
  width: 100%;
  padding: 10px 0;
  background-color: #fff; }

.g-footer__copyright a {
  display: block;
  text-align: center;
  line-height: 1.4;
  font-size: 10px;
  color: #333;
  text-decoration: none;
  font-family: sans-serif; }

#letter-list {
  margin-top: 15px; }

.letter, #message-modal .modal__letter {
  box-sizing: border-box;
  position: relative;
  margin-top: -5px;
  padding-top: 40px;
  color: #4f2116; }
  .letter:before, #message-modal .modal__letter:before, .letter:after, #message-modal .modal__letter:after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    width: 100%;
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: center center; }
  .letter:before, #message-modal .modal__letter:before {
    top: 0;
    height: 40px;
    background-image: url("../images/message/skin/skin_a_top.png"); }
  .letter.is-close .letter__body, #message-modal .is-close.modal__letter .letter__body, .letter.is-close .modal__letter--confirm__body, #message-modal .is-close.modal__letter .modal__letter--confirm__body {
    max-height: 104px; }

.letter[data-skin="1"]:before, #message-modal [data-skin="1"].modal__letter:before {
  background-image: url("../images/message/skin/skin_a_top.png"); }

.letter[data-skin="1"] .letter__inner, #message-modal [data-skin="1"].modal__letter .letter__inner, .letter[data-skin="1"] #message-modal .modal__letter__inner, #message-modal .letter[data-skin="1"] .modal__letter__inner, #message-modal [data-skin="1"].modal__letter .modal__letter__inner {
  background-image: url("../images/message/skin/skin_a_middle.png"); }

.letter[data-skin="1"] .letter__name, #message-modal [data-skin="1"].modal__letter .letter__name, .letter[data-skin="1"] .modal__letter__name, #message-modal [data-skin="1"].modal__letter .modal__letter__name, .letter[data-skin="1"] .modal__letter--confirm__name, #message-modal [data-skin="1"].modal__letter .modal__letter--confirm__name {
  background-image: url("../images/message/skin/skin_a_bottom.png"); }

.letter[data-skin="2"]:before, #message-modal [data-skin="2"].modal__letter:before {
  background-image: url("../images/message/skin/skin_b_top.png"); }

.letter[data-skin="2"] .letter__inner, #message-modal [data-skin="2"].modal__letter .letter__inner, .letter[data-skin="2"] #message-modal .modal__letter__inner, #message-modal .letter[data-skin="2"] .modal__letter__inner, #message-modal [data-skin="2"].modal__letter .modal__letter__inner {
  background-image: url("../images/message/skin/skin_b_middle.png"); }

.letter[data-skin="2"] .letter__name, #message-modal [data-skin="2"].modal__letter .letter__name, .letter[data-skin="2"] .modal__letter__name, #message-modal [data-skin="2"].modal__letter .modal__letter__name, .letter[data-skin="2"] .modal__letter--confirm__name, #message-modal [data-skin="2"].modal__letter .modal__letter--confirm__name {
  background-image: url("../images/message/skin/skin_b_bottom.png"); }

.letter[data-skin="3"]:before, #message-modal [data-skin="3"].modal__letter:before {
  background-image: url("../images/message/skin/skin_c_top.png"); }

.letter[data-skin="3"] .letter__inner, #message-modal [data-skin="3"].modal__letter .letter__inner, .letter[data-skin="3"] #message-modal .modal__letter__inner, #message-modal .letter[data-skin="3"] .modal__letter__inner, #message-modal [data-skin="3"].modal__letter .modal__letter__inner {
  background-image: url("../images/message/skin/skin_c_middle.png"); }

.letter[data-skin="3"] .letter__name, #message-modal [data-skin="3"].modal__letter .letter__name, .letter[data-skin="3"] .modal__letter__name, #message-modal [data-skin="3"].modal__letter .modal__letter__name, .letter[data-skin="3"] .modal__letter--confirm__name, #message-modal [data-skin="3"].modal__letter .modal__letter--confirm__name {
  background-image: url("../images/message/skin/skin_c_bottom.png"); }

.letter[data-skin="4"]:before, #message-modal [data-skin="4"].modal__letter:before {
  background-image: url("../images/message/skin/skin_d_top.png"); }

.letter[data-skin="4"] .letter__inner, #message-modal [data-skin="4"].modal__letter .letter__inner, .letter[data-skin="4"] #message-modal .modal__letter__inner, #message-modal .letter[data-skin="4"] .modal__letter__inner, #message-modal [data-skin="4"].modal__letter .modal__letter__inner {
  background-image: url("../images/message/skin/skin_d_middle.png"); }

.letter[data-skin="4"] .letter__name, #message-modal [data-skin="4"].modal__letter .letter__name, .letter[data-skin="4"] .modal__letter__name, #message-modal [data-skin="4"].modal__letter .modal__letter__name, .letter[data-skin="4"] .modal__letter--confirm__name, #message-modal [data-skin="4"].modal__letter .modal__letter--confirm__name {
  background-image: url("../images/message/skin/skin_d_bottom.png"); }

.letter[data-skin="5"]:before, #message-modal [data-skin="5"].modal__letter:before {
  background-image: url("../images/message/skin/skin_e_top.png"); }

.letter[data-skin="5"] .letter__inner, #message-modal [data-skin="5"].modal__letter .letter__inner, .letter[data-skin="5"] #message-modal .modal__letter__inner, #message-modal .letter[data-skin="5"] .modal__letter__inner, #message-modal [data-skin="5"].modal__letter .modal__letter__inner {
  background-image: url("../images/message/skin/skin_e_middle.png"); }

.letter[data-skin="5"] .letter__name, #message-modal [data-skin="5"].modal__letter .letter__name, .letter[data-skin="5"] .modal__letter__name, #message-modal [data-skin="5"].modal__letter .modal__letter__name, .letter[data-skin="5"] .modal__letter--confirm__name, #message-modal [data-skin="5"].modal__letter .modal__letter--confirm__name {
  background-image: url("../images/message/skin/skin_e_bottom.png"); }

.letter__inner, #message-modal .modal__letter__inner {
  box-sizing: border-box;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  margin: -1px 0;
  padding: 0 25px 10px;
  width: 100%;
  min-height: 98px;
  background-image: url("../images/message/skin/skin_a_middle.png");
  background-repeat: repeat-y;
  background-position: center top;
  background-size: 100%; }

.letter__body, .modal__letter--confirm__body {
  width: 100%;
  font-size: 13px;
  line-height: 26px;
  white-space: pre-wrap;
  word-wrap: break-word;
  overflow: hidden; }

.letter__name, .modal__letter__name, .modal__letter--confirm__name {
  box-sizing: border-box;
  padding: 0 25px 10px;
  width: 100%;
  height: 125px;
  text-align: right;
  font-size: 11px;
  line-height: 18px;
  font-weight: bold;
  background-repeat: no-repeat;
  background-size: 100% auto;
  background-position: center center; }

.letter__btn {
  margin: 10px auto 0;
  width: 264px;
  height: 37px;
  background-image: url("../images/message/btn_more.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  cursor: pointer; }

#message-modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: 10; }
  #message-modal .modal__overlay {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    overflow: hidden; }
  #message-modal .modal__container {
    box-sizing: border-box;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch; }
  #message-modal .modal__inner {
    display: block;
    position: relative;
    margin: 25px auto;
    padding: 35px 0 55px;
    width: 320px; }
    #message-modal .modal__inner:before, #message-modal .modal__inner:after {
      content: "";
      display: block;
      position: absolute;
      left: 0;
      width: 100%;
      background-repeat: no-repeat;
      background-size: 300px auto; }
    #message-modal .modal__inner:before {
      top: 0;
      height: 35px;
      background-image: url("../images/message/modal/bg_paper_top.png");
      background-position: center center; }
    #message-modal .modal__inner:after {
      bottom: 15px;
      height: 55px;
      background-image: url("../images/message/modal/bg_paper_bottom2.png"), url("../images/message/modal/bg_paper_bottom1.png");
      background-position: center -2px, center bottom; }
  #message-modal .modal__close-btn {
    display: block;
    position: absolute;
    right: 5px;
    top: -10px;
    width: 38.5px;
    height: 39px;
    background-image: url("../images/message/modal/btn_close.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    z-index: 2;
    cursor: pointer; }
  #message-modal .modal__paper {
    padding-bottom: 20px;
    background-image: url("../images/message/modal/bg_paper_middle.png");
    background-size: 300px auto;
    background-repeat: repeat-y;
    background-position: center top; }
  #message-modal .modal__letter {
    margin: 0; }
  #message-modal .modal__letter__inner {
    padding-bottom: 40px; }
    #message-modal .modal__letter__inner:after {
      content: none; }
  #message-modal .modal__letter[data-skin="1"]:before {
    background-image: url("../images/message/skin/skin_a_top.png"); }
  #message-modal .modal__letter[data-skin="1"]:after {
    background-image: url("../images/message/skin/skin_a_bottom.png"); }
  #message-modal .modal__letter[data-skin="1"] .modal__letter__inner {
    background-image: url("../images/message/skin/skin_a_middle.png"); }
  #message-modal .modal__letter[data-skin="2"]:before {
    background-image: url("../images/message/skin/skin_b_top.png"); }
  #message-modal .modal__letter[data-skin="2"]:after {
    background-image: url("../images/message/skin/skin_b_bottom.png"); }
  #message-modal .modal__letter[data-skin="2"] .modal__letter__inner {
    background-image: url("../images/message/skin/skin_b_middle.png"); }
  #message-modal .modal__letter[data-skin="3"]:before {
    background-image: url("../images/message/skin/skin_c_top.png"); }
  #message-modal .modal__letter[data-skin="3"]:after {
    background-image: url("../images/message/skin/skin_c_bottom.png"); }
  #message-modal .modal__letter[data-skin="3"] .modal__letter__inner {
    background-image: url("../images/message/skin/skin_c_middle.png"); }
  #message-modal .modal__letter[data-skin="4"]:before {
    background-image: url("../images/message/skin/skin_d_top.png"); }
  #message-modal .modal__letter[data-skin="4"]:after {
    background-image: url("../images/message/skin/skin_d_bottom.png"); }
  #message-modal .modal__letter[data-skin="4"] .modal__letter__inner {
    background-image: url("../images/message/skin/skin_d_middle.png"); }
  #message-modal .modal__letter[data-skin="5"]:before {
    background-image: url("../images/message/skin/skin_e_top.png"); }
  #message-modal .modal__letter[data-skin="5"]:after {
    background-image: url("../images/message/skin/skin_e_bottom.png"); }
  #message-modal .modal__letter[data-skin="5"] .modal__letter__inner {
    background-image: url("../images/message/skin/skin_e_middle.png"); }

.modal__debug {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  margin: 0 auto;
  width: 320px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch; }
  .modal__debug button {
    display: block;
    height: 44px; }

.modal__letter__counter {
  margin-top: 5px;
  margin-right: 5px;
  text-align: right;
  font-weight: normal;
  font-size: 10px;
  line-height: 13px; }

#letter-body, #name {
  box-sizing: border-box;
  display: block;
  border-radius: 8px;
  border: 3px solid #b77f3a;
  font-size: 13px;
  line-height: 19.5px;
  color: #4f2116;
  box-shadow: inset 4px 4px 2px 0px rgba(216, 179, 132, 0.55); }
  #letter-body:focus, #name:focus {
    outline: none; }

#letter-body {
  margin: 2px auto 0;
  padding: 7px 10px;
  width: 260px;
  height: 130px;
  font-size: 13px;
  line-height: 25px;
  resize: none;
  color: #4f2116; }
  #letter-body:placeholder-shown {
    color: rgba(79, 33, 22, 0.6); }
  #letter-body::-webkit-input-placeholder {
    color: rgba(79, 33, 22, 0.6); }
  #letter-body:-moz-placeholder {
    color: rgba(79, 33, 22, 0.6); }
  #letter-body::-moz-placeholder {
    color: rgba(79, 33, 22, 0.6); }
  #letter-body:-ms-input-placeholder {
    color: rgba(79, 33, 22, 0.6); }

#name {
  margin: 0 auto;
  padding: 0 10px;
  width: 260px;
  height: 37px;
  color: #4f2116; }
  #name:placeholder-shown {
    color: rgba(79, 33, 22, 0.6); }
  #name::-webkit-input-placeholder {
    color: rgba(79, 33, 22, 0.6); }
  #name:-moz-placeholder {
    color: rgba(79, 33, 22, 0.6); }
  #name::-moz-placeholder {
    color: rgba(79, 33, 22, 0.6); }
  #name:-ms-input-placeholder {
    color: rgba(79, 33, 22, 0.6); }

.modal__letter--input__text {
  margin: 0 auto;
  width: 260px;
  font-size: 13px;
  line-height: 19.5px;
  color: #4f2116;
  width: 268.5px;
  height: 38px;
  background-image: url("../images/message/modal/skin_ttl.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain; }

.modal__letter__name {
  margin-top: -30px;
  height: 155px;
  background-position: center bottom; }

.modal__letter--input__skin-list {
  box-sizing: border-box;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: relative;
  margin: 0 auto;
  width: 280px;
  height: 50px;
  z-index: 2;
  list-style-type: none; }

.modal__letter--input__skin {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  width: 55px; }
  .modal__letter--input__skin label {
    position: relative;
    z-index: 2;
    display: block;
    cursor: pointer; }
  .modal__letter--input__skin input {
    display: none; }
  .modal__letter--input__skin input:checked ~ span {
    display: block;
    position: absolute;
    top: -2px;
    left: 0;
    width: 51px;
    height: 51px;
    border-radius: 5px;
    border: 2px solid #ff9999;
    background-color: #ff9999;
    z-index: 1; }

.modal__letter--input__skin label[for="skin1"] {
  width: 51px;
  height: 51px;
  background-image: url("../images/message/modal/btn_skin1.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain; }

.modal__letter--input__skin label[for="skin2"] {
  width: 51px;
  height: 51px;
  background-image: url("../images/message/modal/btn_skin2.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain; }

.modal__letter--input__skin label[for="skin3"] {
  width: 51px;
  height: 51px;
  background-image: url("../images/message/modal/btn_skin3.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain; }

.modal__letter--input__skin label[for="skin4"] {
  width: 51px;
  height: 51px;
  background-image: url("../images/message/modal/btn_skin4.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain; }

.modal__letter--input__skin label[for="skin5"] {
  width: 51px;
  height: 51px;
  background-image: url("../images/message/modal/btn_skin5.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain; }

.modal__letter--input__btn {
  margin: 10px auto 0;
  width: 280.5px;
  height: 69px;
  background-image: url("../images/message/modal/btn_confirm.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain; }

.modal__letter--input__term {
  margin: 15px auto 0;
  width: 260px;
  padding: 10px;
  background-color: #dfbb81; }
  .modal__letter--input__term p {
    font-size: 13px;
    line-height: 19.5px;
    color: #4f2116; }
  .modal__letter--input__term ul {
    display: block;
    font-size: 10px;
    line-height: 15px;
    list-style-type: none; }

/**
  確認画面
*/
.modal__letter--confirm__title {
  position: relative;
  margin: -18px auto 0;
  width: 268.5px;
  height: 38px;
  background-image: url("../images/message/modal/confirm_ttl.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain; }

.modal__letter--confirm__btn {
  margin: 10px auto 0; }
  .modal__letter--confirm__btn[data-vote] {
    width: 280.5px;
    height: 69px;
    background-image: url("../images/message/modal/btn_vote.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain; }
  .modal__letter--confirm__btn[data-back] {
    width: 280.5px;
    height: 49px;
    background-image: url("../images/message/modal/btn_back.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain; }

.modal__letter--input__error-text {
  margin-top: 15px;
  background-repeat: no-repeat;
  background-position: center center;
  width: 100%;
  height: 14px;
  background-size: auto 100%; }
  .modal__letter--input__error-text[data-type="error1"] {
    background-image: url("../images/message/modal/txt_error1.png"); }
  .modal__letter--input__error-text[data-type="error2"] {
    background-image: url("../images/message/modal/txt_error2.png"); }
  .modal__letter--input__error-text[data-type="error3"] {
    background-image: url("../images/message/modal/txt_error3.png"); }

/**
  完了画面
*/
.modal__border--complete__title {
  position: relative;
  display: block;
  margin: -10px auto 0;
  width: 268.5px;
  height: 38px;
  background-image: url("../images/message/modal/complete_ttl.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain; }

.modal__border__text {
  margin-top: 12px;
  text-align: center;
  color: #4f2116; }

.modal__letter--complete__btn {
  margin: 18px auto 0;
  width: 280.5px;
  height: 49px;
  background-image: url("../images/message/modal/complete_btn_close.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain; }

#index {
  background-image: none; }

#fv {
  margin-bottom: 10px; }

.fv__heading {
  position: relative; }

@media (max-width: 799px) {
  .fv__heading {
    height: 56.25vw;
    max-height: 432px; } }

@media (min-width: 800px) {
  .fv__heading {
    height: 56.25vw;
    max-height: 675px; } }

.fv__hero {
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  margin: 0 auto;
  width: 100%;
  max-height: 100%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  background-size: 100% auto;
  background-position: center top;
  background-repeat: no-repeat; }

@media (max-width: 799px) {
  .fv__hero {
    min-width: 384px;
    max-width: 768px;
    height: 56.25vw;
    background-image: url("../images/index/main_sp.png"); } }

@media (min-width: 800px) {
  .fv__hero {
    min-width: 600px;
    width: 100%;
    max-width: 1200px;
    height: 56.25vw;
    background-image: url("../images/index/main_pc.png"); } }

.bnr__inner {
  margin: 0 auto;
  padding: 20px 0;
  width: 280px; }

.bnr__link {
  display: block;
  text-decoration: none;
  width: 279.5px;
  height: 76px;
  background-image: url("../images/index/bnr.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain; }

.bnr__link + .bnr__link {
  margin-top: 5px; }

#news {
  margin-top: 20px; }

.news__inner {
  margin: 0 auto;
  padding-bottom: 20px;
  width: 311px; }

.news__heading-box {
  box-sizing: border-box;
  display: block;
  padding: 4px 8px 2px;
  border: 1px solid #b5b5b5;
  border-bottom: none;
  border-radius: 10px 10px 0 0;
  width: 100%;
  background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #fcfcfc), color-stop(50%, #e5e4e4), color-stop(51%, #cccbcb), color-stop(100%, #e6e6e6));
  background-image: -webkit-linear-gradient(top, #fcfcfc 0%, #e5e4e4 50%, #cccbcb 51%, #e6e6e6 100%);
  background-image: linear-gradient(top, #fcfcfc 0%, #e5e4e4 50%, #cccbcb 51%, #e6e6e6 100%);
  background-image: linear-gradient(to bottom, #fcfcfc 0%, #e5e4e4 50%, #cccbcb 51%, #e6e6e6 100%); }

.news__heading {
  position: relative;
  display: inline-block;
  line-height: 1.2;
  font-size: 18px;
  font-weight: bold;
  letter-spacing: -1px;
  text-shadow: 1px 1px 0 #fff;
  vertical-align: middle;
  color: #ff2929; }
  .news__heading:after {
    content: attr(title);
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    color: #ffb129;
    -webkit-mask-image: url("../images/index/mask_font.png");
            mask-image: url("../images/index/mask_font.png");
    -webkit-mask-repeat: repeat-x;
            mask-repeat: repeat-x;
    -webkit-mask-position: 0 50%;
            mask-position: 0 50%;
    -webkit-mask-size: auto 100%;
            mask-size: auto 100%; }

.news__list {
  list-style-type: none;
  border: 1px solid #b5b5b5;
  background-color: #fff;
  border-radius: 0 0 10px 10px; }

.news__item {
  position: relative;
  display: block;
  min-height: 25px; }
  .news__item:after {
    content: "";
    display: block;
    position: absolute;
    left: 1.5%;
    bottom: 0;
    width: 97%;
    height: 0;
    border-top: 1px dotted #b5b5b5; }
  .news__item:last-of-type:after {
    border-top: none; }

.news__item__link {
  display: block;
  padding: .25em 0;
  text-decoration: none;
  color: #000; }

.news__item__tag-box {
  font-size: 68%;
  margin: 0 1em 0 -7px;
  float: left;
  width: 7em;
  color: 87%;
  text-align: center; }

.news__item__tag {
  display: block;
  position: relative;
  width: 7em;
  color: transparent;
  white-space: nowrap; }
  .news__item__tag:before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: -3px;
    border-top: 3px solid transparent;
    border-bottom: 6px solid transparent;
    border-right-width: 6px;
    border-right-style: solid;
    width: 0;
    height: 0;
    z-index: 0; }
  .news__item__tag:after {
    display: block;
    position: relative;
    top: 0;
    padding: 0.25em;
    width: 100%;
    height: 100%;
    color: #fff;
    font-weight: bold;
    z-index: 1; }

.news__item__tag-box[data-tag="update"] .news__item__tag:after {
  content: "アップデート";
  background-color: #8413ca; }

.news__item__tag-box[data-tag="update"] .news__item__tag:before {
  border-right-color: #560c84; }

.news__item__tag-box[data-tag="failure"] .news__item__tag:after {
  content: "不具合";
  background-color: #444; }

.news__item__tag-box[data-tag="failure"] .news__item__tag:before {
  border-right-color: #1e1e1e; }

.news__item__tag-box[data-tag="campaign"] .news__item__tag:after {
  content: "キャンペーン";
  background-color: #f79921; }

.news__item__tag-box[data-tag="campaign"] .news__item__tag:before {
  border-right-color: #c47107; }

.news__item__tag-box[data-tag="important"] .news__item__tag:after {
  content: "重要";
  background-color: #fa1804; }

.news__item__tag-box[data-tag="important"] .news__item__tag:before {
  border-right-color: #af1103; }

.news__item__tag-box[data-tag="event"] .news__item__tag:after {
  content: "イベント";
  background-color: #3e9d11; }

.news__item__tag-box[data-tag="event"] .news__item__tag:before {
  border-right-color: #23580a; }

.news__item__tag-box[data-tag="news"] .news__item__tag:after {
  content: "ニュース";
  background-color: #49cbfd; }

.news__item__tag-box[data-tag="news"] .news__item__tag:before {
  border-right-color: #03b3f7; }

.news__item__tag-box[data-tag="maintenance"] .news__item__tag:after {
  content: "メンテナンス";
  background-color: #fa1804; }

.news__item__tag-box[data-tag="maintenance"] .news__item__tag:before {
  border-right-color: #af1103; }

.news__item__tag-box[data-tag="information"] .news__item__tag:after {
  content: "お知らせ";
  background-color: #49cbfd; }

.news__item__tag-box[data-tag="information"] .news__item__tag:before {
  border-right-color: #03b3f7; }

.news__item__text {
  vertical-align: middle; }

.news__item__date {
  color: #333;
  font-size: 12px; }

.news__item__title {
  display: block;
  margin: 0.25em 0.25em 0 0.5em;
  line-height: 1.2;
  font-size: 13px; }

.news__fetch-btn {
  display: block;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  margin: 1em auto 0;
  padding: 0.8em;
  border-radius: 10px;
  text-align: center;
  background-color: rgba(0, 0, 0, 0.8);
  color: #fff;
  font-weight: bold;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  cursor: pointer; }
  .news__fetch-btn:focus {
    outline: none; }
  .news__fetch-btn:after {
    content: "さらに読み込む"; }
  .news__fetch-btn.is-loading:after {
    content: "読み込み中..."; }
  .news__fetch-btn.is-failed:after {
    content: "読み込みに失敗しました...。"; }

.fv__inner {
  text-align: center; }

.fv__link {
  display: inline-block;
  margin-top: 10px;
  height: 80px;
  text-align: center; }

.fv__logo {
  display: block;
  max-height: 100%; }

.intro__inner {
  margin: 0 auto;
  padding-bottom: 20px;
  width: 311px; }

.intro__heading-box {
  box-sizing: border-box;
  display: block;
  padding: 4px 8px 2px;
  border: 1px solid #b5b5b5;
  border-bottom: none;
  border-radius: 10px 10px 0 0;
  width: 100%;
  background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #fcfcfc), color-stop(50%, #e5e4e4), color-stop(51%, #cccbcb), color-stop(100%, #e6e6e6));
  background-image: -webkit-linear-gradient(top, #fcfcfc 0%, #e5e4e4 50%, #cccbcb 51%, #e6e6e6 100%);
  background-image: linear-gradient(top, #fcfcfc 0%, #e5e4e4 50%, #cccbcb 51%, #e6e6e6 100%);
  background-image: linear-gradient(to bottom, #fcfcfc 0%, #e5e4e4 50%, #cccbcb 51%, #e6e6e6 100%); }

.intro__heading {
  position: relative;
  display: inline-block;
  line-height: 1.2;
  font-size: 18px;
  font-weight: bold;
  letter-spacing: -1px;
  text-shadow: 1px 1px 0 #fff;
  vertical-align: middle;
  color: #ff2929; }
  .intro__heading:after {
    content: attr(title);
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    color: #ffb129;
    -webkit-mask-image: url("../images/about/mask_font.png");
            mask-image: url("../images/about/mask_font.png");
    -webkit-mask-repeat: repeat-x;
            mask-repeat: repeat-x;
    -webkit-mask-position: 0 50%;
            mask-position: 0 50%;
    -webkit-mask-size: auto 100%;
            mask-size: auto 100%; }

.intro__content {
  border: 1px solid #b5b5b5;
  border-radius: 0 0 10px 10px;
  padding: 1em;
  background-color: #fff; }

.intro__sub-section + .intro__sub-section {
  margin-top: 40px; }

.intro__sub-section__heading {
  position: relative;
  margin-left: 0.5%;
  margin-bottom: 0.8em;
  border-bottom: 1px solid #333;
  padding-left: 10px;
  padding-bottom: 1%;
  line-height: 1;
  color: #333;
  font-weight: bold;
  white-space: nowrap; }
  .intro__sub-section__heading:before {
    content: "";
    display: block;
    position: absolute;
    top: -1px;
    left: 0;
    width: 4px;
    height: 1em;
    border-radius: 4px;
    background-color: #333; }

.intro__sub-section__text {
  margin-top: 1em;
  line-height: 1.4; }
  .intro__sub-section__text strong {
    font-weight: bold;
    color: red; }

.intro__sub-section__figure {
  margin-top: 1em; }
  .intro__sub-section__figure img {
    display: inline-block;
    margin-bottom: 2.5%;
    border: 5px solid #fff;
    max-width: 96%;
    outline: 1px solid #ddd; }

#support textarea {
  font-size: 14px;
  line-height: 1.4;
  font-family: -apple-system, "Helvetica Neue", "Hiragino Kaku Gothic ProN", "游ゴシック Medium", "メイリオ", meiryo, sans-serif; }

#support .fv__inner {
  text-align: center; }

#support .fv__link {
  display: inline-block;
  margin-top: 10px;
  height: 80px;
  text-align: center; }

#support .fv__logo {
  display: block;
  max-height: 100%; }

#support .main__inner {
  margin: 0 auto;
  padding-bottom: 20px;
  width: 311px; }

#support .main__heading-box {
  box-sizing: border-box;
  display: block;
  padding: 4px 8px 2px;
  border: 1px solid #b5b5b5;
  border-bottom: none;
  border-radius: 10px 10px 0 0;
  width: 100%;
  background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #fcfcfc), color-stop(50%, #e5e4e4), color-stop(51%, #cccbcb), color-stop(100%, #e6e6e6));
  background-image: -webkit-linear-gradient(top, #fcfcfc 0%, #e5e4e4 50%, #cccbcb 51%, #e6e6e6 100%);
  background-image: linear-gradient(top, #fcfcfc 0%, #e5e4e4 50%, #cccbcb 51%, #e6e6e6 100%);
  background-image: linear-gradient(to bottom, #fcfcfc 0%, #e5e4e4 50%, #cccbcb 51%, #e6e6e6 100%); }

#support .main__heading {
  position: relative;
  display: inline-block;
  line-height: 1.2;
  font-size: 18px;
  font-weight: bold;
  letter-spacing: -1px;
  text-shadow: 1px 1px 0 #fff;
  vertical-align: middle;
  color: #f65e33; }
  #support .main__heading:after {
    content: attr(title);
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    color: #ffb129;
    -webkit-mask-image: url("../images/support/mask_font.png");
            mask-image: url("../images/support/mask_font.png");
    -webkit-mask-repeat: repeat-x;
            mask-repeat: repeat-x;
    -webkit-mask-position: 0 50%;
            mask-position: 0 50%;
    -webkit-mask-size: auto 100%;
            mask-size: auto 100%; }

#support .main__content {
  border: 1px solid #b5b5b5;
  border-radius: 0 0 10px 10px;
  padding: 1em;
  background-color: #fff; }

#support .sub-section__heading {
  position: relative;
  margin-left: 0.5%;
  margin-bottom: 0.8em;
  border-bottom: 1px solid #333;
  padding-left: 10px;
  padding-bottom: 1%;
  line-height: 1;
  color: #333;
  font-weight: bold; }
  #support .sub-section__heading:before {
    content: "";
    display: block;
    position: absolute;
    top: -1px;
    left: 0;
    width: 4px;
    height: 1em;
    border-radius: 4px;
    background-color: #333; }

#support .sub-section__text {
  margin-top: 1em;
  line-height: 1.4; }
  #support .sub-section__text strong {
    font-weight: bold; }

#support .sub-section__link {
  display: block;
  position: relative;
  margin-top: 1em;
  border: 2px solid #fff;
  outline: 1px solid #cab6a8;
  text-decoration: none; }
  #support .sub-section__link img {
    display: block;
    max-width: 100%; }
  #support .sub-section__link[data-comment] {
    background-color: #fdffce; }
  #support .sub-section__link[data-failure] {
    background-color: #f7f7f7; }
  #support .sub-section__link[data-other] {
    background-color: #fae6e6; }
    #support .sub-section__link[data-other] .sub-section__title {
      filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feComponentTransfer color-interpolation-filters="sRGB"><feFuncR type="linear" slope="1.125" /><feFuncG type="linear" slope="1.125" /><feFuncB type="linear" slope="1.125" /></feComponentTransfer></filter></svg>#filter');
      -webkit-filter: brightness(112.5%);
              filter: brightness(112.5%);
      left: 25%;
      width: 50%; }

#support .sub-section__bg {
  opacity: .8;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)"; }

#support .sub-section__title {
  position: absolute;
  top: 2%;
  left: 2%;
  width: 96%; }

#support .sub-section__btn {
  position: absolute;
  right: 2%;
  bottom: 2%;
  width: 54%; }

#support .sub-section__horizontal {
  width: 100%;
  height: 0;
  margin: 1.5em 0;
  border: none;
  border-bottom: 1px dashed #333;
  background: none; }

#support .sub-section__subject {
  margin: .5em 0;
  padding-left: 2em; }
  #support .sub-section__subject li {
    list-style-type: disc; }

#support .sub-section__textarea {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  box-sizing: border-box;
  margin: .5em 0 0;
  border: 1px solid #ccc;
  border-radius: 3px;
  padding: 0.66em;
  width: 100%;
  height: 11em;
  text-align: left;
  resize: none; }

.epilogue {
  position: relative; }
  .epilogue__paper-repeat {
    position: relative;
    width: 320px;
    height: 284px;
    background-image: url("../images/epilogue/paper-repeat.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    margin-left: 0;
    margin-right: 0;
    margin: auto;
    z-index: 1;
    position: relative;
    background-size: 100% auto;
    background-repeat: repeat-y;
    background-position: top;
    height: auto;
    top: 5px;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 0;
    margin-top: 60.5px;
    padding-top: 0.05px;
    margin-bottom: 60px; }
  .epilogue__paper-top {
    position: relative;
    width: 320px;
    height: 60.5px;
    background-image: url("../images/epilogue/paper-top.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    margin-left: 0;
    margin-right: 0;
    margin: auto;
    z-index: 1;
    position: absolute;
    top: -60.5px; }
  .epilogue__paper-bottom {
    position: relative;
    width: 320px;
    height: 45px;
    background-image: url("../images/epilogue/paper-bottom.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    margin-left: 0;
    margin-right: 0;
    margin: auto;
    z-index: 1;
    position: absolute;
    bottom: -45px; }
  .epilogue__logo {
    position: relative;
    width: 286.5px;
    height: 151.5px;
    background-image: url("../images/epilogue/logo.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    margin-left: 0;
    margin-right: 0;
    margin: auto;
    z-index: 1;
    margin-top: -25px;
    margin-bottom: 10px; }
  .epilogue__txt {
    position: relative;
    width: 244px;
    height: 78px;
    background-image: url("../images/epilogue/txt.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    margin-left: 0;
    margin-right: 0;
    margin: auto;
    z-index: 1;
    margin-bottom: -5px; }
  .epilogue__page01 {
    position: relative;
    width: 310px;
    height: 494px;
    background-image: url("../images/epilogue/page01.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    margin-left: 0;
    margin-right: 0;
    margin: auto;
    z-index: 1;
    overflow-x: hidden;
    background-size: 335px auto; }
  .epilogue__page02 {
    position: relative;
    width: 310px;
    height: 494px;
    background-image: url("../images/epilogue/page02.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    margin-left: 0;
    margin-right: 0;
    margin: auto;
    z-index: 1;
    overflow-x: hidden;
    background-size: 335px auto; }
  .epilogue__page03 {
    position: relative;
    width: 310px;
    height: 494px;
    background-image: url("../images/epilogue/page03.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    margin-left: 0;
    margin-right: 0;
    margin: auto;
    z-index: 1;
    overflow-x: hidden;
    background-size: 335px auto; }
  .epilogue__page04 {
    position: relative;
    width: 310px;
    height: 494px;
    background-image: url("../images/epilogue/page04.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    margin-left: 0;
    margin-right: 0;
    margin: auto;
    z-index: 1;
    overflow-x: hidden;
    background-size: 335px auto; }
  .epilogue__page05 {
    position: relative;
    width: 310px;
    height: 494px;
    background-image: url("../images/epilogue/page05.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    margin-left: 0;
    margin-right: 0;
    margin: auto;
    z-index: 1;
    overflow-x: hidden;
    background-size: 335px auto; }

.chara {
  position: relative;
  left: 0px; }
  .chara__paper-repeat {
    position: relative;
    width: 320px;
    height: 284px;
    background-image: url("../images/chara/paper-repeat.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    margin-left: 0;
    margin-right: 0;
    margin: auto;
    position: relative;
    background-size: 100% auto;
    background-repeat: repeat-y;
    background-position: top;
    height: auto;
    top: 5px;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 0;
    margin-top: 60.5px;
    padding-top: 0.05px;
    margin-bottom: 60px; }
  .chara__paper-top {
    position: relative;
    width: 320px;
    height: 60.5px;
    background-image: url("../images/chara/paper-top.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    margin-left: 0;
    margin-right: 0;
    margin: auto;
    position: absolute;
    top: -60.5px; }
  .chara__paper-bottom {
    position: relative;
    width: 320px;
    height: 45px;
    background-image: url("../images/chara/paper-bottom.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    margin-left: 0;
    margin-right: 0;
    margin: auto;
    position: absolute;
    bottom: -45px; }
  .chara__logo {
    position: relative;
    width: 297.5px;
    height: 161.5px;
    background-image: url("../images/chara/logo.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    margin-left: 0;
    margin-right: 0;
    margin: auto;
    margin-top: -25px; }
  .chara__logo_text {
    position: relative;
    width: 279px;
    height: 91px;
    background-image: url("../images/chara/logo_text.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    margin-left: 0;
    margin-right: 0;
    margin: auto;
    margin-top: 7.5px;
    margin-bottom: 20px; }
  .chara__sort_btn {
    position: relative;
    width: 280px;
    height: 31px;
    margin-left: 0;
    margin-right: 0;
    margin: auto;
    padding-bottom: 12.5px; }
  .chara__sort_btn-left {
    position: relative;
    width: 94px;
    height: 31px;
    background-image: url("../images/chara/sort_btn-left.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    display: inline-block;
    position: absolute;
    cursor: pointer; }
    .chara__sort_btn-left.selected {
      width: 94px;
      height: 31px;
      background-image: url("../images/chara/sort_btn-left--selected.png");
      background-repeat: no-repeat;
      background-position: center center;
      background-size: contain; }
  .chara__sort_btn-center {
    position: relative;
    width: 94px;
    height: 31px;
    background-image: url("../images/chara/sort_btn-center.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    display: inline-block;
    position: absolute;
    cursor: pointer;
    left: 93px; }
    .chara__sort_btn-center.selected {
      width: 94px;
      height: 31px;
      background-image: url("../images/chara/sort_btn-center--selected.png");
      background-repeat: no-repeat;
      background-position: center center;
      background-size: contain; }
  .chara__sort_btn-right {
    position: relative;
    width: 94px;
    height: 31px;
    background-image: url("../images/chara/sort_btn-right.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    display: inline-block;
    position: absolute;
    cursor: pointer;
    left: 186px; }
    .chara__sort_btn-right.selected {
      width: 94px;
      height: 31px;
      background-image: url("../images/chara/sort_btn-right--selected.png");
      background-repeat: no-repeat;
      background-position: center center;
      background-size: contain; }
  .chara .chara__text-series {
    width: 77.5px;
    height: 14px;
    background-image: url("../images/chara/text-series_ascending.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    display: inline-block;
    position: absolute;
    margin: 9px 9.5px; }
    .chara .chara__text-series.descending {
      width: 77.5px;
      height: 14px;
      background-image: url("../images/chara/text-series_descending.png");
      background-repeat: no-repeat;
      background-position: center center;
      background-size: contain; }
  .chara .chara__text-rarity {
    width: 63.5px;
    height: 14px;
    background-image: url("../images/chara/text-rarity_ascending.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    display: inline-block;
    position: absolute;
    margin: 9px 15px; }
    .chara .chara__text-rarity.descending {
      width: 63.5px;
      height: 14px;
      background-image: url("../images/chara/text-rarity_descending.png");
      background-repeat: no-repeat;
      background-position: center center;
      background-size: contain; }
  .chara .chara__text-name {
    width: 65.5px;
    height: 14px;
    background-image: url("../images/chara/text-name_ascending.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    display: inline-block;
    position: absolute;
    margin: 9px 15px; }
    .chara .chara__text-name.descending {
      width: 65.5px;
      height: 14px;
      background-image: url("../images/chara/text-name_descending.png");
      background-repeat: no-repeat;
      background-position: center center;
      background-size: contain; }
  .chara__pagination {
    position: relative;
    width: 280.5px;
    height: 31px;
    margin-left: 0;
    margin-right: 0;
    margin: auto;
    padding-bottom: 12.5px; }
    .chara__pagination__left {
      width: 59px;
      height: 31px;
      background-image: url("../images/chara/pagination__left.png");
      background-repeat: no-repeat;
      background-position: center center;
      background-size: contain;
      position: absolute;
      left: 0;
      cursor: pointer; }
      .chara__pagination__left.end {
        width: 59px;
        height: 31px;
        background-image: url("../images/chara/pagination__left_end.png");
        background-repeat: no-repeat;
        background-position: center center;
        background-size: contain; }
    .chara__pagination__right {
      width: 59px;
      height: 31px;
      background-image: url("../images/chara/pagination__right.png");
      background-repeat: no-repeat;
      background-position: center center;
      background-size: contain;
      position: absolute;
      right: 0;
      cursor: pointer; }
      .chara__pagination__right.end {
        width: 59px;
        height: 31px;
        background-image: url("../images/chara/pagination__right_end.png");
        background-repeat: no-repeat;
        background-position: center center;
        background-size: contain; }
    .chara__pagination__pulldown_wrapper {
      position: absolute;
      width: 83px;
      height: 31px;
      overflow: hidden;
      left: 0;
      right: 0;
      margin: auto; }
    .chara__pagination__pulldown {
      cursor: pointer;
      position: relative;
      background: none;
      border: 0;
      outline: none;
      -webkit-appearance: none;
      -moz-appearance: none;
      appearance: none;
      font-size: 12px;
      padding-top: 0px;
      padding-left: 20px;
      font-family: "Hiragino Kaku Gothic ProN", "游ゴシック Medium", "メイリオ", meiryo, sans-serif;
      font-weight: bold;
      color: #3b1c1c;
      width: 83px;
      height: 31px;
      background-image: url("../images/chara/pagination__pulldown.png");
      background-repeat: no-repeat;
      background-position: center center;
      background-size: contain;
      background-position: 0 0;
      width: 150%; }
  .chara__icon {
    position: relative;
    left: 5px;
    width: 300px;
    padding-bottom: 5px;
    margin-left: 0;
    margin-right: 0;
    margin: auto; }
    .chara__icon .chara__icon__icon-container {
      position: relative;
      display: inline-block;
      width: 52px;
      height: 52px;
      margin: 2px; }
    .chara__icon .chara__icon__icon {
      cursor: pointer;
      width: 100%;
      height: 100%; }

@-webkit-keyframes waveOpacity {
  from {
    opacity: 0.4;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=40)"; }
  to {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; } }

@keyframes waveOpacity {
  from {
    opacity: 0.4;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=40)"; }
  to {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; } }
      .chara__icon .chara__icon__icon.secret {
        -webkit-animation-duration: 1.6s;
                animation-duration: 1.6s;
        -webkit-animation-name: waveOpacity;
                animation-name: waveOpacity;
        -webkit-animation-iteration-count: infinite;
                animation-iteration-count: infinite;
        -webkit-animation-timing-function: ease;
                animation-timing-function: ease;
        -webkit-animation-direction: alternate;
                animation-direction: alternate; }
  .chara .icon__1001 {
    display: inline-block;
    position: relative;
    width: 52px;
    height: 52px;
    background-image: url("../images/chara/icon/1001.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    margin: 2px; }
  .chara .icon__1005 {
    display: inline-block;
    position: relative;
    width: 52px;
    height: 52px;
    background-image: url("../images/chara/icon/1005.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    margin: 2px; }
  .chara__back_to_top {
    position: relative;
    width: 84px;
    height: 31px;
    background-image: url("../images/chara/back_to_top.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    margin-left: 0;
    margin-right: 0;
    margin: auto;
    position: static;
    margin-bottom: 10px;
    cursor: pointer; }
  .chara__modal {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 1; }
    .chara__modal.hidden {
      display: none; }
  .chara__modal__container {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow-y: auto; }
  .chara__modal__black {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 1; }
  .chara__modal__paper {
    position: relative;
    width: 301.5px;
    height: 442px;
    background-image: url("../images/chara/modal/paper.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    z-index: 1;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto; }
  .chara__modal__btn_close {
    position: relative;
    width: 38.5px;
    height: 39px;
    background-image: url("../images/chara/modal/btn_close.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    z-index: 1;
    position: absolute;
    right: -5px;
    top: -5px;
    cursor: pointer; }
  .chara__modal__balloon {
    position: relative;
    width: 299px;
    height: 135px;
    background-image: url("../images/chara/modal/balloon.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    z-index: 1;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    top: 20px;
    z-index: 2; }
    .chara__modal__balloon__text {
      font-size: 13px;
      position: absolute;
      left: 25px;
      top: 25px;
      width: 250px;
      line-height: 1.6;
      word-break: break-all; }
  .chara__modal__bg {
    position: relative;
    width: 315.5px;
    height: 244.5px;
    background-image: url("../images/chara/modal/bg.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    z-index: 1;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    top: 30px; }
  .chara__modal__character_image {
    position: relative;
    width: 280px;
    height: 280px;
    z-index: 1;
    position: absolute;
    left: -30px;
    right: 0;
    margin: auto;
    top: 64px; }
  .chara__modal__shadow {
    position: relative;
    width: 44px;
    height: 9px;
    background-image: url("../images/chara/modal/shadow.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    z-index: 1;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    top: 275px; }
  .chara__modal__decoration {
    position: relative;
    width: 279.5px;
    height: 105px;
    background-image: url("../images/chara/modal/decoration.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    z-index: 1;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    top: 300px; }
  .chara__modal__name-caption {
    position: relative;
    width: 259px;
    height: 87px;
    z-index: 1;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    top: 310px;
    text-align: center; }
    .chara__modal__name-caption .rb {
      line-height: 1.6;
      font-family: 'ヒラギノ角ゴ Pro W6', "Hiragino Kaku Gothic ProN", "游ゴシック Medium", "メイリオ", meiryo, sans-serif;
      font-weight: bold;
      color: #440000;
      font-size: 17px; }
    .chara__modal__name-caption .rt {
      margin-top: -3px;
      font-family: 'ヒラギノ角ゴ Pro W6', "Hiragino Kaku Gothic ProN", "游ゴシック Medium", "メイリオ", meiryo, sans-serif;
      font-weight: bold;
      color: #440000;
      font-size: 10px; }
    .chara__modal__caption {
      font-family: 'ヒラギノ角ゴ Pro W6', "Hiragino Kaku Gothic ProN", "游ゴシック Medium", "メイリオ", meiryo, sans-serif;
      font-weight: bold;
      text-align: left;
      color: #440000;
      position: absolute;
      font-size: 13px;
      left: 0px;
      top: 40px;
      width: 260px;
      line-height: 1.6; }
  .chara__modal__left {
    position: relative;
    width: 28px;
    height: 44px;
    background-image: url("../images/chara/modal/left.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    z-index: 1;
    position: absolute;
    top: 200px;
    left: -10px;
    cursor: pointer; }
  .chara__modal__right {
    position: relative;
    width: 28px;
    height: 44px;
    background-image: url("../images/chara/modal/right.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    z-index: 1;
    position: absolute;
    top: 200px;
    right: -10px;
    cursor: pointer; }

.quiz {
  position: relative;
  color: #5a1e06; }
  .quiz_wrapper {
    background: #cce97e url("../images/bg/top_mobile.jpg") no-repeat 50% 0;
    background-size: 100% auto; }
  .quiz__paper-repeat {
    position: relative;
    width: 320px;
    height: 284px;
    background-image: url("../images/quiz/paper-repeat.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    z-index: 0;
    margin-left: 0;
    margin-right: 0;
    margin: auto;
    position: relative;
    background-size: 100% auto;
    background-repeat: repeat-y;
    background-position: top;
    height: auto;
    top: 5px;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 0;
    margin-top: 60.5px;
    padding-top: 0;
    margin-bottom: 60px; }
  .quiz__paper-top {
    position: relative;
    width: 320px;
    height: 60.5px;
    background-image: url("../images/quiz/paper-top.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    z-index: 0;
    margin-left: 0;
    margin-right: 0;
    margin: auto;
    position: absolute;
    top: -60.5px; }
  .quiz__paper-bottom {
    position: relative;
    width: 320px;
    height: 45px;
    background-image: url("../images/quiz/paper-bottom.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    z-index: 0;
    margin-left: 0;
    margin-right: 0;
    margin: auto;
    position: absolute;
    bottom: -45px; }
  .quiz__logo_wrapper {
    position: relative;
    width: 286.5px;
    height: 151.5px;
    margin-left: 0;
    margin-right: 0;
    margin: auto;
    margin-bottom: -17.5px; }
  .quiz__logo {
    position: relative;
    width: 286.5px;
    height: 151.5px;
    background-image: url("../images/quiz/logo.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    z-index: 0;
    margin-left: 0;
    margin-right: 0;
    margin: auto;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    top: -12.5px; }
  .quiz__notice0 {
    position: relative;
    width: 231.5px;
    height: 40px;
    background-image: url("../images/quiz/notice0.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    z-index: 0;
    margin-left: 0;
    margin-right: 0;
    margin: auto;
    margin-bottom: 11.5px; }
  .quiz__notice1 {
    position: relative;
    width: 291px;
    height: 54.5px;
    background-image: url("../images/quiz/notice1.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    z-index: 0;
    margin-left: 0;
    margin-right: 0;
    margin: auto;
    margin-bottom: 5.5px; }
    .quiz__notice1__left {
      position: absolute;
      top: 20px;
      right: 205px;
      font-size: 15px;
      font-weight: bold; }
    .quiz__notice1__right {
      position: absolute;
      top: 10px;
      left: 105px;
      font-size: 13px;
      font-weight: bold;
      letter-spacing: 1px; }
  .quiz__notice2 {
    position: relative;
    width: 291px;
    height: 120.5px;
    background-image: url("../images/quiz/notice2.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    z-index: 0;
    margin-left: 0;
    margin-right: 0;
    margin: auto;
    margin-bottom: 10px; }
    .quiz__notice2__left {
      position: absolute;
      top: 10px;
      right: 203px;
      font-size: 12px;
      font-weight: bold; }
    .quiz__notice2__right {
      position: absolute;
      top: 18px;
      left: 105px;
      font-size: 11px;
      font-weight: bold;
      letter-spacing: 0.9px; }
    .quiz__notice2__detail {
      position: absolute;
      top: 47.5px;
      left: 25px;
      font-size: 11px;
      letter-spacing: -0.5px;
      line-height: 1.9; }
  .quiz__form {
    position: relative;
    width: 320px;
    height: 513px;
    margin-bottom: 10px; }
    .quiz__form_paper {
      position: relative;
      width: 314.5px;
      height: 513px;
      background-image: url("../images/quiz/form_paper.png");
      background-repeat: no-repeat;
      background-position: center center;
      background-size: contain;
      z-index: 0;
      margin-left: 0;
      margin-right: 0;
      margin: auto;
      margin-bottom: 10px; }
    .quiz__form__question, .quiz__modal__form__question {
      position: relative;
      margin-left: 0;
      margin-right: 0;
      margin: auto;
      margin-top: -500px;
      width: 282px;
      height: 123px;
      margin-bottom: 15px; }
      .quiz__form__question_caption {
        position: relative;
        width: 272.5px;
        height: 19.5px;
        background-image: url("../images/quiz/form__question_caption.png");
        background-repeat: no-repeat;
        background-position: center center;
        background-size: contain;
        z-index: 0;
        position: absolute;
        left: 0;
        right: 0;
        margin: auto;
        top: 0; }
      .quiz__form__question__textarea, .quiz__modal__form__question__textarea {
        position: relative;
        position: absolute;
        border-radius: 7.5px;
        border-width: 3px;
        font-size: 14px;
        padding: 7.5px 10px;
        line-height: 1.7;
        z-index: 1;
        width: 255px;
        height: 46px;
        box-shadow: 2.5px 2.5px 2.5px 0 rgba(200, 150, 100, 0.5) inset;
        left: 0;
        right: 0;
        margin: auto;
        overflow: hidden;
        resize: none;
        border-color: #f35611;
        color: #5a1e06;
        top: 25px;
        border-color: #448aca;
        height: 62.5px; }
        .quiz__form__question__textarea:focus, .quiz__modal__form__question__textarea:focus {
          outline: 0; }
      .quiz__form__question__length {
        position: absolute;
        font-size: 10px;
        right: 0;
        bottom: 0; }
    .quiz__form__answer, .quiz__modal__form__answer {
      position: relative;
      margin-left: 0;
      margin-right: 0;
      margin: auto;
      width: 282px;
      height: 106px;
      margin-bottom: 10px; }
      .quiz__form__answer_caption {
        position: relative;
        width: 272.5px;
        height: 21px;
        background-image: url("../images/quiz/form__answer_caption.png");
        background-repeat: no-repeat;
        background-position: center center;
        background-size: contain;
        z-index: 0;
        position: absolute;
        left: 0;
        right: 0;
        margin: auto;
        top: 0; }
      .quiz__form__answer__textarea, .quiz__modal__form__answer__textarea {
        position: relative;
        top: 25px;
        position: absolute;
        border-radius: 7.5px;
        border-width: 3px;
        font-size: 14px;
        padding: 7.5px 10px;
        line-height: 1.7;
        z-index: 1;
        width: 255px;
        height: 46px;
        box-shadow: 2.5px 2.5px 2.5px 0 rgba(200, 150, 100, 0.5) inset;
        left: 0;
        right: 0;
        margin: auto;
        overflow: hidden;
        resize: none;
        border-color: #f35611;
        color: #5a1e06; }
        .quiz__form__answer__textarea:focus, .quiz__modal__form__answer__textarea:focus {
          outline: 0; }
      .quiz__form__answer__length {
        position: absolute;
        font-size: 10px;
        right: 0;
        bottom: 0; }
    .quiz__form__name, .quiz__modal__form__name {
      position: relative;
      margin-left: 0;
      margin-right: 0;
      margin: auto;
      width: 282px;
      height: 70px;
      margin-bottom: 15px; }
      .quiz__form__name_caption {
        position: relative;
        width: 67px;
        height: 13px;
        background-image: url("../images/quiz/form__name_caption.png");
        background-repeat: no-repeat;
        background-position: center center;
        background-size: contain;
        z-index: 0;
        position: absolute;
        left: 0;
        right: 0;
        margin: auto;
        top: 0; }
      .quiz__form__name__textarea, .quiz__modal__form__name__textarea {
        position: relative;
        top: 15px;
        position: absolute;
        border-radius: 7.5px;
        border-width: 3px;
        font-size: 14px;
        padding: 7.5px 10px;
        line-height: 1.7;
        z-index: 1;
        width: 255px;
        height: 46px;
        box-shadow: 2.5px 2.5px 2.5px 0 rgba(200, 150, 100, 0.5) inset;
        left: 0;
        right: 0;
        margin: auto;
        overflow: hidden;
        resize: none;
        border-color: #f35611;
        color: #5a1e06;
        border-color: #B77f3a;
        padding-top: 5px;
        height: 20px; }
        .quiz__form__name__textarea:focus, .quiz__modal__form__name__textarea:focus {
          outline: 0; }
      .quiz__form__name__supplement {
        position: absolute;
        font-size: 10px;
        bottom: 0; }
      .quiz__form__name__supplement {
        position: absolute;
        font-size: 10px;
        bottom: 0; }
      .quiz__form__name__length {
        position: absolute;
        font-size: 10px;
        right: 0;
        bottom: 0; }
    .quiz__form .quiz__form__alert-empty, .quiz__form .quiz__form__alert-word, .quiz__form .quiz__form__alert-length, .quiz__form .quiz__form__alert-char, .quiz__form .quiz__form__msg-complete {
      position: relative;
      text-align: center;
      font-weight: bold;
      font-size: 14px;
      margin-bottom: 5px;
      color: #f35611; }
      .quiz__form .hidden.quiz__form__alert-empty, .quiz__form .hidden.quiz__form__alert-word, .quiz__form .hidden.quiz__form__alert-length, .quiz__form .hidden.quiz__form__alert-char, .quiz__form .hidden.quiz__form__msg-complete {
        display: none; }
    .quiz__form .quiz__form__alert-empty, .quiz__form .quiz__form__alert-word, .quiz__form .quiz__form__alert-length, .quiz__form .quiz__form__alert-char {
      margin-bottom: 5px; }
      .quiz__form .quiz__form__alert-empty:before, .quiz__form .quiz__form__alert-word:before, .quiz__form .quiz__form__alert-length:before, .quiz__form .quiz__form__alert-char:before {
        content: "";
        display: inline-block;
        width: 15px;
        height: 13px;
        background-image: url("../images/quiz/alert.png");
        background-repeat: no-repeat;
        background-position: center center;
        background-size: contain; }
  .quiz__form_confirm_btn, .quiz__modal__form__submit_btn {
    position: relative;
    width: 281.5px;
    height: 69px;
    background-image: url("../images/quiz/form_confirm_btn.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    z-index: 0;
    margin-left: 0;
    margin-right: 0;
    margin: auto;
    border-radius: 0;
    -webkit-appearance: button;
    -moz-appearance: button;
         appearance: button;
    border: none;
    box-sizing: border-box;
    background-color: transparent;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    margin-bottom: 10px; }
    .quiz__form_confirm_btn:focus, .quiz__modal__form__submit_btn:focus {
      outline: 0; }
  .quiz__notes {
    width: 260px;
    background-color: #dfbb81;
    color: #5a1e06;
    line-height: 1.8;
    font-size: 12px;
    padding: 15px 10px;
    margin-left: 0;
    margin-right: 0;
    margin: auto; }
    .quiz__notes .big {
      margin-top: 25px;
      font-size: 14px;
      font-weight: bold; }
    .quiz__notes .mid {
      font-size: 12px;
      font-weight: bold; }
  .quiz__modal {
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    top: 0; }
    .quiz__modal.hidden {
      display: none; }
    .quiz__modal__black {
      position: fixed;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      background-color: rgba(0, 0, 0, 0.5);
      z-index: 1; }
    .quiz__modal__paper {
      position: relative;
      width: 303px;
      height: 548.5px;
      background-image: url("../images/quiz/modal__paper.png");
      background-repeat: no-repeat;
      background-position: center center;
      background-size: contain;
      z-index: 0;
      position: absolute;
      top: 10px;
      left: 0;
      right: 0;
      margin: auto;
      z-index: 1; }
    .quiz__modal__btn_close {
      position: relative;
      width: 38.5px;
      height: 39px;
      background-image: url("../images/quiz/modal__btn_close.png");
      background-repeat: no-repeat;
      background-position: center center;
      background-size: contain;
      z-index: 0;
      position: absolute;
      right: -5px;
      top: -5px;
      z-index: 1; }
    .quiz__modal__title {
      position: relative;
      width: 268.5px;
      height: 38px;
      background-image: url("../images/quiz/modal__title.png");
      background-repeat: no-repeat;
      background-position: center center;
      background-size: contain;
      z-index: 0;
      margin-left: 0;
      margin-right: 0;
      margin: auto;
      top: 20px;
      z-index: 1; }
    .quiz__modal__title {
      position: relative;
      width: 268.5px;
      height: 38px;
      background-image: url("../images/quiz/modal__title.png");
      background-repeat: no-repeat;
      background-position: center center;
      background-size: contain;
      z-index: 0;
      margin-left: 0;
      margin-right: 0;
      margin: auto;
      top: 20px;
      z-index: 1; }
    .quiz__modal__form {
      left: 0;
      right: 0;
      margin: auto; }
      .quiz__modal__form__question {
        margin-top: 15px;
        margin-bottom: 7.5px; }
        .quiz__modal__form__question__textarea {
          box-shadow: none;
          background-color: transparent;
          margin-top: 10px; }
          .quiz__modal__form__question__textarea:disabled {
            opacity: 1;
            -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
      .quiz__modal__form__answer {
        margin-bottom: 5px; }
        .quiz__modal__form__answer__textarea {
          box-shadow: none;
          background-color: transparent;
          margin-top: 0px;
          margin-bottom: 0px; }
          .quiz__modal__form__answer__textarea:disabled {
            opacity: 1;
            -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
      .quiz__modal__form__name {
        margin-bottom: 10px; }
        .quiz__modal__form__name__textarea {
          box-shadow: none;
          background-color: transparent; }
          .quiz__modal__form__name__textarea:disabled {
            opacity: 1;
            -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
      .quiz__modal__form__submit_btn {
        width: 281.5px;
        height: 69px;
        background-image: url("../images/quiz/form_submit_btn.png");
        background-repeat: no-repeat;
        background-position: center center;
        background-size: contain; }
      .quiz__modal__btn_back {
        position: relative;
        width: 280.5px;
        height: 49px;
        background-image: url("../images/quiz/modal__btn_back.png");
        background-repeat: no-repeat;
        background-position: center center;
        background-size: contain;
        z-index: 0;
        border-radius: 0;
        -webkit-appearance: button;
        -moz-appearance: button;
             appearance: button;
        border: none;
        box-sizing: border-box;
        background-color: transparent;
        position: absolute;
        left: 0;
        right: 0;
        margin: auto;
        bottom: 50px; }
        .quiz__modal__btn_back:focus {
          outline: 0; }

.roll__inner {
  box-sizing: border-box;
  position: relative;
  margin: 20px auto;
  padding: 261px 0 29px;
  width: 320px;
  background-image: url("../images/message/roll_bg_middle.png");
  background-repeat: repeat-y;
  background-position: center top;
  background-size: 100% auto; }
  .roll__inner:before, .roll__inner:after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    z-index: 3; }
  .roll__inner:before {
    top: -19px;
    width: 318px;
    height: 33px;
    background-image: url("../images/message/roll_bg_top.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain; }
  .roll__inner:after {
    bottom: -19px;
    width: 318px;
    height: 33px;
    background-image: url("../images/message/roll_bg_bottom.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain; }

.roll__title {
  position: absolute;
  top: 0;
  left: -30px;
  margin: 0 auto;
  width: 370px;
  height: 297px;
  background-image: url("../images/message/main.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  z-index: 1; }

.roll__lead {
  margin: 15px auto 0;
  width: 264.5px;
  height: 56px;
  background-image: url("../images/message/txt_lead.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain; }

.roll__btn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 17px auto 0;
  width: 281px;
  height: 69px;
  background-image: url("../images/message/bg_btn_vote.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  cursor: pointer; }

.roll__btn__text {
  display: block;
  width: 98px;
  height: 24.5px;
  background-image: url("../images/message/txt_btn_vote.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain; }

.letter__pagination {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 3px auto 0;
  width: 280px; }
  .letter__pagination button {
    width: 59px;
    height: 31px;
    background-repeat: no-repeat, no-repeat;
    background-position: center 0, center -31px;
    background-size: auto 100%; }
  .letter__pagination button[data-oldest] {
    background-image: url("../images/message/btn_arrow_old_on.png"), url("../images/message/btn_arrow_old_off.png"); }
  .letter__pagination button[data-newest] {
    background-image: url("../images/message/btn_arrow_new_on.png"), url("../images/message/btn_arrow_new_off.png"); }
  .letter__pagination.is-oldest button[data-oldest] {
    cursor: default;
    background-position: center -31px, center 0; }
  .letter__pagination.is-newest button[data-newest] {
    background-position: center -31px, center 0;
    cursor: default; }

.letter__pagination__number {
  position: relative;
  overflow: hidden;
  width: 150px;
  height: 23px; }
  .letter__pagination__number ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    height: 100%;
    position: relative; }
  .letter__pagination__number li {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    position: relative;
    z-index: 2;
    width: 30px;
    font-size: 13px;
    line-height: 20px;
    cursor: pointer;
    color: #4f2116; }
    .letter__pagination__number li.is-current {
      cursor: default; }
  .letter__pagination__number:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    z-index: 0;
    background-color: #e3a962;
    border-radius: 50%;
    width: 23px;
    height: 23px; }

#message .chara__back_to_top {
  margin-top: 30px; }

.intro__sub-section__heading[data-type="close"] {
  font-size: 98%;
  letter-spacing: -.03em; }

.intro__sub-section__heading[data-type="close2"] {
  font-size: 96%;
  letter-spacing: -.03em; }
