@charset "UTF-8";

/* --------------------------------------------------------
/* 共通
-------------------------------------------------------- */

/* wrapper */
#wrapper {
    width: 320px;
	height:auto !important;
	min-height:100%;
	margin:0 auto;
	overflow: hidden;
	position:relative;
	box-sizing: border-box;
	background-position: bottom,top;
    background-size: 100%,100%;
	background-repeat: no-repeat,repeat-y;
}
/*#wrapper::after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	height: 100%;
	background: -moz-linear-gradient(top,  rgba(255,255,255,0.8) 0%, rgba(255,255,255,0.6) 5%, rgba(255,255,255,0.3) 100%);
	background: -webkit-linear-gradient(top,  rgba(255,255,255,0.8) 0%,rgba(255,255,255,0.6) 5%,rgba(255,255,255,0.3) 100%);
	background: linear-gradient(to bottom,  rgba(255,255,255,0.8) 0%,rgba(255,255,255,0.6) 5%,rgba(255,255,255,0.3) 100%);
}*/
#wrapper02 {
	width: 320px;
	height:auto !important;
	min-height:100%;
	margin:0 auto;
	overflow: hidden;
	/* background-image: url(../img_ep/dpc_lp_dgf06_bg02.png);
	background-size: 32.55208%; */
	background-color: #ffffff;
	position:relative;
}

header {
	position: relative;
	z-index: 1;
}

header .logo {
    width: 27%;
	float: right;
    padding: 2% 1% 1% 2%;
    border-radius: 0 0 0 2vw;
    background-color: #ffffff;
}
header .logo img{
	width: 100%;
}
header .logo_gamefes{
	float: left;
	width: 50%;
	display: block;
}
header .logo_gamefes img{
	width: 100%;
}
#mobile-bar{
	float:right;
}

.top #contents_area {
	padding:0;
	border-top:none;
}
#contents_area{ 
    margin: 3vw 4vw;
    padding: 8vw 0 5vw;
    height: 440px;
	position: relative;
	z-index: 1;
}
h2.complete_text {
    max-width: 84%;
    margin: 0 auto;
}
h2.complete_text2 {
    max-width: 90%;
    margin: 0 auto;
}
.notice {
	padding:0.5em;
	background:#eeeeee;
}
/* top */
.top {
	background-size:100% auto;
}

.top section:first-child {
	border-bottom:1px solid #ccc;
}
.top section:nth-child(2) {
	padding:30px 0;
}

.box_inner {
	width:285px;
	margin:0 auto;
}

.box_inner.m-width {
	width:100%;
	line-height: 0;
}

.flex {
	display: flex;
	align-items: center;
	justify-content: center;
}

.square {
	width: 55px;
	height: 55px;
	margin: 0 5px 0 0;
	text-align: center;
	color: #fff;
	background: #409243;
	display: flex;
	align-items: center;
	justify-content: center;
}

.balloon_l, .balloon_r {
	width: 60px;
	height: 60px;
	margin: 0 5px 0 0;
	font-size: 12px;
	text-align: center;
	color: #ffffff;
	line-height: 1em;
	background: #409243;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	position: relative;
}

.balloon_l {
	width: auto;
	padding: 10px;
}

.balloon_l:after,
.balloon_r:after {
	content: " ";
	border: 10px solid transparent;
	position: absolute;
	display: block;
}

.balloon_l:after {
	content: " ";
	margin: -10px 0 0 0;
	border: 10px solid transparent;
	border-left-color: #409243;
	border-right-width: 0;
	right: -8px;
	top: 50%;
}

.balloon_r:after {
	content: " ";
	border: 10px solid transparent;
	border-right-color: #409243;
	border-left-width: 0;
	left: -5px;
	top: 50%;
	transform: rotate(-18deg);
}

.circle_100, .circle {
	width: 70px;
	height: 70px;
	margin: 0 5px 0 0;
	text-align: center;
	color: #fff;
	background: #409243;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%
}

.circle_100 {
	width: 50%;
	height: auto;
	margin: auto;
	padding: 10px 30px;
	display: inline-block;
	position: absolute;
	top: -30px;
	left: 0;
	right: 0;
}

.finish_bg {
	width: 100%;
	padding: 0 0 10px;
	margin: 100px 0 0 0;
	background: #ffffcc;
	position: relative;
	overflow: visible !important;
}

form, .top .btnBox {
	margin:10px 0;
}

.entry {
}

form .entry label.btn {
	width: 100%;
}

form .entry label.btn input {
	width: 100%;
	height: auto;
	padding: 0;
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	display: block;
}

.top section#about {
	background:#f8f8f8;
	border-bottom:1px solid #ccc;
	margin-bottom:0px;
}
.top h3 {
	margin-bottom:10px;
}
.topText {
	text-align: center;
	color: #005e99;
	margin: 15px 0 10px;
	font-size: 11.5px;
}
.top-area{
	overflow: hidden;
	position: relative;
}
.top-area .textLink {
	text-align: right;
	display: inline-block;
	text-decoration: underline;
	margin: 0 0 7px 0;
	color: #192387;
	float: right;
	padding-right: 1em;
	margin-top: 10px;
}
.list-wrap {
	width: 100%;
	padding-left: 0;
	padding-right: 0;
	overflow: hidden;
}
.list-wrap.comp {
	width: 100%;
	padding-left: 2px;
	padding-right: 8px;
	overflow: hidden;
}
.history .game_list_wrapper{
	width: calc(100% - 30px);
	background-image: linear-gradient(-45deg, rgba(0,0,0,0) 25%, #666 25%, #666 50%, rgba(0,0,0,0) 50%, rgba(0,0,0,0) 75%, #666 75%, #666);
	background-size: 4px 4px;
	margin: 30px 0 0 20px;
}
.history .box_inner.game_list {
	/*width: calc(100% - 20px);*/
	width: 100%;
	padding: 10px 5px 0;
	margin: -20px 5px 0 -5px;
	background: #ffffff;
	box-sizing: border-box;
	border: 2px solid #000000;
	position: relative;
	z-index: 10;
	top: -5px;
}
.history .box_inner.game_list.comp {
    width: calc(100% - 29px) !important;
    /* width: 100%; */
    padding: 10px 5px 0;
	margin: 0 auto;
	background-size: 2.5%;
	box-sizing: border-box;
	border: 2px solid #005e99;
	position: relative;
	z-index: 10;
	top: 0 !important;
}
.history .notice {
	padding:0.5em;
	background:#ffffb6;
	overflow:hidden;
}
.history .games {
	padding: 1%;
	float: left;
	width: 48%;
	overflow: hidden;
}
.history .games_comp {
	padding: 2.5% 2.5% 1% 0%;
    float: left;
    width: 31%;
    overflow: hidden;
}
.history .games_comp a{
	display: block;
}
/* ゲームアイコンがひとつの場合センター寄せ */
.history .games.isOneicon{
	float: none;
	margin: 0 auto;
}
.history .games_comp div,
.history .games div {
	 /*width:32%;
	margin:0 2% 10px 0;*/
	text-align:center;
	float:left;
	/*background:#fff;
	border: 1px solid #cdcdcd;
	border-bottom: 4px solid #cdcdcd;*/
}
.history .games div:nth-child(2n) {
	 margin:0 0 0 0;
	float:right;
}
.history .games div img,
.history .games_comp div img{
	width:100%;
	margin: 0px auto 11px;
}
.history .games_comp div span,
.history .games div span {
	width:95%;
	margin:0 auto 5px;
	display:block;
}
.history .games_comp div span.game_name,
.history .games div span.game_name {
	height:4.6em;
	overflow:hidden;
}
.history .games_comp div span.copy,
.history .games div span.copy {
	height:34px;
	overflow-y:scroll;
}
.history .games_comp div span.btn_game a,
.history .games div span.btn_game a {
	width:100%;
	height:20px;
	margin:5px auto;
	line-height:20px;
	color:#fff;
	text-decoration:none;
	text-align:center;
	display:block;
	overflow:hidden;
}
.history .games_copm div span.btn_game a img,
.history .games div span.btn_game a img {
	width: 100%;
	margin: 0;
}

#modal_inner {
	width:320px;
	margin:0 auto;
}

#modal img {
	width:100%;
	position:relative;
	top:20%;
	overflow:hidden;
}


/* TITLE */

h2.subTitle {
	background-size:100% auto;
	width:285px;
	color:#409243;
	font-size:18px;
	line-height:16px;
	padding:8px 0 12px 15px;
	font-weight:bold;
	margin:0 auto;
}

/* キャンペーン */

dl.campaign {
	padding:30px 0 0;
}
dl.campaign dd {
	margin:10px 0 15px;
}
dl.campaign dd p.ind {
	text-indent:-1em;
	padding:0.5em 0 0 2em;
}

/*アイテムコード*/
.box_itemCode {
	width:300px;
	margin:0 auto;
}
.box_itemCode h3{
	padding:15px 0 0;
	line-height:1.2;
	text-align:center;
	font-size:16px;
}
.box_itemCode .itemCode_alart{
	font-size:10px;
	margin-bottom:20px;
	text-align:center;
}
.itemCode_number{
	width:225px;
	height:45px;
	background-size:225px auto;
	font-size:20px;
	text-align:center;
	line-height:45px;
	color:#444;
	margin:0 auto;
}
.itemCode_number a:link,
.itemCode_number a:hover,
.itemCode_number a:visited,
.itemCode_number a:active{
	color:#333;
}

.itemCode_number_01{
	width:225px;
	height:45px;
	background-size:225px auto;
	font-size:14px;
	text-align:center;
	line-height:38px;
	color:#444;
	margin:0 auto;
}

.itemCode_number_01 a{
	/**
	text-decoration: none;
	**/
	color:#444;
	font-weight:bold;
}


/*キーワード検索*/
.box_keywordInput {
	width:300px;
	margin:0 auto;
}
.box_keywordInput h3{
	margin:20px 0 5px 0;
	font-size:20px;
	line-height:1.2 !important;
}
.box_keywordInput p.alart{
	font-size:12px;
}
input.keywordInput{
	padding:12px 13px;
	width:270px;
	background-color:#EEEEEE;
	border:3px solid #BBBBBB;
	color:#999999;
	font-size:16px;
	font-weight:bold;
}
.itemCode_number{
	width:225px;
	height:45px;
	background-size:225px auto;
	font-size:20px;
	text-align:center;
	line-height:45px;
	color:#444;
	margin:0 auto;
}

.no_sp {
	padding:0 0 30px 0!important;
}
.relative {
	position:relative;
}

/* ボタン */
ul.btnSet01 {
	margin-top:183px;
}
ul.btnSet01 li {
	margin-bottom:10px;
}
ul.btnSet01 img {
	display:block;
}

/* 矢印 */
p.arrow02 {
	text-align:center;
	margin:0 auto;
}
p.arrow02 a {
	color:#666;
	background-size:auto 40%;
	padding-right:10px;
	border-bottom:1px solid #666;
	display:inline-block;
	text-decoration:none;
}

/* レコードボックス */
.box {
	margin:0px auto;
}

.box_inner {
	overflow:hidden;
}

.box_inner p {
	line-height:1.4;
}

dl.recordBox {}
dl.recordBox dt {
	position: absolute;
	left: 0;
	width: 8em;
	padding-left:1em;
}
dl.recordBox dt.w100 {
	padding:5px 10px;
	border-bottom: dotted 1px #ddd;
	position: static;
	width: 100%;
}
dl.recordBox dd {
	padding-left: 9em;
	border-bottom: dotted 1px #ddd;
}
dl.recordBox dd.w100 {
	padding:5px 10px;
	margin-bottom:15px;
	border-bottom: solid 1px #ddd;
}
dl.recordBox2 {
	margin:20px 0 0;
}
dl.recordBox2 dt {
	position: absolute;
	left: 0;
	width: 6em;
	padding-left:1em;
}
dl.recordBox2 dd {
	padding-left: 7em;
	border-bottom: dotted 1px #ddd;
}
.output {
	padding:30px 0 10px;
}


/*footerエリア */
/***************************/
#footer_area{
    position: absolute;
    bottom: 30px;
}

#footer_area li img {
	display:block;
}
/* コピーライト */
#copyright {
    font-size: 8.2px;
    /* padding: 20px 0; */
    /* margin-bottom: 20px; */
}
#copyright span {
    display: block;
    font-family: "Droid Sans";
    padding: 0px 10px;
    line-height: 1.4;
}
.footerLnk2 {
	float:left;
}
.footerLnk2 li {
	font-size:11px;
	line-height:15px;
}
.footerLnk2 li a{
	color:#333;
	text-decoration:none;
	background-size:6% auto;
	padding-right:12px;
}

p#page-top {
	float:right;
}

.bgLine {
	background-size:1% auto;
	padding:10px 15px 5px;
}

p.registNum {
	font-size: 11px;
	line-height: 25px;
	padding-left:15px;
}
.history .games_comp div span.invisibleTxt,
.history .games div span.invisibleTxt,
.googleplay-area01 div span.invisibleTxt ,
.googleplay-area02 div span.invisibleTxt {
	display: none;
}

.games a {
	display: block;
}

a:link,a:hover,a:visited,a:active {
	color: #2a73e2;
}

.tac {
	text-align: center;
}

.fwb {
	font-weight: bold;
}

.btmTxt {
	color: #fff;
	padding-left: 1em;
	padding-bottom: 15px;
	text-indent: -1em;
}

/*.topBox {
	position: relative;
}*/

.topCoin {
	float: left;
	width: 74px;
}

.topCoin img {
	width: 100%;
}

#wrapper .pt1em,
#wrapper02 .pt1em {
	padding-top: 0em;
}
/*****************************************************
190607
挿入KV
*****************************************************/
.w100p{width: 100%;}
.app-top {
  width: 92%;
  position: absolute;
  margin-top: 16.5%;
  padding: 0 4%;
}
.app-top li.random {
  display: block;
}
.app-top li {
  display: none;
  width: 12.3%;
  float: left;
  margin: 0 2.31% 0 0;
}
.app-top li img {
	width: 100%;
}
.app-top li:nth-child(7) {
  margin: 0;
}



/* ご注意事項 */
.cpNotes {
    max-width: 90%;
    margin: 0 auto;
	padding-bottom: 10%;
}

.cpNotesBtnWrap {
    max-width: 100%;
    margin: 0 auto;
    text-align: center;
}

.cpNotesBtnWrap {
    position: relative;
    background-color: #fff;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
}

.cpNotesBtn {
    display: table;
    width: 100%;
}

.cpNotesBtn a {
    display: table-cell;
    vertical-align: middle;
    width: 100%;
}

.cpNotesFlame {
    display: none;
    /*border-left: 2px solid #4e2b0f;
    border-right: 2px solid #4e2b0f;
    border-bottom: 2px solid #4e2b0f;*/
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
	background: #fff;
}

.cpNotesList {
    padding:4.1666%;
    /* font-size: 14px; */
	text-align: left;
	margin: 0 auto;
}

.cpNotesItem {
    text-indent: -1.0em;
    padding: 0px 0px 0px 1em;
}

/* 設定ガイド */
.gamefes-guide {
  padding: 7.4% 5% 6.6%;
 /* background-color: #fff5e1;*/
}
.gamefes-guide-head {
  display: block;
  line-height: 0;
  width: 100%;
  padding: 22.3% 0 0;
  margin: 0;
  background: url('../img_ep/dpc_lp_dgf05_guide_off.png') no-repeat left top;
  background-size: 100%;
  text-indent: -99999px;
}
.gamefes-guide-head.open {
  background: url('../img_ep/dpc_lp_dgf05_guide_on.png') no-repeat left top;
  background-size: 100%;
}
.gamefes-guide-body {
  display: none;
  color: #421c00;
  border: 1.5px solid #005e99;
  border-top: none;
}
.gamefes-guide-inner {
  padding: 8% 5% 5%;
  margin: -1px 0 0;
  background-color: rgba(255,255,255,0.9);
}

.gamefes-guide-title01 {
  font-weight: bold;
  padding: 10px 0 20px;
}
.gamefes-guide-title02 {
  font-weight: bold;
  padding: 25px 0 20px;
}
.gamefes-guide-title03 {
  font-weight: bold;
  padding: 20px 0 30px;
}
.gamefes-guide-image {
  margin: 0 10% 20px;
}
.gamefes-guide-txt {
  line-height: 1.5;
}
.gamefes-guide-caution {
  position: relative;
  margin: 0 0 0 1em;
  color: #303030;
  font-size: 11px;
}
.gamefes-guide-caution::before {
  content: '※';
  position: absolute;
  top: 0;
  left: -1em;
}

@media only screen and (min-width: 550px) {

  .gamefes-guide-body {
    border: 1.5px solid #005e99;
    border-top: none;
  }
}
@media only screen and (min-width: 650px) {

  .gamefes-guide-body {
    border: 3px solid #005e99;
    border-top: none;
  }
}
@media only screen and (min-width: 728px) {
    header .logo {
    width: 27%;
    float: left;
    padding: 2% 1% 1% 2%;
    border-radius: 0 0 0 8px;
    background-color: #ffffff;
}
    #wrapper {
        width: 320px;
        background-size: 100%, 138%;
    }
    #contents_area {
        margin: 20px 20px;
        padding: 30px 0 20px;
        height: 510px;
    }
    #contents_area:before {
    top: -18px;
}
    #footer_area {
    bottom: 60px;
}
    #copyright {
    font-size: 7.9px;
}
}
@media only screen and (min-width: 800px) {

  .gamefes-guide-body {
    border: 3px solid #005e99;
    border-top: none;
  }
}
.gamefes-guide-image img {
    width: 100%;
}

.dgf_finish_ttl {
	padding: 0% 4.5% 1%
}

.pad1 {
	padding: 2.5% 0% 1% 2.5% !important;
}

.pt_02 {
	padding-top: 0 !important;
}

.lastM img {
	margin-bottom: 9px!important;
}

.mb_1 {
	margin-bottom: 1% !important;
}

.captionTxt {
	font-size: 10px;
    color: #005e99;
    padding: 2.5% 4.5% 0.5%;
    line-height: 2;
}

.mt_14 {
	margin-top: 14px !important;
}
.mt_68 {
	margin-top: 68px !important;
}
.mt_89{
	margin-top: 89px !important;
}
.mt_85{
	margin-top: 85px !important;
}

.mb_39{
	margin-bottom: 39px !important;
}
.mb_34{
	margin-bottom: 34px !important;
}
.mb_63{
	margin-bottom: 63px !important;
}
.mb_67{
	margin-bottom: 67px !important;
}

.mb9 div img {
	margin: 0px auto 10px !important;
}

.linkTxt {
	/*color: #bc8b2e !important;*/
	text-decoration-line: underline;
}

.lih19 {
	line-height: 19px !important;
}

.wdAuto {
	width: auto !important;
}

/* 個社EPgoogleplayボタンエリア */
.googleplay-area02{
	padding: 4.375% 24.0625% 0;
}
.googleplay-area02 > h3{
	line-height: 0;
}
.googleplay-area02 > div{
	padding-top: 4.21687%;
}



/* 個社EP背景 */
#wrapper02 .bg{
	background-image: url(../img_ep/dpc_lp_dgf09_bg02.png);
	background-size: 28px auto;
	position: relative;
}


/* 個社EPコピーライト部分 */

/*#copyright > span:nth-of-type(n+2){
	background-color: #ffffff;
}*/


/* 総合EPgoogleplayボタンエリア */
.googleplay-area01{
	padding: 4% 14% 1.875%;
	text-align: center;
}
.googleplay-area01 > h3{
	line-height: 0;
}
.googleplay-area01 > div{
    padding: 3% 13% 2%;
}
.googleplay-area01 > .textLink{
    text-align: center;
    display: inline;
    text-decoration: underline;
    margin: 0 0 7px 0;
    color: #492907;
    font-size: 12px;
    font-weight: bold;
    float: none;
    padding-right: 0;
    font-family: "A-OTF ゴシックMB101";
}

.closeBtn {
    max-width: 50%;
    margin: 0 auto 5px;
}

.closeBtn > a,
.googleplay-area01 > div > a,
.googleplay-area02 > div > a {
	display: block;
}

/* 個社EPTOPTtl下部テキスト */
.ttlnotes{
	position: absolute;
    top: 112px;
    font-size: 10px;
    left: 70px;
    right: 70px;
    text-align: center;
}

/* 総合EP ERROR */
.error_text{
    text-align: center;
    font-size: 13px;
    font-weight: bold;
    letter-spacing: -0.02em;
	color: #69080f;
}
.mt_60{
	margin-top: 60px !important;
}
.mb_70{
	margin-bottom: 70px !important;
}
.box_inner02{
    max-width: 95%;
    margin: 0 auto;
    text-align: center;
    font-size: 12px;
    font-weight: bold;
    color: #492907;
    font-family: "A-OTF ゴシックMB101 Pr6";
    line-height: 19px;
}