@charset "UTF-8";

/*reset*/
html, body, div, span,
applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dd, dl, dt, li, ol, ul,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	line-height: 1;
	font-weight: normal;
	font-style: normal;
	font-size: 100%;
	font-family: inherit;
	text-align: left;
	vertical-align: baseline;
	font-family:"Sawarabi Mincho", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-family:"游明朝体", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "Sawarabi Mincho", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

a img, :link img, :visited img {
	border: 0;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

ul,ol{
	list-style-type:none;
}

ul li img {
	vertical-align: top;
}

* { 
	color: #0e0e0e;
	margin:0;
	padding:0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
 }

html,body {
	position: relative;
	width: 100%;
	height:100%;
	background: #f2f2ed;
}
body {
    overflow-y: scroll;
}
.pcOnly {
	display: block;
}
.spOnly {
	display: none;
}
.fade {
	cursor: pointer;
	-webkit-transition: all 300ms ease;
	-moz-transition: all 300ms ease;
	transition: all 300ms ease;
	filter: alpha(opacity=100);
	-moz-opacity:1;
	opacity:1;
}

.fade:hover {
	filter: alpha(opacity=50);
	-moz-opacity:0.50;
	opacity:0.50;
	cursor: pointer;
}

.coverArea {
	display: block;
	position:fixed;
	width:100%;
	height: 100%;
	z-index: 10000;
	background: #fff;
}
.coverArea .cover {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: 170px;
	height: 170px;
	text-align: center;
	font-size: 12px;
	color: #bbb;
	font-family: 'Bellefair', serif;
}
.coverArea .cover img {
	width: 100%;
}
.coverArea .shiroLogo {
	width: 30%;
	max-width: 160px;
	margin: 3% auto 0;
}
.coverArea .shiroLogo img {
	width: 100%;
	height: auto;
}

.on {
	display: block;
	opacity: 1;
}
.off {
	opacity: 0;
	display: none;
}
.motion {
	-webkit-transition: all 1s;
	-moz-transition: all 1s;
	-ms-transition: all 1s;
	-o-transition: all 1s;
	transition: all 1s;
	opacity: 0;
	-webkit-transform: translateY(50px);
	transform: translateY(50px);
}
.fadeInUp {
	opacity: 1;
	-webkit-transform: translateY(0);
	transform: translateY(0);
}

.subImg {
	background: none;
	width: 100%;
	height: 100%;
}
.subImg::before {
	content: "";
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	-webkit-transform: translate3d(0, 0, 1px);
	transform: translate3d(0, 0, 1px);
	width: 100%;
	height: 100vh;
	background: url(/shironekoproject/lp/teikokusenki2/assets_teaser/img/bg_pc.jpg) center/cover no-repeat;
	-webkit-background-size: cover;
  	z-index: 0;
}
.subImg.on::before {
	-webkit-transform: translate3d(0, 0, 1px);
	transform: translate3d(0, 0, 1px);
  	opacity: 0;
	-webkit-transition: all 1000ms;
	-moz-transition: all 1000ms;
	-ms-transition: all 1000ms;
	-o-transition: all 1000ms;
	transition: all 1000ms;
	-webkit-transition-delay:200ms;
	transition-delay:200ms;
}

header {
	position: relative;
	width: 100%;
	height: 40vh;
	text-align: center;
	z-index: 1;
}
header .chara01,
header .chara03,
header .chara08,
header .chara09 {
	position: fixed;
	-webkit-transform: translateX(-100vw);
	transform: translateX(-100vw);
}
header .chara02,
header .chara04,
header .chara05,
header .chara06,
header .chara07 {
	position: fixed;
	text-align: right;
	-webkit-transform: translateX(100vw);
	transform: translateX(100vw);
}

header .chara01 {
	top: -3vw;
	left: -5vw;
 	z-index: 10;
}
header .chara02 {
	top: 1vw;
	left: 6vw;
	z-index: 9;
}
header .chara03 {
	top: -3vw;
	left: -3vw;
	z-index: 8;
}
header .chara04 {
	top: 3vw;
	left: 1vw;
	z-index: 7;
}
header .chara05 {
	top: -2vw;
	left: -4vw;
	z-index: 6;
}
header .chara06 {
	top: 33vw;
	left: -17vw;
	z-index: 5;
}
header .chara07 {
	top: 1vw;
	left: -5vw;
	z-index: 4;
}
header .chara08 {
	top: 1vw;
	left: 3vw;
	z-index: 3;
}
header .chara09 {
	top: -1vw;
	left: -4vw;
	z-index: 2;
}

header .chara01 img {
	width: 60vw;
	height: auto;
}
header .chara02 img {
	width: 59vw;
	height: auto;
}
header .chara03 img {
	width: 58vw;
	height: auto;
}
header .chara04 img {
	width: 43vw;
	height: auto;
}
header .chara05 img {
	width: 23vw;
	height: auto;
}
header .chara06 img {
	width: 13vw;
	height: auto;
}
header .chara07 img {
	width: 30vw;
	height: auto;
}
header .chara08 img {
	width: 17vw;
	height: auto;
}
header .chara09 img {
	width: 17vw;
	height: auto;
}

header .chara01.on,
header .chara02.on,
header .chara03.on,
header .chara04.on,
header .chara05.on,
header .chara06.on,
header .chara07.on,
header .chara08.on,
header .chara09.on {
	-webkit-transform: translateX(0vw);
	transform: translateX(0vw);
-webkit-transition: all 500ms cubic-bezier(0.140, 1, 0.490, 0.985); /* older webkit */
-webkit-transition: all 500ms cubic-bezier(0.140, 1.205, 0.490, 0.985); 
   -moz-transition: all 500ms cubic-bezier(0.140, 1.205, 0.490, 0.985); 
     -o-transition: all 500ms cubic-bezier(0.140, 1.205, 0.490, 0.985); 
        transition: all 500ms cubic-bezier(0.140, 1.205, 0.490, 0.985); /* custom */

-webkit-transition-timing-function: cubic-bezier(0.140, 1, 0.490, 0.985); /* older webkit */
-webkit-transition-timing-function: cubic-bezier(0.140, 1.205, 0.490, 0.985); 
   -moz-transition-timing-function: cubic-bezier(0.140, 1.205, 0.490, 0.985); 
     -o-transition-timing-function: cubic-bezier(0.140, 1.205, 0.490, 0.985); 
        transition-timing-function: cubic-bezier(0.140, 1.205, 0.490, 0.985); /* custom */
       	opacity: 1;
}
header .chara01.on {
	-webkit-transition-delay:400ms;
	transition-delay:400ms;
}
header .chara02.on {
	-webkit-transition-delay:450ms;
	transition-delay:450ms;
}
header .chara03.on {
	-webkit-transition-delay:150ms;
	transition-delay:150ms;
}
header .chara04.on {
	-webkit-transition-delay:200ms;
	transition-delay:200ms;
}
header .chara05.on { /* ドリル */
	-webkit-transition-delay:400ms;
	transition-delay:400ms;
}
header .chara06.on { /* 右下 */
	-webkit-transition-delay:300ms;
	transition-delay:300ms;
}
header .chara07.on { /* 右上 */
	-webkit-transition-delay:350ms;
	transition-delay:350ms;
}
header .chara08.on {
	-webkit-transition-delay:250ms;
	transition-delay:250ms;
}
header .chara09.on {
	-webkit-transition-delay:350ms;
	transition-delay:350ms;
}

.mono {
	-webkit-transition: all 0s!important;
	-moz-transition: all 0s!important;
	-ms-transition: all 0s!important;
	-o-transition: all 0s!important;
	transition: all 0s!important;
	-webkit-transition-delay:0ms!important;
	transition-delay:0ms!important;

}

#effect{
    position: absolute;
    bottom: 0%;
    width: 100%;
    height: 100vh;
    z-index: 10000;
}


.mode00 .bgImg {
	position: fixed;
	background: none;
	width: 100%;
	height: 100%;
}
.mode00 .bgImg::before {
	content: "";
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	-webkit-transform: perspective(0) translate3d(0, 0, -1001px);
	transform: perspective(0) translate3d(0, 0, -1001px);
	width: 100%;
	height: 100vh;
	background: #f00;
  	z-index: -2000;
}

.mode01 .bgImg {
	background: none;
	width: 100%;
	height: 100%;
}
.mode01 .bgImg::before {
	content: "";
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	-webkit-transform: translate3d(0, 0, -1px);
	transform: translate3d(0, 0, -1px);
	width: 100%;
	height: 100vh;
	background: url(/shironekoproject/lp/teikokusenki2/assets/img/bg_pc.jpg) center/cover no-repeat;
	-webkit-background-size: cover;
  	z-index: 0;
}
.mode02 .bgImg {
	background: none;
	width: 100%;
	height: 100%;
}
.mode02 .bgImg::before {
	content: "";
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	-webkit-transform: translate3d(0, 0, -1px);
	transform: translate3d(0, 0, -1px);
	width: 100%;
	height: 100vh;
	background: url(/shironekoproject/lp/teikokusenki2/assets/img/bg_pc_none.jpg) center/cover no-repeat;
	-webkit-background-size: cover;
  	z-index: 0;
}
.mode02 .bgImg::after {
	content: "";
	display: block;
	position: fixed;
	top: 0;
	left: 50%;
	margin-left: -320px;
	-webkit-transform: translate3d(0, 0, -1px);
	transform: translate3d(0, 0, -1px);
	width: 640px;
	height: 100vh;
	background: url(/shironekoproject/lp/teikokusenki2/assets/img/bg_sp.jpg) center/cover no-repeat;
	-webkit-background-size: cover;
	z-index: 0;
  	box-shadow: 0 0 130px rgba(0, 0, 50, 1.0);
}
.mode03 .bgImg {
	position: absolute;
	background: none;
	width: 100%;
	height: 100%;
}
.mode03 .bgImg::before {
	content: "";
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	-webkit-transform: translate3d(0, 0, -1px);
	transform: translate3d(0, 0, -1px);
	width: 100%;
	height: 100vh;
	background: url(/shironekoproject/lp/teikokusenki2/assets/img/bg_pc.jpg) top/cover no-repeat;
	-webkit-background-size: cover;
  	z-index: 0;
}
.mode03 .bgImgMono {
	position: absolute;
	background: none;
	width: 100%;
	height: 100%;
	opacity: 0;
}
.mode03 .bgImgMono::before {
	content: "";
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	-webkit-transform: translate3d(0, 0, -1px);
	transform: translate3d(0, 0, -1px);
	width: 100%;
	height: 100vh;
	background: url(/shironekoproject/lp/teikokusenki2/assets/img/bg_pc_mono.jpg) top/cover no-repeat;
	-webkit-background-size: cover;
  	z-index: 0;
}

@-webkit-keyframes imgPan {
	0% {background-position: 0 0;}
	100% {background-position: 100% 0;}
}
@keyframes imgPan {
	0% {background-position: 0 0;}
	100% {background-position: 100% 0;}
}

.logo {
	position: relative;
	background: none;
	width: 100%;
	height: 200px;
  	z-index: 11;
}
.logo::before {
	content: "";
	display: block;
	position: fixed;
	bottom: 2%;
	left: 0;
	-webkit-transform: perspective(0) translate3d(0vw,0,-1px);
	transform: perspective(0) translate3d(0vw,0,-1px);
	width: 100%;
	height: 100vh;
	background: url(/shironekoproject/lp/teikokusenki2/assets/img/logo.png) right bottom/cover no-repeat;
	-webkit-background-size: 30vw auto;
	background-size: 30vw auto;
	opacity: 0;
  	z-index: 11;
}
.logo.on::before {
	-webkit-transform: perspective(0) translate3d(0vw,0,-1px);
	transform: perspective(0) translate3d(0vw,0,-1px);
	-webkit-transition: all 1000ms;
	-moz-transition: all 1000ms;
	-ms-transition: all 1000ms;
	-o-transition: all 1000ms;
	transition: all 1000ms;
	-webkit-transition-delay:500ms;
	transition-delay:500ms;
	opacity: 1;
}


.logo img {
	width: 100%;
	height: auto;
}



.bgImgBk {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	background: #f2f2ed;
	-webkit-background-size: 100%;
	background-size: 100%;
	opacity: 0;
	z-index: 99;
}


.wrapper{
	position: fixed;
	overflow: hidden;
	width: 100%;
	margin: 0 auto;
	z-index: 100;
    /* background-image: -webkit-linear-gradient(top, rgba(0,0,0,0) 5%, rgba(0,0,0,.5) 12%); */
    /* background-image: linear-gradient(top, rgba(0,0,0,0) 5%, rgba(0,0,0,.5) 12%); */
    background-position: center;
    background-repeat: no-repeat;
}
.wrapper.on {
	position: relative;
}
.wrap {
	width: 640px;
	margin: 0 auto;
}

.imgFull {
	width: 100%;
}
.imgFull img {
	width: 100%;
	height: auto;
}

.bgLeft,
.bgRight {
	position: relative;
}
.bgLeft::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
    background-image: -webkit-linear-gradient(top, rgba(242,242,237,0) 0, rgba(252,252,247,1) 18%, rgba(252,252,247,1) 80%, rgba(242,242,237,0) 100%);
    background-image: linear-gradient(top, rgba(242,242,237,0) 0, rgba(252,252,247,1) 18%, rgba(252,252,247,1) 80%, rgba(242,242,237,0) 100%);
    background-repeat: no-repeat;
    z-index: 0;
}
.bgRight::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	width: 50%;
	height: 100%;
    background-image: -webkit-linear-gradient(top, rgba(242,242,237,0) 0, rgba(20,20,10,.9) 18%, rgba(20,20,10,.9) 80%, rgba(242,242,237,0) 100%);
    background-image: linear-gradient(top, rgba(242,242,237,0) 0, rgba(20,20,10,.9) 18%, rgba(20,20,10,.9) 80%, rgba(242,242,237,0) 100%);
    background-repeat: no-repeat;
    z-index: 0;
}


/*=============================
 storyArea
===============================*/
.storyArea {
	position: relative;
	text-align: center;
	margin-top: 60vh;
	padding: 0 1% 10vh;
	z-index: 1;
}
.storyArea h2 {
	position: relative;
	padding: 0 0 20%;
	text-align: center;
}
.storyArea h2 span {
	font-size: 32px;
	font-family: 'Bellefair', serif;
}
.storyArea h2 span::before {
    content: '';
    position: absolute;
    top: 14px;
    left: 0;
    right: 0;
    width: 100%;
    height: 1px;
    margin: 0 auto;
    text-align: center;
    background-image: -webkit-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,.5) 30%, rgba(0,0,0,0) 30%, rgba(0,0,0,0) 70%, rgba(0,0,0,.5) 70%, rgba(0,0,0,0));
    background-image: linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,.5) 30%, rgba(0,0,0,0) 30%, rgba(0,0,0,0) 70%, rgba(0,0,0,.5) 70%, rgba(0,0,0,0));
    background-position: center;
    background-repeat: no-repeat;
}
.storyArea p {
	text-align: center;
	font-size: 24px;
	text-indent: 1em;
	line-height: 3;
}
.storyArea .border {
	font-family: sans-serif;
	letter-spacing: -0.18em;
}

/*=============================
 charaArea
===============================*/
.charaArea {
	position: relative;
	text-align: center;
	padding: 40vh 0 20vh;
	z-index: 1;
}
.charaArea h2 {
	position: relative;
	padding: 0 0 15%;
	text-align: center;
}
.charaArea h2 span {
	font-size: 32px;
	font-family: 'Bellefair', serif;
	text-shadow: 0 0 3px rgba(255,255,255,.3);
}
.charaArea h2 span::before {
    content: '';
    position: absolute;
    top: 14px;
    left: 0;
    right: 0;
    width: 100%;
    height: 1px;
    margin: 0 auto;
    text-align: center;
    background-image: -webkit-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,.5) 27%, rgba(0,0,0,0) 27%, rgba(0,0,0,0) 73%, rgba(0,0,0,.5) 73%, rgba(0,0,0,0));
    background-image: linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,.5) 27%, rgba(0,0,0,0) 27%, rgba(0,0,0,0) 73%, rgba(0,0,0,.5) 73%, rgba(0,0,0,0));
    background-position: center;
    background-repeat: no-repeat;
}
.charaArea p {
	text-align: center;
	font-size: 18px;
	line-height: 1.3;
}
.charaArea .name {
	position: relative;
	font-size: 36px;
}
.charaArea .name::before {
    content: '';
    position: absolute;
    top: 48px;
    left: 0;
    right: 0;
    width: 50%;
    height: 1px;
    margin: 0 auto;
    text-align: center;
    background-image: -webkit-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,.2) 30%, rgba(0,0,0,.2) 70%, rgba(0,0,0,0));
    background-image: linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,.2) 30%, rgba(0,0,0,.2) 70%, rgba(0,0,0,0));
    background-position: center;
    background-repeat: no-repeat;
}

.charaArea .cv {
	padding: 3% 0 3%;
}
.charaArea .cv span {
	font-size: 14px;
}

.charaArea .chara {
	position: relative;
	margin-bottom: 5vh;
}


.charaArea .imgFull {
	overflow: visible;
}
.charaArea .imgFull img {
	width: 270%;
	height: auto;
	margin-left: -85%;
}

.charaArea .chara .flag {
	position: absolute;
	margin-top: -47%;
}
.charaArea .chara .flag img {	
	width: 200%;
	height: auto;
	margin-left: -50%;
}

.charaArea .voiceArea ul {
	width: 96%;
	margin: 0 2%;
	padding: 1.5% 2% 1.5% 0;
	text-align: center;
	border-radius: 2px;
}
.charaArea .voiceArea li {
	display: inline-block;
	width: 20%;
	text-align: center;
}
.charaArea .voiceArea .title {
	width: 35%;
	font-size: 14px;
}
.charaArea .voiceArea li a {
	position: relative;
	display: inline-block;
	width: 96%;
	margin: 0 auto;
	padding: 10% 0;
	background: #484845;
	border-radius: 3px;
	color: #f0f0f0;
	font-size: 14px;
	text-align: center;
	text-decoration: none;
	-webkit-transition: all 300ms ease;
	-moz-transition: all 300ms ease;
	transition: all 300ms ease;
}
.charaArea .voiceArea li a.white {
	background: #f0f0ea;
	color: #484845;
}

.charaArea .voiceArea li[data-play-state="play"] a {
	position: relative;	
	-webkit-transition: all 300ms ease;
	-moz-transition: all 300ms ease;
	transition: all 300ms ease;
}
.charaArea .voiceArea li[data-play-state="pause"] a::before {
	content: "";
	position: absolute;
	display: inline-block;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	background: rgba(170, 170, 153, 0);
	border-radius: 3px;
	text-align: center;
	vertical-align: middle;
	z-index: 10;
	-webkit-transition: all 300ms ease;
	-moz-transition: all 300ms ease;
	transition: all 300ms ease;
}
.charaArea .voiceArea li[data-play-state="pause"] a::after {
	content: "";
	position: absolute;
	display: inline-block;
	top: 50%;
	left: 0;
	width: 100%;
	height: 100%;
	font-size: 12px;
	text-align: center;
	vertical-align: middle;
	margin-top: -6px;
	z-index: 10;
	-webkit-transition: all 300ms ease;
	-moz-transition: all 300ms ease;
	transition: all 300ms ease;
}
.charaArea .voiceArea li[data-play-state="play"] a::before {
	content: "";
	position: absolute;
	display: inline-block;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	background: #f0f0ea;
	border-radius: 3px;
	text-align: center;
	vertical-align: middle;
	z-index: 10;
	-webkit-transition: all 300ms ease;
	-moz-transition: all 300ms ease;
	transition: all 300ms ease;
}
.charaArea .voiceArea li[data-play-state="play"] a::after {
	content: "PLAYING";
	position: absolute;
	display: inline-block;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 100%;
	height: auto;
	color: #333;
	font-size: 12px;
	text-align: center;
	vertical-align: middle;
	z-index: 10;
	-webkit-transition: all 300ms ease;
	-moz-transition: all 300ms ease;
	transition: all 300ms ease;
}

.charaArea .voiceArea li[data-play-state="pause"] a.white::before {
	background: rgba(51, 51, 51, 0);
}
.charaArea .voiceArea li[data-play-state="play"] a.white::before {
	background: #484845;
}
.charaArea .voiceArea li[data-play-state="play"] a.white::after {
	color: #f0f0ea;
}


/*=============================
 chartArea
===============================*/
.chartArea {
	position: relative;
	text-align: center;
	padding: 0vh 0 0vh;
	z-index: 1;
}
.chartArea h2 {
	position: relative;
	padding: 0 0 10%;
	text-align: center;
}
.chartArea h2 span {
	font-size: 32px;
	font-family: 'Bellefair', serif;
	text-shadow: 0 0 3px rgba(255,255,255,.3);
}
.chartArea h2 span::before {
    content: '';
    position: absolute;
    top: 28px;
    left: 0;
    right: 0;
    width: 100%;
    height: 1px;
    margin: 0 auto;
    text-align: center;
    background-image: -webkit-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,.5) 27%, rgba(0,0,0,0) 27%, rgba(0,0,0,0) 73%, rgba(0,0,0,.5) 73%, rgba(0,0,0,0));
    background-image: linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,.5) 27%, rgba(0,0,0,0) 27%, rgba(0,0,0,0) 73%, rgba(0,0,0,.5) 73%, rgba(0,0,0,0));
    background-position: center;
    background-repeat: no-repeat;
}
.chartArea .pcOnly img {
	width: 170%;
	margin-left: -38%;
}

/*=============================
 movieArea
===============================*/
.movieArea {
	text-align: center;
	padding: 15vh 0 12vh;
}
.movieArea .wrap {
	width: 960px;
	margin: 0 auto;
}
.movieArea h2 {
	position: relative;
	width: 640px;
	margin: 0 auto;
	padding: 0 0 10vh;
	text-align: center;
}
.movieArea h2 span {
	font-size: 32px;
	font-family: 'Bellefair', serif;
}
.movieArea h2 span::before {
    content: '';
    position: absolute;
    top: 14px;
    left: 0;
    right: 0;
    width: 100%;
    height: 1px;
    margin: 0 auto;
    text-align: center;
    background-image: -webkit-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,.5) 30%, rgba(0,0,0,0) 30%, rgba(0,0,0,0) 70%, rgba(0,0,0,.5) 70%, rgba(0,0,0,0));
    background-image: linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,.5) 30%, rgba(0,0,0,0) 30%, rgba(0,0,0,0) 70%, rgba(0,0,0,.5) 70%, rgba(0,0,0,0));
    background-position: center;
    background-repeat: no-repeat;
}
.movieArea ul {
	text-align: center;
}
.movieArea li {
	display: inline-block;
	width: 450px;
	margin: 10px;
}

.iframebox {
    position: relative;
    width: 100%;
	margin:0 auto;
	padding-top: 52.25%;
}
.iframebox iframe,
.iframebox a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
}
.iframebox a img{
	width: 100%;
}

/*=============================
 footer
===============================*/
footer {
	position: relative;
}
footer::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 1px;
    margin: 0 auto;
    text-align: center;
    background-image: -webkit-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,.3) 30%, rgba(0,0,0,.3) 70%, rgba(0,0,0,0));
    background-image: linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,.3) 30%, rgba(0,0,0,.3) 70%, rgba(0,0,0,0));
    background-position: center;
    background-repeat: no-repeat;
}
footer .wrap {
	max-width: 380px;
}

footer .redirectArea {
	padding-top: 1vh;
	text-align: center;
}
footer .redirectBtn {
	display: inline-block;
	width: 46%;
	vertical-align: top;
}
footer .redirectBtn a {
	display: inline-block;
	width: 100%;
	padding: 10% 0;
	text-align: center;
	color: #f0f0f0;
	background: #826634;
    background-image: -webkit-linear-gradient(top, #826634, #654a1a);
    background-image: linear-gradient(top, #826634, #654a1a);
    background-position: center;
    background-repeat: no-repeat;
    border: 1px solid #826634;
    border-top: 1px solid #af9057;
    border-bottom: 1px solid #382607;
	font-size: 3vw;
	text-decoration: none;
	line-height: 1.5;
	border-radius: 5px;
}
footer .redirectBtn a span {
	color: #f0f0f0;
	font-size: 4vw;
	font-weight: bold;
}



footer .shiroLogo {
	position: relative;
	text-align: center;
	width: 100%;
	margin: 0 auto;
	padding:10vh 0 1vh;
}
footer .shiroLogo span {
	width: 100%;
}
footer .shiroLogo span img {
	text-align: center;
	width: 120px;
	margin: 0 auto;
}
footer .appNotice {
	width: 100%;
	margin: 0 auto;
	padding:0 2%;
	border-radius: 4px;
	font-size: 9px;
}
footer .appNotice li {
	margin: 0 0 5px 20px;
	list-style-type: disc;
	line-height: 1.3;
}
footer .appNotice li:last-child {
	margin-bottom: 0;
}

footer .appArea {
	/* background:url(/shironekoproject/zero_chronicle/img/footer_app_bg.png) 50% 0 repeat-y;	 */
	-webkit-background-size: 100%;
	background-size: 100%;
}
footer .appArea ul {
	padding:3vh 0;
	width: 100%;
	text-align: center;
}
footer .appArea li {
	display: inline-block;
	width: 30%;
}
footer .appArea li img {
	width: 100%;
	height: auto;
}
footer .link {
	position: relative;
	padding: 3vh 0 10vh;
	text-align: center;
	font-size: 10px;
	z-index: 10;
	line-height: 1.3;
}
footer .copyright {
	position: relative;
	padding: 3vh 0 5vh;
	text-align: center;
	font-size: 10px;
	z-index: 10;
	line-height: 1.3;
}
.snsArea {
	padding:10vh 0 10vh;
	width: 100%;
	text-align: center;
}
.snsArea li {
	display: inline-block;
	vertical-align: middle;
	margin:0 5px;
}
.snsArea li.btn {
	width: 10%;
}

.snsArea li.btn img {
	width: 100%;
}


/*===============================================

@media screen max-width

===============================================*/
@media screen and (max-width: 2000px){

	.logo::before {
		-webkit-background-size: 23vw auto;
		background-size: 23vw auto;
	}

}
/*===============================================

@media screen max-width

===============================================*/
@media screen and (max-width: 1600px){

	.logo::before {
		-webkit-background-size: 26vw auto;
		background-size: 26vw auto;
	}

	.charaArea .imgFull img {
		width: 240%;
		height: auto;
		margin-left: -70%;
	}

}
/*===============================================

@media screen max-width

===============================================*/
@media screen and (max-width: 1400px){

	.charaArea .imgFull img {
		width: 200%;
		height: auto;
		margin-left: -50%;
	}

}

/*===============================================

@media screen max-width

===============================================*/
@media screen and (max-width: 1280px){

	.wrapper {
		overflow: hidden;
	}

}


/*===============================================

@media screen max-width

===============================================*/
@media screen and (max-width: 1000px){

	.pcOnly {
		display: none;
	}
	.spOnly {
		display: block;
	}

	.subImg.on::before {
		-webkit-transform: translate3d(0, 0, 1px);
		transform: translate3d(0, 0, 1px);
	  	opacity: 0;
		-webkit-transition: all 500ms;
		-moz-transition: all 500ms;
		-ms-transition: all 500ms;
		-o-transition: all 500ms;
		transition: all 500ms;
		-webkit-transition-delay:200ms;
		transition-delay:200ms;
	}

	header .chara01 {
		top: 17vw;
		left: -57vw;
	}
	header .chara02 {
		top: 23vw;
		left: 45vw;
	}
	header .chara03 {
		top: 16vw;
		left: -47vw;
	}
	header .chara04 {
		top: 24vw;
		left: 46vw;
	}
	header .chara05 {
		top: -2vw;
		left: 17vw;
	}
	header .chara06 {
		top: 91vw;
		left: 20vw;
	}
	header .chara07 {
		top: 2vw;
		left: 15vw;
	}
	header .chara08 {
		top: 1vw;
		left: 6vw;
	}
	header .chara09 {
		top: -4vw;
		left: -8vw;
	}

	header .chara01 img {
		width: 120vw;
	}
	header .chara02 img {
		width: 120vw;
	}
	header .chara03 img {
		width: 120vw;
	}
	header .chara04 img {
		width: 90vw;
	}
	header .chara05 img {
		width: 58vw;
	}
	header .chara06 img {
		width: 40vw;
	}
	header .chara07 img {
		width: 60vw;
	}
	header .chara08 img {
		width: 39vw;
	}
	header .chara09 img {
		width: 40vw;
	}
	header .chara01.on,
	header .chara02.on,
	header .chara03.on,
	header .chara04.on,
	header .chara05.on,
	header .chara06.on,
	header .chara07.on,
	header .chara08.on,
	header .chara09.on {

	}
	header .chara01.on {
		-webkit-transition-delay:550ms;
		transition-delay:550ms;
	}
	header .chara02.on {
		-webkit-transition-delay:600ms;
		transition-delay:600ms;
	}
	header .chara03.on {
		-webkit-transition-delay:250ms;
		transition-delay:250ms;
	}
	header .chara04.on {
		-webkit-transition-delay:300ms;
		transition-delay:300ms;
	}
	header .chara05.on { /* ドリル */
		-webkit-transition-delay:500ms;
		transition-delay:500ms;
	}
	header .chara06.on { /* 右下 */
		-webkit-transition-delay:400ms;
		transition-delay:400ms;
	}
	header .chara07.on { /* 右上 */
		-webkit-transition-delay:450ms;
		transition-delay:450ms;
	}
	header .chara08.on {
		-webkit-transition-delay:350ms;
		transition-delay:350ms;
	}
	header .chara09.on {
		-webkit-transition-delay:450ms;
		transition-delay:450ms;
	}


	.mode03 .bgImg::before,
	.mode03 .bgImgMono::before {
		-webkit-animation: imgPan 9s ease-in-out infinite alternate;
		animation: imgPan 9s ease-in-out infinite alternate;
		-webkit-animation-play-state: running;
		animation-play-state: running;
	}

	.logo::before {
		-webkit-background-size: auto 22vh;
		background-size: auto 22vh;
	}

	.movieArea .wrap {
		width: 100%;
	}
	.movieArea h2 {
		width: 640px;
	}
	.movieArea li {
		display: inline-block;
		width: 96%;
		margin: 2%;
	}



}

/*===============================================

@media screen max-width

===============================================*/
@media screen and (max-width: 640px){

	html{
		font-size: 100%;
		font-size: 4vw;
	}
	html * {
		-webkit-tap-highlight-color:rgba(0,0,0,0);
	}

	.fade:hover {
		filter: alpha(opacity=100);
		-moz-opacity:1;
		opacity:1;
		cursor: pointer;
	}
	.bgImg {
		background: none;
		width: 100%;
		height: 100%;
	}
	.mode01 .bgImg::before {
		content: "";
		display: block;
		position: fixed;
		top: 0;
		left: 0;
		-webkit-transform: translate3d(0, 0, -1px);
		transform: translate3d(0, 0, -1px);
		width: 100%;
		height: 100vh;
		background: url(/shironekoproject/lp/teikokusenki2/assets/img/bg_sp.jpg) center/cover no-repeat;
		-webkit-background-size: cover;
	  	z-index: 0;
	}

	.wrap {
		width: 100%;
	}

	.mode03 .bgImg::before,
	.mode03 .bgImgMono::before {
		-webkit-animation-play-state: running;
		animation-play-state: running;
	}




	.storyArea p {
		font-size: 18px;
		text-indent: 1em;
		line-height: 3;
	}

	.charaArea h2 span::before {
	    background-image: -webkit-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,.5) 20%, rgba(0,0,0,0) 20%, rgba(0,0,0,0) 80%, rgba(0,0,0,.5) 80%, rgba(0,0,0,0));
	    background-image: linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,.5) 20%, rgba(0,0,0,0) 20%, rgba(0,0,0,0) 80%, rgba(0,0,0,.5) 80%, rgba(0,0,0,0));
	}

	.charaArea .chara .flag {
		position: absolute;
		margin-top: -57%;
	}
	.charaArea .imgFull {
		overflow: hidden;
	}
	.charaArea .imgFull img {
		width: 200%;
		height: auto;
		margin-left: -50%;
	}
	.charaArea .name {
	    font-size: 8vw;
	}
	.charaArea .name::before {
	    width: 80vw;
	    top: 11vw;
	}
	.charaArea .cv {
		font-size: 5vw; 
	}
	.charaArea .cv span {
		font-size: 3.5vw;
	}

	.chartArea h2 span::before {
	    background-image: -webkit-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,.5) 18%, rgba(0,0,0,0) 18%, rgba(0,0,0,0) 82%, rgba(0,0,0,.5) 82%, rgba(0,0,0,0));
	    background-image: linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,.5) 18%, rgba(0,0,0,0) 18%, rgba(0,0,0,0) 82%, rgba(0,0,0,.5) 82%, rgba(0,0,0,0));
	}

	.movieArea .wrap {
		width: 100%;
	}
	.movieArea h2 {
		width: 100%;
	}

	footer .wrap {
		max-width: 100%;
	}
	footer .shiroLogo span::before {
	    top: 7vh;
	}


}/* /max-width */


