blockquote,body,dd,div,dl,dt,fieldset,form,h1,h2,h3,h4,h5,h6,input,li,ol,p,pre,td,textarea,th,ul{
    margin:0;
    padding:0;
		element {
    -ms-overflow-style: none; /* for Internet Explorer, Edge */
    scrollbar-width: none; /* for Firefox */
    overflow-y: scroll; 
}

element::-webkit-scrollbar {
    display: none; /* for Chrome, Safari, and Opera */
}
}
article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{
    display:block
}
audio,canvas,video{
    display:inline-block
}
audio:not([controls]){
    display:none;
    height:0
}
[hidden]{
    display:none
}
html{
    font-family:sans-serif;
    -ms-text-size-adjust:100%;
    -webkit-text-size-adjust:100%
}
body{
    margin:0
	 -ms-overflow-style: none; /* for Internet Explorer, Edge */
      scrollbar-width: none; /* for Firefox */
     overflow-y: scroll; 
}
body::-webkit-scrollbar {
  display: none; /* for Chrome, Safari, and Opera */
}
a:active,a:hover{
    outline:0
}
b,strong{
    font-weight:700
}
address,caption,cite,code,dfn,em,strong,th,var{
    font-style:normal
}
code,kbd,pre,samp{
    font-family:monospace,serif;
    font-size:1em
}
pre{
    white-space:pre-wrap
}
q{
    quotes:"\201C" "\201D" "\2018" "\2019"
}
small{
    font-size:80%
}
sub,sup{
    position:relative;
    vertical-align:baseline;
    font-size:75%;
    line-height:0
}
sup{
    top:-.5em
}
sub{
    bottom:-.25em
}
img{
    border:0
}
embed,img,object{
    vertical-align:top
}
figure{
    margin:0
}
button,input,select,textarea{
    margin:0;
    font-size:100%;
    font-family:inherit
}
button,input{
    line-height:normal
}
button,select{
    text-transform:none
}
button,html input[type=button],input[type=reset],input[type=submit]{
    cursor:pointer;
    -webkit-appearance:button
}
button[disabled],html input[disabled]{
    cursor:default
}
input[type=checkbox],input[type=radio]{
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
    padding:0
}
button::-moz-focus-inner,input::-moz-focus-inner{
    border:0;
    padding:0
}
textarea{
    overflow:auto;
    vertical-align:top
}
h1,h2,h3,h4,h5,h6{
    font-size:100%
}
table{
    border-collapse:collapse;
    border-spacing:0
}
caption,th{
    text-align:left
}
li{
    list-style-type:none
}
em{
    font-weight:700
}
@font-face{
    font-family:Baskerville Poster PT;
    src:url(/assets/webfonts/34FBD0_0_0.eot?#iefix);
    src:url(/assets/webfonts/34FBD0_0_0.eot?#iefix) format("eot");
    src:url(/assets/webfonts/34FBD0_0_0.ttf) format("truetype");
    src:url(/assets/webfonts/34FBD0_0_0.woff) format("woff");
    src:url(/assets/webfonts/34FBD0_0_0.woff2) format("woff2")
}
.ming-fonts{
    font-family:\\6E38\660E\671D,YuMincho,Hiragino Mincho ProN,Hiragino Mincho Pro,"\FF2D\FF33 \660E\671D",serif
}
.container{
    max-width:1000px;
    margin:0 auto
}
@media screen and (max-width:1024px){
    .container{
        padding:0 15px
    }
}
.layer-1{
    z-index:10
}
.layer-2{
    z-index:20
}
.layer-3{
    z-index:30
}
.layer-4{
    z-index:40
}
.layer-5{
    z-index:50
}
.layer-6{
    z-index:60
}
.layer-7{
    z-index:70
}
.layer-8{
    z-index:80
}
.layer-9{
    z-index:90
}
.high-layer-1{
    z-index:100
}
.high-layer-2{
    z-index:200
}
.high-layer-3{
    z-index:300
}
.high-layer-4{
    z-index:400
}
.high-layer-5{
    z-index:500
}
.high-layer-6{
    z-index:600
}
.high-layer-7{
    z-index:700
}
.high-layer-8{
    z-index:800
}
.high-layer-9{
    z-index:900
}
.layer-top{
    z-index:999999
}
.layer-bottom{
    z-index:0
}
.layer-back{
    z-index:-1
}
.cross-btn{
    position:absolute;
    width:80px;
    height:80px;
    top:10%;
    left:50%;
    margin-left:-40px;
    border:0;
    background-color:transparent;
    z-index:10
}
.cross-btn .bars,.cross-btn .shadow{
    display:block;
    position:absolute;
    width:10px;
    height:10px;
    top:50%;
    left:50%;
    margin-top:-5px;
    margin-left:-5px
}
.cross-btn .bars:after,.cross-btn .bars:before,.cross-btn .shadow:after,.cross-btn .shadow:before{
    display:block;
    width:14px;
    height:2px;
    content:"";
    position:absolute;
    top:50%;
    border-radius:1px;
    background-color:#fff;
    -webkit-transition:-webkit-transform .4s;
    transition:-webkit-transform .4s;
    transition:transform .4s;
    transition:transform .4s,-webkit-transform .4s;
    -webkit-transform-origin:0 50%;
    transform-origin:0 50%
}
.cross-btn .bars:before,.cross-btn .shadow:before{
    top:-1px;
    -webkit-transform:rotate(45deg) scale(1);
    transform:rotate(45deg) scale(1)
}
.cross-btn .bars:after,.cross-btn .shadow:after{
    top:9px;
    left:0;
    -webkit-transform:rotate(-45deg) scale(1);
    transform:rotate(-45deg) scale(1)
}
.cross-btn .bars{
    z-index:2
}
.cross-btn .bars:after,.cross-btn .bars:before{
    background-color:#fff
}
.cross-btn .bars:after{
    -webkit-transition-delay:.2s;
    transition-delay:.2s
}
.cross-btn .shadow{
    z-index:1
}
.cross-btn .shadow:after,.cross-btn .shadow:before{
    background-color:hsla(0,0%,100%,.2)
}
.cross-btn.wait-hover-active .bars:before{
    top:9px;
    left:-4px;
    -webkit-transform:rotate(45deg) scaleX(0);
    transform:rotate(45deg) scaleX(0);
    -webkit-transform-origin:100% 50%;
    transform-origin:100% 50%
}
.cross-btn.wait-hover-active .bars:after{
    top:-1px;
    left:-4px;
    -webkit-transform:rotate(-45deg) scaleX(0);
    transform:rotate(-45deg) scaleX(0);
    -webkit-transform-origin:100% 50%;
    transform-origin:100% 50%
}
.arr-btn{
    display:block;
    position:relative;
    width:100px;
    height:100px
}
.arr-btn .arr{
    display:block;
    position:absolute;
    top:50%;
    left:50%
}
.arr-btn .arr .line{
    background-color:hsla(0,0%,100%,.2)
}
.arr-btn .arr .line,.arr-btn .arr .line:before{
    display:block;
    position:absolute;
    border-radius:1px
}
.arr-btn .arr .line:before{
    width:100%;
    height:100%;
    content:"";
    top:0;
    left:0;
    background-color:#fff;
    -webkit-transition:-webkit-transform .4s;
    transition:-webkit-transform .4s;
    transition:transform .4s;
    transition:transform .4s,-webkit-transform .4s
}
.arr-btn .arr .line-1{
    -webkit-transform:rotate(45deg);
    transform:rotate(45deg)
}
.arr-btn .arr .line-1:before{
    -webkit-transition-delay:.2s;
    transition-delay:.2s
}
.arr-btn .arr .line-3{
    -webkit-transform:rotate(-45deg);
    transform:rotate(-45deg)
}
.arr-btn .arr .line-3:before{
    -webkit-transition-delay:.2s;
    transition-delay:.2s
}
.arr-btn.bottom .arr,.arr-btn.top .arr{
    width:12px;
    height:14px;
    margin-left:-6px;
    margin-top:-7px
}
.arr-btn.bottom .arr .line:before,.arr-btn.top .arr .line:before{
    -webkit-transform:scaleY(1);
    transform:scaleY(1)
}
.arr-btn.bottom .arr .line-1,.arr-btn.bottom .arr .line-3,.arr-btn.top .arr .line-1,.arr-btn.top .arr .line-3{
    width:2px;
    height:10px
}
.arr-btn.bottom .arr .line-2,.arr-btn.top .arr .line-2{
    width:2px;
    height:14px;
    top:0;
    left:50%;
    margin-left:-1px
}
.arr-btn.left .arr,.arr-btn.right .arr{
    width:14px;
    height:12px;
    margin-left:-7px;
    margin-top:-6px
}
.arr-btn.left .arr .line:before,.arr-btn.right .arr .line:before{
    -webkit-transform:scaleX(1);
    transform:scaleX(1)
}
.arr-btn.left .arr .line-1,.arr-btn.left .arr .line-3,.arr-btn.right .arr .line-1,.arr-btn.right .arr .line-3{
    width:10px;
    height:2px
}
.arr-btn.left .arr .line-2,.arr-btn.right .arr .line-2{
    width:14px;
    height:2px;
    top:50%;
    left:0;
    margin-top:-1px
}
.arr-btn.top .arr .line:before{
    -webkit-transform-origin:50% 100%;
    transform-origin:50% 100%
}
.arr-btn.top .arr .line-1,.arr-btn.top .arr .line-3{
    top:0;
    left:50%;
    margin-left:-1px;
    -webkit-transform-origin:50% 0;
    transform-origin:50% 0
}
.arr-btn.left .arr .line:before{
    -webkit-transform-origin:100% 50%;
    transform-origin:100% 50%
}
.arr-btn.left .arr .line-1,.arr-btn.left .arr .line-3{
    top:50%;
    left:0;
    margin-top:-1px;
    -webkit-transform-origin:0 50%;
    transform-origin:0 50%
}
.arr-btn.bottom .arr .line:before{
    -webkit-transform-origin:50% 0;
    transform-origin:50% 0
}
.arr-btn.bottom .arr .line-1,.arr-btn.bottom .arr .line-3{
    bottom:0;
    left:50%;
    margin-left:-1px;
    -webkit-transform-origin:50% 100%;
    transform-origin:50% 100%
}
.arr-btn.right .arr .line:before{
    -webkit-transform-origin:0 50%;
    transform-origin:0 50%
}
.arr-btn.right .arr .line-1,.arr-btn.right .arr .line-3{
    top:50%;
    right:0;
    margin-top:-1px;
    -webkit-transform-origin:100% 50%;
    transform-origin:100% 50%
}
.arr-btn.wait-hover-active-half .arr .line-2:before{
    -webkit-transition-delay:.2s;
    transition-delay:.2s
}
.arr-btn.wait-hover-active-half .arr .line-1:before,.arr-btn.wait-hover-active-half .arr .line-3:before{
    -webkit-transition-delay:0s;
    transition-delay:0s
}
.arr-btn.wait-hover-active-half.top .arr .line:before{
    -webkit-transform:scaleY(0);
    transform:scaleY(0);
    -webkit-transform-origin:50% 0;
    transform-origin:50% 0
}
.arr-btn.wait-hover-active-half.left .arr .line:before{
    -webkit-transform:scaleX(0);
    transform:scaleX(0);
    -webkit-transform-origin:0 50%;
    transform-origin:0 50%
}
.arr-btn.wait-hover-active-half.bottom .arr .line:before{
    -webkit-transform:scaleY(0);
    transform:scaleY(0);
    -webkit-transform-origin:50% 100%;
    transform-origin:50% 100%
}
.arr-btn.wait-hover-active-half.right .arr .line:before{
    -webkit-transform:scaleX(0);
    transform:scaleX(0);
    -webkit-transform-origin:100% 50%;
    transform-origin:100% 50%
}
.caution-group{
    font-size:1.3em;
    padding-left:1em
}
.caution-list{
    position:relative
}
.caution-list:before{
    display:inline-block;
    content:"\203B";
    position:absolute;
    left:-2em
}
.plan-table{
    width:100%
}
.plan-table td,.plan-table th{
    text-align:center;
    font-weight:400
}
.plan-table .plan-name{
    width:140px;
    padding:40px 0;
    font-size:1.6em;
    line-height:1.4;
    font-weight:700
}
.plan-table .plan-name span{
    display:inline-block;
    width:70px;
    margin-top:1em;
    font-size:.6em;
    color:#1a1a1a;
    background-color:#ffe000;
    line-height:25px;
    border-radius:15px
}
.plan-table .plan-name span.new{
    color:#fff;
    background-color:#ba0035
}
.plan-table .plan-description{
    width:350px;
    text-align:left
}
.plan-table .plan-description h3{
    color:#1a1a1a;
    font-size:1.4em;
    line-height:1.6;
    margin-bottom:10px
}
.plan-table .plan-description p{
    margin-bottom:10px
}
.plan-table .plan-description p:last-child{
    margin-bottom:0
}
.plan-table .plan-description a{
    color:#ea4c02
}
.plan-table .plan-description span{
    display:inline-block;
    padding:.5em 1em;
    font-size:1em;
    color:#fff;
    background-color:#ea4c02;
    border-radius:20px
}
.plan-table .plan-trial-description{
    text-align:left
}
.plan-table .plan-entry-fee,.plan-table .plan-limit,.plan-table .plan-time{
    width:140px
}
.plan-table .plan-entry-fee strong{
    margin-bottom:0
}
.plan-table .plan-purchase{
    width:140px
}
.plan-table .plan-purchase p{
    margin-bottom:10px
}
.plan-table .plan-purchase .btn{
    width:100px;
    height:40px
}
.plan-table .plan-purchase .btn>span{
    padding:0;
    line-height:40px
}
.plan-caution{
    padding:40px 50px;
    border:1px solid #454545;
    border-top:0;
    background-color:#333
}
.plan-head{
    border-right:1px solid #4c4c4c
}
.plan-head td,.plan-head th{
    padding:15px 0;
    font-size:1.4em;
    font-weight:700;
    background-color:#4c4c4c;
    color:#fff;
    text-align:center
}
.plan-body{
    border:1px solid #454545;
    border-top:0;
    border-bottom:0
}
.plan-body tr{
    border-bottom:1px solid #454545
}
.plan-body tr:nth-of-type(odd){
    background-color:#333
}
.plan-body tr:nth-of-type(2n){
    background-color:#393939
}
.plan-body td,.plan-body th{
    padding:40px 15px;
    border-right:1px solid #454545
}
.plan-body p{
    font-size:1.4em;
    line-height:1.6
}
.plan-body strong{
    display:inline-block
}
.plan-body .plan-label,.plan-body .plan-name-label{
    display:none
}
@media screen and (max-width:1024px){
    .plan-table{
        width:100%
    }
    .plan-table td,.plan-table th{
        text-align:center;
        font-weight:400
    }
    .plan-table td:last-child{
        padding-bottom:20px
    }
    .plan-table .plan-name{
        display:inline-block;
        position:absolute;
        width:120px;
        top:78px;
        left:-3px;
        padding:0 15px;
        border:0;
        font-size:1.6em;
        line-height:1.4;
        font-weight:700
    }
    .plan-table .plan-name span{
        display:inline-block;
        width:70px;
        margin-top:1em;
        font-size:.6em;
        color:#1a1a1a;
        background-color:#ffe000;
        line-height:25px;
        border-radius:15px
    }
    .plan-table .plan-name span.new{
        color:#fff;
        background-color:#ba0035
    }
    .plan-table .plan-description,.plan-table .plan-trial-description{
        display:inline-block;
        padding-left:105px;
        text-align:left;
        border-bottom:1px solid #454545
    }
    .plan-table .plan-description p,.plan-table .plan-trial-description p{
        text-align:left
    }
    .plan-table .plan-description{
        width:auto
    }
    .plan-table .plan-description h3{
        color:#1a1a1a;
        font-size:1.4em;
        line-height:1.6;
        margin-bottom:10px
    }
    .plan-table .plan-description p{
        padding-bottom:0
    }
    .plan-table .plan-description a{
        color:#ea4c02
    }
    .plan-table .plan-description span{
        display:inline-block;
        padding:.5em 1em;
        margin-top:10px;
        font-size:1em;
        color:#fff;
        background-color:#ea4c02;
        border-radius:20px
    }
    .plan-table .plan-description .description-inner,.plan-table .plan-trial-description .description-inner{
        min-height:100px;
        padding:20px 0 20px 15px;
        border-left:1px solid #454545
    }
    .plan-table .plan-time{
        width:auto
    }
    .plan-table .plan-limit{
        width:auto;
        padding-top:20px
    }
    .plan-table .plan-entry-fee{
        width:auto
    }
    .plan-table .plan-entry-fee strong{
        margin-bottom:0
    }
    .plan-table .plan-purchase{
        width:auto;
        padding-bottom:20px
    }
    .plan-table .plan-purchase strong{
        color:#e94c01;
        font-size:1.8em;
        margin-bottom:0;
        margin-top:-7px
    }
    .plan-table .plan-purchase .btn{
        width:100%;
        height:40px
    }
    .plan-table .plan-purchase .btn>span{
        padding:0;
        line-height:40px
    }
    .plan-table .plan-trial-purchase p{
        margin-bottom:0
    }
    .plan-caution{
        padding:10px 15px 10px 40px
    }
    .plan-head{
        display:none
    }
    .plan-body .plan-name-label,.plan-head td,.plan-head th{
        padding:15px 0;
        font-size:1.4em;
        font-weight:700;
        background-color:#4c4c4c;
        color:#fff;
        text-align:center
    }
    .plan-body{
        border:0
    }
    .plan-body tr{
        display:block;
        position:relative;
        margin-bottom:25px;
        border-bottom:5px solid #454545;
        background-color:#fbfaf6
    }
    .plan-body td,.plan-body th{
        display:block;
        padding:0 15px;
        border-right:5px solid #454545;
        border-left:5px solid #454545
    }
    .plan-body td{
        padding-top:10px
    }
    .plan-body p{
        display:block;
        position:relative;
        font-size:1.4em;
        line-height:1.6;
        text-align:right
    }
    .plan-body strong{
        display:inline-block;
        margin-bottom:.8em
    }
    .plan-body strong:last-child{
        margin-bottom:0
    }
    .plan-body .plan-name-label{
        display:block;
        border-right:5px solid #4c4c4c;
        border-left:5px solid #4c4c4c
    }
    .plan-body .plan-label{
        display:inline-block;
        position:absolute;
        top:0;
        left:0;
        font-weight:700
    }
}
.modal-frame{
    display:none;
    text-align:center;
    z-index:999
}
.modal-frame,.modal-frame:after{
    position:absolute;
    width:100%;
    height:100%;
    top:0;
    left:0
}
.modal-frame:after{
    display:block;
    content:"";
    opacity:0;
    z-index:20;
    pointer-events:none
}
.modal-frame .modal-bg{
    position:fixed;
    width:100%;
    height:100%;
    top:0;
    left:0;
    background-color:rgba(26,26,26,.8);
    z-index:1
}
.modal-frame .modal{
    position:relative;
    display:inline-block;
    z-index:2
}
.modal-frame .modal img{
    width:100%;
    height:auto;
    max-width:700px;
    cursor:move
}
.modal-frame .modal-close{
    display:block;
    position:absolute;
    width:50px;
    height:50px;
    top:-50px;
    right:-50px;
    z-index:100
}
.modal-frame .modal-close .bars{
    display:block;
    width:100%;
    height:100%
}
.modal-frame .modal-close .bars:after,.modal-frame .modal-close .bars:before{
    display:block;
    width:16px;
    height:1px;
    content:"";
    position:absolute;
    top:50%;
    left:50%;
    margin-top:-.5px;
    margin-left:-8px;
    background-color:#fff
}
.modal-frame .modal-close .bars:before{
    -webkit-transform:rotate(45deg);
    transform:rotate(45deg)
}
.modal-frame .modal-close .bars:after{
    -webkit-transform:rotate(-45deg);
    transform:rotate(-45deg)
}
.modal-frame .modal-close .bars span{
    opacity:0
}
.modal-frame.is-standby:after{
    opacity:1
}
@media screen and (max-width:1024px){
    .modal-frame .modal{
        display:block
    }
    .modal-frame .modal-close{
        position:fixed;
        top:0;
        right:0
    }
}
#cover{
    position:fixed;
    width:100%;
    height:100%;
    top:0;
    left:0;
    background-color:#040006;
    text-align:center;
    color:#fff;
    font-size:1.8em;
    letter-spacing:.5em;
    overflow:hidden
}
#cover .logo{
    width:70px;
    height:75px
}
#cover .loading-img{
    position:absolute;
    top:20px;
    left:20px;
    -webkit-animation-name:spin;
    animation-name:spin;
    -webkit-animation-duration:.4s;
    animation-duration:.4s;
    -webkit-animation-timing-function:linear;
    animation-timing-function:linear;
    -webkit-animation-iteration-count:infinite;
    animation-iteration-count:infinite
}
#waiting-cover{
    position:fixed;
    width:100%;
    height:100%;
    top:0;
    left:0;
    overflow:hidden;
    pointer-events:none;
    -webkit-user-select:none;
    -moz-user-select:none;
    -ms-user-select:none;
    user-select:none;
    cursor:none
}
#waiting-cover.is-active,.bq-page-changing #waiting-cover{
    pointer-events:all
}
#waiting-cover.is-active #waiting-cover-cursor img,.bq-page-changing #waiting-cover #waiting-cover-cursor img{
    -webkit-animation-name:spin;
    animation-name:spin;
    -webkit-animation-duration:.4s;
    animation-duration:.4s;
    -webkit-animation-timing-function:linear;
    animation-timing-function:linear;
    -webkit-animation-iteration-count:infinite;
    animation-iteration-count:infinite
}
#waiting-cover-cursor{
    display:none;
    position:fixed;
    width:26px;
    height:26px;
    top:0;
    left:0;
    pointer-events:none;
    opacity:0!important;
    -webkit-transition:opacity .4s;
    transition:opacity .4s
}
#waiting-cover-cursor.is-active{
    pointer-events:all;
    cursor:none
}
#waiting-cover-cursor img{
    width:26px;
    height:26px
}
#waiting-cover-cursor .inner{
    width:26px;
    height:26px;
    -webkit-transition:-webkit-transform .4s;
    transition:-webkit-transform .4s;
    transition:transform .4s;
    transition:transform .4s,-webkit-transform .4s
}
#waiting-cover-cursor.is-mousedown .inner{
    -webkit-transform:scale(1.2);
    transform:scale(1.2)
}
.bq-page-changing #waiting-cover-cursor,.is-waiting #waiting-cover-cursor{
    display:block;
    opacity:1!important;
    pointer-events:all;
    cursor:none
}
.bq-page-changing #waiting-cover-cursor img,.is-waiting #waiting-cover-cursor img{
    -webkit-animation-name:spin;
    animation-name:spin;
    -webkit-animation-duration:.4s;
    animation-duration:.4s;
    -webkit-animation-timing-function:linear;
    animation-timing-function:linear;
    -webkit-animation-iteration-count:infinite;
    animation-iteration-count:infinite
}
#notice-cover{
    width:100%;
    top:0;
    left:0;
    padding:15% 0;
    color:#fff;
    text-align:center
}
#notice-cover:before{
    display:block;
    width:100%;
    height:100%;
    content:"";
    position:fixed;
    top:0;
    left:0;
    background-color:rgba(4,0,6,.75);
    z-index:1
}
#notice-cover.is-hidden{
    -webkit-transition:opacity .4s;
    transition:opacity .4s;
    opacity:0;
    pointer-events:none
}
#notice-cover .block{
    position:relative;
    display:inline-block;
    max-width:1000px;
    z-index:2
}
#notice-cover .block-head{
    margin-bottom:60px
}
#notice-cover .block-head h2{
    line-height:1;
    margin-bottom:5px;
    font-size:3.2em;
    font-weight:400
}
#notice-cover .block-head h2.is-japanese{
    letter-spacing:.2em
}
#notice-cover .block-head h3{
    font-size:1.6em;
    font-weight:400
}
#notice-cover .block-body{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    margin-bottom:60px;
    text-align:left
}
#notice-cover .block-body p{
    margin-bottom:15px
}
#notice-cover .block-body p:last-child{
    margin-bottom:0
}
#notice-cover .block-body p[lang=en]{
    font-size:1.6em
}
#notice-cover .block-body p[lang=ja]{
    font-size:1.4em
}
#notice-cover .unit{
    -webkit-box-flex:1;
    -ms-flex-positive:1;
    flex-grow:1;
    -ms-flex-preferred-size:0;
    flex-basis:0;
    margin-right:20px
}
#notice-cover .unit:last-child{
    margin-right:0
}
#notice-cover #notice-cover-cursor{
    position:fixed;
    width:46px;
    height:22px;
    line-height:1;
    pointer-events:none;
    cursor:none
}
#notice-cover #notice-done-btn{
    position:relative;
    width:160px;
    height:50px;
    font-size:1.6em;
    color:#fff;
    background-color:transparent;
    border:0
}
#notice-cover #notice-done-btn .label{
    display:inline-block;
    vertical-align:sub;
    -webkit-transition:-webkit-transform .4s cubic-bezier(.6,0,.3,1);
    transition:-webkit-transform .4s cubic-bezier(.6,0,.3,1);
    transition:transform .4s cubic-bezier(.6,0,.3,1);
    transition:transform .4s cubic-bezier(.6,0,.3,1),-webkit-transform .4s cubic-bezier(.6,0,.3,1)
}
#notice-cover #notice-done-btn .line{
    position:absolute;
    width:100%;
    height:100%;
    top:0;
    left:0
}
#notice-cover #notice-done-btn .line:after,#notice-cover #notice-done-btn .line:before{
    opacity:.2;
    background-color:#fff;
    -webkit-transition:opacity .4s,-webkit-transform .4s cubic-bezier(.6,0,.3,1);
    transition:opacity .4s,-webkit-transform .4s cubic-bezier(.6,0,.3,1);
    transition:transform .4s cubic-bezier(.6,0,.3,1),opacity .4s;
    transition:transform .4s cubic-bezier(.6,0,.3,1),opacity .4s,-webkit-transform .4s cubic-bezier(.6,0,.3,1)
}
#notice-cover #notice-done-btn .line:before{
    display:block;
    width:100%;
    height:1px;
    content:"";
    position:absolute
}
#notice-cover #notice-done-btn .line:after{
    display:block;
    width:1px;
    height:100%;
    content:"";
    position:absolute
}
#notice-cover #notice-done-btn .line.top:before{
    top:0;
    right:0;
    -webkit-transform:scaleX(.7);
    transform:scaleX(.7);
    -webkit-transform-origin:100% 50%;
    transform-origin:100% 50%
}
#notice-cover #notice-done-btn .line.top:after{
    top:0;
    left:0;
    -webkit-transform:scaleY(0);
    transform:scaleY(0);
    -webkit-transform-origin:50% 100%;
    transform-origin:50% 100%
}
#notice-cover #notice-done-btn .line.bottom:before{
    bottom:0;
    left:0;
    -webkit-transform:scaleX(.7);
    transform:scaleX(.7);
    -webkit-transform-origin:0 50%;
    transform-origin:0 50%
}
#notice-cover #notice-done-btn .line.bottom:after{
    bottom:0;
    right:0;
    -webkit-transform:scaleY(0);
    transform:scaleY(0);
    -webkit-transform-origin:50% 0;
    transform-origin:50% 0
}
#notice-cover #notice-done-btn:hover .line:after,#notice-cover #notice-done-btn:hover .line:before{
    opacity:1;
    -webkit-transform:scale(1);
    transform:scale(1)
}
@media screen and (max-width:1024px){
    #notice-cover{
        padding:80px 20px
    }
    #notice-cover .block-body{
        display:block
    }
    #notice-cover .unit{
        margin-right:0;
        margin-bottom:90px
    }
    #notice-cover .unit:last-child{
        margin-bottom:30px
    }
    #waiting-cover-cursor{
        top:20px;
        left:20px
    }
}
#auth-form-container{
    color:#fff;
    text-align:center
}
#auth-form-container:after{
    display:block;
    width:100%;
    height:100%;
    content:"";
    position:fixed;
    top:0;
    left:0;
    background-color:rgba(4,0,6,.65);
    z-index:1
}
#auth-form-container .tb-1{
    position:relative;
    z-index:10
}
#auth-form-container .cross-btn{
    position:fixed;
    top:20px;
    right:20px;
    left:inherit;
    margin-left:0;
    z-index:11
}
#auth-form-container .lock{
    display:inline-block;
    width:70px;
    height:70px
}
#auth-form-container .lock img{
    width:100%;
    height:auto
}
#auth-form-container .btn-form-change{
    display:block;
    position:absolute;
    width:150px;
    height:50px;
    line-height:50px;
    top:0;
    left:470px;
    text-align:right;
    font-size:1.6em;
    color:#fff;
    -webkit-transition:opacity .4s,-webkit-transform .6s;
    transition:opacity .4s,-webkit-transform .6s;
    transition:opacity .4s,transform .6s;
    transition:opacity .4s,transform .6s,-webkit-transform .6s
}
#auth-form-container .btn-form-change:hover{
    opacity:.5
}
#auth-form-container .form-wrap{
    position:relative;
    width:100%;
    max-width:400px;
    margin:0 auto;
    -webkit-transition:opacity .4s,-webkit-transform .6s;
    transition:opacity .4s,-webkit-transform .6s;
    transition:opacity .4s,transform .6s;
    transition:opacity .4s,transform .6s,-webkit-transform .6s
}
#auth-form-container .form-wrap form{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    overflow:hidden;
    border:1px solid hsla(0,0%,100%,.3);
    border-radius:25px;
    -webkit-transition:border .4s;
    transition:border .4s
}
#auth-form-container .form-wrap form.has-error{
    border:1px solid #ba0035
}
#auth-form-container .form-wrap button{
    position:relative;
    width:70px;
    height:50px;
    border:0;
    font-size:0;
    background-color:transparent;
    overflow:hidden
}
#auth-form-container .form-wrap button:after,#auth-form-container .form-wrap button span{
    -webkit-transition:-webkit-transform .4s cubic-bezier(.6,0,.3,1);
    transition:-webkit-transform .4s cubic-bezier(.6,0,.3,1);
    transition:transform .4s cubic-bezier(.6,0,.3,1);
    transition:transform .4s cubic-bezier(.6,0,.3,1),-webkit-transform .4s cubic-bezier(.6,0,.3,1)
}
#auth-form-container .form-wrap button:after,#auth-form-container .form-wrap button span{
    display:block;
    height:100%;
    background:50% 50% no-repeat
}
#auth-form-container .form-wrap button:after{
    width:100%;
    content:"";
    position:absolute;
    top:50px;
    left:0
}
#auth-form-container .form-wrap button:hover:after,#auth-form-container .form-wrap button:hover span{
    -webkit-transform:translateY(-100%);
    transform:translateY(-100%)
}
#auth-form-container .form-wrap .btn-submit:after,#auth-form-container .form-wrap .btn-submit span{
    background-image:url(/assets/img/icons/btn_label_send.png);
    background-size:19px 15px
}
#auth-form-container .form-wrap .btn-signin:after,#auth-form-container .form-wrap .btn-signin span{
    background-image:url(/assets/img/icons/btn_label_signin.png);
    background-size:14px 14px
}
#auth-form-container .form-wrap .open-form{
    width:100%;
    max-width:350px;
    height:50px;
    padding:6px 30px 0;
    font-size:1.6em;
    border:0;
    line-height:1;
    vertical-align:top;
    -webkit-box-flex:1;
    -ms-flex-positive:1;
    flex-grow:1;
    -ms-flex-preferred-size:0;
    flex-basis:0;
    color:#fff;
    background-color:transparent
}
#auth-form-container .form-wrap .open-form::-webkit-input-placeholder{
    color:hsla(0,0%,100%,.6)
}
#auth-form-container .form-wrap .open-form::-moz-placeholder{
    color:hsla(0,0%,100%,.6)
}
#auth-form-container .form-wrap .open-form:-ms-input-placeholder{
    color:hsla(0,0%,100%,.6)
}
#auth-form-container .form-wrap .error-msg{
    position:absolute;
    width:100%;
    bottom:-60px;
    text-align:center;
    padding:10px 0;
    font-size:1.8em;
    color:#fff;
    -webkit-transition:opacity .4s,-webkit-transform .6s;
    transition:opacity .4s,-webkit-transform .6s;
    transition:opacity .4s,transform .6s;
    transition:opacity .4s,transform .6s,-webkit-transform .6s
}
#auth-form-container .form-wrap .error-msg.is-hidden{
    opacity:0;
    -webkit-transform:translateY(10px);
    transform:translateY(10px)
}
#auth-form-container .form-wrap .success-msg{
    width:100%;
    max-width:400px;
    height:50px;
    line-height:50px;
    margin:0 auto;
    font-size:1.8em;
    color:#109cda;
    border:1px solid #109cda;
    -webkit-transition:opacity .4s,-webkit-transform .6s;
    transition:opacity .4s,-webkit-transform .6s;
    transition:opacity .4s,transform .6s;
    transition:opacity .4s,transform .6s,-webkit-transform .6s
}
#auth-form-container .form-wrap .success-msg.is-hidden{
    opacity:0
}
#auth-form-container .block-head{
    margin-bottom:60px
}
#auth-form-container .block-foot{
    height:50px
}
#auth-form-container .unit{
    display:inline-block;
    max-width:460px;
    padding:0 30px;
    vertical-align:top
}
#auth-form-container .unit h2{
    line-height:1;
    font-weight:400;
    letter-spacing:.2em
}
#auth-form-container .unit h2[lang=en]{
    font-size:2.2em
}
#auth-form-container .unit h2[lang=ja]{
    font-size:2em
}
#auth-form-container .unit p{
    text-align:justify;
    letter-spacing:.05em
}
#auth-form-container .unit p[lang=en]{
    line-height:1.7;
    font-size:1.6em;
    letter-spacing:.02em
}
#auth-form-container .unit p[lang=ja]{
    font-size:1.4em
}
#auth-form-container .unit-head{
    margin-bottom:20px
}
#auth-form-container .unit-body{
    text-align:left;
    margin-bottom:60px
}
#auth-form-container #form-section.is-change #auth-form,#auth-form-container #form-section.is-change #mail-form{
    -webkit-transform:translateY(-100%);
    transform:translateY(-100%)
}
#auth-form-container #form-section.is-change #mail-form{
    opacity:0;
    pointer-events:none
}
#auth-form-container #form-section.is-change #auth-form{
    opacity:1;
    pointer-events:all
}
#auth-form-container #auth-form{
    opacity:0;
    pointer-events:none
}
@media screen and (max-width:1024px){
    #auth-form-container{
        padding:60px 20px;
        height:auto!important
    }
    #auth-form-container .form-wrap button:hover:after,#auth-form-container .form-wrap button:hover span{
        -webkit-transform:translateY(0);
        transform:translateY(0)
    }
    #auth-form-container .form-wrap button.is-touched:after,#auth-form-container .form-wrap button.is-touched span{
        -webkit-transform:translateY(-100%);
        transform:translateY(-100%)
    }
    #auth-form-container .form-wrap .error-msg{
        display:none
    }
    #auth-form-container .tb-1,#auth-form-container .tb-2{
        display:block
    }
    #auth-form-container .tb-3{
        overflow:hidden
    }
    #auth-form-container .unit{
        display:block;
        padding:0;
        margin:0 auto
    }
    #auth-form-container .unit p[lang=en]{
        line-height:1.4;
        font-size:1.6em;
        letter-spacing:.02em
    }
    #auth-form-container .unit p[lang=ja]{
        font-size:1.3em;
        line-height:1.8em
    }
    #auth-form-container .unit-body{
        margin-bottom:25px
    }
    #auth-form-container .cross-btn{
        width:60px;
        height:60px;
        top:0;
        right:0
    }
    #auth-form-container .block-foot{
        height:120px
    }
    #auth-form-container .btn-form-change{
        position:relative;
        width:100%;
        height:60px;
        line-height:60px;
        top:0;
        left:0;
        text-align:center
    }
    #auth-form-container .btn-form-change:hover{
        opacity:1
    }
    #auth-form-container .btn-form-change.is-touched{
        opacity:.5
    }
}
#loading-line{
    position:fixed;
    width:100%;
    height:1px;
    top:50%;
    left:0;
    margin-top:1px;
    -webkit-transform-origin:100% 50%;
    transform-origin:100% 50%;
    background-color:#fff;
    -webkit-transform:scale(1);
    transform:scale(1)
}
#loading-line.is-fadein{
    opacity:1
}
#vartical-progress-indicator{
    display:block;
    position:absolute;
    width:1px;
    height:100%;
    top:0;
    left:50%;
    background-color:hsla(0,0%,100%,.6);
    -webkit-transform:scaleY(0);
    transform:scaleY(0);
    pointer-events:none;
    -webkit-transform-origin:50% 100%;
    transform-origin:50% 100%
}
#vartical-progress-indicator.upside{
    background:-webkit-gradient(linear,left bottom,left top,color-stop(25%,hsla(0,0%,100%,0)),to(#fff));
    background:linear-gradient(0deg,hsla(0,0%,100%,0) 25%,#fff)
}
#vartical-progress-indicator.downside{
    background:-webkit-gradient(linear,left top,left bottom,color-stop(25%,hsla(0,0%,100%,0)),to(#fff));
    background:linear-gradient(180deg,hsla(0,0%,100%,0) 25%,#fff)
}
#vartical-progress-indicator.to-top{
    -webkit-transform-origin:50% 0;
    transform-origin:50% 0
}
#vartical-progress-indicator.to-bottom{
    -webkit-transform-origin:50% 100%;
    transform-origin:50% 100%
}
#screen-controller{
    position:fixed;
    width:100%;
    height:80px;
    padding:10px 0;
    left:50%;
    bottom:5%;
    text-align:center;
    z-index:100;
    -webkit-transition:opacity .4s;
    transition:opacity .4s;
    opacity:0;
    cursor:pointer
}
#screen-controller,#screen-controller .watashi{
    pointer-events:none
}
#screen-controller.is-active{
    opacity:1;
    pointer-events:all
}
#screen-controller.is-waiting{
    opacity:.5;
    pointer-events:none
}
#screen-controller.is-biography #knob:hover .separator:after,#screen-controller.is-biography #knob:hover .separator:before{
    -webkit-transform:scale(0);
    transform:scale(0)
}
#screen-controller>.inner{
    display:inline-block;
    position:relative;
    height:60px
}
#screen-controller .nav-group{
    position:relative;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    height:100%;
    z-index:1
}
#screen-controller .nav-group:hover .nav-list{
    opacity:.4
}
#screen-controller .nav-group:hover .nav-list:hover{
    opacity:1
}
#screen-controller .nav-group:after{
    display:block;
    width:100%;
    height:1px;
    content:"";
    position:absolute;
    top:50%;
    left:0;
    background-color:hsla(0,0%,100%,.2);
    pointer-events:none
}
#screen-controller .nav-list{
    position:relative;
    display:block;
    width:83px;
    height:100%;
    line-height:1;
    color:#fff;
    font-size:1.6em;
    opacity:0;
    -webkit-transition:opacity .4s,-webkit-transform .6s;
    transition:opacity .4s,-webkit-transform .6s;
    transition:transform .6s,opacity .4s;
    transition:transform .6s,opacity .4s,-webkit-transform .6s
}
#screen-controller .nav-list.is-level-0{
    opacity:1
}
#screen-controller .nav-list.is-level-1{
    opacity:.4
}
#screen-controller .nav-list.is-level-2{
    opacity:.3
}
#screen-controller .denominator,#screen-controller .numerator{
    position:absolute;
    display:block;
    width:100%;
    text-align:center;
    pointer-events:none
}
#screen-controller .numerator{
    top:0
}
#screen-controller .denominator,#screen-controller .numerator{
    -webkit-user-select:none;
    -moz-user-select:none;
    -ms-user-select:none;
    user-select:none
}
#screen-controller .denominator{
    bottom:0
}
#screen-controller #nav-indicator{
    position:absolute;
    width:83px;
    height:100%;
    top:0;
    left:0;
    background-color:#fff;
    -webkit-transform-origin:0 0;
    transform-origin:0 0
}
#screen-controller #knob{
    display:block;
    position:absolute;
    width:83px;
    height:100%;
    line-height:1;
    top:0;
    font-size:1.6em;
    font-weight:700;
    color:#fff;
    z-index:10;
    cursor:-webkit-grab;
    cursor:grab
}
#screen-controller #knob:hover .separator:after,#screen-controller #knob:hover .separator:before{
    -webkit-transform:scale(1);
    transform:scale(1)
}
#screen-controller #knob:hover+.nav-group .nav-list.is-level-0{
    -webkit-transform:translateY(-1em);
    transform:translateY(-1em)
}
#screen-controller #knob:hover+.nav-group .nav-list.is-level-1{
    -webkit-transform:translateY(-.5em);
    transform:translateY(-.5em)
}
#screen-controller #knob:hover+.nav-group .nav-list.is-level-2{
    -webkit-transform:translateY(0);
    transform:translateY(0)
}
#screen-controller #knob.is-grabbing{
    cursor:-webkit-grabbing;
    cursor:grabbing
}
#screen-controller #knob .denominator{
    bottom:-3px;
    -webkit-transition:opacity .4s,-webkit-transform .6s;
    transition:opacity .4s,-webkit-transform .6s;
    transition:transform .6s,opacity .4s;
    transition:transform .6s,opacity .4s,-webkit-transform .6s
}
#screen-controller #knob .separator{
    position:absolute;
    width:100%;
    height:1px;
    left:0;
    top:50%;
    background-color:hsla(0,0%,100%,.1)
}
#screen-controller #knob .separator:after,#screen-controller #knob .separator:before{
    display:block;
    width:10px;
    height:1px;
    content:"";
    position:absolute;
    top:0;
    background-color:#fff;
    -webkit-transform:scaleX(0);
    transform:scaleX(0);
    -webkit-transition:-webkit-transform .4s;
    transition:-webkit-transform .4s;
    transition:transform .4s;
    transition:transform .4s,-webkit-transform .4s
}
#screen-controller #knob .separator:before{
    left:-10px;
    -webkit-transform-origin:100% 50%;
    transform-origin:100% 50%
}
#screen-controller #knob .separator:after{
    right:-10px;
    -webkit-transform-origin:0 50%;
    transform-origin:0 50%
}
@media screen and (max-width:1024px){
    #screen-controller{
        height:10px;
        left:0;
        bottom:10%;
        pointer-events:none
    }
    #screen-controller>.inner{
        height:10px
    }
    #screen-controller .nav-group:after{
        display:none
    }
    #screen-controller .nav-list{
        width:5px;
        height:5px;
        margin-right:15px;
        border-radius:50%;
        font-size:0;
        opacity:.15;
        -webkit-box-flex:1;
        -ms-flex-positive:1;
        flex-grow:1;
        -ms-flex-preferred-size:0;
        flex-basis:0;
        background-color:#fff
    }
    #screen-controller .nav-list:last-child{
        margin-right:0
    }
    #screen-controller .nav-list.is-level-0{
        opacity:.6
    }
    #screen-controller .nav-list.is-level-1,#screen-controller .nav-list.is-level-2{
        opacity:.15
    }
    #screen-controller #knob{
        opacity:0;
        pointer-events:none
    }
}
.fade-in{
    opacity:0;
    -webkit-transition-property:opacity;
    transition-property:opacity;
    -webkit-transition-duration:.6s;
    transition-duration:.6s;
    -webkit-transition-timing-function:linear;
    transition-timing-function:linear
}
.trans-in-bottom{
    -webkit-transform:translateY(20px);
    transform:translateY(20px)
}
.trans-in-bottom,.trans-in-top{
    opacity:0;
    -webkit-transition-property:opacity,-webkit-transform;
    transition-property:opacity,-webkit-transform;
    transition-property:opacity,transform;
    transition-property:opacity,transform,-webkit-transform;
    -webkit-transition-duration:.6s;
    transition-duration:.6s
}
.trans-in-top{
    -webkit-transform:translateY(-20px);
    transform:translateY(-20px)
}
.trans-in-left{
    -webkit-transform:translateX(-20px);
    transform:translateX(-20px)
}
.trans-in-left,.trans-in-right{
    opacity:0;
    -webkit-transition-property:opacity,-webkit-transform;
    transition-property:opacity,-webkit-transform;
    transition-property:opacity,transform;
    transition-property:opacity,transform,-webkit-transform;
    -webkit-transition-duration:.6s;
    transition-duration:.6s
}
.trans-in-right{
    -webkit-transform:translateX(20px);
    transform:translateX(20px)
}
.action .fade-in{
    opacity:1
}
.action.trans-in-bottom,.action.trans-in-left,.action.trans-in-right,.action.trans-in-top{
    opacity:1;
    -webkit-transform:translate(0);
    transform:translate(0)
}
.action.fade-in{
    opacity:1
}
.action .trans-in-bottom,.action .trans-in-left,.action .trans-in-right,.action .trans-in-top{
    opacity:1;
    -webkit-transform:translate(0);
    transform:translate(0)
}
::selection{
    background:#e0e0e0;
    color:#393939
}
::-moz-selection{
    background:#e0e0e0;
    color:#393939
}
::-webkit-input-placeholder{
    color:#ccc
}
::-moz-placeholder{
    color:#ccc
}
*{
    outline:none;
    margin:0;
    padding:0
}
*,:after,:before{
    -webkit-box-sizing:border-box;
    box-sizing:border-box
}
body,html{
    height:100%;
    background-color:#040006
}
body{
    color:#000;
    font-size:10px;
    font-family:Baskerville Poster PT,\\6E38\660E\671D,YuMincho,Hiragino Mincho ProN,Hiragino Mincho Pro,"\FF2D\FF33 \660E\671D",serif;
    line-height:2;
    -webkit-text-size-adjust:100%;
    overflow-y:scroll;
    overflow-x:hidden;
    text-rendering:optimizeLegibility;
    -webkit-font-smoothing:antialiased
}
body.bq-page-changing a{
    pointer-events:none!important
}
a{
    cursor:pointer;
    text-decoration:none
}
h3,time{
    letter-spacing:.15em
}
#noscript_message{
    position:fixed;
    z-index:10000;
    padding:1em 0;
    width:100%;
    background:#c00;
    color:#fff;
    text-align:center;
    font-size:1.2em
}
#contents,#wrap{
    position:relative;
    height:100%
}
#contents.set-bg:before{
    display:block;
    width:100%;
    height:100%;
    content:"";
    position:fixed;
    top:0;
    left:0;
    background-color:#040006
}
#stage{
    -webkit-transition:opacity .8s;
    transition:opacity .8s
}
#stage.is-hidden{
    opacity:0
}
.tb-0{
    position:absolute
}
.tb-0,.tb-1{
    width:100%;
    height:100%
}
.tb-1{
    display:table
}
.tb-2{
    display:table-cell;
    vertical-align:middle
}
.tb-3{
    position:relative
}
.clearfix:after{
    content:"";
    display:table;
    width:0;
    height:0;
    clear:both;
    overflow:hidden
}
br.mq,span.hidden-text{
    display:none
}
.text-red{
    color:#ba0035!important
}
#wrap.is-waiting{
    pointer-events:none
}
.is-waiting,.is-waiting a{
    cursor:none
}
#page{
    position:relative;
    z-index:10
}
#stage{
    position:fixed;
    width:100%;
    height:100%;
    top:0;
    left:0;
    z-index:0
}
.page-content{
    position:relative;
    z-index:10
}
@media screen and (max-width:1024px){
    br.pc{
        display:none
    }
    br.mq{
        display:block
    }
    body{
        min-width:320px
    }
    #pattern-bg:before{
        display:none
    }
    #pattern-bg .container-inner{
        border-right:0
    }
    #pattern-bg .container-inner:before{
        position:absolute;
        width:50%;
        top:0;
        right:0
    }
}
#top{
    position:relative;
    height:100%;
    z-index:10;
    text-align:center
}
#top #top-indicator{
    top:50%;
    overflow:hidden;
    pointer-events:none
}
#top #top-indicator,#top #top-indicator .line{
    position:absolute;
    width:100%;
    height:1px;
    left:0
}
#top #top-indicator .line{
    top:0;
    -webkit-transform-origin:0 50%;
    transform-origin:0 50%;
    -webkit-transform:scaleX(0);
    transform:scaleX(0)
}
#top #top-base-indicator{
    background-color:hsla(0,0%,100%,.3)
}
#top #top-current-indicator{
    background-color:hsla(0,0%,100%,.6)
}
#top #black-cover,#top #main-logo{
    -webkit-transition:opacity .8s;
    transition:opacity .8s
}
#top #black-cover.is-hidden,#top #main-logo.is-hidden{
    opacity:0;
    -webkit-transition-duration:0s;
    transition-duration:0s
}
#top #black-cover.is-hide,#top #main-logo.is-hide{
    opacity:0
}
#top #black-cover.is-show,#top #main-logo.is-show{
    opacity:1
}
#top #black-cover{
    position:fixed;
    width:100%;
    height:100%;
    top:0;
    left:0;
    background-color:rgba(4,0,6,.65)
}
#top #main-logo{
    position:absolute;
    width:105px;
    height:282px;
    top:50%;
    left:50%;
	background-image:url(/assets/img/common/logo.png);
    margin-left:-52px;
    margin-top:-141px
}
#top #main-logo a,#top #splite-01,#top #splite-stage{
    position:relative
}
#top #splite-01{
    z-index:2
}
#top #splite-01.is-hidden{
    opacity:0
}
#top #splite-02{
    position:absolute;
    top:0;
    left:0;
    z-index:1;
    opacity:0
}
#top #splite-02.is-active{
    opacity:1
}
@media screen and (max-width:1024px){
    #top #main-logo{
        margin-left:-40px
    }
}
.portfolio-content{
    -webkit-transition:opacity .8s linear;
    transition:opacity .8s linear
}
.portfolio-content.is-hidden{
    -webkit-transition-duration:0s;
    transition-duration:0s;
    opacity:0
}
#portfolio-index:before{
    display:block;
    width:100%;
    height:1px;
    content:"";
    position:absolute;
    top:50%;
    left:0;
    margin-top:1px;
    background-color:hsla(0,0%,100%,.2);
    -webkit-transition:-webkit-transform 1s cubic-bezier(.6,0,.3,1);
    transition:-webkit-transform 1s cubic-bezier(.6,0,.3,1);
    transition:transform 1s cubic-bezier(.6,0,.3,1);
    transition:transform 1s cubic-bezier(.6,0,.3,1),-webkit-transform 1s cubic-bezier(.6,0,.3,1);
    -webkit-transform:scaleX(0);
    transform:scaleX(0)
}
#portfolio-index.is-active:before{
    -webkit-transform:scale(1);
    transform:scale(1)
}
#portfolio-index #progress-indicator,#portfolio-index #timer-indicator{
    display:block;
    position:absolute;
    width:100%;
    height:1px;
    top:50%;
    left:0;
    margin-top:1px;
    background-color:#fff;
    -webkit-transform:scaleX(0);
    transform:scaleX(0);
    pointer-events:none
}
#portfolio-index #progress-indicator.to-top,#portfolio-index #timer-indicator.to-top{
    -webkit-transform-origin:50% 0;
    transform-origin:50% 0
}
#portfolio-index #progress-indicator.to-bottom,#portfolio-index #timer-indicator.to-bottom{
    -webkit-transform-origin:50% 100%;
    transform-origin:50% 100%
}
#portfolio-index #progress-indicator.to-right,#portfolio-index #timer-indicator{
    -webkit-transform-origin:0 50%;
    transform-origin:0 50%
}
#portfolio-index #progress-indicator.to-left{
    -webkit-transform-origin:100% 50%;
    transform-origin:100% 50%
}
#portfolio-index #stage-nav{
    position:absolute;
    width:100%;
    height:100%;
    top:0;
    left:0;
    z-index:10;
    overflow:hidden;
    opacity:0;
    -webkit-transition:opacity .4s;
    transition:opacity .4s
}
#portfolio-index #stage-nav .string-trimmer-parts{
    display:inline-block;
    opacity:0;
    -webkit-transition:opacity 1s linear,-webkit-transform 1s;
    transition:opacity 1s linear,-webkit-transform 1s;
    transition:transform 1s,opacity 1s linear;
    transition:transform 1s,opacity 1s linear,-webkit-transform 1s;
    -webkit-transform:translate3d(0,1em,0);
    transform:translate3d(0,1em,0);
    -webkit-transition-timing-function:cubic-bezier(.4,0,0,1);
    transition-timing-function:cubic-bezier(.4,0,0,1)
}
#portfolio-index #stage-nav .string-trimmer-parts.blank{
    width:.25em
}
#portfolio-index #stage-nav .string-trimmer-child{
    display:inline-block
}
#portfolio-index #stage-nav.is-grabbing{
    cursor:-webkit-grabbing;
    cursor:grabbing
}
#portfolio-index #stage-nav.is-grabbing-knob .nav-list a{
    -webkit-transition:opacity .4s,-webkit-transform .4s;
    transition:opacity .4s,-webkit-transform .4s;
    transition:transform .4s,opacity .4s;
    transition:transform .4s,opacity .4s,-webkit-transform .4s;
    -webkit-transform:scale(.8);
    transform:scale(.8)
}
#portfolio-index #stage-nav.is-active{
    opacity:1
}
#portfolio-index #stage-nav.is-active .string-trimmer-parts{
    opacity:1;
    -webkit-transform:translate(0);
    transform:translate(0)
}
#portfolio-index #stage-nav.is-shown .string-trimmer-parts{
    -webkit-transition-duration:1s;
    transition-duration:1s
}
#portfolio-index #stage-nav.is-shown .string-trimmer-parts-0{
    -webkit-transition-delay:0ms;
    transition-delay:0ms
}
#portfolio-index #stage-nav.is-shown .string-trimmer-parts-1{
    -webkit-transition-delay:10ms;
    transition-delay:10ms
}
#portfolio-index #stage-nav.is-shown .string-trimmer-parts-2{
    -webkit-transition-delay:20ms;
    transition-delay:20ms
}
#portfolio-index #stage-nav.is-shown .string-trimmer-parts-3{
    -webkit-transition-delay:30ms;
    transition-delay:30ms
}
#portfolio-index #stage-nav.is-shown .string-trimmer-parts-4{
    -webkit-transition-delay:40ms;
    transition-delay:40ms
}
#portfolio-index #stage-nav.is-shown .string-trimmer-parts-5{
    -webkit-transition-delay:50ms;
    transition-delay:50ms
}
#portfolio-index #stage-nav.is-shown .string-trimmer-parts-6{
    -webkit-transition-delay:60ms;
    transition-delay:60ms
}
#portfolio-index #stage-nav.is-shown .string-trimmer-parts-7{
    -webkit-transition-delay:70ms;
    transition-delay:70ms
}
#portfolio-index #stage-nav.is-shown .string-trimmer-parts-8{
    -webkit-transition-delay:80ms;
    transition-delay:80ms
}
#portfolio-index #stage-nav.is-shown .string-trimmer-parts-9{
    -webkit-transition-delay:90ms;
    transition-delay:90ms
}
#portfolio-index #stage-nav.is-shown .string-trimmer-parts-10{
    -webkit-transition-delay:.1s;
    transition-delay:.1s
}
#portfolio-index #stage-nav.is-shown .string-trimmer-parts-11{
    -webkit-transition-delay:.11s;
    transition-delay:.11s
}
#portfolio-index #stage-nav.is-shown .string-trimmer-parts-12{
    -webkit-transition-delay:.12s;
    transition-delay:.12s
}
#portfolio-index #stage-nav.is-shown .string-trimmer-parts-13{
    -webkit-transition-delay:.13s;
    transition-delay:.13s
}
#portfolio-index #stage-nav.is-shown .string-trimmer-parts-14{
    -webkit-transition-delay:.14s;
    transition-delay:.14s
}
#portfolio-index #stage-nav.is-shown .string-trimmer-parts-15{
    -webkit-transition-delay:.15s;
    transition-delay:.15s
}
#portfolio-index #stage-nav.is-shown .string-trimmer-parts-16{
    -webkit-transition-delay:.16s;
    transition-delay:.16s
}
#portfolio-index #stage-nav.is-shown .string-trimmer-parts-17{
    -webkit-transition-delay:.17s;
    transition-delay:.17s
}
#portfolio-index #stage-nav.is-shown .string-trimmer-parts-18{
    -webkit-transition-delay:.18s;
    transition-delay:.18s
}
#portfolio-index #stage-nav.is-shown .string-trimmer-parts-19{
    -webkit-transition-delay:.19s;
    transition-delay:.19s
}
#portfolio-index #stage-nav.is-shown .string-trimmer-parts-20{
    -webkit-transition-delay:.2s;
    transition-delay:.2s
}
#portfolio-index #stage-nav.is-shown .string-trimmer-parts-21{
    -webkit-transition-delay:.21s;
    transition-delay:.21s
}
#portfolio-index #stage-nav.is-shown .string-trimmer-parts-22{
    -webkit-transition-delay:.22s;
    transition-delay:.22s
}
#portfolio-index #stage-nav.is-shown .string-trimmer-parts-23{
    -webkit-transition-delay:.23s;
    transition-delay:.23s
}
#portfolio-index #stage-nav.is-shown .string-trimmer-parts-24{
    -webkit-transition-delay:.24s;
    transition-delay:.24s
}
#portfolio-index #stage-nav.is-shown .string-trimmer-parts-25{
    -webkit-transition-delay:.25s;
    transition-delay:.25s
}
#portfolio-index #stage-nav.is-shown .string-trimmer-parts-26{
    -webkit-transition-delay:.26s;
    transition-delay:.26s
}
#portfolio-index #stage-nav.is-shown .string-trimmer-parts-27{
    -webkit-transition-delay:.27s;
    transition-delay:.27s
}
#portfolio-index #stage-nav.is-shown .string-trimmer-parts-28{
    -webkit-transition-delay:.28s;
    transition-delay:.28s
}
#portfolio-index #stage-nav.is-shown .string-trimmer-parts-29{
    -webkit-transition-delay:.29s;
    transition-delay:.29s
}
#portfolio-index #stage-nav.is-shown .string-trimmer-parts-30{
    -webkit-transition-delay:.3s;
    transition-delay:.3s
}
#portfolio-index #stage-nav.is-waiting{
    pointer-events:none
}
#portfolio-index #stage-nav.is-right .string-trimmer-parts{
    -webkit-transition-duration:.5s;
    transition-duration:.5s;
    -webkit-transition-timing-function:cubic-bezier(.6,0,.8,1);
    transition-timing-function:cubic-bezier(.6,0,.8,1)
}
#portfolio-index #stage-nav.is-right .split-target .string-trimmer-parts-30{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(18em,0,0);
    transform:translate3d(18em,0,0)
}
#portfolio-index #stage-nav.is-right .split-target .string-trimmer-parts-29{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(16.82em,0,0);
    transform:translate3d(16.82em,0,0)
}
#portfolio-index #stage-nav.is-right .split-target .string-trimmer-parts-28{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(15.68em,0,0);
    transform:translate3d(15.68em,0,0)
}
#portfolio-index #stage-nav.is-right .split-target .string-trimmer-parts-27{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(14.58em,0,0);
    transform:translate3d(14.58em,0,0)
}
#portfolio-index #stage-nav.is-right .split-target .string-trimmer-parts-26{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(13.52em,0,0);
    transform:translate3d(13.52em,0,0)
}
#portfolio-index #stage-nav.is-right .split-target .string-trimmer-parts-25{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(12.5em,0,0);
    transform:translate3d(12.5em,0,0)
}
#portfolio-index #stage-nav.is-right .split-target .string-trimmer-parts-24{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(11.52em,0,0);
    transform:translate3d(11.52em,0,0)
}
#portfolio-index #stage-nav.is-right .split-target .string-trimmer-parts-23{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(10.58em,0,0);
    transform:translate3d(10.58em,0,0)
}
#portfolio-index #stage-nav.is-right .split-target .string-trimmer-parts-22{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(9.68em,0,0);
    transform:translate3d(9.68em,0,0)
}
#portfolio-index #stage-nav.is-right .split-target .string-trimmer-parts-21{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(8.82em,0,0);
    transform:translate3d(8.82em,0,0)
}
#portfolio-index #stage-nav.is-right .split-target .string-trimmer-parts-20{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(8em,0,0);
    transform:translate3d(8em,0,0)
}
#portfolio-index #stage-nav.is-right .split-target .string-trimmer-parts-19{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(7.22em,0,0);
    transform:translate3d(7.22em,0,0)
}
#portfolio-index #stage-nav.is-right .split-target .string-trimmer-parts-18{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(6.48em,0,0);
    transform:translate3d(6.48em,0,0)
}
#portfolio-index #stage-nav.is-right .split-target .string-trimmer-parts-17{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(5.78em,0,0);
    transform:translate3d(5.78em,0,0)
}
#portfolio-index #stage-nav.is-right .split-target .string-trimmer-parts-16{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(5.12em,0,0);
    transform:translate3d(5.12em,0,0)
}
#portfolio-index #stage-nav.is-right .split-target .string-trimmer-parts-15{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(4.5em,0,0);
    transform:translate3d(4.5em,0,0)
}
#portfolio-index #stage-nav.is-right .split-target .string-trimmer-parts-14{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(3.92em,0,0);
    transform:translate3d(3.92em,0,0)
}
#portfolio-index #stage-nav.is-right .split-target .string-trimmer-parts-13{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(3.38em,0,0);
    transform:translate3d(3.38em,0,0)
}
#portfolio-index #stage-nav.is-right .split-target .string-trimmer-parts-12{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(2.88em,0,0);
    transform:translate3d(2.88em,0,0)
}
#portfolio-index #stage-nav.is-right .split-target .string-trimmer-parts-11{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(2.42em,0,0);
    transform:translate3d(2.42em,0,0)
}
#portfolio-index #stage-nav.is-right .split-target .string-trimmer-parts-10{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(2em,0,0);
    transform:translate3d(2em,0,0)
}
#portfolio-index #stage-nav.is-right .split-target .string-trimmer-parts-9{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:.1;
    -webkit-transform:translate3d(1.62em,0,0);
    transform:translate3d(1.62em,0,0)
}
#portfolio-index #stage-nav.is-right .split-target .string-trimmer-parts-8{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:.2;
    -webkit-transform:translate3d(1.28em,0,0);
    transform:translate3d(1.28em,0,0)
}
#portfolio-index #stage-nav.is-right .split-target .string-trimmer-parts-7{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:.3;
    -webkit-transform:translate3d(.98em,0,0);
    transform:translate3d(.98em,0,0)
}
#portfolio-index #stage-nav.is-right .split-target .string-trimmer-parts-6{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:.4;
    -webkit-transform:translate3d(.72em,0,0);
    transform:translate3d(.72em,0,0)
}
#portfolio-index #stage-nav.is-right .split-target .string-trimmer-parts-5{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:.5;
    -webkit-transform:translate3d(.5em,0,0);
    transform:translate3d(.5em,0,0)
}
#portfolio-index #stage-nav.is-right .split-target .string-trimmer-parts-4{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:.6;
    -webkit-transform:translate3d(.32em,0,0);
    transform:translate3d(.32em,0,0)
}
#portfolio-index #stage-nav.is-right .split-target .string-trimmer-parts-3{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:.7;
    -webkit-transform:translate3d(.18em,0,0);
    transform:translate3d(.18em,0,0)
}
#portfolio-index #stage-nav.is-right .split-target .string-trimmer-parts-2{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:.8;
    -webkit-transform:translate3d(.08em,0,0);
    transform:translate3d(.08em,0,0)
}
#portfolio-index #stage-nav.is-right .split-target .string-trimmer-parts-1{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:.9;
    -webkit-transform:translate3d(.02em,0,0);
    transform:translate3d(.02em,0,0)
}
#portfolio-index #stage-nav.is-right .split-target .string-trimmer-parts-0{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:1;
    -webkit-transform:translateZ(0);
    transform:translateZ(0)
}
#portfolio-index #stage-nav.is-left .string-trimmer-parts{
    -webkit-transition-duration:.5s;
    transition-duration:.5s;
    -webkit-transition-timing-function:cubic-bezier(.6,0,.8,1);
    transition-timing-function:cubic-bezier(.6,0,.8,1)
}
#portfolio-index #stage-nav.is-left .split-target .string-trimmer-parts-back-0{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:1;
    -webkit-transform:translateZ(0);
    transform:translateZ(0)
}
#portfolio-index #stage-nav.is-left .split-target .string-trimmer-parts-back-1{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:.9;
    -webkit-transform:translate3d(-.02em,0,0);
    transform:translate3d(-.02em,0,0)
}
#portfolio-index #stage-nav.is-left .split-target .string-trimmer-parts-back-2{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:.8;
    -webkit-transform:translate3d(-.08em,0,0);
    transform:translate3d(-.08em,0,0)
}
#portfolio-index #stage-nav.is-left .split-target .string-trimmer-parts-back-3{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:.7;
    -webkit-transform:translate3d(-.18em,0,0);
    transform:translate3d(-.18em,0,0)
}
#portfolio-index #stage-nav.is-left .split-target .string-trimmer-parts-back-4{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:.6;
    -webkit-transform:translate3d(-.32em,0,0);
    transform:translate3d(-.32em,0,0)
}
#portfolio-index #stage-nav.is-left .split-target .string-trimmer-parts-back-5{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:.5;
    -webkit-transform:translate3d(-.5em,0,0);
    transform:translate3d(-.5em,0,0)
}
#portfolio-index #stage-nav.is-left .split-target .string-trimmer-parts-back-6{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:.4;
    -webkit-transform:translate3d(-.72em,0,0);
    transform:translate3d(-.72em,0,0)
}
#portfolio-index #stage-nav.is-left .split-target .string-trimmer-parts-back-7{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:.3;
    -webkit-transform:translate3d(-.98em,0,0);
    transform:translate3d(-.98em,0,0)
}
#portfolio-index #stage-nav.is-left .split-target .string-trimmer-parts-back-8{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:.2;
    -webkit-transform:translate3d(-1.28em,0,0);
    transform:translate3d(-1.28em,0,0)
}
#portfolio-index #stage-nav.is-left .split-target .string-trimmer-parts-back-9{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:.1;
    -webkit-transform:translate3d(-1.62em,0,0);
    transform:translate3d(-1.62em,0,0)
}
#portfolio-index #stage-nav.is-left .split-target .string-trimmer-parts-back-10{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(-2em,0,0);
    transform:translate3d(-2em,0,0)
}
#portfolio-index #stage-nav.is-left .split-target .string-trimmer-parts-back-11{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(-2.42em,0,0);
    transform:translate3d(-2.42em,0,0)
}
#portfolio-index #stage-nav.is-left .split-target .string-trimmer-parts-back-12{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(-2.88em,0,0);
    transform:translate3d(-2.88em,0,0)
}
#portfolio-index #stage-nav.is-left .split-target .string-trimmer-parts-back-13{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(-3.38em,0,0);
    transform:translate3d(-3.38em,0,0)
}
#portfolio-index #stage-nav.is-left .split-target .string-trimmer-parts-back-14{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(-3.92em,0,0);
    transform:translate3d(-3.92em,0,0)
}
#portfolio-index #stage-nav.is-left .split-target .string-trimmer-parts-back-15{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(-4.5em,0,0);
    transform:translate3d(-4.5em,0,0)
}
#portfolio-index #stage-nav.is-left .split-target .string-trimmer-parts-back-16{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(-5.12em,0,0);
    transform:translate3d(-5.12em,0,0)
}
#portfolio-index #stage-nav.is-left .split-target .string-trimmer-parts-back-17{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(-5.78em,0,0);
    transform:translate3d(-5.78em,0,0)
}
#portfolio-index #stage-nav.is-left .split-target .string-trimmer-parts-back-18{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(-6.48em,0,0);
    transform:translate3d(-6.48em,0,0)
}
#portfolio-index #stage-nav.is-left .split-target .string-trimmer-parts-back-19{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(-7.22em,0,0);
    transform:translate3d(-7.22em,0,0)
}
#portfolio-index #stage-nav.is-left .split-target .string-trimmer-parts-back-20{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(-8em,0,0);
    transform:translate3d(-8em,0,0)
}
#portfolio-index #stage-nav.is-left .split-target .string-trimmer-parts-back-21{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(-8.82em,0,0);
    transform:translate3d(-8.82em,0,0)
}
#portfolio-index #stage-nav.is-left .split-target .string-trimmer-parts-back-22{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(-9.68em,0,0);
    transform:translate3d(-9.68em,0,0)
}
#portfolio-index #stage-nav.is-left .split-target .string-trimmer-parts-back-23{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(-10.58em,0,0);
    transform:translate3d(-10.58em,0,0)
}
#portfolio-index #stage-nav.is-left .split-target .string-trimmer-parts-back-24{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(-11.52em,0,0);
    transform:translate3d(-11.52em,0,0)
}
#portfolio-index #stage-nav.is-left .split-target .string-trimmer-parts-back-25{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(-12.5em,0,0);
    transform:translate3d(-12.5em,0,0)
}
#portfolio-index #stage-nav.is-left .split-target .string-trimmer-parts-back-26{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(-13.52em,0,0);
    transform:translate3d(-13.52em,0,0)
}
#portfolio-index #stage-nav.is-left .split-target .string-trimmer-parts-back-27{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(-14.58em,0,0);
    transform:translate3d(-14.58em,0,0)
}
#portfolio-index #stage-nav.is-left .split-target .string-trimmer-parts-back-28{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(-15.68em,0,0);
    transform:translate3d(-15.68em,0,0)
}
#portfolio-index #stage-nav.is-left .split-target .string-trimmer-parts-back-29{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(-16.82em,0,0);
    transform:translate3d(-16.82em,0,0)
}
#portfolio-index #stage-nav.is-left .split-target .string-trimmer-parts-back-30{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0;
    -webkit-transform:translate3d(-18em,0,0);
    transform:translate3d(-18em,0,0)
}
#portfolio-index #stage-nav .nav-group{
    position:absolute;
    height:100%;
    left:25%
}
#portfolio-index #stage-nav .nav-list{
    height:100%;
    -webkit-box-flex:1;
    -ms-flex-positive:1;
    flex-grow:1;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    justify-content:center;
    -webkit-transition:-webkit-transform 1s;
    transition:-webkit-transform 1s;
    transition:transform 1s;
    transition:transform 1s,-webkit-transform 1s;
    float:left
}
#portfolio-index #stage-nav .nav-list a,#portfolio-index #stage-nav .nav-list img{
    -webkit-user-select:none;
    -moz-user-select:none;
    -ms-user-select:none;
    user-select:none
}
#portfolio-index #stage-nav .nav-list a{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    justify-content:center;
    width:100%;
    height:55%;
    line-height:.8;
    color:#fff;
    font-size:7vw;
    font-weight:400;
    letter-spacing:-.02em;
    text-align:center;
    opacity:.7;
    pointer-events:none;
    -webkit-transition:opacity .4s,-webkit-transform 1s;
    transition:opacity .4s,-webkit-transform 1s;
    transition:transform 1s,opacity .4s;
    transition:transform 1s,opacity .4s,-webkit-transform 1s
}
#portfolio-index #stage-nav .nav-list a:hover{
    opacity:1
}
#portfolio-index #stage-nav .nav-list .split-target{
    display:inline-block;
    -webkit-transition:-webkit-transform 1.5s;
    transition:-webkit-transform 1.5s;
    transition:transform 1.5s;
    transition:transform 1.5s,-webkit-transform 1.5s;
    white-space:nowrap
}
#portfolio-index #stage-nav .nav-list.watashi{
    pointer-events:none
}
#portfolio-index #stage-nav .nav-list.watashi img{
    width:47.5px;
    height:169px;
    -webkit-transition:-webkit-transform .4s;
    transition:-webkit-transform .4s;
    transition:transform .4s;
    transition:transform .4s,-webkit-transform .4s
}
#portfolio-index #stage-nav .nav-list.watashi.is-next img{
    -webkit-transform:translateX(-50%);
    transform:translateX(-50%)
}
#portfolio-index #stage-nav .nav-list.is-current a{
    pointer-events:all
}
#portfolio-index #stage-nav .nav-list.is-current .split-target{
    -webkit-transform:scale(1);
    transform:scale(1)
}
#portfolio-index #title{
    position:fixed;
    width:500px;
    height:36px;
    top:12%;
    left:50%;
    margin-left:-250px;
    z-index:100;
    -webkit-transition:opacity .4s;
    transition:opacity .4s;
    opacity:0;
    pointer-events:none
}
#portfolio-index #title.is-active{
    opacity:1;
    pointer-events:all
}
#portfolio-index #title:before{
    display:block;
    width:100%;
    height:1px;
    content:"";
    position:absolute;
    top:50%;
    left:0;
    margin-top:1px;
    background-color:hsla(0,0%,100%,.2)
}
#portfolio-index #title a{
    display:block;
    height:100%;
    text-align:center;
    color:#fff;
    font-size:1.6em;
    font-weight:400;
    letter-spacing:.7em;
    -webkit-user-select:none;
    -moz-user-select:none;
    -ms-user-select:none;
    user-select:none;
    padding-top:2px
}
#portfolio-index #title a .inner{
    position:relative;
    display:inline-block;
    height:1em;
    top:11px
}
#portfolio-index #title a .title-string{
    height:1em;
    line-height:1
}
#portfolio-index #title a .string-trimmer-parts{
    display:inline-block;
    -webkit-transition:color .4s;
    transition:color .4s;
    color:#fff;
    height:1em;
    vertical-align:top
}
#portfolio-index #title a:hover #title-indicator{
    -webkit-transition-delay:0s;
    transition-delay:0s;
    opacity:0
}
#portfolio-index #title a.wait-hover-active-half .title-string .string-trimmer-parts{
    color:hsla(0,0%,100%,.2)
}
#portfolio-index #title #title-indicator{
    -webkit-transition:opacity .4s .4s;
    transition:opacity .4s .4s
}
#portfolio-index #title .indicator{
    display:block;
    width:100%;
    height:1px;
    position:absolute;
    top:50%;
    left:0;
    margin-top:1px;
    background-color:#fff;
    -webkit-transform-origin:0 0;
    transform-origin:0 0;
    -webkit-transform:scaleX(0);
    transform:scaleX(0)
}
@media screen and (max-width:1024px){
    #portfolio-index{
        position:fixed;
        width:100%;
        height:100%;
        top:0;
        left:0;
        overflow:hidden;
        z-index:10
    }
    #portfolio-index #stage-nav{
        overflow:hidden
    }
    #portfolio-index #stage-nav .nav-group{
        left:0
    }
    #portfolio-index #stage-nav .nav-list a{
        font-size:9vw;
        letter-spacing:0;
        height:30%;
        opacity:1
    }
    #portfolio-index #stage-nav .nav-list.watashi img{
        width:6.5vw;
        height:auto;
        margin-left:10px
    }
    #portfolio-index #stage-nav .nav-list.watashi.is-next img{
        -webkit-transform:translateX(0);
        transform:translateX(0)
    }
    #portfolio-index #title{
        width:500px;
        height:36px;
        top:12%;
        left:50%;
        margin-left:-250px
    }
    #portfolio-index #title a{
        font-size:2.2vw;
        letter-spacing:.4em
    }
    #portfolio-index #title a .inner{
        top:8px
    }
    #portfolio-index #title .indicator,#portfolio-index #title:before{
        top:50%
    }
}
@media screen and (max-width:540px){
    #portfolio-index #title{
        width:290px;
        margin-left:-140px
    }
    #portfolio-index #title a{
        font-size:4.2vw
    }
    #portfolio-index #title .indicator,#portfolio-index #title:before{
        top:40%
    }
    #portfolio-index #stage-nav .nav-list a{
        font-size:13vw;
        opacity:1
    }
    #portfolio-index #stage-nav .nav-list.watashi img{
        width:10vw
    }
}
#portfolio-sub-category{
    text-align:center;
    -webkit-user-select:none;
    -moz-user-select:none;
    -ms-user-select:none;
    user-select:none
}
#portfolio-sub-category.is-waiting{
    pointer-events:none
}
#portfolio-sub-category:before{
    display:block;
    width:1px;
    height:100%;
    content:"";
    position:absolute;
    top:0;
    left:50%;
    background-color:hsla(0,0%,100%,.2)
}
#portfolio-sub-category .portfolio-content{
    opacity:0;
    -webkit-transition:opacity .4s;
    transition:opacity .4s
}
#portfolio-sub-category .portfolio-content.is-active{
    opacity:1
}
#portfolio-sub-category .screen-container{
    height:100%;
    overflow:hidden
}
#portfolio-sub-category .cross-btn{
    display:block;
    width:80px;
    height:80px;
    top:50%;
    left:auto;
    right:12.5%;
    color:#fff;
    margin-top:-25px;
    margin-left:0;
    margin-right:-40px;
    z-index:20;
    -webkit-transition:opacity .4s;
    transition:opacity .4s
}
#portfolio-sub-category .cross-btn:after{
    display:block;
    width:100%;
    height:100%;
    content:"";
    position:absolute;
    top:0;
    left:0;
    border-radius:50%;
    border:1px solid #fff;
    opacity:.3;
    pointer-events:none;
    -webkit-animation-name:light;
    animation-name:light;
    -webkit-animation-duration:3s;
    animation-duration:3s;
    -webkit-animation-iteration-count:infinite;
    animation-iteration-count:infinite;
    -webkit-animation-timing-function:linear;
    animation-timing-function:linear;
    -webkit-animation-fill-mode:both;
    animation-fill-mode:both
}
#portfolio-sub-category .cross-btn.is-hidden{
    opacity:0
}
#portfolio-sub-category .nav-group .string-trimmer-parts{
    display:inline-block;
    opacity:0;
    -webkit-transition:opacity .6s,-webkit-transform 1s;
    transition:opacity .6s,-webkit-transform 1s;
    transition:transform 1s,opacity .6s;
    transition:transform 1s,opacity .6s,-webkit-transform 1s;
    -webkit-transform:translate3d(0,1em,0);
    transform:translate3d(0,1em,0);
    -webkit-transition-timing-function:cubic-bezier(.4,0,0,1);
    transition-timing-function:cubic-bezier(.4,0,0,1)
}
#portfolio-sub-category .nav-group .string-trimmer-parts.blank{
    width:.25em
}
#portfolio-sub-category .nav-group.is-active .string-trimmer-parts{
    opacity:1;
    -webkit-transform:translateZ(0);
    transform:translateZ(0)
}
#portfolio-sub-category .nav-group.is-out .string-trimmer-parts{
    opacity:0;
    -webkit-transform:translate3d(0,-1em,0);
    transform:translate3d(0,-1em,0)
}
#portfolio-sub-category .nav-list{
    display:block;
    text-align:left;
    padding-left:17.5%
}
#portfolio-sub-category .nav-list a{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    width:50%;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    height:100%;
    line-height:1;
    color:#fff;
    -webkit-user-select:none;
    -moz-user-select:none;
    -ms-user-select:none;
    user-select:none;
    opacity:.65;
    pointer-events:none;
    -webkit-transition:opacity .4s;
    transition:opacity .4s
}
#portfolio-sub-category .nav-list a:hover{
    opacity:1
}
#portfolio-sub-category .nav-list p{
    margin-bottom:20px;
    font-size:1.4vw;
    line-height:1
}
#portfolio-sub-category .nav-list h2{
    line-height:1;
    display:inline-block;
    font-size:5vw;
    font-weight:400
}
#portfolio-sub-category .nav-list h2.is-japanese{
    letter-spacing:.05em;
    margin-bottom:15px;
    font-size:4.5vw
}
#portfolio-sub-category .nav-list h3{
    letter-spacing:.05em;
    line-height:1;
    font-size:1.8vw;
    font-weight:400
}
#portfolio-sub-category .nav-list.is-current a{
    pointer-events:all
}
#portfolio-sub-category #vertical-controller{
    position:absolute;
    width:100px;
    height:360px;
    top:50%;
    left:12.5%;
    margin-top:-180px;
    margin-left:-50px;
    -webkit-transition:opacity .8s;
    transition:opacity .8s
}
#portfolio-sub-category #vertical-controller.is-hidden{
    opacity:0
}
#portfolio-sub-category #vertical-controller .arr-btn{
    position:absolute;
    left:0;
    border:0;
    background-color:transparent;
    -webkit-transition:opacity .4s;
    transition:opacity .4s
}
#portfolio-sub-category #vertical-controller .arr-btn.top{
    top:0
}
#portfolio-sub-category #vertical-controller .arr-btn.bottom{
    bottom:0
}
#portfolio-sub-category #vertical-controller .arr-btn.edge{
    opacity:0;
    pointer-events:none
}
#portfolio-sub-category #vertical-controller .indicator{
    position:absolute;
    width:100px;
    height:60px;
    top:50%;
    left:0;
    margin-top:-30px
}
#portfolio-sub-category #vertical-controller .separator,#portfolio-sub-category #vertical-controller .separator-line{
    position:absolute;
    display:block;
    width:1px;
    height:60px;
    top:0;
    left:49.5%
}
#portfolio-sub-category #vertical-controller .denominator,#portfolio-sub-category #vertical-controller .numerator{
    position:absolute;
    height:60px;
    top:50%;
    margin-top:-30px;
    font-size:1.6em;
    color:#fff
}
#portfolio-sub-category #vertical-controller .denominator{
    width:50px;
    left:0;
    text-align:center;
    cursor:pointer
}
#portfolio-sub-category #vertical-controller #denominator-group{
    position:relative;
    display:block
}
#portfolio-sub-category #vertical-controller #denominator-group:hover .denominator-item{
    opacity:.3
}
#portfolio-sub-category #vertical-controller #denominator-group:hover .denominator-item:hover{
    opacity:1
}
#portfolio-sub-category #vertical-controller .denominator-item{
    display:block;
    height:60px;
    line-height:60px;
    color:#fff;
    opacity:0;
    -webkit-transition:opacity .4s;
    transition:opacity .4s
}
#portfolio-sub-category #vertical-controller .denominator-item.is-current{
    opacity:1
}
#portfolio-sub-category #vertical-controller .numerator{
    right:20px;
    line-height:60px;
    text-align:right
}
#portfolio-sub-category #vertical-controller .next-num,#portfolio-sub-category #vertical-controller .prev-num{
    opacity:0;
    position:absolute
}
#portfolio-sub-category #vertical-controller .separator{
    background-color:hsla(0,0%,100%,.2)
}
#portfolio-sub-category #vertical-controller .separator-line{
    background-color:#fff
}
#portfolio-sub-category #bg-line{
    position:absolute;
    width:100%;
    height:100%;
    top:0;
    left:0;
    pointer-events:none;
    -webkit-transition:opacity .8s;
    transition:opacity .8s
}
#portfolio-sub-category #bg-line.is-hidden{
    opacity:0
}
#portfolio-sub-category #bg-line:after,#portfolio-sub-category #bg-line:before{
    display:block;
    width:1px;
    height:100%;
    content:"";
    position:absolute;
    top:0;
    background-color:hsla(0,0%,100%,.2)
}
#portfolio-sub-category #bg-line:before{
    left:12.5%
}
#portfolio-sub-category #bg-line:after{
    right:12.5%
}
#portfolio-sub-category #progress-indicator{
    display:block;
    position:absolute;
    width:1px;
    height:100%;
    top:0;
    left:12.5%;
    background-color:hsla(0,0%,100%,.5);
    pointer-events:none;
    -webkit-transform:scaleY(0);
    transform:scaleY(0)
}
#portfolio-sub-category #progress-indicator.to-top{
    -webkit-transform-origin:50% 0;
    transform-origin:50% 0
}
#portfolio-sub-category #progress-indicator.to-bottom{
    -webkit-transform-origin:50% 100%;
    transform-origin:50% 100%
}
@media screen and (max-width:1024px){
    #portfolio-sub-category{
        position:fixed;
        width:100%;
        height:100%
    }
    #portfolio-sub-category .cross-btn{
        width:80px;
        height:80px;
        top:0;
        right:0;
        padding:0;
        margin-top:0;
        margin-right:0;
        font-size:0
    }
    #portfolio-sub-category .cross-btn:after{
        display:none
    }
    #portfolio-sub-category .nav-list{
        display:-webkit-box;
        display:-ms-flexbox;
        display:flex;
        -webkit-box-align:center;
        -ms-flex-align:center;
        align-items:center;
        padding-left:100px
    }
    #portfolio-sub-category .nav-list a{
        display:block;
        width:100%;
        height:auto;
        opacity:1
    }
    #portfolio-sub-category .nav-list p{
        margin-bottom:10px;
        font-size:3vw
    }
    #portfolio-sub-category .nav-list h2{
        font-size:7.5vw
    }
    #portfolio-sub-category .nav-list h2.is-japanese{
        font-size:7vw;
        margin-bottom:7px
    }
    #portfolio-sub-category .nav-list h3{
        font-size:3vw
    }
    #portfolio-sub-category #bg-line:before{
        left:40px
    }
    #portfolio-sub-category #bg-line:after{
        right:40px
    }
    #portfolio-sub-category #progress-indicator,#portfolio-sub-category #vertical-controller{
        left:40px
    }
    #portfolio-sub-category #vertical-controller{
        height:300px;
        margin-top:-150px
    }
    #portfolio-sub-category #vertical-controller .indicator{
        height:40px;
        margin-top:-20px
    }
    #portfolio-sub-category #vertical-controller .separator,#portfolio-sub-category #vertical-controller .separator-line{
        height:40px
    }
    #portfolio-sub-category #vertical-controller .denominator,#portfolio-sub-category #vertical-controller .numerator{
        height:40px;
        margin-top:-20px;
        font-size:1.6em
    }
    #portfolio-sub-category #vertical-controller .denominator{
        width:auto;
        left:30px
    }
    #portfolio-sub-category #vertical-controller .denominator-item{
        height:40px;
        line-height:45px
    }
    #portfolio-sub-category #vertical-controller .numerator{
        right:30px;
        line-height:45px
    }
}
@media screen and (max-width:540px){
    #portfolio-sub-category .nav-list p{
        font-size:4vw
    }
    #portfolio-sub-category .nav-list h2{
        font-size:8.5vw
    }
    #portfolio-sub-category .nav-list h2.is-japanese{
        font-size:8vw
    }
    #portfolio-sub-category .nav-list h3{
        font-size:4vw
    }
}
#portfolio-photo-list{
    height:100%;
    -webkit-user-select:none;
    -moz-user-select:none;
    -ms-user-select:none;
    user-select:none;
    opacity:0;
    -webkit-transition:opacity 1s linear;
    transition:opacity 1s linear
}
#portfolio-photo-list.is-active{
    opacity:1
}
#portfolio-photo-list.is-disabled{
    position:fixed;
    width:100%;
    height:100%;
    top:0;
    left:0;
    overflow:hidden
}
#portfolio-photo-list .portfolio-content{
    min-height:100%;
    position:relative
}
#portfolio-photo-list .photo-wrap{
    position:absolute;
    width:100%;
    height:100%;
    top:0;
    left:0;
    padding:20px;
    background-color:#040006
}
#portfolio-photo-list .photo-wrap:after{
    display:block;
    width:100%;
    height:100%;
    content:"";
    position:fixed;
    top:0;
    left:0;
    pointer-events:none;
    border-top:22.5px solid #040006;
    border-bottom:22.5px solid #040006;
    border-right:20px solid #040006;
    border-left:20px solid #040006
}
#portfolio-photo-list .photo-wrap.is-active .photo-list .inner{
    opacity:1;
    -webkit-transform:translateZ(0);
    transform:translateZ(0)
}
#portfolio-photo-list .photo-wrap.is-hidden .photo-list .inner{
    opacity:0
}
#portfolio-photo-list .photo-group{
    min-height:100%;
    background-color:#040006;
    overflow:hidden
}
#portfolio-photo-list .photo-list{
    float:left;
    line-height:1
}
#portfolio-photo-list .photo-list img{
    width:auto
}
#portfolio-photo-list .photo-list a{
    position:relative;
    display:block;
    opacity:.55;
    -webkit-transition:opacity .8s;
    transition:opacity .8s
}
#portfolio-photo-list .photo-list a:hover{
    -webkit-transition-duration:.2s;
    transition-duration:.2s;
    opacity:1
}
#portfolio-photo-list .photo-list canvas{
    position:absolute;
    width:40px;
    height:40px;
    top:50%;
    left:50%;
    margin-left:-20px;
    margin-top:-20px;
    z-index:10
}
#portfolio-photo-list .photo-list .inner{
    position:relative;
    display:inline-block;
    height:100%;
    line-height:1;
    opacity:0;
    -webkit-transition:opacity .8s,-webkit-transform .8s cubic-bezier(.6,0,.3,1);
    transition:opacity .8s,-webkit-transform .8s cubic-bezier(.6,0,.3,1);
    transition:transform .8s cubic-bezier(.6,0,.3,1),opacity .8s;
    transition:transform .8s cubic-bezier(.6,0,.3,1),opacity .8s,-webkit-transform .8s cubic-bezier(.6,0,.3,1);
    -webkit-transform:translate3d(0,20%,0);
    transform:translate3d(0,20%,0);
    overflow:hidden
}
#portfolio-photo-list .photo-list.is-highlight a{
    opacity:1
}
#photo-list-oparator{
    position:fixed;
    top:20px;
    right:20px;
    padding-right:100px;
    color:#fff;
    font-size:1.6em;
    text-align:right;
    opacity:0;
    -webkit-transition:opacity .4s;
    transition:opacity .4s
}
#photo-list-oparator.is-active{
    opacity:1
}
#photo-list-oparator h2{
    display:inline-block;
    position:relative;
    line-height:1;
    font-weight:400
}
#photo-list-oparator h2 .bar{
    position:absolute;
    width:15px;
    height:1px;
    top:50%;
    right:-7px;
    background-color:#fff
}
#photo-list-oparator a{
    line-height:1;
    color:#fff;
    letter-spacing:.2em;
    padding-right:45px;
    padding-left:45px
}
#photo-list-oparator .block-head{
    height:100px;
    padding-top:42px;
    line-height:1
}
#photo-list-oparator .block-head a span{
    display:inline-block
}
#photo-list-oparator .filter-list{
    display:block
}
#photo-list-oparator .filter-list a{
    display:inline-block;
    padding-top:10px;
    padding-bottom:10px
}
#photo-list-oparator .filter-trigger.is-current{
    pointer-events:none
}
#photo-list-oparator .cross-btn{
    width:100px;
    height:100px;
    top:0;
    right:0;
    left:inherit
}
#photo-list-oparator #filter-nav-trigger{
    display:none
}
.line-hover{
    position:relative;
    overflow:hidden
}
.line-hover:before{
    display:block;
    width:0;
    height:1px;
    content:"";
    position:absolute;
    top:50%;
    left:100%;
    background-color:#fff;
    -webkit-transform:translateX(0);
    transform:translateX(0);
    -webkit-transition:left .6s 0s,width .6s 0s,-webkit-transform 0s .6s;
    transition:left .6s 0s,width .6s 0s,-webkit-transform 0s .6s;
    transition:left .6s 0s,width .6s 0s,transform 0s .6s;
    transition:left .6s 0s,width .6s 0s,transform 0s .6s,-webkit-transform 0s .6s;
    -webkit-transition-timing-function:cubic-bezier(.6,0,.3,1);
    transition-timing-function:cubic-bezier(.6,0,.3,1);
    z-index:10
}
.line-hover.is-current:before,.line-hover:hover:before{
    width:100%;
    left:-20%;
    -webkit-transform:translateX(20%);
    transform:translateX(20%);
    -webkit-transition-duration:0s,.4s,.4s;
    transition-duration:0s,.4s,.4s;
    -webkit-transition-delay:0s,0s,0s;
    transition-delay:0s,0s,0s
}
@media screen and (max-width:1024px){
    #portfolio-photo-list .photo-wrap{
        padding:0
    }
    #portfolio-photo-list .photo-wrap:after{
        display:none
    }
    #portfolio-photo-list .photo-list canvas{
        margin-top:-10px;
        margin-left:-10px
    }
    #portfolio-photo-list .photo-list a{
        opacity:1
    }
    #portfolio-photo-list .photo-list a.is-touched{
        -webkit-transition-duration:2s;
        transition-duration:2s;
        opacity:1
    }
    #portfolio-photo-list .photo-list .inner{
        display:block
    }
    #portfolio-photo-list .photo-list img{
        width:100%;
        height:auto
    }
    #photo-list-oparator{
        width:100%;
        text-align:center;
        top:0;
        right:0;
        padding-right:0
    }
    #photo-list-oparator h2{
        height:100%
    }
    #photo-list-oparator h2 a{
        display:block;
        height:100%;
        padding:25px 0 0
    }
    #photo-list-oparator h2 .bar{
        display:none!important
    }
    #photo-list-oparator .block-head{
        position:relative;
        height:60px;
        padding-top:0;
        line-height:1;
        z-index:1001
    }
    #photo-list-oparator .block-body{
        position:fixed;
        width:100%;
        height:100%;
        top:0;
        left:0;
        z-index:1000;
        background-color:rgba(4,0,6,.8);
        pointer-events:none;
        opacity:0;
        -webkit-transition:opacity .8s;
        transition:opacity .8s
    }
    #photo-list-oparator .block-body.is-active{
        opacity:1;
        pointer-events:all
    }
    #photo-list-oparator .block-body.is-active .filter-list{
        opacity:1
    }
    #photo-list-oparator .inner-1{
        display:table;
        width:100%;
        height:100%
    }
    #photo-list-oparator .inner-2{
        display:table-cell;
        vertical-align:middle
    }
    #photo-list-oparator .filter-list{
        opacity:0;
        -webkit-transition:opacity .8s;
        transition:opacity .8s
    }
    #photo-list-oparator .cross-btn{
        width:60px;
        height:60px;
        padding:0;
        right:0;
        z-index:1002;
        -webkit-transition:opacity .8s;
        transition:opacity .8s
    }
    #photo-list-oparator .cross-btn.is-hidden{
        opacity:0
    }
    #photo-list-oparator #filter-nav-trigger{
        display:block;
        position:absolute;
        width:60px;
        height:60px;
        top:0;
        left:0;
        background:50% 50% no-repeat;
        background-size:contain;
        border:0;
        font-size:0;
        background-image:url(/assets/img/common/filter_open.png)
    }
    #photo-list-oparator #filter-nav-trigger.is-active{
        background-image:url(/assets/img/common/filter_close.png)
    }
}
@media screen and (max-width:540px){
    #portfolio-photo-list .photo-list{
        position:relative;
        width:33.33333%;
        height:0;
        padding-bottom:33.33333%
    }
    #portfolio-photo-list .photo-list a{
        position:absolute;
        width:100%;
        height:100%;
        top:0;
        left:0
    }
    #portfolio-photo-list .photo-list .inner{
        -webkit-transform:translateZ(0);
        transform:translateZ(0);
        background:50% 50% no-repeat;
        background-size:cover
    }
}
#portfolio-detail{
    position:fixed;
    width:100%;
    height:100%;
    top:0;
    left:0;
    background-color:#040006;
    -webkit-user-select:none;
    -moz-user-select:none;
    -ms-user-select:none;
    user-select:none
}
#portfolio-detail.is-hidden{
    opacity:0
}
#portfolio-detail.is-active{
    -webkit-transition:opacity 1s;
    transition:opacity 1s;
    opacity:1
}
#portfolio-detail.is-fadeout{
    -webkit-transition:opacity 1s;
    transition:opacity 1s;
    opacity:0
}
#portfolio-detail iframe{
    width:100%;
    height:100%
}
#portfolio-detail .inner{
    position:relative;
    height:100%;
    overflow:hidden
}
#portfolio-detail .portfolio-content{
    position:relative;
    height:100%;
    padding:20px;
    background-color:#262626
}
#portfolio-detail .portfolio-content.is-hidden{
    -webkit-transition:opacity .8s;
    transition:opacity .8s;
    opacity:0
}
#portfolio-detail .cross-btn{
    top:0;
    left:inherit;
    right:0;
    width:100px;
    height:100px;
    margin-left:0
}
#portfolio-detail .arr-btn{
    display:block;
    position:absolute;
    width:100px;
    height:100px;
    top:50%;
    margin-top:-50px
}
#portfolio-detail .arr-btn.left{
    left:0
}
#portfolio-detail .arr-btn.right{
    right:0
}
#portfolio-detail #zoom-stage{
    width:100%;
    height:100%;
    overflow:hidden;
    background-color:#040006
}
#portfolio-detail #zoom-target{
    position:absolute;
    -webkit-user-select:none;
    -moz-user-select:none;
    -ms-user-select:none;
    user-select:none;
    pointer-events:none
}
#portfolio-detail #zoom-target img{
    width:100%;
    height:auto
}
@media screen and (max-width:1024px){
    #portfolio-detail .portfolio-content{
        padding:0
    }
    #portfolio-detail .cross-btn{
        width:60px;
        height:60px;
        margin-left:0
    }
    #portfolio-detail .cross-btn .bars:after,#portfolio-detail .cross-btn .bars:before{
        background-color:#ccc
    }
    #portfolio-detail .arr-btn{
        width:60px;
        height:60px;
        margin-top:-30px
    }
    #portfolio-detail .arr-btn .arr .line:before{
        background-color:#ccc
    }
    #portfolio-detail .arr-btn.left{
        left:0
    }
    #portfolio-detail .arr-btn.right{
        right:0
    }
}
#biography:before{
    display:block;
    width:100%;
    height:1px;
    content:"";
    position:absolute;
    top:50%;
    left:0;
    margin-top:1px;
    background-color:hsla(0,0%,100%,.2);
    pointer-events:none
}
#biography .wait-hover{
    position:relative
}
#biography .wait-hover:after{
    display:block;
    width:100%;
    height:1px;
    content:"";
    position:absolute;
    bottom:0;
    left:0;
    background-color:#fff;
    -webkit-transition:-webkit-transform .3s cubic-bezier(.6,0,.3,1);
    transition:-webkit-transform .3s cubic-bezier(.6,0,.3,1);
    transition:transform .3s cubic-bezier(.6,0,.3,1);
    transition:transform .3s cubic-bezier(.6,0,.3,1),-webkit-transform .3s cubic-bezier(.6,0,.3,1);
    -webkit-transform-origin:0 50%;
    transform-origin:0 50%;
    -webkit-transform:scale(1);
    transform:scale(1)
}
#biography .wait-hover.wait-hover-active-half:after{
    -webkit-transform-origin:100% 50%;
    transform-origin:100% 50%;
    -webkit-transform:scaleX(0);
    transform:scaleX(0)
}
#biography .link-group{
    margin-bottom:15px
}
#biography .link-group:last-child{
    margin-bottom:0
}
#biography .link-list{
    display:inline-block
}
#biography .link-list:after{
    display:inline;
    content:"/";
    margin:0 1em
}
#biography .link-list:last-child:after{
    display:none;
    content:none
}
#biography .biography-article-item{
    width:100%;
    max-width:600px;
    line-height:2.2;
    color:#fff;
    margin-right:200px;
    font-size:inherit;
    -webkit-user-select:none;
    -moz-user-select:none;
    -ms-user-select:none;
    user-select:none
}
#biography .biography-article-item:last-child{
    margin-right:0
}
#biography .biography-article-item h2,#biography .biography-article-item h3{
    letter-spacing:.2em;
    margin-bottom:1em
}
#biography .biography-article-item h2{
    margin-bottom:0
}
#biography .biography-article-item p{
    margin-bottom:15px;
    letter-spacing:.05em;
    text-align:justify
}
#biography .biography-article-item p:last-child{
    margin-bottom:0
}
#biography .biography-article-item a{
    color:#fff
}
#biography .biography-article-item a[href^=mailto]{
    text-decoration:none
}
#biography .biography-article-item hr{
    width:15px;
    margin-bottom:15px;
    border:0;
    border-bottom:1px solid #fff
}
#biography .biography-article-item .icon{
    display:inline-block;
    width:1em;
    height:1em;
    background:50% 50% no-repeat;
    background-size:contain;
    vertical-align:sub;
    margin-right:.5em
}
#biography .biography-article-item .icon.facebook{
    background-image:url(/assets/img/icons/icon_facebook_squere.svg)
}
#biography .biography-article-item .icon.instagram{
    background-image:url(/assets/img/icons/icon_instagram.svg)
}
#biography .biography-article-item .icon.icon_mail{
    background-image:url(/assets/img/icons/icon_mail.svg)
}
#biography .biography-article-item .icon.map{
    background-image:url(/assets/img/icons/icon_map.svg)
}
#biography .biography-article-item[lang=en]{
    font-size:1.6em
}
#biography .biography-article-item[lang=en] p{
    line-height:2em
}
#biography .biography-article-item[lang=ja]{
    font-size:1.4em
}
#biography .biography-article-item[lang=ja] p{
    line-height:2.4em
}
#biography #close-biography,#biography #close-left-edge,#biography #close-right-edge{
    opacity:0;
    -webkit-transition:opacity .8s,-webkit-transform 1.2s;
    transition:opacity .8s,-webkit-transform 1.2s;
    transition:transform 1.2s,opacity .8s;
    transition:transform 1.2s,opacity .8s,-webkit-transform 1.2s;
    pointer-events:none
}
#biography #close-left-edge,#biography #close-right-edge{
    position:absolute;
    top:50%;
    margin-top:-38px
}
#biography #close-left-edge{
    left:5%;
    -webkit-transform:translateX(-100%);
    transform:translateX(-100%)
}
#biography #close-right-edge{
    left:auto;
    right:5%;
    -webkit-transform:translateX(100%);
    transform:translateX(100%)
}
#biography #close-biography{
    -webkit-transform:translateY(-25%);
    transform:translateY(-25%)
}
#biography.is-left-edge #close-left-edge,#biography.is-right-edge #close-right-edge{
    opacity:1;
    pointer-events:all;
    -webkit-transform:translateX(0);
    transform:translateX(0)
}
#biography.is-scrolling #close-biography{
    opacity:1;
    pointer-events:all;
    -webkit-transform:translateY(0);
    transform:translateY(0)
}
#biography #horizontal-scroll{
    position:absolute;
    width:100%;
    height:100%;
    top:0;
    left:0;
    overflow:hidden;
    opacity:0
}
#biography #biography-article{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    overflow:hidden;
    padding-left:50%
}
#biography #biography-article-footer,#biography #biography-article-header{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    justify-content:center;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center
}
#biography #biography-article-header h1{
    text-align:center
}
#biography #biography-article-header h1 img{
    width:54px;
    height:auto
}
#biography #biography-article-footer{
    font-size:1.7em;
    text-align:center
}
#biography #biography-article-footer img{
    display:block;
    width:77px;
    height:82px;
    margin:0 auto 25px
}
#biography #biography-article-footer p{
    line-height:1;
    text-align:center;
    margin-bottom:20px;
    letter-spacing:.2em;
    font-size:.8em
}
#biography #biography-article-footer a{
    display:block
}
@media screen and (max-width:1024px){
    #biography{
        -webkit-transition:opacity .8s;
        transition:opacity .8s;
        opacity:0
    }
    #biography.is-active{
        opacity:1
    }
    #biography .biography-article-item{
        max-height:100%;
        margin-bottom:100px;
        margin-right:auto;
        margin-left:auto
    }
    #biography .biography-article-item:last-child{
        margin-bottom:0;
        margin-right:auto;
        margin-left:auto
    }
    #biography .biography-article-item[lang=en] h2{
        font-size:.9em;
        line-height:1.8em
    }
    #biography .biography-article-item[lang=en] p{
        font-size:1.05em;
        line-height:1.7em
    }
    #biography .biography-article-item[lang=ja] p{
        font-size:.9em;
        line-height:2em
    }
    #biography #bg-cover{
        position:fixed;
        width:100%;
        height:100%;
        top:0;
        left:0;
        background-color:rgba(4,0,6,.8);
        z-index:1
    }
    #biography #close-biography{
        position:fixed;
        width:60px;
        height:60px;
        opacity:1;
        top:0;
        left:auto;
        right:0;
        -webkit-transform:translateY(0);
        transform:translateY(0);
        z-index:10;
        pointer-events:all
    }
    #biography #close-left-edge,#biography #close-right-edge{
        display:none
    }
    #biography #biography-article{
        display:block;
        padding:60px 20px 0;
        margin-top:20%
    }
    #biography #biography-article-header h1 img{
        width:45px;
        height:auto;
        margin-left:15px
    }
    #biography #biography-article-footer{
        display:-webkit-box;
        display:-ms-flexbox;
        display:flex;
        -webkit-box-align:center;
        -ms-flex-align:center;
        align-items:center;
        -webkit-box-pack:center;
        -ms-flex-pack:center;
        justify-content:center;
        margin-top:0;
        padding-top:0;
        margin-bottom:0
    }
    #biography #biography-article-footer .inner{
        padding-top:57px
    }
    #biography #biography-article-footer img{
        width:40px;
        height:auto;
        margin:0 auto 25px
    }
    #biography #horizontal-scroll{
        position:relative;
        z-index:2;
        overflow:visible;
        opacity:1
    }
    #biography #horizontal-scroll .tb-1,#biography #horizontal-scroll .tb-2{
        display:block
    }
}
#error{
    position:fixed;
    width:100%;
    height:100%;
    top:0;
    left:0;
    text-align:center;
    background-color:rgba(4,0,6,.65)
}
#error,#error a{
    color:#fff
}
#error h1{
    position:fixed;
    width:100%;
    top:50%;
    left:0;
    line-height:1;
    margin-top:-.5em;
    white-space:nowrap;
    font-size:30vw;
    color:hsla(0,0%,100%,.15)
}
#error h2{
    line-height:1.5;
    font-size:3em
}
#error p{
    font-size:1.4em;
    margin-bottom:30px
}
#error .tb-3{
    display:inline-block;
    padding:0 20px
}
#error .cross-btn{
    top:30px;
    left:auto;
    right:30px
}
#error .done-btn{
    position:relative;
    display:inline-block;
    width:160px;
    height:50px;
    font-size:1.6em;
    color:#fff;
    background-color:transparent;
    border:0
}
#error .done-btn .label{
    display:inline-block;
    vertical-align:sub;
    line-height:50px;
    -webkit-transition:-webkit-transform .4s cubic-bezier(.6,0,.3,1);
    transition:-webkit-transform .4s cubic-bezier(.6,0,.3,1);
    transition:transform .4s cubic-bezier(.6,0,.3,1);
    transition:transform .4s cubic-bezier(.6,0,.3,1),-webkit-transform .4s cubic-bezier(.6,0,.3,1)
}
#error .done-btn .line{
    position:absolute;
    width:100%;
    height:100%;
    top:0;
    left:0
}
#error .done-btn .line:after,#error .done-btn .line:before{
    opacity:.2;
    background-color:#fff;
    -webkit-transition:opacity .4s,-webkit-transform .4s cubic-bezier(.6,0,.3,1);
    transition:opacity .4s,-webkit-transform .4s cubic-bezier(.6,0,.3,1);
    transition:transform .4s cubic-bezier(.6,0,.3,1),opacity .4s;
    transition:transform .4s cubic-bezier(.6,0,.3,1),opacity .4s,-webkit-transform .4s cubic-bezier(.6,0,.3,1)
}
#error .done-btn .line:before{
    display:block;
    width:100%;
    height:1px;
    content:"";
    position:absolute
}
#error .done-btn .line:after{
    display:block;
    width:1px;
    height:100%;
    content:"";
    position:absolute
}
#error .done-btn .line.top:before{
    top:0;
    right:0;
    -webkit-transform:scaleX(.7);
    transform:scaleX(.7);
    -webkit-transform-origin:100% 50%;
    transform-origin:100% 50%
}
#error .done-btn .line.top:after{
    top:0;
    left:0;
    -webkit-transform:scaleY(0);
    transform:scaleY(0);
    -webkit-transform-origin:50% 100%;
    transform-origin:50% 100%
}
#error .done-btn .line.bottom:before{
    bottom:0;
    left:0;
    -webkit-transform:scaleX(.7);
    transform:scaleX(.7);
    -webkit-transform-origin:0 50%;
    transform-origin:0 50%
}
#error .done-btn .line.bottom:after{
    bottom:0;
    right:0;
    -webkit-transform:scaleY(0);
    transform:scaleY(0);
    -webkit-transform-origin:50% 0;
    transform-origin:50% 0
}
#error .done-btn:hover .line:after,#error .done-btn:hover .line:before{
    opacity:1;
    -webkit-transform:scale(1);
    transform:scale(1)
}
.is-fadeout{
    opacity:0
}
.is-fadein,.is-fadeout{
    -webkit-transition:opacity .4s;
    transition:opacity .4s
}
.is-fadein{
    opacity:1
}
@-webkit-keyframes spin{
    0%{
        -webkit-transform:rotate(0deg);
        transform:rotate(0deg)
    }
    to{
        -webkit-transform:rotate(1turn);
        transform:rotate(1turn)
    }
}
@keyframes spin{
    0%{
        -webkit-transform:rotate(0deg);
        transform:rotate(0deg)
    }
    to{
        -webkit-transform:rotate(1turn);
        transform:rotate(1turn)
    }
}
@-webkit-keyframes light{
    0%{
        opacity:.3
    }
    50%{
        opacity:.8
    }
    to{
        opacity:.3
    }
}
@keyframes light{
    0%{
        opacity:.3
    }
    50%{
        opacity:.8
    }
    to{
        opacity:.3
    }
}
