
@charset "UTF-8";

/* ----------------------------------------------------
作成日: 2017.07.07
最終更新日: 

common.css： 共通設定
---------------------------------------------------- */

body {
	position:relative;
	min-width: 320px;
	font-size:41.6875%;
	/*font-size:62.5%;10px*/
	font-family:"メイリオ", "ＭＳ Ｐゴシック", Helvetica , sans-serif;
	-webkit-text-size-adjust: 100%;
	line-height:1.6;
	height:100%;
}

@media screen and (max-width:640px) {
	
	body {
		min-width: 320px;
		background-size:45%;
}

}

img {
	max-width: 100%; 
	height:auto;
}

a:link, a:visited {
    color: #0681ff;
}


a:focus, *:focus { outline:none; }

/*clearfix*/
.cf:before,
.cf:after {
	content:"";
	display:table;
}
.cf:after,.clear{clear:both;}

cf::after {
	content: " ";  
	display: block; 
	visibility: hidden; 
	clear: both; 
	height: 0;
	line-height: 0;
}

ul {
	list-style:none;
	}




.tc {text-align:center !important;}
.tr {text-align:right !important;}
.tl {text-align:left !important;}

.p_t2{padding-top:2%;}
.p_t4{padding-top:4%;}
.p_t7{padding-top:7%;}
.p_t8{padding-top:8%;}
.p_b2{padding-bottom:2%;}
.p_b7{padding-bottom:7%;}

.p_l2{padding-left:2%;}

.ma{margin:1%;}
.ma_b2{margin-bottom:2%;}
.ma_b4{margin-bottom:4%;}
.ma_b7{margin-bottom:7%;}

.v_m{vertical-align: middle;}

.add{word-break: break-all;}

.sd {
	filter: drop-shadow(0 2px 0px rgba(0, 0, 0, .5));
	-webkit-filter: drop-shadow(0 2px 0px rgba(0, 0, 0, .5));
	}

.red{color:#cc0000;}

.container{
	position: relative;
	z-index: 0;
}

#wrapper{
	position:relative;
	height:100%;
}

.t_img img{
	width: 42.5%;
	text-align:center;
	}

@media screen and (max-width:640px) {
.t_img img {
     width: 85%;
    text-align: center;
}
}

.red{color:#c80000;}

/* ========================================================
 common style
======================================================== */
.-hide{display: none !important;}

.button.hoverImage{
	position: relative;
	z-index: 0;
	display: block;
	height: 0;
	line-height: 0;
	background-repeat: no-repeat;
}
.button.hoverImage:before{
	content: "";
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-size: inherit;
	background-image: inherit;
	background-repeat: no-repeat;
	opacity: 0;
	-webkit-transition: opacity .3s;
	transition: opacity .3s;
}
.button.hoverImage:hover:before,
.button.hoverImage.on:before{opacity: 1;}
html.sp .button.hoverImage:hover:before{display: none;}


.container{
	position: relative;
	z-index: 0;
}

.baseStyle01{padding: 1%;}
.baseStyle02{padding: 2%;}
.baseStyle03{padding: 3%;}
.baseStyle04{padding: 0 4%;}

.mt2{margin-top: 2%;}
.mt4{margin-top: 4%;}
.mt7{margin-top: 7%;}

@media (min-width: 1024px) {
	.baseStyle01{padding: 10px;}
	.baseStyle02{padding: 20px;}
	.baseStyle03{padding: 30px;}
	.baseStyle04{padding: 0 40px;}

	.mt2{margin-top: 20px;}
	.mt4{margin-top: 40px;}
	.mt7{margin-top: 70px;}
}

.baseDesign {
	position: relative;
	z-index: 0;
}
.baseDesign .design{
	position: absolute;
	display: block;
	line-height: 0;
}

.baseDesign {
	position: relative;
	z-index: 0;
}
.baseDesign .design{
	position: absolute;
	display: block;
	line-height: 0;
}

/* menu design */
.baseDesign00{padding: 0 1.5%;}
.baseDesign00:before,
.baseDesign00:after{
	content: "";
	position: absolute;
	z-index: 1;
	top: 0;
	display: block;
	width: 0;
	height: 100%;
	padding-left: 4%;
	background-size: auto 100%;
	background-repeat:no-repeat;
	background-image: url('../image/bg-menu01-01.png');
}
.baseDesign00:before{left: 0;}
.baseDesign00:after{right: 0;}
.baseDesign00 .inner{
	background-size: auto 100%;
	background-repeat: repeat-x;
	background-image: url('../image/bg-menu01-02.png');
}

.button.hoverImage{
	position: relative;
	z-index: 0;
	display: block;
	height: 0;
	line-height: 0;
	background-repeat: no-repeat;
}
.button.hoverImage:before{
	content: "";
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-size: inherit;
	background-image: inherit;
	background-repeat: no-repeat;
	opacity: 0;
	-webkit-transition: opacity .3s;
	transition: opacity .3s;
}
.button.hoverImage:hover:before,
.button.hoverImage.on:before{opacity: 1;}
html.sp .button.hoverImage:hover:before{display: none;}




.bg{
	position: fixed;
	z-index: -1;
	left: 0;
	top: 0;
	min-width: 320px;
	width: 100%;
	height: 100%;
	background-image: url("../image/bg.jpg");
	background-position: top center;
}

@media screen and (max-width:640px) {
	
.bg{
	position: fixed;
	z-index: -1;
	left: 0;
	top: 0;
	min-width: 320px;
	width: 100%;
	height: 100%;
	background-image: url("../image/bg.jpg");
	background-size:45%;
	background-position: top center;
}

	}

* {
  margin: 0;
  padding: 0;
  border: 0;
}

.att {
  padding-left: 1em;
  text-indent: -1em;
}

hr {
	width:90%;
	margin:0 auto 3% auto;
	border:1px solid #323232;
	}


/*==================================
header
===================================*/

header {
	background:url(../image/bg03.jpg) no-repeat top;
	background-size:cover;
	box-sizing: border-box;
	background-color:#9ee4e7;
	}
	
@media screen and (max-width:640px) {
	
header {
	position:relative;
	background-color:#9ee4e7;
	}
	
	}

/*==================================
sns
===================================*/
.sns_area{
	height:100%;
    padding: 24px 0 0.2% 0;
	}

@media screen and (max-width: 640px) {
	.sns_area{
		background-size:cover;
	}
	
}

/* ========================================================
 preButtonsArea
======================================================== */
.preButtonsArea{
	max-width: 920px;
    min-width: 310px;
	width: 100%;
	margin: auto;
}

.preButtonsArea .textImage{
	display: block;
	max-width: 639px;
	width: 92.4%;
	margin: auto;
}

.preButtonsArea .button{
	display: block;
	width: 19.5%;
	margin-left: 4%;
	padding-top: 19.5%;
	float: left;
	background-size: 400% 200%;
	background-image: url('../image/buttons-pre.png');
}
.preButtonsArea .button:first-child{margin-left: 5%;}
.preButtonsArea .button01{background-position:    0%  0;}
.preButtonsArea .button02{background-position:  33.3% 0;}
.preButtonsArea .button03{background-position:  66.6% 0;}
.preButtonsArea .button04{background-position:  99.9% 0;}
.preButtonsArea .button01:before{background-position:    0%  100.3%;}
.preButtonsArea .button02:before{background-position:  33.3% 100.3%;}
.preButtonsArea .button03:before{background-position:  66.6% 100.3%;}
.preButtonsArea .button04:before{background-position:  99.9% 100.3%;}

.preButtonsArea .preMore{text-align: right;}
.preButtonsArea .preMore a{
	display: inline-block;
	padding: 5px 10px;
	color: #fff;
    font-size: 2.6rem;
    font-weight: bold;
    background-color: rgba(0,0,0,.7);
    /*text-shadow: 0 1px 0 #000, 1px 0 0 #000, 0 -1px 0 #000, -1px 0 0 #000, -1px -1px 0 #000, 1px -1px 0 #000, -1px 1px 0 #000, 1px 1px 0 #000;*/
}
html:not(.sp) .preButtonsArea .preMore a:hover{text-decoration: underline;}

/* ========================================================
 preInlineBox
======================================================== */
.preInlineBox{
	position: absolute;
	z-index: 0;
	top: 5%;
	left: 5%;
	width: 90%;
	height: 90%;
	padding: 3%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.preInlineText{
	font-size: 3rem;
	color: #fff;
}

.preInlineButton .button{
	display: block;
	width: 40%;
	padding-top: 40%;
	margin: 10% auto 0;
	background-size: 400% 200%;
	background-image: url(../image/buttons-pre.png);
}
.preInlineButton .button02{background-position:  33.3% 0;}
.preInlineButton .button03{background-position:  66.6% 0;}
.preInlineButton .button02:before{background-position:  33.3% 100.3%;}
.preInlineButton .button03:before{background-position:  66.6% 100.3%;}

@media (min-width: 600px) {
	.preInlineButton .button{
		width: 160px;
		margin: 10px auto 0;
		padding-top: 160px;
	}
}

@media screen and (orientation: landscape) {
	html.sp .preInlineBox{padding: 1%;}
	html.sp .preInlineText{
		width: 50%;
		margin: 0;
		font-size: 2rem;
		float: left;
	}
	html.sp .preInlineButton{
		width: 40%;
		margin-top: -10px;
		float: right;
	}
	html.sp .preInlineButton .button{
		width: 70%;
		padding-top: 70%;
	}
}


/*==================================
main top
===================================*/	
.mainImg {
	width:100%;
	max-width:980px;
	min-width:320px;
	position:relative;
	margin:0 auto;
	}
	

h1 {
    width: 23%;
    position: relative;
    margin-top: 0.5%;
    left: 0%;
    z-index: 10;
}
	
h2 {
	position:relative; z-index:2;
	width: 93.85%;
	margin:0 auto;
	padding: 5% 0% 2% 0%;
	}
	
.date {
	position:relative; z-index:2;
	width:71.53%;
	margin:0 auto 1% auto;
	}

.mainImg .top {
	margin-top: 46%;
	}
	
.top_kazari {
    width: 100%;
    position: absolute;
    text-align: center;
    z-index: 1;
    top: 0%;
	}


.mainImg .top_img {
    width: 97.2%;
    position: absolute;
    z-index: 1;
    top: 0%;
    left: 0%;
	}

.mainImg .top_img img{	
	vertical-align:bottom;
}

.top_img02 {
	width: 73.7%;
	position: absolute;
    z-index: 1;
    left: 14%;
    top: 30%;
	}

 .top_img img, .top_img02 img{
	 width:100%;}

.mainImg .top_come {
    position: absolute;
    width: 96%;
    z-index: 1;
    top: 72%;
    left: 3%;
}

@media screen and (max-width:640px) {
.top_kazari {
    width:98%;
    position: absolute;
    z-index: 1;
    left: 1%;
    top: 0%;
	}	

.mainImg .top_img {
    width: 99%;
    position: absolute;
    z-index: 1;
    left: 1%;
    top: 0%;
	}

	.mainImg .top {
	   margin-top: 47.2%;
	}
	
	.mainImg .top_come {
    width: 100%;
    top: 70%;
    left: 0%;
}
}

	
.mainImg .top_link {
	position:absolute; z-index:1;
    top: 93%;
    left: 87%;
	}


/*==================================
cbt_link
===================================*/
.cbt{
	width:78%;
	margin:0 auto;
	text-align:center;}
	
.cbt02{
	width:94%;
	margin:0 auto;
	}

.cbt03{
	width: 73%;
	margin:0 auto;
	}

.cbt03 ul{
	width:100%;
	font-size:3rem;
	text-indent: 0.5rem;
    color: #462306;
	}

.cbt03 ul li{
	width: 21%;
	float:left;
	}

.cbt03 ul li:nth-child(2),.cbt03 ul li:nth-child(3){
	width: 39%;
	float:left;
	padding-left:0%;
	}

@media screen and (max-width: 640px) {
.cbt03{
	width: 67%;
	margin:0 auto;
	}

.cbt03 ul{
	width:100%;
	font-size:3rem;
	text-indent: 0.5rem;
    color: #462306;
	}

.cbt03 ul li{
	width:26%;
	float:left;
	}

.cbt03 ul li:nth-child(2),.cbt03 ul li:nth-child(3){
	width: 37%;
	float:left;
	padding-left:0%;}

}

.cbt02 ul{
	width:100%;
	text-align:center;
	}

.cbt_link li{
	float:left;
	}


.text{
	width:100%;
	font-size:3.5rem;
	text-indent: 0.5rem;
    color: #462306;
	padding-bottom: 1.5%;}


.text_d{
	width:100%;
	font-size:4rem;
	text-indent: 0.5rem;
	font-weight: bold;
    color: #462306;
	padding-bottom: 1.5%;}

@media screen and (max-width:980px) {
.cbt02{
	width:91%;
	margin:0 auto;
	}
	
.p_l2{padding-left:0%;}

.cbt_link li{
    width: 100%;
    padding-bottom: 3%;
	}
}


/*==================================
sns
===================================*/

#social {
	margin:0 auto;
    max-width: 980px;
    min-width: 320px;
	padding-left: 3.5%;
}

#social li {
	float: left;
	margin: 0 30px 15px 0;
	text-align: left;
	line-height:0;
}

@media screen and (max-width:640px) {
#social {
	margin:0% 3% 0;
	padding: 3% 0%;
}	

#social li {
	float: left;
	margin: 0 16px 15px 0;
	text-align: left;
	line-height:0;
	}
}

@media screen and (max-width:320px) {
#social {
	margin: 0% 0% 0;
	padding-left:1%;
}	

#social li {
	float: left;
	margin: 0 16px 15px 0;
	text-align: left;
	line-height:0;
	}
}

/*==================================
link
===================================*/
.link {
	width: 100%;
	background:#5c2e0c;
    margin: 0 auto;
	padding-top: 2%;
	}	

@media screen and (max-width:640px) {
	.link {
	padding: 0% 0%;
	}
	}


/*==================================
banner
===================================*/

.siteBtn {
	display:block;
	width:57.24%;
	margin:5% auto;
	}
	
@media screen and (max-width:640px) {
	.siteBtn {
	display:block;
	width:87.24%;
	margin:5% auto;
	}
	}


.banner {
	background: #5c2e0c;
	}

.banner ul{
	width:100%;
	max-width:980px;
	min-width:320px;
	margin:0 auto;
	text-align:center;
	}
	
.banner li {
	display:inline-block;
	margin-right:1%;
	margin-bottom:1%;
	
	}

.ma_l{margin-left: 1%;}
	
.banner li.portalBanner {
	margin-top:1%;
	border:1px solid #0086d1;
	}

@media screen and (max-width:640px) {
.banner img {
	width:90%;
	margin-bottom: 3%;
	}
	}
	
/*==================================
to　TOP
===================================*/
.pageTop{
	max-width: 250px;
	width: 25%;
	position: fixed;
	z-index: 10;
	right: 2%;
	bottom: 2%;
	padding-right: 2%;
	text-align: right;
	cursor: pointer;
}
.pageTop img{width: 100%;}


/*==================================
Twitter 
===================================*/
.wrap-base {
    z-index: 2;
	width:100%;
    height: auto;
    background: url(../image/bg.jpg) no-repeat;
	background-size: contain;
	background-color:#000;
}

.base{
	width:100%;
	max-width:980px;
	min-width:320px;
	margin:0 auto;
	font-size: 1.5rem;
	}

.wrap-twi{
	width:92%;
	margin:0 auto;
	padding-bottom:3%;}

.line_top,.line_bottom{
	width:100%;
	text-align: center;}
	
.line_top img{
  vertical-align:bottom;
  margin: 0 auto;
}

.line_bottom img{
  vertical-align:top;
}

.line_center{
	background-image: url("../image/l_center.png");
	background-repeat: repeat-y;
	background-position: center;
	padding-bottom: 1%;
	}
	
@media screen and (max-width:980px) {
	.line_center{
	background-size:100%;
    background-position: center;
	}
}	
	
	
@media screen and (max-width:640px) {
	.line_center{
	background-size:98%;
	}

.line_top,.line_bottom{
	width:98%;
	margin: 0 auto;}

}

.l_l
{text-decoration: underline;}

.l_l a
{color:#c80000;}

.and_text{
    font-size:3rem;
    color: #462306;
	padding-left: 22%;
}

@media screen and (max-width:640px) {
.and_text{
	padding-left: 28%;
}

	}

.con_text{
	width:100%;
	max-width:835px;
	min-width:320px;
	margin:0 auto;}


.tw_text dt{
	font-size:3.3rem;
	text-indent: 0.5rem;
	font-weight: bold;
    color: #333333;
	padding: 5% 0% 2% 0%;}
	
.tw_text dd,.tw_text li{
	font-size:3rem;
	text-indent: 0.5rem;
    color: #333333;}

.tw_text,.tw_text img{
	margin:0 auto;}

.tw_text{
    width: 98%;
}

.fw_txt01 img{
	width: 81.6%;
	margin: 2%;
	}

.fw_txt02 img{
	width: 81%;
	margin: 2%;
	}

.fw_btn img{
	width: 64.4%;
	margin: 2%;
	}

@media screen and (max-width:980px) {
.tw_text{
    width: 89%;
}	

.fw_btn img{
	width:78%;
	margin: 2%;
	}
}

.pre_list{
	margin:0 auto;
	width:97%;
	font-size: 3rem;
	text-indent: 0.5rem;
    color: #462306;}


.pre_list ul{
	margin:0 auto;
	padding:2% 0%;}

.pre_list li{
	float:left;
	padding-left: 2%;
	}

@media screen and (max-width:640px) {
	
.pre_list li{
	padding-left: 7%;
	}

}

.pre_l{
	width:50%;}

.pre_r{
	width:45%;}

.p_t17{padding-top:17%;}
.p_t14{padding-top:14%;}
.p_t8{padding-top:8%;}

@media screen and (max-width:640px) {
.p_t14,.p_t17{padding-top:2%;}	

.pre_l{
	width:91%;}

.pre_r{
	width:96%;}

	}

.p_title{
	font-size: 4rem;
	margin:1%;
	font-weight:bold;
	}

.p_t,.p_t02{
	padding:2%;}

.p_t img{width:41%;}
	
.p_t02 img{width:22%;}


.info li:before,.info02 p:before {
    content: '';
    width: 4px;
    height: 4px;
    display: inline-block;
    border-radius: 100%;
    background: #462306;
    position: relative;
    left: -8px;
    top: -4px;
}

.info_red li:before{
    content: '';
    width: 4px;
    height: 4px;
    display: inline-block;
    border-radius: 100%;
    background: #cc0000;
    position: relative;
    left: -8px;
    top: -4px;
}

.ul_text{
    margin-left: 4%;
    width: 84%;
    font-size: 3rem;
    text-indent: 0.5rem;
    color: #462306;}

@media screen and (max-width:640px) {
	.ul_text{
    margin-left: 7.8%;
}
	}

/*==================================
footer
===================================*/

footer {
	position:relative;
	width: 100%;
	background: #5c2e0c;
	font-size: 3.0rem;
	color:#fff;
}

@media screen and (max-width:960px) {
	
	footer {
	min-width: 320px !important;

}
	}
	
@media screen and (max-width:640px) {
	
	footer {
	font-size: 3.0rem;

}
	}

.footer {
	width:90%;
	max-width:970px;
	min-width:310px;
	margin:0 auto;
	padding-bottom:20%
	}
	
@media screen and (max-width:640px) {
.footer {
	padding-bottom:18%
	}	
	}
	
#footerContents,#footer_text {
	margin-left: 1%;
    font-size: 2rem;
    color: #fff;
	padding: 10px;
}
#footer_text {
	padding-top: 0;
}
#footerContents li{
	float:left;
	margin-right:10px;
}
#footerContents li p {
		margin-top: 13px;
}
.sega-logo{
	display: inline-block;
	width: 104px;
}


#footer_text a {
	font-size: 2.2rem;
    color: #fff;
	text-decoration: none;
}

#footer_text a:hover {
text-decoration: underline;
}

.cbt_info{
	width:100%;}

.cbt_info li{
	float:left;}

.cbt_info_l{width:10%;}

.cbt_info_r{width:30%;}


.anime {
  animation: anime 1.1s linear 0s 1;
}


@keyframes anime {
  0%   { transform: scale(0.8, 1.4) translate(0%, -100%); }
  10%  { transform: scale(0.8, 1.4) translate(0%, -15%); }
  20%  { transform: scale(1.4, 0.6) translate(0%, 30%); }
  30%  { transform: scale(0.9, 1.1) translate(0%, -10%); }
  40%  { transform: scale(0.95, 1.2) translate(0%, -30%); }
  50%  { transform: scale(0.95, 1.2) translate(0%, -10%); }
  60%  { transform: scale(1.1, 0.9) translate(0%, 5%); }
  70%  { transform: scale(1.0, 1.0) translate(0%, 0%); }
  100% { transform: scale(1.0, 1.0) translate(0%, 0%); }
}



.link_anime img{
	transition: 0.2s;
	}
	
.link_anime img:hover{
		-webkit-transform: translate(5px,5px);
		-moz-transform: translate(5px,5px);
		-ms-transform: translate(5px,5px);
		-o-transform: translate(5px,5px);
		transform: translate(5px,5px);
}


.install ul{
    width: 100%;
    max-width: 920px;
    min-width: 320px;
    margin: 0 auto;
    text-align: center;
}
