@charset "utf-8";

/* Common 
=================================================*/
body {
	min-width: 320px;
	margin: 0;
	padding: 0;
	color: #222;
	background: #FFF;
	font-size:62.5%;
	font-size:18px;
	/*font-size: calc(112.5% + 4 * (100vw - 600px) / 400); IE11で不具合*/
	line-height: 150%;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic","Malgun Gothic","Gulim", "sans-serif";
	overflow: hidden; /*横いっぱい*/
	word-wrap: break-word; /*折り返し*/
	background-image:none;
 }

html{
	font-size: 100%;
	overflow: auto;/*横いっぱい*/
}

p{
	text-align: left;
}
.center{
	text-align: center !important;
}

.header { 
	width: 100%; 
	margin: 0; 
	padding: 0;
	
}

.logo-box{
	width: 100%;
	height: auto;
	padding: 0;
}

.logo-box img.ps4{
	display: block;
	float: left;
	margin:2px 0px 0 0;
	width: 25%;
	height: auto;
}
.logo-box img.sega{
	display: block;
	float: right;
	margin: -2px 0px 0 0;
	width: 18%;
	height: auto;
}

.main {
	clear: both;
	width: 100%;
	margin: 20px auto 0;
	padding: 0;
	text-align: center;
	overflow-y: hidden;
	overflow-x: hidden;
}

.main img{
	width: 100%;
	height: auto;
	-moz-box-sizing:border-box;
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
}

.clearfix {
    zoom: 1;
}
.clearfix:before,
.clearfix:after {
    content: "";
    display: table;
}
.clearfix:after {
    clear: both;
}

a:link{
	color: #2797BF;
	text-decoration: underline;
}

a:hover{
	color: #8B3D9C;
	text-decoration: none;
}

.M_T20{
	margin-top: 20px;
}
.M_B20{
	margin-bottom: 20px;
}
.M_B5{
	margin-bottom: 5px !important;
}

.MP_B0{
	padding-bottom: 0 !important;
	margin-bottom: 0 !important;
}

.M_R5{
	margin-right: 5px !important;
}

rt{
	font-size: 9px;
}

strong{
	font-weight: bold;
}

.new{
	width: 60px !important;
	height: 20px !important;
	vertical-align: middle;
}

.strong{
	font-weight: bold;
}

.pink{
	color: #dc02c2;
}

/* 丸背景付き三角矢印アイコン */
.arrow_btn_set{
	display: block;
	text-align: left;

}
.arrow_dramacd{
	width: 240px;
	
}

.arrow_cdpdf{
	width: 330px;
	
}
.arrow_btn_set a{
	display: block;
	color: #FFF;
	background-color: #f326bc;
	padding: 5px 10px 5px 10px;
	margin: 0 auto 15px 0;
	border-top-left-radius: 20px;
	border-top-right-radius: 20px;
	border-bottom-right-radius: 20px;
	border-bottom-left-radius: 20px;
}

.arrow_btn_set a:hover{
	background-color: #aa4dda;
}
.arrow_btn {
    position: relative;
    display: inline-block;
    padding-left: 20px;
}
.arrow_btn:before {
    content: '';
    width: 14px;
    height: 14px;
    background: #fff;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 0;
    margin-top: -7px;
}
.arrow_btn:after {
    content: '';
    width: 0;
    height: 0;
    border: solid 3px transparent;
    border-left: solid 5px #f326bc;
    position: absolute;
    top: 50%;
    left: 5px;
    margin-top: -3px;
}


/* pagetop --------------------------------start */
.pagetop {
    display: none;
    position: fixed;
    bottom: 30px;
    right: 15px;
	width: 90px;
	height: 64px;
	text-indent: -9999px;
}
.pagetop a {
    display: block;
	width: 90px;
	height: 64px;
    background-image: url(../img/btn_back.png);
	filter:alpha(opacity=100);
    -moz-opacity: 1.0;
    opacity: 1.0;
}
.pagetop a:hover {
    display: block;
	filter:alpha(opacity=70);
    -moz-opacity: 0.7;
    opacity: 0.7;
}
/* pagetop ----------------------------------end */





/* SP （画面480px以下）
=================================================*/

/* HEADER(SP)
----------------------------------------*/
header{
	/*background-image: url(../img/header_bg.png);*/
	background-position: bottom ;
	background-repeat: repeat-x;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(1.00, #000), color-stop(0.00, #2b2b2b));
	background: -webkit-linear-gradient(#2b2b2b, #000);
	background: -moz-linear-gradient(#2b2b2b, #000);
	background: -o-linear-gradient(#2b2b2b, #000);
	background: -ms-linear-gradient(#2b2b2b, #000);
	background: linear-gradient(#2b2b2b, #000);
	box-shadow:0px 3px 6px rgba(0,0,0,0.3);
	width: 100%; 
	margin: 0; 
	padding: 0;
	height: auto;
	display: block;
	position: fixed;
	z-index: 9999;
	
}


/* FOOTER(SP,Tablet)
----------------------------------------*/
footer{
	width:100%;
	background-color: #222;
}

.bnr_site{
	width:100%;
	height: auto;
	margin: 0 auto 0px;
	padding: 0;
	display: block;
	background: #333;
}

.bnr_site ul{
	width: 98%;
	margin: 0 auto;
	padding: 10px 0 0;
	text-align: center;	
}

.bnr_site ul li{
	width:24%;
	margin: 0;
	padding: 0;
	display: inline-block;
	
}

.bnr_site img{
	width: 100%;
	height: auto;
}

#footer{
	width:99%;
	padding:0.5em 0;
	margin: 0 auto;
	word-wrap: break-word;
	box-sizing: border-box;
	
}

#footer p{
	font-size: 80%;
	line-height: 1.2em;
	color:#FFF;
}


.f_ps4{
	height:18px;
	padding-top:0px;
	vertical-align:middle;
	}


.group1{
	pointer-events: none;
}

/* COMMON(SP,Tablet)
----------------------------------------*/
h1{
	background-image: url(../img/h1_bar.png);
	background-position: left top;
	height: 90px;
	width: 100%;
	margin: 0;
	padding: 0;
	text-align: left;
	}

h2{
	display: block;
	background: url(../img/h2_bar_graybrown.png) no-repeat top center;
	height: 70px;
	width: 100%;
	background-position: top center;
	background-repeat: no-repeat;
	color:#FFF;
	font-weight: bold;
	font-size: 100%;
	line-height: 1em;
	text-align: center;
	padding: 23px 0 0 0;
	margin: 0 auto;
	font-size: 4vw;/*フォントの横幅自動調節*/
	}

h2.rr{
	padding: 30px 0 0px 0 !important;
}

.sub_logo{
		position: absolute;
		top:50px;
		right: 10px;
		display: block;
		text-indent: -9999px;
		background-image: url(../img/h1_bar_logo_sp.png);
		height: 70px;
		width: 115px;
		
	}
	h1 img{
		width: 90%;
		padding: 25px 0 0 0;
		height: auto;
		display: block;
		
	}


.pc_img{
	display: none;
}
.sp_img{
	display: block;
}

h1 span{
		background: #553B6B;
		padding: 8px;
		margin: 0 0 20px 0;
		text-align: center;
		color: #FFF;
		width: 100%;
	display: block;
	}


p{
	padding: 0 10px 1em 10px;
	margin: 0;
}
p.update{
	text-align: right;
	font-size: 90%;
	padding: 0 10px 1em 10px;
	margin: 0;
}

p.small,
span.small{
	font-size: 80% !important;
}

p.bold,
span.bold{
	font-weight: bold;
}

h3{
	display: block;
	background-color: #563760;
	background-image: none;
	color:#FFF;
	font-weight: normal;
	font-size: 100%;
	line-height: 1em;
	text-align: center;
	padding: 10px 0;
	margin: 0 auto 15px auto;
	height: auto;
	width: 100%;
}

h4{
	color: #694893;
	font-weight: bold;
	font-size: 105%;
	text-align: left;
	border-bottom: 2px solid #694893;
	margin: 0.5em;
}

.txt_box{
	text-align: center;
	width: 90%;
	height: auto;
	margin: 0 auto;
	padding: 0 0 20px 0;
}

.txt_box table{
	width: 100%;
	border: #B599CD solid 2px;
}

.txt_box th,
.txt_box td{
	font-size: 85%;
	padding: 5px;
	text-align: left;
	vertical-align: middle;
}

.txt_box th{
	background-color:#E1D0EC;
	border-bottom: #FFF solid 1px;
	border-right: #FFF solid 1px;
	width: auto;
}

.txt_box td{
	background-color:#FFF;
	border-bottom: #E1D0EC solid 1px;
	border-right: #E1D0EC solid 1px;
}


.txt_box table .update{
	font-size: 80%;
	color: #590C93;
	font-weight: bold;
}

.txt_box p{
	text-align: left;
}

.txt_box th a{
	color: #cc0066;
}

.txt_box th a:hover{
	color: #006699;
}

span.arrow {
    position: relative;
    display: inline-block;
    padding-left: 14px;
	font-size:65%;
}
span.arrow:before {
    content: '';
    width: 6px;
    height: 6px;
    border: 0px;
    border-top: solid 3px #FFF;
    border-right: solid 3px #FFF;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 45%;
    left: 0;
    margin-top: -4px;
}


/* Tablet （画面481px以上1023以下）
=================================================*/
@media screen and (min-width:481px) {
	


/* HEADER(Tablet)
----------------------------------------*/

.logo-box img.ps4{
	display: block;
	float: left;
	margin: 0;
	width: auto;
	height: 52px;
}
.logo-box img.sega{
	display: block;
	float: right;
	margin: 0;
	width: auto;
	height: 52px;
}

	
/* COMMON(Tablet)
----------------------------------------*/
.main {
	clear: both;
	width: 100%;
	margin: 0 auto 0;
	padding: 30px 0 0 0;
	text-align: center;
	overflow-y: hidden;
	overflow-x: hidden;
}

h1{
	height: 140px;
	}
	
h1 img{
	width: 400px !important;
	padding: 30px 0 0 0;	
	}
	
h1 span{
	margin: 16px 0 20px 0;
	}

h2{
	height: 40px;
	font-size: 18px;
	line-height: 1em;
	margin: 0 0 15px 0 !important;
	padding: 25px 0 0 0 !important;
	}
	
.sub_logo{
		position: absolute;
		top:120px;
		right: 15px;
		display: block;
		text-indent: -9999px;
		background-image: url(../img/h1_bar_logo.png);
		height: 140px;
		width: 230px;
		
	}

	
.group1{
		pointer-events: none;
}
	
.pc_img{
	display: none;
}
.sp_img{
	display: block;
}
	

	


/* FOOTER(Tablet)
----------------------------------------*/
#footer{
	width: 100%;
	min-width: 481px;
	color: #FFF;
	padding: 10px 0;
	margin: 0 auto;
	font-size: 70%;
	line-height: 1.2em;
	
}
	
.f_ps4{
	height:12px;
	width: auto;
	padding-top:0;
	vertical-align:middle;
	}

/* SPECIAL(Tablret)
----------------------------------------*/
.M_T_shop{
	margin-top: 105px !important;
}
span.arrow {
	font-size:85%;
}
}


/* PC 画面サイズ1024px以上
=================================================*/
@media screen and (min-width: 1024px) { 

body {
	background-image: url(../img/bg.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	/*font-size: calc(120%);* IE11で不具合*/
	background-attachment:fixed;  
 }

/* HEADER(PC)
----------------------------------------*/
.header { 
	width: 100%; 
	max-width: 1000px; 
	margin: 0 auto; 
}
	
.logo-box img.ps4{
	display: block;
	float: left;
	margin:0;
	width: auto;
	height: 52px;
}
.logo-box img.sega{
	display: block;
	float: right;
	margin:0;
	width: auto;
	height: 52px;
}


	
/* COMMON(PC)
----------------------------------------*/
.main {
	clear: both;
	width: 100%;
	max-width: 1000px; 
	margin: 0 auto 0;
	padding: 0;
	text-align: center;
	overflow-y: hidden;
	overflow-x: hidden;
	position: relative;
}
	
.sub_logo{
		position: absolute;
		top:0;
		right: 40px;
		display: block;
		text-indent: -9999px;
		background-image: url(../img/h1_bar_logo.png);
		height: 140px;
		width: 230px;
		
	}
	
.sub_logo a{
		display: block;
		height: 140px;
		width: 230px;
	}
	
h1{
		background-image: url(../img/h1_bar.png);
		height: 140px;
		width: 1000px;
		margin: 0;
		padding: 0;
		text-align: left;
		
	}
h1 img{
		width: 400px !important;
		padding: 30px 0 0 0;
		height: auto;
		display: block;
	}
h1 span{
		display: none;
	}



h2{
	height: 40px;
	font-size: 20px;
	line-height: 1em;
	margin: 0 0 15px 0 !important;
	padding: 23px 0 0 0 !important;
	}

h2.rr{
	padding: 18px 0 0px 0 !important;
}
	
h3{
	display: block;
	background-image: url(../img/h3_bar.png);
	background-repeat: no-repeat;
	background-color:transparent;
	color:#FFF;
	font-weight: normal;
	font-size: 100%;
	line-height: 1em;
	text-align: center;
	padding: 17px 0 0 0;
	margin: 0 auto;
	height: 50px;
	width: 100%;
}

.group1{
		pointer-events: all;
}
	
.pc_img{
	display: block;
}
.sp_img{
	display: none;
}


/* FOOTER(PC)
----------------------------------------*/
footer{
	width:100%;
	margin: 0 -200%; /* 横いっぱい */
	padding: 0 200%; /* 横いっぱい */
	background-color: #222;
}

.bnr_site{
	width: 100%;
	height: auto;
	margin: 0 auto;
	padding: 0;
	display: block;
	background-color: #333;
}

.bnr_site ul{
	width: 100%;/* もと　width:1000px;*/
	/*max-width:1000px;*/
	margin: 0 auto;
	padding: 10px 0;

}

.bnr_site ul li{
	width:240px;
		display: inline-block;
	-webkit-display: inline-block;
	-ms-display: inline-block;
	margin: 0 5px 0 0;
}
	
.bnr_site ul li:last-child{
		margin: 0;
}


#footer{
	width: 100%;
	max-width: 1000px;
	padding: 10px 0px;
	margin: 0 auto;
	color: #FFF;
	font-size: 11px;
	line-height: 1.2em;
}

	
/* MOVIE(PC)
----------------------------------------*/
.video_box{
		width: 720px;
		height: auto;
		margin: 0 auto 30px;
	}
	

}



/* IE11 
=================================================*/
 @media all and (-ms-high-contrast:none){
      *::-ms-backdrop, p.small,span.small{
	font-size: 14px;
		 } 
      *::-ms-backdrop, h2.rr{
	padding: 15px 0 5px 0 !important;
	 }
	 *::-ms-backdrop, h3{
	font-size: 17px;
		 font-weight: bold;
	 }
	 *::-ms-backdrop, span.arrow {
	font-size:16px;
}
    }
/* Firefox 
=================================================*/
@-moz-document url-prefix() {
	h2.rr{
	padding: 11px 0 5px 0 !important;
	}
}

/* Chrome 
=================================================*/
@media screen and (-webkit-min-device-pixel-ratio:0) {
	h2.rr {
		padding: 31px 0 0px 0 !important;
	}
}