@charset "UTF-8";
/****************************************
header
*****************************************/
.site-header{
	background: rgba(0,0,0,1);
	padding: 10px 20px;
	position: fixed;
	top: 0;
	transition: .5s;
	width: 100%;
	z-index: 999;
	height:75px;
}

.site-logo__img{
	height: auto;
	width: 245px;
	padding-top:10px;
	float:left;
}


/****************************************
footer
*****************************************/
.site-footer{
	background: #333;
	color: #fff;
	padding-top:50px;
	padding-bottom:10px;
	font-size:16px;
	width:100%;
}
.site-footer .footmn{
	width:1200px;
	margin:0 auto;
}
.footer-logo{
width:48%;
float:left;
}
.footer-nav{
width:48%;
float:right;
}
@media only screen and (max-width: 1200px){
.site-footer .footmn{
	width:100%;
}
}

@media only screen and (max-width: 800px){
.footer-logo{
width:94%;
float:none;
margin:10px auto;
}
.footer-nav{
width:94%;
float:none;
margin:10px auto;
}
}
.copyright{
width:90%;
margin:15px auto 0 auto;
text-align:center;
font-size:15px;
}
/****************************************
contents
*****************************************/
.hero{
	overflow: hidden;
	padding-top:78px;
	width:100%;
	height:calc(100vh);
}

.hero_sp{
display:none;
}

@media only screen and (max-width: 1550px){
.hero{
display:none;
}
.hero_sp{
display:block;
}
}

.hero__img{
	height: auto;
	width: 100%;
}

.top_mv_scroll{
	display:block;
	position:absolute;
	bottom:30px;
	left:50%;
	margin-left:-17px;
	z-index:998;
}

.anchor{
margin-top:-105px;
padding-top:105px;
}

.note{
margin-top:65px;
padding-top:65px;
}

.page-title{
	text-align: center;
	padding: 35px 0 20px 0
}

.page-title__title{
	color: #333;
	font-size: 40px;
	font-weight: 500;
	line-height: 1.4;
	margin-bottom: 40px;
	letter-spacing:0.1em;
}

.flag:before{
  width: 60px;
  height: 40px;
  background: url("../images/flag_l.png") no-repeat center center;
  content: url(../images/flag_l.png);
  display: inline-block;
}


.flag:after{
  width: 60px;
  height: 40px;
  background: url("../images/flag_r.png") no-repeat center center;
  content: url(../images/flag_r.png);
  display: inline-block;
}

.name:before{
  width: 40px;
  height: 40px;
  background: url("../images/nau_l.png") no-repeat center center;
  content: url(../images/nau_l.png);
  display: inline-block;
}


.name:after{
  width: 40px;
  height: 40px;
  background: url("../images/nau_r.png") no-repeat center center;
  content: url(../images/nau_r.png);
  display: inline-block;
}

@media only screen and (max-width: 900px){
.page-title__title{
	font-size: 26px;
	line-height: 1.7;
	letter-spacing:0;
	margin-bottom: 10px;
}
.flag:before{
  width: 50px;
  height: 35px;
  background: url("../images/flag_l_s.png") no-repeat center center;
  content: url(../images/flag_l.png);
  display: inline-block;
}


.flag:after{
  width: 50px;
  height: 35px;
  background: url("../images/flag_r_s.png") no-repeat center center;
  content: url(../images/flag_r.png);
  display: inline-block;
}
}

.img-container{
	overflow: hidden;
	position: relative;
}

.img-container__img{
	display: block;
	opacity: 0;
	position: relative;
	transition:all .5s .3s ease; 
	z-index: 0;
}

.img-container:before{
	background: #333;
	content: '';
	display: block;
	height: 100%;
	position: absolute;
	transform: translateX(-100%);
	transition:all .8s 0s ease; 
	width: 100%;
	z-index: 1;
	opacity: 0.6;
}

.text-container{
	padding:0 60px;
}

.text-container__title{
	color: #333;
	display: inline-block;
	font-size: 60px;
	font-weight: 700;
	overflow: hidden;
	position: relative;
	z-index: 0;
}

.text-container__title:before{
	background: #333;
	content: '';
	display: block;
	height: 100%;
	position: absolute;
	transform: translateX(-100%);
	transition:all .8s .3s ease; 
	width: 100%;
	z-index: 1;		
}

.text-container__title__inner{
	display: inline-block;
	opacity: 0;
	transition: all .8s .5s ease;
}

.text-container__text{
	left: -50px;
	opacity: 0;
	position: relative;
	transition: all .5s .5s ease;
}

/*アニメーションするプロパティを設定します*/
.img-container.active img{
	opacity: 1;
}

.img-container.active:before{
	transform: translateX(100%);	
}

.text-container.active .text-container__title:before{
	transform: translateX(100%);
}

.text-container.active .text-container__title__inner{
	opacity: 1;
}

.text-container.active .text-container__text{
	left: 0;
	opacity: 1;
}

/*
所属俳優
***************************************************************************/
/* ▼LIST▼ */
#product_list {
	margin:0 auto;
	width:90%;
	padding-bottom:0;
}

#product_list .box {
	position: relative;
	float: left;
	width: 25%;
	margin: 0 auto;
}

#product_list .box a:hover { opacity:0.7; }

#product_list .box .img {
	width: 96%;
	height: auto;
	text-align:center;
}

#product_list .box img {
	width: 100%;
	height: auto;
	text-align:center;
}

#product_list .box .img_frame img {
	max-width: 100%;
	max-height: 100%;
}

#product_list .box .title {
	margin-bottom: 10px;
	font-size: 15px;
	font-weight: 500;
	color: #151b1c;
	line-height: 1.35;
	text-align:center;
}

/* ▼CATEGORY▼ */
#product_cat {
	padding: 100px 0 85px;
	color: #fff;
	background: #151b1c;
}

#product_cat li {
	float: left;
	margin: 0 60px 40px 0;
}

#product_cat li:nth-child(2n) { margin-right:0; }

#product_cat li a:hover { opacity:0.5; }

#company{
width:1000px;
margin:10px auto;
}

#news{
width:1200px;
margin:10px auto;
}

#news li {
padding-bottom:15px;
}

#news li a{
color:#333333;
font-size:14px;
}

#news li a:hover{
opacity: 0.6;
}

#news .day {
font-size:12px;
color:#990000;
}

#pf_table{
width:1200px;
margin:10px auto;
}

#pf_table a{
color:#000000;
text-decoration:underline;
}

#pf_table table{
font-size:13px;
width:100%;
}

#pf_table table strong{
font-size:18px;
padding:10px 0;
width:100%;
}

#pf_table table tr{
border-bottom:1px solid #CCCCCC;
padding:0 5px;
}

dl {
    width: 100%;
	border-bottom:1px #999999 solid;
	clear:both;
	height:80px;
	padding-bottom:10px;
	padding-top:25px;
	padding-left:20px;
	font-size:20px;
}

dl.big {
    width: 100%;
	border-bottom:1px #999999 solid;
	clear:both;
	height:110px;
	padding-bottom:15px;
	padding-top:25px;
	padding-left:20px;
	font-size:20px;
}

dl.big02 {
    width: 100%;
	border-bottom:1px #999999 solid;
	clear:both;
	height:170px;
	padding-bottom:15px;
	padding-top:25px;
	padding-left:20px;
	font-size:20px;
}

dt {
	box-sizing: border-box;
	float: left;
	width: 160px;
	font-weight: bold;
	font-size:15px;
}

dd {
	box-sizing: border-box;
	float: left;
	text-align:left;
	font-size:15px;
}

dl.profile_tx {
    width: 100%;
	clear:both;
	height:auto;
	padding-left:10px;
	border:none;
}

dt.profile_tx {
	box-sizing: border-box;
	float: left;
	width: 65px;
	font-weight: bold;
	font-size:15px;
}

dd.profile_tx {
	box-sizing: border-box;
	float: left;
	text-align:left;
	font-size:15px;
}

dt.profile_tx_en {
	box-sizing: border-box;
	float: left;
	width: 125px;
	font-weight: bold;
	font-size:15px;
}

dd.profile_tx_en {
	box-sizing: border-box;
	float: left;
	text-align:left;
	font-size:15px;
}

@media only screen and (max-width: 1000px){
#company{
width:100%;
margin:10px auto;
}
}

@media only screen and (max-width: 1200px){
#news{
width:94%;
margin:10px auto;
}
#pf_table{
width:98%;
margin:10px auto;
}
}

@media only screen and (max-width: 800px){
#product_list .box {
	position: relative;
	float: left;
	width: 33.3%;
	margin: 0 auto;
}
}

@media only screen and (max-width: 600px){
dl {
    width: 100%;
	border-bottom:1px #999999 solid;
	clear:both;
	height:80px;
	padding-bottom:15px;
	padding-top:25px;
	padding-left:20px;
	font-size:20px;
}

dl.big {
    width: 100%;
	border-bottom:1px #999999 solid;
	clear:both;
	height:110px;
	padding-bottom:15px;
	padding-top:25px;
	padding-left:20px;
	font-size:20px;
}

dl.big02 {
    width: 100%;
	border-bottom:1px #999999 solid;
	clear:both;
	height:170px;
	padding-bottom:15px;
	padding-top:25px;
	padding-left:20px;
	font-size:15px;
}

dt {
	box-sizing: border-box;
	float: left;
	width: 100px;
	font-weight: bold;
	font-size:13px;
}

dd {
	box-sizing: border-box;
	float: left;
	text-align:left;
	font-size:13px;
}
#product_list .box .title {
	font-size: 13px;
}
.site-logo__img{
	height: auto;
	width: 180px;
	padding-top:10px;
	float:left;
}
.only_pc{
padding-bottom:10px;
}
}

.sty_link{
width:90%;
margin:0 auto;
padding:10px 0 40px;
}

a.pf_btn {
	background-color:#333333;
	border:1px solid #333333;
	color:white;
	padding:8px 0;
	cursor:pointer;
	border-radius:5px;
	font-size:14px;
	float:left;
	width:300px;
	text-align:center;
	margin-right:10px;
	font-weight:normal;
	float:left;
	margin-bottom:15px;
}
a.pf_btn:hover {
	opacity: 0.5;
}

#to_top {
width: 100px;
height: 60px;
position: fixed;
right: 10px;
bottom: 10px;
z-index: 999;
opacity: 0.8;
}

@media only screen and (max-width: 480px){
#product_list .box {
	position: relative;
	float: left;
	width: 50%;
	margin: 0 auto;
}
}