/* reset */
html, body, div, span, applet, object, iframe, strong,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, legend, caption, 
tbody, tfoot, thead, label, table, tr, td, th, body {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	font-size: 100%;
	vertical-align: baseline;
    line-height:100%;
    list-style: none;
	}

table {
	border-collapse: collapse;
	border-spacing: 0;
	}

/*
 * Copyright (C) 2014 Adobe Systems Incorporated
 *      https://github.com/adobe-fonts/source-han-sans/tree/master
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

@font-face {
   font-family: 'notosans_b_web';
   src: url('../notosans_b_web.woff') format("woff");
}

@font-face {
   font-family: 'notosans_m_web';
   src: url('../notosans_m_web.woff') format("woff");
}

body{
    font-family:'notosans_m_web','Lucida Grande','Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
	background:#2b2b2b;  
    color:#ffffff;
}

a{
	color:#c7161d;
	font-style:normal;
	text-decoration:none;
	outline:none;
}

a:link {
	color:#c7161d;
	font-style:normal;
	text-decoration:none;
}

a:visited {
	color:#c7161d;
	text-decoration:none;
}

a:hover {
	color:#c7161d;
	font-style:normal;
	text-decoration:underline;
}

a:active {
	text-decoration:underline;
}


/* common */
.wrapper {
    width:1000px;
    margin:0 auto;
    z-index:100;
}

.for-sp {
    display:none;
}

.for-pc {
    display:block;
}

.sp {
    display:none;
}

.pc {
    display:block;
}


/* menu */
.menu-width {
    width:100%;
	background:#2b2b2b;
    position:fixed;
    z-index:999999;
}

.menu-box {
	width:1000px;
    margin:0 auto;
}

.menu {
	display:flex;
    justify-content:center;
    margin-top:0px;
	display:-webkit-flex; /* Safari */
    -webkit-justify-content:center; /* Safari */
}

.bold {
    width:1000px;
    margin:0 auto;
}

.for-pc {
    padding:10px 0px 10px 0px;
}


/* top */
.pattern {
	width: 100%;
	height: 100%;
	background: url(images/dot.gif);
	position: fixed;
	top: 0;
	left: 0;
	z-index:-999998;
}

video {
	position: fixed;
    width:100%;
	right: 0;
	top: 0;
	z-index:-999999;
    background:url(images/video.jpg) top center;
    background-size:cover
}
.video-back {
	position: fixed;
    width:100%;
    height:100%;
	right: 0;
	top: 0;
	z-index:-999999;
    background:url(images/video.jpg) top center;
    background-size:cover;
}

.jsff-logo {
	width:100%;
    height:680px;
    background:url(images/jsff_logo.png) no-repeat;
    background-position: 50% 127px;
    padding:0px 0px 0px 0px;
    margin:0 auto;
}


/* parallax */
.imageHolder div {
	width:100%;
    height:100%;
	position: relative;
    background:url(images/dot.gif);
}


/* scrollInTurn */

/* page-top */
#pageTop {
    position:fixed;
    right:10px;
    bottom:10px;
    text-align:center;
    background-color:rgba(0,0,0,0.75);
    border-radius:25px;
}

#pageTop:hover{
    background-color:#404040;
    transition:background-color 0.1s linear;
    -webkit-transition:background-color 0.1s linear;
}

#pageTop a{
    padding:15px 12px 10px 12px;
    text-decoration:none;
    display:block;
    cursor:pointer;
}

.yajirushi {
	width:12px;
    height:12px;
    border-left:4px solid #ffffff;
    border-top:4px solid #ffffff;
    transform:rotate(45deg);
    -webkit-transform:rotate(45deg);
}


/* sakuhin */
.sakuhin {
    width:1000px;
    margin:0 auto;
    display:flex;
    justify-content:space-between;
    margin-top:0px;
    padding-top:30px;
    display:-webkit-flex;/* Safari */
    -webkit-justify-content:space-between;/* Safari */
}

.sidemenu {
    width:200px;
    margin-bottom:50px;
}

.screenshot {
    width:325px;
    height:182px;
	background:url(screenshot.jpg);
    background-size:cover;
    margin-bottom:15px;
}

.date {
	font-size:24px;
    font-family: 'notosans_b_web';
}

.date-spec {
    font-size:14px;
    padding-top:8px;
	font-family:'notosans_m_web';
}

.kodak {
	font-family:'notosans_m_web';
    font-size:14px;
    width:136px;
    padding:50px 0px 50px 0px;
    background:red;
    background:url(../images/kodak.jpg) no-repeat center right;
    background-size:100px 100px;
    margin-top:15px;
}

.slidemenu ul {
	width:100%;
    display:flex;
    flex-direction:column;
    display:-webkit-flex;/* Safari */
    -webkit-flex-direction:column;/* Safari */
}

.sidemenu a{
    display:block;
    color:#ffffff;
    text-align:left;
	font-family:'notosans_b_web';
    font-size:14px;
    padding:19px 15px;
    text-decoration:none;
    background:#404040;
    margin-bottom:1px;
}

.sidemenu a:hover {
	text-decoration:none;
	background:#666666;
    transition:background-color 0.25s linear;
    -webkit-transition:background-color 0.25s linear;
}

.facebook {
    width:200px;
    margin-top:15px;
    z-index:-999999;
}

.fb-page {
    width:200px;
}

.main-box {
    width:750px;
}

.sakuhin-box {
    margin-bottom:50px;
}

.sakuhin-box h3 {
    margin-top:20px;
}

.banner {
    width:1000px;
    margin:0 auto;
    height:452px;
    background:url(banner.jpg) center bottom no-repeat;
    display:flex;
    justify-content:flex-startd;
    align-items:flex-end;
    display:-webkit-flex;/* Safari */
    -webkit-justify-content:flex-start;/* Safari */
    -webkit-align-items:flex-end;/* Safari */
}

.maintitle {
    font-size:66px;
    text-align:left;
    padding:50px;
    font-family: 'notosans_b_web';
    letter-spacing:10px;
    color:#ffffff;
    text-shadow:0px 0px 3px #000000;
}

.ruby-small {
    font-size:16px;
}

.date-title {
    color:#ffffff;
    text-align:right;
    font-size:66px;
    font-family: 'notosans_m_web';
}

.sakuhin h3 {
    font-size:16px;
    line-height:100%;
	color:#ffffff;
    margin-bottom:10px;
    font-family:'notosans_b_web';
}

.sakuhin p {
	width:750px;
    font-family: 'notosans_m_web';
    font-size:15px;
    line-height:160%;
    text-align: justify;
    text-justify: auto;
    color:#ffffff;
    margin-bottom:15px;
}

.more a{
	width:200px;
    margin:0 auto;
    text-decoration:none;
    text-align:center;
    color:#ffffff;

    display:block;
    padding:10px;
    background:#404040;
}

.more a:hover {
    text-decoration:none;
    color:red;
}

.credit-box {
    width:100%;
    margin-top:30px;
    margin-bottom:30px;
    display:flex;
    justify-content:space-between;
    display:-webkit-flex;/* Safari */
    -webkit-justify-content:space-between;/* Safari */
}

.cast {
    font-family: 'notosans_m_web';
    font-size:15px;
    line-height:175%;
}

.staff {
    font-family: 'notosans_m_web';
    font-size:15px;
    line-height:175%;
}

.catch {
    width:750px;
    height:141px;
    background:url(back_intro.jpg);
    margin-bottom:30px;
}

.staff-5em {
    padding-left:5em;
}

.thanks {
    font-size:13px;
    margin-top:15px;
    line-height:20px;
}


/* footer */
.footer {
    width:100%;
    background:#2b2b2b;
    color:#ffffff;
}

.footer-box {
    width:1000px;
    margin:0 auto;
    display:flex;
    justify-content:center;
    align-items:center;
    padding-top:15px;
    display:-webkit-flex;/* Safari */
    -webkit-justify-content:center;/* Safari */
    -webkit-align-items:center;/* Safari */
}

.footer-l {
    display:flex;
    align-items:center;
    margin-right:30px;
    display:-webkit-flex;/* Safari */
    -webkit-align-items:center;/* Safari */
}

.footer-r {
}

.footer-shusai {
	font-family:'notosans_b_web';
	width:253px;
	margin:0 auto;
    font-size:14px;
}

.footer-shusai img {
    width:200px;
    vertical-align:middle;
    padding-left:5px;
}

.footer-info {
	font-family:'notosans_b_web';
    text-align:left;
    font-size:14px;
    display:flex;
    align-items:center;
    display:-webkit-flex;/* Safari */
    -webkit-align-items:center;/* Safari */
}

.footer-time {
    text-align:left;
    font-size:14px;
    margin-left:10px;
}

.copyright {
	font-family:'notosans_m_web';
    width:1000px;
    margin:0 auto;
    color:#ffffff;
    text-align:center;
    font-size:12px;
    padding:15px 0px;
}



/* for smartphone */
@media screen and (min-width: 0px) and (max-width: 1000px) {

/* common */
.wrapper {
    width:100%;
    margin:0 auto;
    z-index:100;
}

.forsp {
    display:block;
}

.sp {
	display:block;
}

.pc {
	display:none;
}


/* menu */
.menu-width {
    display:none;
}

.menu-box {
	display:none;
}

.menu {
	display:none;
}

.bold {
	display:none;
}

.for-pc {
    padding:0px;
}

.dropdown {
    z-index:999999;
    display:block;
    
}


/* top */
.pattern {
	display:none;
}

video {
	display:none;
}

.video-back {
	background:url(images/video.jpg) top center #2b2b2b;
    background-size:cover;
}

.jsff-logo {
	width:290px;
    height:421px;
    background:url(images/jsff_logo_sp.png) no-repeat;
    background-position: center bottom;
    margin:0 auto;
}


/* parallax */
.imageHolder div {
	width:100%;
    height:100%;
	position: relative;
    background:url(images/dot.gif);
}


/* scrollInTurn */

/* page-top */
#pageTop {
    position:fixed;
    right:10px;
    bottom:10px;
    text-align:center;
    background-color:rgba(0,0,0,0.75);
    border-radius:25px;
}

#pageTop:hover{
    background-color:#404040;
    transition:background-color 0.1s linear;
    -webkit-transition:background-color 0.1s linear;
}

#pageTop a{
    padding:15px 12px 10px 12px;
    text-decoration:none;
    display:block;
    cursor:pointer;
}

.yajirushi {
	width:12px;
    height:12px;
    border-left:4px solid #ffffff;
    border-top:4px solid #ffffff;
    transform:rotate(45deg);
    -webkit-transform:rotate(45deg);
}


/* sakuhin */
.sakuhin {
    width:320px;
    margin:0 auto;
    display:block;
    margin-top:0px;
    padding-top:0px;
}

.sidemenu {
    width:290px;
    margin:0 auto;
    margin-bottom:30px;
}

.screenshot {
    width:290px;
    height:162px;
	background:url(screenshot.jpg);
    background-size:cover;
    margin-bottom:10px;
}

.date {
	font-size:13px;
    font-family: 'notosans_b_web';
    margin-bottom:30px;
}

.date-spec {
    font-size:13px;
    padding-top:8px;
	font-family:'notosans_m_web';
}

.slidemenu ul {
	width:290px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    display:-webkit-flex;/* Safari */
    -webkit-flex-direction:column;/* Safari */
    -webkit-justify-content:space-between;/* Safari */
}

.sidemenu li {
    width:290px;
}

.sidemenu a{
	width:100%;
    display:block;
    color:#ffffff;
    text-align:center;
	font-family:'notosans_b_web';
    font-size:14px;
    padding:15px 0px;
    text-decoration:none;
    background:#404040;
    margin-bottom:1px;
}

.sidemenu a:hover {
	text-decoration:none;
	background:#666666;
    transition:background-color 0.25s linear;
    -webkit-transition:background-color 0.25s linear;
}

.facebook {
    width:260px;
    margin-top:15px;
    z-index:-999999;
}

.fb-page {
    width:320px;
}

.main-box {
    width:290px;
    padding:0px 15px;
}

.sakuhin-box {
    margin-bottom:0px;
}

.sakuhin-box h3 {
    margin-top:0px;
}

.banner {
    width:320px;
    height:265px;
    margin:0 auto;
    background:url(banner_sp.jpg) center top no-repeat;
    background-size:contain;
    display:flex;
    justify-content:center;
    align-items:flex-end;
    display:-webkit-flex;/* Safari */
    -webkit-justify-content:center;/* Safari */
    -webkit-align-items:flex-end;/* Safari */
}

.maintitle {
    font-size:30px;
    text-align:center;
    padding:0px 0px 20px 0px;
    font-family: 'notosans_b_web';
    letter-spacing:5px;
    color:#ffffff;
    text-shadow:none;
}

.ruby-small {
    font-size:10px;
}

.date-title {
    color:#ffffff;
    text-align:right;
    font-size:66px;
    font-family: 'notosans_b_web';
}

.sakuhin h3 {
    font-size:16px;
    line-height:100%;
	color:#ffffff;
    margin-bottom:8px;
    font-family:'notosans_b_web';
}

.sakuhin h3 img{
    height:25px;
}

.sakuhin p {
	width:100%;
    font-family: 'notosans_m_web';
    font-size:13px;
    line-height:21px;
    text-align: justify;
    text-justify: auto;
    color:#ffffff;
    margin-bottom:30px;
}

.more a{
	width:200px;
    margin:0 auto;
    text-decoration:none;
    text-align:center;
    color:#ffffff;
    display:block;
    padding:10px;
    background:#404040;
}

.more a:hover {
    text-decoration:none;
    color:red;
}

.credit-box {
    width:100%;
    margin-top:0px;
    margin-bottom:30px;
    display:block;
}

.cast {
    font-family: 'notosans_m_web';
    font-size:13px;
    line-height:21px;
    margin-bottom:30px;
}

.staff {
    font-family: 'notosans_m_web';
    font-size:13px;
    line-height:21px;
}

.catch {
    width:260px;
    height:141px;
    background:url(back_intro.jpg);
    margin-bottom:30px;
}

.staff-5em {
    padding-left:5em;
}

.thanks {
    font-size:10px;
    margin-top:30px;
    line-height:15px;
}


/* footer */
.footer {
    width:100%;
    color:#ffffff;
}

.footer-box {
    width:260px;
    margin:0 auto;
    display:block;
    padding:10px 0px;
}

.footer-l {
    display:block;
    margin-right:30px;
}

.footer-r {
}

.footer-shusai {
	font-family:'notosans_b_web';
	width:260px;
    padding-bottom:10px;
	margin:0 auto;
    font-size:10px;
    text-align:center;
}

.footer-shusai img {
    width:160px;
    vertical-align:middle;
    padding-left:3px;
}

.footer-info {
	font-family:'notosans_b_web';
    text-align:center;
    font-size:10px;
    display:block;
    line-height:13px;
}

.footer-time {
    text-align:center;
    font-size:10px;
    margin-left:10px;
}

.copyright {
	font-family:'notosans_m_web';
    width:100%;
    margin:0 auto;
    color:#2b2b2b;
    text-align:center;
    font-size:8px;
    padding:10px 0px;
    background:#ffffff;
}

}