/* ! normalize.css v1.0.0 | MIT License | git.io/normalize */

/* ==========================================================================
HTML5 display definitions
========================================================================== */

/* IE */
@font-face {
font-family:CopaseticNF;
src: url(fonts/CopaseticNF.ttf);
}
/* Firefox, Opera, Safari */
@font-face {
font-family:CopaseticNF;
src: url(fonts/CopaseticNF.ttf) format(”truetype”);
}

/*
* Corrects `block` display not defined in IE 6/7/8/9 and Firefox 3.
*/

article, aside, details, figcaption, figure, footer, header, hgroup, nav, section, summary {
    display: block
}


/*
* Corrects `inline-block` display not defined in IE 6/7/8/9 and Firefox 3.
*/
audio, canvas, video {
    display: inline-block;
    *display: inline;
    *zoom: 1;
}

#intro .row,
.story01 .row,
.story02 .row{
	max-width: 1600px;
    margin: 0 auto;
}

/*
* Prevents modern browsers from displaying `audio` without controls.
* Remove excess height in iOS 5 devices.
*/
audio:not([controls]) {
    display: none;
    height: 0;
}

/*
* Addresses styling for `hidden` attribute not present in IE 7/8/9, Firefox 3, * and Safari 4.
* Known issue:no IE 6 support.
*/
[hidden] {
    display: none
}

header{
	height:auto;
	position:relative;
	z-index:2;
}

#loader-bg {
  display: none;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  background: #fff;
  z-index: 55555555555555;
}
#loader {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  width: 200px;
  height: 200px;
  margin-top: -100px;
  margin-left: -100px;
  text-align: center;
  color: #fff;
  z-index: 55555555555556;
}
 
 

/* ==========================================================================
Base
========================================================================== */
/*
* 1. Corrects text resizing oddly in IE 6/7 when body `font-size` is set using
*    `em` units.
* 2. Prevents iOS text size adjust after orientation change, without disabling
*    user zoom.
*/

@import url(http://fonts.googleapis.com/earlyaccess/notosansjapanese.css);

html {
    font-size: 100%; /* 1 */
    -webkit-text-size-adjust: 100%; /* 2 */
    -ms-text-size-adjust: 100%; /* 2 */
}

/*
* Addresses `font-family` inconsistency between `textarea` and other form
* elements.
*/
html, button, input, select, textarea {
    font-family: 'Noto Sans Japanese', 'Nunito', sans-serif;
	letter-spacing: 1px;
}
html, body {

    width: 100%;
	font-size:14px;
}

/*
* Addresses margins handled incorrectly in IE 6/7.
*/
body {
	margin: 0;
    font-family: 'Noto Sans Japanese', 'Nunito', sans-serif;
	background: rgb(255,255,255);
}

/*
* Font Smoothing
*/
html, html a {
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.004);
    -webkit-font-smoothing: antialiased;
	outline:none;
	text-decoration:none;
}

/* ==========================================================================
Links
========================================================================== */
/*
* Addresses `outline` inconsistency between Chrome and other browsers.
*/

a:focus {
    outline: none;
    text-decoration: none;
}

/*
* Improves readability when focused and also mouse hovered in all browsers.
*/
a:active, a:hover {
    outline: 0;
    text-decoration: none;
}


.row {
     margin-left: 0 !important; 
     margin-right: 0 !important; 
}

/* ==========================================================================
Typography
========================================================================== */
/*
* Addresses font sizes and margins set differently in IE 6/7.
* Addresses font sizes within `section` and `article` in Firefox 4+, Safari 5, * and Chrome.
*/

section,{
background: rgb(255,255,255);
}

h1 {
    margin: 0;
    font-size: 2em;
}
h2 {
    margin: 0;
    font-size: 1.2em;
}
h3 {
    margin: 0;
    font-size: 1em;
}
h4 {
    margin:0;
    font-size: 1em;
}
h5 {
    margin: 0;
    font-size: 0.83em;
}
h6 {
    margin:  0;
    font-size: 0.75em;
}

li{
	list-style: none;
}

/*
* Addresses styling not present in IE 7/8/9, Safari 5, and Chrome.
*/
abbr[title] {
    border-bottom: 1px dotted
}

/*
* Addresses style set to `bolder` in Firefox 3+, Safari 4/5, and Chrome.
*/
b, strong {
    font-weight: bold
}
blockquote {
    margin: 0px
}

/*
* Addresses styling not present in Safari 5 and Chrome.
*/
dfn {
    font-style: italic
}

/*
* Addresses styling not present in IE 6/7/8/9.
*/
mark {
    background: #ff0;
    color: #000;
}

/*
* Addresses margins set differently in IE 6/7.
*/
p, pre {
    margin: 1em 0
}

/*
* Corrects font family set oddly in IE 6, Safari 4/5, and Chrome.
*/
code, kbd, pre, samp {
    font-size: 1em;
    font-family: monospace, serif;
    _font-family: 'courier new', monospace;
}

/*
* Improves readability of pre-formatted text in all browsers.
*/
pre {
    white-space: pre;
    white-space: pre-wrap;
    word-wrap: break-word;
}

/*
* Addresses CSS quotes not supported in IE 6/7.
*/
q {
    quotes: none
}

/*
* Addresses `quotes` property not supported in Safari 4.
*/
q:before, q:after {
    content: '';
    content: none;
}
small {
    font-size: 75%;
}

/*
* Prevents `sub` and `sup` affecting `line-height` in all browsers.
*/
sub, sup {
    position: relative;
    vertical-align: baseline;
    font-size: 75%;
    line-height: 0;
}
sup {
    top: -0.5em
}
sub {
    bottom: -0.25em
}

/* ==========================================================================
Lists
========================================================================== */
/*
* Addresses margins set differently in IE 6/7.
*/

dl, menu, ol, ul {
    margin: 1em 0
}
dd {
    margin: 0 0 0 40px
}

/*
* Addresses paddings set differently in IE 6/7.
*/
menu, ol, ul {
    padding: 0
}

/*
* Corrects list images handled incorrectly in IE 7.
*/
nav ul, nav ol {
    list-style: none;
    list-style-image: none;
}

/* ==========================================================================
Embedded content
========================================================================== */
/*
* 1. Removes border when inside `a` element in IE 6/7/8/9 and Firefox 3.
* 2. Improves image quality when scaled in IE 7.
*/

img {
    border: 0; /* 1 */
    -ms-interpolation-mode: bicubic; /* 2 */
}

/*
* Corrects overflow displayed oddly in IE 9.
*/
svg:not(:root) {
    overflow: hidden
}

/* ==========================================================================
Figures
========================================================================== */
/*
* Addresses margin not present in IE 6/7/8/9, Safari 5, and Opera 11.
*/

figure {
    margin: 0
}

/* ==========================================================================
Forms
========================================================================== */
/*
* Corrects margin displayed oddly in IE 6/7.
*/

form {
    margin: 0
}

/*
* Define consistent border, margin, and padding.
*/
fieldset {
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
    border: 1px solid #c0c0c0;
}

/*
* 1. Corrects color not being inherited in IE 6/7/8/9.
* 2. Corrects text not wrapping in Firefox 3.
* 3. Corrects alignment displayed oddly in IE 6/7.
*/
legend {
    padding: 0;
    border: 0; /* 1 */
    white-space: normal; /* 2 */
    *margin-left: -7px; /* 3 */
}

/*
* 1. Corrects font size not being inherited in all browsers.
* 2. Addresses margins set differently in IE 6/7, Firefox 3+, Safari 5, *    and Chrome.
* 3. Improves appearance and consistency in all browsers.
*/
button, input, select, textarea {
    margin: 0; /* 2 */
    vertical-align: baseline; /* 3 */
    font-size: 100%; /* 1 */
    *vertical-align: middle; /* 3 */
}

/*
* Addresses Firefox 3+ setting `line-height` on `input` using ` !important` in
* the UA stylesheet.
*/
button, input {
    line-height: normal
}

/*
* 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
*    and `video` controls.
* 2. Corrects inability to style clickable `input` types in iOS.
* 3. Improves usability and consistency of cursor style between image-type
*    `input` and others.
* 4. Removes inner spacing in IE 7 without affecting normal text inputs.
*    Known issue:inner spacing remains in IE 6.
*/
button, html input[type="button"], /* 1 */
input[type="reset"], input[type="submit"] {
    cursor: pointer; /* 3 */
    -webkit-appearance: button; /* 2 */
    *overflow: visible; /* 4 */
}

/*
* Re-set default cursor for disabled elements.
*/
button[disabled], input[disabled] {
    cursor: default
}

/*
* 1. Addresses box sizing set to content-box in IE 8/9.
* 2. Removes excess padding in IE 8/9.
* 3. Removes excess padding in IE 7.
*    Known issue:excess padding remains in IE 6.
*/
input[type="checkbox"], input[type="radio"] {
    box-sizing: border-box; /* 1 */
    padding: 0; /* 2 */
    *height: 13px; /* 3 */
    *width: 13px; /* 3 */
}

/*
* 1. Addresses `appearance` set to `searchfield` in Safari 5 and Chrome.
* 2. Addresses `box-sizing` set to `border-box` in Safari 5 and Chrome
*    (include `-moz` to future-proof).
*/
input[type="search"] {
    /* 2 */
    box-sizing: content-box;
    -webkit-appearance: textfield; /* 1 */
    nowhitespace: afterproperty;
}

/*
* Removes inner padding and search cancel button in Safari 5 and Chrome
* on OS X.
*/
input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none
}

/*
* Removes inner padding and border in Firefox 3+.
*/
button::-moz-focus-inner, input::-moz-focus-inner {
    padding: 0;
    border: 0;
}

/*
* 1. Removes default vertical scrollbar in IE 6/7/8/9.
* 2. Improves readability and alignment in all browsers.
*/
textarea {
    overflow: auto; /* 1 */
    vertical-align: top; /* 2 */
}

/* ==========================================================================
Tables
========================================================================== */
/*
* Remove most spacing between table cells.
*/

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

/* ==========================================================================
Global Styles
========================================================================== */
.group:after {
    content: "";
    display: table;
    clear: both;
}
a {
    -webkit-transition-timing-function: ease-in-out;
    transition-timing-function: ease-in-out;
    -webkit-transition-duration: 300ms;
    transition-duration: 300ms;
    -webkit-transition-property: color, border-color, background-color;
    transition-property: color, border-color, background-color;
	word-break: break-all;
}
.nopadding {
    margin: 0 !important;
    padding: 0 !important;
}
p {
    line-height: 1.6em;
}
a {
	transition:0.5s; color: rgb(67, 135, 233); -webkit-transition: all 0.5s; -moz-transition: all 0.5s; -o-transition: all 0.5s;
}
a:hover {
	color: rgb(67, 135, 233); text-decoration: none; text-decoration: underline;
}
a:focus {
	color: rgb(255, 255, 255); text-decoration: none;
}
.texture-overlay {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background-image: url(../img/grid.png);
}

.conts{
	max-width:1580px;
}

/* ==========================================================================
Navigation
========================================================================== */

.nav-toggle:focus {
	
}
.nav-toggle span {
	border-radius: 1px; width: 50px; height: 5px; display: block; position: absolute; cursor: pointer; content: "";
	}
.nav-toggle span::before {
	
}
.nav-toggle span::after {
	
}


.nav-toggle span {
	
}
.nav-toggle span::before {
	
}
.nav-toggle span::after {
	
}
.active.nav-toggle span {
	
}
.active.nav-toggle span::before {
	top: 0px;
}

.navicon {
    position: relative;
    height: 26px;
}
.navicon p {
    margin: 1px 50px 0 0;
}
.navicon-fixed {
    position: fixed;
    top: 59px;
    right: 143px;
}

.li_mov{
	opacity:0.4;
}

#home {
    width: 100%;
    height: 100%;
}


/* ==========================================================================
Buttons
========================================================================== */
.use-btn {
	width: 100%;
	height: auto;
	display: block;
    display: inline-block;
    /*margin: 0 10px 10px 0;*/
    padding: 18px 0;
    border-radius: 3px;
    background: rgba(255,255,255,0.6);
    color: #371e13;
    font-size: 14px;
	font-family: 'Mallanna', sans-serif;
	letter-spacing: 0.1em;
	border:2px solid #fff;
}

.use-btn:hover, .use-btn:focus {
	width: 100%;
	height: auto;
	display: block;
    background: none;
    color: #fff;
    text-decoration: none;
}

.learn-btn, .download-btn {
	width: 100%;
	height: auto;
	display: block;
    padding: 18px 0;
    border: 2px solid #fff;
    border-radius: 3px;
    color: #fff;
    font-size: 14px;
	font-family: 'Mallanna', sans-serif;
	letter-spacing: 0.1em;
}

.learn-btn:hover,.learn-btn:focus {
    color: #fff100;
	border-color:#fff100;
    text-decoration: none;
}

.read-more-btn {
    display: inline-block;
    color: #311436;
    text-transform: uppercase;
    font-weight: 400;
}
.read-more-btn i, .download-btn i {
    margin-left: 5px;
	color:#fff;
	font-size:1.3em;
}
.showcase .download-btn {
    margin-top: 50px
}
.download .download-btn {
    margin-top: 25px
}



/* ==========================================================================
Hero
========================================================================== */

.hero {
    position: relative;
    padding: 0 0 0 0;
    color: #FFF;
	background:#000;
}

.hero .container {
	top: 10%;
	position: relative;
	width:auto;
	margin:0;
	padding:0;
}
.hero a.nav-toggle {
	font-family: 'Mallanna', sans-serif;
	letter-spacing: 0.1em;
}
.hero .col-md-6 {
	float: right;
	text-align: right;
}

.hero .icon_i{
	position:absolute;
    top: 60px;
    left: 10px;
    width: 47px;
}

.hero .icon_i img{
	width:100%;
	display:block;
	border-radius: 50%;	
	box-shadow: 0px 0px 15px rgba(0,0,0,0.4);
}

.hero .icon_i:hover{
	opacity:0.7;
}

.images{
	width:100%;
	margin:0 auto;
	padding:0;
	position:relative;
}

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

/*賞*/
.hero img.mov01{
	width: 100%;
	height: auto;
	position:absolute;
	top:2%;
	left:0;
	opacity:0;
	transition-duration:1s;
	transition-delay:2.4s;
}

/*３行コピー*/
.hero img.mov02{
	width: 100%;
	height: auto;
	position:absolute;
	top:-2%;
	left:0;
	opacity:0;
	transition-duration:0.9s;
	transition-delay:2.4s;
}

/*タイトル*/
.hero img.mov03{
	width: 100%;
	height: auto;
	position:absolute;
	top:-4%;
	left:0;
	opacity:0;
	transition-duration:2s;
	transition-delay:0.4s;
}

.hero h2 {
	margin: auto; left: 0px; top: 45%; width: 500px; height: auto; text-align: center; right: 0px; color: rgb(113, 21, 133); position: absolute;
}
.hero a.inst {
	margin: 0px; width: 100%; height: auto; text-align: center; display: block; position: relative;
}
.hero a.inst span {
	margin: 0px; padding: 25px 0px; transition:0.5s; top: 0px; width: 100%; text-align: center; color: rgb(255, 255, 255); font-size: 14px; vertical-align: middle; display: block; position: absolute; opacity: 0; -webkit-transition: all 0.5s; -moz-transition: all 0.5s; -o-transition: all 0.5s;
}
.hero a.inst:hover {
	
}
.hero a.inst:hover span {
	color: rgb(255, 255, 255); opacity: 1;
}

.hero .col-md-6.navicon {
	float: left;
	text-align: left;
	position: fixed;
	top: 30px;
	left: 15px;
	z-index: 99;
}
.hero .nav-toggle {
	right: initial;
	left: 15px;
}
.hero .navicon p {
        margin: 27px 0 0 -7px;
}

.sns_icon i {
	position:relative;
    top: 4px;
}

.hero a.sns_icon:hover{
	color:#00aced ;
	background: rgba(255,255,255,1.00);
}
.hero .col-md-6.navicon {
	float: left;
	text-align: left;
	position: fixed;
	top: 30px;
	left: 15px;
	z-index: 9999999999;
}

.hero .switch{
	position:relative;
}



/* ==========================================================================
grnv
========================================================================== */

.grnv i {
    margin-left: 8px;
	/*color:#053e7d;*/
}

/*.grnv .about i {
	color:#fff;
}
*/
.menu{
	text-align:center;
}

.grnv ul {
	width: 100%;
	height: auto;
	overflow: hidden;
	margin:0 auto;
	padding:3.5% 0;
	text-align:center;
	
}

.grnv02 ul {
	width: 100%;
	height: auto;
	overflow: hidden;
	margin:0 auto;
	text-align:center;
}


.grnv{
	/*background:#fff43a;*/
	margin:0;
	padding:0;
	position:relative;
	text-align:center;
	background: #711585;
	background: -moz-linear-gradient(left, #711585 0%, #341f87 100%);
	background: -webkit-linear-gradient(left, #711585 0%,#341f87 100%);
	background: linear-gradient(to right, #711585 0%,#341f87 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#711585', endColorstr='#341f87',GradientType=1 );
	padding-top: 8%;
}


.grnv02{
	/*background:#fff43a;*/
	margin:0;
	padding:0;
	position:relative;
	z-index:2;
	text-align:center;
}


.grnv img{
	margin:0;
	padding:0;
	widows:20%;
	max-width:330px;
}

.grnv_banner{
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.grnv_banner:hover{
	opacity:0.8;
}

.grnv ul li {
	width: 20%;
	height: auto;
	overflow: hidden;
	margin: 0 0.5% 0 0;
	list-style: none;
	float: none !important;
	max-width:165px;
	display:inline-block !important;
	
}



.grnv ul li.director {
	width: 100%;
	height: auto;
	overflow: hidden;
	margin: 0 0.5% 0 0;
	list-style: none;
	float: none;
	max-width:9999px !important;
	display:inline-block;
	background:none;
	
}

.sns {
    width: 50%;
    margin: 10px auto 0 auto;
    display: block;
    position: relative;
    z-index: 9;
}

.sns li {
    display: inline-block;
    margin: 0;
    padding: 0;
    position: relative;
    z-index: 10;
}

.sns li:last-child {
    top: 4px;
}

.sns li:first-child {
    top: 4px;
}


.sns li {
    width: auto;
    height: auto;
    overflow: hidden;
    margin: 0 0.5% 0 0;
    list-style: none;
    float: none;
    max-width: inherit;
    display: inline-block;
}


.grnv a.banners{
	width:200px;
	display:block;
	margin:0 auto;
	padding:5px;
	background:#fff;
}

.grnv a.banners:hover{
	opacity:0.8;
}


/* ==========================================================================
comment
========================================================================== */

.comment{
	margin: 0;
	padding: 0;
	background: rgb(255, 255, 255);
	position: relative;
}


.comment .bg_b,
.comment .bg_p{
	margin: 0;
	padding: 0;
	position: absolute;
	left: 0;
	width: 100%;
	height: 100%;
}

.comment .bg_b{
	background:url(intro_bg_1_sp.jpg) #000;
	background-position: top center;
	background-size: cover;
	position: absolute;
	top:0;
}

.comment .bg_p{
	background:url(intro_bg_3_sp.jpg) #000;
	background-position: top center;
	background-size: cover;
	position: absolute;
	top:0;
}



.comment .conts{
	width: 85%;
	margin: 0 auto;
	padding: 4% 0;
	position: relative;
	z-index: 1;
}

.comment h2{
	margin: 0 auto;
	padding: 0;
}

.comment h3{
	margin: 0 auto;
	padding: 0;
	margin-top:0%;
    margin-bottom: 20%;
}
.comment p {
	margin: auto; padding: 0px; left: 0px; width: 60%; right: 0px; bottom: 3%; color: rgb(0, 0, 0); display: block; position: relative;
}



.intro{
	margin: 0;
	padding: 0;
	background: #000;
	position: relative;
	background:#fff;
	background-size: cover;
}

.intro  .conts{
	width: 85%;
	margin: 0 auto;
	padding:15% 0;
}


.intro  p{
	width: 100%;
	margin: 0%  auto;
	padding: 0;
	position: relative;
}

.intro p span{
	width: 4em;
	height: 3px;
	background: #000;
	display: block;
	margin: 0 ;
	padding:0;
	top:-8px;
	left: 0;
	position: absolute;
}

.story{
	margin: 0;
	padding:0 0 0% 0;
	position: relative;
	background: rgb(255,255,255);
	background-size:auto 100% ;
}

.story p{
	margin: 0;
	padding: 0;
	width: 85%;
	display: block;
	margin:0 auto;
	color: #c7b299;
	margin-top:-12%;
	font-weight: bold;
}

.story .story_img01 {
	margin: 0px; padding: 0px; width: 50%; float: left; display: block;
}
.story .story_img02 {
	margin: 0px; padding: 0px; width: 50%; float: left; display: block;
}
.story .story_img01 img {
	margin: 0px; padding: 0px; width: 100%; display: block;
}
.story .story_img02 img {
	margin: 0px; padding: 0px; width: 100%; display: block;
}
.story .story_img01 img {
	margin: 0px; padding: 0px; width: 82.48%; display: block;
}
.story .new {
	margin: 0px; padding: 0px; left: 55%; width: 0%; right: 0%; bottom: 51%; color: rgb(255, 0, 0); display: block; position: absolute;
}
.story .recommend {
	margin: 0px; padding: 0px; left: 57%; width: 0%; right: 0px; bottom: 35%; color: rgb(255, 0, 0); display: block; position: absolute;
}
.story .popular {
	margin: 0px; padding: 0px; left: 57%; width: 0%; right: 0px; bottom: 13%; color: rgb(255, 0, 0); display: block; position: absolute;
}

.note{
	margin: 0;
	padding: 0;
	position: relative;
	background:#000;
}

.note img{
	margin: 0;
	padding: 0;
	display: block;
	width: 100%;
}

.note .relative{
margin: 0;
padding: 0;
display: block;
position: relative;
}

.note h2{
    margin: auto;
    padding: 0;
    position: absolute;
    top: 40.8%;
    left: 5.5%;
    width: 63.4%;
    vertical-align: middle;
}

.note .note_list{
	margin: 0 auto;
	padding:0;
}

.note .note_list dl{
	margin: 0;
	padding:0;
}

.note .note_list dt{
	margin: 0;
	padding:0;
}

.note .note_list dd{
	margin: 10% 7.5%; 
	padding:0;
}


.note .note_list dd.ye{
color: #e8e805;
}

.note .note_list dd.pi{
color: #ff046a;
}






/* ==========================================================================
cast staff
========================================================================== */

#cast {
    padding: 0;
    background: rgb(255,255,255);
}


#cast .conts{
	margin: 0 auto;
	width: 85%;
	padding: 0;
	position: relative;
}

#cast h2 {
    margin: 0;
    font-size: 1.5em;
    position: absolute;
    top: 5%;
}

#cast h2 img{
	width:100%;
}

#cast .cast_contsLeft{
	width:30%;
	margin:0;
	padding:0;
	float:left;
}

#cast .cast_contsRight{
	width:30%;
	margin:0;
	padding:0;
	float:right;
}

#cast .cast_dit{
	width:100%;
	margin:0 0 20% 0;
	padding:0;
	position:relative;
}

#cast .cast01{
	width:70%;
	margin:0 auto;
	padding:0;
	margin-top: 0%;
}

#cast .cast01 dd{
	width:40%;
	margin:0 auto;
	padding:0;
	position:relative;
}


#cast .cast_contsLeft dt{
	width:24%;
	margin:0 5% 0 0;
	padding:0;
	float: left;
	position:relative;
}

#cast .cast_contsLeft dd{
	width:55%;
	margin:0;
	padding:0;
	float: left;
	position:relative;
}


#cast .cast_contsRight dt{
	width:24%;
	margin:0 0 0 5% ;
	padding:0;
	float: right;
	position:relative;
	overflow: hidden;
}


#cast dt a{
	margin:0;
	padding:0;
	width: 100%;
	position:relative;
	display: block;
	overflow: hidden;
}

#cast dt a img{
	display: block;
    transition: transform 0.4s linear;
}

#cast dt a:hover img{
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -o-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2);
}


#cast .cast_contsRight dd{
	width:55%;
	margin:0;
	padding:0;
	float: right;
	position:relative;
}


#cast .cast_dit dt img,
#cast .cast_dit dd img{
	width:100%;
	margin:0 10px 0 0;
	padding:0;
	display: block;
}







.staff{
	margin: 0;
	padding:0 0 8% 0;
	position: relative;
	background: rgb(255,255,255);
	background-size: cover;
	background-position:top left;
	background-attachment: fixed;
}

.staff .conts{
	margin:0 auto;
	width: 100%;
	padding: 0;
	position: relative;
}

.staff h2{
	margin:0 auto;
	padding: 0;
}

.staff img{
	margin:0 auto;
	width: 100%;
	padding: 0;
	display: block;
}

.staff ul{
	margin:5% 0 0% 0;
	padding: 0;
	display: block;
}


.staff li{
	margin:0;
	width: 32%;
	padding: 0;
	display: block;
	float: left;
}

.staff li:nth-child(2){
	margin:0% 0;
}

.staff p {
	margin: auto; padding: 0px; left: 0px; width: 45%; right: 0px; bottom: 3%; color: rgb(0, 0, 0); display: block; position: relative;
}

.ed{
	margin: 0;
	padding:0% 10%;
	position: relative;
	background: none;
	background: rgb(255,255,255);
}

.ed_img{
	margin: 0;
	padding: 0;
	position: absolute;
	left: 0;
	width: 100%;
	height: 100%;
}

.ed_img{
	background:url(bland_bg_sp.jpg) #000;
	background-position: top center;
	background-size: cover;
	position: absolute;
	top:0;
}
.ed .conts{
	width: 50%;
	margin: 0 auto;
	padding: 5% 0;
	position: relative;
	z-index: 1;
}





#cast .feature-icon {
	width: 48%;
	margin: 0 5% 0 0;
    display: inline-block;
    height: auto;
	vertical-align: bottom;
	float: none;
}

#cast .cast_contsLeft .feature-content {
    display: inline-block;
    margin-left: 0;
    width: 47%;
	float: none;
	vertical-align: bottom;
}

#cast .cast_contsRight .feature-content {
    display: inline-block;
    margin-left: 0;
    width: 47%;
	float: none;
	vertical-align: bottom;
	position:absolute;
	bottom:0;
	left:0;
	text-align:left;
}










/*#staff .feature-icon {
	width: 100%;
	margin: 0;
    display: inline-block;
    height: auto;
	float: left;
}*/

/*.close_button{
	margin:50px 0 0 0;
	display:block;
	width:25px;
}

.css-cancel{
    display: inline-block;
    position: relative;
    margin: 0 20px 0 7px;
    padding: 0;
    width: 4px;
    height: 30px;
    background: #000;
    transform: rotate(45deg);
}
.css-cancel:before{
    display: block;
    content: "";
    position: absolute;
    top: 62%;
    left: -13px;
    width: 30px;
    height: 4px;
    margin-top: -6px;
    background: #000;
}*/















/* ==========================================================================
Features Slider
========================================================================== */

/*-------------------------------*/

.features-slider ul {
    margin: 0;
    padding: 0;
    list-style: none;
}
.features-slider ul li {
    width: 100%;
}
.features-slider h3 {
    color: #EEE;
    font-weight: 400;
    font-size: 18px;
	margin: 0;
	line-height: 1.5em;
}

.features-slider li p {
    color: #fff;
    font-size: 14px;
	margin: 0 auto;
	line-height:1.75em;
	padding: 30px 0 0 0;
	text-align:left;
	font-weight:700;
}
.features-intro-img {
    position: relative
}
.slides li h1 {
    margin: 0;
    padding: 0;
}
.slides li h1 span {
	font-size: 11px;
	padding: 0 0 0 20px;
}
.features-slider .flickity-page-dots {
    text-align: left;
    margin-top: 30px;
    position: static;
}

.features-slider .flickity-page-dots .dot {
    margin: 0 12px 0 0;
}

/* ==========================================================================
Custom Slider Controls (Flickity)
========================================================================== */
.flickity-page-dots .dot {
    width: 25px;
    height: 25px;
    opacity: 1;
    background: none;
    border: 2px solid #bfd2ce;
    -webkit-transition: background 0.3s;
    transition: background 0.3s;
	position: relative;
}
.flickity-page-dots .dot.is-selected {
    background: #bfd2ce;
}


.flickity-page-dots li:before {
    width: 22px;
	line-height: 22px;
	text-align: center;
	position: absolute;
	font-size: 11px;
	color: #bfd2ce;
}

.flickity-page-dots li:first-child:before {
	content: "1";
}
.flickity-page-dots li:nth-child(2):before {
	content: "2";
}
.flickity-page-dots li:nth-child(3):before {
	content: "3";
}
.flickity-page-dots li:nth-child(4):before {
	content: "4";
}
.flickity-page-dots li:nth-child(5):before {
	content: "5";
}
.flickity-page-dots li.is-selected:before {
	color: #fff;
}


/* ==========================================================================
news
========================================================================== */
body.news {
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#fffbcc+0,8bd0c0+91,8bd0c0+100 */
	background: #711585;
	background: -moz-linear-gradient(left, #711585 0%, #341f87 100%);
	background: -webkit-linear-gradient(left, #711585 0%,#341f87 100%);
	background: linear-gradient(to right, #711585 0%,#341f87 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#711585', endColorstr='#341f87',GradientType=1 );
    /*background-size: cover;
	background-attachment:fixed;*/
}

.news .fix{
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100%;
	z-index:-1;	
    background: url(../img/news_bg.jpg) no-repeat center top;
    background-size: cover;
}

body.news .container {
	width: 100%;
    padding: 0 5%;
	max-width:1000px;
	margin:0 auto;
}
.news h1 {
	font-family: 'Abril Fatface', cursive;
    letter-spacing: 2px;
	font-size: 26px;
	font-weight: normal;
    margin-bottom: 20px;
    color: #fff;
	margin: 30px 0 0 0;
	border-bottom: #fff solid 1px;
	padding-bottom:10px;
}
.news h1 span {
	font-size: 13px;
	padding: 0 0 0 20px;
}
.news a {
    color: #ff6d6d;
}

.news a.txt {
	text-decoration:underline;
}

.news a:hover {
    color: #e60012;
}
.news dl {
	width: 100%;
	height:auto;
	margin: 0;
	padding: 30px 0;
	border-bottom: #fff dotted 1px;
	color:#fff;
}

.news dl:nth-last-of-type(1) {
	border-bottom: none;
}


.news dl dt {
	font-size: 16px;
	font-weight: bold;
	line-height: 1.5em;
	margin: 0;
	padding: 30px 0 20px 0;
    color: #fff;
}
.news dl dt:first-child {
	padding: 0 0 20px 0;
}
.news dl dt span {
	font-size: 13px;
	font-weight: 200;
	display: block;
	padding: 0 0 10px 0;
	float: right;
	color:#fff;
	font-family: 'Abril Fatface', cursive;
}
.news dl dd {
	font-size: 14px;
	line-height:1.8em;
	margin: 0;
}
.news dl dd:last-child {
	border-bottom: none;
}

.news dd span{
	color:#005a78;
}


.img_box{
	width:100%;
	margin:0 auto;
}

.img_logo{
	float:left;
	margin-left:25px;
}

.img_poster{
	float:left;
	margin-left:25px;
}

.news img {
	width:100%;
	max-width:600px;
	height:auto !important;
}

.news img.size_s {
	max-width:400px;
}

.news img.size_ss {
	width: auto;
	height:3em !important;
	vertical-align:bottom;
}


/* ==========================================================================
cast popup
========================================================================== */
body.cast {
	background: url(../img/grid.png) left top repeat;
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#fffbcc+0,8bd0c0+91,8bd0c0+100 */
	background: #fff; /* Old browsers */
}
body.cast .container {
	width: 100%;
	height: auto;
    padding: 50px 5% 50px 5%;
}
body.cast h1 {
	font-family: 'Teko', sans-serif;
	font-size: 26px;
	font-weight: 400;
    margin-bottom: 20px;
    color: #000;
	margin: 0 0 10px 0;
}
body.cast h1 span {
	display: block;
	padding: 5px 0 0 0;
	font-size: 18px;
}
body.cast .col-md-12 img {
	width: 180px;
	height: auto;
	float: right;
}
body.cast p {
	font-size: 12px;
	line-height: 1.5em;
	letter-spacing: 0;
    color: #005a78;
	margin: 0 0 20px 0;
}
body.cast p.conts {
	font-size: 14px;
	line-height: 1.5em;
	letter-spacing: 0;
    color: #464646;
	margin: 0 200px 0 0;
}

/* ==========================================================================
staff popup
========================================================================== */
body.staff {
	background: url(../img/grid.png) left top repeat;
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#fffbcc+0,8bd0c0+91,8bd0c0+100 */
	background: #8bd0c0; /* Old browsers */
	background: -moz-linear-gradient(left,  #fffbcc 0%, #8bd0c0 91%, #8bd0c0 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left,  #fffbcc 0%,#8bd0c0 91%,#8bd0c0 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right,  #fffbcc 0%,#8bd0c0 91%,#8bd0c0 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fffbcc', endColorstr='#8bd0c0',GradientType=1 ); /* IE6-9 */
}
body.staff .container {
	width: 100%;
	height: auto;
    padding: 0 5% 50px 5%;
}
body.staff h1 {
	font-family: 'Josefin Sans', sans-serif;
	font-style:italic;
	font-size: 26px;
	font-weight: 600;
    margin-bottom: 20px;
    color: #16101D;
	margin: 50px 0 10px 0;
}
body.staff h1 span {
	display: block;
	padding: 5px 10px 0 0;
	font-size: 18px;
	float: left;
}
body.staff .col-md-12 img {
	width: 180px;
	height: auto;
	float: right;
}
body.staff p {
	font-size: 12px;
	line-height: 1.5em;
	letter-spacing: 0;
    color: #005a78;
	margin: 0 0 20px 0;
}
body.staff p.conts {
	font-size: 14px;
	line-height: 1.5em;
	letter-spacing: 0;
    color: #464646;
}


/* ==========================================================================
Footer
========================================================================== */
footer {
	margin: -1.2% 0 0 0;
    padding: 0px 5% 20px 5%;
	background: rgb(13, 66, 37) ;
}
footer p {
    color: #fff;
    font-size: 11px;
}
footer .col-md-7, footer .col-md-5 {
	width: 100%;
	text-align: center;
}
footer h1 {
	width: 100%;
	margin: 0;
}
footer h2{
	margin:0 auto;
	width: 90%;
	height: auto;
	max-width:1250px;
}

footer h2 img {
	margin:0 auto;
	width: 100%;
	height: auto;
}


footer ul li, footer h1 a {
	opacity: 1;
	-moz-transition: .5s;
	-webkit-transition: .5s;
	-o-transition: .5s;
	-ms-transition: .5s;
	transition: .5s;
}
footer ul li:hover, footer h1 a:hover {
	opacity: 0.7;
}
footer ul.snsnavi {
	width: 100%;
	height: auto;
	margin: 30px 0 0 0;
	text-align: center;
}
footer ul.snsnavi li {
	display: inline;
	margin: 0;
	padding:  0 5px;
}

footer ul.bannernav {
	width: 100%;
	height: auto;
	margin: 30px 0 0 0;
	text-align: center;
}
footer ul.bannernav li {
	display: inline;
	margin: 0;
	padding:  0 5px;	
}

footer ul.corpnavi {
	width: 100%;
	height: auto;
	margin: 30px 0 0 0;
	text-align: center;
}
footer ul.corpnavi li {
	display: inline;
	margin: 0;
	padding:  0 5px;	
}

footer ul.corpnavi li a {
	font-size: 11px;
	color: #fff;
	font-family: "メイリオ", sans-serif;
}
footer ul.corpnavi li:before {
	content: ">";
	color: #fff;
	padding: 0 5px 0 0;
}
footer .footer-logo {
	width: 80px;
	height: auto;
	display: block;
	margin: 0 auto;
}
footer .footer-logo img {
	width: 100%;
	height: auto;
}

.margin_check{
	margin-top:50px;
}

.banner{
	text-align:center;
	margin-top:25px;
}

.banner li{
	display:inline-block;
	height:50px;
	margin:0;
	padding:0;
}

.banner li img{
	display:block;
	height:100%;
}

/* ==========================================================================
Nav Overlay
========================================================================== */
/* Overlay style */

.overlay {
	background: url("../img/fancybox_overlay.png") left top; left: 0px; top: 0px; width: 100%; height: 100%; position: fixed; z-index: 9999999;
}

/* Menu style */
.overlay nav {
	top: 50%; height: 60%; text-align: center; font-size: 54px; position: relative; transform: translateY(-50%); -webkit-transform: translateY(-50%);
}
.overlay ul {
	width: 90%;
    position: relative;
    display: inline-block;
    margin: 0 auto;
    padding: 0;
    list-style: none;
}
.overlay ul li {
	width: 18.4%;
	height: auto;
    display: block;
    float: left;
    margin: 0 2% 2% 0;
}
.overlay ul li:nth-child(5), .overlay ul li:nth-child(10), .overlay ul li:nth-child(15) {
    margin: 0 0 2% 0;
}
.overlay ul li i {
    display: block;
    margin-bottom: 10px;
    font-size: 40px;
}
.overlay ul li a {
	padding: 15px 0px; border-radius: 3px; border: 1px solid rgb(0, 0, 0,); transition:300ms ease-in-out; border-image: none; width: 100%; color: rgb(63, 56, 53); text-transform: uppercase; letter-spacing: 0.1em; font-family: "Mallanna", "Noto Sans Japanese", sans-serif; font-size: 14px; font-weight: 400; display: block; min-width: 150px; background-color: rgba(255, 255, 255, 0.5); -webkit-transition: all 300ms ease-in-out;
}
.overlay ul li a:hover, .overlay ul li a:focus {
    color: #e60012;
}
.overlay ul li a i {
	font-size: 20px;
	float: left;
	padding: 0 10px 0 0;
}
.overlay ul.icon li a {
	background: none; padding: 20px 0px; border-radius: 3px; border: currentColor; transition:300ms ease-in-out; border-image: none; text-align: left; color: rgb(255, 255, 255); text-transform: uppercase; letter-spacing: 0.1em; font-family: "Mallanna", "Noto Sans Japanese", sans-serif; font-size: 14px; font-weight: 400; display: block; min-width: 190px; -webkit-transition: all 300ms ease-in-out;
}
.overlay ul.icon li a:hover, .overlay ul.icon li a:focus {
    color: #00a36d;
}


.overlay li img{
	height:15px;
	padding-right:10px;
	vertical-align:middle;
	
}


/* Effects */
.overlay-boxify {
    visibility: hidden;
    opacity: 0;
    -webkit-transition: opacity 0.5s, visibility 0s 0.5s;
    transition: opacity 0.5s, visibility 0s 0.5s;
}
.overlay-boxify.open {
    visibility: visible;
    opacity: 1;
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s;
}
.overlay-boxify nav ul li {
    opacity: 0;
    -webkit-transform: translate3d(0, -80px, 0);
    transform: translate3d(0, -80px, 0);
    -webkit-transition: -webkit-transform 0.5s, opacity 0.5s;
    transition: transform 0.5s, opacity 0.5s;
}
.overlay-boxify.open nav ul:first-child li:first-child {
    -webkit-transition-delay: 0.05s;
    transition-delay: 0.05s;
}
.overlay-boxify.open nav ul:first-child li:nth-child(2) {
    -webkit-transition-delay: 0.1s;
    transition-delay: 0.1s;
}
.overlay-boxify.open nav ul:first-child li:nth-child(3) {
    -webkit-transition-delay: 0.15s;
    transition-delay: 0.15s;
}
.overlay-boxify.open nav ul:first-child li:nth-child(4) {
    -webkit-transition-delay: 0.2s;
    transition-delay: 0.2s;
}
.overlay-boxify.open nav ul:first-child li:nth-child(5) {
    -webkit-transition-delay: 0.25s;
    transition-delay: 0.25s;
}
.overlay-boxify.open nav ul:first-child li:nth-child(6) {
    -webkit-transition-delay: 0.3s;
    transition-delay: 0.3s;
}
.overlay-boxify.open nav ul:first-child li:nth-child(7) {
    -webkit-transition-delay: 0.35s;
    transition-delay: 0.35s;
}
.overlay-boxify.open nav ul:first-child li:nth-child(8) {
    -webkit-transition-delay: 0.4s;
    transition-delay: 0.4s;
}
.overlay-boxify.open nav ul:first-child li:nth-child(9) {
    -webkit-transition-delay: 0.45s;
    transition-delay: 0.45s;
}

.overlay-boxify.open nav ul:nth-child(2) li:first-child {
    -webkit-transition-delay: 0.15s;
    transition-delay: 0.15s;
}
.overlay-boxify.open nav ul:nth-child(2) li:nth-child(2) {
    -webkit-transition-delay: 0.2s;
    transition-delay: 0.2s;
}
.overlay-boxify.open nav ul:nth-child(2) li:nth-child(3) {
    -webkit-transition-delay: 0.25s;
    transition-delay: 0.25s;
}
.overlay-boxify.open nav ul:nth-child(2) li:nth-child(4) {
    -webkit-transition-delay: 0.3s;
    transition-delay: 0.3s;
}
.overlay-boxify.open nav ul:nth-child(2) li:nth-child(5) {
    -webkit-transition-delay: 0.35s;
    transition-delay: 0.35s;
}
.overlay-boxify.open nav ul:nth-child(2) li:nth-child(6) {
    -webkit-transition-delay: 0.4s;
    transition-delay: 0.4s;
}

.overlay-boxify.open nav ul li {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}

/* ----------------------------------------------------------------
	aporo
-----------------------------------------------------------------*/

.effect-apollo {
	display:block;
	position:relative;
	overflow:hidden;
	padding:0;
}

.effect-apollo figcaption::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(255,255,255,0.5);
	content: '';
	-webkit-transition: -webkit-transform 0.5s;
	transition: transform 0.5s;
	-webkit-transform: scale3d(1.4,1.4,1) rotate3d(0,0,1,45deg) translate3d(0,-100.5%,0);
	transform: scale3d(1.4,1.4,1) rotate3d(0,0,1,45deg) translate3d(0,-100.5%,0);
}


.effect-apollo:hover figcaption::before {
	-webkit-transform:  scale3d(1.4,1.4,1) rotate3d(0,0,1,45deg) translate3d(0,100.5%,0);
	transform:  scale3d(1.4,1.4,1) rotate3d(0,0,1,45deg) translate3d(0,100.5%,0);
}




@media screen and (min-width: 600px){
	.magin_top{
	margin-top:-125px;
}

}

@media screen and (min-width: 600px) and (min-width:800px){
	.ba_online{
	margin-left:-75px;
}

}

@media screen and (max-width: 600px){
	
	.magin_top{
		margin-top:-35px;
	}
	
	.box{
		width:100%;
		margin:0 auto;
		text-align:center;
	}
	
	.ba_fil{
		width:100%;
		float:left;
		margin-top:20px;
		margin-bottom:40px;
		margin-left:15px;
	}
	
	.ba_online{
		width:100%;
		float:left;
		margin:0 auto;
		position: relative;
		z-index: 3;
	}
	
}


/*.on{
	display:none;
}

.off{
	display:block;
}*/

@media screen and (max-width:1200px){
/*	
	.on{
		display:block;
	}
	
	.off{
		display:none;
	}
*/	
}

.li_img{
	background:url(../img/button01.png) no-repeat;
	background-size:cover;
}

.li_img02{
	background:url(../img/button02.png) no-repeat;
	background-size:cover;
}


.li_img a,
.li_img02 a
{
	padding: 18px 0;
}

.clearfix:after {
  content: ".";  /* 新しいコンテンツ */
  display: block;
  clear: both;
  height: 0;
  visibility: hidden; /* 非表示に */
}

.clearfix {
  min-height: 1px;
}

* html .clearfix {
  height: 1px;
  /*¥*//*/
  height: auto;
  overflow: hidden;
  /**/
}

