@charset "utf-8";
/* CSS Document */
@import url("https://fonts.googleapis.com/css?family=Julius+Sans+One");
@import url("https://fonts.googleapis.com/earlyaccess/notosansjapanese.css");
@import url("https://fonts.googleapis.com/earlyaccess/mplus1p.css");
@import url("https://fonts.googleapis.com/css?family=Oswald");
@import url("https://fonts.googleapis.com/earlyaccess/hannari.css");
@import url("https://fonts.googleapis.com/earlyaccess/sawarabimincho.css");
@import url("https://fonts.googleapis.com/css?family=Roboto");
@import url("https://fonts.googleapis.com/earlyaccess/roundedmplus1c.css");


.font_min_n {font-family: "Sawarabi Mincho"; letter-spacing: 4px;}
.font_min { font-family: "Sawarabi Mincho"; font-size:48px;letter-spacing: 4px;}
.font_min_s { font-family: "Sawarabi Mincho"; font-size:20px;letter-spacing: 4px;line-height:190%;padding:20px 0;}

.font_robo {font-family: 'Roboto', sans-serif; font-style: italic; font-weight: 700;}

#dmm-olgnavi {
  position: fixed;
  z-index: 1000;
	width:100%;
    padding: 0 12px;
    border-bottom: 1px solid #ccc;
    background: #fff;
    font-size: 12px;
    overflow: hidden;
	top:0;
}
#dmm-olgnavi:after {
    display: block; 
    clear: both;
    content: '';
}
#dmm-olgnavi .dmm-btn {
    display: block;
    float: left;
    padding: 6px 0;
    text-decoration: none;
    line-height: 1;
}
#dmm-olgnavi .dmm-btn:hover {
    opacity: 0.8;
    -ms-filter: 'alpha(opacity=80)';
}
#dmm-olgnavi .dmm-logo {
    width: auto;
    height: 28px;
    border: none;
    vertical-align: middle;
}
#dmm-olgnavi .arrow {
    float: right;
    margin: 14px 0;
    padding-left: 14px;
    background: url(https://assets.kms3.com/prod/otogi/img/arrow_common.gif) no-repeat left center;
    color: #333;
    text-decoration: underline; 
    font-size: 12px;
    line-height: 1;
    letter-spacing: normal;
}
#dmm-olgnavi .arrow:hover {
    text-decoration: none;
}


/*.nav {
	position: relative;
	width:100%;
	height:40px;
	color:#000;
	margin:10px auto;
}
.nav ul {
	max-width:1400px;
	margin:0 auto;
	padding:0;
	text-align: center;
	display: flex;
	justify-content: space-between;
    flex-flow: row wrap;
}


.nav ul li {
	width:16%;
	height:40px;
	color:#fff;
	display: inline-block;
	vertical-align: middle;
	text-align: center;	
	background: rgba(92,88,37,1);
background: -moz-linear-gradient(top, rgba(92,88,37,1) 0%, rgba(5,31,51,1) 100%);
background: -webkit-gradient(left top, left bottom, color-stop(0%, rgba(92,88,37,1)), color-stop(100%, rgba(5,31,51,1)));
background: -webkit-linear-gradient(top, rgba(92,88,37,1) 0%, rgba(5,31,51,1) 100%);
background: -o-linear-gradient(top, rgba(92,88,37,1) 0%, rgba(5,31,51,1) 100%);
background: -ms-linear-gradient(top, rgba(92,88,37,1) 0%, rgba(5,31,51,1) 100%);
background: linear-gradient(to bottom, rgba(92,88,37,1) 0%, rgba(5,31,51,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#5c5825', endColorstr='#051f33', GradientType=0 );
	border:1px solid #b2a572;
	border-bottom:3px solid #b2a572;
	box-sizing: border-box;
	font-size:0;
	position: relative;

}

.nav ul li div {
	display: block;
	position: relative;
	font-family: "Sawarabi Mincho";
	font-size:16px;
	line-height:38px;
	box-sizing: border-box;
	
}

.nav ul li div span {
		display: none;
	}



.nav ul li a {
	color:#b2a572;
	text-decoration: none;
}
.nav ul li a:hover {color:#fff;}
.nav ul li:hover {
	color:#fff;
	background: rgba(0,0,0,1);


}*/



#top_wrapper {
	width:100%;
	margin:0 auto;
	padding-top:40px;
	position: relative;
	overflow: hidden;
	background: url("https://assets.kms3.com/prod/otogi/img/bg_sky.png");
	background-attachment: fixed;
	background-position: top center;
	background-size: cover;
}


.index_top {
	position: relative;
	max-width:1400px;
	text-align: center;
	margin:0 auto;
}

.index_top img {
	max-width:100%;
}

#index_wrapper {
	/* position: relative; */
    /* margin: 0 auto; */
    /* max-width: 1400px; */
    /* height: auto; */
    /* font-size: 0; */
    /* display: flex; */
    /* justify-content: space-between; */
    /* flex-flow: row wrap; */
    width: 100%;
    background-color: #231815;

}


.pick_box {
	/*position: relative; */
    width: 1120px;
    /*height: 140px;*/
    display: flex;
    justify-content: center;
    margin: 0 auto;
    /* flex-flow: row wrap;*/
}

.pick_title {
	/*position: relative; */
    width: 21%;
    /* height: 100%; */
    text-align: left;
    display: inline-block;
    vertical-align: middle;
    padding: 20px;
}
.pick_title img {
	width:100%;
	vertical-align: middle;
}

.pick_rote_box {
	position: relative;
	width:60%;
	display: inline-block;

	vertical-align: middle;
}

.pick_rote {
	position: relative;
	width:40%;
	display: inline-block;
	vertical-align: middle;
	padding:10px;
	
}

.pick_banner {
	width:100%;
	display: inline-block;
}

.pick_banner img {
	width:100%;
}

.pick_qr {
	position: relative;
	padding:10px;

	/*width:40%;*/
	display: inline-block;
	vertical-align: middle;
	overflow: hidden;
}
.pick_qr img {
	max-width:100%;
	vertical-align: middle;
}

.pick_btn {
	position: relative;
	max-width:224px;
	width:16%;
	vertical-align: middle;
	display:inline-block;

}

.pick_btn img {
	width:100%;
	height:auto;
	vertical-align: middle;
	overflow: hidden;
}






/* #footer_box {
	position: relative;
	max-width:1400px;
	margin:0 auto;
	padding:20px;
}

.footer_icon {
	float:left;
}
.footer_text {
	float:left;
	display: inline-block;
	vertical-align: top;
	text-align:left;
	margin-left:20px;
}
.footer_link{
	float:right;
	display: inline-block;
	text-align:right;
}

.comp {
	font-size:18px;
	font-weight: 700;
	line-height: 100%;
}*/


/* */






body {
	font-family: 'Roboto', 'Noto Sans Japanese', sans-serif;
    font-size:14px;
	margin:0;
	padding:0;
	width:100%;
	height:auto;
	background-color: transparent;
}

img {
	padding:0;
	margin:0;
}

a { color:#000;}
a:hover {color:#05d3c7;}

header {

	
}
#bg_header {
	width:100%;
	height:auto;
	margin:0 auto;
	overflow: hidden;	
	background: #0a0b10;
}

#bg_header img {
	padding:0;
	margin:0;
	max-width:100%;
	height:auto;
	vertical-align: bottom;
}

.img_header_pc {
	max-width:1200px;
	margin:0 auto;

	position: relative;
}

.dmm_box {
	position: absolute;
	width:auto;
	max-height:124px;
	right:50px;
	bottom:50px;
	text-align: left;
	display: block;
}

.dmm_box2 {
	margin-top:20px;
	background: #231815;
	width:auto;
	max-height:124px;
	text-align: center;
	display: inline-block;
}

.dmm_btn_pc {
	display: inline-block;
	max-height:104px;
	margin:10px;
	position: relative;
	vertical-align: middle;

}
.dmm_btn_pc img {
	position: relative;
	width:auto;
	max-height:104px;
}

.dmm_and {
	display: inline-block;
	position: relative;
	vertical-align: middle;
}
.dmm_qr {
	display: inline-block;
	position: relative;
	max-height:104px;
	margin:10px;
	vertical-align: middle;
}
.dmm_qr img {
	position: relative;
	max-height:100%;
}

.dmm_box_sp {
	width:100%;
	height:auto;
	padding:10px 0;
	background: #231815;
	text-align: center;
}
.dmm_btn_sp {
	width:100%;
}
.dmm_btn_sp img {max-width:100%;}





.nav_top {
	width:100%;
	height:50px;
	position: fixed;
	background: rgba(0,0,0,0.6);

	color:#000;
	top:0;
	z-index:1000;
	margin:0 auto;
}
.nav_top ul {
	max-width:1024px;
	margin:0 auto;
	text-align: center;
	display: table;
}

.nav_line {
	width:1px;
	height:30px;
	background: #b2a572;
	display: inline-block;
	vertical-align: middle;
	margin:10px 0;
}

.nav_top ul li {
	width:15%;
	height:50px;
	color:#fff;
	display: table-cell;
	vertical-align: middle;
	text-align: center;	

}

.nav_top ul li div {
	display: block;
	position: relative;
	font-family: "Sawarabi Mincho";
	font-size:16px;
	box-sizing: border-box;
	margin:10px;	
	
}



.nav_top ul li a {
	color:#b2a572;
	text-decoration: none;
	text-shadow: -1px 0 #000, 0 1px #000, 1px 0 #000, 0 -1px #000;
	-moz-text-shadow: -1px 0 #000, 0 1px #000, 1px 0 #000, 0 -1px #000;
	-webkit-text-shadow: -1px 0 #000, 0 1px #000, 1px 0 #000, 0 -1px #000;
	-ms-text-shadow: -1px 0 #000, 0 1px #000, 1px 0 #000, 0 -1px #000;
}
.nav_top ul li a:hover {color:#fff;}


/* sp nav */

@media (max-width: 768px) {
.nav_top {background-color:transparent;}	
.button_container {
  position: fixed;
  top: 15px;
  right: 15px;
  height: 27px;
  width: 35px;
  cursor: pointer;
  z-index: 9999;
  transition: opacity .25s ease;
}
.button_container:hover {
  opacity: .7;
}
.button_container.active .top {
  -webkit-transform: translateY(11px) translateX(0) rotate(45deg);
          transform: translateY(11px) translateX(0) rotate(45deg);
  background: #05d3c7;
}
.button_container.active .middle {
  opacity: 0;
  background: #05d3c7;
}
.button_container.active .bottom {
  -webkit-transform: translateY(-11px) translateX(0) rotate(-45deg);
          transform: translateY(-11px) translateX(0) rotate(-45deg);
  background: #05d3c7;
}
.button_container span {
  background: #05d3c7;
  border: none;
  height: 5px;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  transition: all .35s ease;
  cursor: pointer;
}
.button_container span:nth-of-type(2) {
  top: 11px;
}
.button_container span:nth-of-type(3) {
  top: 22px;
}

.overlay {
  position: fixed;
  background: #000;
  top: 0;
  left: 0;
  width: 100%;
  height: 0%;
  opacity: 0;
  visibility: hidden;
  transition: opacity .35s, visibility .35s, height .35s;
  overflow: hidden;
}
.overlay.open {
  opacity: .9;
  visibility: visible;
  height: 100%;
}
.overlay.open li {
  -webkit-animation: fadeInRight .5s ease forwards;
          animation: fadeInRight .5s ease forwards;
  -webkit-animation-delay: .35s;
          animation-delay: .35s;
}
.overlay.open li:nth-of-type(2) {
  -webkit-animation-delay: .4s;
          animation-delay: .4s;
}
.overlay.open li:nth-of-type(3) {
  -webkit-animation-delay: .45s;
          animation-delay: .45s;
}
.overlay.open li:nth-of-type(4) {
  -webkit-animation-delay: .50s;
          animation-delay: .50s;
}
.overlay nav {
  position: relative;
  height: 100%;
  top: 55%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  text-align: center;
}
.overlay ul {
  list-style: none;
  padding: 0;
  margin: 0 auto;
  display: inline-block;
  position: relative;
  height: 100%;
	width:100%;
}
.overlay ul li {
  display: block;
 width:200px;
  height: 16%;
  min-height: 50px;
  position: relative;
  opacity: 0;
	margin:0 auto;
}
.overlay ul li a {
  display: block;
  position: relative;
  color: #b2a572;
  text-decoration: none;
  overflow: hidden;
}
.overlay ul li a:hover:after, .overlay ul li a:focus:after, .overlay ul li a:active:after {
  width: 100%;
}

.nav_line {
	display: none;
}	

@-webkit-keyframes fadeInRight {
  0% {
    opacity: 0;
    left: 20%;
  }
  100% {
    opacity: 1;
    left: 0;
  }
}

@keyframes fadeInRight {
  0% {
    opacity: 0;
    left: 20%;
  }
  100% {
    opacity: 1;
    left: 0;
  }
}

}


#wrapper {
	position:relative;
	width:100%;
	margin:0 auto;
	padding-top:50px;
	
}

.wrapper {
	text-align: center;
	
}



.title {padding-top:40px;}

#world {
	background: #fff;
	background: url("https://assets.kms3.com/prod/otogi/img/bg_world.png");
	background-position: center;
	background-size: cover;

}

.world_cont {
	position: relative;
	max-width:1200px;
	margin:0 auto;
}


#chara {
	background: #000;
	background: url("https://assets.kms3.com/prod/otogi/img/bg_chara.png");
	background-position: center;
	background-size: cover;

}

.chara_cont {
	position: relative;
	max-width:1200px;
	margin:0 auto;
	
}

.btn_list {
	width:100%;
	position:absolute;
	left:50%;
	transform: translateX(-50%);
	bottom:-30px;

}

.btn_list div {
	display: inline-block;
	vertical-align: top;

}

.btn_list .tmb-chara01::after {
	content: url(https://assets.kms3.com/prod/otogi/img/btn_p_on.png);
	-moz-content: url(https://assets.kms3.com/prod/otogi/img/btn_p_on.png);
	-webkit-content: url(https://assets.kms3.com/prod/otogi/img/btn_p_on.png);
}
.btn_list .tmb-chara02::after {
	content: url(https://assets.kms3.com/prod/otogi/img/btn_v_on.png);
	-moz-content: url(https://assets.kms3.com/prod/otogi/img/btn_v_on.png);
	-webkit-content: url(https://assets.kms3.com/prod/otogi/img/btn_v_on.png);
}
.btn_list .tmb-chara03::after {
	content: url(https://assets.kms3.com/prod/otogi/img/btn_s_on.png);
	-moz-content: url(https://assets.kms3.com/prod/otogi/img/btn_s_on.png);
	-webkit-content: url(https://assets.kms3.com/prod/otogi/img/btn_s_on.png);
}
.btn_list .tmb-chara04::after {
	content: url(https://assets.kms3.com/prod/otogi/img/btn_d_on.png);
	-moz-content: url(https://assets.kms3.com/prod/otogi/img/btn_d_on.png);
	-webkit-content: url(https://assets.kms3.com/prod/otogi/img/btn_d_on.png);
}
.btn_list .tmb-chara05::after {
	content: url(https://assets.kms3.com/prod/otogi/img/btn_t_on.png);
	-moz-content: url(https://assets.kms3.com/prod/otogi/img/btn_t_on.png);
	-webkit-content: url(https://assets.kms3.com/prod/otogi/img/btn_t_on.png);
}


.btn_list div::after {
display: none;
    opacity: 0;
    -ms-filter: 'alpha(opacity=0)';
}

.btn_list div.chara-open:hover img {
	display: none;
    opacity: 0;
    -ms-filter: 'alpha(opacity=0)';
}

.btn_list div:hover::after {
	display: inline-block;
    opacity: 1;
    -ms-filter: 'alpha(opacity=100)';
}

.btn_list div.on-target img {
display: none;
    opacity: 0;
    -ms-filter: 'alpha(opacity=0)';
}

.btn_list div.on-target::after {
	display: inline-block;
    opacity: 1;
    -ms-filter: 'alpha(opacity=100)';
}

.text_chara {
	position: absolute;
	left:0;
	display: inline-block;
	vertical-align: middle;
	z-index:10;
}

.img_chara {
	position: absolute;
	right:0;
	display: inline-block;
	vertical-align: middle;
}


.chara_box {
	max-width:1024px;
	margin:0 auto;
    position:relative;
	width:100%;
	height:500px;
	overflow: hidden;
	
}

.chara_box .chara {
    position: absolute;
    top: 0;
    left: 0;
    display: none;
    width: 100%;
}

.chara_box .chara.on-target {
    display: block;
}


#body {
	background: #fff;
	width:100%;
	background: url("https://assets.kms3.com/prod/otogi/img/bg_body.png");
	background-position:bottom;
	background-size:cover;
	margin-bottom:-14px;
}

.bg_body {
	max-width:1024px;
	margin:0 auto;
	padding-bottom:50px;
}
.img_game, .img_pv {
	display: flex;
	justify-content: space-between;
    flex-flow: row wrap;
	width:100%;
}

.img_game div, .img_pv div {
	position: relative;
}

.twitter_box {
	position: relative;
	margin:0 auto;
	width:320px;
	height:450px;
}

.twitter_cont {
	position: absolute;
	top:20px;
	width:100%;
	margin: 0 auto;
}

.twitter_btn {
	position: absolute;
	display: block;
	width:100%;
	margin: 0 auto;
	bottom:30px;
}

#line {
	margin-top:50px;
}

.line_stamp {
	background: #3aae36;
	margin:0 auto;
	border-radius: 20px;
	padding:20px;
}
.line_title img {width:100%; height:auto; margin-bottom:10px;}
.line_box {
	margin:0 auto;
}
.line_cont {
	position: relative;
	display: block;
	
}
.line_chara{
	display: inline-block;
	position: relative;
	max-width:380px;	
}
.line_qr{
	position: absolute;
	bottom:0;
}


.line_btn {
	position: absolute;
	bottom:0;
	right:10px;
}

.line_btn:hover {
	transform: translateY(3px);
}	

.line_img {
	width:auto;
	display: inline-block;
	text-align: right;
}

.line_img img {
	width:100%;
	height:auto;
}
hr {
	border:1px solid #fff;
	border-bottom:0;
}



.space {height:50px;}

.top_btn {
	position: fixed;
	bottom:20px;
	right:20px;
	font-size:40px;
	z-index:50;
	color:#05d3c7;
}
.top_btn a {color:#05d3c7;}

.btn_click img:hover {
	transform: translateY(2px);
	opacity: 0.8;
}

/*footer {
	position: relative;
	
}*/

.footer_wrapper {
	color:#fff;
	width:100%;
	background: #231815;
}

.footer_wrapper p {
	padding:15px;
	margin: 0 auto;
	max-width: 1200px;
	display: block;
	text-align: right;

}

@media (max-width: 480px){
	.footer_wrapper p {
		text-align: center;
	
	}
}

.footer_wrapper p a{
	color:#fff;
	text-decoration: none;
}

.clear {clear:both;}