@charset "UTF-8";
/* reset */
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;
}

/*# sourceMappingURL=reset.css.map */
/* --- _base.scss --- */
* {
  box-sizing: border-box;
}

html {
  font-size: 62.5%;
}

body {
  font: 16px/1.618 'Noto Sans JP',"Hiragino Kaku Gothic ProN", "Hiragino Sans","メイリオ", Meiryo,"ＭＳ Ｐゴシック",Verdana, sans-serif;
  color: #fff;
  height: 100%;
  line-height: 1.2;
  -webkit-font-feature-settings: "pkna";
          font-feature-settings: "pkna";
  background-color: #fdfff7;
}

@media (min-width: 960px) {
  body {
    min-width: 1200px;
  }
}

@media (max-width: 959px) {
  body {
    font-size: 3.19vw;
  }
}

::-moz-selection {
  background: #44af3d;
  color: #fff;
}

::selection {
  background: #44af3d;
  color: #fff;
}

input, select, textarea, button, th, td {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

ul, li, p, ol, section, table, dl, img, picture, h1, h2, h3, h4, h5, h6 {
  margin: 0;
  padding: 0;
}

ul {
  list-style: inside none;
}

li {
  list-style-position: inside;
}

/* CSS Document */
/* ========================= [ #dmm_ntgnavi ] */
#dmm_ntgnavi {
  background: url(../../images/dmm_olgnavi/bg_navimain.gif) center center repeat-x;
  border-bottom: 1px solid #ccc;
  border-top: 1px solid #ccc;
  font-size: 12px;
  font-family: "メイリオ", "Meiryo", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Verdana, sans-serif !important;
  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;
  letter-spacing: 0;
}

#dmm_ntgnavi ul {
  list-style: none;
  margin: 2px 0;
  padding: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

#dmm_ntgnavi ul li {
  margin: 0 6px 0 0;
  line-height: 15px;
}

#dmm_ntgnavi ul.navi_left {
  -webkit-box-flex: 2;
  -webkit-flex-grow: 2;
      -ms-flex-positive: 2;
          flex-grow: 2;
}

#dmm_ntgnavi ul.navi_left li a {
  display: block;
  padding: 0 3px 0 8px;
  text-decoration: none;
  border: 1px solid #eee;
  border-radius: 3px;
}

#dmm_ntgnavi ul.navi_left li a:hover {
  background: #eee;
  border: 1px solid #666;
  border-radius: 3px;
}

#dmm_ntgnavi ul.navi_left li a > span {
  display: block;
  padding: 9px 10px 7px 28px;
  color: #333;
  font-weight: bold;
  white-space: nowrap;
  font-family: "メイリオ", "Meiryo", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Verdana, sans-serif !important;
}

#dmm_ntgnavi ul.navi_left li a > span > span {
  font-family: "メイリオ", "Meiryo", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Verdana, sans-serif !important;
}

#dmm_ntgnavi ul.navi_left li.dmm_top img {
  margin: 8px 5px 8px 0;
}

#dmm_ntgnavi ul.navi_left li.ntg_top {
  margin-left: 10px;
}

#dmm_ntgnavi ul.navi_left li.ntg_top a > span {
  background: url(../../images/dmm_olgnavi/bg_bt_olgtop.gif) 0 center no-repeat;
}

#dmm_ntgnavi ul.navi_left li.ntg_chip a > span {
  background: url(../../images/dmm_olgnavi/bg_bt_chip.gif) 0 center no-repeat;
}

#dmm_ntgnavi ul.navi_left li.ntg_poi a > span {
  background: url(../../images/dmm_olgnavi/bg_bt_point.gif) 0 center no-repeat;
}

#dmm_ntgnavi ul.navi_right {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  font-size: 10px;
}

#dmm_ntgnavi ul.navi_right li {
  margin: 0 10px 0 0;
  padding: 8px 5px;
}

#dmm_ntgnavi ul.navi_right li.ntg_chip, #dmm_ntgnavi ul.navi_right li.ntg_poi {
  display: none;
}

#dmm_ntgnavi .arrow {
  padding-left: 14px;
  background: url(../../images/dmm_olgnavi/arrow_common.gif) no-repeat left center;
  color: initial;
  text-decoration: underline;
  font-family: "メイリオ", "Meiryo", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Verdana, sans-serif !important;
}

#dmm_ntgnavi .tx-point {
  font-size: 16px;
  font-weight: bold;
  color: #ff4b4b !important;
}

#dmm_ntgnavi p {
  margin: 0;
  line-height: 2.6em;
}

#dmm_ntgnavi .clear {
  clear: both;
}

@media (max-width: 960px) {
  #dmm_ntgnavi ul {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  #dmm_ntgnavi ul.navi_left {
    -webkit-box-flex: 2;
    -webkit-flex-grow: 2;
        -ms-flex-positive: 2;
            flex-grow: 2;
  }
  #dmm_ntgnavi ul.navi_left li.ntg_top a > span > span {
    display: none;
  }
  #dmm_ntgnavi ul.navi_left li.ntg_chip, #dmm_ntgnavi ul.navi_left li.ntg_poi {
    display: none;
  }
  #dmm_ntgnavi ul.navi_right li {
    display: none;
  }
  #dmm_ntgnavi ul.navi_right li.ntg_chip, #dmm_ntgnavi ul.navi_right li.ntg_poi {
    display: list-item;
  }
}

#dmm-olgnavi {
  position: relative;
  z-index: 9999;
}

/* --- component _keyframes.scss --- */
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

/* --- utility _display.scss --- */
@media (min-width: 960px) {
  .u-visible-sp {
    display: none !important;
  }
}

@media (max-width: 959px) {
  .u-visible-pc {
    display: none !important;
  }
}

/* --- component _pagination.scss --- */
.c-pagination {
  text-align: center;
}

.c-pagination ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.c-pagination li {
  position: relative;
  vertical-align: middle;
}

.c-pagination a {
  font-weight: bold;
  text-decoration: none;
}

.c-pagination .next {
  -webkit-transform: scaleX(-1);
      -ms-transform: scaleX(-1);
          transform: scaleX(-1);
  z-index: 1;
}

.c-pagination .next a {
  display: block;
  color: #fff;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.c-pagination .next {
  margin-left: 2%;
}

.c-pagination .prev {
  margin-right: 2%;
}

.c-pagination .next,
.c-pagination .prev {
  position: relative;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.c-pagination .next a,
.c-pagination .prev a {
  display: block;
}

.c-pagination .number {
  position: relative;
  font-weight: bold;
  margin: 0 1%;
  outline: 2px solid #2481c1;
  z-index: 1;
}

.c-pagination .number a {
  width: 100%;
  height: 100%;
  display: block;
  color: #fff;
  background: #2481c1;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.c-pagination .number a:hover {
  background: #fff;
  color: #2481c1;
}

.c-pagination .on {
  color: #2481c1;
  background: #fff;
  z-index: 1;
}

.c-pagination .on a,
.c-pagination .on span {
  cursor: default;
}

@media screen and (max-width: 751px) {
  .c-pagination {
    padding: 8vw 0 12vw;
  }
  .c-pagination ul {
    position: relative;
  }
  .c-pagination span {
    line-height: 6vw;
  }
  .c-pagination .on {
    width: 6vw;
    height: 6vw;
  }
  .c-pagination .number {
    font-size: 3vw;
    margin: 0 2vw;
    width: 6vw;
    height: 6vw;
    line-height: 6vw;
  }
  .c-pagination .prev,
  .c-pagination .next {
    position: relative;
  }
  .c-pagination .prev img,
  .c-pagination .next img {
    width: 3vw;
  }
}

@media (min-width: 752px) {
  .c-pagination {
    padding: 60px 0 90px;
  }
  .c-pagination li {
    font-size: 14px;
  }
  .c-pagination a,
  .c-pagination span {
    min-width: 25px;
    height: 25px;
    line-height: 25px;
  }
  .c-pagination .on {
    width: 25px;
    height: 25px;
  }
  .c-pagination .next,
  .c-pagination .prev {
    position: relative;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
  .c-pagination .next a,
  .c-pagination .prev a {
    display: block;
  }
  .c-pagination .next {
    right: 0;
  }
  .c-pagination .next:hover {
    right: -20px;
  }
  .c-pagination .prev {
    left: 0;
  }
  .c-pagination .prev:hover {
    left: -20px;
  }
}

/*------------------------------------------------------------
	BASE
------------------------------------------------------------*/
/*------------------------------------------------------------
	COLOR
------------------------------------------------------------*/
/*------------------------------------------------------------
	FUNCTION
------------------------------------------------------------*/
/*------------------------------------------------------------
	MIXIN
------------------------------------------------------------*/
/*------------------------------------------------------------
	WRAP
------------------------------------------------------------*/
/*------------------------------------------------------------
	GNAVI
------------------------------------------------------------*/
#home #gnavi {
  position: absolute;
  z-index: 2300;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
}

@media screen and (max-width: 1200px) {
  #gnavi {
    left: 0;
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
  }
}

/*------------------------------------------------------------
      MAIN
  ------------------------------------------------------------*/
#main #kv {
  position: relative;
  padding: 0 0 8.59375vw;
  width: 100%;
  min-width: 1200px;
  background: url("../../images/home/kv_bg.png") center center no-repeat;
  background-size: cover;
}

@media screen and (max-width: 751px) {
  #main #kv {
    z-index: 20;
    padding: 0;
    min-width: 100%;
    background: url("../../images/home/sp_kv_bg.png") center center no-repeat;
    background-size: cover;
  }
}

#main #kv h1 {
  position: relative;
  z-index: 2100;
  /*padding: 25.88542vw 0 0;*/
  padding: 8.88542vw 0 1vw;
  min-width: 1200px;
  text-align: center;
}

@media screen and (max-width: 1200px) {
  #main #kv h1 {
    /*padding: 310px 0 0;*/
    padding: 10.88542vw 0 1vw;
  }
}

@media screen and (max-width: 751px) {
  #main #kv h1 {
    /*padding: 103.86667vw 0 0;*/
    padding: 53.86667vw 0 0;
    min-width: 100%;
  }
}

#main #kv h1 img {
  width: 50vw;
  height: auto;
}

@media screen and (max-width: 1200px) {
  #main #kv h1 img {
    min-width: 600px;
  }
}

@media screen and (max-width: 751px) {
  #main #kv h1 img {
    width: auto;
    min-width: 100%;
  }
}

#main #kv p {
  position: relative;
  z-index: 2100;
}

#main #kv .txt1 {
  position: relative;
  top: -2.08333vw;
  margin-bottom: 13.08333vw;
  /*margin-bottom: -2.08333vw;*/
  text-align: center;
}

@media screen and (max-width: 1200px) {
  #main #kv .txt1 {
    top: -25px;
    /*margin-bottom: -25px;*/
    margin-bottom: 8.08333vw;
  }
}

@media screen and (max-width: 751px) {
  #main #kv .txt1 {
    position: absolute;
    /*top: 93.33333vw;*/
    top: 11.33333vw;
    padding: 0;
  }
}

#main #kv .txt1 img {
  width: 26.82292vw;
  height: auto;
}

@media screen and (max-width: 1200px) {
  #main #kv .txt1 img {
    min-width: 321px;
  }
}

@media screen and (max-width: 751px) {
  #main #kv .txt1 img {
    width: auto;
    min-width: 100%;
  }
}

#main #kv .txt2 {
  padding: 1.82292vw 0 0;
  text-align: center;
}

@media screen and (max-width: 1200px) {
  #main #kv .txt2 {
    /*padding: 22px 0 0;*/
    padding: 40px 0 0;
  }
}

@media screen and (max-width: 751px) {
  #main #kv .txt2 {
    padding: 2.26667vw 0 0;
  }
}

#main #kv .txt2 img {
  width: 55.05208vw;
  height: auto;
}

@media screen and (max-width: 1200px) {
  #main #kv .txt2 img {
    min-width: 660px;
  }
}

@media screen and (max-width: 751px) {
  #main #kv .txt2 img {
    width: auto;
    /*min-width: 100%;*/
    min-width: 60%;
  }
}

#main #kv_img {
  position: absolute;
  z-index: 2020;
  top: 2.86458vw;
  left: 0;
  width: 100%;
  height: auto;
  text-align: center;
}

@media screen and (max-width: 1300px) {
  #main #kv_img {
    top: 0;
    top: 4.86458vw;
  }
}

@media screen and (max-width: 751px) {
  #main #kv_img {
    top: 0;
  }
}

#main #kv_img img {
  max-width: 100%;
}

#main #kv_img span {
  position: absolute;
  top: 2.86458vw;
  left: 50%;
  width: 100%;
  height: 100%;
  /*opacity: 0;*/
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  -webkit-transition: all 1s cubic-bezier(0.21, 0.51, 0.51, 1);
  transition: all 1s cubic-bezier(0.21, 0.51, 0.51, 1);
}

@media screen and (max-width: 751px) {
  #main #kv_img span {
    top: 0;
  }
}

#main #kv_img span.show {
  opacity: 1;
  z-index: 5;
}

/*@-webkit-keyframes kvImgFade {
    0% {
      opacity: 0; }
    5% {
      opacity: 1; }
    30% {
      opacity: 1; }
    35% {
      opacity: 0; }
    100% {
      opacity: 0; } }
  @-moz-keyframes kvImgFade {
    0% {
      opacity: 0; }
    5% {
      opacity: 1; }
    30% {
      opacity: 1; }
    35% {
      opacity: 0; }
    100% {
      opacity: 0; } }
  @-ms-keyframes kvImgFade {
    0% {
      opacity: 0; }
    5% {
      opacity: 1; }
    30% {
      opacity: 1; }
    35% {
      opacity: 0; }
    100% {
      opacity: 0; } }
  @keyframes kvImgFade {
    0% {
      opacity: 0; }
    5% {
      opacity: 1; }
    30% {
      opacity: 1; }
    35% {
      opacity: 0; }
    100% {
      opacity: 0; } }*/
/*#main #kv_img1 {
        background: url("../../images/home/kv_img1_new.jpg") center center no-repeat;
        background-size: contain; }
        @media screen and (max-width: 751px) {
          #main #kv_img1 {
            background: url("../../images/home/sp_kv_img1.png") center top no-repeat;
            background-size: contain; } }*/
/*#main #kv_img2 {
        background: url("../../images/home/kv_img2.png") center center no-repeat;
        background-size: contain; }
        @media screen and (max-width: 751px) {
          #main #kv_img2 {
            background: url("../../images/home/sp_kv_img2.png") center top no-repeat;
            background-size: contain; } }
      #main #kv_img3 {
        background: url("../../images/home/kv_img3.png") center center no-repeat;
        background-size: contain; }
        @media screen and (max-width: 751px) {
          #main #kv_img3 {
            background: url("../../images/home/sp_kv_img3.png") center top no-repeat;
            background-size: contain; } }*/
#main #kv_bnr {
  position: relative;
  z-index: 2100;
  margin: 2.125vw 0 0;
}

#main #kv_bnr .bnr {
  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;
  background-color: rgba(255, 255, 255, 0.8);
  background-size: cover;
}

@media screen and (max-width: 751px) {
  #main #kv_bnr .bnr {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
}

#main #kv_bnr .end-tx {
  position: absolute;
  font-size: 24px;
  font-weight: bold;
  top: 50%;
  left: 50%;
  letter-spacing: 0.1em;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

@media screen and (max-width: 751px) {
  #main #kv_bnr .end-tx {
    font-size: 4.54vw;
    white-space: nowrap;
  }
}

#main #kv_bnr .bnr li {
  padding: 30px 25px;
  opacity: 0.2;
}

@media screen and (max-width: 751px) {
  #main #kv_bnr .bnr li {
    padding: 4vw 10px 0;
  }
}

#main #kv_bnr .bnr li a {
  display: block;
  text-align: center;
  -webkit-transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
  transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
}

@media screen and (max-width: 751px) {
  #main #kv_bnr .bnr li a {
    margin: 0 auto;
  }
}

.pc #main #kv_bnr .bnr li a:hover {
  opacity: 0.7;
}

/*#main #kv_bnr .pagenation {
        position: relative;
        z-index: 2;
        display: flex;
        justify-content: center;
        padding: 3.125vw 0 0; }
        @media screen and (max-width: 751px) {
          #main #kv_bnr .pagenation {
            display: none; } }
        #main #kv_bnr .pagenation li {
          padding: 0 15px; }
          #main #kv_bnr .pagenation li a {
            display: block;
            width: 20px;
            height: 20px;
            border: 3px solid #2481c1;
            border-radius: 20px;
            background: #fff;
            transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1); }
            #main #kv_bnr .pagenation li a.current {
              background: #44af3d; }
            .pc #main #kv_bnr .pagenation li a:hover {
              opacity: 0.7; }*/
#main #regist {
  position: relative;
  top: -150px;
  margin-bottom: -150px;
  padding: 230px 0 900px;
  min-width: 1200px;
  background: url("../../images/home/regist_bg.png") center 0 repeat-x;
  background-size: auto 100%;
  overflow: hidden;
}

@media screen and (max-width: 751px) {
  #main #regist {
    top: -2.66667vw;
    margin-bottom: -2.66667vw;
    padding: 12vw 0 108.4vw;
    min-width: 100%;
    background: url("../../images/home/sp_regist_bg.png") center 0 no-repeat;
    background-size: cover;
  }
}

#main #regist .inner {
  position: relative;
  margin: 0 auto;
  width: 1200px;
}

@media screen and (max-width: 751px) {
  #main #regist .inner {
    width: 100%;
  }
}

#main #regist .inner:before {
  content: "";
  position: absolute;
  z-index: 2050;
  display: block;
  left: 50%;
  top: 50%;
  width: 111.11111vw;
  min-width: 1200px;
  height: 683px;
  background: url("../../images/home/regist_img.png") center center no-repeat;
  background-size: contain;
  -webkit-transform: translate(-50%, -15%);
      -ms-transform: translate(-50%, -15%);
          transform: translate(-50%, -15%);
}

@media screen and (max-width: 751px) {
  #main #regist .inner:before {
    top: 32.66667vw;
    width: 94.26667vw;
    height: 43.06667vw;
    background: url("../../images/home/sp_regist_img.png") center center no-repeat;
    background-size: contain;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

#main #regist .inner h2 {
  text-align: center;
}

#main #regist .inner h2 img {
  width: 62.5vw;
  max-width: 1200px;
  min-width: 750px;
}

@media screen and (max-width: 751px) {
  #main #regist .inner h2 img {
    width: auto;
    max-width: 100%;
    min-width: auto;
  }
}

#main #regist .inner p {
  text-align: center;
}

#main #regist .inner p img {
  width: 40.20833vw;
  max-width: 772px;
  min-width: 482px;
}

@media screen and (max-width: 751px) {
  #main #regist .inner p img {
    width: auto;
    max-width: 100%;
    min-width: auto;
  }
}

#main #regist .inner ol {
  position: relative;
  z-index: 2300;
}

@media screen and (max-width: 1700px) {
  #main #regist .inner ol {
    -webkit-transform: scale3d(0.8, 0.8, 1);
            transform: scale3d(0.8, 0.8, 1);
  }
}

@media screen and (max-width: 1600px) {
  #main #regist .inner ol {
    -webkit-transform: scale3d(0.7, 0.7, 1);
            transform: scale3d(0.7, 0.7, 1);
  }
}

@media screen and (max-width: 751px) {
  #main #regist .inner ol {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
  }
}

#main #regist .inner ol:before {
  content: "";
  display: block;
  position: absolute;
  z-index: 2200;
  top: 50px;
  left: 50%;
  width: 1920px;
  height: 773px;
  background: url("../../images/home/regist_item_bg.png") center 0 no-repeat;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
}

@media screen and (max-width: 751px) {
  #main #regist .inner ol:before {
    content: "";
    display: block;
    position: absolute;
    top: 8vw;
    left: 0;
    width: 100vw;
    height: 29.46667vw;
    background: url("../../images/home/sp_regist_item_bg.png") center 0 no-repeat;
    background-size: contain;
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
  }
}

#main #regist .inner ol li {
  position: absolute;
  z-index: 2300;
}

#main #regist .inner ol li:nth-child(1) {
  top: 4px;
  left: -9px;
}

#main #regist .inner ol li:nth-child(2) {
  top: 20px;
  left: 178px;
}

#main #regist .inner ol li:nth-child(3) {
  top: 39px;
  left: 371px;
}

#main #regist .inner ol li:nth-child(4) {
  top: 35px;
  left: 591px;
}

#main #regist .inner ol li:nth-child(5) {
  top: 54px;
  left: 895px;
}

#main #regist .inner ol li:nth-child(6) {
  /*top: 331px*/
  /*left: 659px*/
  top: 348px;
  left: 610px;
}

#main #regist .inner ol li:nth-child(7) {
  /*top: 327px;
            left: 359px;*/
  top: 357px;
  left: 219px;
}

#main #regist .inner ol li:nth-child(8) {
  top: 328px;
  left: 0;
}

@media screen and (max-width: 751px) {
  #main #regist .inner ol li:nth-child(1) {
    top: 2.26667vw;
    left: 0.4vw;
  }
  #main #regist .inner ol li:nth-child(2) {
    top: 4.26667vw;
    left: 15.73333vw;
  }
  #main #regist .inner ol li:nth-child(3) {
    top: 6.53333vw;
    left: 31.46667vw;
  }
  #main #regist .inner ol li:nth-child(4) {
    top: 8.13333vw;
    left: 49.46667vw;
  }
  #main #regist .inner ol li:nth-child(5) {
    top: 10.93333vw;
    left: 73.2vw;
  }
  #main #regist .inner ol li:nth-child(6) {
    /*top: 40.26667vw;
              left: 66.8vw;*/
    top: 40.26667vw;
    left: 56.8vw;
  }
  #main #regist .inner ol li:nth-child(7) {
    /*top: 42.53333vw;
              left: 38.66667vw;*/
    top: 43.53333vw;
    left: 17.66667vw;
  }
  #main #regist .inner ol li:nth-child(8) {
    top: 44.66667vw;
    left: 3.06667vw;
  }
}

#main #regist .inner ol li.get:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  width: 94px;
  height: 59px;
  background: url("../../images/home/regist_get.png") 0 0 no-repeat;
  background-size: contain;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}

@media screen and (max-width: 751px) {
  #main #regist .inner ol li.get:after {
    width: 8.66667vw;
    height: 5.46667vw;
    background: url("../../images/home/sp_regist_get.png") 0 0 no-repeat;
    background-size: contain;
  }
}

#main #regist.full {
  padding: 230px 0 850px;
}

@media screen and (max-width: 751px) {
  #main #regist.full {
    padding: 12vw 0 108.4vw;
  }
}

#main #regist.full .inner:before {
  width: 111.11111vw;
  min-width: 1350px;
  height: 732px;
  background: url("https://project-frb.jp/images/home/regist_img_full.png") center center no-repeat;
  background-size: contain;
  -webkit-transform: translate(-50%, -10%);
      -ms-transform: translate(-50%, -10%);
          transform: translate(-50%, -10%);
}

@media screen and (max-width: 751px) {
  #main #regist.full .inner:before {
    top: 52vw;
    width: 100vw;
    height: 70.53333vw;
    background: url("https://project-frb.jp/images/home/sp_regist_img_full.png") center center no-repeat;
    background-size: contain;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

#main #regist.full .inner ol {
  position: relative;
  z-index: 2300;
}

@media screen and (max-width: 1700px) {
  #main #regist.full .inner ol {
    -webkit-transform: scale3d(0.8, 0.8, 1);
            transform: scale3d(0.8, 0.8, 1);
  }
}

@media screen and (max-width: 1600px) {
  #main #regist.full .inner ol {
    -webkit-transform: scale3d(0.7, 0.7, 1);
            transform: scale3d(0.7, 0.7, 1);
  }
}

@media screen and (max-width: 751px) {
  #main #regist.full .inner ol {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
  }
}

#main #regist.full .inner ol:before {
  width: 1920px;
  height: 773px;
  background: url("https://project-frb.jp/images/home/regist_item_full_bg.png") center 0 no-repeat;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
}

@media screen and (max-width: 751px) {
  #main #regist.full .inner ol:before {
    width: 100vw;
    height: 68.53333vw;
    background: url("https://project-frb.jp/images/home/sp_regist_item_full_bg.png") center 0 no-repeat;
    background-size: contain;
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
  }
}

#main #tw_news {
  position: relative;
  z-index: 10;
  /*top: -380px;*/
  top: -100px;
  margin-bottom: -380px;
  padding: 150px 0 35px;
  min-width: 1200px;
  background: url("../../images/home/tw_news_bg.png") center 0 repeat-x;
  background-size: auto 100%;
}

@media screen and (max-width: 751px) {
  #main #tw_news {
    /*top: -20vw;*/
    top: 10vw;
    margin-bottom: -20vw;
    padding: 16vw 0 4vw;
    min-width: 100%;
    background: url("../../images/home/sp_tw_news_bg.png") center 0 no-repeat;
    background-size: cover;
  }
}

#main #tw_news .inner {
  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;
  margin: 0 auto;
  width: 1200px;
}

@media screen and (max-width: 751px) {
  #main #tw_news .inner {
    display: block;
    width: 100%;
  }
}

#main #tw_news .inner .block {
  width: 538px;
}

@media screen and (max-width: 751px) {
  #main #tw_news .inner .block {
    margin: 0 auto;
    width: 97.06667vw;
  }
}

#main #tw_news .inner .block h2 {
  position: relative;
  z-index: 2;
  text-align: center;
}

#main #tw_news .inner .block .contents {
  position: relative;
  top: -90px;
  margin-bottom: -90px;
  padding: 90px 50px 45px;
  height: 494px;
  background: url("../../images/home/tw_bg.png") center 0 no-repeat;
  background-size: cover;
}

@media screen and (max-width: 751px) {
  #main #tw_news .inner .block .contents {
    top: -18.26667vw;
    margin-bottom: -18.26667vw;
    padding: 19.6vw 8.26667vw 8.53333vw;
    height: 98.93333vw;
    background: url("../../images/home/sp_news_bg.png") center 0 no-repeat;
    background-size: cover;
  }
}

#main #tw_news .inner .block .contents .more {
  display: block;
  margin: 0 auto;
  padding: 18px 0;
  width: 230px;
  height: 54px;
  border: 2px solid #2481c1;
  background: #2481c1;
  font-size: 18px;
  line-height: 1;
  text-align: center;
  color: #fff;
  -webkit-transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
  transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
}

@media screen and (max-width: 751px) {
  #main #tw_news .inner .block .contents .more {
    padding: 4vw;
    width: 50vw;
    height: 11.73333vw;
    font-size: 4vw;
    line-height: 1;
  }
}

.pc #main #tw_news .inner .block .contents .more:hover {
  background: #fff;
  color: #2481c1;
}

.pc #main #tw_news .inner .block .contents .more:hover span:before {
  border: 2px solid #2481c1;
  border-top: none;
  border-left: none;
}

#main #tw_news .inner .block .contents .more span {
  position: relative;
  display: inline-block;
  padding: 0 0 0 20px;
}

@media screen and (max-width: 751px) {
  #main #tw_news .inner .block .contents .more span {
    padding: 0 0 0 4vw;
  }
}

#main #tw_news .inner .block .contents .more span:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  display: inline-block;
  width: 8px;
  height: 8px;
  border: 2px solid #fff;
  border-top: none;
  border-left: none;
  -webkit-transform: translateY(-50%) rotate(-45deg);
      -ms-transform: translateY(-50%) rotate(-45deg);
          transform: translateY(-50%) rotate(-45deg);
  -webkit-transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
  transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
}

@media screen and (max-width: 751px) {
  #main #tw_news .inner .block .contents .more span:before {
    width: 1.6vw;
    height: 1.6vw;
    border: 0.26667vw solid #fff;
    border-top: none;
    border-left: none;
  }
}

#main #tw_news .inner .block#tw iframe {
  margin: 0 auto;
  display: block;
}

@media screen and (max-width: 751px) {
  #main #tw_news .inner .block#tw iframe {
    width: 100%;
  }
}

#main #tw_news .inner .block#tw #tw_widget {
  margin-bottom: 20px;
  border: 1px solid #e6ecef;
}

@media screen and (max-width: 751px) {
  #main #tw_news .inner .block#tw #tw_widget {
    margin-bottom: 5.33333vw;
  }
}

@media screen and (max-width: 751px) {
  #main #tw_news .inner .block#tw .pc_hide {
    display: block;
    text-align: center;
  }
}

#main #tw_news .inner .block#tw .tw_follow {
  position: relative;
  display: inline-block;
  margin: 0 auto;
  box-sizing: border-box;
  background-color: #1b95e0;
  color: #fff;
  font-weight: 500;
  cursor: pointer;
  height: 5.6vw;
  border-radius: 0.8vw;
  padding: 0.2vw 2vw 0.2vw 1.8vw;
}

#main #tw_news .inner .block#tw .tw_follow i {
  position: relative;
  display: inline-block;
  background: transparent 0 0 no-repeat;
  background-image: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2072%2072%22%3E%3Cpath%20fill%3D%22none%22%20d%3D%22M0%200h72v72H0z%22%2F%3E%3Cpath%20class%3D%22icon%22%20fill%3D%22%23fff%22%20d%3D%22M68.812%2015.14c-2.348%201.04-4.87%201.744-7.52%202.06%202.704-1.62%204.78-4.186%205.757-7.243-2.53%201.5-5.33%202.592-8.314%203.176C56.35%2010.59%2052.948%209%2049.182%209c-7.23%200-13.092%205.86-13.092%2013.093%200%201.026.118%202.02.338%202.98C25.543%2024.527%2015.9%2019.318%209.44%2011.396c-1.125%201.936-1.77%204.184-1.77%206.58%200%204.543%202.312%208.552%205.824%2010.9-2.146-.07-4.165-.658-5.93-1.64-.002.056-.002.11-.002.163%200%206.345%204.513%2011.638%2010.504%2012.84-1.1.298-2.256.457-3.45.457-.845%200-1.666-.078-2.464-.23%201.667%205.2%206.5%208.985%2012.23%209.09-4.482%203.51-10.13%205.605-16.26%205.605-1.055%200-2.096-.06-3.122-.184%205.794%203.717%2012.676%205.882%2020.067%205.882%2024.083%200%2037.25-19.95%2037.25-37.25%200-.565-.013-1.133-.038-1.693%202.558-1.847%204.778-4.15%206.532-6.774z%22%2F%3E%3C%2Fsvg%3E);
  top: 0.8vw;
  height: 3.6vw;
  width: 3.6vw;
}

#main #tw_news .inner .block#tw .tw_follow .label {
  white-space: nowrap;
  margin-left: 0.8vw;
}

#main #tw_news .inner #news {
  background: none;
}

@media screen and (max-width: 751px) {
  #main #tw_news .inner .block#news .contents {
    height: auto;
  }
}

#main #tw_news .inner .block#news #news_list {
  margin-bottom: 40px;
  width: 440px;
  height: 262px;
  border-top: 1px solid #e5e5e5;
  border-bottom: 1px solid #e5e5e5;
  overflow-x: hidden;
  overflow-y: scroll;
}

@media screen and (max-width: 751px) {
  #main #tw_news .inner .block#news #news_list {
    margin-bottom: 4vw;
    width: 100%;
    height: 28vw;
  }
}

#main #tw_news .inner .block#news #news_list ul {
  width: 100%;
}

#main #tw_news .inner .block#news #news_list ul li {
  position: relative;
  padding: 10px 0 15px;
  border-bottom: 1px solid #e5e5e5;
  font-size: 16px;
  line-height: 1.5;
}

@media screen and (max-width: 751px) {
  #main #tw_news .inner .block#news #news_list ul li {
    padding: 1.73333vw 0 2vw;
    font-size: 2.66667vw;
    line-height: 1.25;
  }
}

#main #tw_news .inner .block#news #news_list ul li dl dd {
  padding: 5px 0 0;
}

@media screen and (max-width: 751px) {
  #main #tw_news .inner .block#news #news_list ul li dl dd {
    padding: 0.66667vw 0 0;
    font-size: 3.2vw;
    line-height: 1.25;
  }
}

#main #tw_news .inner .block#news #news_list ul li dl dd a {
  display: inline;
  color: #213fd1;
  border-bottom: 1px solid #fff;
  -webkit-transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
  transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
}

.pc #main #tw_news .inner .block#news #news_list ul li dl dd a:hover {
  border-bottom: 1px solid #213fd1;
}

#main #staff {
  margin-top: 280px;
  padding: 40px 0 65px;
  min-width: 1200px;
  background: url("../../images/home/staff_bg.png") center center no-repeat;
  background-size: cover;
}

@media screen and (max-width: 751px) {
  #main #staff {
    padding: 5.33333vw 0 9.33333vw;
    min-width: 100%;
    background: url("../../images/home/sp_staff_bg.png") center center no-repeat;
    background-size: cover;
  }
}

#main #staff h2 {
  text-align: center;
}

#main #staff p {
  padding: 25px 0 60px;
  text-align: center;
}

@media screen and (max-width: 751px) {
  #main #staff p {
    padding: 2.66667vw 0 9.33333vw;
  }
}

#main #staff .more {
  display: block;
  margin: 0 auto;
  padding: 18px 0;
  width: 230px;
  height: 54px;
  border: 2px solid #2481c1;
  background: #2481c1;
  font-size: 18px;
  line-height: 1;
  text-align: center;
  color: #fff;
  -webkit-transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
  transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
}

@media screen and (max-width: 751px) {
  #main #staff .more {
    padding: 4vw;
    width: 50vw;
    height: 11.73333vw;
    font-size: 4vw;
    line-height: 1;
  }
}

.pc #main #staff .more:hover {
  background: #fff;
  color: #2481c1;
}

.pc #main #staff .more:hover span:before {
  border: 2px solid #2481c1;
  border-top: none;
  border-left: none;
}

#main #staff .more span {
  position: relative;
  display: inline-block;
  padding: 0 0 0 20px;
}

@media screen and (max-width: 751px) {
  #main #staff .more span {
    padding: 0 0 0 4vw;
  }
}

#main #staff .more span:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  display: inline-block;
  margin: 0 10px 0 0;
  width: 8px;
  height: 8px;
  border: 2px solid #fff;
  border-top: none;
  border-left: none;
  -webkit-transform: translateY(-50%) rotate(-45deg);
      -ms-transform: translateY(-50%) rotate(-45deg);
          transform: translateY(-50%) rotate(-45deg);
  -webkit-transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
  transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
}

@media screen and (max-width: 751px) {
  #main #staff .more span:before {
    width: 1.6vw;
    height: 1.6vw;
    border: 0.26667vw solid #fff;
    border-top: none;
    border-left: none;
  }
}

#main #movie {
  padding: 50px 0 100px;
  min-width: 1200px;
  background: url("../../images/home/movie_bg.png") center center no-repeat;
  background-size: cover;
}

@media screen and (max-width: 751px) {
  #main #movie {
    padding: 5.33333vw 0 10.66667vw;
    min-width: 100%;
    background: url("../../images/home/sp_movie_bg.png") center center no-repeat;
    background-size: cover;
  }
}

#main #movie h2 {
  text-align: center;
}

#main #movie .movie {
  margin: 45px auto 0;
  text-align: center;
}

@media screen and (max-width: 751px) {
  #main #movie .movie {
    margin: 6vw 0 0;
  }
}

#main #spec {
  padding: 90px 0;
  min-width: 1200px;
  background: url("../../images/home/spec_bg.png") center center no-repeat;
  background-size: cover;
}

@media screen and (max-width: 751px) {
  #main #spec {
    padding: 4vw 0 13.33333vw;
    min-width: 100%;
    background: url("../../images/home/sp_spec_bg.png") center center no-repeat;
    background-size: cover;
  }
}

#main #spec .inner {
  margin: 0 auto;
  width: 1200px;
}

@media screen and (max-width: 751px) {
  #main #spec .inner {
    width: 100%;
  }
}

#main #spec .inner h2 {
  text-align: center;
}

#main #spec .inner #spec_detail {
  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;
  padding: 60px 0 0;
}

@media screen and (max-width: 751px) {
  #main #spec .inner #spec_detail {
    display: block;
    padding: 4.66667vw 0 0;
  }
}

@media screen and (max-width: 751px) {
  #main #spec .inner #spec_detail > dt {
    text-align: center;
  }
}

#main #spec .inner #spec_detail > dd {
  width: 646px;
}

@media screen and (max-width: 751px) {
  #main #spec .inner #spec_detail > dd {
    margin: 0 auto;
    width: 92vw;
  }
}

#main #spec .inner #spec_detail > dd ul li {
  padding: 23px 0 0;
  width: 100%;
  font-size: 18px;
  line-height: 1;
}

@media screen and (max-width: 751px) {
  #main #spec .inner #spec_detail > dd ul li {
    padding: 3.33333vw 0 0;
  }
}

#main #spec .inner #spec_detail > dd ul li:first-child {
  padding: 0;
}

@media screen and (max-width: 751px) {
  #main #spec .inner #spec_detail > dd ul li:first-child {
    padding: 8vw 0 0;
  }
}

#main #spec .inner #spec_detail > dd ul li dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

#main #spec .inner #spec_detail > dd ul li dl dt {
  position: relative;
  margin-right: -30px;
  padding: 0 40px;
  width: 38.35404%;
  background: url("../../images/home/spec_txt_bg.png") center center no-repeat;
  background-size: 100% 100%;
  font-weight: bold;
  color: #fff;
  text-align: center;
  line-height: 36px;
  white-space: nowrap;
}

@media screen and (max-width: 751px) {
  #main #spec .inner #spec_detail > dd ul li dl dt {
    margin-right: -4vw;
    padding: 0 2.66667vw;
    width: 31.88406%;
    font-size: 2.4vw;
    line-height: 4.8vw;
    letter-spacing: -0.5px;
  }
}

#main #spec .inner #spec_detail > dd ul li dl dd {
  width: 68.11594%;
  padding: 0 0 0 44px;
  background: url("../../images/home/spec_txt_line.png") 0 bottom no-repeat;
  background-size: 100% 3px;
  line-height: 36px;
  white-space: nowrap;
}

@media screen and (max-width: 751px) {
  #main #spec .inner #spec_detail > dd ul li dl dd {
    padding: 0 0 0 6vw;
    font-size: 3.2vw;
    line-height: 4.8vw;
    letter-spacing: -0.5px;
  }
}

/*#main #spec .inner #bunko {
        display: block;
        margin: 80px auto 0;
        width: 340px;
        transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1); }
        .pc #main #spec .inner #bunko:hover {
          opacity: 0.7; }
        @media screen and (max-width: 751px) {
          #main #spec .inner #bunko {
            margin: 14vw auto 0;
            width: 61.33333vw; } }*/
/* ---------------------------------------------------------
  modal
  --------------------------------------------------------- */
/* common */
.none {
  display: none;
}

.modaal-wrapper .modaal-close {
  position: absolute;
  top: 0.22rem;
  right: 0.6rem;
  width: 0.5rem;
  height: 0.5rem;
  background: url("https://project-frb.jp/pc/img/btn_close.png") no-repeat center/100%;
}

.modaal-wrapper .modaal-close:focus,
.modaal-wrapper .modaal-close:hover {
  background: url("https://project-frb.jp/pc/img/btn_close.png") no-repeat center/100%;
  opacity: 0.7;
}

.modaal-wrapper .modaal-close:focus::before,
.modaal-wrapper .modaal-close:focus::after,
.modaal-wrapper .modaal-close:hover::before,
.modaal-wrapper .modaal-close:hover::after {
  display: none;
}

.modaal-wrapper .modaal-close::before,
.modaal-wrapper .modaal-close::after {
  display: none;
}

.modaal-wrapper .modaal-close span {
  display: none;
}

.modaal-wrapper.modaal-inline .modaal-inner-wrapper {
  padding: 1rem 0;
}

.modaal-wrapper.modaal-inline .modaal-content-container {
  padding: 0;
}

.modaal-wrapper.modaal-inline .modaal-container {
  max-width: 9.6rem;
  height: 100vh;
  background: transparent;
}

.modaal-wrapper.modaal-iframe .modaal-container {
  width: 600px;
  min-width: 600px;
  height: 320px;
}

.modaal-wrapper.modaal-iframe .modaal-close {
  display: none;
}

.modaal-overlay {
  opacity: 0.85 !important;
}

/* modal_about */
.modal_about {
  position: absolute;
  line-height: 1.8;
  color: #fff;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
  font-weight: bold;
  font-size: 0.2rem;
  letter-spacing: 0.018rem;
  text-align: center;
  text-shadow: #000 0.02rem 0 0.01rem, #000 -0.02rem 0 0.01rem, #000 0 -0.02rem 0.01rem, #000 0 0.02rem 0.01rem, #000 0.02rem 0.02rem 0.01rem, #000 -0.02rem 0.02rem 0.01rem, #000 0.02rem -0.02rem 0.01rem, #000 -0.02rem -0.02rem 0.01rem, #000 0.01rem 0.02rem 0.01rem, #000 -0.01rem 0.02rem 0.01rem, #000 0.01rem -0.02rem 0.01rem, #000 -0.01rem -0.02rem 0.01rem, #000 0.02rem 0.01rem 0.01rem, #000 -0.02rem 0.01rem 0.01rem, #000 0.02rem -0.01rem 0.01rem, #000 -0.02rem -0.01rem 0.01rem;
}

.modal_about.about01 {
  left: 0.6rem;
  width: 9.76rem;
  height: 5.95rem;
  background-image: url("https://project-frb.jp/pc/img/about_bg01.png");
}

.modal_about.about01 .txt {
  top: 2rem;
  left: 0.4rem;
  line-height: 2;
}

.modal_about.about02 {
  left: -0.55rem;
  width: 9.8rem;
  height: 7.84rem;
  background-image: url("https://project-frb.jp/pc/img/about_bg02.png");
}

.modal_about.about02 .txt {
  top: 2rem;
  right: 0.6rem;
}

.modal_about.about03 {
  left: 0.6rem;
  width: 10.13rem;
  height: 8.63rem;
  background-image: url("https://project-frb.jp/pc/img/about_bg03.png");
}

.modal_about.about03 .txt {
  top: 2rem;
  left: 0.8rem;
}

.modal_about .txt {
  position: absolute;
}

/*20201217*/
.footer_bnr {
  padding: 4vw 0 0;
  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;
}

@media screen and (max-width: 751px) {
  .footer_bnr {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    background: none;
  }
}

.footer_bnr li {
  padding: 30px 25px;
}

@media screen and (max-width: 751px) {
  .footer_bnr li {
    padding: 4vw 10px 0;
  }
}

.footer_bnr li a {
  display: block;
  text-align: center;
  -webkit-transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
  transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
}

@media screen and (max-width: 751px) {
  .footer_bnr li a {
    margin: 0 auto;
  }
}

.pc .footer_bnr li a:hover {
  opacity: 0.7;
}

/*20201020*/
/*#main #kv p.bnr {
    padding-top: 4vw;
    text-align: center;
  }
  @media screen and (max-width: 751px) {
    #main #kv p.bnr img {
        width:90%;
      }}*/
/*# sourceMappingURL=home.css.map */
/*------------------------------------------------------------
	BASE
------------------------------------------------------------*/
/*------------------------------------------------------------
	COLOR
------------------------------------------------------------*/
/*------------------------------------------------------------
	FUNCTION
------------------------------------------------------------*/
/*------------------------------------------------------------
	MIXIN
------------------------------------------------------------*/
/*------------------------------------------------------------
	FONT
------------------------------------------------------------*/
/*------------------------------------------------------------
	STYLE
------------------------------------------------------------*/
* {
  box-sizing: border-box;
  -webkit-tap-highlight-color: transparent;
}

@font-face {
  font-family: "Yu Gothic M";
  src: local("Yu Gothic Medium");
}

@font-face {
  font-family: "Yu Gothic M";
  src: local("Yu Gothic Bold");
  font-weight: bold;
}

body {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", HelveticaNeue, "Segoe UI", "游ゴシック体", YuGothic, "Yu Gothic M", "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 62.5%;
  line-height: 1;
  letter-spacing: 0.5px;
  color: #000;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
}

@media screen and (max-width: 751px) {
  body {
    font-size: 20px;
    line-height: 1;
  }
}

body * {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", HelveticaNeue, "Segoe UI", "游ゴシック体", YuGothic, "Yu Gothic M", "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

a {
  -webkit-tap-highlight-color: transparent;
  text-decoration: none;
  color: #000;
}

img {
  vertical-align: bottom;
}

.pc_hide {
  display: none;
}

@media screen and (max-width: 751px) {
  .pc_hide {
    display: inline-block;
  }
  .sp_hide {
    display: none;
  }
}

.pc .hover {
  -webkit-transition: all 0.5s cubic-bezier(0.21, 0.51, 0.51, 1);
  transition: all 0.5s cubic-bezier(0.21, 0.51, 0.51, 1);
  cursor: pointer;
}

.pc .hover:hover {
  opacity: 0.6;
}

.hide {
  display: none !important;
}

/*-webkit-transition: $transition;*/
/*transition: $transition;*/
/*------------------------------------------------------------
	ANIMATION
------------------------------------------------------------*/
/*------------------------------------------------------------
	COMMON
------------------------------------------------------------*/
/*------------------------------------------------------------
	WRAP
------------------------------------------------------------*/
/*------------------------------------------------------------
	HEADER
------------------------------------------------------------*/
#header {
  position: relative;
  padding: 0 0 0 15px;
  min-width: 1200px;
  border-bottom: 1px solid #ccc;
  background: #fff;
}

@media screen and (max-width: 751px) {
  #header {
    padding: 0 0 0 3.2vw;
    min-width: 100%;
  }
}

#header .header_button {
  position: absolute;
  top: 50%;
  right: 15px;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}

@media screen and (max-width: 751px) {
  #header .header_button {
    right: 3.2vw;
  }
}

#header .header_button a {
  position: relative;
  display: block;
  padding: 0 0 0 10px;
}

@media screen and (max-width: 751px) {
  #header .header_button a {
    padding: 0 0 0 2vw;
  }
}

#header .header_button a:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  width: 0;
  height: 0;
  border-left: 4px solid #a4a4a4;
  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent;
  border-right: 4px solid transparent;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}

@media screen and (max-width: 751px) {
  #header .header_button a:before {
    border-left: 1.06667vw solid #a4a4a4;
    border-top: 0.93333vw solid transparent;
    border-bottom: 0.93333vw solid transparent;
    border-right: 1.06667vw solid transparent;
  }
}

#header .header_button a span {
  position: relative;
  display: block;
}

#header .header_button a span:before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: -2px;
  height: 1px;
  width: 100%;
  background: #a4a4a4;
}

.pc #header .header_button a:hover span:before {
  background: #fff;
}

/*------------------------------------------------------------
	GNAVI
------------------------------------------------------------*/
#gnavi {
  position: relative;
  z-index: 2300;
  width: 100%;
  min-width: 1200px;
}

@media screen and (max-width: 751px) {
  #gnavi {
    position: fixed !important;
    z-index: 2500 !important;
    top: 0 !important;
    min-width: 100%;
  }
}

#gnavi_buger_wrap {
  display: none;
}

@media screen and (max-width: 751px) {
  #gnavi_buger_wrap {
    display: block;
    position: absolute;
    z-index: 2500;
    top: 13.33333vw;
    right: 2.66667vw;
    width: 10.66667vw;
    height: 10.66667vw;
    background: -webkit-linear-gradient(rgba(31, 135, 126, 0.9), rgba(31, 135, 126, 0.5));
    background: linear-gradient(rgba(31, 135, 126, 0.9), rgba(31, 135, 126, 0.5));
  }
  #gnavi_buger_wrap input {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
  }
  #gnavi_buger_wrap #gnavi_buger_line {
    position: relative;
    display: block;
  }
  #gnavi_buger_wrap #gnavi_buger_line span {
    display: block;
    position: absolute;
    left: 50%;
    width: 5.33333vw;
    height: 0.53333vw;
    background: #fff;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    -webkit-transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
    transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
  }
  #gnavi_buger_wrap #gnavi_buger_line span:nth-child(1) {
    top: 3.2vw;
  }
  #gnavi_buger_wrap #gnavi_buger_line span:nth-child(2) {
    top: 4.8vw;
  }
  #gnavi_buger_wrap #gnavi_buger_line span:nth-child(3) {
    top: 6.4vw;
  }
  #gnavi_buger_wrap input:checked + #gnavi_buger_line span:nth-child(1) {
    top: 4.8vw;
    -webkit-transform: translateX(-50%) rotate(225deg);
        -ms-transform: translateX(-50%) rotate(225deg);
            transform: translateX(-50%) rotate(225deg);
  }
  #gnavi_buger_wrap input:checked + #gnavi_buger_line span:nth-child(2) {
    width: 0;
    opacity: 0;
  }
  #gnavi_buger_wrap input:checked + #gnavi_buger_line span:nth-child(3) {
    top: 4.8vw;
    -webkit-transform: translateX(-50%) rotate(-225deg);
        -ms-transform: translateX(-50%) rotate(-225deg);
            transform: translateX(-50%) rotate(-225deg);
  }
}

#gnavi ul {
  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;
  margin: 0 auto;
  padding: 30px 0 0;
  min-width: 1200px;
}

@media screen and (max-width: 751px) {
  #gnavi ul {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    background: -webkit-linear-gradient(rgba(53, 147, 139, 0.95), rgba(143, 195, 190, 0.95));
    background: linear-gradient(rgba(53, 147, 139, 0.95), rgba(143, 195, 190, 0.95));
    width: 100%;
    min-width: 100%;
    height: 100vh;
    padding: 6.66667vw 0 13.33333vw;
    overflow-y: scroll;
  }
  #gnavi ul.open {
    display: block;
  }
}

#gnavi ul li {
  padding: 0 10px;
}

@media screen and (max-width: 751px) {
  #gnavi ul li {
    padding: 7.33333vw 0 0;
    text-align: center;
  }
}

#gnavi ul li:nth-child(1) a:before {
  background: url("../../images/common/navi1.png") center 0 no-repeat;
}

#gnavi ul li:nth-child(2) a:before {
  background: url("../../images/common/navi2.png") center 0 no-repeat;
}

#gnavi ul li:nth-child(3) a:before {
  background: url("../../images/common/navi3.png") center 0 no-repeat;
}

#gnavi ul li:nth-child(4) a:before {
  background: url("../../images/common/navi4.png") center 0 no-repeat;
}

#gnavi ul li:nth-child(5) a:before {
  background: url("../../images/common/navi5.png") center 0 no-repeat;
}

#gnavi ul li:nth-child(6) a:before {
  background: url("../../images/common/navi6.png") center 0 no-repeat;
}

#gnavi ul li:nth-child(7) a:before {
  background: url("../../images/common/navi7.png") center 0 no-repeat;
}

#gnavi ul li:nth-child(8) a:before {
  background: url("../../images/common/navi8.png") center 0 no-repeat;
}

#gnavi ul li a {
  position: relative;
  display: block;
}

#gnavi ul li a:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
  transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
}

@media screen and (max-width: 751px) {
  #gnavi ul li a:before {
    background: none !important;
  }
}

#gnavi ul li a img {
  position: relative;
  z-index: 2;
  opacity: 0;
  -webkit-transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
  transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
}

@media screen and (max-width: 751px) {
  #gnavi ul li a img {
    opacity: 1;
  }
}

.pc #gnavi ul li a:hover,
#gnavi ul li a.current {
  background-position: 0 -100px;
}

.pc #gnavi ul li a:hover:before,
#gnavi ul li a.current:before {
  opacity: 0;
}

.pc #gnavi ul li a:hover img,
#gnavi ul li a.current img {
  opacity: 1;
}

/*------------------------------------------------------------
	MAIN
------------------------------------------------------------*/
#main {
  position: relative;
  min-width: 1200px;
  width: 100%;
  overflow-x: hidden;
}

@media screen and (max-width: 751px) {
  #main {
    overflow-x: hidden;
    min-width: auto;
    width: 100%;
  }
}

#main:before {
  content: "";
  display: block;
  position: absolute;
  z-index: 2000;
  top: 0;
  left: 50%;
  width: 289px;
  height: 100%;
  background: url("../../images/common/debris_l.png") 0 0 repeat-y;
  -webkit-transform: translateX(-889px);
      -ms-transform: translateX(-889px);
          transform: translateX(-889px);
  pointer-events: none;
}

@media screen and (max-width: 751px) {
  #main:before {
    width: 22.26667vw;
    background: url("../../images/common/sp_debris_l.png") 0 0 repeat-y;
    -webkit-transform: translateX(-61.13333vw);
        -ms-transform: translateX(-61.13333vw);
            transform: translateX(-61.13333vw);
  }
}

#main:after {
  content: "";
  display: block;
  position: absolute;
  z-index: 2000;
  top: 0;
  right: 50%;
  width: 230px;
  height: 100%;
  background: url("../../images/common/debris_r.png") 0 0 repeat-y;
  -webkit-transform: translateX(830px);
      -ms-transform: translateX(830px);
          transform: translateX(830px);
  pointer-events: none;
}

@media screen and (max-width: 751px) {
  #main:after {
    width: 27.2vw;
    background: url("../../images/common/sp_debris_r.png") 0 0 repeat-y;
    -webkit-transform: translateX(63.6vw);
        -ms-transform: translateX(63.6vw);
            transform: translateX(63.6vw);
  }
}

#main .breadcrumbs {
  margin: 0 auto;
  width: 700px;
  font-size: 12px;
  line-height: 1;
}

@media screen and (max-width: 751px) {
  #main .breadcrumbs {
    width: 100%;
    font-size: 2.4vw;
    line-height: 1;
  }
}

#main .breadcrumbs a {
  position: relative;
  display: inline-block;
  margin: 0 16px 0 0;
  border-bottom: 1px solid transparent;
  -webkit-transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
  transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
}

@media screen and (max-width: 751px) {
  #main .breadcrumbs a {
    margin: 0 4vw 0 0;
  }
}

#main .breadcrumbs a:after {
  content: ">";
  position: absolute;
  display: inline-block;
  top: 50%;
  right: -16px;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}

@media screen and (max-width: 751px) {
  #main .breadcrumbs a:after {
    right: -4vw;
  }
}

.pc #main .breadcrumbs a:hover {
  border-bottom: 1px solid black;
}

#main .breadcrumbs span {
  display: inline-block;
  padding: 0 0 0 10px;
}

@media screen and (max-width: 751px) {
  #main .breadcrumbs span {
    padding: 0 0 0 2vw;
  }
}

/*------------------------------------------------------------
FOOTER
------------------------------------------------------------*/
#footer {
  min-width: 1200px;
  background: url("../../images/common/footer_bg.png") center 0 no-repeat;
  background-size: cover;
}

@media screen and (max-width: 751px) {
  #footer {
    background: url("../../images/common/sp_footer_bg.png") center 0 no-repeat;
    background-size: cover;
    min-width: 100%;
  }
}

#footer #sns_bnr {
  min-width: 1200px;
  background: url("../../images/home/sns_bg.png") center center no-repeat;
  background-size: cover;
}

@media screen and (max-width: 751px) {
  #footer #sns_bnr {
    min-width: 100%;
    background: url("../../images/home/sp_sns_bg.png") center center no-repeat;
    background-size: cover;
  }
}

#footer #sns_bnr .inner {
  margin: 0 auto;
  padding: 60px 0 75px;
  width: 1200px;
}

@media screen and (max-width: 751px) {
  #footer #sns_bnr .inner {
    padding: 10.66667vw 0 0;
    width: 100%;
  }
}

#footer #sns_bnr .inner .sns {
  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;
}

#footer #sns_bnr .inner .sns li {
  padding: 0 20px;
}

@media screen and (max-width: 751px) {
  #footer #sns_bnr .inner .sns li {
    padding: 0 4vw;
  }
}

#footer #sns_bnr .inner .bnr {
  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;
  padding: 60px 0 0;
}

@media screen and (max-width: 751px) {
  #footer #sns_bnr .inner .bnr {
    display: block;
    padding: 5.33333vw 0 10.66667vw;
  }
}

@media screen and (max-width: 751px) {
  #footer #sns_bnr .inner .bnr li {
    padding: 5.33333vw 0 0;
  }
}

#footer #sns_bnr .inner .bnr li a {
  display: block;
  width: 360px;
  height: 106px;
  background: #ccc;
  font-size: 20px;
  line-height: 106px;
  text-align: center;
}

@media screen and (max-width: 751px) {
  #footer #sns_bnr .inner .bnr li a {
    margin: 0 auto;
    width: 92vw;
    height: 26.66667vw;
    font-size: 2.66667vw;
    line-height: 26.66667vw;
  }
}

#footer_navi_main {
  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;
  margin: 0 auto;
  padding: 30px 0;
  background: url("../../images/common/footer_navi_bg.png") center center no-repeat;
  background-size: cover;
}

@media screen and (max-width: 751px) {
  #footer_navi_main {
    display: none;
  }
}

#footer_navi_main li {
  padding: 0 10px;
}

#footer_navi_main li:nth-child(1) a:before {
  background: url("../../images/common/footer_navi1.png") center 0 no-repeat;
}

#footer_navi_main li:nth-child(2) a:before {
  background: url("../../images/common/footer_navi2.png") center 0 no-repeat;
}

#footer_navi_main li:nth-child(3) a:before {
  background: url("../../images/common/footer_navi3.png") center 0 no-repeat;
}

#footer_navi_main li:nth-child(4) a:before {
  background: url("../../images/common/footer_navi4.png") center 0 no-repeat;
}

#footer_navi_main li:nth-child(5) a:before {
  background: url("../../images/common/footer_navi5.png") center 0 no-repeat;
}

#footer_navi_main li:nth-child(6) a:before {
  background: url("../../images/common/footer_navi6.png") center 0 no-repeat;
}

#footer_navi_main li:nth-child(7) a:before {
  background: url("../../images/common/footer_navi7.png") center 0 no-repeat;
}

#footer_navi_main li:nth-child(8) a:before {
  background: url("../../images/common/footer_navi8.png") center 0 no-repeat;
}

#footer_navi_main li a {
  position: relative;
  display: block;
}

#footer_navi_main li a:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
  transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
}

#footer_navi_main li a img {
  position: relative;
  z-index: 2;
  opacity: 0;
  -webkit-transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
  transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
}

#footer_navi_main li a.current,
.pc #footer_navi_main li a:hover {
  background-position: 0 -100px;
}

#footer_navi_main li a.current:before,
.pc #footer_navi_main li a:hover:before {
  opacity: 0;
}

#footer_navi_main li a.current img,
.pc #footer_navi_main li a:hover img {
  opacity: 1;
}

#footer_navi_sub {
  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;
  padding: 75px 0 0;
}

@media screen and (max-width: 751px) {
  #footer_navi_sub {
    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-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    padding: 10vw 0 0;
  }
}

#footer_navi_sub li {
  font-size: 14px;
  line-height: 1;
  letter-spacing: 0.5px;
}

@media screen and (max-width: 751px) {
  #footer_navi_sub li {
    padding: 0 4vw 2.6vw 0;
    font-size: 2.66667vw;
    line-height: 1;
  }
}

#footer_navi_sub li:before {
  content: "|";
  display: inline-block;
}

#footer_navi_sub li:first-child:before {
  display: none;
}

#footer_navi_sub li a {
  position: relative;
  display: inline-block;
  margin: 0 20px;
}

#footer_navi_sub li a:before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 100%;
  height: 1px;
  background: #000;
  opacity: 0;
  -webkit-transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
  transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
}

.pc #footer_navi_sub li a:hover:before {
  opacity: 1;
}

#footer #copyright {
  padding: 55px 0 60px;
  font-size: 12px;
  line-height: 1.66667;
  text-align: center;
}

@media screen and (max-width: 751px) {
  #footer #copyright {
    padding: 12.66667vw 0 13.33333vw;
    font-size: 2.66667vw;
    line-height: 1.5;
  }
}

/*# sourceMappingURL=common.css.map */
/*------------------------------------------------------------
	BASE
------------------------------------------------------------*/
/*------------------------------------------------------------
	COLOR
------------------------------------------------------------*/
/*------------------------------------------------------------
	FUNCTION
------------------------------------------------------------*/
/*------------------------------------------------------------
	MIXIN
------------------------------------------------------------*/
/*------------------------------------------------------------
	CHARACTER
------------------------------------------------------------*/
#character {
  background: #fdfff7 url("../../images/common/bg.png") center 0 repeat-y;
}

@media screen and (max-width: 751px) {
  #character {
    background: #fdfff7 url("../../images/common/sp_bg.png") center 0 repeat-y;
    background-size: 100% auto;
  }
}

#character_contents {
  padding: 70px 0 210px;
}

@media screen and (max-width: 751px) {
  #character_contents {
    padding: 6vw 0 13.33333vw;
  }
  #character_contents .breadcrumbs {
    padding: 0 5.33333vw;
  }
}

#character_contents .inner {
  position: relative;
}

#character_contents .title {
  position: relative;
  z-index: 2;
  text-align: center;
}

#character_contents .chara_navi {
  position: absolute;
  z-index: 2400;
  top: 320px;
  left: 0;
  width: 100%;
}

@media screen and (max-width: 751px) {
  #character_contents .chara_navi {
    top: 40vw;
  }
}

#character_contents .chara_navi ul {
  position: relative;
  margin: 0 auto;
  width: 1400px;
}

@media screen and (max-width: 1550px) {
  #character_contents .chara_navi ul {
    width: 96.77419vw;
  }
}

@media screen and (max-width: 1200px) {
  #character_contents .chara_navi ul {
    width: 1200px;
  }
}

@media screen and (max-width: 751px) {
  #character_contents .chara_navi ul {
    width: 100%;
  }
}

#character_contents .chara_navi ul li.chara_navi_prev {
  position: absolute;
  left: 10px;
  -webkit-transform: scale(-1, 1);
      -ms-transform: scale(-1, 1);
          transform: scale(-1, 1);
}

@media screen and (max-width: 751px) {
  #character_contents .chara_navi ul li.chara_navi_prev {
    left: 1.33333vw;
  }
}

#character_contents .chara_navi ul li.chara_navi_next {
  position: absolute;
  right: 10px;
}

@media screen and (max-width: 751px) {
  #character_contents .chara_navi ul li.chara_navi_next {
    right: 1.33333vw;
  }
}

#character_contents #character_list {
  margin: 0 auto;
}

#character_contents #character_list li {
  position: relative;
  margin: 10px auto 0;
  width: 1044px;
  height: 427px;
}

@media screen and (max-width: 751px) {
  #character_contents #character_list li {
    margin: 4vw auto 0;
    width: 100%;
    height: auto;
  }
  #character_contents #character_list li:first-child {
    margin-top: 8vw;
  }
}

#character_contents #character_list li picture {
  position: absolute;
  top: 0;
  left: 0;
}

@media screen and (max-width: 751px) {
  #character_contents #character_list li picture {
    position: relative;
  }
}

#character_contents #character_list li a {
  display: block;
  position: absolute;
  z-index: 2;
  left: 980px;
  bottom: 70px;
  -webkit-transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
  transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
}

@media screen and (max-width: 751px) {
  #character_contents #character_list li a {
    left: 50%;
    bottom: 7.06667vw;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

#character_contents #character_list li a:after {
  content: "";
  display: block;
  position: absolute;
  top: 7px;
  left: 9px;
  width: 100px;
  height: 100px;
  border-radius: 100px;
  background: #fff;
  opacity: 0;
  -webkit-transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
  transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
}

.pc #character_contents #character_list li a:hover:after {
  opacity: 0.5;
}

#character_contents .character_detail {
  padding: 45px 0 0;
  text-align: center;
}

#character_contents .character_detail ul li {
  position: relative;
  z-index: 2300;
}

#character_contents .character_detail ul li img {
  max-width: 100%;
}

@media screen and (max-width: 1200px) {
  #character_contents .character_detail ul li img {
    min-width: 1200px;
  }
}

@media screen and (max-width: 751px) {
  #character_contents .character_detail ul li img {
    min-width: 100%;
  }
}

#character_contents .character_detail#date_a_live li:nth-child(2) {
  top: -90px;
  margin-bottom: -90px;
}

@media screen and (max-width: 751px) {
  #character_contents .character_detail#date_a_live li:nth-child(2) {
    top: 0;
    margin-bottom: 0;
    padding: 6.66667vw 0 0;
  }
}

#character_contents #character_thumb_list {
  position: relative;
  z-index: 2300;
  margin: 90px auto 0;
  width: 1200px;
}

@media screen and (max-width: 751px) {
  #character_contents #character_thumb_list {
    margin: 12vw auto 0;
    width: 100%;
  }
}

#character_contents #character_thumb_list ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: left;
  -webkit-justify-content: left;
      -ms-flex-pack: left;
          justify-content: left;
}

@media screen and (max-width: 751px) {
  #character_contents #character_thumb_list ul {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

#character_contents #character_thumb_list ul li {
  margin: -3px;
}

#character_contents #character_thumb_list ul li a {
  position: relative;
  display: block;
}

#character_contents #character_thumb_list ul li a:after {
  content: "";
  display: block;
  position: absolute;
  top: 6px;
  left: 10px;
  width: 157px;
  height: 157px;
  border-radius: 6px;
  background: #fff;
  opacity: 0;
  -webkit-transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
  transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
}

.pc #character_contents #character_thumb_list ul li a:hover:after {
  opacity: 0.5;
}

/*# sourceMappingURL=character.css.map */
/*------------------------------------------------------------
	BASE
------------------------------------------------------------*/
/*------------------------------------------------------------
	COLOR
------------------------------------------------------------*/
/*------------------------------------------------------------
	FUNCTION
------------------------------------------------------------*/
/*------------------------------------------------------------
	MIXIN
------------------------------------------------------------*/
/*------------------------------------------------------------
	NEWS
------------------------------------------------------------*/
#news {
  background: #fdfff7 url("../../images/common/bg.png") center 0 repeat-y;
}

@media screen and (max-width: 751px) {
  #news {
    background: #fdfff7 url("../../images/common/sp_bg.png") center 0 repeat-y;
    background-size: 100% auto;
  }
}

#news_contents {
  padding: 70px 0 150px;
}

#news_contents .title {
  position: relative;
  z-index: 2;
  margin-bottom: -40px;
  text-align: center;
}

@media screen and (max-width: 751px) {
  #news_contents .title {
    margin-bottom: -10vw;
  }
}

#news_contents .inner {
  position: relative;
  margin: 0 auto;
  padding: 40px 90px 70px;
  width: 1000px;
  border-radius: 80px 20px 68px 20px;
  border: 1px solid rgba(186, 189, 255, 0.25);
  background: -webkit-linear-gradient(rgba(255, 255, 255, 0.95), rgba(255, 255, 255, 0.75));
  background: linear-gradient(rgba(255, 255, 255, 0.95), rgba(255, 255, 255, 0.75));
}

@media screen and (max-width: 751px) {
  #news_contents .inner {
    padding: 8.66667vw 5.33333vw 13.33333vw;
    width: 92vw;
    border-radius: 10.66667vw 2.66667vw 9.06667vw 2.66667vw;
  }
}

#news_contents .inner:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 80px 20px 68px 20px;
  box-shadow: 0px 0px 10px 0px rgba(186, 189, 255, 0.5);
  background: rgba(255, 255, 255, 0.01);
}

@media screen and (max-width: 751px) {
  #news_contents .inner:before {
    border-radius: 10.66667vw 2.66667vw 9.06667vw 2.66667vw;
  }
}

#news_contents .inner #news_list {
  margin: 60px auto 0;
}

@media screen and (max-width: 751px) {
  #news_contents .inner #news_list {
    margin: 5.33333vw auto 0;
  }
}

#news_contents .inner #news_list li {
  position: relative;
  padding: 20px 0 24px;
  border-bottom: 1px solid #e0dfe6;
  font-size: 16px;
  line-height: 1.5;
}

@media screen and (max-width: 751px) {
  #news_contents .inner #news_list li {
    padding: 4vw 0;
    border-bottom: 0.53333vw solid #e0dfe6;
    font-size: 3.2vw;
    line-height: 1.5;
  }
}

#news_contents .inner #news_list li:before,
#news_contents .inner #news_list li:after {
  content: "";
  display: block;
  position: absolute;
  bottom: -4px;
  width: 8px;
  height: 8px;
  border-radius: 8px;
  background: #e0dfe6;
}

@media screen and (max-width: 751px) {
  #news_contents .inner #news_list li:before,
  #news_contents .inner #news_list li:after {
    bottom: -1.33333vw;
    width: 2.13333vw;
    height: 2.13333vw;
    border-radius: 2.13333vw;
  }
}

#news_contents .inner #news_list li:before {
  left: 0;
}

@media screen and (max-width: 751px) {
  #news_contents .inner #news_list li:before {
    left: -1.86667vw;
  }
}

#news_contents .inner #news_list li:after {
  right: 0;
}

@media screen and (max-width: 751px) {
  #news_contents .inner #news_list li:after {
    right: -1.86667vw;
  }
}

#news_contents .inner #news_list li:first-child {
  border-top: 1px solid #e0dfe6;
}

@media screen and (max-width: 751px) {
  #news_contents .inner #news_list li:first-child {
    border-top: 0.53333vw solid #e0dfe6;
  }
}

#news_contents .inner #news_list li:first-child dl:before,
#news_contents .inner #news_list li:first-child dl:after {
  content: "";
  display: block;
  position: absolute;
  top: -4px;
  width: 8px;
  height: 8px;
  border-radius: 8px;
  background: #e0dfe6;
}

@media screen and (max-width: 751px) {
  #news_contents .inner #news_list li:first-child dl:before,
  #news_contents .inner #news_list li:first-child dl:after {
    top: -1.33333vw;
    width: 2.13333vw;
    height: 2.13333vw;
    border-radius: 2.13333vw;
  }
}

#news_contents .inner #news_list li:first-child dl:before {
  left: 0;
}

@media screen and (max-width: 751px) {
  #news_contents .inner #news_list li:first-child dl:before {
    left: -1.86667vw;
  }
}

#news_contents .inner #news_list li:first-child dl:after {
  right: 0;
}

@media screen and (max-width: 751px) {
  #news_contents .inner #news_list li:first-child dl:after {
    right: -1.86667vw;
  }
}

#news_contents .inner #news_list li dl dd {
  padding: 7px 0 0;
}

@media screen and (max-width: 751px) {
  #news_contents .inner #news_list li dl dd {
    padding: 2vw 0 0;
  }
}

#news_contents .inner #news_list li dl dd a {
  display: inline;
  color: #213fd1;
  border-bottom: 1px solid #fff;
  -webkit-transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
  transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
}

.pc #news_contents .inner #news_list li dl dd a:hover {
  border-bottom: 1px solid #213fd1;
}

#news_contents .inner .more {
  position: relative;
  z-index: 2;
  display: block;
  margin: 0 auto;
  padding: 18px 0;
  width: 230px;
  height: 54px;
  border: 2px solid #2481c1;
  background: #2481c1;
  font-size: 18px;
  line-height: 1;
  text-align: center;
  color: #fff;
  -webkit-transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
  transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
}

@media screen and (max-width: 751px) {
  #news_contents .inner .more {
    padding: 4vw;
    width: 50vw;
    height: 11.73333vw;
    font-size: 4vw;
    line-height: 1;
  }
}

.pc #news_contents .inner .more:hover {
  background: #fff;
  color: #2481c1;
}

.pc #news_contents .inner .more:hover span:before {
  border: 2px solid #2481c1;
  border-top: none;
  border-left: none;
}

#news_contents .inner .more span {
  position: relative;
  display: inline-block;
  padding: 0 0 0 20px;
}

@media screen and (max-width: 751px) {
  #news_contents .inner .more span {
    padding: 0 0 0 4vw;
  }
}

#news_contents .inner .more span:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  display: inline-block;
  margin: 0 10px 0 0;
  width: 8px;
  height: 8px;
  border: 2px solid #fff;
  border-top: none;
  border-left: none;
  -webkit-transform: translateY(-50%) rotate(-45deg);
      -ms-transform: translateY(-50%) rotate(-45deg);
          transform: translateY(-50%) rotate(-45deg);
  -webkit-transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
  transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
}

@media screen and (max-width: 751px) {
  #news_contents .inner .more span:before {
    width: 1.6vw;
    height: 1.6vw;
    border: 0.26667vw solid #fff;
    border-top: none;
    border-left: none;
  }
}

#news_detail {
  position: relative;
  z-index: 2;
  margin: 0 auto;
  padding: 55px 0 0;
  width: 700px;
}

@media screen and (max-width: 751px) {
  #news_detail {
    padding: 6.66667vw 0 0;
    width: 81.33333vw;
  }
}

#news_detail h1 {
  position: relative;
  padding: 0 0 15px;
  font-size: 24px;
  line-height: 1.2;
  font-weight: bold;
}

@media screen and (max-width: 751px) {
  #news_detail h1 {
    padding: 0 0 2vw;
    width: 81.33333vw;
    font-size: 4vw;
    line-height: 1.33333;
  }
}

#news_detail h1:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: -93px;
  width: 844px;
  height: 32px;
  background: url("../../images/common/line.png") 0 0 no-repeat;
  background-size: 100% 100%;
}

@media screen and (max-width: 751px) {
  #news_detail h1:after {
    left: -4vw;
    width: 87.73333vw;
    height: 8.8vw;
    background: url("../../images/common/sp_line.png") 0 0 no-repeat;
    background-size: 100% 100%;
  }
}

#news_detail .date {
  padding: 15px 0 0;
  font-size: 14px;
  line-height: 1;
  text-align: right;
  color: #999;
}

@media screen and (max-width: 751px) {
  #news_detail .date {
    padding: 2.66667vw 0 0;
    font-size: 2.66667vw;
    line-height: 1;
  }
}

#news_detail .news_detail_contents {
  padding: 55px 0 70px;
}

@media screen and (max-width: 751px) {
  #news_detail .news_detail_contents {
    padding: 5.33333vw 0 10.66667vw;
  }
}

#news_detail .news_detail_contents {
  line-height: 1.75;
}

#news_detail .news_detail_contents img {
  display: block;
  width: 100%;
  text-align: center;
  padding: 0 0 20px;
}

#news_detail .news_detail_contents p {
  font-size: 16px;
  padding: 0 0 10px;
}

#news_detail .news_detail_contents h2 {
  font-size: 24px;
  padding: 0 0 10px;
}

#news_detail .news_detail_contents h3 {
  font-size: 20px;
  padding: 0 0 10px;
}

#news_detail .news_detail_contents a {
  font-size: 16px;
  text-decoration: underline;
  color: #2481c1;
  padding: 0 0 10px;
}

#news_detail .news_detail_contents a:hover {
  text-decoration: none;
}

#news_detail .news_detail_contents .strong {
  font-weight: bold;
}

#news_detail .news_detail_contents .btn {
  display: block;
  margin: 0 auto 20px;
  padding: 12px;
  width: 230px;
  height: 54px;
  border: 2px solid #2481c1;
  background: #2481c1;
  text-align: center;
  text-decoration: none;
  color: #fff;
  -webkit-transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
  transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
}

#news_detail .news_detail_contents .btn:hover {
  background: #fff;
  color: #2481c1;
}

@media screen and (max-width: 751px) {
  #news_detail .news_detail_contents {
    line-height: 1.83333;
  }
  #news_detail .news_detail_contents figure {
    display: block;
    width: 100%;
    text-align: center;
    padding: 0 0 3vw;
  }
  #news_detail .news_detail_contents figure img {
    width: 100%;
  }
  #news_detail .news_detail_contents p {
    font-size: 3.2vw;
    padding: 0 0 3vw;
  }
  #news_detail .news_detail_contents h2 {
    font-size: 4vw;
    padding: 0 0 3vw;
  }
  #news_detail .news_detail_contents h3 {
    font-size: 3.74vw;
    padding: 0 0 3vw;
  }
  #news_detail .news_detail_contents a {
    font-size: 3.2vw;
    text-decoration: underline;
    color: #2481c1;
    display: block;
    padding: 0 0 3vw;
  }
  #news_detail .news_detail_contents .strong {
    font-weight: bold;
  }
  #news_detail .news_detail_contents .btn {
    padding: 2.5vw 0;
    width: 50vw;
    height: 11.73333vw;
    font-size: 4vw;
    display: block;
    margin: 0 auto 3vw;
    border: 2px solid #2481c1;
    background: #2481c1;
    text-align: center;
    text-decoration: none;
    color: #fff;
    -webkit-transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
    transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
  }
  #news_detail .news_detail_contents .btn:hover {
    background: #fff;
    color: #2481c1;
  }
}

#news_detail .news_detail_contents figure + p {
  padding: 50px 0 0;
}

@media screen and (max-width: 751px) {
  #news_detail .news_detail_contents figure + p {
    padding-bottom: 4.66667vw 0 0;
  }
}

#news_detail .back {
  display: block;
  margin: 0 auto;
  padding: 18px 0;
  width: 230px;
  height: 54px;
  border: 2px solid #2481c1;
  background: #2481c1;
  font-size: 18px;
  line-height: 1;
  text-align: center;
  color: #fff;
  -webkit-transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
  transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
}

@media screen and (max-width: 751px) {
  #news_detail .back {
    padding: 4vw 0;
    width: 50vw;
    height: 11.73333vw;
    font-size: 4vw;
    line-height: 1;
  }
}

.pc #news_detail .back:hover {
  background: #fff;
  color: #2481c1;
}

.pc #news_detail .back:hover span:before {
  background: url("../../images/common/icon_return_on.png") 0 0 no-repeat;
}

#news_detail .back span {
  position: relative;
  display: inline-block;
  padding: 0 0 0 35px;
}

@media screen and (max-width: 751px) {
  #news_detail .back span {
    padding: 0 0 0 5.33333vw;
  }
}

#news_detail .back span:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  display: inline-block;
  width: 20px;
  height: 17px;
  background: url("../../images/common/icon_return.png") 0 0 no-repeat;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
  transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
}

@media screen and (max-width: 751px) {
  #news_detail .back span:before {
    width: 3.2vw;
    height: 2.93333vw;
    background: url("../../images/common/sp_icon_return.png") 0 0 no-repeat;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
  }
}

/*# sourceMappingURL=news.css.map */
/*------------------------------------------------------------
	BASE
------------------------------------------------------------*/
/*------------------------------------------------------------
	COLOR
------------------------------------------------------------*/
/*------------------------------------------------------------
	FUNCTION
------------------------------------------------------------*/
/*------------------------------------------------------------
	MIXIN
------------------------------------------------------------*/
/*------------------------------------------------------------
	SPECIAL
------------------------------------------------------------*/
#special {
  background: #fdfff7 url("../../images/common/bg.png") center 0 repeat-y;
}

@media screen and (max-width: 751px) {
  #special {
    background: #fdfff7 url("../../images/common/sp_bg.png") center 0 repeat-y;
    background-size: 100% auto;
  }
}

#special_contents {
  padding: 70px 0 210px;
}

@media screen and (max-width: 751px) {
  #special_contents {
    padding: 6vw 0 13.33333vw;
  }
  #special_contents .breadcrumbs {
    padding: 0 5.33333vw;
  }
}

#special_contents .title {
  position: relative;
  z-index: 2;
  text-align: center;
}

#special_contents #subnavi {
  padding: 20px 0 30px;
}

@media screen and (max-width: 751px) {
  #special_contents #subnavi {
    padding: 4.66667vw 0 8vw;
  }
}

#special_contents #subnavi ul {
  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;
}

@media screen and (max-width: 751px) {
  #special_contents #subnavi ul {
    margin: 0 auto;
    -webkit-box-pack: left;
    -webkit-justify-content: left;
        -ms-flex-pack: left;
            justify-content: left;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    width: 94%;
  }
}

#special_contents #subnavi ul li {
  padding: 0 5px;
}

@media screen and (max-width: 751px) {
  #special_contents #subnavi ul li {
    padding: 1.33333vw 0.66667vw 0;
  }
}

#special_contents #subnavi ul li:nth-child(1) a:before {
  background: url("../../images/special/subnavi1.png") center 0 no-repeat;
}

#special_contents #subnavi ul li:nth-child(2) a:before {
  background: url("../../images/special/subnavi2.png") center 0 no-repeat;
}

#special_contents #subnavi ul li:nth-child(3) a:before {
  background: url("../../images/special/subnavi3.png") center 0 no-repeat;
}

@media screen and (max-width: 751px) {
  #special_contents #subnavi ul li:nth-child(1) a:before {
    background: url("../../images/special/sp_subnavi1.png") center 0 no-repeat;
  }
  #special_contents #subnavi ul li:nth-child(2) a:before {
    background: url("../../images/special/sp_subnavi2.png") center 0 no-repeat;
  }
  #special_contents #subnavi ul li:nth-child(3) a:before {
    background: url("../../images/special/sp_subnavi3.png") center 0 no-repeat;
  }
}

#special_contents #subnavi ul li a {
  position: relative;
  display: block;
}

#special_contents #subnavi ul li a:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
  transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
}

#special_contents #subnavi ul li a img {
  position: relative;
  z-index: 2;
  opacity: 0;
  -webkit-transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
  transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
}

.pc #special_contents #subnavi ul li a:hover,
#special_contents #subnavi ul li a.current {
  background-position: 0 -100px;
}

.pc #special_contents #subnavi ul li a:hover:before,
#special_contents #subnavi ul li a.current:before {
  opacity: 0;
}

.pc #special_contents #subnavi ul li a:hover img,
#special_contents #subnavi ul li a.current img {
  opacity: 1;
}

#special #comic {
  position: relative;
  margin: 0 auto;
  width: 1200px;
  border-radius: 10px;
  border: 1px solid rgba(186, 189, 255, 0.25);
  background: -webkit-linear-gradient(rgba(255, 255, 255, 0.95), rgba(255, 255, 255, 0.75));
  background: linear-gradient(rgba(255, 255, 255, 0.95), rgba(255, 255, 255, 0.75));
}

@media screen and (max-width: 751px) {
  #special #comic {
    margin: 0 auto;
    width: 92vw;
    border-radius: 2.66667vw;
  }
}

#special #comic:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 10px;
  box-shadow: 0px 0px 10px 0px rgba(186, 189, 255, 0.5);
  background: rgba(255, 255, 255, 0.01);
}

@media screen and (max-width: 751px) {
  #special #comic:before {
    border-radius: 2.66667vw;
  }
}

#special #comic h2 {
  padding: 16px 0;
  background: url("../../images/world/bg_title.png") 0 0 no-repeat;
  background-size: 100% 100%;
  text-align: center;
}

@media screen and (max-width: 751px) {
  #special #comic h2 {
    padding: 4vw 0;
    background: url("../../images/world/sp_bg_title.png") 0 0 no-repeat;
    background-size: 100% 100%;
  }
}

#special #comic .read {
  position: relative;
  padding: 35px 0 60px;
  text-align: center;
}

@media screen and (max-width: 751px) {
  #special #comic .read {
    padding: 4.66667vw 0 11.33333vw 28vw;
    text-align: left;
  }
}

#special #comic .read:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  width: 221px;
  height: 215px;
  background: url("../../images/special/comic_badge.png") 0 0 no-repeat;
  background-size: contain;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}

@media screen and (max-width: 751px) {
  #special #comic .read:before {
    left: -2.66667vw;
    width: 28.26667vw;
    height: 28.66667vw;
    background: url("../../images/special/sp_comic_badge.png") 0 0 no-repeat;
    background-size: contain;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
  }
}

#special #comic_contents {
  position: relative;
  padding: 50px 100px;
  border-radius: 0 0 10px 10px;
  background: url("../../images/special/comic_bg.png") center 0 no-repeat;
  background-size: cover;
}

@media screen and (max-width: 751px) {
  #special #comic_contents {
    padding: 6.66667vw 5.33333vw;
    border-radius: 0 0 2.66667vw 2.66667vw;
    background: url("../../images/special/sp_comic_bg.png") center 0 no-repeat;
    background-size: cover;
  }
}

#special #comic_contents.new:before {
  content: "";
  display: block;
  position: absolute;
  z-index: 2;
  top: 0;
  left: 50%;
  width: 179px;
  height: 50px;
  background: url("../../images/special/icon_new.png") 0 0 no-repeat;
  background-size: contain;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

@media screen and (max-width: 751px) {
  #special #comic_contents.new:before {
    width: 21.2vw;
    height: 6.66667vw;
    background: url("../../images/special/sp_icon_new.png") 0 0 no-repeat;
    background-size: contain;
  }
}

#special #comic_contents img {
  width: 100%;
}

#special #comic_chara {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 35px auto 0;
  padding: 44px 0 43px 92px;
  width: 1180px;
  height: 330px;
  background: url("../../images/special/comic_chara_bg.png") center center no-repeat;
  background-size: 100% 100%;
}

@media screen and (max-width: 751px) {
  #special #comic_chara {
    position: relative;
    display: block;
    margin: 4.66667vw auto 0;
    padding: 6.66667vw 8vw 8vw;
    width: 96.66667vw;
    height: auto;
    background: url("../../images/special/sp_comic_chara_bg.png") center center no-repeat;
    background-size: 100% 100%;
  }
}

@media screen and (max-width: 751px) {
  #special #comic_chara.chara2 {
    background: url("../../images/special/sp_comic2_chara_bg.png") center center no-repeat;
    background-size: 100% 100%;
  }
}

@media screen and (max-width: 751px) {
  #special #comic_chara.chara3 {
    background: url("../../images/special/sp_comic2_chara_bg.png") center center no-repeat;
    background-size: 100% 100%;
  }
}

@media screen and (max-width: 751px) {
  #special #comic_chara.chara4 {
    background: url("../../images/special/sp_comic2_chara_bg.png") center center no-repeat;
    background-size: 100% 100%;
  }
}

#special #comic_chara figure {
  width: 330px;
  text-align: center;
}

@media screen and (max-width: 751px) {
  #special #comic_chara figure {
    display: block;
    position: absolute;
    top: 20.66667vw;
    left: 50%;
    width: auto;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

#special #comic_chara dl {
  margin: 0 0 0;
  width: 634px;
  color: #fff;
}

@media screen and (max-width: 751px) {
  #special #comic_chara dl {
    margin: 0;
    width: 100%;
  }
}

#special #comic_chara dl dt {
  position: relative;
  padding: 0 0 20px 68px;
  font-size: 20px;
  line-height: 1;
  font-weight: bold;
}

@media screen and (max-width: 751px) {
  #special #comic_chara dl dt {
    padding: 0 0 4vw 8vw;
    font-size: 4.26667vw;
    line-height: 1;
  }
}

#special #comic_chara dl dt:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 634px;
  height: 24px;
  background: url("../../images/special/comic_chara_line.png") 0 0 no-repeat;
  background-size: 100% auto;
}

@media screen and (max-width: 751px) {
  #special #comic_chara dl dt:after {
    left: -9.33333vw;
    width: 92.66667vw;
    height: 5.33333vw;
    background: url("../../images/special/sp_comic_chara_line.png") 0 0 no-repeat;
    background-size: 100% auto;
  }
}

#special #comic_chara dl dd {
  padding: 0 0 0 68px;
  font-size: 16px;
  line-height: 1.5;
}

@media screen and (max-width: 751px) {
  #special #comic_chara dl dd {
    padding: 40vw 0 0;
    font-size: 3.2vw;
    line-height: 1.5;
  }
}

#special #comic_chara dl dd span {
  display: inline-block;
  padding: 15px 0 0;
}

@media screen and (max-width: 751px) {
  #special #comic_chara dl dd span {
    padding: 2vw 0 0;
  }
}

#special #comic_chara dl dd .name {
  font-weight: bold;
}

#special #comic_chara dl dd .title {
  font-size: 13px;
}

@media screen and (max-width: 751px) {
  #special #comic_chara dl dd .title {
    font-size: 2.66667vw;
  }
}

#special #comic_list {
  margin: 30px auto 0;
  width: 1200px;
}

@media screen and (max-width: 751px) {
  #special #comic_list {
    margin: 6.66667vw auto 0;
    width: 100%;
  }
}

#special #comic_list ol {
  margin: 0 auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  width: 1200px;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

@media screen and (max-width: 751px) {
  #special #comic_list ol {
    width: 95%;
  }
}

#special #comic_list ol li {
  margin: 0 -3px;
  padding: 0 0 0;
}

@media screen and (max-width: 751px) {
  #special #comic_list ol li {
    margin: 0;
  }
}

#special #comic_list ol li a {
  position: relative;
  display: inline-block;
}

#special #comic_list ol li a:after {
  content: "";
  position: absolute;
  top: 6px;
  left: 6px;
  display: block;
  border-radius: 5px;
  width: 157px;
  height: 157px;
  background: #fff;
  opacity: 0;
  -webkit-transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
  transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
}

@media screen and (max-width: 751px) {
  #special #comic_list ol li a:after {
    display: none;
  }
}

#special #comic_list ol li a:hover:after {
  opacity: 0.3;
}

#special #comic_auther {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 80px auto 0;
  padding: 40px 60px;
  width: 1000px;
  border-radius: 80px 20px 68px 20px;
  border: 1px solid rgba(186, 189, 255, 0.25);
  background: -webkit-linear-gradient(rgba(255, 255, 255, 0.95), rgba(255, 255, 255, 0.75));
  background: linear-gradient(rgba(255, 255, 255, 0.95), rgba(255, 255, 255, 0.75));
}

@media screen and (max-width: 751px) {
  #special #comic_auther {
    display: block;
    margin: 6.66667vw auto 0;
    padding: 5.33333vw 5.33333vw 5.33333vw 2.66667vw;
    width: 92vw;
    border-radius: 10.66667vw 2.66667vw 9.06667vw 2.66667vw;
  }
}

#special #comic_auther:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 80px 20px 68px 20px;
  box-shadow: 0px 0px 10px 0px rgba(186, 189, 255, 0.5);
  background: rgba(255, 255, 255, 0.01);
}

@media screen and (max-width: 751px) {
  #special #comic_auther:before {
    border-radius: 10.66667vw 2.66667vw 9.06667vw 2.66667vw;
  }
}

#special #comic_auther h3 {
  padding: 0 40px 0 0;
}

@media screen and (max-width: 751px) {
  #special #comic_auther h3 {
    position: absolute;
    top: 5.33333vw;
    left: 3.33333vw;
    padding: 0;
  }
}

#special #comic_auther dl dt {
  position: relative;
  padding: 0 0 20px 68px;
  font-size: 20px;
  line-height: 1;
  font-weight: bold;
}

@media screen and (max-width: 751px) {
  #special #comic_auther dl dt {
    margin: 0 0 0 28.66667vw;
    font-size: 4vw;
    line-height: 1.2;
  }
  #special #comic_auther dl dt span {
    font-size: 3.2vw;
    letter-spacing: -0.5px;
  }
}

#special #comic_auther dl dt:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 634px;
  height: 24px;
  background: url("../../images/special/comic_auther_line.png") 0 0 no-repeat;
  background-size: 100% auto;
}

@media screen and (max-width: 751px) {
  #special #comic_auther dl dt:after {
    width: 55.2vw;
    height: 3.2vw;
    background: url("../../images/special/sp_comic_auther_line.png") 0 0 no-repeat;
    background-size: 100% auto;
  }
}

#special #comic_auther dl dt a {
  position: absolute;
  right: 0;
  display: inline-block;
  font-weight: normal;
  font-size: 16px;
  color: #2654a9;
  -webkit-transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
  transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
}

@media screen and (max-width: 751px) {
  #special #comic_auther dl dt a {
    top: 13.33333vw;
    font-size: 2.66667vw;
  }
}

#special #comic_auther dl dt a:hover {
  opacity: 0.7;
}

#special #comic_auther dl dd {
  padding: 15px 0 0 68px;
  font-size: 16px;
  line-height: 1.5;
}

@media screen and (max-width: 751px) {
  #special #comic_auther dl dd {
    padding: 10vw 0 0;
    font-size: 3.2vw;
    line-height: 1.75;
  }
}

#special #movie {
  position: relative;
  margin: 0 auto;
  padding: 0 0 100px;
  width: 1200px;
  border-radius: 10px;
  border: 1px solid rgba(186, 189, 255, 0.25);
  background: -webkit-linear-gradient(rgba(255, 255, 255, 0.95), rgba(255, 255, 255, 0.75));
  background: linear-gradient(rgba(255, 255, 255, 0.95), rgba(255, 255, 255, 0.75));
}

@media screen and (max-width: 751px) {
  #special #movie {
    margin: 0 auto;
    width: 92vw;
    border-radius: 2.66667vw;
  }
}

#special #movie:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 10px;
  box-shadow: 0px 0px 10px 0px rgba(186, 189, 255, 0.5);
  background: rgba(255, 255, 255, 0.01);
}

@media screen and (max-width: 751px) {
  #special #movie:before {
    border-radius: 2.66667vw;
  }
}

#special #movie h2 {
  padding: 16px 0;
  background: url("../../images/world/bg_title.png") 0 0 no-repeat;
  background-size: 100% 100%;
  text-align: center;
}

@media screen and (max-width: 751px) {
  #special #movie h2 {
    padding: 4vw 0;
    background: url("../../images/world/sp_bg_title.png") 0 0 no-repeat;
    background-size: 100% 100%;
  }
}

#special #movie ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 0 auto;
  width: 1000px;
}

@media screen and (max-width: 751px) {
  #special #movie ul {
    display: block;
    width: 82vw;
  }
}

#special #movie ul li {
  padding: 50px 0 0;
}

@media screen and (max-width: 751px) {
  #special #movie ul li {
    padding: 10vw 0 0;
  }
  #special #movie ul li:first-child {
    padding: 3.33333vw 0 0;
  }
}

#special #movie ul li .movie {
  position: relative;
  width: 470px;
  height: 352px;
  background: url("../../images/special/movie_thumb.png") 0 0 no-repeat;
  background-size: contain;
}

@media screen and (max-width: 751px) {
  #special #movie ul li .movie {
    width: 82vw;
    height: 61.06667vw;
    background: url("../../images/special/sp_movie_thumb.png") 0 0 no-repeat;
    background-size: contain;
  }
}

#special #movie ul li .movie iframe {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

#special #movie ul li h3 {
  position: relative;
  margin: 10px 0 0;
  padding: 0px 0 16px 54px;
  font-size: 14px;
  line-height: 1;
  font-weight: bold;
  letter-spacing: -0.5px;
}

@media screen and (max-width: 751px) {
  #special #movie ul li h3 {
    margin: 2.66667vw 0 0;
    padding: 0 0 2.66667vw 10.66667vw;
    font-size: 3.73333vw;
    line-height: 1.5;
  }
}

#special #movie ul li h3:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 461px;
  height: 24px;
  background: url("../../images/special/movie_line.png") 0 0 no-repeat;
  background-size: 100% auto;
}

@media screen and (max-width: 751px) {
  #special #movie ul li h3:after {
    left: -2.93333vw;
    width: 87.46667vw;
    height: 4.93333vw;
    background: url("../../images/special/sp_movie_line.png") 0 0 no-repeat;
    background-size: 100% auto;
  }
}

#special #radio {
  position: relative;
  margin: 0 auto;
  padding: 0 0 100px;
  width: 1200px;
  border-radius: 10px;
  border: 1px solid rgba(186, 189, 255, 0.25);
  background: -webkit-linear-gradient(rgba(255, 255, 255, 0.95), rgba(255, 255, 255, 0.75));
  background: linear-gradient(rgba(255, 255, 255, 0.95), rgba(255, 255, 255, 0.75));
}

@media screen and (max-width: 751px) {
  #special #radio {
    margin: 0 auto;
    width: 92vw;
    border-radius: 2.66667vw;
  }
}

#special #radio:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 10px;
  box-shadow: 0px 0px 10px 0px rgba(186, 189, 255, 0.5);
  background: rgba(255, 255, 255, 0.01);
}

@media screen and (max-width: 751px) {
  #special #radio:before {
    border-radius: 2.66667vw;
  }
}

#special #radio h2 {
  padding: 16px 0;
  background: url("../../images/world/bg_title.png") 0 0 no-repeat;
  background-size: 100% 100%;
  text-align: center;
}

@media screen and (max-width: 751px) {
  #special #radio h2 {
    padding: 4vw 0;
    background: url("../../images/world/sp_bg_title.png") 0 0 no-repeat;
    background-size: 100% 100%;
  }
}

#special #radio .read {
  padding: 80px 0 50px;
  font-size: 20px;
  line-height: 1;
  font-weight: bold;
  text-align: center;
  color: #2654a9;
}

@media screen and (max-width: 751px) {
  #special #radio .read {
    padding: 9.33333vw 0 8vw 26.66667vw;
    font-size: 4vw;
    line-height: 1.5;
    text-align: left;
  }
}

#special #radio_update {
  margin: 0 auto;
  width: 1000px;
}

@media screen and (max-width: 751px) {
  #special #radio_update {
    width: 100%;
  }
}

#special #radio_update_infomation {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

@media screen and (max-width: 751px) {
  #special #radio_update_infomation {
    display: block;
  }
}

#special #radio_update_infomation .movie {
  position: relative;
}

@media screen and (max-width: 751px) {
  #special #radio_update_infomation .movie {
    margin: 0 auto;
    width: 82vw;
  }
}

#special #radio_update_infomation .movie:before {
  content: "";
  display: block;
  position: absolute;
  top: -109px;
  left: -73px;
  width: 174px;
  height: 169px;
  background: url("../../images/special/radio_badge.png") 0 0 no-repeat;
  background-size: contain;
}

@media screen and (max-width: 751px) {
  #special #radio_update_infomation .movie:before {
    top: -30.66667vw;
    left: -8.66667vw;
    width: 27.6vw;
    height: 27.86667vw;
    background: url("../../images/special/sp_radio_badge.png") 0 0 no-repeat;
    background-size: contain;
  }
}

#special #radio_update_infomation dl {
  margin: 0 0 0 34px;
}

@media screen and (max-width: 751px) {
  #special #radio_update_infomation dl {
    margin: 3.33333vw auto 0;
    width: 80.66667vw;
  }
}

#special #radio_update_infomation dl dt {
  font-size: 20px;
  line-height: 1.5;
  font-weight: bold;
}

@media screen and (max-width: 751px) {
  #special #radio_update_infomation dl dt {
    font-size: 3.2vw;
    line-height: 1.5;
  }
}

#special #radio_update_infomation dl dt .date {
  display: inline-block;
  padding: 0 0 5px;
  color: #ff0000;
}

@media screen and (max-width: 751px) {
  #special #radio_update_infomation dl dt .date {
    padding: 0 0 1.33333vw;
  }
}

#special #radio_update_infomation dl dd {
  padding: 10px 0 0;
  font-size: 20px;
  line-height: 1.5;
}

@media screen and (max-width: 751px) {
  #special #radio_update_infomation dl dd {
    padding: 1.33333vw 0 0;
    font-size: 3.2vw;
    line-height: 1.5;
  }
}

#special #radio_update_personality {
  padding: 35px 0 0;
}

@media screen and (max-width: 751px) {
  #special #radio_update_personality {
    padding: 6.66667vw 0 0;
  }
}

#special #radio_update_personality h3 {
  text-align: center;
}

#special #radio_update_personality ul {
  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;
  padding: 20px 0 0;
}

@media screen and (max-width: 751px) {
  #special #radio_update_personality ul {
    padding: 4.66667vw 0 0;
  }
}

#special #radio_update_personality ul li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

@media screen and (max-width: 751px) {
  #special #radio_update_personality ul li {
    display: block;
    text-align: center;
  }
}

#special #radio_update_personality ul li:last-child {
  margin: 0 0 0 30px;
}

@media screen and (max-width: 751px) {
  #special #radio_update_personality ul li:last-child {
    margin: 0 0 0 12vw;
  }
}

#special #radio_update_personality ul li figure {
  width: 200px;
  height: 300px;
  text-align: center;
}

@media screen and (max-width: 751px) {
  #special #radio_update_personality ul li figure {
    width: 26.66667vw;
    height: 40vw;
  }
}

#special #radio_update_personality ul li dl {
  margin: 0 0 0 20px;
}

@media screen and (max-width: 751px) {
  #special #radio_update_personality ul li dl {
    margin: 2.66667vw 0 0;
  }
}

#special #radio_update_personality ul li dl dt {
  font-size: 18px;
  line-height: 1.38889;
  font-weight: bold;
}

@media screen and (max-width: 751px) {
  #special #radio_update_personality ul li dl dt {
    font-size: 3.2vw;
    line-height: 1;
  }
}

#special #radio_update_personality ul li dl dd {
  font-size: 14px;
  line-height: 1.38889;
}

@media screen and (max-width: 751px) {
  #special #radio_update_personality ul li dl dd {
    font-size: 2.66667vw;
    line-height: 1.5;
  }
}

#special #radio_update_history {
  padding: 40px 0 0;
}

@media screen and (max-width: 751px) {
  #special #radio_update_history {
    padding: 10vw 0 0;
  }
}

#special #radio_update_history h3 {
  text-align: center;
}

#special #radio_update_history ul {
  margin: 20px auto 0;
  width: 800px;
}

@media screen and (max-width: 751px) {
  #special #radio_update_history ul {
    margin: 5.33333vw auto 0;
    width: 81.33333vw;
  }
}

#special #radio_update_history ul li {
  width: 800px;
  text-align: center;
  position: relative;
  cursor: pointer;
}

@media screen and (max-width: 751px) {
  #special #radio_update_history ul li {
    width: 81.33333vw;
  }
}

#special #radio_detail {
  margin: 0 auto;
  padding: 75px 0 0;
  width: 1000px;
}

@media screen and (max-width: 751px) {
  #special #radio_detail {
    padding: 14vw 5.33333vw 0;
    width: 100%;
  }
}

#special #radio_detail h3 {
  position: relative;
  margin: 10px 0 0;
  padding: 0 0 20px 92px;
  font-size: 20px;
  line-height: 1;
  font-weight: bold;
}

@media screen and (max-width: 751px) {
  #special #radio_detail h3 {
    margin: 0;
    padding: 0 0 2.66667vw;
    font-size: 4vw;
    line-height: 1;
    text-align: center;
  }
}

#special #radio_detail h3:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 994px;
  height: 32px;
  background: url("../../images/special/line.png") 0 0 no-repeat;
  background-size: 100% auto;
}

@media screen and (max-width: 751px) {
  #special #radio_detail h3:after {
    left: -2.66667vw;
    width: 87.46667vw;
    height: 4.93333vw;
    background: url("../../images/special/sp_line.png") 0 0 no-repeat;
    background-size: 100% auto;
  }
}

#special #radio_detail p {
  padding: 30px 0 0;
  font-size: 16px;
  line-height: 1.875;
}

@media screen and (max-width: 751px) {
  #special #radio_detail p {
    padding: 6vw 0 0;
    font-size: 3.2vw;
    line-height: 1.75;
  }
}

#special #radio_detail h4 {
  padding: 40px 0;
  font-size: 30px;
  line-height: 1;
  font-weight: bold;
  color: #2654a9;
  text-align: center;
}

@media screen and (max-width: 751px) {
  #special #radio_detail h4 {
    padding: 5.33333vw 0 2vw;
    font-size: 4.8vw;
    line-height: 1.27778;
  }
}

#special #radio_detail #present {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

@media screen and (max-width: 751px) {
  #special #radio_detail #present {
    display: block;
  }
}

#special #radio_detail #present figure {
  width: 460px;
  height: 210px;
  background: #ccc;
  font-size: 30px;
  line-height: 210px;
  text-align: center;
}

@media screen and (max-width: 751px) {
  #special #radio_detail #present figure {
    width: 81.33333vw;
    height: 38.66667vw;
    line-height: 38.66667vw;
  }
}

#special #radio_detail #present p {
  padding: 0 0 0 35px;
}

@media screen and (max-width: 751px) {
  #special #radio_detail #present p {
    padding: 2.66667vw 0 0;
  }
}

#special #radio_detail #present p a {
  color: #0054ff;
}

#special #radio_corner {
  margin: 0 auto;
  padding: 80px 0 0;
  width: 1000px;
}

@media screen and (max-width: 751px) {
  #special #radio_corner {
    padding: 9.33333vw 5.33333vw 0;
    width: 100%;
  }
}

#special #radio_corner h3 {
  position: relative;
  margin: 10px 0 0;
  padding: 0 0 20px 92px;
  font-size: 20px;
  line-height: 1;
  font-weight: bold;
}

@media screen and (max-width: 751px) {
  #special #radio_corner h3 {
    margin: 0;
    padding: 0 0 2.66667vw;
    font-size: 4vw;
    line-height: 1;
    text-align: center;
  }
}

#special #radio_corner h3:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 994px;
  height: 32px;
  background: url("../../images/special/line.png") 0 0 no-repeat;
  background-size: 100% auto;
}

@media screen and (max-width: 751px) {
  #special #radio_corner h3:after {
    left: -2.66667vw;
    width: 87.46667vw;
    height: 4.93333vw;
    background: url("../../images/special/sp_line.png") 0 0 no-repeat;
    background-size: 100% auto;
  }
}

#special #radio_corner ol {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

@media screen and (max-width: 751px) {
  #special #radio_corner ol {
    display: block;
  }
}

#special #radio_corner ol li {
  padding: 50px 0 0;
  width: 44%;
}

@media screen and (max-width: 751px) {
  #special #radio_corner ol li {
    padding: 8.66667vw 0 0;
    width: 100%;
  }
  #special #radio_corner ol li:first-child {
    padding: 5.33333vw 0 0;
  }
}

#special #radio_corner ol li figure {
  margin: 0 0 -40px;
}

@media screen and (max-width: 751px) {
  #special #radio_corner ol li figure {
    margin: 0 0 -4.66667vw;
  }
}

#special #radio_corner ol li dl {
  position: relative;
  z-index: 2;
}

#special #radio_corner ol li dl dt {
  padding: 10px 0;
  border-radius: 6px;
  background: #2654a9;
  font-size: 18px;
  line-height: 1;
  font-weight: bold;
  color: #fff;
  text-align: center;
}

@media screen and (max-width: 751px) {
  #special #radio_corner ol li dl dt {
    padding: 2vw 0;
    border-radius: 0.8vw;
    font-size: 4vw;
    line-height: 1;
  }
}

#special #radio_corner ol li dl dd {
  padding: 10px 0 0;
  font-size: 16px;
  line-height: 1.75;
}

@media screen and (max-width: 751px) {
  #special #radio_corner ol li dl dd {
    padding: 3.33333vw 0 0;
    font-size: 3.2vw;
    line-height: 1.75;
  }
}

/*# sourceMappingURL=special.css.map */
/*------------------------------------------------------------
	BASE
------------------------------------------------------------*/
/*------------------------------------------------------------
	COLOR
------------------------------------------------------------*/
/*------------------------------------------------------------
	FUNCTION
------------------------------------------------------------*/
/*------------------------------------------------------------
	MIXIN
------------------------------------------------------------*/
/*------------------------------------------------------------
	STAFF
------------------------------------------------------------*/
#staff {
  background: #fdfff7 url("../../images/common/bg.png") center 0 repeat-y;
}

@media screen and (max-width: 751px) {
  #staff {
    background: #fdfff7 url("../../images/common/sp_bg.png") center 0 repeat-y;
    background-size: 100% auto;
  }
}

#staff_contents {
  padding: 70px 0 150px;
}

@media screen and (max-width: 751px) {
  #staff_contents {
    padding: 6vw 0 13.33333vw;
  }
  #staff_contents .breadcrumbs {
    padding: 0 5.33333vw;
  }
}

#staff_contents .title {
  position: relative;
  z-index: 2;
  text-align: center;
}

#staff_contents .inner #staff_cast {
  position: relative;
  margin: 40px auto 0;
  padding: 0 90px 70px;
  width: 1000px;
  border-radius: 80px 20px 68px 20px;
  border: 1px solid rgba(186, 189, 255, 0.25);
  background: -webkit-linear-gradient(rgba(255, 255, 255, 0.95), rgba(255, 255, 255, 0.75));
  background: linear-gradient(rgba(255, 255, 255, 0.95), rgba(255, 255, 255, 0.75));
}

@media screen and (max-width: 751px) {
  #staff_contents .inner #staff_cast {
    padding: 0 5.33333vw 13.33333vw;
    width: 92vw;
    border-radius: 10.66667vw 2.66667vw 9.06667vw 2.66667vw;
  }
}

#staff_contents .inner #staff_cast:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 80px 20px 68px 20px;
  box-shadow: 0px 0px 10px 0px rgba(186, 189, 255, 0.5);
  background: rgba(255, 255, 255, 0.01);
  pointer-events: none;
}

@media screen and (max-width: 751px) {
  #staff_contents .inner #staff_cast:before {
    border-radius: 10.66667vw 2.66667vw 9.06667vw 2.66667vw;
  }
}

#staff_contents .inner #staff_cast h2 {
  position: relative;
  margin: 50px auto 0;
  padding: 0 0 15px;
  width: 700px;
  font-size: 24px;
  line-height: 1.2;
  font-weight: bold;
}

@media screen and (max-width: 751px) {
  #staff_contents .inner #staff_cast h2 {
    margin: 8vw auto 0;
    padding: 0 0 2.66667vw;
    width: 80vw;
    font-size: 4vw;
    line-height: 1.2;
  }
}

#staff_contents .inner #staff_cast h2:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: -93px;
  width: 844px;
  height: 32px;
  background: url("../../images/common/line.png") 0 0 no-repeat;
  background-size: 100% 100%;
}

@media screen and (max-width: 751px) {
  #staff_contents .inner #staff_cast h2:after {
    left: -4vw;
    width: 87.73333vw;
    height: 8.8vw;
    background: url("../../images/common/sp_line.png") 0 0 no-repeat;
    background-size: 100% 100%;
  }
}

#staff_contents .inner #staff_cast dl {
  margin: 0 auto;
  width: 700px;
}

@media screen and (max-width: 751px) {
  #staff_contents .inner #staff_cast dl {
    width: 80vw;
  }
}

#staff_contents .inner #staff_cast dl dt {
  padding: 30px 0 0;
  font-size: 20px;
  line-height: 1.5;
  font-weight: bold;
}

@media screen and (max-width: 751px) {
  #staff_contents .inner #staff_cast dl dt {
    padding: 4.66667vw 0 0;
    font-size: 3.73333vw;
    line-height: 1.42857;
  }
}

#staff_contents .inner #staff_cast dl dd {
  padding: 10px 0 0;
  font-size: 16px;
  line-height: 1.75;
}

@media screen and (max-width: 751px) {
  #staff_contents .inner #staff_cast dl dd {
    padding: 2.66667vw 0 0;
    font-size: 2.66667vw;
    line-height: 1.42857;
  }
}

#staff_contents .inner #staff_cast dl dd span {
  position: relative;
  display: inline-block;
}

#staff_contents .inner #staff_cast dl dd span ruby {
  position: absolute;
  top: -10px;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  white-space: nowrap;
  font-size: 10px;
}

#staff_contents .inner #staff_cast p {
  margin: 0 auto;
  padding: 30px 0 0;
  width: 700px;
  font-size: 16px;
  line-height: 1.75;
  letter-spacing: -0.1px;
}

@media screen and (max-width: 751px) {
  #staff_contents .inner #staff_cast p {
    padding: 2.66667vw 0 0;
    width: 80vw;
    font-size: 2.66667vw;
    line-height: 1.42857;
  }
}

#staff_contents .inner #staff_cast .order {
  font-size: 11px;
}

@media screen and (max-width: 751px) {
  #staff_contents .inner #staff_cast .order {
    font-size: 14;
  }
}

#staff_contents .inner #staff_cast .andmore {
  display: inline-block;
  padding: 20px 0 0;
}

@media screen and (max-width: 751px) {
  #staff_contents .inner #staff_cast .andmore {
    padding: 2.66667vw 0 0;
  }
}

/*# sourceMappingURL=staff.css.map */
/*------------------------------------------------------------
	BASE
------------------------------------------------------------*/
/*------------------------------------------------------------
	COLOR
------------------------------------------------------------*/
/*------------------------------------------------------------
	FUNCTION
------------------------------------------------------------*/
/*------------------------------------------------------------
	MIXIN
------------------------------------------------------------*/
/*------------------------------------------------------------
	SYSTEM
------------------------------------------------------------*/
#system {
  background: #fdfff7 url("../../images/common/bg.png") center 0 repeat-y;
}

@media screen and (max-width: 751px) {
  #system {
    background: #fdfff7 url("../../images/common/sp_bg.png") center 0 repeat-y;
    background-size: 100% auto;
  }
}

#system_contents {
  padding: 70px 0 210px;
}

@media screen and (max-width: 751px) {
  #system_contents {
    padding: 6vw 0 13.33333vw;
  }
  #system_contents .breadcrumbs {
    padding: 0 5.33333vw;
  }
}

#system_contents .title {
  position: relative;
  z-index: 2;
  text-align: center;
}

#system_contents .system_block {
  position: relative;
  margin: 100px auto 0;
  width: 1200px;
  border-radius: 10px;
  border: 1px solid rgba(186, 189, 255, 0.25);
  background: -webkit-linear-gradient(rgba(255, 255, 255, 0.95), rgba(255, 255, 255, 0.75));
  background: linear-gradient(rgba(255, 255, 255, 0.95), rgba(255, 255, 255, 0.75));
}

@media screen and (max-width: 751px) {
  #system_contents .system_block {
    margin: 4vw auto 0;
    width: 92vw;
    border-radius: 2.66667vw;
  }
}

#system_contents .system_block:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 10px;
  box-shadow: 0px 0px 10px 0px rgba(186, 189, 255, 0.5);
  background: rgba(255, 255, 255, 0.01);
}

@media screen and (max-width: 751px) {
  #system_contents .system_block:before {
    border-radius: 2.66667vw;
  }
}

#system_contents .system_block h2 {
  padding: 16px 0;
  background: url("../../images/world/bg_title.png") 0 0 no-repeat;
  background-size: 100% 100%;
  text-align: center;
}

@media screen and (max-width: 751px) {
  #system_contents .system_block h2 {
    padding: 4vw 0;
    background: url("../../images/world/sp_bg_title.png") 0 0 no-repeat;
    background-size: 100% 100%;
  }
}

#system_contents .system_block p {
  margin: 0 auto;
  padding: 80px 0 70px;
  width: 1000px;
  font-size: 16px;
  line-height: 1.875;
}

@media screen and (max-width: 751px) {
  #system_contents .system_block p {
    padding: 12vw 5.33333vw 5.33333vw;
    width: 100%;
    font-size: 3.2vw;
    line-height: 1.75;
  }
}

#system_contents .system_block p span {
  color: #187fc4;
  font-weight: 700;
}

#system_contents .system_block .system_swiper {
  position: relative;
}

@media screen and (max-width: 751px) {
  #system_contents .system_block .system_swiper {
    width: 100%;
  }
}

#system_contents .system_block .system_swiper .swiper-container {
  padding: 35px 0 20px;
}

@media screen and (max-width: 751px) {
  #system_contents .system_block .system_swiper .swiper-container {
    padding: 4vw 0 2.66667vw;
  }
}

#system_contents
.system_block
.system_swiper
.swiper-container
.swiper-wrapper {
  margin: 0 auto;
  width: 1024px;
  height: 486px;
}

@media screen and (max-width: 751px) {
  #system_contents
.system_block
.system_swiper
.swiper-container
.swiper-wrapper {
    width: 100%;
    height: 39.73333vw;
  }
}

#system_contents
.system_block
.system_swiper
.swiper-container
.swiper-wrapper
.swiper-slide {
  padding: 9px 0 0;
}

@media screen and (max-width: 751px) {
  #system_contents
.system_block
.system_swiper
.swiper-container
.swiper-wrapper
.swiper-slide {
    padding: 2vw 0 0;
    width: 82.13333vw;
    height: 39.73333vw;
    text-align: center;
  }
}

#system_contents
.system_block
.system_swiper
.swiper-container
.swiper-wrapper
.swiper-slide:after {
  content: "";
  display: block;
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  width: 1024px;
  height: 486px;
}

@media screen and (max-width: 751px) {
  #system_contents
.system_block
.system_swiper
.swiper-container
.swiper-wrapper
.swiper-slide:after {
    width: 82.13333vw;
    height: 39.73333vw;
  }
}

@media screen and (max-width: 751px) {
  #system_contents
.system_block
.system_swiper
.swiper-container
.swiper-wrapper
.swiper-slide
img {
    width: auto;
    height: 39.73333vw;
  }
}

#system_contents .system_block .system_swiper .swiper-pagination {
  position: relative;
}

#system_contents .system_block .system_swiper .swiper-pagination span {
  margin: 0 2px;
  border-radius: 5px;
  border: 2px solid #ccc;
  width: 92px;
  height: 46px;
  outline: 0;
  opacity: 1;
}

@media screen and (max-width: 751px) {
  #system_contents .system_block .system_swiper .swiper-pagination span {
    margin: 0 0.53333vw;
    border-radius: 0.66667vw;
    border: 0.26667vw solid #ccc;
    width: 12.26667vw;
    height: 6.13333vw;
  }
}

#system_contents
.system_block
.system_swiper
.swiper-pagination
span.swiper-pagination-bullet-active {
  border: 2px solid #26e4c5;
}

@media screen and (max-width: 751px) {
  #system_contents
.system_block
.system_swiper
.swiper-pagination
span.swiper-pagination-bullet-active {
    border: 0.26667vw solid #26e4c5;
  }
}

#system_contents .system_block .system_swiper .swiper-button-prev {
  left: 30px;
}

@media screen and (max-width: 751px) {
  #system_contents .system_block .system_swiper .swiper-button-prev {
    top: 50%;
    left: -1.33333vw;
    -webkit-transform: translateY(-20%);
        -ms-transform: translateY(-20%);
            transform: translateY(-20%);
  }
}

#system_contents .system_block .system_swiper .swiper-button-prev:after {
  display: none;
}

#system_contents .system_block .system_swiper .swiper-button-prev:focus {
  border: none;
  outline: 0;
}

#system_contents .system_block .system_swiper .swiper-button-next {
  right: 30px;
}

@media screen and (max-width: 751px) {
  #system_contents .system_block .system_swiper .swiper-button-next {
    top: 50%;
    right: -1.33333vw;
    -webkit-transform: translateY(-20%);
        -ms-transform: translateY(-20%);
            transform: translateY(-20%);
  }
}

#system_contents .system_block .system_swiper .swiper-button-next:after {
  display: none;
}

#system_contents .system_block .system_swiper .swiper-button-next:focus {
  border: none;
  outline: 0;
}

#system_contents .system_block .system_swiper .swiper-button-next img {
  -webkit-transform: scale(-1, 1);
      -ms-transform: scale(-1, 1);
          transform: scale(-1, 1);
}

#system_contents .system_block#system1 {
  margin-top: 50px;
}

#system_contents
.system_block#system1
.system_swiper
.swiper-pagination
span:nth-child(1) {
  background: #fff url("../../images/system/game_thumb1.jpg") 0 0 no-repeat;
  background-size: contain;
}

#system_contents
.system_block#system1
.system_swiper
.swiper-pagination
span:nth-child(2) {
  background: #fff url("../../images/system/game_thumb2.jpg") 0 0 no-repeat;
  background-size: contain;
}

#system_contents
.system_block#system1
.system_swiper
.swiper-pagination
span:nth-child(3) {
  background: #fff url("../../images/system/game_thumb3.jpg") 0 0 no-repeat;
  background-size: contain;
}

#system_contents
.system_block#system1
.system_swiper
.swiper-pagination
span:nth-child(4) {
  background: #fff url("../../images/system/game_thumb4.jpg") 0 0 no-repeat;
  background-size: contain;
}

#system_contents
.system_block#system2
.system_swiper
.swiper-pagination
span:nth-child(1) {
  background: #fff url("../../images/system/skill_thumb1.jpg") 0 0 no-repeat;
  background-size: contain;
}

#system_contents
.system_block#system2
.system_swiper
.swiper-pagination
span:nth-child(2) {
  background: #fff url("../../images/system/skill_thumb2.jpg") 0 0 no-repeat;
  background-size: contain;
}

#system_contents
.system_block#system2
.system_swiper
.swiper-pagination
span:nth-child(3) {
  background: #fff url("../../images/system/skill_thumb3.jpg") 0 0 no-repeat;
  background-size: contain;
}

#system_contents
.system_block#system2
.system_swiper
.swiper-pagination
span:nth-child(4) {
  background: #fff url("../../images/system/skill_thumb4.jpg") 0 0 no-repeat;
  background-size: contain;
}

#system_contents
.system_block#system2
.system_swiper
.swiper-pagination
span:nth-child(5) {
  background: #fff url("../../images/system/skill_thumb5.jpg") 0 0 no-repeat;
  background-size: contain;
}

#system_contents
.system_block#system3
.system_swiper
.swiper-pagination
span:nth-child(1) {
  background: #fff url("../../images/system/ult_thumb1.jpg") 0 0 no-repeat;
  background-size: contain;
}

#system_contents
.system_block#system3
.system_swiper
.swiper-pagination
span:nth-child(2) {
  background: #fff url("../../images/system/ult_thumb2.jpg") 0 0 no-repeat;
  background-size: contain;
}

#system_contents
.system_block#system3
.system_swiper
.swiper-pagination
span:nth-child(3) {
  background: #fff url("../../images/system/ult_thumb3.jpg") 0 0 no-repeat;
  background-size: contain;
}

#system_contents
.system_block#system3
.system_swiper
.swiper-pagination
span:nth-child(4) {
  background: #fff url("../../images/system/ult_thumb4.jpg") 0 0 no-repeat;
  background-size: contain;
}

#system_contents
.system_block#system3
.system_swiper
.swiper-pagination
span:nth-child(5) {
  background: #fff url("../../images/system/ult_thumb5.jpg") 0 0 no-repeat;
  background-size: contain;
}

#system_contents
.system_block#system4
.system_swiper
.swiper-pagination
span:nth-child(1) {
  background: #fff url("../../images/system/train_thumb1.jpg") 0 0 no-repeat;
  background-size: contain;
}

#system_contents
.system_block#system4
.system_swiper
.swiper-pagination
span:nth-child(2) {
  background: #fff url("../../images/system/train_thumb2.jpg") 0 0 no-repeat;
  background-size: contain;
}

/*# sourceMappingURL=system.css.map */
/*------------------------------------------------------------
	BASE
------------------------------------------------------------*/
/*------------------------------------------------------------
	COLOR
------------------------------------------------------------*/
/*------------------------------------------------------------
	FUNCTION
------------------------------------------------------------*/
/*------------------------------------------------------------
	MIXIN
------------------------------------------------------------*/
/*------------------------------------------------------------
	SUPPORT
------------------------------------------------------------*/
#staff_contents .inner #staff_cast .capt-content {
  line-height: 1.2;
  font-weight: bold;
}

.support-inner {
  text-align: left;
}

.support-inner input, .support-inner textarea, .support-inner select {
  display: block;
  width: 100%;
  min-height: 2em;
  padding: .2em .5em;
}

.support-inner .checkbox {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 1em 0 0;
}

.support-inner .checkbox input {
  width: unset;
  width: 2em;
  height: 2em;
}

.support-inner .checkbox label {
  text-decoration: underline;
}

.support-inner .strong {
  color: #ea617b;
}

.support-inner .wrap-btn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.support-inner .wrap-btn .btn {
  margin: .5em;
}

.support-inner .btn {
  display: block;
  margin: 0 auto;
  padding: 18px 0;
  width: 230px;
  height: 54px;
  border: 2px solid #2481c1;
  background: #2481c1;
  font-size: 18px;
  line-height: 1;
  text-align: center;
  color: #fff;
  -webkit-transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
  transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
}

@media screen and (max-width: 751px) {
  .support-inner .btn {
    padding: 4vw;
    width: 50vw;
    height: 11.73333vw;
    font-size: 4vw;
    line-height: 1;
  }
}

.support-inner .btn:hover {
  background: #fff;
  color: #2481c1;
}

.support-inner .error-list {
  line-height: 1.8;
  list-style-type: disc;
  color: #ea617b;
  padding-bottom: 2em;
}

.support-inner a {
  text-decoration: underline !important;
  color: #2481c1;
}

.support-inner .capt-content {
  color: #005ac4;
}

.support-inner .support-tx .support-ttl {
  font-weight: bold;
  background-image: -webkit-linear-gradient(left, #005ac4, #b5f4ef);
  background-image: linear-gradient(to right, #005ac4, #b5f4ef);
  background-repeat: no-repeat;
  background-size: 100% 10%;
  background-position: bottom;
  display: block;
}

.support-inner .support-tx ul {
  list-style: inside none;
}

.support-inner .support-tx ul .list-policy li {
  counter-increment: count;
}

.support-inner .support-tx ul .list-policy li:before {
  content: "（" counter(count) "）";
}

.support-inner .support-tx ul .tx-link {
  color: #005ac4;
  position: relative;
}

.support-inner .support-tx ul .tx-link:hover {
  color: #002148;
}

@media screen and (max-width: 751px) {
  #staff_contents .inner #staff_cast .capt-content {
    margin: 8vw auto 5vw;
    padding: 0 0 2.66667vw 3vw;
    width: 80vw;
    font-size: 2.6vw;
  }
  #staff_contents .inner #staff_cast .capt-content {
    left: -4vw;
    background: url(../../images/common/sp_line.png) 0 0 no-repeat;
    background-size: 100% 100%;
  }
  .support-inner {
    font-size: 2.6vw;
  }
  .support-inner .support-ttl {
    margin-bottom: 2vw;
  }
  .support-inner .support-tx {
    line-height: 1.6em;
    margin-bottom: 5vw;
  }
}

@media screen and (min-width: 752px) {
  #staff_contents .inner #staff_cast .capt-content {
    position: relative;
    margin: 50px auto 40px;
    padding: 0 0 15px;
    width: 700px;
    font-size: 18px;
  }
  #staff_contents .inner #staff_cast .capt-content:after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: -93px;
    width: 844px;
    height: 32px;
    background: url(../../images/common/line.png) 0 0 no-repeat;
    background-size: 100% 100%;
  }
  .support-inner {
    font-size: 14px;
  }
  .support-inner .support-ttl {
    margin-bottom: 10px;
  }
  .support-inner .support-tx {
    line-height: 1.8em;
    margin-bottom: 40px;
  }
}

/*# sourceMappingURL=support.css.map */
/*------------------------------------------------------------
	BASE
------------------------------------------------------------*/
/*------------------------------------------------------------
	COLOR
------------------------------------------------------------*/
/*------------------------------------------------------------
	FUNCTION
------------------------------------------------------------*/
/*------------------------------------------------------------
	MIXIN
------------------------------------------------------------*/
/*------------------------------------------------------------
	WORLD
------------------------------------------------------------*/
#world {
  background: #fdfff7 url("../../images/common/bg.png") center 0 repeat-y;
}

@media screen and (max-width: 751px) {
  #world {
    background: #fdfff7 url("../../images/common/sp_bg.png") center 0 repeat-y;
    background-size: 100% auto;
  }
}

#world_contents {
  padding: 70px 0 210px;
}

@media screen and (max-width: 751px) {
  #world_contents {
    padding: 6vw 0 13.33333vw;
  }
  #world_contents .breadcrumbs {
    padding: 0 5.33333vw;
  }
}

#world_contents .title {
  position: relative;
  z-index: 2;
  text-align: center;
}

#world_contents #subnavi {
  padding: 20px 0 30px;
}

@media screen and (max-width: 751px) {
  #world_contents #subnavi {
    padding: 4.66667vw 0 8vw;
  }
}

#world_contents #subnavi ul {
  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;
}

@media screen and (max-width: 751px) {
  #world_contents #subnavi ul {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    width: 100%;
  }
}

#world_contents #subnavi ul li {
  padding: 0 5px;
}

@media screen and (max-width: 751px) {
  #world_contents #subnavi ul li {
    padding: 1.33333vw 0.66667vw 0;
  }
}

#world_contents #subnavi ul li:nth-child(1) a:before {
  background: url("../../images/world/subnavi1.png") center 0 no-repeat;
}

#world_contents #subnavi ul li:nth-child(2) a:before {
  background: url("../../images/world/subnavi2.png") center 0 no-repeat;
}

#world_contents #subnavi ul li:nth-child(3) a:before {
  background: url("../../images/world/subnavi3.png") center 0 no-repeat;
}

#world_contents #subnavi ul li:nth-child(4) a:before {
  background: url("../../images/world/subnavi4.png") center 0 no-repeat;
}

@media screen and (max-width: 751px) {
  #world_contents #subnavi ul li:nth-child(1) a:before {
    background: url("../../images/world/sp_subnavi1.png") center 0 no-repeat;
  }
  #world_contents #subnavi ul li:nth-child(2) a:before {
    background: url("../../images/world/sp_subnavi2.png") center 0 no-repeat;
  }
  #world_contents #subnavi ul li:nth-child(3) a:before {
    background: url("../../images/world/sp_subnavi3.png") center 0 no-repeat;
  }
  #world_contents #subnavi ul li:nth-child(4) a:before {
    background: url("../../images/world/sp_subnavi4.png") center 0 no-repeat;
  }
}

#world_contents #subnavi ul li a {
  position: relative;
  display: block;
}

#world_contents #subnavi ul li a:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
  transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
}

#world_contents #subnavi ul li a img {
  position: relative;
  z-index: 2;
  opacity: 0;
  -webkit-transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
  transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
}

.pc #world_contents #subnavi ul li a:hover,
#world_contents #subnavi ul li a.current {
  background-position: 0 -100px;
}

.pc #world_contents #subnavi ul li a:hover:before,
#world_contents #subnavi ul li a.current:before {
  opacity: 0;
}

.pc #world_contents #subnavi ul li a:hover img,
#world_contents #subnavi ul li a.current img {
  opacity: 1;
}

#world #about {
  position: relative;
  margin: 0 auto;
  width: 1200px;
  border-radius: 10px;
  border: 1px solid rgba(186, 189, 255, 0.25);
  background: -webkit-linear-gradient(rgba(255, 255, 255, 0.95), rgba(255, 255, 255, 0.75));
  background: linear-gradient(rgba(255, 255, 255, 0.95), rgba(255, 255, 255, 0.75));
}

@media screen and (max-width: 751px) {
  #world #about {
    margin: 0 auto;
    width: 92vw;
    border-radius: 2.66667vw;
  }
}

#world #about:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 10px;
  box-shadow: 0px 0px 10px 0px rgba(186, 189, 255, 0.5);
  background: rgba(255, 255, 255, 0.01);
}

@media screen and (max-width: 751px) {
  #world #about:before {
    border-radius: 2.66667vw;
  }
}

#world #about h2 {
  padding: 16px 0;
  background: url("../../images/world/bg_title.png") 0 0 no-repeat;
  background-size: 100% 100%;
  text-align: center;
}

@media screen and (max-width: 751px) {
  #world #about h2 {
    padding: 4vw 0;
    background: url("../../images/world/sp_bg_title.png") 0 0 no-repeat;
    background-size: 100% 100%;
  }
}

#world #about1 {
  padding: 55px 50px 0 0;
  background: url("../../images/world/about_img1.png") 0 0 no-repeat;
}

@media screen and (max-width: 751px) {
  #world #about1 {
    padding: 8vw 5.33333vw 0;
    background: url("../../images/world/sp_about_img1.png") center 189.06667vw no-repeat;
  }
}

#world #about1 h3 {
  padding: 0 0 0 618px;
}

@media screen and (max-width: 751px) {
  #world #about1 h3 {
    padding: 0;
  }
}

#world #about1 p {
  padding: 50px 0 50px 618px;
}

@media screen and (max-width: 751px) {
  #world #about1 p {
    padding: 4vw 0 132.26667vw;
  }
}

#world #about2 {
  position: relative;
  padding: 50px 0 516px 50px;
  background: url("../../images/world/about_img3.png") center 765px no-repeat;
}

@media screen and (max-width: 751px) {
  #world #about2 {
    padding: 0 5.33333vw 57.86667vw;
    background: url("../../images/world/sp_about_img3.png") center 209.6vw no-repeat;
  }
}

#world #about2:before {
  content: "";
  display: block;
  position: absolute;
  top: -278px;
  right: -109px;
  width: 712px;
  height: 792px;
  background: url("../../images/world/about_img2.png") 0 0 no-repeat;
}

@media screen and (max-width: 751px) {
  #world #about2:before {
    top: -10vw;
    right: auto;
    left: 50%;
    width: 94.93333vw;
    height: 46.93333vw;
    background: url("../../images/world/sp_about_img2.png") 0 0 no-repeat;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

@media screen and (max-width: 751px) {
  #world #about2 h3 {
    padding: 44vw 0 0;
  }
}

#world #about2 p {
  padding: 55px 0 0;
}

@media screen and (max-width: 751px) {
  #world #about2 p {
    padding: 6.66667vw 0 0;
  }
}

#world #gift {
  position: relative;
  margin: 0 auto;
  width: 1200px;
  border-radius: 10px;
  border: 1px solid rgba(186, 189, 255, 0.25);
  background: -webkit-linear-gradient(rgba(255, 255, 255, 0.95), rgba(255, 255, 255, 0.75));
  background: linear-gradient(rgba(255, 255, 255, 0.95), rgba(255, 255, 255, 0.75));
}

@media screen and (max-width: 751px) {
  #world #gift {
    margin: 0 auto;
    width: 92vw;
    border-radius: 2.66667vw;
  }
}

#world #gift:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 10px;
  box-shadow: 0px 0px 10px 0px rgba(186, 189, 255, 0.5);
  background: rgba(255, 255, 255, 0.01);
}

@media screen and (max-width: 751px) {
  #world #gift:before {
    border-radius: 2.66667vw;
  }
}

#world #gift h2 {
  position: relative;
  z-index: 2;
  padding: 16px 0;
  background: url("../../images/world/bg_title.png") 0 0 no-repeat;
  background-size: 100% 100%;
  text-align: center;
}

@media screen and (max-width: 751px) {
  #world #gift h2 {
    padding: 4vw 0;
    background: url("../../images/world/sp_bg_title.png") 0 0 no-repeat;
    background-size: 100% 100%;
  }
}

#world #gift1 {
  position: relative;
  padding: 80px 100px 140px;
}

@media screen and (max-width: 751px) {
  #world #gift1 {
    padding: 8vw 5.33333vw 83.33333vw;
  }
}

#world #gift1:before {
  content: "";
  display: block;
  position: absolute;
  top: -30px;
  right: -20px;
  width: 629px;
  height: 636px;
  background: url("../../images/world/gift_img1.png") 0 0 no-repeat;
  background-size: contain;
}

@media screen and (max-width: 751px) {
  #world #gift1:before {
    top: 70.13333vw;
    right: auto;
    left: 50%;
    width: 68.93333vw;
    height: 69.2vw;
    background: url("../../images/world/sp_gift_img1.png") 0 0 no-repeat;
    background-size: contain;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

#world #gift1 h3 {
  font-size: 20px;
  line-height: 1.8;
  font-weight: bold;
  color: #2654a9;
}

@media screen and (max-width: 751px) {
  #world #gift1 h3 {
    font-size: 4vw;
    line-height: 1.5;
  }
}

#world #gift1 p {
  padding: 30px 0 0;
  font-size: 16px;
  line-height: 1.875;
}

@media screen and (max-width: 751px) {
  #world #gift1 p {
    padding: 6vw 0 0;
    font-size: 3.2vw;
    line-height: 1.75;
  }
}

#world #gift2 h3 {
  padding: 0 0 35px;
  text-align: center;
}

@media screen and (max-width: 751px) {
  #world #gift2 h3 {
    padding: 0 0 8.66667vw;
  }
}

#world #gift2 h4 {
  text-align: center;
}

#world #gift2 p {
  margin: 0 auto;
  padding: 30px 0;
  width: 1080px;
  background: url("../../images/world/gift_txt_bg.png") 0 0 no-repeat;
  background-size: 100% 100%;
  font-size: 18px;
  line-height: 1.77778;
  font-weight: bold;
  color: #fff;
  text-align: center;
}

@media screen and (max-width: 751px) {
  #world #gift2 p {
    padding: 8vw 10.66667vw 6.66667vw;
    width: 89.33333vw;
    background: url("../../images/world/sp_gift_txt_bg.png") 0 0 no-repeat;
    background-size: 100% 100%;
    font-size: 3.2vw;
    line-height: 1.75;
  }
}

#world #gift2 .block1 {
  padding: 0 0 72px;
  background: url("../../images/world/gift_img2.png") center 83px no-repeat;
}

@media screen and (max-width: 751px) {
  #world #gift2 .block1 {
    padding: 0 0 10.13333vw;
    background: url("../../images/world/sp_gift_img2.png") center 9.6vw no-repeat;
  }
}

#world #gift2 .block1 h4 {
  padding: 0 0 364px;
}

@media screen and (max-width: 751px) {
  #world #gift2 .block1 h4 {
    padding: 0 0 29.06667vw;
  }
}

#world #gift2 .block2 {
  padding: 0 0 92px;
  background: url("../../images/world/gift_img3.png") center 100px no-repeat;
}

@media screen and (max-width: 751px) {
  #world #gift2 .block2 {
    padding: 0 0 13.33333vw;
    background: url("../../images/world/sp_gift_img3.png") center 9.6vw no-repeat;
  }
}

#world #gift2 .block2 h4 {
  padding: 0 0 364px;
}

@media screen and (max-width: 751px) {
  #world #gift2 .block2 h4 {
    padding: 0 0 28.8vw;
  }
}

#world #frag {
  position: relative;
  margin: 0 auto;
  padding: 0 0 90px;
  width: 1200px;
  border-radius: 10px;
  border: 1px solid rgba(186, 189, 255, 0.25);
  background: -webkit-linear-gradient(rgba(255, 255, 255, 0.95), rgba(255, 255, 255, 0.75));
  background: linear-gradient(rgba(255, 255, 255, 0.95), rgba(255, 255, 255, 0.75));
}

@media screen and (max-width: 751px) {
  #world #frag {
    margin: 0 auto;
    width: 92vw;
    border-radius: 2.66667vw;
  }
}

#world #frag:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 10px;
  box-shadow: 0px 0px 10px 0px rgba(186, 189, 255, 0.5);
  background: rgba(255, 255, 255, 0.01);
}

@media screen and (max-width: 751px) {
  #world #frag:before {
    border-radius: 2.66667vw;
  }
}

#world #frag h2 {
  position: relative;
  z-index: 2;
  padding: 16px 0;
  background: url("../../images/world/bg_title.png") 0 0 no-repeat;
  background-size: 100% 100%;
  text-align: center;
}

@media screen and (max-width: 751px) {
  #world #frag h2 {
    padding: 4vw 0;
    background: url("../../images/world/sp_bg_title.png") 0 0 no-repeat;
    background-size: 100% 100%;
  }
}

#world #frag .read {
  padding: 80px 0 0;
  font-size: 20px;
  line-height: 1.5;
  font-weight: bold;
  color: #2654a9;
  text-align: center;
}

@media screen and (max-width: 751px) {
  #world #frag .read {
    display: none;
  }
}

#world #frag_list {
  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-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

#world #frag_list .item {
  padding: 85px 0 0;
  text-align: center;
}

@media screen and (max-width: 751px) {
  #world #frag_list .item {
    padding: 6.66667vw 0 0;
  }
}

#world #frag_list .item ul {
  display: inline-block;
}

#world #frag_list .item ul li {
  padding: 10px 0 0;
}

@media screen and (max-width: 751px) {
  #world #frag_list .item ul li {
    padding: 1.33333vw 0 0;
  }
}

#world #frag_list .item ul li:first-child {
  padding: 20px 0 0;
}

@media screen and (max-width: 751px) {
  #world #frag_list .item ul li:first-child {
    padding: 2vw 0 0;
  }
}

#world #frag_list .item ul li dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 430px;
}

@media screen and (max-width: 751px) {
  #world #frag_list .item ul li dl {
    width: 81.33333vw;
  }
}

#world #frag_list .item ul li dl dt {
  padding: 5px 0;
  width: 180px;
  background: url("../../images/world/frag_txt_bg.png") 0 0 no-repeat;
  background-size: 100% 100%;
  font-size: 16px;
  line-height: 1;
  font-weight: bold;
  color: #fff;
  text-align: center;
}

@media screen and (max-width: 751px) {
  #world #frag_list .item ul li dl dt {
    padding: 1.33333vw 0;
    width: 31.33333vw;
    font-size: 3.2vw;
    line-height: 1;
  }
}

#world #frag_list .item ul li dl dd {
  position: relative;
  padding: 5px 10px;
  width: 250px;
  font-size: 16px;
  line-height: 1;
}

@media screen and (max-width: 751px) {
  #world #frag_list .item ul li dl dd {
    padding: 1.33333vw 2.66667vw;
    width: 50vw;
    font-size: 3.2vw;
    line-height: 1;
  }
}

#world #frag_list .item ul li dl dd:before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 2px;
  background: url("../../images/world/frag_txt_line.png") 0 0 no-repeat;
  background-size: 100% 2px;
}

#world #frag .about_frag {
  margin: 0 auto;
  padding: 70px 0 0;
  width: 1000px;
  font-size: 16px;
  line-height: 1.875;
}

@media screen and (max-width: 751px) {
  #world #frag .about_frag {
    display: none;
  }
}

#world #main.story {
  background: -webkit-linear-gradient(#fbffef, rgba(251, 255, 239, 0));
  background: linear-gradient(#fbffef, rgba(251, 255, 239, 0));
}

#world #main.story #world_contents {
  padding-bottom: 0;
  background: url("../../images/world/story_bg.png") center 0 no-repeat;
  background-size: 1920px auto;
}

@media screen and (max-width: 751px) {
  #world #main.story #world_contents {
    background: url("../../images/world/sp_story_bg.png") center 9vw no-repeat;
    background-size: 100% auto, 100% auto;
  }
}

#world #story {
  text-align: center;
}

#world #story h2 {
  padding: 70px 0 70px;
}

@media screen and (max-width: 751px) {
  #world #story h2 {
    padding: 10.66667vw 0 10.66667vw;
  }
}

#world #story .txt0 {
  padding: 0 0 100px;
}

@media screen and (max-width: 751px) {
  #world #story .txt0 {
    padding: 0 0 10.66667vw;
  }
}

#world #story .txt1 {
  padding: 55px 0;
  background: rgba(32, 46, 104, 0.7);
}

@media screen and (max-width: 751px) {
  #world #story .txt1 {
    padding: 8vw 0;
  }
}

#world #story .txt2 {
  position: relative;
  padding: 100px 0;
}

@media screen and (max-width: 751px) {
  #world #story .txt2 {
    padding: 10.4vw;
  }
}

#world #story .txt2:after {
  content: "";
  display: block;
  position: absolute;
  z-index: 10;
  top: 10px;
  left: 50%;
  width: 464px;
  height: 789px;
  background: url("../../images/world/story_img.png") 0 0 no-repeat;
  -webkit-transform: translateX(30%);
      -ms-transform: translateX(30%);
          transform: translateX(30%);
}

@media screen and (max-width: 751px) {
  #world #story .txt2:after {
    top: 25.6vw;
    left: auto;
    right: 0;
    width: 61.86667vw;
    height: 105.2vw;
    background: url("../../images/world/sp_story_img.png") 0 0 no-repeat;
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
  }
}

#world #story .txt3 {
  padding: 60px 0;
  background: rgba(32, 46, 104, 0.7);
}

@media screen and (max-width: 751px) {
  #world #story .txt3 {
    padding: 8vw 0 8.26667vw 8vw;
    text-align: left;
  }
}

#world #story .txt4 {
  padding: 100px 0 574px;
  background: url("../../images/world/story_bg2.png") center 0 repeat-x;
  background-size: 1920px auto;
}

@media screen and (max-width: 751px) {
  #world #story .txt4 {
    position: relative;
    padding: 10.4vw 0 58.4vw;
    background: url("../../images/world/sp_story_bg2.png") center 280px repeat-x;
    background-size: 100% auto;
  }
}

#world #story .txt4 img {
  position: relative;
  z-index: 20;
}

#world #story .txt5 {
  padding: 50px 0 890px;
  background: url("../../images/world/story_bg2.png") center 0 repeat-x;
  background-size: 1920px auto;
}

@media screen and (max-width: 751px) {
  #world #story .txt5 {
    padding: 8vw 0 82.66667vw;
    background: url("../../images/world/sp_story_bg2.png") center 0 repeat-x;
    background-size: 100% auto;
  }
}

/*# sourceMappingURL=world.css.map */
/*------------------------------------------------------------
	BASE
------------------------------------------------------------*/
/*------------------------------------------------------------
	COLOR
------------------------------------------------------------*/
/*------------------------------------------------------------
	FUNCTION
------------------------------------------------------------*/
/*------------------------------------------------------------
	MIXIN
------------------------------------------------------------*/
/*------------------------------------------------------------
	SUPPORT
------------------------------------------------------------*/
#staff_contents .inner #staff_cast .capt-content {
  line-height: 1.2;
  font-weight: bold;
}

.support-inner {
  text-align: left;
}

.support-inner .capt-content {
  color: #005ac4;
}

@media screen and (max-width: 751px) {
  #staff_contents .inner #staff_cast .capt-content {
    margin: 8vw auto 5vw;
    padding: 0 0 2.66667vw 3vw;
    width: 80vw;
    font-size: 2.6vw;
  }
  #staff_contents .inner #staff_cast .capt-content {
    left: -4vw;
    background: url(../../images/common/sp_line.png) 0 0 no-repeat;
    background-size: 100% 100%;
  }
  .support-inner {
    font-size: 2.6vw;
  }
  .support-inner .error-tx {
    line-height: 1.8em;
    margin-bottom: 40px;
    text-align: center;
  }
  .support-inner a {
    text-decoration: none;
  }
  .support-inner .back {
    display: block;
    margin: 0 auto;
    padding: 4vw 0;
    width: 50vw;
    height: 11.73333vw;
    font-size: 4vw;
    line-height: 1;
    border: 2px solid #2481c1;
    background: #2481c1;
    text-align: center;
    color: #fff;
    -webkit-transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
    transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
  }
  .support-inner .back:hover {
    background: #fff;
    color: #2481c1;
  }
  .support-inner .back span {
    position: relative;
    display: inline-block;
  }
}

@media screen and (min-width: 752px) {
  #staff_contents .inner #staff_cast .capt-content {
    position: relative;
    margin: 50px auto 40px;
    padding: 0 0 15px;
    width: 700px;
    font-size: 18px;
  }
  #staff_contents .inner #staff_cast .capt-content:after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: -93px;
    width: 844px;
    height: 32px;
    background: url(../../images/common/line.png) 0 0 no-repeat;
    background-size: 100% 100%;
  }
  .support-inner {
    font-size: 14px;
  }
  .support-inner .error-tx {
    line-height: 1.8em;
    margin-bottom: 40px;
    text-align: center;
  }
  .support-inner a {
    text-decoration: none;
  }
  .support-inner .back {
    display: block;
    margin: 0 auto;
    padding: 18px 0;
    width: 230px;
    height: 54px;
    border: 2px solid #2481c1;
    background: #2481c1;
    font-size: 18px;
    line-height: 1;
    text-align: center;
    color: #fff;
    -webkit-transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
    transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1);
  }
  .support-inner .back:hover {
    background: #fff;
    color: #2481c1;
  }
  .support-inner .back span {
    position: relative;
    display: inline-block;
  }
}

/*# sourceMappingURL=error.css.map */

/*# sourceMappingURL=style.css.map */