@charset "utf-8";
body,div,dl,dt,dd,ul,ol,li,p,h1,h2,h3,h4,h5,h6,th,td,pre,code,blockquote,form,fieldset,legend,input,textarea,figcaption,figure{margin:0;padding:0}table{border-collapse:collapse;border-spacing:0}fieldset,img{border:0}address,caption,cite,code,dfn,em,th,var{font-style:normal;font-weight:normal}li{list-style:none}caption,th{text-align:left}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}q:before,q:after{content:''}abbr,acronym{border:0;font-variant:normal}sup{vertical-align:text-top}sub{vertical-align:text-bottom}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit}input,textarea,select{*font-size:100%}legend{color:#FFF}hr{display:none}img{vertical-align:bottom}select,input,button,textarea{font-size:99%}table{font-size:inherit;font:100%;border-collapse:collapse;border-spacing:0}pre,code,kbd,samp,tt{font-family:monospace;*font-size:108%;line-height:100%}.hd{display:block;width:0;height:0;overflow:hidden}.cf:before,.cf:after{content:"";display:table}.cf:after{clear:both}.cf{*zoom:1}article,aside,details,figcaption,figure,footer,header,hgroup,hr,menu,nav,section,main{display:block}*{margin:0;padding:0;box-sizing:border-box;max-height:999999px;outline:none;}*:focus{outline: none;}button{background-color:transparent;border:none;cursor:pointer;outline:none;padding:0;}
/*-----------------------------------------------
 * Template
 * Key frames
 * link
 * Modal
 * Parts
 * Header
 * Footer
 * Edf
 * Photo modal
 * Special - papercraft
-------------------------------------------------*/
/*-----------------------------------------------
 * Template
-------------------------------------------------*/
html {
    scrollbar-color: #24c8c8 #1a1a1a;
    scrollbar-width: thin;
}
::-webkit-scrollbar {
    width: 6px;
    height: 6px;
    background: #1a1a1a;
}
.scrollWrap::-webkit-scrollbar-thumb {
    background: #24c8c8;
    box-shadow: none;
}
body {
    -webkit-text-size-adjust: 100%;
    background-color: #000;
    color: #fff;
    font-family: 'Noto Sans SC', "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
    font-feature-settings: "palt";
    font-size: 14px;
    font-weight: normal;
    letter-spacing: 0.07em;
    line-height: 1.8;
    word-wrap: break-word;
}
.pc { display: block; }
.sp { display: none; }
a { color: #222; }
a:hover { text-decoration: none; }
.ah  { transition: opacity .3s ease; }
.ah:hover  { opacity: .7; }
::selection {
    background: #6ccfee;
    color: #fff;
}
::-moz-selection {
    background: #6ccfee;
    color:#fff;
}
/* font */
.font-raj { font-family: 'Rajdhani'; }
@media screen and (max-width:770px) { 
    body {
        font-size: 22px;
    }
    .sp { display: block; }
    .pc { display: none!important; }
    .ah:hover  { opacity: 1; }
}
/*-----------------------------------------------
 * Key frames
-------------------------------------------------*/
@keyframes flash {
    0%   { opacity: .8; }
    100% { opacity: 1; }
}
@keyframes scrollUp { 
    0%   { top: 100%; }
    100% { top: -100%; } 
}
@keyframes scrollDown { 
    0%   { top: -100%; }
    100% { top: 100%; } 
}
@keyframes rumble {
    0%   { transform:translate(0, 0) rotate(0) }
    16%  { transform:translate(25px, -50px) rotate(-5deg) }
    33%  { transform:translate(50px, 15px) rotate(2deg) }
    49%  { transform:translate(7px, 5px) rotate(1deg) }
    66%  { transform:translate(-25px, -40px) rotate(7deg) }
    83%  { transform:translate(-50px, 25px) rotate(-3deg) }
    100% { transform:translate(5px, 7px) rotate(-8deg) }
}
/*-----------------------------------------------
 * link
-------------------------------------------------*/
.linkA:hover {
    animation: flash .001s ease-in-out infinite alternate;
    filter: brightness(1.6);
}
.nonlink {
    pointer-events: none;
    opacity: 0.4;
}
.linkA:hover .photoLists__text{
    background-color: #2acaca;
}
/*-----------------------------------------------
 * Modal
-------------------------------------------------*/
.modalBox {
    -webkit-overflow-scrolling: touch;
    background: #000;
    display: none;
    width: 100%;
    height: 100%;
    min-width: 1200px;
    min-height: 640px;
    overflow: auto;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
}
.oneModal {
    display: none;
    width: 100%;
    height: 100%;
    position: relative;
    z-index: 9;
}
.oneModalIn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    height: auto;
    width: 100%;
    min-width: 1200px;
    min-height: 100%;
    margin: 0 auto;
    position: relative;
}
.oneModalIn__cont {
    padding: 50px 0;
}
@media screen and (max-width:770px) {
    .modalBox{
        min-width: 100%;
        min-height: 100%;
    }
    .oneModalIn {
        min-width: 100%;
    }
    .oneModalIn__cont {
        width: 100%;
        padding: 30px 0;
    }
}
/* common */
.commonIframe {
    width: 100%;
    height: 100%;
    display: block;
}
/* youtube */
.youtubeIframeWrap {
    width: 920px;
    height: 520px;
}
@media screen and (max-width:770px) {
    .youtubeIframeWrap {
        width: 100%;
        height: auto;
        padding-top: 56.25%;
        position: relative;
    }
    .youtubeIframe {
        position: absolute;
        top: 0;
        left: 0;
    }
}
/* photo */
.photoModal {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
.photoModal__in {
    width: 100%;
    height: 100%;
}
.photoModal__imgWrap {
    width: 100%;
    height: 100%;
    padding: 8px;
}
.photoModal__imgWrap > div {
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    width: 100%;
    height: 100%;
}
@media screen and (max-width: 770px) {
    .photoModal{
        align-items: center;
        padding-right: 0!important;
        padding-left: 0!important;
    }
    .photoModal__in{
        padding-top: 61%;
        height: auto;
    }
    .photoModal__imgWrap{
        position: absolute!important;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        padding: 20px;
    }
    .photoModal__imgWrap > div{
        background-size: 100%;
    }
}
/*-----------------------------------------------
 * Parts
-------------------------------------------------*/
.loading{
    width: 100%;
    height: 100%;
    background: #000;
    position: fixed;
    z-index: 1000000;
}
.loadIMGWrap{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 3;
}
.loadIMG{
    width: 30vw;
    height: 195vw;
    background: url(../img/top/top_logo.png) no-repeat center center / contain;
    opacity: 0;
    transition: all .2s ease;
}
.loadIMG.on{
    opacity: 1;
}
@media screen and (max-width: 770px){
    .loadIMG{
        width: 48vw;
        height: 31.2vw;
    }
}
/**
 * sub common
 */
#subMain {
    min-width: 1200px;
    position: relative;
    z-index: 3;
}
@media screen and (max-width:770px) {
    #subMain {
        width: 750px;
        min-width: 100%;
        margin: 0 auto;
        padding-top: 0 !important;
    }
}
/**
 * Article header
 */
.subArticleHeader {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    z-index: 99;
}
.subNav {
    display: flex;
    width: 100%;
    min-width: 1200px;
    pointer-events: none;
    position: fixed;
    left: 0;
}
@media screen and (max-width:770px) {
    .subArticleHeader {
        height: 250px !important;
    }
    .subNav {
        width: 100%;
        height: 125px !important;
        top: auto !important;
        bottom: 0;
        min-width: 100%;
    }
}
/* logo */
.subNav__logo {
    background-size: auto auto;
    background-color: rgba(0, 0, 0, .4);
    background-image: repeating-linear-gradient(0deg, transparent, transparent 1px, rgba(0, 0, 0, .6) 1px, rgba(0, 0, 0, .6) 2px );
    pointer-events: auto;
    position: relative;
    backdrop-filter: blur(4px);
}
.subNav__logo a {
    display: block;
    width: 100%;
    height: 100%;
}
.subNav__logo a img {
    width: 124px;
    height: 80px;
    margin: auto;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transition: filter .6s ease-in-out;
}
@media screen and (max-width:770px) {
    .subNav__logo {
        display: none;
    }
}
/* text */
.subNav__logo__text1 {
    color: #fff;
    font-size: 8px;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: .2;
    text-align: center;
    white-space: nowrap;
}
.subNav__logo__text2 {
    color: #fff;
    font-size: 8px;
    line-height: 1.2;
    position: absolute;
    top: 50%;
    left: calc(100% + 6px);
    transform: translateY(-50%);
    opacity: .2;
    white-space: nowrap;
    pointer-events: none;
}
/* subNav */
.subNavListsWrap {
    background-color: rgba(0, 0, 0, .4);
    background-image: repeating-linear-gradient(0deg, transparent, transparent 1px, rgba(0, 0, 0, .6) 1px, rgba(0, 0, 0, .6) 2px );
    margin-left: auto;
    pointer-events: auto;
    backdrop-filter: blur(4px);
}
.subNavLists {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 100%;
    height: 100%;
}
.subNavLists > li {
    width: 100%;
    margin-bottom: 16px;
}
.subNavLists > li:last-child {
    margin-bottom: 0;
}
.subNavLists > li a {
    color: #fff;
    display: block;
    font-size: 16px;
    width: 100%;
    position: relative;
    text-decoration: none;
    transition: color .3s ease-in-out;
}
.subNavLists > li a:hover,
.subNavLists > li a.is-active {
    color: #24c8c8;
}
.subNavLists > li a:after {
    content: "";
    background-color: #24c8c8;
    width: 0;
    height: 2px;
    margin: auto;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    transition: width .6s cubic-bezier(0.25, 1, 0.5, 1);
}
.subNavLists > li a:hover:after,
.subNavLists > li a.is-active:after {
    width: 40px;
}
.subNavLists > li a span {
    display: block;
    margin-right: 40px;
    text-align: right;
    transition: transform .6s cubic-bezier(0.25, 1, 0.5, 1);
}
.subNavLists > li a:hover span,
.subNavLists > li a.is-active span {
    transform: translateX(-16px);
}

.subNavLists > li a.is-new:before{
    content: 'NEW';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 24px;
    width: 2.5em;
    height: 16px;
    background-color: #24c8c8;
    color: #000;
    display: block;
    font-family: 'Rajdhani';
    font-size: 16px;
    line-height: 1.1;
    font-weight: 700;
    text-align: center;
    margin: auto 0;
}

.subNavListsWrap__text {
    color: #fff;
    font-size: 8px;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: .2;
    text-align: center;
    white-space: nowrap;
}
@media screen and (max-width:770px) {
    .subNavListsWrap {
        background-color: rgba(0, 0, 0, .8);
        width: 100% !important;
        height: 100% !important;
    }
    .subNavLists {
        flex-direction: inherit;
    }
    .subNavLists > li {
        display: flex;
        align-items: center;
        width: auto;
        margin-bottom: 0;
    }
    .subNavLists > li a {
        display: flex;
        align-items: center;
        font-size: 32px;
        height: 100%;
        padding: 0 40px;
    }
    .subNavLists > li a:after {
        width: 4px;
        height: 0;
        left: 0;
        bottom: auto;
        transition: height .6s cubic-bezier(0.25, 1, 0.5, 1);
    }
    .subNavLists > li a:hover:after,
    .subNavLists > li a.is-active:after {
        width: 4px;
        height: 25px;
    }
    .subNavLists > li a span {
        margin-right: 0;
    }
    .subNavLists > li a:hover span,
    .subNavLists > li a.is-active span {
        transform: translateX(0);
    }

    .subNavLists > li a.is-new:before{
        top: unset;
        left: 0;
        right: 0;
        margin: 0 auto;
        font-size: 20px;
        width: 3em;
        bottom: 10px;
    }

    .subNavListsWrap__text {
        font-size: 16px;
        top: auto;
        bottom: 4px;
    }
}
/* title */
.subArticle__title {
    position: relative;
}
.subArticle__title .is-jp {
    color: #24c8c8;
    font-size: 24px;
    letter-spacing: 0.1em;
    font-weight: 900;
    position: relative;
    z-index: 1;
}
.subArticle__title .is-en {
    color: #24c8c8;
    font-size: 124px;
    line-height: 1;
    font-weight: 700;
    margin-top: 4px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    opacity: .2;
    z-index: 0;
}
.subArticleHeader__text {
    display: none;
}
@media screen and (max-width:770px) {
    .subArticle__title .is-jp {
        font-size: 32px;
    }
    .subArticleHeader__text {
        display: flex;
        align-items: center;
        height: 100%;
        font-size: 16px;
        line-height: 1.6;
        position: absolute;
        top: 0;
        left: 24px;
        opacity: .2;
    }
}
/**
 * sub section
 */
.subSec,
.inSubSec {
    position: relative;
}
@media screen and (min-width: 771px){
/*    .subSec:last-of-type {
        padding-bottom: 0 !important;
    }*/
}

.inSubSec:last-of-type {
    margin-bottom: 0 !important;
}
.subSec__in {
    position: relative;
    z-index: 1;
}
@media screen and (max-width:770px) {
    .subSec {
        padding-top: 125px !important;
        padding-bottom: 250px !important;
    }
    .inSubSec {
        margin-bottom: 125px !important;
        padding-bottom: 250px !important;
    }
}
/* bottom text */
.bottom__text {
    display: flex;
    align-items: flex-end;
    width: 100%;
    height: calc(100% - 520px);
    position: absolute;
    top: 520px;
    right: 0;
    z-index: 0;
}
.bottom__text span {
    background-repeat: no-repeat;
    background-size: auto;
    width: 100%;
    height: 120px;
    position: sticky;
    bottom: 0;
    overflow: hidden;
    font-size:180px;
    line-height: 0.74;
    color: #24c8c8;
    opacity: 0.4;
    font-family: 'Rajdhani', sans-serif;
    font-weight: 700;
}
@media screen and (max-width:770px) {
    .bottom__text {
        height: 100%;
        top: 0;
    }
    .bottom__text span {
        height: 96px;
        font-size: 146px;
    }
}
.bottom__text.is-soldier span {
    /*background-position: top right;
    background-image: url(../img/edf/bottomtext_soldier.png);*/
    text-align: right;
}
.bottom__text.is-edf251-facility span {
    /*background-position: top left;
    background-image: url(../img/edf/bottomtext_edf251_facility.png);*/
}
.bottom__text.is-edf251-character span {
    /*background-position: top right;
    background-image: url(../img/edf/bottomtext_edf251_character.png);*/
    text-align: right;
}
.bottom__text.is-cRanger span {
    background-position: top left;
    background-image: url(../img/edf/bottomtext_01.png);
}
.bottom__text.is-cWing span {
    background-position: top left;
    background-image: url(../img/edf/bottomtext_02.png);
}
.bottom__text.is-enemy span {
/*    background-position: top right;
    background-image: url(../img/enemy/bottomtext_01.png);*/
    text-align: right;
}
.bottom__text.is-special span{
    text-align: right;
}
.bottom__text.is-cEnemy span {
    background-position: top left;
    background-image: url(../img/enemy/bottomtext_01.png);
}
@media screen and (max-width:770px) {
    .bottom__text.is-soldier span {
        /*background-image: url(../img/edf/bottomtext_soldier_sp.png);*/
    }
    .bottom__text.is-edf251-facility span {
        /*background-image: url(../img/edf/bottomtext_edf251_facility_sp.png);*/
    }
    .bottom__text.is-edf251-character span {
        /*background-image: url(../img/edf/bottomtext_edf251_character_sp.png);*/
    }
    .bottom__text.is-cRanger span {
        background-image: url(../img/edf/bottomtext_01_sp.png);
    }
    .bottom__text.is-cWing span {
        background-image: url(../img/edf/bottomtext_02_sp.png);
    }
    .bottom__text.is-enemy span {
        /*background-image: url(../img/enemy/bottomtext_01_sp.png);*/
        text-align: left;
    }
    .bottom__text.is-cEnemy span {
        background-image: url(../img/enemy/bottomtext_01_sp.png);
    }
}
/* bottom text2 */
.bottom__text2 {
    color: #fff;
    font-size: 8px;
    position: absolute;
    bottom: 40px;
    opacity: .2;
    text-align: center;
    white-space: nowrap;
}
.bottom__text2.is-soldier,
.bottom__text2.is-edf251-character {
    right: 10px;
}
.bottom__text2.is-edf251-facility {
    left: 10px;
}
@media screen and (max-width:770px) {
    .bottom__text2 {
        font-size: 16px;
        bottom: 30px;
    }
}
/**
 * Photo lists
 */
.photoLists {
    display: flex;
    flex-wrap: wrap;
}
.photoLists__item {
    width: calc(100% / 3);
}
.photoLists__waku {
    width: 100%;
    height: 100%;
}
.photoLists__item a {
    display: block;
    width: 100%;
    height: 100%;
    padding: 8px;
    position: relative;
}
.photoLists__thumb {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    width: 100%;
    height: 100%;
    z-index: 1;
}
.photoLists__text {
    background-color: #fff;
    color: #000;
    font-size: 24px;
    font-weight: 900;
    line-height: 1.2;
    position: absolute;
    right: 4px;
    bottom: 4px;
    z-index: 2;
    text-align: right;
}
.photoLists__text .mini{
    font-size: 16px;
}
.photoLists__text
.photoLists__icon {
    background-image: url(../img/common/icon_scale.png);
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100%;
    width: 24px;
    height: 24px;
    position: absolute;
    right: 4px;
    bottom: 4px;
    z-index: 2;
}
@media screen and (max-width:770px) {
    .photoLists__item {
        width: calc(100% / 2);
        height: 250px !important;
    }
    .photoLists__item a {
        padding: 20px;
    }
    .photoLists__text {
        font-size: 32px;
        right: 9px;
        bottom: 9px;
    }
    .photoLists__icon {
        background-image: url(../img/common/icon_scale_sp.png);
        width: 48px;
        height: 48px;
        right: 9px;
        bottom: 9px;
        position: absolute;
    }
}
/**
 * Swiper
 */
.swiper-scrollbarWrap{
    margin: 30px 80px 0;
    touch-action: manipulation;
    height: 30px;
    position:relative;
}
.swiper-scrollbarWrap:before {
    content:'';
    position: absolute;
    top:50%;
    left:0;
    right:0;
    background:rgba(255,255,255,.4);
    height:2px;
}
.swiper-scrollbar {
    background:transparent;
    height:30px;
}
.swiper-scrollbar-drag {
    border-radius: 0;
    background:transparent;
    cursor: pointer;
}
.swiper-scrollbar-drag:before {
    content:'';
    position: absolute;
    top:50%;
    left:0;
    right:0;
    background:#FFF;
    height:2px;
}
.swiper-btnWrap {
    display: flex;
    align-items: center;
    width: 100%;
    height: 30px;
    margin-top: -30px;
    pointer-events: none;
}
.swiper-btn-prev,
.swiper-btn-next {
    width:80px;
    height:24px;
    cursor: pointer;
    position: relative;
    pointer-events: auto;
}
.swiper-btn-prev {
    margin-right: auto;
}
.swiper-btn-next {
    margin-left: auto;
}
.swiper-btn-prev div,
.swiper-btn-next div {
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100%;
    margin: auto;
    width: 21px;
    height:24px;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transition: transform 0.3s ease;
}
.swiper-btn-prev div {
    background-image: url(../img/common/arrow_left.png);
}
.swiper-btn-next div {
    background-image: url(../img/common/arrow_right.png);
}
.swiper-btn-prev:hover div {
    transform: translateX(-8px);
}
.swiper-btn-next:hover div {
    transform: translateX(8px);
}
.swiper-button-disabled {
    pointer-events: none;
    opacity:0.3;
}
@media screen and (max-width:770px) {
    .swiper-scrollbarWrap{
        margin: 30px 120px 0;
        height: 48px;
    }
    .swiper-scrollbar {
        height: 48px;
    }
    .swiper-scrollbarWrap:before {
        height: 4px;
    }
    .swiper-scrollbar-drag:before {
        height: 4px;
    }
    .swiper-btnWrap {
        height: 48px;
        margin-top: -48px;
    }
    .swiper-btn-prev,
    .swiper-btn-next {
        width:120px;
        height:48px;
    }
    .swiper-btn-prev div,
    .swiper-btn-next div {
        width: 42px;
        height: 48px;
    }
    .swiper-btn-prev div {
        background-image: url(../img/common/arrow_left_sp.png);
    }
    .swiper-btn-next div {
        background-image: url(../img/common/arrow_right_sp.png);
    }
}
/**
 * titleType
 */
/* type0 */
.titleType0 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
}
.titleType0 span {
    color: #24c8c8;
    display: block;
    font-size: 64px;
    font-weight: 900;
    letter-spacing: 0.1em;
    margin-top: -8px;
}
@media screen and (max-width:770px) {
    .titleType0 {
        height: auto !important;
        margin-bottom: 20px;
    }
    .titleType0 span {
        font-size: 48px;
        margin-top: 0;
    }
}
/* type1 */
.titleType1 {
    color: #24c8c8;
    font-size: 24px;
    font-weight: 700;
    width: 100%;
    position: relative;
}
.titleType1 span {
    display: inline-block;
    position: relative;
}
.titleType1 span.mini{
    font-size: 16px;
}
.titleType1 span:before {
    content: "";
    background-color: #2acaca;
    width: 100%;
    left: 0;
    height: 2px;
    position: absolute;
    bottom: -6px;
}
.titleType1 span.mini:before{
    content: unset;
}
@media screen and (max-width:770px) {
    .titleType1 {
        font-size: 32px;
        margin-bottom: 6px;
    }
    .titleType1 span {
        padding-left: 40px;
    }
    .titleType1 span:before {
        height: 4px;
    }
}
/* type2 */
.titleType2 {
    color: #2acaca;
    display: flex;
    align-items: flex-end;
    font-size: 20px;
    font-weight: 700;
}
.titleType2 span {
    display: block;
    margin-bottom: 16px;
}
@media screen and (max-width:770px) {
    .titleType2 {
        height: auto !important;
        font-size: 28px;
    }
    .titleType2 span {
        margin-bottom: 20px;
        padding-left: 40px !important;
    }
}
/* type3 */
.titleType3 {
    display: flex;
    align-items: flex-end;
}
.titleType3__in {
    display: flex;
    align-items: center;
    width: 100%;
    margin-bottom: 10px;
}
.titleType3__in:before,
.titleType3__in:after {
    content: "";
    background-color: #fff;
    display: block;
    width: 100%;
    height: 1px;
}
.titleType3__in span {
    border-left: 1px solid #fff;
    border-right: 1px solid #fff;
    color: #fff;
    display: block;
    min-width: 6.6666666%;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    padding: 0 10px;
    text-align: center;
    white-space: nowrap;
}
@media screen and (max-width:770px) {
    .titleType3 {
        height: auto !important;
        margin-bottom: 26px;
    }
    .titleType3__in:before,
    .titleType3__in:after {
        height: 2px;
    }
    .titleType3__in span {
        border-left: 2px solid #fff;
        border-right: 2px solid #fff;
        font-size: 22px;
        min-width: 125px;
        padding: 0 20px;
    }
}
/**
 * waku
 */
.waku {
    position: relative;
}
.waku:before,
.waku:after {
    content: "";
    border-top: 1px #fff solid;
    width: 8px;
    height: 8px;
    position: absolute;
    top: 4px;
}
.waku:before {
    border-left: 1px #fff solid;
    left: 4px;
}
.waku:after {
    border-right: 1px #fff solid;
    right: 4px;
}
.waku__in {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
}
.waku__in a.noLink{
    pointer-events: none;
}
.waku__in:before,
.waku__in:after {
    content: "";
    border-bottom: 1px #fff solid;
    width: 8px;
    height: 8px;
    position: absolute;
    bottom: 4px;
}
.waku__in:before {
    border-left: 1px #fff solid;
    left: 4px;
}
.waku__in:after {
    border-right: 1px #fff solid;
    right: 4px;
}
@media screen and (max-width:770px) {
    .waku:before,
    .waku:after {
        border-top: 2px #fff solid;
        width: 15px;
        height: 15px;
        top: 9px;
    }
    .waku:before {
        border-left: 2px #fff solid;
        left: 9px;
        z-index: 10;
    }
    .waku:after {
        border-right: 2px #fff solid;
        right: 9px;
    }
    .waku__in:before,
    .waku__in:after {
        border-bottom: 2px #fff solid;
        width: 15px;
        height: 15px;
        bottom: 9px;
    }
    .waku__in:before {
        border-left: 2px #fff solid;
        left: 9px;
    }
    .waku__in:after {
        border-right: 2px #fff solid;
        right: 9px;
    }
}
/**
 * waku2
 */
.waku2 {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    z-index: 10;
}
.waku2__in {
    background-color: #fff;
    color: #000;
    display: inline-block;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.2;
    padding: 4px 12px;
    text-decoration: none;
}
@media screen and (max-width:770px) {
    .waku2 {
        height: auto !important;
    }
    .waku2__in {
        font-size: 28px;
        padding: 10px 40px;
    }
}
/**
 * fixNavLists
 */
.fixNavLists {
    display: flex;
    width: 100%;
    min-width: 1200px;
    pointer-events: none;
    position: sticky;
    overflow: auto;
    bottom: 0;
    left: 0;
    z-index: 2;
}
.fixNavLists__item {
    width: 6.6666666%;
    height: 100%;
    pointer-events: auto;
    position: relative;
}
.fixNavLists__link {
    display: block;
    width: 100%;
    height: 100%;
    text-decoration: none;
}
.fixNavLists__item.is-prev {
    margin-right: auto;
}
.fixNavLists__item.is-next {
    margin-left: auto;
}
.fixNavLists__box {
    display: flex;
    overflow: hidden;
    justify-content: center;
    width: 100%;
    height: 50%;
    position: relative;
}
.fixNavLists__line {
    border-top: 1px solid #fff;
    display: block;
    width: 34px;
    height: 34px;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
}
.fixNavLists__item.is-prev .fixNavLists__line {
    border-left: 1px solid #fff;
    right: 0;
    left: 10px;
    transform: rotate(-45deg);
}
.fixNavLists__item.is-next .fixNavLists__line {
    border-right: 1px solid #fff;
    left: 0;
    right: 20px;
    transform: rotate(45deg);
}
.fixNavLists__text {
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.4;
    margin-top: 12px;
    padding: 0 16px;
    text-align: center;
}
@media screen and (max-width:770px) {
    .fixNavLists {
        height: 125px !important;
        min-width: 100%;
        position: absolute;
        bottom: 336px;
    }
    .fixNavLists__item {
        width: 250px;
    }
    .fixNavLists__link {
        display: flex;
        flex-direction: row-reverse;
    }
    .fixNavLists__item:first-child .fixNavLists__link {
        flex-direction: inherit;
    }
    .fixNavLists__box {
        display: flex;
        align-items: center;
        width: 50%;
        height: 100%;
    }
    .fixNavLists__line {
        border-top: 2px solid #fff;
    }
    .fixNavLists__item.is-prev .fixNavLists__line {
        border-left: 2px solid #fff;
    }
    .fixNavLists__item.is-next .fixNavLists__line {
        border-right: 2px solid #fff;
    }
    .fixNavLists__text {
        font-size: 22px;
    }
}
/* close */
@media screen and (min-width:771px) {
    .fixNav--closeWrap{
        position: sticky;
        width: 100%;
        min-width: 1200px;
        z-index: 10;
    }
}
.fixNav--close {
    width: 6.6666666%;
    /*position: fixed;*/
    position: absolute;
    top: 0;
    right: 0;
    z-index: 10;
}
.fixNav--close__line {
    display: block;
    width: 90%;
    max-width: 80px;
    margin: auto;
    padding-top: 100%;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transition: transform .3s ease-in-out;
}
.fixNavLists__link:hover .fixNav--close__line {
    transform: rotate(90deg);
}
.fixNav--close__line:before,
.fixNav--close__line:after {
    content: "";
    background-color: #fff;
    width: 100%;
    height: 1px;
    margin: auto;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}
.fixNav--close__line:before {
    transform: rotate(45deg);
}
.fixNav--close__line:after {
    transform: rotate(-45deg);
}
@media screen and (max-width:770px) {
    .fixNav--closeWrap{
        height: auto!important;
        margin-bottom: 0!important;
    }
    .fixNav--close {
        position: absolute;
        width: 250px;
        height: 125px !important;
    }
    .fixNav--close__line {
        max-width: 100px;
    }
    .fixNav--close__line:before,
    .fixNav--close__line:after {
        height: 2px;
    }
}
/**
 * Background
 */
.bgWrap {
    min-width: 1200px;
    min-height: 640px;
    overflow: hidden;
    pointer-events: none;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 2;
}
@media screen and (max-width:770px) {
    .bgWrap {
        min-width: 100%;
        min-height: auto;
    }
}
/* grid */
.bg__grid {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: linear-gradient(transparent calc(100% - 1px), rgba(255,255,255,.1) 1px),linear-gradient(90deg,transparent calc(100% - 1px), rgba(255,255,255,.1) 1px);
    background-size:calc(100% / 15) calc(100% / 8);
    pointer-events: none;
    overflow: hidden;
    display: flex;
    flex-wrap: wrap;
    z-index: 3;
}
.bg__grid:before {
    content:'';
    position: absolute;
    left:0;
    right:0;
    top:0;
    bottom:0;
    background: radial-gradient(ellipse at center, rgba(255,255,255,0.5) 0%,rgba(255,255,255,0) 1px,rgba(255,255,255,0) 100%);
    background-size:calc(100% / 30) calc(100% / 16);
    background-position: calc(100% / 30 /2 + 1px) calc(100% / 16 / 2 + 1px);
}
.bg__grid span {
    display: block;
    height:calc(100% / 8);
    background-size:100% 100%;
    background-position: center center;
    width:calc(100% / 15);
    margin-right:calc(100% / 15 * 4);
}
.bg__grid span:nth-child(3n){
    margin-right:0;
}
.bg__grid span:nth-child(15n + 1) {
    margin-left: calc(100% / 15);
}
.bg__grid span:nth-child(15n + 4) {
    margin-left: calc(100% / 15 * 4);
}
.bg__grid span:nth-child(15n + 7) {
    margin-left: calc(100% / 15 * 2);
}
.bg__grid span:nth-child(15n + 10) {
    margin-left: 0;
}
.bg__grid span:nth-child(15n + 13) {
    margin-left: calc(100% / 15 * 3);
}
@media screen and (max-width:770px) {
    .bg__grid {
        background-image: url(../img/common/full_bgptn_sp.png);
        background-size: auto;
        background-repeat: repeat-y;
    }
    .bg__grid:before {
        content: none;
    }
    .bg__grid span {
        display: none;
    }
}
/* ptn */
.bg__ptn {
    background-size: auto auto;
    background-color: rgba(0, 0, 0, .4);
    background-image: repeating-linear-gradient(0deg, transparent, transparent 1px, rgba(0, 0, 0, .6) 1px, rgba(0, 0, 0, .6) 2px );
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
}
/* noise */
.bg__noise {
    background: url(../img/common/noise.png) center;
    width: 150%;
    height: 150%;
    position: absolute;
    top: -25%;
    left: -25%;
    animation: rumble .2s linear infinite;
    opacity: .6;
    z-index: 1;
}
/**
 * bgImage
 */
.bgImageWrap {
    width: 100%;
    height: 100%;
    overflow: hidden;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
}
.bgImage__img {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    transition: opacity .4s ease-in-out;
    background-attachment: fixed;
}
.bgImage__img.is-active {
    opacity: 0.6;
}
@media screen and (max-width:770px) {
    .bgImage__img{
        background-attachment: unset;
    }
}
/*-----------------------------------------------
 * Header
-------------------------------------------------*/
.header {
    width: 100%;
    height: 12.5%;
    min-height: 80px;
    position: fixed;
    z-index: 1000;
}
.header__in {
    width: 100%;
    height: 100%;
    min-width: 1200px;
    position: relative;
    z-index: 1;
}
.header__in:before {
    content: "";
    background-size: auto auto;
    background-color: rgba(0, 0, 0,.4);
    background-image: repeating-linear-gradient(0deg, transparent, transparent 1px, rgba(0, 0, 0, .6) 1px, rgba(0, 0, 0, .6) 2px );
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    backdrop-filter: blur(4px);
}
.header__waku{
    width: 100%;
    height: 100%;
    pointer-events: none;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 5;
}
@media screen and (max-width:770px) {
    .header:before {
        content: none;
    }
    .header__in {
        background-color: #000;
        min-width: 100%;
        -webkit-overflow-scrolling: touch;
        opacity: 0;
        overflow: auto;
        position: fixed;
        top: 0;
        left: 0;
        pointer-events: none;
        z-index: 1;
        transition: opacity .5s ease-in-out;
    }
    .header__in:before{
        content: none;
    }
    .header.is-active .header__in {
        opacity: 1;
        pointer-events: auto;
    }
    .header__waku{
        width: 100%;
        height: 100%;
        pointer-events: none;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 5;
    }
}
/**
 * Navigation
 */
.headerNav {
    width: 100%;
    height: 100%;
}
.headerNav:before {
    content: "NAVIGATION";
    color: #fff;
    display: flex;
    align-items: center;
    height: 100%;
    font-family: 'Rajdhani';
    font-size: 8px;
    position: absolute;
    top: 0;
    right: 8px;
    opacity: .2;
    text-align: center;
    white-space: nowrap;
}
.headerNav__text {
    color: #fff;
    display: flex;
    align-items: center;
    font-size: 8px;
    line-height: 1.4;
    height: 100%;
    position: absolute;
    top: 0;
    left: 8px;
    opacity: .2;
    white-space: nowrap;
    z-index: 1;
}
.headerNavLists {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    position: relative;
    z-index: 2;
}
@media screen and (max-width:770px) {
    .headerNav {
        height: auto;
        padding-bottom: 125px;
        position: relative;
        z-index: 5;
    }
    .headerNav__text {
        font-size: 16px;
        height: auto;
        top: 40px;
        left: 20px;
    }
    .headerNav:before {
        font-size: 16px;
        height: auto;
        top: auto;
        right: 20px;
        bottom: 40px;
    }
    .headerNavLists {
        flex-wrap: wrap;
        justify-content: inherit;
        height: auto;
    }
}
/* item */
.headerNavLists__item {
    width: 6.6666666%;
    height: 100%;
    margin: 0 3.3333333%;
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
    position: relative;
}
.headerNavLists__item:before {
    color: #fff;
    width: 100%;
    height: 100%;
    font-family: 'Rajdhani';
    font-size: 8px;
    position: absolute;
    top: 2px;
    left: 100%;
    opacity: .2;
    text-align: center;
    white-space: nowrap;
}
.headerNavLists__item:nth-child(1):before {
    content: "NAVI 01 - 02";
}
.headerNavLists__item:nth-child(2):before {
    content: "NAVI 02 - 03";
}
.headerNavLists__item:nth-child(3):before {
    content: "NAVI 03 - 04";
}
.headerNavLists__item:nth-child(4):before {
    content: "NAVI 04 - 05";
}
.headerNavLists__item:nth-child(5):before {
    content: "NAVI 05 - 06";
}
.headerNavLists__item:nth-child(6):before {
    content: "NAVI 06 - 07";
}
.headerNavLists__item:last-child:before {
    content: none;
}
@media screen and (min-width: 771px) {
    .headerNavLists__item:after {
        content: "";
        background: url(../img/common/deco_plus.svg) no-repeat 0 0 / 100%;
        width: 7px;
        height: 7px;
        margin: auto;
        position: absolute;
        top: 0;
        bottom: 0;
        right: calc(-50% - 3.5px);
    }
    .headerNavLists__item:last-child::after{
        content: none;
    }
}
.headerNavLists__item:last-child::after{
}
@media screen and (max-width:770px) {
    .headerNavLists__item {
        width: 50%;
        height: 125px;
        margin: 0 0 125px 0;
    }
    .headerNavLists__item:before {
        font-size: 16px;
        left: 50%;
    }
    .headerNavLists__item:nth-child(2):before,
    .headerNavLists__item:nth-child(4):before,
    .headerNavLists__item:nth-child(6):before {
        content: none;
    }
    .headerNavLists__item:nth-child(7):before {
        content: "NAVI 07";
    }
    /* deco plus */
    .headerNavLists__item:nth-child(odd):after {
        content: "";
        background: url(../img/common/deco_plus.svg) no-repeat 0 0 / 100%;
        width: 14px;
        height: 14px;
        margin: auto;
        position: absolute;
        top: 0;
        bottom: 0;
        right: -7px;
    }
}
/* a */
.headerNavLists__item a {
    color: #fff;
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
    height: 100%;
    position: relative;
    text-decoration: none;
    transition: color .3s ease-in-out;
}
.headerNavLists__item a:before {
    content: "";
    background-color: #24c8c8;
    width: 100%;
    height: 2px;
    position: absolute;
    bottom: 8px;
    left: 0;
    transform: scale(0, 1);
    transform-origin: center;
    transition: transform .3s ease-in-out;
}
.headerNavLists__item a:hover:before,
.headerNavLists__item a.is-active:before {
    transform: scale(1);
}
.headerNavLists__item.is-new a:after {
    content: "NEW";
    background-color: #24c8c8;
    color: #000;
    display: block;
    font-family: 'Rajdhani';
    font-size: 10px;
    line-height: 1.1;
    font-weight: 700;
    width: 28px;
    height: 10px;
    pointer-events: none;
    position: absolute;
    bottom: 4px;
    text-align: center;
}
.headerNavLists__item a:hover,
.headerNavLists__item a.is-active {
    color: #24c8c8;
}
@media screen and (max-width:770px) {
    .headerNavLists__item a:before {
        height: 4px;
        bottom: 0;
    }
    .headerNavLists__item.is-new a:after {
        font-size: 28px;
        width: 60px;
        height: 24px;
        padding-bottom: 2px;
        bottom: -44px;
    }
}
/* name */
.navName--en {
    display: block;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 4px;
    white-space: nowrap;
}
.navName--jp {
    display: block;
    font-size: 12px;
    line-height: 1.2;
    white-space: nowrap;
}
.headerNav__logo {
    display: none;
}
.headerBg {
    opacity: 0;
}
@media screen and (max-width:770px) {
    .navName--en {
        font-size: 40px;
        margin-top: -13px;
        margin-bottom: 8px;
    }
    .navName--jp {
        font-size: 24px;
    }
    .headerNav__logo {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        height: 250px;
    }
    .headerNav__logo a img{
        width: 222px;
    }
    .headerBg {
        opacity: 1;
    }
    /**
     * lang-sp
     */
    dd.lang-box-sp a {
        color: #fff;
    }
    dd.lang-box-sp a.disabled {
        opacity: 0.7;
    }

    /**
     * share
     */
    .header__shareWrap{
        width: 500px;
        height: 125px;
        margin: 0 auto;
    }
    .header__share {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        height: 100%;
    }
    .header__share dt{
        color: #fff;
        font-size: 22px;
        font-weight: 700;
        margin-right: 14px;
        white-space: nowrap;
    }
    .header__shareWrap .shareLists{
        display: flex;
        justify-content: center;
    }
    /* list item */
    .header__shareWrap .shareLists__item{
        width: 70px;
        height: 70px;
        margin: 0 14px;
    }
    .header__shareWrap .shareLists__item a{
        background-repeat: no-repeat;
        background-position: center; 
        background-size: 44px;
        display: block;
        width: 100%;
        height: 100%;
        position: relative;
    }
    .header__shareWrap .shareLists__item a.shareLists__link--tw{
        background-image: url(../img/common/icon_twitter.svg);
    }
    .header__shareWrap .shareLists__item a.shareLists__link--fb{
        background-image: url(../img/common/icon_facebook.svg);
    }
    .header__shareWrap .shareLists__item a.shareLists__link--line{
        background-image: url(../img/common/icon_line.svg);
    }
    .header__shareWrap .shareLists__item a.shareLists__link--weibo{
        background-image: url(../img/common/icon_weibo.svg);
    }
    /**
     * Menu trigger
     */
    .header__navBtn{
        width: 105px;
        height: 105px;
        position: absolute;
        top: 10px;
        right: 10px;
        z-index: 2;
    }
    .header__navBtn a{
        background-image: url(../img/common/nav_bg_off.jpg);
        background-repeat: no-repeat;
        background-position: 0 0;
        background-size: 100%;
        display: block;
        width: 100%;
        height: 100%;
        position: relative;
        z-index: 1;
    }
    .header__navBtn a:before{
        content: "";
        background-image: url(../img/common/nav_bg_on.jpg);
        background-repeat: no-repeat;
        background-position: 0 0;
        background-size: 100%;
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 0;
        opacity: 0;
        transition: opacity .3s ease-in-out;
    }
    .header__navBtn a.is-active:before{
        opacity: 1;
    }
    .header__navBtn__lineWrap{
        width: 50px;
        height: 20px;
        margin: auto;
        position: absolute;
        top: 28px;
        right: 0;
        left: 0;
        z-index: 1;
    }
    .header__navBtn--line{
        background-color: #000;
        display: block;
        width: 100%;
        height: 4px;
        position: absolute;
        left: 0;
        transition: all .3s ease-in-out;
    }
    .header__navBtn--line:nth-child(1){
        top: 0;
    }
    .header__navBtn--line:nth-child(2){
        bottom: 0;
    }
    .header__navBtn a.is-active .header__navBtn--line:nth-child(1){
        top: 8px;
        transform: rotate(25deg);
    }
    .header__navBtn a.is-active .header__navBtn--line:nth-child(2){
        bottom: 8px;
        transform: rotate(-25deg);
    }
    .header__navBtn--text{
        color: #000;
        font-size: 22px;
        font-weight: 700;
        letter-spacing: 0.01em;
        position: absolute;
        bottom: 14px;
        left: 50%;
        transform: translateX(-50%);
        z-index: 1;
        transition: all .3s ease-in-out;
    }
    .header__navBtn--text:before{
        content: "MENU";
    }
    .header__navBtn a.is-active .header__navBtn--text:before{
        content: "CLOSE";
    }
}
/*-----------------------------------------------
 * Footer
-------------------------------------------------*/
.footer {
    min-width: 1200px;
    position: relative;
    z-index: 3;
}
.pfArticle {
    padding: 40px 0;
}
.pfNotice {
    width: 100%;
    font-size: 12px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.pfLogo {
    padding-top: calc(100vh / 8);
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}
.pfLogo li {
    display: flex;
}
.pfLogo li:nth-child(n+2) {
    margin-left: 24px;
}
.pfLogo li:nth-child(2) {
    margin-left: 16px;
}
.pfLogo li:nth-child(3) {
    margin-left: 16px;
}
.pfLogo li:nth-child(3):before {
    content: "";
    width: 1px;
    height: 40px;
    margin-right: 24px;
    background: #fff;
}
@media screen and (max-width:770px) {
    .footer {
        height: 625px !important;
        min-width: 100%;
        margin-bottom: 125px;
    }
    .pfArticle {
        padding: 50px 0 0;
    }
    .pfNotice {
        display: inline-block;
        padding: 0 50px;
        font-size: 20px;
        text-align: center;
    }
    .pfNotice img{
        vertical-align: middle;
    }
    .pfLogo{
        padding-top: 0;
        margin-top: 175px;
    }
}
/**
 * pagetop
 */
.pageTop {
    width: 6.6666666%;
    height: 100%;
    position: absolute !important;
    top: 0;
    right: 0;
    z-index: 2;
}
.pageTop a {
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    position: relative;
    text-decoration: none;
}
.pageTop__in {
    display: flex;
    align-items: center;
    flex-direction: column;
}
.pageTop__line {
    background-color: rgba(255,255,255,.2);
    display: block;
    width: 1px;
    height: 160px;
    margin-bottom: 24px;
    overflow: hidden;
    position: relative;
}
.pageTop__line:before {
    content: "";
    background-color: rgba(255,255,255,1);
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    animation: scrollUp 1.7s ease-in-out infinite;
}
.pageTop__text {
    display: flex;
    align-items: center;
    font-size: 14px;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    white-space: nowrap;
}

/**
 * pageLanguage
 */
.pageLanguage {
    width: 6.6666666%;
    height: 100%;
    position: absolute !important;
    top: 0;
    left: 0;
    z-index: 2;
    font-weight: 700;
}
.pageLanguage a {
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    position: relative;
    text-decoration: none;
}
.pageLanguage__in {
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
    width: 100%;
    height: 100%;
}
.pageLanguage__text {
    display: flex;
    align-items: center;
    font-size: 14px;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    white-space: nowrap;
    padding-bottom: 16px;
}
.lang-box a {
    padding: 4px;
}
.lang-box a.disabled {
    pointer-events: none;
    opacity: 0.7;
}

/**
 * pageDown
 */
.pageDown {
    width: 6.6666666%;
    height: 100%;
    position: absolute !important;
    bottom: 0;
    left: 0;
    z-index: 2;
}
.pageDown a {
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    position: relative;
    text-decoration: none;
}
.pageDown__in {
    display: flex;
    align-items: center;
    flex-direction: column;
}
.pageDown__line {
    background-color: rgba(255,255,255,.2);
    display: block;
    width: 1px;
    height: 160px;
    margin-bottom: 24px;
    overflow: hidden;
    position: relative;
}
.pageDown__line:before {
    content: "";
    background-color: rgba(255,255,255,1);
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    animation: scrollDown 1.7s ease-in-out infinite;
}
.pageDown__text {
    display: flex;
    align-items: center;
    font-size: 14px;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    white-space: nowrap;
    padding-bottom: 16px;
}
@media screen and (max-width:770px) {
    .pageTop {
        width: 125px;
        height: 380px;
        top: auto;
        bottom: 0;
    }
    .pageTop__line {
        width: 2px;
        height: 200px;
        margin-bottom: 24px;
    }
    .pageTop__text {
        font-size: 20px;
    }
    .pageDown__text{
        font-size: 20px;
    }
}
/**
 * footer bottom
 */
.footer__bottom {
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
}
.footer__d3p {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 13.33333%;
    height: 50%;
    position: absolute;
    top: -100px;
    left: 0;
}
.footer__d3p img{
    width: 100%;
}
.footer__cle {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 13.33333%;
    height: 50%;
    position: absolute;
    top: 0px;
    left: 10px;
}
.footer__cle img{
    width: 100%;
}
.footer__copyright {
    color: #888;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    width: 16.66666%;
    height: 50%;
    margin: auto;
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    white-space: nowrap;
}
@media screen and (max-width:770px) {
    .footer__bottom {
        height: 254px !important;
    }
    .footer__d3p {
        display: block;
        width: 315px;
        height: 150px;
        top: 0;
        left: 10px;
    }
    .footer__cle {
        display: block;
        width: 315px;
        height: 150px;
        top: 25px;
        left: 350px;
    }
    .footer__copyright {
        font-size: 20px;
        height: auto;
        top: auto;
        bottom: 10px;
    }
}
/*-----------------------------------------------
 * Edf
-------------------------------------------------*/
/**
 * edf251
 */
/* nav */
#edf251{
    padding-bottom: 0!important;
}
.edf251Lists__nav {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}
.edf251Lists__nav:before {
    content: "";
    background-color: #fff;
    width: 100%;
    height: 2px;
    margin: auto;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 0;
}
.edf251Lists {
    display: flex;
    justify-content: center;
    position: relative;
    z-index: 1;
}
.edf251Lists li {
    width: 160px;
    height: 40px;
    margin: 0 20px;
}
.edf251Lists li a {
    background-color: #fff;
    color: #000;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    font-weight: 700;
    width: 100%;
    height: 100%;
    text-decoration: none;
    transition: all .3s ease-in-out;
}
.edf251Lists li a:hover {
    background-color: #24c8c8;
}
.edf251Lists li a:after {
    content: "";
    background-image: url(../img/common/arrow_b.png);
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100%;
    display: block;
    width: 24px;
    height: 21px;
    margin-left: 10px;
    transition: transform .3s ease-in-out;
}
.edf251Lists li a:hover:after {
    transform: translateY(4px);
}
@media screen and (max-width:770px) {
    .edf251Lists__nav {
        height: auto !important;
        margin-top: 60px;
        margin-bottom: 80px;
    }
    .edf251Lists__nav:before {
        height: 4px;
    }
    .edf251Lists li {
        width: 250px;
        height: 50px;
        margin: 0 25px;
    }
    .edf251Lists li a {
        font-size: 28px;
    }
    .edf251Lists li a:after {
        background-image: url(../img/common/arrow_b_sp.png);
        width: 36px;
        height: 32px;
    }
}
/* edf251__wrap */
.edf251__wrap {
    display: flex;
    flex-direction: row-reverse;
}
.edf251__wrap.is-character {
    flex-direction: inherit;
}
.edf251Sec {
    position: relative;
}
.edf251Sec:last-of-type {
    margin-bottom: 0 !important;
}
.edf251PhotoListsWrap {
    width: 46.666666%;
}
.edf251PhotoLists__waku {
    width: 100%;
    height: 100%;
}
.edf251PhotoLists__waku__in {
    display: block;
    width: 100%;
    height: 100%;
    padding: 8px;
    position: relative;
}
.edf251PhotoLists__item {
    width: 100%;
    height: 100%;
}
.edf251PhotoLists__thumb {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    width: 100%;
    height: 100%;
}
@media screen and (max-width:770px) {
    .edf251__wrap {
        display: block;
    }
    .edf251Sec {
        margin-bottom: 100px !important;
    }
    .edf251PhotoListsWrap {
        width: 100%;
    }
    .edf251PhotoLists__waku__in {
        padding: 20px;
    }
    .edf251PhotoLists__item {
        height: 425px !important;
    }
}
/* edf251__text */
.edf251__text {
    font-size: 16px;
    line-height: 2.2;
    width: 53.33334%;
}
@media screen and (max-width:770px) {
    .edf251__text {
        font-size: 24px;
        width: 100%;
        margin-top: 40px;
        padding-top: 0 !important;
        padding-right: 50px !important;
        padding-left: 50px !important;
    }
}
/* section title */
.edf251Sec__title {
    color: #2acaca;
    display: flex;
    align-items: center;
    font-size: 20px;
    font-weight: 700;
    width: 53.333332%;
    position: absolute;
    top: 0;
    left: 0;
}
.edf251Sec:first-of-type .edf251Sec__title {
    font-size: 24px;
}
.edf251Sec__title.is-character {
    font-size: 24px;
    left: 46.666666%;
}
.edf251Sec__title span.is-font-s {
    font-size: 16px;
    margin-top: 6px;
}
.edf251Sec__title__in {
    display: inline-block;
    position: relative;
}
.edf251Sec:first-of-type .edf251Sec__title > span:before,
.edf251Sec:first-of-type .edf251Sec__title > span:after,
.edf251Sec__title.is-character > span:before,
.edf251Sec__title.is-character > span:after {
    content: "";
    background-color: #2acaca;
    height: 2px;
    position: absolute;
    bottom: -6px;
}
.edf251Sec:first-of-type .edf251Sec__title > span:before,
.edf251Sec__title.is-character > span:before {
    width: 100%;
    left: 0;
}
@media screen and (max-width:770px) {
    .edf251Sec__title {
        font-size: 28px;
        width: 100%;
        height: auto !important;
        position: relative;
        top: auto;
        left: auto;
        margin-bottom: 60px;
    }
    .edf251Sec__title > span {
        padding-left: 50px !important;
    }
    .edf251Sec:first-of-type .edf251Sec__title {
        font-size: 32px;
    }
    .edf251Sec__title.is-character {
        font-size: 32px;
        left: 0;
    }
    .edf251Sec__title span.is-font-s {
        font-size: 24px;
        margin-top: 0;
    }
    .edf251Sec:first-of-type .edf251Sec__title > span:before,
    .edf251Sec__title.is-character > span:before {
        height: 4px;
    }
}
/**
 * soldierDetailWrap
 */
.soldierDetailWrap {
    background-color: #000;
    display: none;
    width: 100%;
    height: 100%;
    overflow: auto;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1001;
}
.soldierDetail__in {
    min-width: 1200px;
    display: none;
    position: relative;
    z-index: 10;
}
.soldierDetailSec {
    position: relative;
    z-index: 1;
}
.soldierDetailSec__in {
    position: relative;
    z-index: 1;
}
.soldierDetail__top {
    position: relative;
}
@media screen and (max-width:770px) {
    .soldierDetailWrap {
        min-width: 100%;
        min-height: auto;
        /*padding-top: 250px;*/
    }
    .soldierDetail__in{
        min-width: 100%;
    }
    .soldierDetailSec {
        padding-top: 250px;
        padding-bottom: 250px !important;
    }
    .soldierDetail__top {
        height: auto !important;
    }
}
/* image */
.soldierImgWrap {
    width: 73.333332%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 13.333333%;
}
.soldierImg {
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
}
.soldierImg__in {
    width: 100%;
    height: 100%;
    padding: 8px;
}
.soldierImg__box {
    background: url(../img/edf/soldier_bgptn.jpg) repeat center;
    border: 2px solid #24c8c8;
    width: 100%;
    height: 100%;
    position: relative;
}
.soldierImg__box__img {
    height: 100%;
    position: absolute;
    right: 0;
    bottom: 0;
}
.soldierImg__box__img img{
    width: 100%;
    position: absolute;
    right: 0;
    bottom: 0;
}
@media screen and (max-width:770px) {
    .soldierImgWrap {
        width: 100%;
        height: auto;
        margin-top: 40px;
        position: relative;
        top: auto;
        left: auto;
    }
    .soldierImg {
        width: 100% !important;
        height: 500px;
        position: relative;
        top: auto;
        right: auto;
    }
    .soldierImg__in {
        padding: 17px;
    }
    .soldierImg__box {
        background: url(../img/edf/soldier_bgptn_sp.jpg) repeat center;
        border: 4px solid #24c8c8;
    }
    .soldierImg__box__img {
        width: 100% !important;
    }
}
/* left */
.soldierLeftWrap {
    display: flex;
    align-items: center;
    width: 53.333332%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
.soldierLeft__text {
    color: #fff;
    font-size: 16px;
    line-height: 2.1;
}
@media screen and (max-width:770px) {
    .soldierLeftWrap {
        display: block;
        width: 100%;
        height: auto;
        position: relative;
        top: auto;
        left: auto;
    }
    .soldierLeft__text {
        font-size: 24px;
        padding-top: 40px;
        padding-left: 40px !important;
        padding-right: 40px !important;
    }
}
/* soldierGallery */
.soldierGallery__text {
    color: #fff;
    font-size: 16px;
    line-height: 2.1;
    padding-top: 20px;
}
@media screen and (max-width:770px) {
    .soldierGallery {
        margin-top: 100px;
        margin-bottom: 250px;
    }
    .soldierGallery__text {
        font-size: 24px;
        height: auto !important;
        padding-top: 40px;
        padding-left: 40px !important;
        padding-right: 40px !important;
    }
    .soldierGallery2 {
        margin-top: 60px;
    }
}

/*-----------------------------------------------
 * about
-----------------------------------------------*/
.aboutWrap{
    z-index: 4!important;
}
#summary h2 span{
    color: #c8244b;
}
/* summary__wrap */
.summary__wrap {
    display: flex;
}
.story__wrap{
    display: flex;
    flex-direction: row-reverse;
}
#summary .bottom__text{
    z-index: -1;
}
.summaryPhotoListsWrap {
    width: 46.666666%;
}
.summaryPhotoLists__waku {
    width: 100%;
    height: 100%;
}
.summaryPhotoLists__waku__in {
    display: block;
    width: 100%;
    height: 100%;
    padding: 8px;
    position: relative;
}
.summaryPhotoLists__item {
    width: 100%;
    height: 100%;
}
.summaryPhotoLists__thumb {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    width: 100%;
    height: 100%;
}
.summary__remark{
    font-size: 12px;
    padding-top: 16px;
    padding-left: 40px;
}
@media screen and (max-width:770px) {
    /*#summary .subSec__in,#story .subSec__in{
        margin-bottom: 100px;
    }*/
    #story .subSec__in:last-child{
        margin-bottom: 0;
    }
    .summary__wrap {
        display: block;
    }
    .story__wrap{
        display: block;
    }
    .summarySec {
        margin-bottom: 100px !important;
    }
    .summaryPhotoListsWrap {
        width: 100%;
    }
    .summaryPhotoLists__waku__in {
        padding: 20px;
    }
    .summaryPhotoLists__item {
        height: 425px !important;
    }
    .summary__remark{
        font-size: 20px;
    }
    #story{
        padding-bottom: 0!important;
    }
}
@media screen and (min-width: 771px){
    #story,#edf251{
        padding-bottom: 0!important;
    }
}
/* summary__text */
.summary__text {
    font-size: 16px;
    line-height: 2.2;
    width: 53.33334%;
}
.summary__text a{
    text-decoration: none;
    color: #24c8c8;
}
@media screen and (max-width:770px) {
    .summary__text {
        font-size: 24px;
        width: 100%;
        margin-top: 40px;
        padding-top: 0 !important;
        padding-right: 50px !important;
        padding-left: 50px !important;
    }
}
.about_secEnd__txt{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
}

#summary .about_secEnd__txt span{
    color: #c8244b;
    display: block;
    font-size: 64px;
    line-height: 1.6;
    font-weight: 900;
    letter-spacing: 0.1em;
    margin-top: -8px;
}
.bottom__text.is-overview span{
    background-position: top right;
    background-image: url(../img/about/bottomtext_01.png);
}
.bottom__text.is-story span{
    background-position: top left;
    background-image: url(../img/about/bottomtext_02.png);
}
@media screen and (max-width:770px) {
    #summary .about_secEnd__txt{
        height: auto!important;
    }
    #summary .about_secEnd__txt span{
        font-size: 48px;
    }
    #summary .soldierGallery{
        margin-bottom: 0;
    }
    .bottom__text.is-overview span{
        background-image: url(../img/about/bottomtext_01_sp.png);
    }
    .bottom__text.is-story span{
        background-image: url(../img/about/bottomtext_02_sp.png);
    }
}
/* AboutGallery */
.aboutGallery__text {
    color: #fff;
    font-size: 16px;
    line-height: 2.1;
    padding-top: 20px;
}
@media screen and (max-width:770px) {
    .aboutGallery {
        margin-top: 100px;
        margin-bottom: 250px;
    }
    .aboutGallery__text {
        font-size: 24px;
        height: auto !important;
        padding-top: 40px;
        padding-left: 40px !important;
        padding-right: 40px !important;
    }
    .aboutGallery2 {
        margin-top: 60px;
    }
}
/* story */
.about__story__fulltxt{
    width: 1040px;
    margin: 0 auto;
    font-size: 16px;
    line-height: 2;
    text-align: center;
}
.about__story__fulltxt a{
    font-size: 16px;
    text-decoration: none;
    color: #24c8c8;
}
@media screen and (max-width: 770px) {
    .about__story__fulltxt{
        font-size: 24px;
        width: 100%;
        margin-top: 40px;
        padding-top: 0 !important;
        padding-right: 50px !important;
        padding-left: 50px !important;
        text-align: left;
    }
    .about__story__fulltxt a{
        font-size: 24px;
    }
}
.about_footer{
    background: url(../img/common/main_img.jpg) no-repeat center center / cover;
    opacity: 0.8;
}
.about_footer .footer__d3p{
    top: auto;
    bottom: 80px;
}
.about_footer .footer__cle{
    top: auto;
    bottom: 0;
}
.about_footer .footer__copyright{
    top: auto;
    bottom: 0;
}
.about_footer .pageTop a{
    align-items: flex-end;
}
.about_footer .pageTop__in{
    padding-bottom: 50px;
}
@media screen and (max-width: 770px) {
    .about_footer .footer__d3p{
        bottom: 150px;
    }
    .about_footer .footer__cle{
        bottom: 120px;
    }
    .about_footer .footer__copyright{
        bottom: 40px;
    }
    .about_footer{
        height: 750px!important;
    }
}
@media screen and (min-width: 771px){
    .about_footer{
        height: 100vh!important;
        background-attachment: fixed;
    }
}
/*-----------------------------------------------
 * TOP
-------------------------------------------------*/
#top{
    min-width: 1200px;
    position: relative;
    z-index: 3;
}
#top_mv{
    width: 100%;
    height: 100vh;
    min-height: 640px;
    display: flex;
    position: relative;
    padding-left: 6.6666666%;
    padding-right: 6.6666666%;
}
#topMVimgWrap{
    width: 100%;
    height: 100%;
    padding: 10px;
    position: relative;
}
#topMVimgWrap .waku__in{
    padding: 20px;
}
#topMVimgWrap .waku__in:before{
    left: -6px;
    bottom: -6px;
}
#topMVimgWrap .waku__in:after{
    right: -6px;
    bottom: -6px;
}

#top__mv_logo,#top__mv_catch,#top__mv_release{
    width: 100%;
    height: 100%;
}
#top__mv_logoimg{
    background: url(../img/top/top_logo.png) no-repeat center center / 100%;
    width: 100%;
    height: 100%;
}
#top__mv_catchimg{
    background: url(../img/top/top_catch.svg) no-repeat center center / contain;
    width: 100%;
    height: 100%;
}
#top__mv_release .release{
    width: 100%;
    height: 100%;
    font-size: 36px;
    /*font-size: 4vw;*/
    color: #fff;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
}
#top__mv_release p span{
    font-size: 46px;
}
#top__mv_release p span.ja{
    font-size: 32px;
}
.top_mv_txtWrap.top__mv_logo{
    position: absolute;
    top: 30px;
    /*top: 2.5vw;*/
    left: calc(50% - 200px);
    /*left: calc(50% - 16.6667vw);*/
    width: 400px;
    /*width: 33.3334vw;*/
    height: 280px;
    /*height: 23.3333vw;*/
}
.top_mv_txtWrap.top__mv_catch{
    position: absolute;
    top: 30px;
    /*top: 2.5vw;*/
    left: 160px;
    /*left: 13.333vw;*/
    width: 80px;
    /*width: 6.6667vw;*/
    height: 480px;
    /*height: 40vw;*/
}
.top_mv_txtWrap.top__mv_release{
    position: absolute;
    bottom: 30px;
    /*bottom: 2.5vw;*/
    left: calc(50% - 275px);
    /*left: calc(50% - 16.6667vw);*/
    width: 550px;
    /*width: 33.3334vw;*/
    height: 80px;
    /*height: 6.6667vw;*/
}
.top_mv_txtWrap:before {
    content: "";
    background-size: auto auto;
    /*background-color: rgba(0, 0, 0, .4);
    background-image: repeating-linear-gradient(0deg, transparent, transparent 1px, rgba(0, 0, 0, 1) 1px, rgba(0, 0, 0, 1) 2px );*/
    width: calc(100% + 10px);
    height: calc(100% + 10px);
    position: absolute;
    top: -5px;
    left: -5px;
    z-index: 0;
}
.top_mv_txtWrap .waku__in:before {
    left: 4px!important;
    bottom: 4px!important;
}
.top_mv_txtWrap .waku__in:after {
    right: 4px!important;
    bottom: 4px!important;
}

@media screen and (max-width: 770px){
    #top{
        min-width: 100%;
        width: 100%;
    }
    #top_mv{
        padding-top: 0!important;
        padding-left: 0;
        padding-right: 0;
        height: auto;
        display: block;
    }
    #topMVimgWrap{
        height: 875px;
    }
    .top_mv_txtWrap .waku__in:before {
        left: 9px!important;
        bottom: 9px!important;
    }
    .top_mv_txtWrap .waku__in:after {
        right: 9px!important;
        bottom: 9px!important;
    }
    .top_mv_txtWrap.top__mv_catch{
        width: 107px;
        height: 482px;
        left: -8px;
        top: 134px;
        min-height: auto;
    }
    .top_mv_txtWrap.top__mv_logo{
        width: 482px;
        height: 357px;
        top: 114px;
        left: calc(50% - 241px);
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .top_mv_txtWrap:before{
        width: calc(100% - 40px);
        height: calc(100% - 40px);
        top: 20px;
        left: 20px;
    }
    #top__mv_logoimg{
        position: absolute;
        top:calc(50% - 130px);
        left: calc(50% - 200px);
        width: 400px;
        height: 260px;
    }
    #topMVimgWrap .waku__in{
        padding: 30px;
    }
    .top_mv_txtWrap.top__mv_release{
        width: 720px;
        height: 117px;
        bottom: 10px;
        left: calc(50% - 360px);
    }
    #top__mv_release p{
        font-size: 30px;
        text-align: center;
        line-height: 1.4;
    }
    #top__mv_release p span{
        font-size: 48px;
    }
    #top__mv_release p span.ja{
        font-size: 38px;
    }
}

/** Glitch **/
#topMVimg {
    width: 100%;
    height: 100%;
    --glitch-width: 100%;
    --glitch-height: 100%;
    --gap-horizontal: 10px;
    --gap-vertical: 5px;
    --color-title: #fff;
    --time-anim: 4s;
    --delay-anim: 2s;
    --blend-mode-1: none;
    --blend-mode-2: none;
    --blend-mode-3: none;
    --blend-mode-4: overlay;
    --blend-mode-5: overlay;
    --blend-color-1: transparent;
    --blend-color-2: transparent;
    --blend-color-3: transparent;
    --blend-color-4: #fb909a;
    --blend-color-5: #1c1cc9;
}

/* Glitch styles */
.glitch {
    position: absolute;
    top: 0;
    left: 0;
    width: var(--glitch-width);
    height: var(--glitch-height);
    overflow: hidden;
}

.glitch__img {
    position: absolute;
    top: calc(-1 * var(--gap-vertical));
    left: calc(-1 * var(--gap-horizontal));
    width: calc(100% + var(--gap-horizontal) * 2);
    height: calc(100% + var(--gap-vertical) * 2);
    background: url(../img/common/main_img.jpg) no-repeat center bottom;
    background-color: var(--blend-color-1);
    background-size: cover;
    transform: translate3d(0,0,0);
    background-blend-mode: var(--blend-mode-1);
}

.glitch__img:nth-child(n+2) {
    opacity: 0;
}

.imgloaded .glitch__img:nth-child(n+2) {
    animation-duration: var(--time-anim);
    animation-delay: var(--delay-anim);
    animation-timing-function: linear;
    animation-iteration-count: infinite;
}

.imgloaded .glitch__img:nth-child(2) {
    background-color: var(--blend-color-2);
    background-blend-mode: var(--blend-mode-2);
    animation-name: glitch-anim-1;
}

.imgloaded .glitch__img:nth-child(3) {
    background-color: var(--blend-color-3);
    background-blend-mode: var(--blend-mode-3);
    animation-name: glitch-anim-2;
}

.imgloaded .glitch__img:nth-child(4) {
    background-color: var(--blend-color-4);
    background-blend-mode: var(--blend-mode-4);
    animation-name: glitch-anim-3;
}

.imgloaded .glitch__img:nth-child(5) {
    background-color: var(--blend-color-5);
    background-blend-mode: var(--blend-mode-5);
    animation-name: glitch-anim-flash;
}

/* Animations */

@keyframes glitch-anim-1 {
    0% { 
        opacity: 1;
        transform: translate3d(var(--gap-horizontal),0,0);
        -webkit-clip-path: polygon(0 2%, 100% 2%, 100% 5%, 0 5%);
        clip-path: polygon(0 2%, 100% 2%, 100% 5%, 0 5%);
    }
    2% {
        -webkit-clip-path: polygon(0 15%, 100% 15%, 100% 15%, 0 15%);
        clip-path: polygon(0 15%, 100% 15%, 100% 15%, 0 15%);
    }
    4% {
        -webkit-clip-path: polygon(0 10%, 100% 10%, 100% 20%, 0 20%);
        clip-path: polygon(0 10%, 100% 10%, 100% 20%, 0 20%);
    }
    6% {
        -webkit-clip-path: polygon(0 1%, 100% 1%, 100% 2%, 0 2%);
        clip-path: polygon(0 1%, 100% 1%, 100% 2%, 0 2%);
    }
    8% {
        -webkit-clip-path: polygon(0 33%, 100% 33%, 100% 33%, 0 33%);
        clip-path: polygon(0 33%, 100% 33%, 100% 33%, 0 33%);
    }
    10% {
        -webkit-clip-path: polygon(0 44%, 100% 44%, 100% 44%, 0 44%);
        clip-path: polygon(0 44%, 100% 44%, 100% 44%, 0 44%);
    }
    12% {
        -webkit-clip-path: polygon(0 50%, 100% 50%, 100% 20%, 0 20%);
        clip-path: polygon(0 50%, 100% 50%, 100% 20%, 0 20%);
    }
    14% {
        -webkit-clip-path: polygon(0 70%, 100% 70%, 100% 70%, 0 70%);
        clip-path: polygon(0 70%, 100% 70%, 100% 70%, 0 70%);
    }
    16% {
        -webkit-clip-path: polygon(0 80%, 100% 80%, 100% 80%, 0 80%);
        clip-path: polygon(0 80%, 100% 80%, 100% 80%, 0 80%);
    }
    18% {
        -webkit-clip-path: polygon(0 50%, 100% 50%, 100% 55%, 0 55%);
        clip-path: polygon(0 50%, 100% 50%, 100% 55%, 0 55%);
    }
    20% {
        -webkit-clip-path: polygon(0 70%, 100% 70%, 100% 80%, 0 80%);
        clip-path: polygon(0 70%, 100% 70%, 100% 80%, 0 80%);
    }
    21.9% {
        opacity: 1;
        transform: translate3d(var(--gap-horizontal),0,0);
    }
    22%, 100% {
        opacity: 0;
        transform: translate3d(0,0,0);
        -webkit-clip-path: polygon(0 0, 0 0, 0 0, 0 0);
        clip-path: polygon(0 0, 0 0, 0 0, 0 0);
    }
}

@keyframes glitch-anim-2 {
    0% { 
        opacity: 1;
        transform: translate3d(calc(-1 * var(--gap-horizontal)),0,0);
        -webkit-clip-path: polygon(0 25%, 100% 25%, 100% 30%, 0 30%);
        clip-path: polygon(0 25%, 100% 25%, 100% 30%, 0 30%);
    }
    3% {
        -webkit-clip-path: polygon(0 3%, 100% 3%, 100% 3%, 0 3%);
        clip-path: polygon(0 3%, 100% 3%, 100% 3%, 0 3%);
    }
    5% {
        -webkit-clip-path: polygon(0 5%, 100% 5%, 100% 20%, 0 20%);
        clip-path: polygon(0 5%, 100% 5%, 100% 20%, 0 20%);
    }
    7% {
        -webkit-clip-path: polygon(0 20%, 100% 20%, 100% 20%, 0 20%);
        clip-path: polygon(0 20%, 100% 20%, 100% 20%, 0 20%);
    }
    9% {
        -webkit-clip-path: polygon(0 40%, 100% 40%, 100% 40%, 0 40%);
        clip-path: polygon(0 40%, 100% 40%, 100% 40%, 0 40%);
    }
    11% {
        -webkit-clip-path: polygon(0 52%, 100% 52%, 100% 59%, 0 59%);
        clip-path: polygon(0 52%, 100% 52%, 100% 59%, 0 59%);
    }
    13% {
        -webkit-clip-path: polygon(0 60%, 100% 60%, 100% 60%, 0 60%);
        clip-path: polygon(0 60%, 100% 60%, 100% 60%, 0 60%);
    }
    15% {
        -webkit-clip-path: polygon(0 75%, 100% 75%, 100% 75%, 0 75%);
        clip-path: polygon(0 75%, 100% 75%, 100% 75%, 0 75%);
    }
    17% {
        -webkit-clip-path: polygon(0 65%, 100% 65%, 100% 40%, 0 40%);
        clip-path: polygon(0 65%, 100% 65%, 100% 40%, 0 40%);
    }
    19% {
        -webkit-clip-path: polygon(0 45%, 100% 45%, 100% 50%, 0 50%);
        clip-path: polygon(0 45%, 100% 45%, 100% 50%, 0 50%);
    }
    20% {
        -webkit-clip-path: polygon(0 14%, 100% 14%, 100% 33%, 0 33%);
        clip-path: polygon(0 14%, 100% 14%, 100% 33%, 0 33%);
    }
    21.9% {
        opacity: 1;
        transform: translate3d(calc(-1 * var(--gap-horizontal)),0,0);
    }
    22%, 100% {
        opacity: 0;
        transform: translate3d(0,0,0);
        -webkit-clip-path: polygon(0 0, 0 0, 0 0, 0 0);
        clip-path: polygon(0 0, 0 0, 0 0, 0 0);
    }
}

@keyframes glitch-anim-3 {
    0% { 
        opacity: 1;
        transform: translate3d(0, calc(-1 * var(--gap-vertical)), 0) scale3d(-1,-1,1);
        -webkit-clip-path: polygon(0 1%, 100% 1%, 100% 3%, 0 3%);
        clip-path: polygon(0 1%, 100% 1%, 100% 3%, 0 3%);
    }
    1.5% {
        -webkit-clip-path: polygon(0 10%, 100% 10%, 100% 9%, 0 9%);
        clip-path: polygon(0 10%, 100% 10%, 100% 9%, 0 9%);
    }
    2% {
        -webkit-clip-path: polygon(0 5%, 100% 5%, 100% 6%, 0 6%);
        clip-path: polygon(0 5%, 100% 5%, 100% 6%, 0 6%);
    }
    2.5% {
        -webkit-clip-path: polygon(0 20%, 100% 20%, 100% 20%, 0 20%);
        clip-path: polygon(0 20%, 100% 20%, 100% 20%, 0 20%);
    }
    3% {
        -webkit-clip-path: polygon(0 10%, 100% 10%, 100% 10%, 0 10%);
        clip-path: polygon(0 10%, 100% 10%, 100% 10%, 0 10%);
    }
    5% {
        -webkit-clip-path: polygon(0 30%, 100% 30%, 100% 25%, 0 25%);
        clip-path: polygon(0 30%, 100% 30%, 100% 25%, 0 25%);
    }
    5.5% {
        -webkit-clip-path: polygon(0 15%, 100% 15%, 100% 16%, 0 16%);
        clip-path: polygon(0 15%, 100% 15%, 100% 16%, 0 16%);
    }
    7% {
        -webkit-clip-path: polygon(0 40%, 100% 40%, 100% 39%, 0 39%);
        clip-path: polygon(0 40%, 100% 40%, 100% 39%, 0 39%);
    }
    8% {
        -webkit-clip-path: polygon(0 20%, 100% 20%, 100% 21%, 0 21%);
        clip-path: polygon(0 20%, 100% 20%, 100% 21%, 0 21%);
    }
    9% {
        -webkit-clip-path: polygon(0 60%, 100% 60%, 100% 55%, 0 55%);
        clip-path: polygon(0 60%, 100% 60%, 100% 55%, 0 55%);
    }
    10.5% {
        -webkit-clip-path: polygon(0 30%, 100% 30%, 100% 31%, 0 31%);
        clip-path: polygon(0 30%, 100% 30%, 100% 31%, 0 31%);
    }
    11% {
        -webkit-clip-path: polygon(0 70%, 100% 70%, 100% 69%, 0 69%);
        clip-path: polygon(0 70%, 100% 70%, 100% 69%, 0 69%);
    }
    13% {
        -webkit-clip-path: polygon(0 40%, 100% 40%, 100% 41%, 0 41%);
        clip-path: polygon(0 40%, 100% 40%, 100% 41%, 0 41%);
    }
    14% {
        -webkit-clip-path: polygon(0 80%, 100% 80%, 100% 75%, 0 75%);
        clip-path: polygon(0 80%, 100% 80%, 100% 75%, 0 75%);
    }
    14.5% {
        -webkit-clip-path: polygon(0 50%, 100% 50%, 100% 51%, 0 51%);
        clip-path: polygon(0 50%, 100% 50%, 100% 51%, 0 51%);
    }
    15% {
        -webkit-clip-path: polygon(0 90%, 100% 90%, 100% 90%, 0 90%);
        clip-path: polygon(0 90%, 100% 90%, 100% 90%, 0 90%);
    }
    16% {
        -webkit-clip-path: polygon(0 60%, 100% 60%, 100% 60%, 0 60%);
        clip-path: polygon(0 60%, 100% 60%, 100% 60%, 0 60%);
    }
    18% {
        -webkit-clip-path: polygon(0 100%, 100% 100%, 100% 99%, 0 99%);
        clip-path: polygon(0 100%, 100% 100%, 100% 99%, 0 99%);
    }
    20% {
        -webkit-clip-path: polygon(0 70%, 100% 70%, 100% 71%, 0 71%);
        clip-path: polygon(0 70%, 100% 70%, 100% 71%, 0 71%);
    }
    21.9% {
        opacity: 1;
        transform: translate3d(0, calc(-1 * var(--gap-vertical)), 0) scale3d(-1,-1,1);
    }
    22%, 100% {
        opacity: 0;
        transform: translate3d(0,0,0);
        -webkit-clip-path: polygon(0 0, 0 0, 0 0, 0 0);
        clip-path: polygon(0 0, 0 0, 0 0, 0 0);
    }
}

@keyframes glitch-anim-text {
    0% { 
        transform: translate3d(calc(-1 * var(--gap-horizontal)),0,0) scale3d(-1,-1,1);
        -webkit-clip-path: polygon(0 20%, 100% 20%, 100% 21%, 0 21%);
        clip-path: polygon(0 20%, 100% 20%, 100% 21%, 0 21%);
    }
    2% {
        -webkit-clip-path: polygon(0 33%, 100% 33%, 100% 33%, 0 33%);
        clip-path: polygon(0 33%, 100% 33%, 100% 33%, 0 33%);
    }
    4% {
        -webkit-clip-path: polygon(0 44%, 100% 44%, 100% 44%, 0 44%);
        clip-path: polygon(0 44%, 100% 44%, 100% 44%, 0 44%);
    }
    5% {
        -webkit-clip-path: polygon(0 50%, 100% 50%, 100% 20%, 0 20%);
        clip-path: polygon(0 50%, 100% 50%, 100% 20%, 0 20%);
    }
    6% {
        -webkit-clip-path: polygon(0 70%, 100% 70%, 100% 70%, 0 70%);
        clip-path: polygon(0 70%, 100% 70%, 100% 70%, 0 70%);
    }
    7% {
        -webkit-clip-path: polygon(0 80%, 100% 80%, 100% 80%, 0 80%);
        clip-path: polygon(0 80%, 100% 80%, 100% 80%, 0 80%);
    }
    8% {
        -webkit-clip-path: polygon(0 50%, 100% 50%, 100% 55%, 0 55%);
        clip-path: polygon(0 50%, 100% 50%, 100% 55%, 0 55%);
    }
    9% {
        -webkit-clip-path: polygon(0 70%, 100% 70%, 100% 80%, 0 80%);
        clip-path: polygon(0 70%, 100% 70%, 100% 80%, 0 80%);
    }
    9.9% {
        transform: translate3d(calc(-1 * var(--gap-horizontal)),0,0) scale3d(-1,-1,1);
    }
    10%, 100% {
        transform: translate3d(0,0,0) scale3d(1,1,1);
        -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
        clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
    }
}

/* Flash */
@keyframes glitch-anim-flash {
    0%, 5% { 
        opacity: 0.2; 
        transform: translate3d(var(--gap-horizontal), var(--gap-vertical), 0);
    }
    5.5%, 100% {
        opacity: 0;
        transform: translate3d(0, 0, 0);
    }
}
/** END Glitch **/

/**
 * topShare
 */
.topShare {
    width: 6.6666666%;
    height: 100%;
    position: absolute !important;
    top: 0;
    right: 0;
    z-index: 2;
}
.topShare__in {
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
}
.topShare__in dt{
    display: flex;
    align-items: center;
    font-size: 14px;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    white-space: nowrap;
}
.topShare__in .shareLists{
    width: 20px;
    display: block;
}
.topShare__in .shareLists .shareLists__item{
    width: 20px;
    height: 20px;
    margin: 28px 0;
}
.topShare__in .shareLists__item a{
    background-repeat: no-repeat;
    background-position: center;
    background-size: 20px;
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
}
.topShare__in .shareLists__item a.shareLists__link--tw{
    background-image: url(../img/common/icon_twitter.svg);
}
.topShare__in .shareLists__item a.shareLists__link--fb{
    background-image: url(../img/common/icon_facebook.svg);
}
.topShare__in .shareLists__item a.shareLists__link--line{
    background-image: url(../img/common/icon_line.svg);
}
.topShare__in .shareLists__item a.shareLists__link--weibo{
    background-image: url(../img/common/icon_weibo.svg);
}
/*YT*/
.topYTWrap{
    position: absolute!important;
    bottom: 0;
    right: 0;
    width: 19.99999%;
}
.topYTWrap .waku__in{
    padding: 10px;
}
.topYTWrap.waku:before{
    z-index: 4;
}
.topYTWrap .waku__in:before{
    z-index: 4;
}
.topYTWrap a{
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    background-position: center center!important;
    background-size: cover!important;
    position: relative;
}
.topYTWrap a:before{
    content: "";
    background-size: auto auto;
    background-color: rgba(0, 0, 0, .4);
    background-image: repeating-linear-gradient(0deg, transparent, transparent 1px, rgba(0, 0, 0, 1) 1px, rgba(0, 0, 0, 1) 2px );
    width: calc(100% + 20px);
    height: calc(100% + 20px);
    position: absolute;
    top: -10px;
    left: -10px;
    z-index: 0;
}
.topYTWrap a:after{
    content: '';
    background: url(../img/common/yt_play.svg);
    width: 44px;
    height: 50px;
    position: absolute;
    top: calc(50% - 22px);
    left: calc(50% - 25px);
}
#youtubeModal.topModal .oneModalIn{
    display: block;
}
#youtubeModal.topModal .oneModalIn__cont{
    padding: 0;
}
#youtubeModal.topModal .youtubeIframeWrap{
    width: 100vw;
    height: 100vh;
    padding: 10px;
    position: relative;
}
#youtubeModal.topModal .waku__in:before{
    left: -6px;
    bottom: -6px;
}
#youtubeModal.topModal .waku__in:after{
    right: -6px;
    bottom: -6px;
}

@media screen and (max-width: 770px) {
    .topYTWrap{
        position: relative!important;
        width: 83.3334%;
        height: 375px!important;
        margin-left: auto;
    }
    #top_mv .pageDown{
        height: 375px!important;
        width: 16.666%;
    }
    #top_mv .pageLanguage{
        display: none;
    }
    #youtubeModal.topModal .oneModalIn{
        display: flex;
    }
    #youtubeModal.topModal .youtubeIframeWrap{
        height: auto;
    }
    .youtubeIframeWrap .waku__in{
        height: auto;
        padding-top: 56.25%;
    }
}


/* TopTitle */
.toptitle {
    display: flex;
    align-items: flex-end;
}
.toptitle__in {
    display: flex;
    align-items: center;
    width: 100%;
    margin-bottom: 20px;
}
.toptitle__in:before,
.toptitle__in:after {
    content: "";
    background-color: #fff;
    display: block;
    width: 100%;
    height: 1px;
}
.toptitle__in span {
    border-left: 1px solid #fff;
    border-right: 1px solid #fff;
    color: #fff;
    display: block;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    padding: 0 20px;
    text-align: center;
    white-space: nowrap;
}
@media screen and (max-width:770px) {
    .toptitle {
        height: auto !important;
        margin-bottom: 26px;
    }
    .toptitle__in:before,
    .toptitle__in:after {
        height: 2px;
    }
    .toptitle__in span {
        border-left: 2px solid #fff;
        border-right: 2px solid #fff;
        font-size: 22px;
        min-width: 125px;
        padding: 0 20px;
    }
}

.topContents{
    width: 100%;
    position: relative;
}
.top_mark_top_l,
.top_mark_top_r{
    position: absolute;
    line-height: 1;
    font-size: 12px;
    color: rgba(255,255,255,.2);
}
.top_mark_top_l{
    top: -48px;
    left: 10px;
}
.top_mark_top_r{
    top: -36px;
    right: 10px;
}
@media screen and (max-width: 770px) {
    .top_mark_top_l,
    .top_mark_top_r{
        font-size: 16px;
        top: -25px;
    }
    .top_mark_top_l{
        left: 25px;
    }
    .top_mark_top_r{
        right: 25px;
    }
}

.topCont{
    width: 100%;
    display: flex;
    position: relative;
}
.topCont .waku__in{
    padding: 10px;
}
.topNews{
    width: 100%;
}
.topNews__in{
/*    padding-right: 10px;*/
}
.newsDataWrap{
    padding: 40px 30px 40px 40px;
    height: 100%;
}
.newsDataInWrap{
    height: 100%;
    overflow: auto;
}
.newsDataInWrap div,
.topSpec__detail div{
    display: flex;
    /*margin-bottom: 24px;*/
    margin-bottom: 16px;
    padding-right: 16px;
}
.newsDataInWrap div:last-child,
.topSpec__detail div:last-child{
    margin-bottom: 0;
}
.newsDataInWrap dt,
.topSpec__detail dt{
    padding-right: 16px;
    position: relative;
    font-size: 16px;
    color: #888888;
    display: flex;
    align-items: center;
}
.newsDataInWrap dt:before,
.topSpec__detail dt:before{
    content: '';
    width: 1px;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    background: rgba(254,254,254,0.4);
}
.newsDataInWrap dt:after,
.topSpec__detail dt:after{
    content: '';
    width: 1px;
    height: 4px;
    position: absolute;
    top: calc(50% - 2px);
    right: 0;
    background: #fff;
}
.newsDataInWrap dd,
.topSpec__detail dd{
    padding-left: 16px;
    font-size: 16px;
    position: relative;
}
.newsDataInWrap dd a{
    font-size: 16px;
    color: #24c8c8;
    text-decoration: none;
}
.newsDataInWrap dd.oWin{
    padding-right: 24px;
}
.newsDataInWrap dd.oWin:after{
    content: '';
    width: 16px;
    height: 12px;
    background: url(../img/common/link__window.png) no-repeat center center / contain;
    position: absolute;
    right: 0;
    top: calc(50% - 6px);
}
.newsDataInWrap::-webkit-scrollbar-thumb {
    background: #ffffff;
    box-shadow: none;
}
@media screen and (max-width: 770px){
    .newsDataInWrap dd.oWin{
        padding-right: 48px;
    }
    .newsDataInWrap dd.oWin:after{
        width: 32px;
        height: 24px;
        top: calc(50% - 12px);
    }
}


.topTwitter{
    width: 50%;
}
.topTwitterInWrap{
    position: relative;
}
.topTwitter .toptitle{
    position: relative;
}
@media screen and (min-width: 771px){
    .newsDataInWrap{
        /*height: auto;*/
        scrollbar-color: #fff #000;
        scrollbar-width: thin;
    }
    .topNews .toptitle__in:before{
        width: calc(100% + 13.332vw);
    }
    .topTwitter .toptitle__in:after{
        width: calc(100% + 13.332vw);
    }
}
/*.topTwitter .toptitle:after{
    content: '';
    width: 13.4%;
    height: 1px;
    position: absolute;
    right: 0;
    bottom: 26px;
    background: #fff;
}*/

.topTwitter__in{
    position: relative;
}
.topTwitter__in #twidget,
.topTwitter__in #twidgetin{
    height: 100%;
}
.topTwitter__in #twidget{
    overflow: hidden;
}
.topTwitter__in #twidgetin{
    overflow: auto;
}
.twiFollow{
    position: absolute;
    top: -34px;
    padding: 0 2.5px;
    right: 6.666vw;
    background:#fff;
    color: #000 ;
    font-weight: 700;
    text-decoration: none;
    line-height: 1;
    transition: all 0.3s ease;
}
.twiFollow:hover{
    background: #24c8c8;
}

.topSpec{
    width: 100%;
    position: relative;
}
.topSpecWrap{
    width: 100%;
    display: flex;
}
.topSpec__img{
    width: 38.4653%;
}
.topSpec__img img {
    width: 100%;
}
.topSpec__detailWrap{
    width: calc(100% - 38.4653%);
}
.topSpec__detailWrap .waku__in{
    display: flex;
    align-items: center;
    justify-content: center;
}
.topspec_detail2{
    display: flex;
}
.topspec_detail2 div{
    margin-bottom: 0;
}
.topspec_detail2 div:nth-of-type(2){
    margin-left: 130px;
}

.topLink{
    width: 100%;
    position: relative;
}
.topLinkWrap{
    width: 100%;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}
.topLinkWrap li{
    width: calc(100% / 4);
}
.topLinkWrap li a{
    display: block;
}
.topLinkWrap li a img{
    width: 100%;
}
@media screen and (max-width: 770px) {
    .topCont{
        display: block;
    }
    .topNews{
        width: 100%;
    }
    .topNews__in{

    }
    .topNews__in .waku__in{
/*        height: 375px!important;*/
    }
    .topTwitter{
        width: 100%;
        padding-top: 148.625px;
    }
    .newsDataInWrap dt,
    .newsDataInWrap dd,
    .topSpec__detail dt,
    .topSpec__detail dd,
    .newsDataInWrap dd a{
        font-size:24px;
    }
    .newsDataInWrap div, .topSpec__detail div{
        margin-bottom: 24px;
    }
    .topTwitter__in{
        padding-right: 0 !important;
    }
    .topSpecWrap{
        display: block;
        margin: 0 auto;
        padding: 0!important;
    }
    .topSpec__img{
        width: 607px!important;
        margin: 0 auto;
    }
    .topSpec__img img{
        padding: 10px;
    }
    .topSpec__detailWrap {
        width: 100%;
    }
    .topSpec__detail{
        width: 100%;
        padding: 40px;
    }
    .topspec_detail2{
        display: block!important;
        margin-bottom: 0!important;
    }
    .topspec_detail2 div:nth-of-type(2){
        margin-left: 0;
        margin-bottom: 24px;
    }
    .topLinkWrap{
        padding: 0!important;
    }
    .topLinkWrap li {
        width: calc(100% / 2);
    }
}

/*-----------------------------------------------
 * Photo modal
-------------------------------------------------*/
/* EDF page */
.photoModal_soldier1-1 {
    background-image: url(../img/edf/soldier1-1.jpg);
}
.photoModal_soldier1-2 {
    background-image: url(../img/edf/soldier1-2.jpg);
}
.photoModal_soldier1-3 {
    background-image: url(../img/edf/soldier1-3.jpg);
}
.photoModal_soldier1-4 {
    background-image: url(../img/edf/soldier1-4.jpg);
}
.photoModal_soldier1-5 {
    background-image: url(../img/edf/soldier1-5.jpg);
}
.photoModal_soldier1-6 {
    background-image: url(../img/edf/soldier1-6.jpg);
}
.photoModal_soldier1-7 {
    background-image: url(../img/edf/soldier1-7.jpg);
}
.photoModal_soldier1-8 {
    background-image: url(../img/edf/soldier1-8.jpg);
}
.photoModal_soldier1-9 {
    background-image: url(../img/edf/soldier1-9.jpg);
}
.photoModal_soldier1-10 {
    background-image: url(../img/edf/soldier1-10.jpg);
}
.photoModal_soldier1-11 {
    background-image: url(../img/edf/soldier1-11.jpg);
}
.photoModal_soldier1-12 {
    background-image: url(../img/edf/soldier1-12.jpg);
}
.photoModal_soldier1-13 {
    background-image: url(../img/edf/soldier1-13.jpg);
}
.photoModal_soldier1-14 {
    background-image: url(../img/edf/soldier1-14.jpg);
}
.photoModal_soldier1-15 {
    background-image: url(../img/edf/soldier1-15.jpg);
}
.photoModal_soldier1-16 {
    background-image: url(../img/edf/soldier1-16.jpg);
}

.photoModal_soldier2-1 {
    background-image: url(../img/edf/soldier2-1.jpg);
}
.photoModal_soldier2-2 {
    background-image: url(../img/edf/soldier2-2.jpg);
}
.photoModal_soldier2-3 {
    background-image: url(../img/edf/soldier2-3.jpg);
}
.photoModal_soldier2-4 {
    background-image: url(../img/edf/soldier2-4.jpg);
}
.photoModal_soldier2-5 {
    background-image: url(../img/edf/soldier2-5.jpg);
}
.photoModal_soldier2-6 {
    background-image: url(../img/edf/soldier2-6.jpg);
}
.photoModal_soldier2-7 {
    background-image: url(../img/edf/soldier2-7.jpg);
}
.photoModal_soldier2-8 {
    background-image: url(../img/edf/soldier2-8.jpg);
}
.photoModal_soldier2-9 {
    background-image: url(../img/edf/soldier2-9.jpg);
}
.photoModal_soldier2-10 {
    background-image: url(../img/edf/soldier2-10.jpg);
}
.photoModal_soldier2-11 {
    background-image: url(../img/edf/soldier2-11.jpg);
}
.photoModal_soldier2-12 {
    background-image: url(../img/edf/soldier2-12.jpg);
}
.photoModal_soldier2-13 {
    background-image: url(../img/edf/soldier2-13.jpg);
}

.photoModal_soldier3-1 {
    background-image: url(../img/edf/soldier3-1.jpg);
}
.photoModal_soldier3-2 {
    background-image: url(../img/edf/soldier3-2.jpg);
}
.photoModal_soldier3-3 {
    background-image: url(../img/edf/soldier3-3.jpg);
}
.photoModal_soldier3-4 {
    background-image: url(../img/edf/soldier3-4.jpg);
}
.photoModal_soldier3-5 {
    background-image: url(../img/edf/soldier3-5.jpg);
}
.photoModal_soldier3-6 {
    background-image: url(../img/edf/soldier3-6.jpg);
}
.photoModal_soldier3-7 {
    background-image: url(../img/edf/soldier3-7.jpg);
}
.photoModal_soldier3-8 {
    background-image: url(../img/edf/soldier3-8.jpg);
}
.photoModal_soldier3-9 {
    background-image: url(../img/edf/soldier3-9.jpg);
}
.photoModal_soldier3-10 {
    background-image: url(../img/edf/soldier3-10.jpg);
}
.photoModal_soldier3-11 {
    background-image: url(../img/edf/soldier3-11.jpg);
}
.photoModal_soldier3-12 {
    background-image: url(../img/edf/soldier3-12.jpg);
}
.photoModal_soldier3-13 {
    background-image: url(../img/edf/soldier3-13.jpg);
}

.photoModal_soldier4-1 {
    background-image: url(../img/edf/soldier4-1.jpg);
}
.photoModal_soldier4-2 {
    background-image: url(../img/edf/soldier4-2.jpg);
}
.photoModal_soldier4-3 {
    background-image: url(../img/edf/soldier4-3.jpg);
}
.photoModal_soldier4-4 {
    background-image: url(../img/edf/soldier4-4.jpg);
}
.photoModal_soldier4-5 {
    background-image: url(../img/edf/soldier4-5.jpg);
}
.photoModal_soldier4-6 {
    background-image: url(../img/edf/soldier4-6.jpg);
}
.photoModal_soldier4-7 {
    background-image: url(../img/edf/soldier4-7.jpg);
}
.photoModal_soldier4-8 {
    background-image: url(../img/edf/soldier4-8.jpg);
}
.photoModal_soldier4-9 {
    background-image: url(../img/edf/soldier4-9.jpg);
}
.photoModal_soldier4-10 {
    background-image: url(../img/edf/soldier4-10.jpg);
}
.photoModal_soldier4-11 {
    background-image: url(../img/edf/soldier4-11.jpg);
}
.photoModal_soldier4-12 {
    background-image: url(../img/edf/soldier4-12-2.jpg);
}
.photoModal_soldier4-13 {
    background-image: url(../img/edf/soldier4-13-2.jpg);
}
.photoModal_soldier4-14 {
    background-image: url(../img/edf/soldier4-14.jpg);
}
.photoModal_soldier4-15 {
    background-image: url(../img/edf/soldier4-15.jpg);
}

/* ENEMY page */
.photoModal_enemy1-1 {
    background-image: url(../img/enemy/enemy1-1.jpg);
}
.photoModal_enemy1-2 {
    background-image: url(../img/enemy/enemy1-2.jpg);
}
.photoModal_enemy1-3 {
    background-image: url(../img/enemy/enemy1-3.jpg);
}
.photoModal_enemy1-4 {
    background-image: url(../img/enemy/enemy1-4.jpg);
}
.photoModal_enemy2-1 {
    background-image: url(../img/enemy/enemy2-1.jpg);
}
.photoModal_enemy2-2 {
    background-image: url(../img/enemy/enemy2-2.jpg);
}
.photoModal_enemy2-3 {
    background-image: url(../img/enemy/enemy2-3.jpg);
}
.photoModal_enemy2-4 {
    background-image: url(../img/enemy/enemy2-4.jpg);
}
.photoModal_enemy3-1 {
    background-image: url(../img/enemy/enemy3-1.jpg);
}
.photoModal_enemy3-2 {
    background-image: url(../img/enemy/enemy3-2.jpg);
}
.photoModal_enemy4-1 {
    background-image: url(../img/enemy/enemy4-1.jpg);
}
.photoModal_enemy4-2 {
    background-image: url(../img/enemy/enemy4-2.jpg);
}
.photoModal_enemy5-1 {
    background-image: url(../img/enemy/enemy5-1.jpg);
}
.photoModal_enemy5-2 {
    background-image: url(../img/enemy/enemy5-2.jpg);
}
.photoModal_enemy6-1 {
    background-image: url(../img/enemy/enemy6-1.jpg);
}
.photoModal_enemy6-2 {
    background-image: url(../img/enemy/enemy6-2.jpg);
}
.photoModal_enemy7-1 {
    background-image: url(../img/enemy/enemy7-1.jpg);
}
.photoModal_enemy7-2 {
    background-image: url(../img/enemy/enemy7-2.jpg);
}
.photoModal_enemy7-3 {
    background-image: url(../img/enemy/enemy7-3.jpg);
}
.photoModal_enemy7-4 {
    background-image: url(../img/enemy/enemy7-4.jpg);
}
.photoModal_enemy8-1 {
    background-image: url(../img/enemy/enemy8-1.jpg);
}
.photoModal_enemy8-2 {
    background-image: url(../img/enemy/enemy8-2.jpg);
}
.photoModal_enemy8-3 {
    background-image: url(../img/enemy/enemy8-3.jpg);
}
.photoModal_enemy8-4 {
    background-image: url(../img/enemy/enemy8-4.jpg);
}
.photoModal_enemy9-1 {
    background-image: url(../img/enemy/enemy9-1.jpg);
}
.photoModal_enemy9-2 {
    background-image: url(../img/enemy/enemy9-2.jpg);
}
.photoModal_enemy10-1 {
    background-image: url(../img/enemy/enemy10-1.jpg);
}
.photoModal_enemy10-2 {
    background-image: url(../img/enemy/enemy10-2.jpg);
}
.photoModal_enemy11-1 {
    background-image: url(../img/enemy/enemy11-1.jpg);
}
.photoModal_enemy11-2 {
    background-image: url(../img/enemy/enemy11-2.jpg);
}
.photoModal_enemy12-1 {
    background-image: url(../img/enemy/enemy12-1.jpg);
}
.photoModal_enemy12-2 {
    background-image: url(../img/enemy/enemy12-2.jpg);
}
.photoModal_enemy13-1 {
    background-image: url(../img/enemy/enemy13-1.jpg);
}
.photoModal_enemy13-2 {
    background-image: url(../img/enemy/enemy13-2.jpg);
}
.photoModal_enemy14-1 {
    background-image: url(../img/enemy/enemy14-1.jpg);
}
.photoModal_enemy14-2 {
    background-image: url(../img/enemy/enemy14-2.jpg);
}
.photoModal_enemy15-1 {
    background-image: url(../img/enemy/enemy15-1.jpg);
}
.photoModal_enemy15-2 {
    background-image: url(../img/enemy/enemy15-2.jpg);
}
.photoModal_enemy16-1 {
    background-image: url(../img/enemy/enemy16-1.jpg);
}
.photoModal_enemy16-2 {
    background-image: url(../img/enemy/enemy16-2.jpg);
}
.photoModal_enemy17-1 {
    background-image: url(../img/enemy/enemy17-1.jpg);
}
.photoModal_enemy17-2 {
    background-image: url(../img/enemy/enemy17-2.jpg);
}
.photoModal_enemy18-1 {
    background-image: url(../img/enemy/enemy18-1.jpg);
}
.photoModal_enemy18-2 {
    background-image: url(../img/enemy/enemy18-2.jpg);
}
.photoModal_enemy19-1 {
    background-image: url(../img/enemy/enemy19-1.jpg);
}
.photoModal_enemy19-2 {
    background-image: url(../img/enemy/enemy19-2.jpg);
}
.photoModal_enemy20-1 {
    background-image: url(../img/enemy/enemy20-1.jpg);
}
.photoModal_enemy20-2 {
    background-image: url(../img/enemy/enemy20-2.jpg);
}
.photoModal_enemy21-1 {
    background-image: url(../img/enemy/enemy21-1.jpg);
}
.photoModal_enemy21-2 {
    background-image: url(../img/enemy/enemy21-2.jpg);
}
.photoModal_enemy21-3 {
    background-image: url(../img/enemy/enemy21-3.jpg);
}
.photoModal_enemy21-4 {
    background-image: url(../img/enemy/enemy21-4.jpg);
}
.photoModal_enemy21-5 {
    background-image: url(../img/enemy/enemy21-5.jpg);
}
.photoModal_enemy21-6 {
    background-image: url(../img/enemy/enemy21-6.jpg);
}
.photoModal_enemy22-1 {
    background-image: url(../img/enemy/enemy22-1.jpg);
}
.photoModal_enemy22-2 {
    background-image: url(../img/enemy/enemy22-2.jpg);
}
.photoModal_enemy23-1 {
    background-image: url(../img/enemy/enemy23-1.jpg);
}
.photoModal_enemy23-2 {
    background-image: url(../img/enemy/enemy23-2.jpg);
}
.photoModal_enemy24-1 {
    background-image: url(../img/enemy/enemy24-1.jpg);
}
.photoModal_enemy24-2 {
    background-image: url(../img/enemy/enemy24-2.jpg);
}
.photoModal_enemy25-1 {
    background-image: url(../img/enemy/enemy25-1.jpg);
}
.photoModal_enemy25-2 {
    background-image: url(../img/enemy/enemy25-2.jpg);
}
.photoModal_enemy26-1 {
    background-image: url(../img/enemy/enemy26-1.jpg);
}
.photoModal_enemy26-2 {
    background-image: url(../img/enemy/enemy26-2.jpg);
}
.photoModal_enemy27-1 {
    background-image: url(../img/enemy/enemy27-1.jpg);
}
.photoModal_enemy27-2 {
    background-image: url(../img/enemy/enemy27-2.jpg);
}
.photoModal_enemy28-1 {
    background-image: url(../img/enemy/enemy28-1.jpg);
}
.photoModal_enemy28-2 {
    background-image: url(../img/enemy/enemy28-2.jpg);
}

/* ENEMY page */
.photoModal_about3-1 {
    background-image: url(../img/about/about3-1.jpg);
}
.photoModal_about3-2 {
    background-image: url(../img/about/about3-2.jpg);
}
.photoModal_about3-3 {
    background-image: url(../img/about/about3-3.jpg);
}
.photoModal_about3-4 {
    background-image: url(../img/about/about3-4.jpg);
}
.photoModal_about3-5 {
    background-image: url(../img/about/about3-5.jpg);
}
.photoModal_about3-6 {
    background-image: url(../img/about/about3-6.jpg);
}

/*-----------------------------------------------
 * SPECIAL
-------------------------------------------------*/
/* SPECIAL LISTS */
.specialLists{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.special_listIn{
    width: 100%;
    height: 100%;
}
.special_wakuIn{
    width: 100%;
    height: 100%;
    display: block;
    padding: 8px;
    text-decoration: none;
}
.special_listInBtnIn{
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,.6);
    display: flex;
    align-items: center;
    position: relative;
}
.special_list__thumb{
    width: 40%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    z-index: 1;
}

.specialList.is-new .special_listInBtnIn:before{
    content: 'NEW';
    width: 3em;
    height: 20px;
    position: absolute;
    top: 0;
    right: 0;
    background-color: #24c8c8;
    color: #000;
    display: block;
    font-family: 'Rajdhani';
    font-size: 20px;
    line-height: 1.1;
    font-weight: 700;
    text-align: center;
}

.specialLists.is-new .special_listInBtnIn:before{
    font-size: 22px;
    height: 24px;
}

@media screen and (max-width:770px) {
    .special_listsWrap{
        padding: 0!important;
    }
    .specialList{
        width: 100%!important;
        margin-bottom: 0!important;
    }
    .special_wakuIn{
        padding: 20px;
    }
    .special_list__thumb{
        width: 35.4225%;
    }
}

.special_list__title {
    width: 60%;
    color: #fff;
    padding: 0 10%;
}
.special_list__title p{
    color: #fff;
}
.special_wakuIn:hover .special_list__title p{
    color: #24c8c8;
}
.special_list__title .is-en {
    font-size: 32px;
    line-height: 1.2;
    font-weight: 700;
}
.special_list__title .is-jp {
    font-size: 16px;
    margin-top: 8px;
    font-weight: 700;
    font-weight: 900;
}
@media screen and (max-width:770px) {
    .special_list__title{
        width: 64.5775%;
        padding-left: 6.762%;
    }
    .special_list__title .is-en{
        font-size: 40px;
    }
    .special_list__title .is-jp {
        font-size: 24px;
    }
}

/* SPECIAL MOVIE */
.specialttl {
    display: flex;
    align-items: flex-end;
    position: relative;
    margin-top: -34px;
}
.specialttl__in {
    display: flex;
    align-items: center;
    width: 100%;
    margin-bottom: 20px;
}
.specialttl__in:before,
.specialttl__in:after {
    content: "";
    background-color: #fff;
    display: block;
    width: 100%;
    height: 1px;
}
.specialttl__in span {
    border-left: 1px solid #fff;
    border-right: 1px solid #fff;
    color: #fff;
    display: block;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    padding: 0 20px;
    text-align: center;
    white-space: nowrap;
}
@media screen and (max-width:770px) {
    #special_movie.subSec{
        padding-top: 0px!important;
    }
    .specialttl {
        height: auto !important;
        margin-bottom: 26px;
    }
    .specialttl_in:before,
    .specialttl__in:after {
        height: 2px;
    }
    .tspecialttl__in span {
        border-left: 2px solid #fff;
        border-right: 2px solid #fff;
        font-size: 22px;
        min-width: 125px;
        padding: 0 20px;
    }
}

.special_movie_thumb{
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    z-index: 1;
}
.special_movie_ttl{
    font-size: 20px;
    font-weight: 700;
    color: #24c8c8;
    text-align: center;
    padding: 20px 0;
}
.special_movie_linkLists{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.special_movie_Lists .special_movie_List:nth-child(n+3) {
    margin-top: calc(100vh / 8);
}
.special_movie_link{
    width: 100%;
}
.special_movie_link a{
    display: block;
    width: 100%;
    text-align: center;
    padding: 3%;
    color: #000;
    font-size: 20px;
    font-weight: 700;
    background-color: #fff;
    text-decoration: none;
}
.special_movie_link a:hover{
    background-color: #2acaca;
}

@media screen and (max-width:770px) {
    #special_movie .special_listIn {
        height: auto!important;
    }
    .special_movie_thumb{
        padding-top: 56.25%;
        height: auto;
    }
    .special_movie_ttl{
        font-size: 28px;
        padding: 20px 0 32px;
    }
    .special_movie_linkLists{
        width: 100%;
        padding: 0 6.667%;
    }
    .special_movie_link{
        width: 100%;
        margin-bottom: 30px;
    }
    .special_movie_link a{
        font-size: 28px;
        padding: 14px;
    }
    .special_movie_Lists .special_movie_List:nth-child(n+3) {
        margin-top: 0;
    }
    .special_movie_Lists .special_movie_List{
        margin-bottom: 60px;
    }
    .special_movie_Lists .special_movie_List:last-child{
        margin-bottom: 0px;
    }
}


/*-----------------------------------------------
 * Special - papercraft
-------------------------------------------------*/

/* font color */
.papercraft__fontblue {
    color: #2acaca;
}

/**
 * titleType3
 */
.titleType3__in span.is-fontVw {
    font-size: .8vw;
    padding: 0;
}
@media screen and (max-width:770px) {
    .titleType3__in span.is-fontVw {
        font-size: 16px;
    }
}

/**
 * pagetitle
 */
.papercraft__title {
    color: #2acaca;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    font-weight: 700;
}
.papercraft__title > span {
    border-bottom: 2px solid #2acaca;
    padding: 0 30px 10px;
}
.mt80 {
    margin-top: 80px !important;
}
@media screen and (max-width:770px) {
    .papercraft__title {
        font-size: 32px;
        height: auto!important;
        margin: 50px 0 80px;
    }
    .mt80 {
        margin-top: 40px !important;
    }
}

/**
 * papercraft Nav
 */
@media screen and (min-width: 770.1px){
    #papercraftNav .subNavLists.sp{
        display: none;
    }
}
@media screen and (max-width: 770px){
    #papercraftNav .subNavLists.pc{
        display: none;
    }
}


/**
 * papercraftA
 */
.papercraftA {
    background-color: rgba(0,0,0,.6);
    border: 1px solid #fff;
    width: 880px;
    margin: 0 auto;
    padding: 40px;
}
@media screen and (max-width:770px) {
    .papercraftA {
        border: none;
        border-top: 2px solid #fff;
        border-bottom: 2px solid #fff;
        width: 100%;
        padding: 48px;
    }
}

/* title */
.papercraftA__title {
    color: #2acaca;
    font-size: 24px;
    font-weight: 700;
    text-align: center;
    margin-bottom: 40px;
}
@media screen and (max-width:770px) {
    .papercraftA__title {
        font-size: 32px;
    }
}

/* image */
.papercraftA__img img {
    max-width: 100%;
    height: auto;
}

/**
 * dlLists
 */
.papercraft__dlLists {
    margin-bottom: 40px;
}

/* item */
.papercraft__dlLists__item {
    margin-top: 40px;
}

/* dt */
.papercraft__dlLists__dt {
    color: #2acaca;
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 20px;
    text-align: center;
}
@media screen and (max-width:770px) {
    .papercraft__dlLists__dt {
        font-size: 32px;
        margin-bottom: 40px;
    }
}

/**
 * papercraft__numLists
 */
.papercraft__numLists > li {
    display: flex;
    margin-bottom: 14px;
}
.papercraft__numLists > li:last-child {
    margin-bottom: 0;
}
@media screen and (max-width:770px) {
    .papercraft__numLists > li {
        margin-bottom: 22px;
    }
}

/* num */
.papercraft__numLists--num {
    background-color: #2acaca;
    color: #000;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    font-weight: 700;
    width: 24px;
    height: 24px;
    margin-top: 2px;
}
@media screen and (max-width:770px) {
    .papercraft__numLists--num {
        font-size: 24px;
        width: 50px;
        height: 50px;
        margin-top: 0;
        margin-right: 12px;
    }
}

/* text */
.papercraft__numLists--text {
    font-size: 16px;
    width: calc(100% - 24px);
    padding-left: 12px;
}
.papercraft__numLists--text a {
    color: #2acaca;
}
@media screen and (max-width:770px) {
    .papercraft__numLists--text {
        font-size: 24px;
        width: calc(100% - 50px);
        padding-left: 18px;
    }
}

/**
 * papercraft__btnLists
 */
.papercraft__btnLists {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

/* item */
.papercraft__btnLists > li {
    width: 340px;
    height: 64px;
    margin-right: 40px;
}
.papercraft__btnLists > li:last-child {
    margin-right: 0;
}
@media screen and (max-width:770px) {
    .papercraft__btnLists > li {
        width: 550px;
        height: 100px;
        margin-right: 0;
        margin-bottom: 24px;
    }
    .papercraft__btnLists > li:last-child {
        margin-bottom: 0;
    }
}

/* a */
.papercraft__btnLists > li a {
    background-color: #fff;
    color: #000;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    font-weight: 700;
    width: 100%;
    height: 100%;
    text-decoration: none;
}
@media screen and (max-width:770px) {
    .papercraft__btnLists > li a {
        font-size: 32px;
    }
}

/**
 * papercraftU
 */
.papercraftU {
    width: 880px;
    margin: 0 auto;
    padding-top: 60px;
}
@media screen and (max-width:770px) {
    .papercraftU {
        width: calc(100% - 96px);
    }
}

/* title */
.papercraftU__title {
    color: #2acaca;
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 20px;
    text-align: center;
}
@media screen and (max-width:770px) {
    .papercraftU__title {
        font-size: 32px;
    }
}

/* read */
.papercraftU__read {
    font-size: 16px;
    margin-bottom: 14px;
    text-align: center;
}
@media screen and (max-width:770px) {
    .papercraftU__read {
        font-size: 24px;
        margin-bottom: 40px;
    }
}

/**
 * noticeWrap
 */
.papercraftU__noticeWrap {
    background-color: rgba(0,0,0,.6);
    border: 1px solid #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 320px;
}
@media screen and (max-width:770px) {
    .papercraftU__noticeWrap {
        height: 500px;
    }
}

/* notice */
.papercraftU__notice {
    font-size: 14px;
    line-height: 2;
    width: calc(100% - 80px);
    height: calc(100% - 80px);
    padding-right: 40px;
    overflow-y: scroll;
}
@media screen and (max-width:770px) {
    .papercraftU__notice {
        font-size: 24px;
    }
}

/* scrollbar */
.papercraftU__notice::-webkit-scrollbar-thumb {
    background: #fff;
    box-shadow: none;
}

/**
 * noticeLists
 */
.papercraftU__noticeLists > li {
    display: flex;
}
.papercraftU__noticeLists > li:before {
    content: "・";
}

/**
 * noticeDlLists
 */
.papercraftU__noticeDlLists {
    margin-top: 30px;
}
.papercraftU__noticeDlLists > dt {
    font-weight: 700;
}

/**
 * share
 */
.papercraftU__shareWrap {
    margin-top: 30px;
    text-align: center;
}
.papercraftU__shareWrap a {
    background-color: #fff;
    color: #000;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    font-weight: 700;
    padding: 16px 70px;
    text-decoration: none;
}
.papercraftU__shareWrap a:before {
    content: "";
    background-color: #000;
    display: block;
    width: 26px;
    height: 26px;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: 100%;
    mask-size: 100%;
    -webkit-mask-image: url(../img/common/icon_twitter.svg);
    mask-image: url(../img/common/icon_twitter.svg);
    margin-right: 14px;
}
@media screen and (max-width:770px) {
    .papercraftU__shareWrap {
        margin-top: 40px;
    }
    .papercraftU__shareWrap a {
        font-size: 32px;
        padding: 24px 100px;
    }
    .papercraftU__shareWrap a:before {
        width: 48px;
        height: 40px;
    }
}


/*-----------------------------------------------
 * BUY
-------------------------------------------------*/
.buy_fullWrap{
    padding-top: 50px;
}
.buy_nav{
    position: relative;
    background-color: rgba(0,0,0,.2);
}
.buy_nav .waku{
    height: 100%;
}
.buy_navLists{
    display: flex;
    align-items: center;
    height: 100%;
    position: relative;
    z-index: 10;
}
.buy_navList{
    width: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    padding: 0 20px;
    text-align: center;
}
.buy_navList.is-new:before{
    content: 'NEW';
    position: absolute;
    bottom: -32px;
    height: 16px;
    width: 3em;
    left: 0;
    right: 0;
    margin: 0 auto;
    background-color: #24c8c8;
    color: #000;
    display: block;
    font-family: 'Rajdhani';
    font-size: 16px;
    line-height: 1.1;
    font-weight: 700;
    text-align: center;
}
@media screen and (max-width: 770px){
    .buy_navList.is-new:before{
        height: 24px;
        font-size: 24px;
    }
}
.buy_navList a{
    position: relative;
    display: inline-block;
    padding: 16px 0;
    font-size: 20px;
    line-height: 1;
    color: #fff;
    text-decoration: none;
}
.buy_navList a.is-active{
    color: #24c8c8;
}
.buy_navList a:before{
    content: '';
    background-color: #24c8c8;
    width: 100%;
    height: 2px;
    position: absolute;
    bottom: 0;
    left: 0;
    transform: scale(0, 1);
    transform-origin: center;
    transition: transform .3s ease-in-out;
}
.buy_navList a:hover::before,
.buy_navList a.is-active:before{
    transform: scale(1);
}
.buyContWrap{
    width: 100%;
    border: 1px solid #fff;
    padding: 3.8462%;
    margin-bottom: 7.6924%;
}
.buy_h3{
    width: 100%;
    font-size: 24px;
    font-weight: 700;
    padding-bottom: 8px;
    position: relative;
    border-bottom: 2px solid #24c8c8;
    color: #24c8c8;
    margin-bottom: 4.1754%;
}
.buyCont,.storetokutenList{
    width: 100%;
    display: flex;
    justify-content: space-between;
}
.buyCont_tl{
    width: 50.1044%;
}
.buyCont_tl_img{
    width: 100%;
    margin-bottom: 22px;
}
.buyCont_tl_img img{
    width: 100%;
}
.buyCont_tl_img:last-child{
    margin-bottom: 0;
}
.buyCont_tr{
    width: 45.9291%;
}
.buyCont_tr{
    font-size: 16px;
    line-height: 2;
}
.buy_price{
    font-size: 20px;
    line-height: 2;
    margin-bottom: 24px;
}
.buy_price span{
    color: #24c8c8;
}

.buy_links{
    width: 100%;
    border: 1px solid #24c8c8;
    margin: 40px 0;
}
.buy_link_title{
    width: 100%;
    padding: 4.5455% 9.091%;
    position: relative;
    font-size: 20px;
    color: #fff;
    text-align: left;
    display: block;
    text-decoration: none;
}
.buy_link_title:hover{
    color: #24c8c8;
}
.buy_link_titleicon{
    position: absolute;
    top: calc(50% - 16px);
    right: 3.636%;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background-color: #24c8c8;
    display: flex;
    align-items: center;
    justify-content: center;
}
.buy_link_titleicon span{
    width: 16px;
    height: 16px;
    position: relative;
}
.buy_link_titleicon span:before{
    content: '';
    position: absolute;
    width: 2px;
    height: 100%;
    background-color: #000;
    top: 0;
    left: calc(50% - 1px);
    transition: .3s ease;
}
.buy_links.on .buy_link_titleicon span:before{
    transform: translateY(-8px);
    opacity: 0;
}
.buy_link_titleicon span:after{
    content: '';
    position: absolute;
    width: 100%;
    height: 2px;
    background-color: #000;
    left: 0;
    top: calc(50% - 1px);
    transition: .3s ease;
}
.buy_link_titleblank{
    width: 10px;
    height: 10px;
    position: absolute;
    top: calc(50% - 5px);
    right: 3.636%;
    background: url(../img/common/icon_blank.svg) no-repeat center / contain;
}
.buy_linkLists{
    display: none;
    width: 100%;
    height: auto;
    visibility: visible;
    padding: 4.5455% 9.091% 9.901%;
}
.buy_linkList{
    margin-bottom: 22px;
}
.buy_linkList a{
    display: inline-block;
    line-height: 1;
    color: #24c8c8;
    font-size: 20px;
}
.buy_linkList a.cm{
    pointer-events: none;
}
@media screen and (min-width: 768px){
    .buy_linkList a:hover{
        color: #fff;
    }
}
.buy_linkList a span{
    display: inline-block;
    padding-right: 20px;
    position: relative;
}
.buy_linkList a span:after{
    content: '';
    position: absolute;
    width: 8px;
    height: 8px;
    background: url(../img/common/icon_blank.svg) no-repeat center / contain;
    top: calc(50% - 4px);
    right: 0;
}
.buy_linkList:last-child{
    margin-bottom: 0;
}

.buy_h4{
    font-size: 20px;
    color: #24c8c8;
    font-weight: 700;
    margin-bottom: 32px;
}
.link_blank{
    color: #24c8c8;
}
.link_blank a{
    display: inline-block;
    position: relative;
    font-size: 16px;
    color: #24c8c8;
    padding-right: 20px;
    text-decoration: none;
}
.link_blank a span{
    font-size: 14px;
}
.link_blank a:after{
    content: '';
    position: absolute;
    width: 8px;
    height: 8px;
    top: calc(50% - 4px);
    right: 0;
    background: url(../img/common/icon_blank.svg) no-repeat center / contain;
}


@media screen and (max-width: 767px){
    #buy .toptitle__in span{
        min-width: auto;
    }
    .buy_nav{
        padding: 0!important;
    }
    .buy_navList a{
        font-size: 32px;
        padding: 20px 0;
    }
    .buy_navList a:before{
        height: 4px;
    }
    .buy_fullWrap{
        padding-top: 40px;
        padding-right: 0!important;
        padding-left: 0!important;
    }
    .buyContWrap{
        border-left-width: 0;
        border-right-width: 0;
        padding: 6.6667%;
    }
    .buy_h3{
        font-size: 32px;
        padding-bottom: 16px;
        border-width: 4px;
        margin-bottom: 50px;
    }
    .buyCont,.storetokutenList{
        display: block;
    }
    .buyCont_tl,.buyCont_tr{
        width: 100%;
        font-size: 24px;
    }
    .buyCont_tl_img{
        margin-bottom: 24px;
    }
    .buyCont_tr{
        margin-top: 40px;
    }
    .buy_price{
        font-size: 32px;
    }
    .buy_links{
        margin: 48px 0;
        border-width: 2px;
    }
    .buy_link_title{
        font-size: 32px;
    }
    .buy_link_titleicon{
        width: 64px;
        height: 64px;
        top: calc(50% - 32px);
        right: 48px;
    }
    .buy_link_titleicon span{
        width: 32px;
        height: 32px;
    }
    .buy_link_titleicon span:before{
        width: 4px;
        left: calc(50% - 2px);
    }
    .buy_link_titleicon span:after{
        height: 4px;
        top: calc(50% - 2px);
    }
    .buy_link_titleblank{
        width: 20px;
        height: 20px;
        position: absolute;
        top: calc(50% - 10px);
        right: 48px;
    }
    .buy_linkList{
        margin-bottom: 40px;
    }
    .buy_linkList a{
        font-size: 32px;
    }
    .buy_linkList a span{
        padding-right: 40px;
    }
    .buy_linkList a span:after{
        width: 16px;
        height: 16px;
        top: calc(50% - 8px);
    }
    .buy_linkList:last-child{
        margin-bottom: 0;
    }
    .buy_h4{
        font-size: 28px;
        margin-bottom: 12px;
    }
    .link_blank a{
        font-size: 24px;
        padding-right: 40px;
    }
    .link_blank a span{
        font-size: 20px;
    }
    .link_blank a:after{
        width: 16px;
        height: 16px;
        top: calc(50% - 8px);
    }
}

@media screen and (min-width: 768px){
    .sp_buy_tokuten_h4{
        display: none;
    }
}

.tokutenWrap .buy_h4{
    font-size: 20px;
    line-height: 1;
    margin-bottom: 32px;
}
.tokutenWrap .buy_h4 span{
    font-size: 16px;
    display: inline-block;
    margin-bottom: 16px;
}
.tokutenWrap p{
    font-size: 16px;
    line-height: 2;
    margin-bottom: 32px;
}
.tokutenWrap p.tokuten_caution{
    font-size: 14px;
}
.buyContWrap.storetokutenWrap{
    margin-bottom: 3.8462%;
}
.storetokutenWrap .buy_h3{
    margin-bottom: 0;
}

.storetokutenWrap .buy_h4{
    font-size: 20px;
    line-height: 1.5;
    margin-bottom: 20px;
}
.storetokutenWrap .buy_h4 span{
    font-size: 16px;
    display: inline-block;
    margin-bottom: 16px;
}
.storetokutenWrap p{
    font-size: 16px;
    line-height: 2;
    margin-bottom: 32px;
}
.storetokutenWrap p:last-child {
    margin-bottom: 0;
}
.storetokutenWrap p.tokuten_caution{
    font-size: 14px;
}

.storetokutenList{
    padding: 4.1754% 0;
    border-bottom: 2px solid #fff;
}
.storetokutenList:last-child,.storetokutenList.noline{
    border-bottom-width: 0;
}
.storetokutenList:last-child{
    padding-bottom: 0;
}

.tokutenLink{
    width: 320px;
    height: 48px;
    display: block;
    margin-top: 40px;
}
.tokutenLink a{
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    font-weight: 700;
    text-decoration: none;
    background-color: #fff;
}


.buy_caution{
    font-size: 14px;
}
.storetokutenWrap .buy_caution{
    padding-top: 4.1754%;
    font-size: 14px;
    margin-bottom: 0;
}

@media screen and (max-width: 767px){
    .sp_buy_tokuten_h4{
        font-size: 32px;
        line-height: 1.5;
        font-weight: 700;
        color: #24c8c8;
        margin-bottom: 42px;
    }
    .sp_buy_tokuten_h4 span{
        font-size: 24px;
        display: inline-block;
        margin-bottom: 12px;
    }
    .tokutenWrap p,.storetokutenWrap p{
        font-size: 24px;
    }
    .tokutenWrap p:last-child, .storetokutenWrap p:last-child{
        margin-bottom: 0;
    }
    .tokutenWrap p.tokuten_caution{
        font-size: 20px;
    }
    .storetokutenList{
        padding: 40px 0;
    }
    .tokutenLink{
        width: 550px;
        height: 100px;
        margin: 40px auto 0;
    }
    .tokutenLink a{
        font-size: 32px;
    }
    .buy_caution{
        font-size: 20px;
    }
    .buyContWrap.storetokutenWrap{
        margin-bottom: 7.6924%;
    }
    .buy_caution.buyContWrap_caution{
        padding: 0 6.6667%;
        font-size: 20px;
        margin-bottom: 0;
    }
}

.buy_line{
    width: 100%;
    margin: 24px 0;
    height: 1px;
    background-color: #fff;
}
.buy_deluxe{
    font-size: 14px;
}
.buy_deluxe dd:before{
    content: '・';
}


.buy_h3.nmb{
    margin-bottom: 0;
}

@media screen and (max-width: 767px){
    .buy_deluxe{
        font-size: 20px;
    }
    .buy_line{
        margin: 40px auto;
        height: 2px;
    }
}


/*-----------------------------------------------
 * ENEMY _re
-------------------------------------------------*/
/* ENEMY LISTS */
.enemyLists{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.enemy_listIn{
    width: 100%;
    height: 100%;
}
.enemy_wakuIn{
    width: 100%;
    height: 100%;
    display: block;
    padding: 8px;
    text-decoration: none;
}
.enemy_listInBtnIn{
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,.6);
    display: flex;
    align-items: center;
    position: relative;
}
.enemy_list__thumb{
    width: 40%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    z-index: 1;
}

.enemyList.is-new .enemy_listInBtnIn:before{
    content: 'NEW';
    width: 3em;
    height: 20px;
    position: absolute;
    top: 0;
    right: 0;
    background-color: #24c8c8;
    color: #000;
    display: block;
    font-family: 'Rajdhani';
    font-size: 20px;
    line-height: 1.1;
    font-weight: 700;
    text-align: center;
}

.enemyList.is-new .enemy_listInBtnIn:before{
    font-size: 22px;
    height: 24px;
}


@media screen and (max-width:770px) {
    .enemy_listsWrap{
        padding: 0!important;
    }
    .enemyList{
        width: 100%!important;
        margin-bottom: 0!important;
    }
    .enemy_wakuIn{
        padding: 20px;
    }
    .enemy_list__thumb{
        width: 35.4225%;
    }
}

.enemy_list__title {
    width: 60%;
    color: #fff;
    padding: 0 10%;
}
.enemy_list__title p{
    color: #fff;
}
.enemy_wakuIn:hover .enemy_list__title p{
    color: #24c8c8;
}
.enemy_list__title .is-en {
    font-size: 32px;
    line-height: 1.2;
    font-weight: 700;
}
.enemy_list__title .is-jp {
    font-size: 24px;
    font-weight: 700;
    font-weight: 900;
}
@media screen and (max-width:770px) {
    .enemy_list__title{
        width: 64.5775%;
        padding-left: 6.762%;
    }
    .enemy_list__title .is-en{
        font-size: 40px;
    }
    .enemy_list__title .is-jp {
        font-size: 32px;
    }
}



/** GUIDELINE **/
.guideline__logo{
    width: 64%;
    max-width: 720px;
    margin: 0 auto;
}
.guideline__logo img{
    width: 100%;
}

@media screen and (max-width: 767px){
    #guidelinePage .is-jp{
        text-align: center;
        display: block;
    }
    .guideline__logo{
        width: 80%;
    }
}
#guidelinePage {
    font-size: 16px;
    line-height: 2;
}
#guidelinePage a{
    color:  #24c8c8;
}
.guideLine__textWrap{
    width:  880px;
    margin: 0 auto;
}
.guideLine {
    background-color: rgba(0,0,0,.6);
    border: 1px solid #fff;
    width: 880px;
    margin: 0 auto;
    padding: 40px;
}
@media screen and (max-width:770px) {
    #guidelinePage {
        font-size: 24px;
    }
    .guideLine__textWrap{
        width: 87.2%;
    }
    .guideLine {
        border: 2px solid #fff;
        width: 87.2%;
        padding: 48px;
    }
}


.guidelineList{
    display: flex;
    /*margin-bottom: 24px;*/
    margin-bottom: 16px;
    padding-right: 16px;
    line-height: 1.8;
}
.guidelineList:last-child{
    margin-bottom: 0;
}
.guidelineList dt{
    flex-shrink: 0;
    padding-right: 16px;
    position: relative;
    font-size: 16px;
    color: #888888;
    display: flex;
    align-items: center;
    min-width: calc(7em + 16px);
}
.guidelineList dt:before{
    content: '';
    width: 1px;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    background: rgba(254,254,254,0.4);
}
.guidelineList dt:after{
    content: '';
    width: 1px;
    height: 4px;
    position: absolute;
    top: calc(50% - 2px);
    right: 0;
    background: #fff;
}
.guidelineList dd{
    padding-left: 16px;
    font-size: 16px;
    position: relative;
}

@media screen and (max-width: 767px){
    .guidelineList dt,.guidelineList dd{
        font-size: 24px;
    }
}

.indent05_txt{
    position: relative;
    text-indent: -0.5em;
    padding-left: 0.5em;
}
.pt2em{
    padding-top: 2em;
}
.pb2em{
    padding-bottom: 2em;
}
.guideline_h4{
    padding-bottom: 0.5em;
    color: #24c8c8;
}

strong.txt_stMwv{
    color: #F74E4E;
}


#faq{
}
.faqList:not(:last-child){
    margin-bottom: 24px;
}
.faqList dt{
    font-weight: 700;
    margin-bottom: 0.5em;
    padding-left: 2em;
    position: relative;
}
.faqList dt:before{
    content: 'Q.';
    color: #F74E4E;
    position: absolute;
    top: 0;
    left: 0;
}
.faqList dd{
    padding-left: 2em;
    position: relative;
}
.faqList dd:before{
    content: 'A.';
    color: #24c8c8;
    position: absolute;
    top: 0;
    left: 0;
    font-weight: 700;
}

@media screen and (max-width: 770px){
    #season-pass.subSec{
        padding-bottom: 0!important;
    }
}

.top_mv_psBadge {
    position: absolute;
    width:180px;
    top:15px;
    right:30px;
}
.top_mv_psBadge img {
    display: block;
    width:100%;
    height:auto;
}
@media screen and (max-width: 770px){
    .top_mv_psBadge {
        top:390px;
        right: 20px;
    }
}

.top_mv_Badge__kakakucom{
    position: absolute;
    width:140px;
    top:200px;
    right:50px;
}
.top_mv_Badge__kakakucom img{
    width: 100%;
}
.top_mv_Badge__kakakucom p{
    margin-top: 4px;
    font-size: 12px;
    letter-spacing: 0;
    text-align: center;
}
@media screen and (max-width: 770px){
    .top_mv_Badge__kakakucom{
        top: 570px;
        right: 40px;
    }
}