.nuxt-progress {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    width: 0;
    opacity: 1;
    transition: width .1s, opacity .4s;
    background-color: #000;
    z-index: 999999
}
.nuxt-progress.nuxt-progress-notransition {
    transition: none
}
.nuxt-progress-failed {
    background-color: red
}
blockquote, body, dd, dl, dt, fieldset, figure, h1, h2, h3, h4, h5, h6, hr, html, iframe, legend, li, ol, p, pre, textarea, ul {
    margin: 0;
    padding: 0
}
body {
    word-break: break-word;
    word-wrap: break-word
}
article, aside, figure, footer, header, hgroup, section {
    display: block
}
h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: 400
}
* {
    box-sizing: border-box
}
:after, :before {
    box-sizing: inherit
}
ul {
    list-style: none
}
table {
    border-collapse: collapse;
    border-spacing: 0
}
td, th {
    padding: 0
}
td:not([align]), th:not([align]) {
    text-align: center;
	padding: 0 15px 10px 0;
}
img {
    height: auto;
    vertical-align: bottom
}
iframe, img {
    border: 0;
    max-width: 100%
}
video {
    height: auto;
    max-width: 100%
}
button, input, select, textarea {
    margin: 0
}
input[type=checkbox], input[type=radio] {
    vertical-align: baseline
}
span {
    font-style: inherit;
    font-weight: inherit
}
[hidden] {
    display: none!important
}
[disabled] {
    cursor: not-allowed
}
:focus:not(.focus-visible), :focus:not(:focus-visible) {
    outline: none
}
@-webkit-keyframes slideDown {
0% {
visibility:visible;
transform:translate3d(0, -100%, 0)
}
to {
transform:translateZ(0)
}
}
@keyframes slideDown {
0% {
visibility:visible;
transform:translate3d(0, -100%, 0)
}
to {
transform:translateZ(0)
}
}
@-webkit-keyframes slideUp {
0% {
visibility:visible;
transform:translateZ(0)
}
to {
transform:translate3d(0, -100%, 0)
}
}
@keyframes slideUp {
0% {
visibility:visible;
transform:translateZ(0)
}
to {
transform:translate3d(0, -100%, 0)
}
}
@-webkit-keyframes fadeIn {
0% {
opacity:0
}
to {
opacity:1
}
}
@keyframes fadeIn {
0% {
opacity:0
}
to {
opacity:1
}
}
@-webkit-keyframes loading {
0%, to {
box-shadow:0 -3em 0 .2em, 2em -2em 0 0, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 0
}
12.5% {
box-shadow:0 -3em 0 0, 2em -2em 0 .2em, 3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em
}
25% {
box-shadow:0 -3em 0 -.5em, 2em -2em 0 0, 3em 0 0 .2em, 2em 2em 0 0, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em
}
37.5% {
box-shadow:0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 0, 2em 2em 0 .2em, 0 3em 0 0, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em
}
50% {
box-shadow:0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 0, 0 3em 0 .2em, -2em 2em 0 0, -3em 0 0 -1em, -2em -2em 0 -1em
}
62.5% {
box-shadow:0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0, -2em 2em 0 .2em, -3em 0 0 0, -2em -2em 0 -1em
}
75% {
box-shadow:0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0 0 .2em, -2em -2em 0 0
}
87.5% {
box-shadow:0 -3em 0 0, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0 0 0, -2em -2em 0 .2em
}
}
@keyframes loading {
0%, to {
box-shadow:0 -3em 0 .2em, 2em -2em 0 0, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 0
}
12.5% {
box-shadow:0 -3em 0 0, 2em -2em 0 .2em, 3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em
}
25% {
box-shadow:0 -3em 0 -.5em, 2em -2em 0 0, 3em 0 0 .2em, 2em 2em 0 0, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em
}
37.5% {
box-shadow:0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 0, 2em 2em 0 .2em, 0 3em 0 0, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em
}
50% {
box-shadow:0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 0, 0 3em 0 .2em, -2em 2em 0 0, -3em 0 0 -1em, -2em -2em 0 -1em
}
62.5% {
box-shadow:0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0, -2em 2em 0 .2em, -3em 0 0 0, -2em -2em 0 -1em
}
75% {
box-shadow:0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0 0 .2em, -2em -2em 0 0
}
87.5% {
box-shadow:0 -3em 0 0, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0 0 0, -2em -2em 0 .2em
}
}
html {
    font-size: 62.5%;
    height: 100%;
    min-height: 100%
}
body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    color: #fff;
    font-family: YuGothic, "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", Meiryo, sans-serif;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.5;
    min-width: 320px;
    overflow: auto
}
p {
    margin: 1.5em 0;
	line-height: 2;
}
a {
    color: currentColor;
    transition: opacity .2s
}
a:hover {
    opacity: .7;
    text-decoration: none
}
@font-face {
    font-family: "snsicon";
    src: url(../fonts/snsicon.ttf) format("truetype"), url(../fonts/snsicon.woff) format("woff"), url(../fonts/snsicon.svg) format("svg");
    font-weight: 400;
    font-style: normal;
    font-display: block
}
.icon {
    font-family: "snsicon"!important;
    font-style: normal;
    font-weight: 400;
    font-feature-settings: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}
.icon-hatena:before {
    content: ""
}
.icon-instagram:before {
    content: ""
}
.icon-facebook:before {
    content: ""
}
.icon-line:before {
    content: ""
}
.icon-youtube:before {
    content: ""
}
.icon-twitter:before {
    content: ""
}
.flex {
    display: flex
}
.flex-wrap {
    flex-wrap: wrap
}
.flex-inline {
    display: inline-flex
}
.flex-inline.justify-center, .flex.justify-center {
    justify-content: center
}
.flex-inline.justify-end, .flex.justify-end {
    justify-content: flex-end
}
.flex-inline.justify-space-between, .flex.justify-space-between {
    justify-content: space-between
}
.flex-inline.align-center, .flex.align-center {
    align-items: center
}
.flex-inline.align-baseline, .flex.align-baseline {
    align-items: baseline
}
.flex-inline .flex-col, .flex .flex-col {
    padding: 1.2rem
}
.flex-inline .col-12, .flex .col-12 {
    width: 100%
}
.flex-inline .col-10, .flex .col-10 {
    width: 83.33%
}
.flex-inline .col-9, .flex .col-9 {
    width: 75%
}
.flex-inline .col-8, .flex .col-8 {
    width: 66.66%
}
.flex-inline .col-7, .flex .col-7 {
    width: 58.33%
}
.flex-inline .col-6, .flex .col-6 {
    width: 50%
}
.flex-inline .col-5, .flex .col-5 {
    width: 41.66%
}
.flex-inline .col-4, .flex .col-4 {
    width: 33.33%
}
.flex-inline .col-3, .flex .col-3 {
    width: 25%
}
.flex-inline .col-2, .flex .col-2 {
    width: 16.66%
}
.flex-inline .col-1, .flex .col-1 {
    width: 8.33%
}
.buttons {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center
}
.buttons.is-left {
    justify-content: flex-start
}
.buttons.is-right {
    justify-content: flex-end
}
.button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: transparent;
    border: 1px solid #fff;
    border-radius: 0;
    box-shadow: none;
    color: #fff;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 1.2;
    outline: none;
    padding: .5em 1.5em;
    position: relative;
    text-align: center;
    text-decoration: none;
    transition: all .2s;
    vertical-align: top
}
.buttons .button {
    margin-bottom: .5em
}
.buttons .button:not(.is-fullwidth), .buttons .button:not(:last-child) {
    margin-right: .5em
}
.button:hover:not(:disabled):not(.is-disabled) {
    border-color: transparent;
    background-color: transparent;
    opacity: 1
}
.button.is-disabled, .button:disabled {
    background-color: #999;
    cursor: default;
    pointer-events: none
}
.button.is-square {
    border-radius: 0
}
.button.is-round {
    border-radius: 8px
}
.button.is-circle {
    border-radius: 50px
}
.button.is-small {
    font-size: .75em
}
.button.is-medium {
    font-size: 1.25em
}
.button.is-large {
    font-size: 1.5em
}
.button.is-fullwidth {
    display: flex;
    width: 100%
}
.button-icon:first-child {
    margin-left: -.25em;
    margin-right: .25em
}
.button-icon:last-child {
    margin-left: .25em;
    margin-right: -.25em
}
.button-icon:not(:first-child):not(:last-child) {
    margin-left: .25em;
    margin-right: .25em
}
.button-icon:first-child:last-child {
    margin-left: -.25em;
    margin-right: -.25em
}
.button-primary {
    border: none;
    border-right: 2px solid #15c9f6;
    border-left: 2px solid #0082f0;
    color: #fff;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: 700;
    position: relative;
    z-index: 1
}
.button-primary:after, .button-primary:before {
    content: "";
    display: block;
    height: 2px;
    position: absolute;
    left: 0;
    width: 100%
}
.button-primary:before {
    background: linear-gradient(90deg, #0082f0 60%, #15c9f6);
    top: 0
}
.button-primary:after {
    background: linear-gradient(90deg, #0082f0, #15c9f6 30%);
    bottom: 0
}
.button-primary-inner {
    background: linear-gradient(150deg, #0082f0 30%, #15c9f6 60%);
    height: 100%;
    opacity: 0;
    position: absolute;
    left: 0;
    top: 0;
    transition: opacity .3s ease-out;
    width: 100%;
    z-index: -1
}
.button-primary:hover:not(:disabled):not(.is-disabled) {
    border-left: 2px solid #0082f0;
    border-right: 2px solid #15c9f6;
    opacity: 1
}
.button-primary:hover:not(:disabled):not(.is-disabled) .button-primary-inner {
    opacity: 1
}
.button-primary.is-disabled {
    border: none
}
.button-primary.is-disabled:after, .button-primary.is-disabled:before {
    content: none
}
.button-secondary {
    border: none;
    box-sizing: content-box;
    color: #fff;
    display: inline-block;
    font-size: 22px;
    font-size: 2.2rem;
    font-weight: 700;
    padding: 4px;
    position: relative
}
.button-secondary:after, .button-secondary:before {
    border: 2px solid transparent;
    content: "";
    display: block;
    position: absolute;
    transition: all .4s ease
}
.button-secondary:before {
    border-left-color: #0082f0;
    border-top-color: #0082f0;
    bottom: 50%;
    left: 0;
    right: 80%;
    top: 0
}
.button-secondary:after {
    border-bottom-color: #0082f0;
    border-right-color: #0082f0;
    bottom: 0;
    left: 80%;
    right: 0;
    top: 50%
}
.button-secondary:hover .button-secondary-inner {
    background-color: #0082f0
}
.button-secondary:hover:after, .button-secondary:hover:before {
    bottom: 0;
    left: 0;
    right: 0;
    top: 0
}
.button-secondary-inner {
    background-color: hsla(0,0%,100%,.1);
    border: 2px solid #0082f0;
    display: block;
    height: 100%;
    padding: 16px 32px;
    transition: border-radius .3s ease
}
.button-general {
    background-color: #002d52;
    border-color: #0082f0;
    color: #fff;
    font-weight: 700;
    padding: 8px 32px;
    transition: border .3s ease-in, box-shadow .4s ease-out
}
.button-general:hover:not(:disabled):not(.is-disabled) {
    background-color: #002d52;
    border-color: #15c9f6;
    box-shadow: 0 0 20px 5px #0082f0
}
.c-card-inner {
    display: block;
    text-decoration: none
}
.c-card-thumbnail {
    text-align: center
}
.c-card-body {
    padding: 8px
}
.c-content {
    white-space: pre-line;
    max-width: 752px
}
.c-content, .c-datalist {
    margin: auto;
    padding: 0 16px
}
.c-datalist {
    display: flex;
    flex-wrap: wrap;
    width: 100%
}
.c-datalist dd, .c-datalist dt {
    padding: 8px;
    width: 100%
}
.c-datalist dt {
    background: rgba(0,130,240,.5)
}
.c-datalist dd {
    white-space: pre-line
}
.heading, .nuxt-content h2, .nuxt-content h3, .nuxt-content h4, .nuxt-content h5, .nuxt-content h6 {
    color: inherit;
    font-family: inherit;
    font-weight: 700;
    line-height: 1.5;
	margin-bottom: 2.4rem;
}
.heading span, .nuxt-content h2 span, .nuxt-content h3 span, .nuxt-content h4 span, .nuxt-content h5 span, .nuxt-content h6 span {
    display: inline-block;
    font-weight: inherit
}
.heading.is-small, .nuxt-content h2.is-small, .nuxt-content h3.is-small, .nuxt-content h4.is-small, .nuxt-content h5.is-small, .nuxt-content h6.is-small {
    font-size: 18px;
    font-size: 1.8rem
}
.heading.is-medium, .nuxt-content h2.is-medium, .nuxt-content h3.is-medium, .nuxt-content h4.is-medium, .nuxt-content h5.is-medium, .nuxt-content h6.is-medium {
    font-size: 24px;
    font-size: 2.4rem
}
.heading.is-large, .nuxt-content h2.is-large, .nuxt-content h3.is-large, .nuxt-content h4.is-large, .nuxt-content h5.is-large, .nuxt-content h6.is-large {
    font-size: 32px;
    font-size: 3.2rem
}
.heading.is-xlarge, .nuxt-content h2.is-xlarge, .nuxt-content h3.is-xlarge, .nuxt-content h4.is-xlarge, .nuxt-content h5.is-xlarge, .nuxt-content h6.is-xlarge {
    font-size: 40px;
    font-size: 4rem
}
.heading.is-2xlarge, .nuxt-content h2.is-2xlarge, .nuxt-content h3.is-2xlarge, .nuxt-content h4.is-2xlarge, .nuxt-content h5.is-2xlarge, .nuxt-content h6.is-2xlarge {
    font-size: 56px;
    font-size: 5.6rem
}
.heading.is-nospace, .nuxt-content h2.is-nospace, .nuxt-content h3.is-nospace, .nuxt-content h4.is-nospace, .nuxt-content h5.is-nospace, .nuxt-content h6.is-nospace {
    margin-bottom: 0
}
.heading-primary {
    color: #fff;
    text-align: center;
    text-shadow: 0 0 5px #002d52, 0 0 10px #fff, 0 0 15px #0082f0, 0 0 20px #0082f0, 0 0 25px #0082f0, 0 0 30px #0082f0, 0 0 35px #0082f0
}
.heading-image {
    position: relative;
    text-align: center
}
.heading-image.is-underlined:after {
    background: url("../images/rtf2_img_titleline.f5213b0.png") no-repeat 50%;
    background-size: contain;
    content: "";
    display: block;
    height: 18px;
    width: 100%
}
.c-list>li {
    line-height: 1.5;
    margin-bottom: .5em
}
.c-list>li:last-child {
    margin-bottom: 0
}
.c-list-square {
    padding-left: 2em
}
.c-list-square>li {
    line-height: 1.5;
    list-style-type: square;
    margin-bottom: .5em
}
.c-list-square>li:last-child {
    margin-bottom: 0
}
.c-list-decimal, .nuxt-content ol {
    padding-left: 2em
}
.c-list-decimal>li, .nuxt-content ol>li {
    line-height: 1.5;
    list-style-type: decimal;
    margin-bottom: .5em
}
.c-list-decimal>li:last-child, .nuxt-content ol>li:last-child {
    margin-bottom: 0
}
.c-list-dots, .nuxt-content ul {
    padding-left: 2em
}
.c-list-dots>li, .nuxt-content ul>li {
    line-height: 1.5;
    list-style-type: disc;
    margin-bottom: .5em
}
.c-list-dots>li:last-child, .nuxt-content ul>li:last-child {
    margin-bottom: 0
}
.c-list-bracket {
    padding-left: 2em
}
.c-list-bracket>li {
    counter-increment: count_bracket;
    line-height: 1.5;
    margin-bottom: .5em;
    text-indent: -1.8em
}
.c-list-bracket>li:last-child {
    margin-bottom: 0
}
.c-list-bracket>li:before {
    display: marker;
    content: counter(count_bracket) " ) "
}
.c-media {
    padding: 16px 0;
    position: relative
}
.c-media-inner {
    display: flex;
    text-decoration: none
}
.c-media-thumbnail {
    text-align: center;
    width: 40%
}
.c-media-body {
    display: flex;
    flex-direction: column;
    padding-left: 16px;
    width: 60%
}
.c-media-title {
    font-size: 16px;
    font-size: 1.6rem;
    margin: 0 0 auto;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    max-height: 72px;
    -webkit-line-clamp: 3;
    overflow: hidden;
    text-overflow: ellipsis
}
.c-media-tag {
    font-size: 12px;
    font-size: 1.2rem;
    padding: 8px 0
}
.c-media-meta {
    font-size: 11px;
    font-size: 1.1rem
}
.c-movie {
    margin: auto;
    max-width: 752px
}
.c-movie-content {
    padding-bottom: 56.25%;
    position: relative
}
.c-movie-content>iframe {
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%
}
.c-movie-contents {
    padding-bottom: 56.25%;
    position: relative
}
.c-movie-contents>iframe {
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%
}
.c-share {
    display: flex;
    justify-content: space-between
}
.c-share-button {
    border-radius: 8px;
    color: #fff;
    display: block;
    font-size: 14px;
    font-size: 1.4rem;
    padding: 7px 8px 8px;
    text-align: center;
    text-decoration: none;
    transition: opacity .3s;
    width: 32%
}
.c-share-button:hover {
    opacity: .7
}
.c-share-button-facebook {
    background: #1778f2
}
.c-share-button-twitter {
    background: #1da1f2
}
.c-share-button-line {
    background: #00b900
}
.c-sns-icon {
    color: #fff;
    display: inline-block;
    font-size: 24px;
    font-size: 2.4rem;
    height: 32px;
    position: relative;
    text-decoration: none;
    vertical-align: middle;
    width: 32px
}
.c-sns-icon .icon {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%)
}
.c-lang {
    display: flex;
    justify-content: center
}
.c-lang-item {
    margin: 0 4px
}
.c-lang-text {
    color: #f0f0f0;
    cursor: default;
    display: block;
    font-size: 12px;
    font-size: 1.2rem;
    padding: 4px 16px;
    text-align: center;
    text-decoration: none
}
.c-lang-text.is-active {
    cursor: pointer
}
.c-lang-text.is-current {
    background-color: #0082f0;
    color: #fff
}
.input, .select select, .textarea {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    background-color: #fff;
    border: 1px solid #999;
    border-radius: 4px;
    box-shadow: none;
    display: block;
    font-size: 16px;
    font-size: 1.6rem;
    padding: .5em .75em;
    max-width: 100%
}
.input::-moz-placeholder, .select select::-moz-placeholder, .textarea::-moz-placeholder {
color:#999
}
.input:-ms-input-placeholder, .select select:-ms-input-placeholder, .textarea:-ms-input-placeholder {
color:#999
}
.input::placeholder, .select select::placeholder, .textarea::placeholder {
color:#999
}
.input:focus, .select select:focus, .textarea:focus {
    border-color: rgba(0,130,240,.5);
    box-shadow: inset 0 0 4px rgba(0,130,240,.5);
    outline: none
}
.select select[readonly], [readonly].input, [readonly].textarea {
    border: 1px solid #999;
    box-shadow: none
}
.is-error.input, .is-error.textarea, .select select.is-error {
    border-color: rgba(255,113,113,.5);
    box-shadow: inset 0 0 4px rgba(255,113,113,.5)
}
.checkbox-container.is-standard .checkbox+.checkbox-label, .radio-container.is-standard .radio+.radio-label {
    padding-left: 1.4em;
    position: relative
}
.checkbox-container.is-standard .checkbox+.checkbox-label:before, .radio-container.is-standard .radio+.radio-label:before {
    background-color: #fff;
    border: 1px solid #999;
    border-radius: 4px;
    box-shadow: none;
    content: "";
    display: block;
    height: 1.2em;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-54%);
    width: 1.2em
}
.checkbox-container.is-standard .checkbox+.checkbox-label:after, .radio-container.is-standard .radio+.radio-label:after {
    content: "";
    display: block;
    position: absolute
}
.checkbox-container.is-standard .checkbox:focus+.checkbox-label:before, .radio-container.is-standard .radio:focus+.radio-label:before {
    border-color: rgba(0,130,240,.5);
    box-shadow: 0 0 4px rgba(0,130,240,.5)
}
.form-field:not(:last-child) {
    margin-bottom: 3.2rem
}
.form-label {
    display: block;
    font-weight: 700;
    margin-bottom: .8rem
}
.form-body {
    display: flex
}
.form-body.is-center {
    justify-content: center
}
.form-body.is-right {
    justify-content: flex-end
}
.form-body.is-multiline {
    flex-wrap: wrap
}
.form-guide {
    display: block;
    font-size: 1.2rem
}
.form-guide.is-error {
    color: #ff7171;
    font-weight: 700
}
.input {
    width: 100%;
    max-width: 100%
}
.input.is-round {
    border-radius: 50px;
    padding: .5em 1.125em
}
.input.is-small {
    font-size: .75em
}
.input.is-medium {
    font-size: 1.25em
}
.input.is-large {
    font-size: 1.5em
}
.textarea {
    display: block;
    min-height: 8em;
    resize: vertical;
    width: 100%;
    max-width: 100%
}
.textarea.is-small {
    font-size: .75em
}
.textarea.is-medium {
    font-size: 1.25em
}
.textarea.is-large {
    font-size: 1.5em
}
.checkbox {
    margin-right: .5em;
    cursor: pointer;
    -webkit-appearance: checkbox;
    -moz-appearance: checkbox;
    appearance: checkbox
}
.checkbox-label {
    display: inline-block;
    line-height: 1.5
}
.checkbox-container {
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    margin-bottom: 1em;
    margin-right: 1em;
    position: relative
}
.checkbox-container.is-standard .checkbox {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    opacity: 0;
    position: absolute
}
.checkbox-container.is-standard .checkbox+.checkbox-label:after {
    border: 2.4px solid transparent;
    border-radius: 2px;
    height: .8em;
    left: .3em;
    top: .2em;
    transform: rotate(45deg);
    width: .6em
}
.checkbox-container.is-standard .checkbox:checked+.checkbox-label:before {
    border-color: #0082f0
}
.checkbox-container.is-standard .checkbox:checked+.checkbox-label:after {
    border-bottom-color: #0082f0;
    border-right-color: #0082f0
}
.checkbox-container.is-standard .checkbox:disabled+.checkbox-label:before {
    background-color: #b0b0b0;
    box-shadow: none
}
.radio {
    margin-right: .5em;
    cursor: pointer
}
.radio-label {
    display: inline-block;
    line-height: 1.5
}
.radio-container {
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    margin-bottom: 1em;
    margin-right: 1em;
    position: relative
}
.radio-container.is-standard .radio {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    opacity: 0;
    position: absolute
}
.radio-container.is-standard .radio+.radio-label:before {
    border-radius: 50%
}
.radio-container.is-standard .radio+.radio-label:after {
    background-color: transparent;
    border-radius: 50%;
    height: .6em;
    left: .3em;
    top: .38em;
    width: .6em
}
.radio-container.is-standard .radio:checked+.radio-label:before {
    border-color: #0082f0
}
.radio-container.is-standard .radio:checked+.radio-label:after {
    background-color: #0082f0
}
.radio-container.is-standard .radio:disabled+.radio-label:before {
    background-color: #b0b0b0;
    box-shadow: none
}
.select {
    display: inline-block;
    position: relative;
    vertical-align: top;
    max-width: 100%
}
.select:after {
    border: 6px solid transparent;
    border-top-color: #0082f0;
    content: "";
    pointer-events: none;
    position: absolute;
    right: .5em;
    top: 58%;
    transform: translateY(-50%)
}
.select select {
    cursor: pointer;
    padding-right: 2em
}
.select select::-ms-expand {
display:none
}
.select select option:disabled {
    background-color: #b0b0b0
}
.select.is-fullwidth, .select.is-fullwidth>select {
    width: 100%
}
.l-background {
    background: #000;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    top: 0;
    z-index: -1
}
.l-container {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    overflow: hidden;
    position: relative;
    width: 100%;
    min-width: 320px
}
.l-header {
    position: relative;
    z-index: 99
}
.l-header-inner {
    background: #000;
    border-bottom: 2px solid #0082f0;
    display: flex;
    align-items: center;
    height: 54px;
    padding: 0 8px
}
.l-header-logo {
    display: inline-block;
    margin-right: auto;
    width: 188px
}
.l-header-storebutton {
    font-size: 12px;
    font-size: 1.2rem;
    padding: 8px
}
.l-header-lang {
    display: none
}
.l-header-sns {
    display: none;
    padding: 8px;
    right: 0;
    text-align: right
}
.l-header-drawer, .l-header-sns {
    position: absolute;
    top: 54px;
    z-index: -1
}
.l-header-drawer {
    background: #060d15;
    padding: 56px 8px 8px;
    left: 0;
    transform: translate3d(0, -100%, 0);
    transition: transform .3s;
    width: 100%
}
.l-header-drawer.is-active {
    transform: translateZ(0)
}
.l-header-drawer-close {
    background: none;
    border: none;
    cursor: pointer;
    display: block;
    align-items: center;
    height: 40px;
    outline: none;
    position: fixed;
    right: 8px;
    top: 8px;
    width: 40px
}
.l-header-drawer-close:after, .l-header-drawer-close:before {
    background-color: #fff;
    content: "";
    display: block;
    height: 2px;
    margin: auto;
    position: absolute;
    left: 0;
    right: 0;
    transition: .3s ease-out;
    width: 18px
}
.l-header-drawer-close:before {
    transform: rotate(-135deg)
}
.l-header-drawer-close:after {
    transform: rotate(135deg)
}
.l-nav {
    width: 100%
}
.l-nav-drawer {
    background: rgba(0,0,0,.8);
    opacity: 0;
    padding: 64px 16px;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    top: 0;
    width: 100%;
    visibility: hidden;
    z-index: -1
}
.l-nav.is-active .l-nav-drawer {
    opacity: 1;
    transition-delay: 0s;
    visibility: visible;
    z-index: 99
}
.l-nav-list {
    display: flex;
    flex-wrap: wrap
}
.l-nav-item {
    text-align: center;
    width: 100%
}
.l-nav-text {
    color: #fff;
    display: inline-block;
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: 700;
    padding: 8px 32px;
    position: relative;
    text-align: center;
    text-decoration: none;
    transition: background-color .2s, color .2s
}
.l-nav-text:hover {
    opacity: 1
}
.l-nav-dropdown {
    height: 0;
    opacity: 0;
    overflow: hidden;
    transition: opacity .6s, visibility 0s ease .6s;
    width: 100%;
    visibility: hidden
}
.l-nav-item.is-dropdown-opened .l-nav-dropdown {
    height: auto;
    opacity: 1;
    transition-delay: 0s;
    visibility: visible
}
.l-nav-dropdown-item {
    width: 100%
}
.l-nav-dropdown-text {
    color: #fff;
    display: block;
    font-weight: 700;
    padding: 8px 32px;
    position: relative;
    text-align: center;
    text-decoration: none;
    transition: background-color .3s, text-shadow .3s
}
.l-nav-dropdown-text:hover {
    background-color: #15c9f6;
    text-shadow: 0 0 1px #060d15, 0 0 2px #060d15;
    opacity: 1
}
.l-nav-dropdown-trigger {
    padding-right: 32px;
    position: relative
}
.l-nav-dropdown-trigger .icon {
    background-color: #f0f0f0;
    border-radius: 50%;
    box-shadow: 0 0 10px #0082f0;
    display: block;
    height: 8px;
    position: absolute;
    right: 12px;
    top: 54%;
    transform: translateY(-50%);
    transition: background-color .2s;
    width: 8px
}
.l-nav-item.is-dropdown-opened .l-nav-dropdown-trigger .icon {
    background-color: #15c9f6
}

.l-nav-lang{
	margin-top: 250px;
}
.l-nav-sns {
    text-align: center;
	margin-top: 466px;
}
.l-nav-humberger {
    background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAYAAABw4pVUAAACbUlEQVR4nO3bPZKbQBiEYUDyERxK6IfdxEdx6hv4VA58A6e+DUgCduM9Aq7CCKm+2by7at4n2gzVfNXTMxJbFr+mqYCNilF42d4/TfPn59/cF0Op/fH7e0FC/KwJads297WwQELMPDqkaXJfC6n7/kRCzNAhZkiIGTrEBB1iig4xQ0LM0CEm6BBTdIgZEmKGDjFBh5iiQ8yQEDN0iAk6xBQdYoaEmKFDTNAhpugQMyTEDB1igg4xRYeYISFm6BATdIgpOsQMCTFDh5igQ0xti/L/B2u7Lve10FrmsA6kKDel5QfNxTqQRdO85L4kUvcOeSSkIiFScctqu0uW62Aj6RASohUHcm5eGYhQl56ymIdUHEh3uWa5DjbWgdzv6pstEVFa5vDUIS8MROiTDuFrLamkQ64DCVFKOqSqGIhS7JDTmXuI0iU9ZXFTl4oJudAhWmmHbLJcBxtphzQkRCjtkIqbulTSIbeegSiREDMxIccT32UpXT+5qWe4DEbWhCx/XPuRhCjFLYv3ssTilnXkHiJ1jVvWxClLKw7kNtAhUnSImdghh9OZgQjd4pbFm4tiaYe8MRAlOsRM7JD6SIco9WmH8NaJVBxIP74zECU6xEzaIScGItSnCeH3EKmYkH7kHiJVfZuf/nTK+kJElOIpa3845LgMNgZOWWZihwzcQ7Sqen48N3UXccva10cGIjTELasoSYhUPGUN73SIVPV1fjqnLBfxv3B3+zr3JZEa0w4hIVLxlDW+0SFS5ev8dN46cRFPWbt9zUCERn4PMRNPWXSIWLmbn/+cEAaitKx+WXxMU6ZLYOlxyoJeURT/AEtqae8pPNLzAAAAAElFTkSuQmCC) no-repeat 50%;
    background-size: contain;
    border: none;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    height: 48px;
    outline: none;
    position: fixed;
    right: 8px;
    top: 62px;
    transition: top .2s;
    vertical-align: top;
    width: 48px;
    min-width: 18px;
    z-index: 100
}

.l-nav-humberger .line {
    background-color: #fff;
    display: block;
    height: 2px;
    margin: auto;
    position: absolute;
    left: 0;
    right: 0;
    transition: .3s ease-out;
    width: 18px
}
.l-nav-humberger .line:first-child {
    transform: translateY(-5px)
}
.l-nav-humberger .line:last-child {
    transform: translateY(5px)
}
.l-nav.is-active .l-nav-humberger {
    top: 8px
}
.l-nav.is-active .l-nav-humberger .line:not(:first-child):not(:last-child) {
    opacity: 0
}
.l-nav.is-active .l-nav-humberger .line:first-child {
    transform: rotate(-135deg)
}
.l-nav.is-active .l-nav-humberger .line:last-child {
    transform: rotate(135deg)
}
.is-fixed{
	top: 8px;
}
.l-contents {
    margin: 0 auto auto;
    padding-bottom: 80px;
    width: 100%
}
.l-contents-main, .l-contents-sub, .l-footer {
    width: 100%
}
.l-footer {
    background: #000;
    color: #f0f0f0
}
.l-footer-inner {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    padding: 32px 16px
}
.l-footer-logo {
    text-align: center;
    width: 100%
}
.l-footer-logo a {
    display: inline-block
}
.l-footer-contents {
    width: 100%
}
.l-footer-sns {
    margin-top: 32px;
    text-align: center
}
.l-footer-nav {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-size: 1.2rem
}
.l-footer-nav-item {
    margin: 16px 8px 0
}
.l-footer-nav-text {
    text-decoration: none
}
.l-footer-copy {
    border-top: 1px solid #f0f0f0;
    font-size: 12px;
    font-size: 1.2rem;
    padding: 16px
}
.l-section {
    margin: 80px auto;
    padding: 40px 0;
    position: relative;
    z-index: 1
}
.l-section.is-bordered:after, .l-section.is-bordered:before {
    background: linear-gradient(90deg, #0082f0 0, #0082f0 30%, #15c9f6);
    content: "";
    display: block;
    height: 2px;
    position: absolute;
    left: 0;
    width: 100%
}
.l-section.is-bordered:before {
    top: 0
}
.l-section.is-bordered:after {
    bottom: 0
}
.l-section-background {
    background-color: #060d15;
    background: repeating-linear-gradient(hsla(0,0%,100%,.1), hsla(0,0%,100%,.1) 3px, rgba(0,0,0,.1) 0, rgba(0,0,0,.1) 6px), linear-gradient(90deg, #060d15 0, #002d52);
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    top: 0;
    z-index: -1
}
.l-section-inner {
    margin: auto;
    max-width: 1080px
}

/* 2022.08.16 add start */

section#game-overview > .l-section-inner{
	max-width: 850px;
}

.home-overview-text h2{
	font-size: 25px;
	font-weight: bold;
	background: linear-gradient(transparent 60%, #1342b8 40%);
}
.home-overview-text h2:first-letter{
	font-size: 35px;
	color: #FFFFFF;
}

div.home-overview-text{
	width: 100%;
	margin: 0 auto 20px auto;
}

div.home-overview-stage{
	display: flex;
	flex-wrap: wrap;
	justify-content:center;
}

div.home-overview-stage p{
	margin-right: 20px;
}

div.home-overview-stage p img{
	max-width: 380px;
}

p.game-overview-txt{
	display: flex;
	justify-content: center;
	flex-direction: column;
	width: 50%;
	padding: 30px;
}

div.home-overview-custom{
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 50px;

}

div.home-overview-stage-image{
	margin-top: 40px;
}

.annotation{
	font-size: 11px;
}

/* 2022.08.16 add end */

.nuxt-content {
    margin: 40px auto 0;
    padding: 0 16px
}
.nuxt-content h2, .nuxt-content h3, .nuxt-content h4, .nuxt-content h5, .nuxt-content h6 {
    margin-top: 3.2em
}
.nuxt-content h2 {
    font-size: 24px;
    font-size: 2.4rem
}
.nuxt-content h3 {
    font-size: 18px;
    font-size: 1.8rem
}
.event.nuxt-content {
    padding: 0
}
.event.nuxt-content h2, .event.nuxt-content h3, .event.nuxt-content h4, .event.nuxt-content h5, .event.nuxt-content h6 {
    margin-top: 0
}
.event.nuxt-content .l-section-inner {
    padding: 0 16px;
    max-width: 744px
}
.event-guide {
    background: rgba(6,13,21,.8);
    border: 2px solid #5da6d1;
    margin-bottom: 32px;
    padding: 16px
}
.event-guide-heading {
    margin-bottom: 16px;
    margin-right: 16px
}
.event-guide p {
    margin: 0;
    flex: 1
}
.event-numlist {
    counter-reset: number
}
.event-numlist li {
    display: flex;
    list-style-type: none!important
}
.event-numlist li:before {
    background: rgba(0,130,240,.5);
    counter-increment: number;
    content: counter(number);
    display: block;
    height: 24px;
    line-height: 24px;
    margin-right: 1em;
    text-align: center;
    width: 24px
}
.event-numlist-inner {
    flex: 1;
    line-height: 24px
}
.backtotop-button {
    background: none;
    border: none;
    cursor: pointer;
    margin-left: auto;
    padding: 0;
    position: relative;
    right: 8px;
    width: 80px;
    z-index: 90;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    overflow: hidden
}
.backtotop-button.is-fixed:not(.is-hide) {
    -webkit-animation: fadeIn .4s forwards;
    animation: fadeIn .4s forwards;
    opacity: 0;
    position: fixed;
    bottom: 8px;
    right: 8px
}
.twitter-box {
    background: rgba(0,130,240,.4);
    border: 1px solid #0082f0;
    padding: 8px
}
.twitter-box-heading {
    color: #fff;
    font-size: 16px;
    font-size: 1.6rem;
    margin-bottom: 4px
}
.banner {
    background: rgba(0,45,82,.7);
    padding: 32px 16px 16px
}
.banner-slider {
    margin: auto;
    max-width: 1008px
}
.banner-slider.swiper-container {
    padding-bottom: 30px
}
.banner-slider.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 4px
}
.banner-slider .swiper-pagination-bullet {
    box-shadow: 0 0 0 1px #fff;
    opacity: 1
}
.banner-slider .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background: #0082f0;
    box-shadow: 0 0 0 .8px #fff
}
.faq-list {
    padding: 0 16px
}
.faq-list-item {
    background: rgba(0,45,82,.8);
    border: 1px solid #0082f0;
    margin-top: 56px;
    position: relative
}
.faq-list-head {
    cursor: pointer;
    padding-left: 53px;
    padding-right: 40px;
    position: relative
}
.faq-list-head:after {
    border-bottom: 2px solid #fff;
    border-right: 2px solid #fff;
    content: "";
    display: block;
    height: 8px;
    position: absolute;
    right: 14px;
    top: 50%;
    transform-origin: center;
    transform: rotate(-45deg) translateY(-50%);
    transition: transform .2s;
    width: 8px
}
.faq-list-item.is-expanded .faq-list-head:after {
    transform: rotate(45deg) translateY(-50%)
}
.faq-list-body {
    height: 0;
    opacity: 0;
    overflow: hidden;
    padding-left: 53px;
    padding-right: 16px;
    position: relative;
    visibility: hidden
}
.faq-list-item.is-expanded .faq-list-body {
    -webkit-animation: fadeIn .6s forwards;
    animation: fadeIn .6s forwards;
    height: auto;
    visibility: visible
}
.faq-list-icon {
    position: absolute;
    left: 16px;
    top: 16px
}
.faq-list-category {
    background: #0082f0;
    display: inline-block;
    font-size: 11px;
    font-size: 1.1rem;
    padding: 2px 8px;
    position: absolute;
    left: -1px;
    top: -20px
}
.faq-list-text {
    padding: 16px 0;
    white-space: pre-line
}
.info-card {
    max-width: 640px
}
.info-card-container {
    display: flex;
    flex-wrap: wrap;
    padding: 0 16px
}
.info-card-container .info-card {
    margin: 0 8px 16px;
    width: 100%
}
.info-card-inner {
    background: rgba(0,45,82,.6);
    border: 1px solid #0082f0;
    box-shadow: 0 0 20px 0 transparent;
    transition: border .3s ease-in, box-shadow .5s ease-out
}
.info-card-inner:hover {
    border-color: #15c9f6;
    box-shadow: 0 0 20px 5px #0082f0;
    opacity: 1
}
.info-card-date {
    color: #15c9f6;
    display: block;
    margin-bottom: 4px
}
.info-card-title {
    font-size: 14px;
    font-size: 1.4rem;
    height: 42px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    max-height: 42px;
    -webkit-line-clamp: 2;
    overflow: hidden;
    text-overflow: ellipsis
}
.news-image {
    display: block;
    width: 100%;
    max-width: 800px
}
.news-image-sm {
    width: 200px
}
.news-image-mid {
    width: 400px;
    max-width: 100%
}
.news-image-half {
    display: inline-block;
    margin: .8% .5%;
    width: 48%;
    min-width: 280px
}
.flex_wrap{
    margin-bottom: 60px;
}
.flex_wrap p{
    margin: 0;
}
.flex_imagewrap{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 30px 0;
}
.flex_imagewrap p{
    margin: 0;
}
.flex-column{
    width: 100%;
    max-width: 500px;
}
.flex-column p{
    margin: 0;
}
.hero {
    background-color: #000;
    border-bottom: 2px solid #0082f0;
    position: relative;
    width: 100%
}
.hero-inner {
    background: url("../images/rtf2_topbanner_smartphone.e32bd8a.jpg") no-repeat 50%/cover;
    margin: 0 auto;
    position: relative;
}
.hero-inner:before {
    content: "";
    display: block;
    background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABjCAYAAABt56XsAAABI0lEQVR4nO3d0QnDMBAFwbOt/ms2AhUxoB1IA1ne2eQnz8zsTxCrIJaCYHaQ9/YvQdJCMAXBdLIwLQRTEEwnC9NCMC0EUxBMQTAFwfRQx7QQTEEwBcEUBFMQTEEwBcEUBLODfLd/CZIWgikIpiCYgmB6qGNaCKaFYFoIpiCYThamhWBaCKaFYAqC6WRhWgimhWBaCKYgmHU+QbQQTEEwvWVhWgimhWAKgulkYVoIpoVgCoLppxNMC8EUBNNbFqaFYFoIpoVgCoLpZGFaCKaFYFoIpiCYThamhWBaCKaFYAqCKQimIJge6pgWgikIpiCYgmAKgikIpiCYgmD6UzBMC8EUBFMQTEEwPdQxLQTTQjAFwXSyMC0EUxBMJwvTQjAFkczMD8GzAlXtctPVAAAAAElFTkSuQmCC) 50%;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 99px
}
.hero-inner:after {
    content: "";
    display: block;
    padding-top: 135%
}
.hero-logo {
    margin: auto;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 26%;
    width: 90%;
    max-width: 570px
}
.hero-logo.pc {
    display: none
}
.hero-logo.sp {
    display: inline
}
.hero-text {
    position: absolute
}
.hero-text.en-horizontal {
    bottom: 21%;
    left: 50%;
    transform: translateX(-50%);
    width: 80%;
    max-width: 480px
}
.hero-text.ja-horizontal {
    bottom: 19%;
    left: 50%;
    transform: translateX(-50%);
    width: 48%;
    max-width: 260px
}
.hero-text.ja-vertical {
    display: none
}
.hero-platform {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    padding: 8px 0;
    position: absolute;
    bottom: 0;
    width: 100%
}
.hero-platform img {
    height: 30px;
    margin: 0 4px;
    width: auto
}
.hero-information {
    display: block;
    position: absolute;
    bottom: 386px;
    left: 4%;
    width: 320px;
    height: 60px;
    max-width: calc(100% - 15rem)
}
.hero-information a:hover {
    opacity: unset
}
.hero-information img {
    position: absolute;
    bottom: 0;
    left: 0
}
.hero-information img.hover {
    opacity: 0;
    transition: .25s;
    transition-timing-function: ease-in-out
}
.hero-information img.hover:hover {
    opacity: 1
}
.hero-twitter {
    display: none
}
.home-info {
    background: linear-gradient(180deg, #002d52 0, transparent 50%, transparent);
    margin-bottom: 0;
    padding: 40px 16px;
    position: relative;
}
.home-info:before {
    background: linear-gradient(90deg, #0082f0 0, #0082f0 30%, #15c9f6);
    content: "";
    display: block;
    height: 2px;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%
}
.home-info-slider {
    margin: auto
}
.home-info-slider.swiper-container {
    overflow: visible;
}
.home-info-slider .swiper-button-next, .home-info-slider .swiper-button-prev {
    display: none;
    height: 100%;
    margin-top: 0;
    top: 0;
    width: 100%;
}
.home-info-slider .swiper-button-next:after, .home-info-slider .swiper-button-prev:after {
    content: "";
    display: block;
    height: 82px;
    transition: transform .3s ease-in-out;
    width: 35px;
}
.home-info-slider .swiper-button-next:hover:after, .home-info-slider .swiper-button-prev:hover:after {
    transform: scale(1.2)
}
.home-info-slider .swiper-button-prev {
    justify-content: flex-end;
    right: 50%;
    margin-right: 50%;
    left: inherit;
}
.home-info-slider .swiper-button-prev:after {
    background: url("../images/rtf2_button_arrowL.3b314b9.png") no-repeat;
    background-size: 35px 82px
}
.home-info-slider .swiper-button-next {
    justify-content: flex-start;
    left: 50%;
    margin-left: 50%;
}
.home-info-slider .swiper-button-next:after {
    background: url("../images/rtf2_button_arrowR.bc681e7.png") no-repeat;
    background-size: 35px 82px;
}
.home-banner {
    margin-bottom: 40px;
    padding-bottom: 32px;
}
.home-banner-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 0 auto;
    max-width: 960px;
}
.home-banner-list-wide {
    max-width: 100%;
}
.home-banner-item {
    margin: 8px;
    max-width: calc(33.33333% - 16px);
}
.home-banner-item[disabled] {
    opacity: 0;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    pointer-events: none;
}
.home-twitter-box {
    margin: auto;
    width: calc(100% - 32px);
    max-width: 400px;
}
.home-about-text {
    white-space: pre-line;
}
.home-about-movie {
    border: 3px solid #0082f0;
}
.home-overview-block {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 32px;
    padding: 0 16px;
}
.home-overview-text, .home-overview-thumbnail {
    width: 100%;
}
.home-overview-text {
    white-space: pre-line;
}
.home-overview-thumbnail img {
    border: 3px solid #0082f0;
}
.home-cfbanner {
    margin: 40px auto -40px;
    padding: 0 16px;
    text-align: center;
}
.home-cfbanner__links {
    display: flex;
    justify-content: center;
}
.home-cfbanner__link {
    width: 40%;
}
.spec-data {
    max-width: 724px;
}
.spec-data dd {
    display: flex;
    align-items: center;
    white-space: normal;
}
.spec-data dd span {
    display: inline-block;
}
.spec-data dd img {
    height: 20px;
    width: auto;
}
.spec-data dd img.spec-data-img-pcgame {
    height: 30px;
}
.spec-data-stack {
    font-size: .75em;
    line-height: 1em;
}
.spec-data-stack img {
    display: block;
    height: 15px;
}
.spec-data-sellingType {
    font-size: .9em;
    margin-right: 8px;
}
.spec-w100 {
    width: 100%;
}
.information-table {
    max-width: 100%;
    width: 750px;
    margin: auto;
}
.information-table tr {
    border-bottom: 1px solid hsla(0,0%,100%,.6);
}
.information-table tr.noBorder {
    border: none;
}
.information-table td {
    padding: 12px 15px;
}
.information-table-header-region {
    width: 17rem;
}
.information-table-header-publisher {
    min-width: 3rem;
}
.player-section {
    padding: 0;
}
.player-head {
    margin: auto;
    padding: 8px 16px 8px 32px;
    position: relative;
    max-width: 760px;
}
.player-head:after {
    background-color: #fff;
    content: "";
    position: absolute;
    bottom: 0;
    left: 14px;
    top: 0;
    width: 4px
}
.player-image {
    text-align: center
}
.player-catchphrase {
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: 700
}
.player-name {
    font-size: 22px;
    font-size: 2.2rem;
    font-weight: 700
}
.player-profile {
    margin: 1.5em auto 0;
    white-space: pre-line;
    max-width: 760px;
	padding: 0 1.2rem;
}
.player-pagination {
    display: flex;
    margin: 80px auto 0;
    padding: 0 16px;
    width: 100%;
    max-width: 760px
}
.player-pagination-next, .player-pagination-prev {
    display: flex;
    align-content: center;
    flex-wrap: wrap;
    font-size: 12px;
    font-size: 1.2rem;
    font-weight: 700;
    min-height: 49.2px;
    position: relative;
    text-decoration: none;
    max-width: 50%
}
.player-pagination-next:after, .player-pagination-prev:after {
    content: "";
    display: block;
    flex-shrink: 0;
    height: 49.2px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 21px
}
.player-pagination-next span, .player-pagination-prev span {
    display: block;
    margin-right: 8px;
    width: 100%
}
.player-pagination-next {
    margin-left: auto;
    padding-right: 37px;
    text-align: right
}
.player-pagination-next:after {
    background: url("../images/rtf2_button_arrowR.bc681e7.png") no-repeat 50%;
    background-size: contain;
    right: 0
}
.player-pagination-prev {
    padding-left: 37px
}
.player-pagination-prev:after {
    background: url("../images/rtf2_button_arrowL.3b314b9.png") no-repeat 50%;
    background-size: contain;
    left: 0
}
.player-list {
    display: flex;
    flex-wrap: wrap;
    padding: 0 16px
}
.player-list-item {
    margin: 5% auto 0;
    overflow: hidden;
    padding-top: 90%;
    position: relative;
    max-width: 552px;
    width: 90%;
    z-index: 1
}
.player-list-item:after {
    background: url(../images/rtf2_img_thum_frame.7781f7f.png) no-repeat 50%;
    background-size: contain;
    content: "";
    display: block;
    opacity: 1;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    top: 0;
    transition: opacity .3s;
    z-index: -1
}
.player-list-thumbnail {
    padding-top: 75%;
    position: absolute;
    top: 0;
    width: 100%
}
.player-list-thumbnail img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%
}
.player-list-text {
    color: #fff;
    padding: 75% 8px 8px;
    position: absolute;
    bottom: 0;
    width: 100%
}
.player-list-code {
    border-top: 2px solid #fff;
    padding-top: 4px
}
.player-list-code, .player-list-name {
    font-size: 10px;
    font-size: 1rem;
    font-weight: 700
}
.presskit-list {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    margin-top: 40px;
    padding: 0 16px
}
.presskit-list a {
    color: #15c9f6
}
.presskit-list a:hover {
    opacity: 1
}
.presskit-list-item {
    line-height: 1.5;
    padding: 8px 8px 32px;
    width: 50%
}
.presskit-list-name {
    margin: 4px auto 0
}
.presskit-list-date {
    color: #f0f0f0;
    font-size: 12px;
    font-size: 1.2rem;
    margin-top: 16px
}
.report {
    color: #000
}
.report-header {
    position: relative
}
.report-header-inner {
    position: absolute;
    bottom: 24px;
    left: 50%;
    padding: 0 16px;
    text-align: center;
    transform: translateX(-50%);
    width: 100%;
    max-width: 1080px
}
.report-header-image {
    display: flex;
    justify-content: center;
    align-items: center;
    max-height: 824px;
    overflow: hidden
}
.report-contents {
    margin: 40px auto 0;
    padding: 0 16px;
    max-width: 1080px
}
.report-contents h2 {
    font-size: 24px;
    font-size: 2.4rem;
    margin-top: 0;
    padding-top: 80px;
    position: relative;
    z-index: 1
}
.report-contents h2:after {
    background: rgba(21,201,246,.5);
    content: "";
    display: block;
    font-weight: inherit;
    height: 16px;
    padding: 0 .2em;
    position: relative;
    top: -16px;
    text-shadow: 1px 1px 0 #fff;
    width: 100%;
    z-index: -1
}
.report-contents h3 {
    font-size: 18px;
    font-size: 1.8rem;
    margin-top: 0;
    padding-top: 40px
}
.report-table tr:nth-child(2n) {
    background-color: #f0f0f0
}
.report-table tr:nth-child(odd) {
    background-color: #d1d1d1
}
.report-table td, .report-table th {
    padding: .8em
}
.cf2-video {
    margin: auto;
    max-width: 720px
}
.cf2-summary {
    margin: auto;
    padding: 16px;
    max-width: 640px
}
.cf2-summary-data dt {
    margin-top: 16px
}
.cf2-message {
    border: 5px solid transparent;
    border-image-slice: 5 5 5 5;
    border-image-width: 6px 5px 5px 5px;
    border-image-outset: 0 0 0 0;
    border-image-repeat: repeat repeat;
    border-image-source: url(../images/border_message.png);
    color: #fff;
    font-size: 16px;
    font-size: 1.6rem;
    margin: 0 auto 80px;
    padding: 16px 40px;
    position: relative;
    text-shadow: 1px 3px 2px #000;
    max-width: 752px
}
.cf2-message:before {
    background-color: #060d15;
    background: repeating-linear-gradient(hsla(0,0%,100%,.1), hsla(0,0%,100%,.1) 3px, rgba(0,0,0,.1) 0, rgba(0,0,0,.1) 6px), linear-gradient(0deg, rgba(6,13,21,.8) 0, rgba(0,45,82,.8));
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    top: 0;
    z-index: -1
}
.cf2-reward-block {
    margin-top: 40px;
    position: relative
}
.cf2-reward-image {
    padding: 0 16px;
    text-align: center
}
.cf2-reward-body {
    margin: 0 auto;
    padding: 32px 16px;
    max-width: 752px
}
.cf2-reward-title {
    font-size: 20px;
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 32px
}
.cf2-reward-overview {
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: 400;
    margin-bottom: 16px
}
.cf2-reward-description {
    white-space: pre-line
}
.cf2-reward-info dt {
    float: left;
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 21px;
    margin-right: 8px
}
.cf2-reward-info dd {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.5
}
.cf2-reward-info dd:after {
    clear: left;
    content: "";
    display: block
}
.cf2-reward-button {
    margin-top: 32px
}
.cf2-reward-button .paypal-button-container.is-disabled {
    filter: grayscale(100%);
    pointer-events: none
}
.cf2-reward-confirm {
    background: rgba(6,13,21,.6);
    border: 2px solid #f00000;
    margin: 32px auto;
    padding: 16px
}
.cf2-reward-confirm dt {
    background: #4a4a4a
}
.cf2-payoverlay {
    background: rgba(0,0,0,.8);
    display: none;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    top: 0;
    z-index: 9999
}
.cf2-payoverlay.is-active {
    display: block
}
.cf2-payoverlay-inner {
    margin: auto;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    text-align: center
}
.cf2-payoverlay-loader {
    color: #fff;
    font-size: 8px;
    margin: 0 auto 40px;
    width: 1em;
    height: 1em;
    border-radius: 50%;
    position: relative;
    -webkit-animation: loading 1.2s linear infinite;
    animation: loading 1.2s linear infinite;
    transform: translateZ(0)
}
.cf2-copyright {
    white-space: pre-line
}
.info-head-main{
	padding: 0 16px;
}
.u-align-left {
    text-align: left
}
.u-align-center {
    text-align: center;
	margin-bottom: 50px;
}
.u-align-right {
    text-align: right
}
.u-font-xs {
    font-size: 1.05rem
}
.u-font-s {
    font-size: 1.225rem
}
.u-font-base {
    font-size: 1.4rem
}
.u-font-m {
    font-size: 1.575rem
}
.u-font-l {
    font-size: 1.75rem
}
.u-font-xl {
    font-size: 2.1rem
}
.u-font-xxl {
    font-size: 2.625rem
}
.u-font-bold {
    font-weight: 700
}
.u-font-normal {
    font-weight: 400
}
.u-font-black {
    color: #000
}
.u-font-white {
    color: #fff
}
.u-font-gray {
    color: #999
}
.u-font-red {
    color: #f00000
}
.u-font-blue {
    color: #0082f0
}
.u-font-yellow {
    color: #f6e840
}
.u-mt0 {
    margin-top: 0
}
.u-mr0 {
    margin-right: 0
}
.u-mb0 {
    margin-bottom: 0
}
.u-ml0 {
    margin-left: 0
}
.u-mt4 {
    margin-top: 4px
}
.u-mr4 {
    margin-right: 4px
}
.u-mb4 {
    margin-bottom: 4px
}
.u-ml4 {
    margin-left: 4px
}
.u-mt8 {
    margin-top: 8px
}
.u-mr8 {
    margin-right: 8px
}
.u-mb8 {
    margin-bottom: 8px
}
.u-ml8 {
    margin-left: 8px
}
.u-mt12 {
    margin-top: 12px
}
.u-mr12 {
    margin-right: 12px
}
.u-mb12 {
    margin-bottom: 12px
}
.u-ml12 {
    margin-left: 12px
}
.u-mt16 {
    margin-top: 16px
}
.u-mr16 {
    margin-right: 16px
}
.u-mb16 {
    margin-bottom: 16px
}
.u-ml16 {
    margin-left: 16px
}
.u-mt20 {
    margin-top: 20px
}
.u-mr20 {
    margin-right: 20px
}
.u-mb20 {
    margin-bottom: 20px
}
.u-ml20 {
    margin-left: 20px
}
.u-mt24 {
    margin-top: 24px
}
.u-mr24 {
    margin-right: 24px
}
.u-mb24 {
    margin-bottom: 24px
}
.u-ml24 {
    margin-left: 24px
}
.u-mt28 {
    margin-top: 28px
}
.u-mr28 {
    margin-right: 28px
}
.u-mb28 {
    margin-bottom: 28px
}
.u-ml28 {
    margin-left: 28px
}
.u-mt32 {
    margin-top: 32px
}
.u-mr32 {
    margin-right: 32px
}
.u-mb32 {
    margin-bottom: 32px
}
.u-ml32 {
    margin-left: 32px
}
.u-mt36 {
    margin-top: 36px
}
.u-mr36 {
    margin-right: 36px
}
.u-mb36 {
    margin-bottom: 36px
}
.u-ml36 {
    margin-left: 36px
}
.u-mt40 {
    margin-top: 40px
}
.u-mr40 {
    margin-right: 40px
}
.u-mb40 {
    margin-bottom: 40px
}
.u-ml40 {
    margin-left: 40px
}
.u-mt44 {
    margin-top: 44px
}
.u-mr44 {
    margin-right: 44px
}
.u-mb44 {
    margin-bottom: 44px
}
.u-ml44 {
    margin-left: 44px
}
.u-mt48 {
    margin-top: 48px
}
.u-mr48 {
    margin-right: 48px
}
.u-mb48 {
    margin-bottom: 48px
}
.u-ml48 {
    margin-left: 48px
}
.u-mt52 {
    margin-top: 52px
}
.u-mr52 {
    margin-right: 52px
}
.u-mb52 {
    margin-bottom: 52px
}
.u-ml52 {
    margin-left: 52px
}
.u-mt56 {
    margin-top: 56px
}
.u-mr56 {
    margin-right: 56px
}
.u-mb56 {
    margin-bottom: 56px
}
.u-ml56 {
    margin-left: 56px
}
.u-mt60 {
    margin-top: 60px
}
.u-mr60 {
    margin-right: 60px
}
.u-mb60 {
    margin-bottom: 60px
}
.u-ml60 {
    margin-left: 60px
}
.u-mt64 {
    margin-top: 64px
}
.u-mr64 {
    margin-right: 64px
}
.u-mb64 {
    margin-bottom: 64px
}
.u-ml64 {
    margin-left: 64px
}
.u-mt68 {
    margin-top: 68px
}
.u-mr68 {
    margin-right: 68px
}
.u-mb68 {
    margin-bottom: 68px
}
.u-ml68 {
    margin-left: 68px
}
.u-mt72 {
    margin-top: 72px
}
.u-mr72 {
    margin-right: 72px
}
.u-mb72 {
    margin-bottom: 72px
}
.u-ml72 {
    margin-left: 72px
}
.u-mt76 {
    margin-top: 76px
}
.u-mr76 {
    margin-right: 76px
}
.u-mb76 {
    margin-bottom: 76px
}
.u-ml76 {
    margin-left: 76px
}
.u-mt80 {
    margin-top: 80px
}
.u-mr80 {
    margin-right: 80px
}
.u-mb80 {
    margin-bottom: 80px
}
.u-ml80 {
    margin-left: 80px
}
.u-mtauto {
    margin-top: auto
}
.u-mrauto {
    margin-right: auto
}
.u-mbauto {
    margin-bottom: auto
}
.u-mlauto {
    margin-left: auto
}
.u-pt0 {
    padding-top: 0
}
.u-pr0 {
    padding-right: 0
}
.u-pb0 {
    padding-bottom: 0
}
.u-pl0 {
    padding-left: 0
}
.u-pt4 {
    padding-top: 4px
}
.u-pr4 {
    padding-right: 4px
}
.u-pb4 {
    padding-bottom: 4px
}
.u-pl4 {
    padding-left: 4px
}
.u-pt8 {
    padding-top: 8px
}
.u-pr8 {
    padding-right: 8px
}
.u-pb8 {
    padding-bottom: 8px
}
.u-pl8 {
    padding-left: 8px
}
.u-pt12 {
    padding-top: 12px
}
.u-pr12 {
    padding-right: 12px
}
.u-pb12 {
    padding-bottom: 12px
}
.u-pl12 {
    padding-left: 12px
}
.u-pt16 {
    padding-top: 16px
}
.u-pr16 {
    padding-right: 16px
}
.u-pb16 {
    padding-bottom: 16px
}
.u-pl16 {
    padding-left: 16px
}
.u-pt20 {
    padding-top: 20px
}
.u-pr20 {
    padding-right: 20px
}
.u-pb20 {
    padding-bottom: 20px
}
.u-pl20 {
    padding-left: 20px
}
.u-pt24 {
    padding-top: 24px
}
.u-pr24 {
    padding-right: 24px
}
.u-pb24 {
    padding-bottom: 24px
}
.u-pl24 {
    padding-left: 24px
}
.u-pt28 {
    padding-top: 28px
}
.u-pr28 {
    padding-right: 28px
}
.u-pb28 {
    padding-bottom: 28px
}
.u-pl28 {
    padding-left: 28px
}
.u-pt32 {
    padding-top: 32px
}
.u-pr32 {
    padding-right: 32px
}
.u-pb32 {
    padding-bottom: 32px
}
.u-pl32 {
    padding-left: 32px
}
.u-pt36 {
    padding-top: 36px
}
.u-pr36 {
    padding-right: 36px
}
.u-pb36 {
    padding-bottom: 36px
}
.u-pl36 {
    padding-left: 36px
}
.u-pt40 {
    padding-top: 40px
}
.u-pr40 {
    padding-right: 40px
}
.u-pb40 {
    padding-bottom: 40px
}
.u-pl40 {
    padding-left: 40px
}
.u-pt44 {
    padding-top: 44px
}
.u-pr44 {
    padding-right: 44px
}
.u-pb44 {
    padding-bottom: 44px
}
.u-pl44 {
    padding-left: 44px
}
.u-pt48 {
    padding-top: 48px
}
.u-pr48 {
    padding-right: 48px
}
.u-pb48 {
    padding-bottom: 48px
}
.u-pl48 {
    padding-left: 48px
}
.u-pt52 {
    padding-top: 52px
}
.u-pr52 {
    padding-right: 52px
}
.u-pb52 {
    padding-bottom: 52px
}
.u-pl52 {
    padding-left: 52px
}
.u-pt56 {
    padding-top: 56px
}
.u-pr56 {
    padding-right: 56px
}
.u-pb56 {
    padding-bottom: 56px
}
.u-pl56 {
    padding-left: 56px
}
.u-pt60 {
    padding-top: 60px
}
.u-pr60 {
    padding-right: 60px
}
.u-pb60 {
    padding-bottom: 60px
}
.u-pl60 {
    padding-left: 60px
}
.u-pt64 {
    padding-top: 64px
}
.u-pr64 {
    padding-right: 64px
}
.u-pb64 {
    padding-bottom: 64px
}
.u-pl64 {
    padding-left: 64px
}
.u-pt68 {
    padding-top: 68px
}
.u-pr68 {
    padding-right: 68px
}
.u-pb68 {
    padding-bottom: 68px
}
.u-pl68 {
    padding-left: 68px
}
.u-pt72 {
    padding-top: 72px
}
.u-pr72 {
    padding-right: 72px
}
.u-pb72 {
    padding-bottom: 72px
}
.u-pl72 {
    padding-left: 72px
}
.u-pt76 {
    padding-top: 76px
}
.u-pr76 {
    padding-right: 76px
}
.u-pb76 {
    padding-bottom: 76px
}
.u-pl76 {
    padding-left: 76px
}
.u-pt80 {
    padding-top: 80px
}
.u-pr80 {
    padding-right: 80px
}
.u-pb80 {
    padding-bottom: 80px
}
.u-pl80 {
    padding-left: 80px
}

/* DLCコンテンツここから */

div.DLC-set-container{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.DLC-set{
	margin-right: 10px;
}

.DLC-set p.DLC-img img{
	width: 100%;
	max-width: 270px;
}

.DLC-set p.set-title{
	margin: 0;
	text-align: center;
	font-weight: bold;
	font-size: 17px;
}
.DLC-set p.set-content{
	margin: 0;
	text-align: left;
}

p.DLC-img{
	margin: 0;
}

div.dlc-content{
	max-width: 890px;
}

div.stage-pass-container h2.DLC-title{
	font-size: 25px;
	font-weight: bold;
	border-left: 5px solid #FFFFFF;
	padding-left: 10px;
}

h2.resource_DLC-title{
	font-size: 20px;
	font-weight: bold;
	border-left: 5px solid #FFFFFF;
	padding-left: 19px;
}

div.resource_DLC-set-container{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
	max-width: 850px;
	margin-bottom: 70px;
}

p.resource_DLC-img img{
	width: 100%;
	max-width: 350px;
}
.set-price{
	font-size: 17px;
	font-weight: bold;
}
/* DLCコンテンツここまで */

.br_sp{
	display: none;
}

/* News内table ここから */
.news-spec{
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	max-width: 1000px;
}
.news-spec-head{
	padding: 10px;
	width: 100%;
	max-width: 200px;
	font-weight: bold;
	background: rgba(0,130,240,.5);
	margin-bottom: 20px;
	display: flex;
	align-items: center;
}
.news-spec-content{
	padding: 10px;
	width: 100%;
	max-width: 750px;
	margin-bottom: 20px;
}
/* News内table ここまで */

/* 2024/02/05 テンプレート用css ここから */
.news_2image{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 0px;
}
.news_2image p{
	width: 100%;
	max-width: 520px;
}
.news_2image_2caption{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 60px;
}
.news_2image_wrap{
	width: 100%;
	max-width: 520px;
}
.news_2image_wrap p{
	margin: 0;
}
.news_2image_1caption{
	margin-bottom: 100px;
}
.news_2image_1caption > .news_2image{
	margin-bottom: 0;
}
.news_2image_1caption p{
	margin: 0;
}
.news_side_image{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.news_side_ImageContent{
	width: 100%;
	max-width: 520px;
}
.news_side_TxtContent{
	width: 100%;
	max-width: 500px;
}
.side_content_wrap{
	margin: 100px auto;
}
.news_subtitle{
	text-align: left;
	font-size: 20px;
}
/* 2024/02/05 テンプレート用css ここまで */

@media screen and (min-width:320px) {
.flex-inline .col-s-12, .flex .col-s-12 {
    width: 100%
}
.flex-inline .col-s-10, .flex .col-s-10 {
    width: 83.33%
}
.flex-inline .col-s-9, .flex .col-s-9 {
    width: 75%
}
.flex-inline .col-s-8, .flex .col-s-8 {
    width: 66.66%
}
.flex-inline .col-s-7, .flex .col-s-7 {
    width: 58.33%
}
.flex-inline .col-s-6, .flex .col-s-6 {
    width: 50%
}
.flex-inline .col-s-5, .flex .col-s-5 {
    width: 41.66%
}
.flex-inline .col-s-4, .flex .col-s-4 {
    width: 33.33%
}
.flex-inline .col-s-3, .flex .col-s-3 {
    width: 25%
}
.flex-inline .col-s-2, .flex .col-s-2 {
    width: 16.66%
}
.flex-inline .col-s-1, .flex .col-s-1 {
    width: 8.33%
}
.spec-data dd {
    flex-wrap: wrap
}
.spec-data-stack {
    min-width: 90px;
    margin-bottom: 4px
}
.u-align-s-left {
    text-align: left
}
.u-align-s-center {
    text-align: center
}
.u-align-s-right {
    text-align: right
}
}

@media screen and (min-width:375px) {
.player-list-item {
    margin: 2% .5% 0;
    padding-top: 49%;
    width: 49%
}
}

@media screen and (min-width:600px) {
.flex-inline .col-m-12, .flex .col-m-12 {
    width: 100%
}
.flex-inline .col-m-10, .flex .col-m-10 {
    width: 83.33%
}
.flex-inline .col-m-9, .flex .col-m-9 {
    width: 75%
}
.flex-inline .col-m-8, .flex .col-m-8 {
    width: 66.66%
}
.flex-inline .col-m-7, .flex .col-m-7 {
    width: 58.33%
}
.flex-inline .col-m-6, .flex .col-m-6 {
    width: 50%
}
.flex-inline .col-m-5, .flex .col-m-5 {
    width: 41.66%
}
.flex-inline .col-m-4, .flex .col-m-4 {
    width: 33.33%
}
.flex-inline .col-m-3, .flex .col-m-3 {
    width: 25%
}
.flex-inline .col-m-2, .flex .col-m-2 {
    width: 16.66%
}
.flex-inline .col-m-1, .flex .col-m-1 {
    width: 8.33%
}
.heading-image.is-underlined:after {
    height: 25px
}
.l-header-storebutton {
    padding: 8px 32px
}
.l-header-lang {
    display: flex;
    margin-left: 16px
}
.l-nav-lang {
    display: none
}
.l-footer-copy {
    text-align: center
}
.event-guide {
    display: flex
}
.event-guide-heading {
    margin-bottom: 0;
    flex-basis: 100px
}
.info-card-container .info-card {
    width: calc(50% - 16px)
}
.hero-text.en-horizontal {
    max-width: 570px
}
.home-cfbanner__link {
    width: auto
}
.spec-data dd {
    flex-wrap: wrap
}
.player-pagination-next, .player-pagination-prev {
    font-size: 14px;
    font-size: 1.4rem
}
.player-pagination-next span, .player-pagination-prev span {
    display: inline-block;
    width: auto
}
.player-list-text {
    padding: 75% 16px 16px
}
.player-list-code {
    padding-top: 8px;
    font-size: 20px;
    font-size: 2rem
}
.player-list-name {
    font-size: 14px;
    font-size: 1.4rem
}
.presskit-list-item {
    width: 33.33%
}
.report-table td, .report-table th {
    padding: 1em
}
.u-align-m-left {
    text-align: left
}
.u-align-m-center {
    text-align: center
}
.u-align-m-right {
    text-align: right
}
div.home-overview-custom{
	flex-wrap: nowrap;
}
}

@media screen and (min-width:960px) {
.flex-inline .col-l-12, .flex .col-l-12 {
    width: 100%
}
.flex-inline .col-l-10, .flex .col-l-10 {
    width: 83.33%
}
.flex-inline .col-l-9, .flex .col-l-9 {
    width: 75%
}
.flex-inline .col-l-8, .flex .col-l-8 {
    width: 66.66%
}
.flex-inline .col-l-7, .flex .col-l-7 {
    width: 58.33%
}
.flex-inline .col-l-6, .flex .col-l-6 {
    width: 50%
}
.flex-inline .col-l-5, .flex .col-l-5 {
    width: 41.66%
}
.flex-inline .col-l-4, .flex .col-l-4 {
    width: 33.33%
}
.flex-inline .col-l-3, .flex .col-l-3 {
    width: 25%
}
.flex-inline .col-l-2, .flex .col-l-2 {
    width: 16.66%
}
.flex-inline .col-l-1, .flex .col-l-1 {
    width: 8.33%
}
.c-datalist dd, .c-datalist dt {
    margin-top: 16px
}
.c-datalist dt {
    width: 240px
}
.c-datalist dd {
    padding-left: 16px;
    width: calc(100% - 240px)
}
.l-header-inner {
    padding: 0 14px
}
.l-header-logo {
    width: auto
}
.l-header-sns {
    display: block;
    padding: 14px
}
.l-nav-drawer {
    background: repeating-linear-gradient(hsla(0,0%,100%,.1), hsla(0,0%,100%,.1) 2px, transparent 0, transparent 4px), linear-gradient(90deg, #002d52 0, #0082f0 35%, #0082f0 65%, #002d52);
    display: block;
    opacity: 1;
    padding: 8px;
    position: relative;
    transition: none;
    visibility: visible;
    z-index: 99
}
.l-nav-drawer.is-fixed {
    -webkit-animation: slideDown .4s ease-in forwards;
    animation: slideDown .4s ease-in forwards;
    position: fixed;
    bottom: auto;
    top: 0
}
.l-nav-list {
    margin: auto;
    justify-content: center;
    max-width: 1080px
}
.l-nav-item {
    width: auto
}
.l-nav-text {
    display: block
}
.l-nav-text:after, .l-nav-text:before {
    content: "";
    display: block;
    height: 0;
    position: absolute;
    transition: all .2s ease-in;
    width: 0
}
.l-nav-text:before {
    border-left: 0 solid #fff;
    border-top: 0 solid #fff;
    left: 0;
    top: 0
}
.l-nav-text:after {
    border-bottom: 0 solid #fff;
    border-right: 0 solid #fff;
    bottom: 0;
    right: 0
}
.l-nav-text:hover:after, .l-nav-text:hover:before {
    height: 100%;
    width: 100%
}
.l-nav-text:hover:before {
    border-left: 1px solid #fff;
    border-top: 1px solid #fff
}
.l-nav-text:hover:after {
    border-bottom: 1px solid #fff;
    border-right: 1px solid #fff
}
.l-nav-dropdown {
    background: rgba(0,0,0,.8);
    display: flex;
    justify-content: center;
    padding: 8px;
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    width: 100%
}
.l-nav-dropdown-item {
    width: auto
}
.l-nav-dropdown-trigger .icon, .l-nav-humberger, .l-nav-sns {
    display: none
}
.l-contents-main {
    width: 754px
}
.l-contents-sub {
    margin-left: 32px;
    width: 294px
}
.l-footer-inner {
    flex-wrap: nowrap
}
.l-footer-logo {
    margin-right: auto;
    text-align: left;
    width: 200px
}
.l-footer-contents {
    width: auto
}
.l-footer-sns {
    margin-top: 0;
    text-align: right
}
.l-footer-nav {
    font-size: 14px;
    font-size: 1.4rem
}
.backtotop-button {
    z-index: 99
}
.info-card-container .info-card {
    width: calc(25% - 16px)
}
.hero-inner {
    background: url("../images/rtf2_topbanner.f4739f6.jpg") no-repeat 50%/cover;
    max-height: 790px;
    overflow: hidden
}
.hero-inner:after {
    padding-top: 64%
}
.hero-logo {
    bottom: auto;
    top: 15%;
    left: 3%;
    right: auto;
    width: 706px;
    max-width: 100%
}
.hero-logo.pc {
    display: inline
}
.hero-logo.sp {
    display: none
}
.hero-text.en-horizontal {
    bottom: auto;
    top: 112px
}
.hero-text.ja-horizontal {
    display: none;
    transform: none
}
.hero-text.ja-vertical {
    display: block;
    height: 50%;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
    width: auto;
    right: 32px
}
.hero-platform {
    bottom: 12px
}
.hero-platform img {
    height: 41px
}
.hero-twitter {
    display: block;
    position: absolute;
    bottom: 100px;
    left: 4%;
    width: 238px
}
.home-info-slider {
    width: calc(100% - 35px);
    max-width: 1010px
}
.home-info-slider .swiper-slide:not(.swiper-slide-active):not(.swiper-slide-next) {
    opacity: .4
}
.home-info-slider .swiper-slide.swiper-slide-next+.swiper-slide {
    opacity: 1
}
.home-info-slider .swiper-button-next, .home-info-slider .swiper-button-prev {
    display: flex
}
.home-twitter-box {
    display: none
}
.home-overview-block:nth-child(2n) {
    flex-direction: row-reverse
}
.home-overview-block:nth-child(2n) .home-overview-text {
    text-align: left
}
.home-overview-text {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 50%
}
.home-overview-thumbnail {
    width: calc(50% - 16px)
}
.home-overview-block:nth-child(odd) .home-overview-thumbnail {
    border-left: 2px solid #fff;
    padding-left: 16px
}
.home-overview-block:nth-child(2n) .home-overview-thumbnail {
    border-right: 2px solid #fff;
    padding-right: 16px
}
.spec-data dt {
    width: 160px
}
.spec-data dd {
    width: calc(100% - 160px)
}
.player-list-item {
    margin-top: 1.33%;
    padding-top: 24%;
    width: 24%
}
.player-list-item, .player-list-item:hover {
    background: url(../images/rtf2_img_thum_frame_light.b057a67.png) no-repeat 50%;
    background-size: contain
}
.player-list-item:hover:after {
    opacity: 0
}
.player-list-text {
    padding: 75% 12px 8px
}
.presskit-list-item {
    width: 25%
}
.cf2-reward-block {
    display: flex;
    flex-wrap: wrap;
    align-content: flex-start
}
.cf2-reward-image {
    flex-basis: 66%
}
.cf2-reward-body {
    flex-basis: 34%
}
.u-align-l-left {
    text-align: left
}
.u-align-l-center {
    text-align: center
}
.u-align-l-right {
    text-align: right
}
}

@media screen and (max-width:1150px) {
.hero-information {
    left: 0;
    right: 0;
    margin: auto;
    bottom: 100px
}
.DLC-set{
	width: 230px;
	margin-right: 15px;
}
.ResourceDLC-content{
	width: 300px;
}
}

/* タブレット用css ここから */
@media screen and (min-width:768px) and (max-width:1024px) {
    div.home-overview-stage p img{
	    width: 100%;
	    max-width: 348px;
    }
    /* 2024/02/05 テンプレート用css ここから */
	.news_2image{
		justify-content: center;
	}
	.news_2image p{
		max-width: 600px;
		height: auto;
	}
	.news_2image_2caption{
		justify-content: center;
		gap: 50px 0;
	}
	.news_2image_1caption > .news_2image{
		gap: 50px 0;
		margin-bottom: 30px;
	}
	.news_side_image{
		justify-content: center;
		max-width: 480px;
		margin: auto;
	}
	.news_side_ImageContent{
		max-width: 480px;
	}
	/* 2024/02/05 テンプレート用css ここまで */
}
/* タブレット用css ここまで */

@media screen and (max-width:700px) {
.information-table-header-region {
    width: 12rem
}
}

@media screen and (max-width:959px) {
/* セール情報 タブレット ここから */
	div.resource_DLC-set-container{
		justify-content: space-around;
	}
	.news-spec-head{
		max-width: none;
	}
/* セール情報 タブレット ここまで */	
}

@media screen and (max-width:620px) {
.home-banner-item {
    max-width: calc(50% - 16px)
}
}

/* add 20220818 */
.flex-reverse{
	display: flex;
	justify-content: center;
}

.flex-reverse-image{
	max-width: 400px;
}

.flex-reverse-padding{
	padding: 20px;
	line-height: 2;
}
/* add 20220818 */

.anchor{
    display: block;
    padding-top: 70px;
	margin-top: -70px;
}

@media screen and (max-width:510px) {
.hero {
    padding-bottom: 2rem
}
.DLC-set p.DLC-img img{
	max-width: 100%;
}
.DLC-set {
	margin:0;
	width: 100%;
}
.DLC_h2 img{
	width: 62%;
}
	p.resource_DLC-img img{
		width: 100%;
		max-width: none;
	}
.aboutRTF2 img{
	width: 65%;
}
div.stage-pass-container h2.DLC-title{
	font-size: 20px;
}
p.game-overview-txt{
	margin: 0;
	width: 100%;
	padding: 0;
}
div.home-overview-stage p{
	margin-bottom: 5px;
	margin-right: 0;
}
.br_sp{
	display: inline-block;
}
.home-overview-block h2{
	display: inline;
	font-size: 22px;
	font-weight: bold;
	background:linear-gradient(transparent 60%, #1342b8 40%);
	line-height: 1.5;
	letter-spacing: 1px;
}

/* add 20220818 */
.flex-reverse{
	flex-wrap: wrap-reverse;
}
.flex-reverse-padding{
	padding: 0;
	line-height: 2;
}
/* add 20220818 */
.spec-table-wrap{
		overflow-x: scroll;
		white-space: nowrap;
	}
/* News内table ここから */
	.news-spec-title{
		text-align: center;
	}
	.news-spec{
		justify-content: center;
	}
	.news-spec-head{
		text-align: center;
		max-width: none;
		background: rgba(0,130,240,.5);
		margin: 0;
		justify-content: center;
	}
	.news-spec-content{
		text-align: center;
		margin: 0;
	}
/* News内table ここまで */
}

@media screen and (max-width:414px) {
.home-banner {
    padding: 16px 8px
}
}
code[class*=language-], pre[class*=language-] {
    color: #000;
    background: none;
    text-shadow: 0 1px #fff;
    font-family: Consolas, Monaco, "Andale Mono", "Ubuntu Mono", monospace;
    font-size: 1em;
    text-align: left;
    white-space: pre;
    word-spacing: normal;
    word-break: normal;
    word-wrap: normal;
    line-height: 1.5;
    -moz-tab-size: 4;
    -o-tab-size: 4;
    tab-size: 4;
    -webkit-hyphens: none;
    -ms-hyphens: none;
    hyphens: none
}
code[class*=language-]::-moz-selection, code[class*=language-] ::-moz-selection, pre[class*=language-]::-moz-selection, pre[class*=language-] ::-moz-selection {
text-shadow:none;
background:#b3d4fc
}
code[class*=language-]::selection, code[class*=language-] ::selection, pre[class*=language-]::selection, pre[class*=language-] ::selection {
    text-shadow: none;
    background: #b3d4fc
}
pre[class*=language-] {
    padding: 1em;
    margin: .5em 0;
    overflow: auto
}
:not(pre)>code[class*=language-], pre[class*=language-] {
    background: #f5f2f0
}
:not(pre)>code[class*=language-] {
    padding: .1em;
    border-radius: .3em;
    white-space: normal
}
.token.cdata, .token.comment, .token.doctype, .token.prolog {
    color: #708090
}
.token.punctuation {
    color: #999
}
.token.namespace {
    opacity: .7
}
.token.boolean, .token.constant, .token.deleted, .token.number, .token.property, .token.symbol, .token.tag {
    color: #905
}
.token.attr-name, .token.builtin, .token.char, .token.inserted, .token.selector, .token.string {
    color: #690
}
.language-css .token.string, .style .token.string, .token.entity, .token.operator, .token.url {
    color: #9a6e3a;
    background: hsla(0,0%,100%,.5)
}
.token.atrule, .token.attr-value, .token.keyword {
    color: #07a
}
.token.class-name, .token.function {
    color: #dd4a68
}
.token.important, .token.regex, .token.variable {
    color: #e90
}
.token.bold, .token.important {
    font-weight: 700
}
.token.italic {
    font-style: italic
}
.token.entity {
    cursor: help
}

@media print {
code[class*=language-], pre[class*=language-] {
    text-shadow: none
}
}
@font-face {
    font-family: "swiper-icons";
    src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA") format("woff");
    font-weight: 400;
    font-style: normal
}
:root {
--swiper-theme-color:#007aff
}
.swiper-container {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1
}
.swiper-container-vertical>.swiper-wrapper {
    flex-direction: column
}
.swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    transition-property: transform;
    box-sizing: content-box
}
.swiper-container-android .swiper-slide, .swiper-wrapper {
    transform: translateZ(0)
}
.swiper-container-multirow>.swiper-wrapper {
    flex-wrap: wrap
}
.swiper-container-multirow-column>.swiper-wrapper {
    flex-wrap: wrap;
    flex-direction: column
}
.swiper-container-free-mode>.swiper-wrapper {
    transition-timing-function: ease-out;
    margin: 0 auto
}
.swiper-container-pointer-events {
    touch-action: pan-y
}
.swiper-container-pointer-events.swiper-container-vertical {
    touch-action: pan-x
}
.swiper-slide {
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    position: relative;
    transition-property: transform
}
.swiper-slide-invisible-blank {
    visibility: hidden
}
.swiper-container-autoheight, .swiper-container-autoheight .swiper-slide {
    height: auto
}
.swiper-container-autoheight .swiper-wrapper {
    align-items: flex-start;
    transition-property: transform, height
}
.swiper-container-3d {
    perspective: 1200px
}
.swiper-container-3d .swiper-cube-shadow, .swiper-container-3d .swiper-slide, .swiper-container-3d .swiper-slide-shadow-bottom, .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top, .swiper-container-3d .swiper-wrapper {
    transform-style: preserve-3d
}
.swiper-container-3d .swiper-slide-shadow-bottom, .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10
}
.swiper-container-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(270deg, rgba(0,0,0,.5), transparent)
}
.swiper-container-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(90deg, rgba(0,0,0,.5), transparent)
}
.swiper-container-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(0deg, rgba(0,0,0,.5), transparent)
}
.swiper-container-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(180deg, rgba(0,0,0,.5), transparent)
}
.swiper-container-css-mode>.swiper-wrapper {
    overflow: auto;
    scrollbar-width: none;
    -ms-overflow-style: none
}
.swiper-container-css-mode>.swiper-wrapper::-webkit-scrollbar {
display:none
}
.swiper-container-css-mode>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: start start
}
.swiper-container-horizontal.swiper-container-css-mode>.swiper-wrapper {
    -ms-scroll-snap-type: x mandatory;
    scroll-snap-type: x mandatory
}
.swiper-container-vertical.swiper-container-css-mode>.swiper-wrapper {
    -ms-scroll-snap-type: y mandatory;
    scroll-snap-type: y mandatory
}
:root {
--swiper-navigation-size:44px
}
.swiper-button-next, .swiper-button-prev {
    position: absolute;
    top: 50%;
    width: 27px;
width:calc(var(--swiper-navigation-size)/44*27);
    height: 44px;
    height: var(--swiper-navigation-size);
    margin-top: -22px;
margin-top:calc(var(--swiper-navigation-size)*-1/2);
    z-index: 10;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--swiper-theme-color);
    color: var(--swiper-navigation-color, var(--swiper-theme-color))
}
.swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {
    opacity: .35;
    cursor: auto;
    pointer-events: none
}
.swiper-button-next:after, .swiper-button-prev:after {
    font-family: swiper-icons;
    font-size: 44px;
    font-size: var(--swiper-navigation-size);
    text-transform: none!important;
    letter-spacing: 0;
    text-transform: none;
    font-feature-settings: normal,;
    font-variant: normal;
    line-height: 1
}
.swiper-button-prev, .swiper-container-rtl .swiper-button-next {
    left: 10px;
    right: auto
}
.swiper-button-prev:after, .swiper-container-rtl .swiper-button-next:after {
    content: "prev"
}
.swiper-button-next, .swiper-container-rtl .swiper-button-prev {
    right: 10px;
    left: auto
}
.swiper-button-next:after, .swiper-container-rtl .swiper-button-prev:after {
    content: "next"
}
.swiper-button-next.swiper-button-white, .swiper-button-prev.swiper-button-white {
--swiper-navigation-color:#fff
}
.swiper-button-next.swiper-button-black, .swiper-button-prev.swiper-button-black {
--swiper-navigation-color:#000
}
.swiper-button-lock {
    display: none
}
.swiper-pagination {
    position: absolute;
    text-align: center;
    transition: opacity .3s;

    transform: translateZ(0);
    z-index: 10
}
.swiper-pagination.swiper-pagination-hidden {
    opacity: 0
}
.swiper-container-horizontal>.swiper-pagination-bullets, .swiper-pagination-custom, .swiper-pagination-fraction {
    bottom: 10px;
    left: 0;
    width: 100%
}
.swiper-pagination-bullets-dynamic {
    overflow: hidden;
    font-size: 0
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transform: scale(.33);
    position: relative
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active, .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
    transform: scale(1)
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
    transform: scale(.66)
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
    transform: scale(.33)
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
    transform: scale(.66)
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
    transform: scale(.33)
}
.swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    display: inline-block;
    border-radius: 50%;
    background: #000;
    opacity: .2
}
button.swiper-pagination-bullet {
    border: none;
    margin: 0;
    padding: 0;
    box-shadow: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}
.swiper-pagination-clickable .swiper-pagination-bullet {
    cursor: pointer
}
.swiper-pagination-bullet-active {
    opacity: 1;
    background: var(--swiper-theme-color);
    background: var(--swiper-pagination-color, var(--swiper-theme-color))
}
.swiper-container-vertical>.swiper-pagination-bullets {
    right: 10px;
    top: 50%;
    transform: translate3d(0, -50%, 0)
}
.swiper-container-vertical>.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 6px 0;
    display: block
}
.swiper-container-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    top: 50%;
    transform: translateY(-50%);
    width: 8px
}
.swiper-container-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    display: inline-block;
    transition: transform .2s, top .2s
}
.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 4px
}
.swiper-container-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap
}
.swiper-container-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: transform .2s, left .2s
}
.swiper-container-horizontal.swiper-container-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: transform .2s, right .2s
}
.swiper-pagination-progressbar {
    background: rgba(0,0,0,.25);
    position: absolute
}
.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: var(--swiper-theme-color);
    background: var(--swiper-pagination-color, var(--swiper-theme-color));
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transform: scale(0);
    transform-origin: left top
}
.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    transform-origin: right top
}
.swiper-container-horizontal>.swiper-pagination-progressbar, .swiper-container-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
    width: 100%;
    height: 4px;
    left: 0;
    top: 0
}
.swiper-container-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, .swiper-container-vertical>.swiper-pagination-progressbar {
    width: 4px;
    height: 100%;
    left: 0;
    top: 0
}
.swiper-pagination-white {
--swiper-pagination-color:#fff
}
.swiper-pagination-black {
--swiper-pagination-color:#000
}
.swiper-pagination-lock {
    display: none
}
.swiper-scrollbar {
    border-radius: 10px;
    position: relative;
    -ms-touch-action: none;
    background: rgba(0,0,0,.1)
}
.swiper-container-horizontal>.swiper-scrollbar {
    position: absolute;
    left: 1%;
    bottom: 3px;
    z-index: 50;
    height: 5px;
    width: 98%
}
.swiper-container-vertical>.swiper-scrollbar {
    position: absolute;
    right: 3px;
    top: 1%;
    z-index: 50;
    width: 5px;
    height: 98%
}
.swiper-scrollbar-drag {
    height: 100%;
    width: 100%;
    position: relative;
    background: rgba(0,0,0,.5);
    border-radius: 10px;
    left: 0;
    top: 0
}
.swiper-scrollbar-cursor-drag {
    cursor: move
}
.swiper-scrollbar-lock {
    display: none
}
.swiper-zoom-container {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center
}
.swiper-zoom-container>canvas, .swiper-zoom-container>img, .swiper-zoom-container>svg {
    max-width: 100%;
    max-height: 100%;
    -o-object-fit: contain;
    object-fit: contain
}
.swiper-slide-zoomed {
    cursor: move
}
.swiper-lazy-preloader {
    width: 42px;
    height: 42px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -21px;
    margin-top: -21px;
    z-index: 10;
    transform-origin: 50%;
    -webkit-animation: swiper-preloader-spin 1s linear infinite;
    animation: swiper-preloader-spin 1s linear infinite;
    box-sizing: border-box;
    border-left: 4px solid var(--swiper-theme-color);
    border-bottom: 4px solid var(--swiper-theme-color);
    border-right: 4px solid var(--swiper-theme-color);
    border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
    border-radius: 50%;
    border-top: 4px solid transparent
}
.swiper-lazy-preloader-white {
--swiper-preloader-color:#fff
}
.swiper-lazy-preloader-black {
--swiper-preloader-color:#000
}
@-webkit-keyframes swiper-preloader-spin {
to {
transform:rotate(1turn)
}
}
@keyframes swiper-preloader-spin {
to {
transform:rotate(1turn)
}
}
.swiper-container .swiper-notification {
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none;
    opacity: 0;
    z-index: -1000
}
.swiper-container-fade.swiper-container-free-mode .swiper-slide {
    transition-timing-function: ease-out
}
.swiper-container-fade .swiper-slide {
    pointer-events: none;
    transition-property: opacity
}
.swiper-container-fade .swiper-slide .swiper-slide {
    pointer-events: none
}
.swiper-container-fade .swiper-slide-active, .swiper-container-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}
.swiper-container-cube {
    overflow: visible
}
.swiper-container-cube .swiper-slide {
    pointer-events: none;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    z-index: 1;
    visibility: hidden;
    transform-origin: 0 0;
    width: 100%;
    height: 100%
}
.swiper-container-cube .swiper-slide .swiper-slide {
    pointer-events: none
}
.swiper-container-cube.swiper-container-rtl .swiper-slide {
    transform-origin: 100% 0
}
.swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}
.swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-next, .swiper-container-cube .swiper-slide-next+.swiper-slide, .swiper-container-cube .swiper-slide-prev {
    pointer-events: auto;
    visibility: visible
}
.swiper-container-cube .swiper-slide-shadow-bottom, .swiper-container-cube .swiper-slide-shadow-left, .swiper-container-cube .swiper-slide-shadow-right, .swiper-container-cube .swiper-slide-shadow-top {
    z-index: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}
.swiper-container-cube .swiper-cube-shadow {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    opacity: .6;
    z-index: 0
}
.swiper-container-cube .swiper-cube-shadow:before {
    content: "";
    background: #000;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    filter: blur(50px)
}
.swiper-container-flip {
    overflow: visible
}
.swiper-container-flip .swiper-slide {
    pointer-events: none;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    z-index: 1
}
.swiper-container-flip .swiper-slide .swiper-slide {
    pointer-events: none
}
.swiper-container-flip .swiper-slide-active, .swiper-container-flip .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}
.swiper-container-flip .swiper-slide-shadow-bottom, .swiper-container-flip .swiper-slide-shadow-left, .swiper-container-flip .swiper-slide-shadow-right, .swiper-container-flip .swiper-slide-shadow-top {
    z-index: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

#g-nav{
    /*position:fixed;にし、z-indexの数値を小さくして最背面へ*/
    position:fixed;
  z-index: -1;
  opacity: 0;/*はじめは透過0*/
    /*ナビの位置と形状*/
  top:0;
  width:100%;
    height: 100vh;/*ナビの高さ*/
  background:#000;
    /*動き*/
  transition: all 0.1s;
}

/*アクティブクラスがついたら透過なしにして最前面へ*/
#g-nav.panelactive{
  opacity: 0.9;
  z-index:999;
}

/*ナビゲーションの縦スクロール*/
#g-nav.panelactive #g-nav-list{
    /*ナビの数が増えた場合縦スクロール*/
    position: fixed;
    z-index: 999; 
    width: 100%;
    height: 100vh;/*表示する高さ*/
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}

/*ナビゲーション*/
#g-nav ul {
    display: none;
    /*ナビゲーション天地中央揃え*/
    position: absolute;
    z-index: 999;
    top:40%;
    left:50%;
    transform: translate(-50%,-50%);
}

#g-nav.panelactive ul {
	width: 130px;
    display: flex;
	flex-wrap: wrap;
}

/*リストのレイアウト設定*/

#g-nav li{
  list-style: none;
    text-align: center; 
}

#g-nav li a{
  color: #FFFFFF;
  text-decoration: none;
  padding:10px;
  display: block;
  font-weight: bold;
  font-size: 18px;
}

/*========= ボタンのためのCSS ===============*/
.openbtn1{
  position:fixed;
    z-index: 9999;/*ボタンを最前面に*/
  right: 10px;
  cursor: pointer;
    width: 50px;
    height:50px;
}
  
/*×に変化*/  
.openbtn1 span{
    display: inline-block;
    transition: all .4s;
    position: absolute;
    left: 14px;
    height: 3px;
    border-radius: 2px;
  background-color: #FFFFFF;
    width: 45%;
  }

.openbtn1 span:nth-of-type(1) {
  top:15px; 
}

.openbtn1 span:nth-of-type(2) {
  top:23px;
}

.openbtn1 span:nth-of-type(3) {
  top:31px;
}

.openbtn1.active span:nth-of-type(1) {
    top: 18px;
    left: 18px;
    transform: translateY(6px) rotate(-45deg);
    width: 30%;
}

.openbtn1.active span:nth-of-type(2) {
  opacity: 0;
}

.openbtn1.active span:nth-of-type(3){
    top: 30px;
    left: 18px;
    transform: translateY(-6px) rotate(45deg);
    width: 30%;
}

div.openbtn1.l-nav.l-nav-humberger.is.active{
	top: 8px;
}


/*========= ページトップのためのCSS ===============*/
/*リンクの形状*/
#page-top a{
  display: flex;
  justify-content:center;
  align-items:center;
  border-radius: 5px;
  width: 80px;
  color: #fff;
  text-align: center;
  text-transform: uppercase; 
  text-decoration: none;
  font-size:0.6rem;
  transition:all 0.3s;
}

/*リンクを右下に固定*/
#page-top {
  position: fixed;
  right: 10px;
  z-index: 2;
    /*はじめは非表示*/
  opacity: 0;
  transform: translateY(100px);
}

/*　上に上がる動き　*/

#page-top.UpMove{
  animation: UpAnime 0.5s forwards;
}
@keyframes UpAnime{
  from {
    opacity: 0;
  transform: translateY(100px);
  }
  to {
    opacity: 1;
  transform: translateY(0);
  }
}

/*　下に下がる動き　*/

#page-top.DownMove{
  animation: DownAnime 0.5s forwards;
}
@keyframes DownAnime{
  from {
    opacity: 1;
  transform: translateY(0);
  }
  to {
    opacity: 1;
  transform: translateY(100px);
  }
}