@charset "UTF-8";
/* CSS Document */
/* http://meyerweb.com/eric/tools/css/reset/
v2.0 | 20110126
License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
margin: 0;
padding: 0;
border: 0;
font-size: 100%;
font: inherit;
vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
display: block;
}
body {
line-height: 1;
}
ol, ul {
list-style: none;
}
blockquote, q {
quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
content: '';
content: none;
}
table {
border-collapse: collapse;
border-spacing: 0;
}
.clearfix:after {
    content:" ";
    display:block;
    clear:both;
}
/*****************************************/


body {
	font-size: 15px;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	background: url(../../img/top/main_bg.jpg) #bf5687;
}
a {
	text-decoration: none;
}
a:hover {
	filter:alpha(opacity=80)
	-moz-opacity:0.80;
	-khtml-opacity:0.80;
	opacity:0.80;
}
.inner_content {
	max-width: 1000px;
	width: 100%;
	margin: 0 auto;
	/* display: flex; */
	/* align-items: center; */
}

img {
    width: auto;
    max-width: 100%;
    margin: 0;
    padding: 0;
    vertical-align: bottom;
}

/*******************
header
*******************/
header {
	position: fixed;
	z-index: 100;
	width: 100%;
	background: #111;
}
.header_top {
	/* background-color: #fff; */
	/* background-color: #111; */
	position: relative;
	max-width: 1000px;
	width: 100%;
	margin: 0 auto;
}
.logo_contents {
	padding: 5px 20px;
	float: right;
}
.header_top-logo_haruka {
	/* position:absolute; */
	/* top:12px; */
	/* left:2%; */
	float: left;
	width: 18%;
	margin-top: 6px;
}

.header_top-logo_kt,
.header_top-line,
.header_top-twitter {
	float: left;
}
.header_top-logo_kt,
.header_top-twitter
 {
	margin-left: 20px;
}
.reservation_content {
	float: left;
}
.reservation_content p ,
.reservation_content  a {
	float: left;
}
.reservation_content p {
	/* line-height: 38px; */
	/* padding-top: 12px; */
	color: #400000;
	font-weight: bold;
	font-size: 13px;
	background: #e5d16a;
	height: 40px;
	line-height: 40px;
	padding: 0 22px;
	display: none;
}
.reservation_content p span {
	font-size: 18px;
}
.reservation_content a {
	display: block;
	font-weight: bold;
	font-size: 15px;
	color: #fff;
	background: #f90101;
	background: -moz-linear-gradient(top, #f90101 0%, #a30808 100%);
	background: -webkit-linear-gradient(top, #f90101 0%,#a30808 100%);
	background: linear-gradient(to bottom, #f90101 0%,#a30808 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f90101', endColorstr='#a30808',GradientType=0 );
	text-shadow: 0px 1px 2px rgba(0, 0, 0, 0.6);
	width: 220px;
	height: 40px;
	text-align: center;
	line-height: 40px;
	/* margin-right: 20px; */
}
.reservation_content a span {
	display: block;
	/* background: url(../img/arrow01.png) no-repeat 10% 50%; */
}
#naviback {
	/* height: 70px; */
	position:relative;
	/* top:0; */
	/* left: 0; */
	margin: 0 auto;
	background: #f3719e;
	background: -moz-linear-gradient(top, #f3719e 0%, #f180a9 22%, #bf5687 72%);
	background: -webkit-linear-gradient(top, #f3719e 0%,#f180a9 22%,#bf5687 72%);
	background: linear-gradient(to bottom, #f3719e 0%,#f180a9 22%,#bf5687 72%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f3719e', endColorstr='#bf5687',GradientType=0 );
	border-top: 1px solid #FFF;
	box-shadow: 0px 3px 3px rgba(0, 0, 0, 0.37);
}

#navi {
	/* width: 846px; */
	/* position:absolute; */
	/* top: 0; */
	/* left:50%; */
	/* -webkit-transform: translate(-50%,0); */
	/* -moz-transform: translate(-50%,0); */
	/* -ms-transform: translate(-50%,0); */
	/* -o-transform: translate(-50%,0); */
	/* transform: translate(-50%,0); */
	float: left;
	width: 82%;
}
#navi ul {
	/* display: flex; */
	/* align-items: center; */
}
#navi li {
	float: left;
	width: 14.28%;
	/*box-sizing: border-box;*/
	/* width: 117px; */
	/* border-right: 1px solid #ffcee3; */
	margin: 0;
}
#navi li:hover,
#navi li.current{
	background-color: rgba(208,0,29,.5);
}
#navi li:last-child {
	border-right:none;
}
#navi li img {
	margin: 0 auto;
	/* max-width: inherit; */
}
#navi li a {
	color: #fff;
	font-size: 15px;
	font-weight: bold;
	text-align: center;
	display: block;
	/* font-family:"ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro","ＭＳ Ｐ明朝", "MS PMincho", serif; */
	font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
	/* padding: 16px 0; */
	border-left: 1px solid rgba(255, 206, 227, 0.49);
	margin: 6px 0;
	position: relative;
}
#navi li a:hover {
	opacity: inherit;
}
#navi li:last-child a {
	border-right: 1px solid rgba(255, 206, 227, 0.49);
}
#navi li a.active {
	text-shadow:0px 0px 10px #cc99ff;
}
.contents {
	color:#444444;
}

#navi li.comming_soon {
	color: #993d5c;
	font-size: 15px;
	font-weight: bold;
	text-align: center;
	display: block;
	/* font-family:"ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro","ＭＳ Ｐ明朝", "MS PMincho", serif; */
	font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
	/* padding: 17px 0 5px; */
}
#navi li.comming_soon span {
	display: block;
	font-size: 10px;
	color: #ffb2cc;
	margin-top: 3px;
}
#navi li.comming_soon img {
	margin: 6px 0;
	border-left: 1px solid rgba(255, 206, 227, 0.49);
}
#navi li .new {
	color: #fff000;
	display: block;
	font-size: 10px;
	margin-top: 3px;
}


/*******************************
	footer
********************************/
.footer_top {
	width: 100%;
	/* background-color: #bf5687; */
}
.footer_bottom {
	width: 100%;
	background-color: #fff;
}
.footer_top-bnr_list {
	padding: 60px 0 50px;
	display: block;
}
.bnr_list-top {
	margin-bottom: 1%;
}
.bnr_list-top li {
	float: left;
	margin: 0 0.5%;
	width: 32.3%;
}
.bnr_list-top li:last-child {
	margin-right: 0;
}
/*.bnr_list-bottom {
	display: table;
	margin: 0 auto;
}*/
/*.bnr_list-bottom li {
	display: table-cell;
	padding: 0 3%;
	width: 31.6%;
}*/
/*↓追記*/
.bnr_list-bottom li {
	float: left;
	margin: 0 0.5%;
	width: 32.3%;
}
.bnr_list-bottom li:last-child {
	margin-right: 0;
}
/*↑追記*/
.footer_bottom {
	padding: 40px 0 30px;
}
.footer_bottom-cont {display: block;}
.footer_bottom-sns p {
	text-align: center;
	margin-bottom: 12px;
}
.sns_list {
	display: table;
	margin: 0 auto 45px;
}
.sns_list li {
	display: table-cell;
	padding: 0 10px;
}
.footer_bottom-attention .logo_ps {
	text-align: center;
	margin-bottom: 20px;
}
.footer_bottom-attention .logo_ps img {
	display: inline-block;
	margin: 0 7px;
}
.attention_text {
	text-align: center;
	line-height: 2.8;
	font-size: 11px;
}
.footer_bottom-cont-attention_text {
	text-align: center;
	margin-bottom: 60px;
	font-size: 13px;
}

.attention_text img[src$=".gif"],
.attention_text img[src$=".png"] {
	mage-rendering: -moz-crisp-edges;         /* Firefox */
	image-rendering: -o-crisp-edges;         /* Opera *//* image-rendering: -webkit-optimize-contrast; *//* Webkit (非標準の名前) */
	image-rendering: pixelated;
	image-rendering: crisp-edges;
	-ms-interpolation-mode: nearest-neighbor;  /* IE (非標準プロパティ) */
}

.attention_text span img {
	max-height:16px;
}




.contents {
	padding-top: 114px;
	max-width: 1200px;
	margin: 0 auto;
	width: 100%;
	overflow: hidden;
}

.contents_index {
	padding-top: 114px;
	max-width: 1500px;
	margin: 0 auto;
	width: 100%;
	overflow: hidden;
}
.page_hl-box {
	background: #522d45;
	background: -moz-linear-gradient(left, #522d45 0%, #492a4e 50%);
	background: -webkit-linear-gradient(left, #522d45 0%,#492a4e 50%);
	background: linear-gradient(to right, #522d45 0%,#492a4e 50%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#522d45', endColorstr='#492a4e',GradientType=1 );
	margin-top: 40px;
	border-radius:3px;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.58);
}

@media screen and (max-width: 930px) {
	.page_hl-box {margin-top: 1%;}
}

@media screen and (max-width: 700px) {
	.page_hl-box {margin-top: -1%;}
}

.page_hl-box .inner_content {
	position: relative;
	width:95%;
	/* display: flex; */
}

@media screen and (max-width: 640px) {
	.page_hl-box {margin-top: 0;border-radius: 0;}
}

.page_hl {
	/*background: url(../img/bg_hl_l.png) no-repeat center center;*/
	/* font-family:"ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro","ＭＳ Ｐ明朝", "MS PMincho", serif; */
	font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
	font-size: 36px;
	color: #fff;
	line-height: 75px;
}
.btn_soukanzu {
	position: absolute;
	top: 20px;
	right: 0;
	color: #cc52a5;
	text-align: center;
	font-size: 18px;
	border: 2px solid #cc52a5;
	width: 160px;
	height: 50px;
	line-height: 50px;
	background: url(../img/puple_arrow.png) no-repeat 20px center;
}
.icon_ps img {
	vertical-align: middle !important;
	margin: 0 5px;
}


/********************
トップページ
********************/


#mvimg {
	width:100%;
	/* max-width: 1200px; */
	margin: 0 auto;
	/* height:900px; */
	/* background:url(../../img/top/mvimg.png) no-repeat top center; */
	/* background-size:cover; */
	/* position:relative; */
	/* top:0; */
	/* left:0; */
}

#mvimg h2 {
	/* position:absolute; */
	/* top:665px; */
	/* left: 50%; */
	/* -webkit-transform: translate(-50%,0); */
	/* -moz-transform: translate(-50%,0); */
	/* -ms-transform: translate(-50%,0); */
	/* -o-transform: translate(-50%,0); */
	/* transform: translate(-50%,0); */
	position: relative;
}
#mvimg h2 img {
	width: 100%;
}

#mvimg p {
	position:absolute;
	top:825px;
	left: 50%;
	-webkit-transform: translate(-50%,0);
	-moz-transform: translate(-50%,0);
	-ms-transform: translate(-50%,0);
	-o-transform: translate(-50%,0);
	transform: translate(-50%,0);
}

#mvimg .movie {
	position:absolute;
	top:30px;
	right:2%;
}

#mvimg .ealrybooking {
	position:absolute;
	/* top:180px; */
	top: 31%;
	/* right: 2%; */
	left: 2%;
	width: 35%;
}
#mvimg .ealrybooking a {
	display: block;
}

#news {
	/* max-width: 1200px; */
	width: 100%;
	margin:0 auto;
	/* height:60px; */
	position:relative;
	padding: 16px 0;
	background: #FFF;
	display: flex;
}
#news > * {
	float: left;
}
#news > .clearfix {margin-top: 2px;width: 15%;margin-left: 7%;margin-right: 2%;}


#news a {
	color:#cc2996;
	text-decoration:underline;
}

.tit_news {
	/* position:absolute; */
	/* top:20px; */
	/* left:0; */
}

.news_container {
	font-size: 18px;
	/* font-size: 120%; */
	/* height:30px; */
	/* position:absolute; */
	/* top:15px; */
	/* left:240px; */
	/* width: 650px; */
	/* margin-left: 40px; */
	/*margin-right: 28%;*/
}
@media screen and (max-width: 1200px) {
.news_container {
		font-size: 16px;
	}
}
@media screen and (max-width: 970px) {
.contents_index {
	   padding-top: 12%;
	}
}
@media screen and (max-width: 930px) {
.news_container {
		font-size: 14px;
	}

}
@media screen and (max-width: 860px) {
.news_container {
		font-size: 12px;
		margin: 0 2% 0 0;
	}
.contents_index {
	   padding-top: 12.5%;
	}
}

.txtarea {
	/* overflow:hidden; */
	/* height:30px; */
}

.txtarea p {
	padding: 5px 0 0 20px;
	border-left:1px solid #cccccc;
	display: flex;
	line-height: 1.5;
}

.txtarea .date {
	padding:0 20px 0 0;
}

.btn_open {
	cursor:pointer;
	position:absolute;
	top: 15px;
	right: 10%;
	width: 30%;
	text-align: right;
}

#banner {
	/* background:url(../../img/top/bg_banner.png) repeat-x top center; */
	/* background: #bf5687; */
	/* padding: 12px 0 0 0; */
	/* max-width: 1200px; */
	width: 100%;
	margin: 0 auto;
}
#banner .app {
	margin-bottom: 3%;
	display: block;
}

#banner ul {
	width: 100%;
	margin: 0 auto;
}

#banner ul li {
	float:left;
	/* margin: 0 0 12px 12px; */
	width: 33.33%;
	/* margin-left: 0.7%; */
	/* margin-bottom: 0.7%; */
}
#banner ul li img {
	width: 100%;
}

#banner ul li:first-child,
#banner ul li:nth-child(4) {
	margin-left:0;
}

/* バナー調整 */

.half_banner{}
.half_banner a{width: 50%; float: left; display: block;}

@media screen and (max-width: 640px) {
.half_banner{}
.half_banner a{width: 100%; float: none; display: block;}
	}






#feature {
	/* max-width: 1200px; */
	width: 100%;
	margin: 0 auto;
}
#feature .box_feature01 {
	width:100%;
	height:720px;
	background: url(/harukaultimate/img/top/cont_bg1.jpg) no-repeat top center;
	background-size:cover;
	position:relative;
	top:0;
	left:0;
}

#feature .box_feature02 {
	width:100%;
	height:720px;
	background:	url(/harukaultimate/img/top/cont_bg2.jpg) no-repeat top center;
	background-size:cover;
	position:relative;
	top:0;
	left:0;
}

#feature .box_feature03 {
	width:100%;
	height:760px;
	background:	url(/harukaultimate/img/top/cont_bg3.jpg) no-repeat top center;
	background-size:cover;
	position:relative;
	top:0;
	left:0;
}

#feature .box_feature04 {
	width:100%;
	height:720px;
	background:	url(/harukaultimate/img/top/cont_bg4.jpg) no-repeat top center;
	background-size:cover;
	position:relative;
	top:0;
	left:0;
}


#feature .txt_box {
	background: rgba(255, 255, 255, 0.9);
	padding: 10px;
	width: 440px;
	position:absolute;
	bottom:30px;
	right:10%;
	box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.65);
}

#feature .txt_box02 {
	background: rgba(255, 255, 255, 0.9);
	padding: 10px;
	width: 440px;
	position:absolute;
	bottom:30px;
	left:10%;
	box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.65);
}

#feature .txt_box3 {
	background: rgba(255, 255, 255, 0.9);
	padding: 10px;
	width: 440px;
	position:absolute;
	bottom:20px;
	right:10%;
	box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.65);
}

#feature .txt_box_inner {
	width: 396px;
	border: 2px solid #e6d68a;
	padding: 25px 20px 20px;
}

#feature h3 {
	margin:0 0 35px 0;
}


#feature p{
	font-size: 18px;
	line-height:1.7;
	margin:0 0 35px 0;
}

#feature p.feature03txt{
	font-size: 18px;
	line-height:1.7;
	margin:0 0 0 0;
}

#feature .btn_feature {
	margin:0;
	text-align:center;
}

.souki_download {
	width:940px;
	height:360px;
	position:absolute;
	top:840px;
	left: 50%;
	-webkit-transform: translate(-50%,0);
	-moz-transform: translate(-50%,0);
	-ms-transform: translate(-50%,0);
	-o-transform: translate(-50%,0);
	transform: translate(-50%,0);
	background:url(../../img/top/bg_download.png) no-repeat center center;

}

.box_download {
	position:absolute;
	top:100px;
	right:50px;
	text-align:center;
}

.box_download p:nth-child(2) {
	margin:20px 0 40px 0;
}

#product {
	/* background:	url(../img/bg.png) no-repeat center center; */
	/* background-size:cover; */
	/* background-attachment: fixed; */
	/* padding:60px 0 20px 0; */
	/* background: url(../../img/top/main_bg.jpg) #bf5687; */
	/* background-size: 100%; */
}
#tresurebox + #product_inner {
	padding-top: 60px;
}
#product_inner {
	/* width: 1060px; */
	/* margin:0 auto 40px auto; */
	/* padding:60px; */
	/* background: url(../../img/top/main_bg.jpg) #bf5687; */
	color: #FFF;
	background-color: rgba(172,32,98,0.70);
}
#product_inner .filter {
	/* background-color:rgba(172,32,98,0.70); */
	/* padding-bottom: 7%; */
	max-width: 1060px;
	width: 100%;
	margin: 0 auto;
	text-shadow: 0px 0px 5px rgba(150, 56, 97, 1),0px 0px 5px rgba(150, 56, 97, 1);
}

#product_inner p.chui {
	font-size: 14px;
	color: #FFF;
	margin: 10px 60px 50px;
	letter-spacing: 0.07em;
}

#product_inner h3 {
	margin:0 0 35px 0;
	background: #c15586;













}
#product_inner h3 img {
	margin: 0 auto;
}

.maru_half {
    border-radius: 50%;
    line-height: 31px;
    text-align: center;
    /* padding-top: 0.1em; */
    /* padding-left: 0.5em; */
    /* padding-right: 0.5em; */
    /* margin:0 15px 0 0; */
    width: 30px;
    height: 30px;
    display: block;
}

.pink {
	color: #ffd400;
	border: 1px solid #ffd400;
	/* background: #e55c8a; */
	font-weight:bold;
	font-size: 15px;
	box-shadow: 0px 0px 5px rgba(150, 56, 97, 1),0px 0px 5px rgba(150, 56, 97, 1);
}

.product_detail dl dt {
	/* margin:0 0 20px 0; */
	/* float:left; */
	/* width: 45px; */
	margin-right: 1em;
}

.pro_tit {
	font-weight:bold;
	font-size: 20px;
	color: #ffd400;
	display: inline-block;
	margin-bottom: 5px;
}
.pro_tit.ruby {
	margin-top: -0.9em;
}

.product_detail dl dd {
	/* width: 405px; */
	/* float:right; */
	margin:0 0 20px 0;
	line-height:1.8;
	font-size: 18px;
}


.product_detail dl {
	/* font-size:13px; */
	display: flex;
}


#product_inner p {
	font-size:18px;
}

#product_inner table {
	text-align:left;
	margin: 20px 60px 30px;
	font-size: 18px;
}

#product_inner th {
	padding: 10px 40px 10px 0;
	font-weight:bold;
}

#product_inner td {
	padding:10px;
}

.txtbold {
	font-weight:bold;
}

#product_inner h4 {
	font-size:18px;
	margin: 0 60px 20px;
	font-weight:bold;
}

.product_detail {
	margin: 0 60px;
}
.pro_box {
	width:48%;
	float:left;
	margin-bottom: 45px;
}

.pro_box:last-child {
	margin-left: 4%;
}


#product_inner dl a{
	/* color: #ffd400; */
	/* text-decoration:underline; */
	/* border: 2px solid #ffd400; */
	/* width: 120px; */
	/* height: 30px; */
	/* line-height: 30px; */
	margin-top: 10px;
	display: block;
	/* text-align: center; */
	/* background: url(../img/arrow02.png) no-repeat 6% 50%; */
}

#product_inner h5 {
	font-size:18px;
	margin:0 0 20px 0;
	color:#cc52a3;
}

#product_inner p {
	font-size: 20px;
	margin: 0 60px;
}

#product_inner .btn_reserve {
	text-align:center;
	padding-bottom: 60px;
}
#product_inner .btn_reserve img {
	margin: 0 auto;
}

#proinfo {
	/* height:480px; */
	/* background: url(../../img/top/bg_proinfo.png); */
	/* background-size:cover; */
	text-align:center;
	position:relative;
	padding:120px 0;
}

.proinfo_inner {
	width:620px;
	margin:0 auto;
}

.proinfo_inner h3 {
	height:60px;
}

.proinfo_box {
	background: rgba(255, 255, 255, 0.9);
	padding:30px 0;
	font-size: 16px;
}

.txt_price {
	color: #bf5687;

}

#proinfo table {
	width:460px;
	margin:0 auto;
	line-height:1.5;
	text-align:left;
}

#proinfo table th {
	width:35%;
	font-weight:bold;
}

#proinfo table th,
#proinfo table td {
	padding:20px 0;
	border-bottom:1px solid #cccccc;
}

#proinfo table td .btn {
	width: 80%;
}

#proinfo .cap {
	font-size: 13px;
	line-height: 1.7;
	display: block;
	margin-top: 0.8em;
}

@media screen and (max-width: 639px) {
#proinfo .cap {
	font-size: 9px;
	line-height: 1.7;
	margin-top: 0.8em;
}
}

/********************
ゲームの特徴

********************/

.feature_inner {
	background: url(../img/bg.png) no-repeat top center #faedf6;
	text-align:center;
	padding:120px 0 60px 0;
}


.feature01 {
	background:url(../../img/features/bg_feature01.png) no-repeat top center;
	height:660px;
	position:relative;
	margin:120px 0 0 0;
}

.feature02 {
	background:url(../../img/features/bg_feature02.png) no-repeat top center;
	height:660px;
	position:relative;
	margin:120px 0 60px 0;
}

.feature03 {
	background:url(../../img/features/bg_feature03.png) no-repeat top center;
	height:660px;
	position:relative;
	margin:120px 0 0 0;
}

.feature04 {
	background:url(../../img/features/bg_feature04.png) no-repeat top center;
	height:660px;
	position:relative;
	margin:120px 0 60px 0;
}


.feature_box {
	width:480px;
	height:330px;
	position:absolute;
	top:270px;
	left:46%;
	background:url(../../img/features/bg_feature_txt.png) no-repeat center center;
	padding:30px;
}

.feature_box02 {
	width:480px;
	height:330px;
	position:absolute;
	top:270px;
	left:19%;
	background:url(../../img/features/bg_feature_txt.png) no-repeat center center;
	padding:30px;
}

.feature_box p,
.feature_box02 p {

	margin:20px 0 20px 20px;
	text-align:left;
}

.feature_box p:fist-child,
.feature_box02 p-first:child {
	margin-top:0;
}

.feature_box p:last-child,
.feature_box02 p:last-child {
	margin-bottom:0;
	margin-left:0;
}

/********************
世界観
********************/


.world_inner{
width: 100%; max-width: 1200px;  margin: 0 auto;
background:url(/harukaultimate/img/story/arasuji_bg.png) top center no-repeat;
-moz-background-size:100% auto;
background-size:100% auto;
padding-top: 40%;
padding-bottom: 50px;

}

.up{max-width: 675px; width: 95%; margin: 0 auto;}
.up img{width: auto; max-width: 100%;}


.world_inner_bg{
width: 100%; max-width: 1200px;  margin: 0 auto;
background-color:rgba(255,255,255,0.60);
margin-bottom: 0px;
}




.world_inner_bottom{
width: 100%; max-width: 1200px;  margin: 0 auto;
background:url(/harukaultimate/img/story/arasuji_bg_bottom.png) bottom center no-repeat;
-moz-background-size:100% auto;
background-size:100% auto;
}



@media screen and (max-width: 640px) {
.world_inner{padding-top: 40%;}
.world_inner_bg{ margin-bottom: 0;}

}



/********************
ギャラリー
********************/

.gallery_inner {
	/* background: url(../img/bg.png) no-repeat top center #faedf6; */
	background-size:cover;
	padding:40px 0;
}

.gallery_inner_content {
	max-width: ;
	width: 100%;
	margin:0 auto;
}

.gallery_inner_content .content_box {
    padding: 60px 0;
    max-width: ;
    width: 99.2%;
    margin: 20px auto 0;
    background: rgba(255, 255, 255, 0.5);
    box-shadow: 0px 2px 6px rgba(97, 85, 88, 0.38);
}

.gallery_inner_content ul.change_btn {
	/* width: 464px; */
	margin:0 auto ;
	display: flex;
	justify-content: center;
}

.gallery_inner_content ul.change_btn li {
	/* float:left; */
	margin:0 0 0 20px;
	border: none;
	width: auto;
}

.gallery_inner_content ul.change_btn li:first-child {
	margin-left:0;
}
.gallery_inner_content ul.change_btn li img {
	/* width: 100%; */
}

.gallery_inner_content ul {
	margin:0 auto 60px ;
	/*! display: flex; */
	flex-wrap: wrap;
	width:90%;
}

.gallery_inner_content ul li {
	float:left;
	/* margin: 17px 17px 0 0; */
	border: 1px solid #FFF;
	/* width: 300px; */
	margin-right: 2%;
	margin-bottom: 2%;
	width: 31.5%;
}
.gallery_inner_content ul li img {
	/* width: 300px; */
}

.gallery_inner_content ul li:nth-child(3n) {
	margin-right: 0;
}

.onlymovie{ max-width:960px; margin:0 auto 5%;}

.stage {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
}

.stage iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
}








.event_inner_content h3 {
	/*background: url(../img/bg_hl_l.png) no-repeat center center;*/
	/* font-family:"ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro","ＭＳ Ｐ明朝", "MS PMincho", serif; */
	font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
	font-size: 36px;
	color: #fff;
	line-height: 90px;
	background: #543149; /* Old browsers */

	background: -moz-linear-gradient(left, #543149 0%, #222222 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left, #543149 0%,#222222 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right, #543149 0%,#222222 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#543149', endColorstr='#222222',GradientType=1 ); /* IE6-9 */
	padding:0 0 0 30px;
}

.event_inner_content {
	max-width: ;
	margin:0 auto;
	width: 100%;
}

.event_inner_content img{ width:100%;}

.event_txt {
	background:rgba(255, 255, 255, 0.58);
	border-bottom:1px solid #cccccc;
	text-align:left;
	padding:50px 80px;
	margin:0;
	font-size: 16px;
	line-height:1.7;
}

.event_tweet_box {
	background:#ffffff;
	text-align:center;
	margin:0 0 60px 0;
	padding:30px 0;
}
.event_tweet_box p {
	width:280px;
	margin:0 auto;
}
.event_tweet_box a {
	position: relative;
	z-index: 3;

}

.event_txt p{

	margin:0 0 50px 0;
}

.event_txt p:last-child {
	margin-bottom:0;
}

.name {
	color:#cc52a3;
	margin-right:30px;
}

/*キャラ別カラー*/
.hero {
	color:#ff7bce;
}
.yorihisa {
	color:#267a96;













}
.tenma {
	color:#4f2dce;
}
.inori {
	color:#af4343;
}
.shimon {
	color:#dcb310;
}
.takamichi {
	color:#aba0a0;
}
.tomomasa {
	color:#6cc5aa;
}
.eisen {
	color:#6f676c;
}
.yasuaki {
	color:#b0b18c;
}
.akuramu {
	color:#ef3131;
}

.event_inner_content ul {
	margin:30px 0 0 0;
}

.event_inner_content ul li {
	float:left;
	/* margin: 0 20px 20px 0; */
	width: 23.5%;
	margin-bottom: 2%;
	margin-right: 2%;
}

.event_inner_content ul li img {
	/* width:220px; */
}

.event_inner_content ul li:nth-child(4n) {
	margin-right: 0;
}

.inner_content .btn_back_gallery {
	font-size: 15px;
	border: 2px solid #a88ae5;
	color: #a88ae5;
	height: 30px;
	width: 140px;
	line-height: 30px;
	display: block;
	text-align: center;
	background: url(../img/puple_arrow_back.png) no-repeat 10px center;
	position:absolute;
	right:0;
	top: 20px;
}



@media screen and (min-width: 640px) {

.pn {
	display:none;
}

}

@-moz-document url-prefix() {
  .inner_content .btn_back_gallery{ top:20px;}
}


@media screen and (max-width: 639px) {

	.sn {
		display:none;
	}

	#mvimg {
		height:auto;
		background:none;
	}

	#mvimg img {
		width:100%;
	}
	#mvimg .movie {
		position:static;
		background:#522e99;
		text-align:center;
		padding:20px;
	}

	#mvimg .ealrybooking {
		position:absolute;
		/* text-align:right; */
		width: 26%;
		left: inherit;
		top: 3%;
		right: 0;
	}

	#mvimg .ealrybooking img {
		/* width:60%; */
	}

	#news {
		max-width:100%;
		width: initial;
		margin:0 auto;
		display:block;
		/* position:static; */
		padding: 4% 4% 0;
		/* height:auto; */
	}
	#news > * {
		float: none;
	}
	#news > .clearfix {
		margin: 0;
		width: auto;
	}

	#news a {
	display: block;
	}

	.tit_news {
		display:block;
		position:static;
		float:left;
	}

	.news_container {
		/* display:block; */
		/* position:static; */
		/* height:auto; */
		/* width: inherit; */
		margin-left: 0;
		font-size: 1em;
		width: 100%;
		margin-right: 0;
	}

	.txtarea {
		/* overflow:hidden; */
		/* height: 51px; */
		padding-top:2%;
	}

	.txtarea p {
		padding:10px 0;
		border-top:1px solid #cccccc;
		border-left:none;
		display: inherit;
	}

	.txtarea .date {
		padding:0 20px 0 0;
	}

	.btn_open {
		cursor:pointer;
		position:static;
		display:block;
		float:right;
		width: auto;
	}






	#banner {
		/* padding: 20px 20px 10px; */
	}
	#banner .app {
		margin: 0 5% 4%;
	}

	#banner ul li {
		/* margin: 0 0 4% 4%; */
		max-width: 50%;
		width: inherit;
	}

	#banner ul li img {
		width:100%;
	}

	#banner ul li:nth-child(3),
	#banner ul li:nth-child(5) {
		margin-left:0;
	}

	#banner ul li:nth-child(4) {
		/* margin-left:4%; */
	}


	#banner ul li:first-child,
	#banner ul li:nth-child(2) {
		/* float:none; */
		/* max-width:100%; */
		/* margin-left:0; */
	}

	#banner ul li:first-child img,
	#banner ul li:nth-child(2) img {
		width:100%;
	}

	#feature .box_feature01 {
		width:100%;
		height:auto;
		background:	url(../../img/top/bg_feature01_sp.jpg) no-repeat top center;
		background-size:cover;
		position:relative;
		top:0;
		left:0;
		padding:630px 0 0 0;
	}

	#feature .box_feature02 {
		width:100%;
		height:auto;
		background:	url(../../img/top/bg_feature02_sp.jpg) no-repeat top center;
		background-size:cover;
		position:relative;
		top:0;
		left:0;
		padding:630px 0 0 0;
	}

	#feature .box_feature03 {
		width:100%;
		height:auto;
		background:	url(../../img/top/bg_feature03_sp.jpg) no-repeat top center;
		background-size:cover;
		position:relative;
		top:0;
		left:0;
		padding:630px 0 0 0;
	}

	#feature .box_feature04 {
		width:100%;
		height:auto;
		background:	url(../../img/top/bg_feature04_sp.jpg) no-repeat top center;
		background-size:cover;
		position:relative;
		top:0;
		left:0;
		padding:630px 0 0 0;
	}




	#feature .txt_box {
		background: rgba(255, 255, 255, 0.9);
		padding: 1.5%;
		width: 85%;
		position:absolute;
		bottom:30px;
		left: 50%;

		-webkit-transform: translate(-50%,0);
		-moz-transform: translate(-50%,0);
		-ms-transform: translate(-50%,0);
		-o-transform: translate(-50%,0);
		transform: translate(-50%,0);
	}

	#feature .txt_box02 {
		background: rgba(255, 255, 255, 0.9);
		padding: 1.5%;
		width: 85%;
		position:absolute;
		bottom:30px;
		left: 50%;
		-webkit-transform: translate(-50%,0);
		-moz-transform: translate(-50%,0);
		-ms-transform: translate(-50%,0);
		-o-transform: translate(-50%,0);
		transform: translate(-50%,0);
	}
	#feature .txt_box03 {
		background: rgba(255, 255, 255, 0.9);
		padding: 1.5%;
		width: 85%;
		position:absolute;
		bottom:30px;
		left: 50%;
		-webkit-transform: translate(-50%,0);
		-moz-transform: translate(-50%,0);
		-ms-transform: translate(-50%,0);
		-o-transform: translate(-50%,0);
		transform: translate(-50%,0);
	}

	#feature .txt_box_inner {
		width: 87%;
		border: 2px solid #e6d68a;
		padding: 20px 15px;
	}
	#feature h3 {
		margin-bottom: 25px;
	}
	#feature p {
		margin-bottom: 0;
		font-size: 1em;
	}
	#feature .btn_feature {
		margin-top: 10%;
	}

	#product {
		/* background: none; */
		padding: 0;
		background-size: 125%;
	}

	#product img {
		width:100%;
	}

	#tresurebox + #product_inner {
		padding-top: 5%;
	}
	#product_inner {
		width: 100%;
		margin:0 auto;
		padding: 0 0 15% 0;
		/* background: url(../../img/top/bg_box_sp.png); */
		background-size: 150%;
		/* border-bottom:1px solid #cccccc; */
		/* color: #444; */
	}
	#product_inner .filter {
		width: 100%;
	}
	#product_inner h3 {
		margin-bottom: 0;
	}
	#product_inner p {
		margin: 0 20px;
		font-size: 15px;
		line-height: 1.5;
	}
	#product_inner .btn_reserve {
		padding-bottom: 0;
	}
	#product_inner table {
		margin: 15px 20px 30px;
		font-size: 1em;
	}
	#product_inner h4 {
    	margin: 0 20px 20px;
    	font-size: 1em;
 }
	#product_inner p.chui {
		/* color: #666666; */
		margin: 10px 20px 20px;
		font-size: 0.7em;
		line-height: 1.7;
	}
	.product_detail {
		margin: 0 20px;
	}

	#product_inner:last-child {
		padding: 0 0 7% 0;
		border:none;
	}

	#product_inner dl dd {
		width: 88%;
		/* padding-top: 1%; */
		font-size: 1em;
	}
	.pro_tit,
	#product_inner dl a {
		/* color: #e55c8a; */
		font-size: 1.2em;
	}
	#product_inner dl a {
		width: 40%;
	}
	.pink {
		/* color: #fff; */
		/* border: 4px solid #e55c8a; */
		/* background: #e55c8a; */
	}
	.product_detail dl dt {
		width: 12%;
	}
	.maru_half {
		/* line-height: 2em; */
		/* padding-top: 0.1em; */
		/* padding-left: 0.5em; */
		/* padding-right: 0.5em; */
		/* margin:0 15px 0 0; */
		/* width: inherit; */
		/* height: inherit; */
		/* display: inline; */

		/* font-size: inherit; */
	}

	.pro_box{
		width:100%;
		float:none;
		margin-bottom: 0;
	}

	.pro_box:last-child {
		margin:0;
	}

	#proinfo {
		width:100%;
		height:auto;
		/* background:url(../../img/top/bg_proinfo_sp.png) no-repeat top center; */
		background-size: 25%;
		padding:30px 0;
	}
	.proinfo_inner {
		width:87%;
		margin:0 auto;
	}

	.proinfo_inner h3 {
		height:auto;
	}

	.proinfo_box {
		background: rgba(255, 255, 255, 0.9);
		padding:0;
		font-size: 12px;
	}

	.txt_price {
		/* color:#cc52a3; */
	}

	#proinfo table {
		width:90%;
		margin:0 auto;
		line-height: 2;
		text-align:left;
	}

	#proinfo table th {
		width:30%;
		font-weight:bold;
	}

	#proinfo table th,
	#proinfo table td {
		padding: 5% 0;
		border-bottom:1px solid #cccccc;
	}


	.gallery_inner {
		padding:4% 0;
	}
	.inner_content .btn_back_gallery {
		top: 43%;
		right: 3%;
	}

	.gallery_inner_content ul.change_btn {
		width: 100%;
		margin:4% auto;
	}
	.gallery_inner_content ul.change_btn li {

		   margin: 0 1.5%;
	}

	.gallery_inner_content ul.change_btn li:first-child {
		margin: 0 1.5%;
	}

	.gallery_inner_content {
		width:100%;
		margin:0 auto;
	}
	.gallery_inner_content ul li {
		margin:1%;
		width: calc(48% - 2px);
	}
	.gallery_inner_content ul li img {
		width: 100%;
	}

	.gallery_inner_content ul.change_btn li img {
		width:130px;
	}

.gallery_inner_content ul li:nth-child(3n) {
	margin-right: 1%;
}



	.btn_back_gallery {
		top: 50%;
		right: 4.6%;
		width: 90px;
		height: 30px;
		line-height: 30px;
		margin-top: -15px;
		font-size: 1.4rem;
		background-position: 10px center;
	}

	.event_inner_content {
		width:auto;


		padding: 8% 4.6%;
	}


	.event_inner_content h3 {
		font-size: 1.8rem;
		padding: 2% 1em;
		line-height: 1.25;
	}

	.event_inner_content ul li {
		/* float:none; */
		/* margin:8% 0; */
		/* width: 100%; */
		margin: 1%;
		width: calc(48% - 2px);
	}

	.event_inner_content ul li img {
		width:100%;
	}


	.event_txt p {
		margin-bottom:8%;
	}

	.event_txt {
		width:auto;
		padding: 8% 4.6%;
		font-size: 1.4rem;
	}



	.name {
	margin-right:4%;
	}


}


/********************
登場人物
********************/
#chara_list_content {
	/* background: url(../img/bg.png) no-repeat center center; */
	/* background-size: cover; */
	/* background-attachment: fixed; */
}
#chara_list_content.top:before,
#chara_list_content.top:after {
	display: none;
}
.chara_list {
	padding: 60px 0;
}
.chara_list li {
	float: left;
	margin: 0 10px 20px;
}

.chara_detail-cont {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
	position: relative;
}
.chara_list-detail {
	/* padding: 0 20px 50px; */
}
.page_s_hl {
	width: 940px;
	margin: 0 auto 20px;
	font-size: 28px;
	color: #fff;
	font-weight: bold;
	background: url(../img/bg_hl_s.png) no-repeat center center;
	line-height: 60px;
	padding-left: 1em;
}
.chara_list-detail li {
	/* float: left; */
	/* margin: 10px; */
}
.btn_back_chara {
	font-size: 15px;
	border: 2px solid #fff;
	color: #fff;
	height: 30px;
	width: 140px;
	line-height: 30px;
	position: absolute;
	right: 0;
	top: 30px;



	display: block;
	text-align: center;
	background: url(../img/white_arrow_back.png) no-repeat 10px center;
}

.chara_detail {
	width: 1000px;
	height: 1000px;
	margin: 0 auto 80px;
	background-repeat: no-repeat;
	background-position: center center;
	position: relative;
}
.chara_detail.chara01 {
	background-image: url(../chara/img_detail_chara01.png);
}
.chara_name {
	font-weight: bold;
	font-size: 18px;
	line-height: 1.7;
	margin-bottom: 30px;
}
.chara_info {




	font-size: 15px;
	vertical-align: middle;
	text-align: left;
}
.chara_info th {
	/* font-weight: bold; */
	/* width: 50px; */
	/* height: 30px; */
}
.cahra_type {
	/* font-size: 15px; */
	/* line-height: 1.7; */
	/* margin-bottom: 30px; */
}
.btn_twi_img {
	display: block;
	background-color: #00acee;
	width: 320px;
	height: 60px;
	color: #fff;
	font-weight: bold;
	font-size: 18px;
	line-height: 60px;

}
.twi_icon {
	display: inline-block;
	width: 60px;
	height: 60px;
	border-right: 1px solid #fff;
	text-indent: -9999px;
	background: url(../img/btn_twi_img.png) no-repeat center center;
}
.btn_text {
	text-align: center;
	display: inline-block;
	width: 259px;
}
.chara_navi {
	width: 100%;
	position: absolute;
	top: 50%;
	left: 0;
}
.chara_navi-prev {
	float: left;
}
.chara_navi-next {
	float: right;
}


/*****************************************
ここから追記
************************************************/
#chara_list_content {
	background: url(../../img/chara/chara_bg.jpg) no-repeat;
	background-size: cover;
	/* background-attachment: fixed; */
	position: relative;
	width: 100%;
	margin: 0 auto;
}
.chara_list {
	padding: 60px 0;
	width: 800px;
	margin: 0 auto;
}
.chara_list li {
	float: left;
	margin: 0 10px 20px;
}
	.chara_list li a {
		position: relative;
		z-index: 2;
	}

.chara_detail-cont {
	margin: 0 auto;
	position: relative;
	height: 880px;
	/* overflow-y: hidden; */
}
#chara_list_content:before,
#chara_list_content:after {
	/* content: ""; */
	display: block;
	position: absolute;
	width: 1200px;
	height: 1020px;
	top: 90px;
}
#chara_list_content:before {
	/* background: url(../../img/chara/bg_l.png) no-repeat; */
	/* left: 0; */
}


#chara_list_content:after {
	background: url(../../img/chara/bg_r.png) no-repeat;
	right: 0;
}
.chara_list-detail {
	/* padding: 0 20px 50px; */
	background-color: rgba(215,75,126,.5);
}

.page_s_hl-box {
	width: 1000px;
	margin: 0 auto;
}
.page_s_hl {
	width: 940px;
	margin: 0 auto 20px;
	font-size: 28px;
	color: #fff;

	font-weight: bold;
	background: url(../img/bg_hl_s.png) no-repeat center center;
	line-height: 60px;
	padding-left: 1em;
	/* font-family:"ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro","ＭＳ Ｐ明朝", "MS PMincho", serif; */
	font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#543149+0,222222+100 */
background: #543149; /* Old browsers */
background: -moz-linear-gradient(left, #543149 0%, #222222 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(left, #543149 0%,#222222 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to right, #543149 0%,#222222 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#543149', endColorstr='#222222',GradientType=1 ); /* IE6-9 */
}
.chara_list-detail ul {
	/* display: flex; */
	justify-content: center;
	padding: 7px 0;
	width: 808px;
	margin: 0 auto;
}
.chara_list-detail li {
	float: left;
	/* margin: 10px; */
	margin: 0 5px;
	border: 3px solid #FFF;
}
.btn_back_chara {
	font-size: 15px;
	border: 2px solid #CCC;
	color: #CCC;
	height: 30px;
	width: 140px;
	line-height: 30px;
	position: absolute;
	right: 0;
	top: 30px;
	display: block;
	text-align: center;
	background: url(../img/white_arrow_back.png) no-repeat 10px center;
}
.chara_detail-img {
	position: relative;
	width: 100%;
	max-width: 1000px;
	/* margin: 0 auto 80px; */
	text-align: right;
	padding-top: 10px;
}
.chara_detail-img > img {margin-right: 100px;}
.chara_name {
	position: absolute;
	top: 20px;
	right: 80px;
}
.chara_dialog {
	position: absolute;
	top: 0;
	left: 200px;
	/* left: 20%; */
}
@media screen and (max-width: 930px) {
.chara_dialog {
	left: 3%;
}
}
.chara_detail-text_box {
	background: rgba(255, 255, 255, 0.9);
	padding: 10px;
	width: 344px;
	position: absolute;
	/* right: 50%; */
	/* top: 630px; */
	bottom: 30px;
	/* left: 40px; */
	margin-right: 90px;
	margin-left:20px;
	z-index: 2;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.58);
}
.chara_detail-text_box .voice {
	/* display: flex; */
	margin-bottom: 10px;
}
.chara_detail-text_box .voice li {
	/* background: url(../../img/chara/voice_btn.png) no-repeat 0 0; */
	text-align: center;
	margin-right: 4%;
	/*width: 98px;*/
	/*width: 32%;*/
	/* height: 51px; */
	padding: 11px 0;
	position: relative;
	float: left;
}
	.chara_detail-text_box .voice li:last-child {
	margin-right: 0;
}
.chara_detail-text_box .jp-controls {
	position: relative;
    height: 100%;
}
.chara_detail-text_box .voice li a {
	color: #FFF;
}
.chara_detail-text_box .voice li a span {
	position: absolute;
	width: 100%;
    height: 100%;
	padding: 10px 0;
	top: 0;
}
.inner_box {
	width: 320px;
	border: 2px solid #e7dda5;
	padding: 20px 10px;
	color: #410b1a;
}
.chara_detail-text_box-chara_name {
	font-weight: bold;
	font-size: 20px;
	/* line-height: 1.7; */
	margin-bottom: 15px;
	padding-bottom: 5px;
	border-bottom: 2px solid #e6d68a;
}
.chara_info {
	font-size: 17px;
	vertical-align: middle;
	text-align: left;
}
.chara_info th {
	/* font-weight: bold; */
	width: 50px;
	height: 25px;
}
.cahra_type {
	font-size: 18px;
	line-height: 1.3;
	margin: 5px 0 15px;
}
.btn_twi_img {
	display: block;
	background-color: #00acee;
	width: 100%;
	height: 46px;
	color: #fff;
	font-weight: bold;
	font-size: 18px;
	line-height: 46px;
	position: relative;
	z-index: 1;
	margin: 0 auto;
}
.twi_icon {
	display: inline-block;
	width: 20%;
	height: 46px;
	border-right: 1px solid #fff;
	text-indent: -9999px;
	background: url(../img/btn_twi_img.png) no-repeat center center;
}
.btn_text {
	text-align: center;
	display: inline-block;
	width: 79%;
}
.chara_navi {
	width: 120%;
	position: absolute;
	top: 460px;
	left: 0;
	margin-left: -10%;
	z-index: 10;
}

.chara_navi-prev {
	float: left;
}
.chara_navi-next {
	float: right;
}
.chara_detail-img, .chara_name, .chara_dialog, .chara_detail-text_box {
	/* display: none; */
}
	.btn_top {
		width: 60px;
		height: 60px;
		position: fixed;
		bottom: 20px;
		right: 20px;
		background: url(../img/btn_goto_top.png) no-repeat center center;
		background-size: 100%;
		z-index: 100;
		cursor: pointer;
		display: none;
	}
@media screen and (max-width: 639px) {
	html {
		font-size: 62.5%;
	}
	.page_hl {
		font-size: 2.1rem;
		line-height: 1;
		/* padding: 5.3% 0 5.3% 1em; */
	}

.page_hl-box .inner_content {
	position: relative;
	padding: 5.3% 0 5.3% 1em;
}
	img {
		width: 100%;
	}
	.inner_content {
		width: 100%;
	}

	.reservation_content {
		width: 29.3%;
	}
	.reservation_content  a {
		width: 100%;
		font-size: 1.2rem;
		height: 45px;
		line-height: 45px;
	}
	.reservation_content a span {
	/* padding-left: 10px; */
	background-size: 6px;
	}
	.reservation_content p {
		display: none;
	}
	.logo_contents {
		padding: 1% 0 0;
		width: 42%;
		margin-right: 2%;
	}
	.header_top-logo_kt {
		margin-left: 6px;
		margin-top: 4%;
		width: 24.6%;
	}
	.header_top-logo_haruka {
		width: 69%;
		margin-left:0;
		position:static;
		float:left;
		margin-top: 0;
	}
	html, body {
		height: 100%;
	}
	#naviback {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: auto;
		background: none;
		background-color: rgba(191, 86, 135, 0.95);
		padding: 0;
		z-index: 50;
		display: none;
	}
	#navi {
		width: 60%;
		height: 480px;
		position: absolute;
		margin: auto;
		top: 0;
		bottom: 0;
		left: 50%;
		-webkit-transform: translate(-50%,0);
		-moz-transform: translate(-50%,0);
		-ms-transform: translate(-50%,0);
		-o-transform: translate(-50%,0);
		transform: translate(-50%,0);
		float:none;
	}
	#navi ul {
		display: block;
	}
	#navi li {
		float: none;
		width: auto;
		background: url(../img/navi_border.png) no-repeat center 100%;
		background-size: 100%;
		border-right: none;
		margin: 0;
	}
	#navi li.system a {

padding: 5% 0;
	}
	#navi li:last-child {
		/* background: none; */
	}

	#navi li a,
	.comming_soon {
		font-size: 1.6rem;
		padding: 7% 0;
		margin: 0;
	}
	#navi li a {
		border-left: none;
	}
	#navi li:last-child a {
		border-right: none;
	}
	#navi li.comming_soon {
		color: #993d5c;
		font-size: initial;
		padding: 5% 0;
		margin: 0;
	}
	#navi .sns {
		background: url(../img/navi_border.png) no-repeat top;
		background-size: 100%;
		width: 140%;
		margin-left: -20%;
		padding-top: 8%;
	}
	#navi .sns > li {
		background: none;
		margin: 0 25%;
	}
	#navi .sns > li a {
		padding: 0 0 7%;
	}
	.btn_menu {
		width: 56px;
		height: 56px;
		position: fixed;
		bottom: 10px;
		right: 10px;
		background: url(../img/btn_navi_menu.png) no-repeat center center;
		background-size: 56px;
		z-index: 100;
	}
	.btn_menu.close {
		background-image: url(../img/btn_navi_close.png);
	}
	.btn_top {
		width: 56px;
		height: 56px;
		bottom: 73px;
		right: 10px;
	}

	.footer_bottom {
		padding: 6% 4.8%;
		width: auto;
	}
	.footer_bottom-attention .logo_ps img {
		margin: 0;
		height: 40px;
		width: auto;
	}
	.sns_list li {
		padding: 0 2%;
	}
	.attention_text {
		font-size: 1.0rem;
	}
	.footer_bottom-sns p {
		font-size: 1.2rem;
	}
	.icon_ps img {
		height: 10px;
		width: auto;
	}
	.footer_bottom-cont-attention_text {
		margin-bottom: 8%;

	}

	.sns_list {
		margin-bottom: 6.6%;
	}
	.bnr_list-top {
		width: 70%;
		margin: 0 auto;
	}
	.bnr_list-top li {
		float: none;
		margin-bottom: 4%;
		width: 100%;
	}

/*	.bnr_list-bottom {
		display: block;
		width: 76%;
		margin: 0 auto;


	}*/
	.bnr_list-bottom {
		width: 70%;
		margin: 0 auto;
	}
	.bnr_list-bottom li {
		display: block;
		margin-bottom: 4%;
		width: 100%;
	}
	.bnr_list-bottom li:last-child {
		margin-bottom: 0;
	}
	.footer_top-bnr_list {
		padding: 8% 0;
	}



	.contents {
		padding-top: 45px;
	}

	.contents_index {
		padding-top: 45px;
	}
	.btn_soukanzu ,
	.btn_back_chara {
		top: 50%;
		right: 4.6%;
		width: 90px;
		height: 30px;

		line-height: 30px;
		margin-top: -15px;
		font-size: 1.4rem;
		background-position: 10px center;
	}
	.chara_list {
		width: 100%;
		padding: 8% 0 4%;
	}
	.chara_list ul {
		padding: 0 3.2%;
	}
	.chara_list li {
		width: 30%;
		box-sizing: border-box;
		margin: 0 1.6% 4%;
	}

#chara_list_content:before,
#chara_list_content:after {
	width: 100%;
	top: 4.8%;
	background-size: 110%;
	z-index: 1;
	height: 31%;
}
	.chara_detail-cont_wrapper {
		position: relative;
		z-index: 2;
	}
	.chara_detail-cont {
		width: 100%;
		height: inherit;
		max-width: inherit;
	}
	.chara_detail-img {
		width: 100%;
		margin-bottom: 0;
		padding-top: 0;
	}
	.chara_detail-img > img {
		margin-right: 0;
	}
	.chara_name {
		/* width: 18.6%; */
		top: 0;
		right: 0;
	}

	.chara_dialog {
		/* width: 18.6%; */
		left: 0;
		/* top: 46%; */
	}
	.chara_detail-text_box {

position: relative;

/* top: 0; */

/* right: auto; */

margin: -55% auto 0;

width: 97%;

left: 0;

padding: 1.5%;
}
	.inner_box {
		width: 95%;
		padding: 3% 2%;
	}
	.chara_detail-text_box-chara_name,
	.cahra_type {
		text-align: center;
		font-size: 18px;
	}
	.chara_detail-text_box-chara_name {
		font-size: 18px;
	}
	.cahra_type {
		font-size: 14px;
	}
	.chara_info {
		margin: 0 auto;
		font-size: 14px;
	}
	.chara_info th {

height: 20px;
	}
	.chara_detail-text_box .voice li {
		margin-right: 2%;
		width: 32%;
		padding: 0;
	}
	.chara_detail-text_box .voice li:last-child {
		margin-right: 0;
	}
	.chara_detail-text_box .voice li img {
		max-height: 50px;
	}
	.chara_navi {
		top: 44%;
		width: 98%;
		margin-left: 1%;
	}
	.chara_navi-prev, .chara_navi-next {
		width: 8%;
	}
	#chara_list_content {
	background: url(../../img/chara/bg_sp.png) no-repeat;
	background-size: 100%;
	max-width: 100%;
	}
	.chara_list-detail {
		/* padding: 0 0 6.4%; */
	}
	.chara_list-detail ul {
		width: 65%;
		flex-wrap: wrap;
		padding: 1% 0;
	}
	.chara_list-detail li {
		width: 21.25%;
		margin: 1%;
		border: 2px solid #FFF;
	}
	.chara_list-detail li:nth-child(4n) {
		margin-right: 0;
	}

	.page_s_hl-box {
		width: auto;
		padding: 0 3.2%;
	}
	.page_s_hl {
		width: 90.4%;
		font-size: 1.8rem;
		background-size: 100%;
		margin-bottom: 2.4%;
		line-height: 1.0;
		padding: 3.3% 0;
		padding-left: 1em;
	}
}

/*****************************
	shop
****************************/
.left {
	float: left;
}
.right {
	float: right;
}
#shop_content {
	/* background: url(../../img/tenpo/bg.png) no-repeat center center; */
	background-size: cover;
	background-attachment: fixed;
	padding-bottom: 30px;
}
.shop_wrapper {
	background: rgba(255, 255, 255, 0.8);
	max-width: 900px;
	width: 100%;
	margin: 30px auto 0;
	padding: 60px 0;
	padding-bottom: 0;
}
.shop_inner_box {
	margin-bottom: 30px;
	/* display: flex; */
}
.shop_inner_box.w100 {
	display: block;
}
.shop_inner_box > * {
	/* width: 380px; */
}
.shop_inner_box.w100 > * {
	width: 100%;
}
.shop_inner_box > .detail {
	/* margin-left: 20px; */
	/* margin-top: -30px; */
}
.shop_inner_box.w100 > .detail {
	margin-left: 0;
	margin-top: 0;
}
.shop_inner_box > .detail .list > li {
	margin-top: 30px;
}
.shop_inner_box > .detail .list > li > .ttl {
	font-weight: bold;
	text-indent: -1em;

	padding-left: 1em;
	line-height: 1.5;


}
.shop_inner_box > .detail .list > li > .txt {
	font-size: 13px;
	line-height: 2;
	margin: 0.5em 0 0 1.2em;
}
.shop_inner_box > .detail .list > li > .btn {
	/* font-size: 13px; */
	/* display: inline-block; */
	/* border: 2px solid #cc527a; */
	/* color: #cc527a; */

	/* margin: 1em 0 0 1.2em; */
	/* width: 120px; */
	/* height: 30px; */
	/* line-height: 30px; */
	/* margin-top: 10px; */
	/* display: block; */
	/* text-align: center; */
	/* background: url(../img/arrow03.png) no-repeat 6% 50%; */
}
.shop_wrapper a > img {
	margin: 0 auto;
}
.shop_wrapper .content_box{

width: 100%;

max-width: 780px;

margin: 0 auto;
}
.content_box {
	padding-bottom: 60px;
}
.content_box_small .content_box {
	width: 460px;
}
.content_box_small .content_box:nth-child(odd) {
	float: left;
}
.content_box_small .content_box:nth-child(even) {
	float: right;
}
h3.hl_sub {
	font-weight: bold;
	color: #fff;
	/* font-family:"ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro","ＭＳ Ｐ明朝", "MS PMincho", serif; */
	font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
	font-size: 24px;
	background: url(../img/ttl01.png) no-repeat #cc7aa0;
	padding: 18px 0;
	padding-left: 1em;
	margin-bottom: 30px;
	letter-spacing: 0.1em;
}

.content_box_small .shop_inner_box-hl h3 {
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#553049+0,4c2e42+11,2d252a+35,222222+50,222222+100 */
	background: #553049; /* Old browsers */
	background: -moz-linear-gradient(left, #553049 0%, #4c2e42 11%, #2d252a 35%, #222222 50%, #222222 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left, #553049 0%,#4c2e42 11%,#2d252a 35%,#222222 50%,#222222 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right, #553049 0%,#4c2e42 11%,#2d252a 35%,#222222 50%,#222222 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#553049', endColorstr='#222222',GradientType=1 ); /* IE6-9 */
}
.shop_hl-sub {
	font-weight: bold;
	font-size: 18px;
	line-height: 1.25;
	border-left: 10px solid #bf5687;
	padding: 4px 0 4px 10px;
	margin: 30px 0 10px;
}
.hl-sub_text {
	font-size: 13px;
}
.shop_box-wrapper {
	margin-top: 30px;
}
.box_description {
	width: 460px;
}
.top_column {
	margin-bottom: 30px;
}
.small_box {
	width: 220px;
	float: left;
	margin-right: 20px;
}
.small_box:nth-child(2n) {
	margin-right: 0;
}
.small_box p {
	font-weight: bold;
	font-size: 15px;
	line-height: 2.0;
	margin: 10px 0;
}
.btn_reservation {

	/* font-weight: bold; */
	/* color: #fff; */
	/* text-align: center; */
	display: block;
	/* margin: 0 auto; */
	/* font-size: 18px; */
	/* line-height: 60px; */
	/* width: 300px; */
	/* background-color: #bf5687; */
	/* box-shadow: 0 3px 3px rgba(0,0,0,0.3); */
	/* border-radius: 3px; */
}
.btn_reservation img {
	margin: 0 auto;
}
.box_description p {
	font-size: 15px;
	line-height: 2.0;
	margin-bottom: 20px;
}
.box_description .box_description-hl {
	font-weight: bold;
}
.link_story {
	color: #cc52a3;
	text-decoration: underline;
}
.small_box p.img_sub_text {
	font-weight: normal;
	font-size: 13px;
}

/*****************************
	campaign
****************************/
#campaign_content {
	/* background: url(../../img/tenpo/bg.png) no-repeat center center; */
	background-size: cover;
	background-attachment: fixed;
	padding-bottom: 60px;
}
.campaign_wrapper {
	background: rgba(255, 255, 255, 0.8);
	max-width: ;
	width: 100%;
	margin: 30px auto 0;
	padding-bottom: 30px;
}
.campaign_wrapper .kv{ text-align:center;}
.campaign_wrapper > .box {
	margin: 30px 80px;
}
.campaign_wrapper .txt {
	line-height: 2;
}
.campaign_wrapper .shop_hl-sub {
	font-size: 22px;
}
.campaign_wrapper .course li {
	margin: 30px 0 50px;
}
.campaign_wrapper .course .ttl {
	display: flex;
	align-items: center;
	margin-bottom: 15px;
}
.campaign_wrapper .course .ttl .pink {
	border: 1px solid #cc527a;
	margin-right: 10px;
}
.campaign_wrapper .course .ttl .pink,
.campaign_wrapper .course .ttl .pro_tit,
.campaign_wrapper a {
	color: #cc527a;
}
.campaign_wrapper .course li > a {
	display: block;
	margin-top: 50px;
	text-align: center;
}
.campaign_wrapper .course caption {
	text-align: left;
	font-weight: bold;
	margin-bottom: 7px;
}
.campaign_wrapper .course th {
	width: 4em;
}
.campaign_wrapper .course th,
.campaign_wrapper .course td {
	padding: 7px 0 7px 0;
}
.campaign_wrapper .course tr:last-child td {
	font-weight: bold;
	color: #e55c8a;

}
.campaign_wrapper .shop_hl-sub + .txt {
	margin-top: 30px;
}
.campaign_wrapper .shop_hl-sub + .txt,
.campaign_wrapper .agreement {
	font-size: 13px;
	line-height: 2;
}
.campaign_wrapper .agreement > li {
	margin-top: 20px;
	text-indent: -1em;
	padding-left: 1em;
}
.campaign_wrapper .agreement a {
	text-decoration: underline;
}

@media screen and (max-width: 639px) {
	.shop_wrapper {
		margin: 0;
		padding: 8% 4.6%;
	}
	.shop_wrapper {
		width: auto;
	}
	h3.hl_sub {
		font-size: 1em;
		padding: 4% 1em;
		/* line-height: 1.25; */
		margin-bottom: 5%;
		background: url(../img/ttl01_sp.png) no-repeat;
		background-size: 100%;
	}
	.shop_hl-sub {
		font-size: 1.8rem;
		padding-left: 0.5em;
		margin-bottom: 2%;
		margin: 7% 0 3%;
	}
	.hl-sub_text {
		font-size: 1.2rem;
		line-height: 1.875;
		margin-bottom: 6%;

	}
	.shop_inner_box > .detail .list > li {
		margin-top: 5%;
	}
	.shop_inner_box > .detail .list > li > .btn {
		width: 50%;
		margin: 0 auto;
		display: block;
	}
	.shop_inner_box {
		display: block;
	}
	.shop_inner_box > * {
		width: 100%;
	}
	.shop_inner_box > .detail {
		margin: 0;
	}
	.box_img, .box_description {
		width: auto;
	}
	.top_column {
		margin-bottom: 4%;
	}
	.top_column img {
		margin-bottom: 2.6%;
	}
	.box_description p {
		font-size: 1.5rem;
		margin-bottom: 2%;
	}
	.bottom_column {
		width: 100%;
	}
	.small_box {
		width: 47.05%;
	}
	.small_box p {
		margin: 2.6% 0;
		font-size: 1.4rem;
	}
	.btn_reservation {
		/* font-size: 1.4rem; */
		/* width: 70.5%; */
		/* line-height: 1; */
		/* padding: 4% 0; */
	}
	.content_box_small .content_box {
		width: auto;
	}
	.content_box_small .content_box:nth-child(even) ,
	.content_box_small .content_box:nth-child(odd) {
		float: none;
	}

	.content_box {
		padding-bottom: 16%;
	}
	#shop_content {
		padding-bottom: 0;
	}
}
#special_content {
	/* background: url(../../img/special/bg.png) no-repeat center center; */

	background-size: cover;
	background-attachment: fixed;
	padding-bottom: 60px;
}
.special_wrapper .content_box {
	padding: 60px 0;
	max-width: ;
	width: 99.2%;
    margin: 20px auto 0;
    background: rgba(255, 255, 255, 0.5);
    box-shadow: 0px 2px 6px rgba(97, 85, 88, 0.38);
}
.special_inner_box {
	margin: 0 auto 50px;
	max-width: 800px;
	width: 100%;
}
.special_inner_box:last-child {
	margin-bottom: 0;
}
.special_inner_box-hl h3 {

	margin: 0 10px 30px;
}
.special_cont-sub_text {
	font-weight: bold;

	line-height: 1.6;
	font-size: 18px;
	margin: 0 10px 20px;
}
.special_icon_list ul { margin:0 auto; width:98%;}
.special_icon_list li {
	float: left;
	/* margin: 10px; */
	width: 24.1%;
	margin: 0.5%;
}
.special_icon_list li:nth-child(4n) {
	margin-right: 0;
}
.special_re_twi_list {
	margin: 0 10px;
}
.re_twi_box {
	position: relative;
	margin-bottom: 40px;
}
.re_twi_box:last-child {
	margin-bottom: 0;
}
.icon_achievement {
	position: absolute;
	top: -30px;
	left: 10px;
	z-index: 50;
}
.special_cont-sub_text_tuiki {
	font-size: 15px;
	color: #cc52a3;
	line-height: 2;

	margin: 0 10px 60px;
}
.special_navi {
	/* width: 800px; */
	width: 320px;
	margin: 40px auto 20px;
}
.special_navi li {
	float: left;
	width: 140px;
	height: 80px;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	margin: 0 10px;
	text-indent: -9999px;
	overflow: hidden;
}
.special_navi li a {
	display: block;
	width: 140px;
	height: 80px;
}
.special_navi li.navi_01 {
	background-image: url(../../img/special/special_navi_01_off.png);
}
.special_navi li.navi_02 {
	background-image: url(../../img/special/special_navi_02_off.png);
}
.special_navi li.navi_03 {
	background-image: url(../../img/special/special_navi_03_off.png);
}
.special_navi li.navi_04 {
	background-image: url(../../img/special/special_navi_04_off.png);
}
.special_navi li.navi_05 {
	background-image: url(../../img/special/special_navi_05_off.png);
}
.special_navi li.navi_06 {
	background-image: url(../../img/special/special_navi_06_off.png);
}
.special_navi li.navi_01.active {
	background-image: url(../../img/special/special_navi_01_on.png);
}
.special_navi li.navi_02.active {
	background-image: url(../../img/special/special_navi_02_on.png);
}
.special_navi li.navi_03.active {
	background-image: url(../../img/special/special_navi_03_on.png);
}
.special_navi li.navi_04.active {
	background-image: url(../../img/special/special_navi_04_on.png);
}
.special_navi li.navi_05.active {
	background-image: url(../../img/special/special_navi_05_on.png);
}
.special_navi li.navi_06.active {
	background-image: url(../../img/special/special_navi_06_on.png);
}
.special_navi li.navi_02.none {
	background-image: url(../../img/special/special_navi_02_none.png);
}
.special_navi li.navi_03.none {
	background-image: url(../../img/special/special_navi_03_none.png);
}
.special_navi li.navi_04.none {
	background-image: url(../../img/special/special_navi_04_none.png);
}
.special_navi li.navi_05.none {
	background-image: url(../../img/special/special_navi_05_none.png);
}

#download_content {
    /* background: url(../../img/special/bg.png) no-repeat center center; */
    background-size: cover;
    background-attachment: fixed;
    padding-bottom: 60px;
}
#download_content .page_hl-box .inner_content > .page_hl {
	float: left;
}
#download_content .page_hl-box .inner_content > .txt {
	float: right;
	color: #FFF;
	padding-top: 10px;
	font-size: 13px;
	line-height: 1.5;
}
.download_navi {
	width: 480px;
    margin: 20px auto;
}
.download_navi li {
	float: left;
	width: 220px;
	height: 80px;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	margin: 0 10px;
	text-indent: -9999px;
	overflow: hidden;
}
.download_navi li a {
	display: block;
	width: 220px;
	height: 80px;
}
.download_navi li.navi_01 {
	background-image: url(../../img/dlc/dlc_navi_01_off.png);
}
.download_navi li.navi_02 {
	background-image: url(../../img/dlc/dlc_navi_02_off.png);
}
.download_navi li.navi_01.active {
	background-image: url(../../img/dlc/dlc_navi_01_on.png);
}

.download_navi li.navi_02.active {
	background-image: url(../../img/dlc/dlc_navi_02_on.png);
}
.download_navi li.navi_02.none {
	background-image: url(../../img/dlc/dlc_navi_02_none.png);
}
.download_wrapper .content_box {
	padding: 60px 0;
	max-width: ;
	width: 99.2%;
    margin: 60px auto 0;
    background: rgba(255, 255, 255, 0.5);
    box-shadow: 0px 2px 6px rgba(97, 85, 88, 0.38);
}
.download_inner_box {
	max-width: 780px;
	width: 100%;
	margin: 0 auto;
}
.download_cont-sub_text {
	width: 95%;
	margin: 0 auto;
	font-weight: bold;
    line-height: 1.6;
    font-size: 18px;
	margin-bottom: 30px;
}
.download_cont-sub_text span {
	color: #cc52a3;
}
.download_attention_text {
	width: 95%;
	margin: 0 auto;
	font-size: 13px;
	line-height: 2.3;
	margin-bottom: 30px;
}
.download_img_area {
	margin: 60px auto;
}
.download_text {
	text-align: center;
	max-width: 701px;
	width: 95%;
	margin: 0 auto;
}
.download_text_hl {
	margin-bottom: 60px;
}
.only_pc {

	display: block !important;
}
.only_sp {
	display: none !important;
}
@media screen and (max-width: 639px) {
#special_content {

	padding-bottom: 0;
}
.special_navi {
	width: 290px;
	margin: 3.3% auto;
}
.special_navi li {
	width: 135px;
	height: 45px;
	margin: 5px;

}
.special_navi li a {
	width: 135px;

	height: 45px;
}
.special_navi li.navi_01 {
	background-image: url(../../img/special/sp_special_navi_01_off.png);
}
.special_navi li.navi_02 {
	background-image: url(../../img/special/sp_special_navi_02_off.png);
}
.special_navi li.navi_03 {
	background-image: url(../../img/special/sp_special_navi_03_off.png);
}
.special_navi li.navi_04 {
	background-image: url(../../img/special/sp_special_navi_04_off.png);

}
.special_navi li.navi_05 {
	background-image: url(../../img/special/sp_special_navi_05_off.png);
}
.special_navi li.navi_06 {
	background-image: url(../../img/special/sp_special_navi_06_off.png);
}
.special_navi li.navi_01.active {
	background-image: url(../../img/special/sp_special_navi_01_on.png);
}
.special_navi li.navi_02.active {
	background-image: url(../../img/special/sp_special_navi_02_on.png);
}
.special_navi li.navi_03.active {
	background-image: url(../../img/special/sp_special_navi_03_on.png);
}
.special_navi li.navi_04.active {
	background-image: url(../../img/special/sp_special_navi_04_on.png);
}
.special_navi li.navi_05.active {
	background-image: url(../../img/special/sp_special_navi_05_on.png);
}
.special_navi li.navi_06.active {
	background-image: url(../../img/special/sp_special_navi_06_on.png);
}
.special_navi li.navi_02.none {
	background-image: url(../../img/special/sp_special_navi_02_none.png);
}

.special_navi li.navi_03.none {

	background-image: url(../../img/special/sp_special_navi_03_none.png);
}
.special_navi li.navi_04.none {
	background-image: url(../../img/special/sp_special_navi_04_none.png);
}
.special_navi li.navi_05.none {
	background-image: url(../../img/special/sp_special_navi_05_none.png);

}


.special_inner_box-hl h3 {
	margin: 0 1.4% 6%;
}
.special_cont-sub_text {
	font-size: 1.4rem;
	margin: 0 1.4% 6.6%;
}
.special_wrapper .content_box {
	padding: 8% 3.3%;

	width: auto;
}
.special_icon_list li {
	margin: 1.4%;
	width: 47.14%;
}
.special_inner_box {
	margin-bottom: 16%;
}
.special_cont-sub_text_tuiki {
	font-size: 1.4rem;
	margin: 0 1.4% 8%;
}
.re_twi_box {
	margin-bottom: 6%;
}
.special_re_twi_list {
	margin: 0 1.4%;
}
.icon_achievement {
	width: 17.14%;
	top: -18px;
}

#download_content {
	padding-bottom: 0;
}
.download_wrapper .content_box {
	width: auto;
	padding: 8% 4.6%;
	margin: 0;
}
.download_cont-sub_text {
	font-size: 1.6rem;
	line-height: 1.875;
}
.download_attention_text {
	font-size: 1.2rem;
	line-height: 1.875;
}
.download_img_area {
	margin: 16% auto 8.6%;
}
.download_text_hl {
	margin-bottom: 8%;
}
.download_navi {
	width: 300px;
	margin: 4% auto;
}
.download_navi li {
	margin: 0 3.3%;
	width: 130px;
	height: 47px;
}
.download_navi li a {
	width: 130px;
	height: 47px;
}

/*****************************
	campaign
****************************/
#campaign_content {
	padding-bottom: 30px;
}
.campaign_wrapper {
	width: 100%;
	margin: 0 auto;
	padding-bottom: 30px;
}
.campaign_wrapper > .box {
	margin: 8% 4.6%;
}
.campaign_wrapper .shop_hl-sub {
	font-size: 22px;
}
.campaign_wrapper .course li {
	margin: 30px 0 50px;
}
.campaign_wrapper .course .ttl {
	margin-bottom: 15px;
}
.campaign_wrapper .course .ttl .pink {
	margin-right: 10px;

}
.campaign_wrapper .course li > a {
	margin-top: 20px;
}
.campaign_wrapper .course caption {
	margin-bottom: 7px;
}
.campaign_wrapper .course th,
.campaign_wrapper .course td {
	padding: 7px 0 7px 0;
}
.campaign_wrapper .shop_hl-sub + .txt {
	margin-top: 30px;
}
.campaign_wrapper .shop_hl-sub + .txt,
.campaign_wrapper .agreement {
	font-size: 13px;

	line-height: 2;
}
.campaign_wrapper .agreement > li {
	margin-top: 20px;
}


.gallery_img_list li{}









.only_pc {
	display: none !important;
}
.only_sp {
	display: block !important;
}

}

.btn_open .close,
.btn_open.active .open {
	display: none;
}
.btn_open.active .close {
	display: inline-block;
}

/*****************************
	system

****************************/
#system_content > .box {
	position: relative;
}
#system_content > .box > .ttl {
	position: absolute;
}
#system_content > .bg01 {
	background: url(../../img/system/bg01.jpg) no-repeat 0 0;
	height: 1026px;
	/* background-size: 100%; */
}
#system_content > .bg02 {
	background: url(../../img/system/bg02.jpg) no-repeat 0 0;
	height: 1219px;
	/* background-size: 100%; */
}
#system_content > .bg03 {
	background: url(../../img/system/bg03.jpg) no-repeat 0 0;
	height: 1108px;
	/* background-size: 100%; */
}
#system_content > .bg04 {
	background: url(../../img/system/bg04.jpg) no-repeat 0 0;
	height: 940px;
	/* background-size: 100%; */
}
#system_content > .bg01 > .ttl {
	right: 75px;
	top: 138px;
}
#system_content > .bg02 > .ttl {
	left: 114px;
	top: 136px;
}
#system_content > .bg03 > .ttl {
	right: 162px;
	top: 250px;
}
#system_content > .bg04 > .ttl {
	left: 87px;
	top: 198px;
}
#system_content > .box > .cap {
	/* display: flex; */
	/* justify-content: center; */
	position: absolute;
	width: 100%;
}
#system_content > .box > .cap img {
	width: 100%;
}
#system_content > .box > .cap > li {
	position: relative;
	padding: 0 4% 0 1%;
	width: 45%;
	float: left;
}
#system_content > .box > .cap > li:first-child {
	padding: 0 1% 0 4%;
}
#system_content > .box > .cap .line {
	border: 2px solid #dac73a;
	box-shadow: 1px 1px 4px 0px rgba(0,0,0,0.8);
}
#system_content > .box > .cap .txt {
	background: url(../../img/system/bg.png) no-repeat bottom #9d3a68;
	background-size: 100%;
	color: #FFF;
	line-height: 1.5;
	font-size: 18px;
	padding: 18px;
	min-height: 54px;
}
#system_content > .bg01 > .cap {
	bottom: 60px;
}
#system_content > .bg01 > .cap > li:first-child {
	top: -60px;
}
#system_content > .bg02 > .cap {
	/* align-items: baseline; */
	bottom: 0;
}
#system_content > .bg02 > .cap > li:first-child {
	top: -120px;
}
#system_content > .bg02 > .cap > li:last-child {
	bottom: -250px;
}
#system_content > .bg03 > .cap {
	bottom: 50px;
}
#system_content > .bg03 > .cap > li:first-child {
	top: -60px;
}
#system_content > .bg04 > .cap {
	/* justify-content: flex-start; */
	bottom: 60px;
}

@media screen and (max-width: 639px) {
#system_content > .bg01,
#system_content > .bg02,
#system_content > .bg03,
#system_content > .bg04 {
	background: none;
	height: inherit;
	padding-bottom: 8%;
	background: #ffe9f1;
}
#system_content > .box > .cap {
	display: block;
	position: static;
	width: 90%;
	margin: 0 auto;
}
#system_content > .box > .cap > li {
	padding: 0;
	width: 100%;
	float: none;
}
#system_content > .box > .cap > li:first-child {
	padding: 0;
	top: 0;
	margin-top: -10%;
	margin-bottom: 10%;
}
#system_content > .bg02 > .cap > li:last-child {
	bottom: 0;
}
#system_content > .box > .cap .txt {
	background: url(../../img/system/bg_sp.png) no-repeat bottom #9d3a68;
	background-size: 100%;
	font-size: 14px;
	padding: 4%;
	min-height: inherit;
}
#system_content > .bg04 {
	padding-bottom: 0.1%;
}
#system_content > .bg04 > .cap > li:first-child {
	margin-top: -2%;
}
}

/*****************************
	download contents
****************************/
.dlc {
    margin-top: 35px;
}
.dlc > .ttl img {
    margin: 0 auto;
}
.dlc > .box {
    width: 99.2%;
    margin: 0 auto;
    background-color: rgba(255, 255, 255, 0.5);
    box-shadow: 0px 2px 6px rgba(97, 85, 88, 0.38);
    /* padding: 35px 35px 60px; */
    padding: 3%;
}
.dlc > .box > .menu {
    float: left;
    line-height: 1.5;
    /* width: 170px; */
    width: 14.5%;
    /* padding: 10px 35px 0 0; */
    padding: 1% 3% 0 0;
    font-size: 16px;
}
.dlc > .box > .menu,
.dlc > .box > .menu a {
    color: #cc528f;
}
.dlc > .box > .menu li {
    padding: 3px 0;
}
.dlc > .box > .menu li:not(:last-child) {
    border-bottom: 1px solid #d3d3d3;
}
.dlc > .box > .menu li > * {
    position: relative;
    cursor: pointer;
    display: block;
    padding: 3px;
}
.dlc > .box > .menu li > *:hover,
.dlc > .box > .menu li > *.active {
    background-color: rgba(214,139,180,.5);
    opacity: inherit;
}
.dlc > .box > .menu li > *:after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 0 5px 8px;
    border-color: transparent transparent transparent #cc528f;
    position: absolute;
    right: 6px;
    top: 50%;
    margin-top: -6px;
}
@media screen and (max-width: 900px) {
.dlc > .box > .menu li > *:after {
	display: none;
}
}
.dlc > .box > .menu span {
    display: block;
    font-size: 13px;
}
.dlc > .box > .content {
    display: none;
    float: left;
    /* width: 886px; */
    width: 74.5%;
    border-left: 1px solid #d3d3d3;
    /* padding-left: 35px; */
    padding-left: 3%;
}
.dlc > .box > .content .txt,
.dlc > .box .chara .talk {
    line-height: 1.7;
    font-size: 16px;
}
.dlc > .box > .content .txt + .txt {
	margin-top: 1.5em;
}
.dlc > .box > .content .txt.fb {
    font-weight: bold;
}
.dlc > .box > .content .txt.fs {
    font-size: 13px;
    margin-top: 1em;
}
.dlc > .box .chara {
    background-color: rgba(255, 255, 255, 0.8);
    box-shadow: 0px 2px 6px rgba(97, 85, 88, 0.38);
    margin: 40px 0;
}
.dlc > .box .chara .img {
    float: left;
    /* width: 450px; */
    width: 50%;
}
.dlc > .box .chara .img img {
	width: 100%;
}
.dlc > .box .chara .detail {
    float: right;
    /* width: 376px; */
    width: 40%;
    /* padding: 40px 30px; */
    padding: 5%;
}
.dlc > .box .chara .talk {
    margin: 1.5em 0;
}
.dlc > .box .chara .talk > * {
    float: left;
}
.dlc > .box .chara .talk > dt {
    width: 20%;
    color: #cc528f;
}
.dlc > .box .chara .talk > dd {
    width: 80%;
}
.dlc > .box .price {
    width: 100%;
    background-color: rgba(214,139,180,.3);
    font-size: 16px;
}
.dlc > .box .price th {
    text-align: left;
    font-weight: bold;
    width: 15%;
}
.dlc > .box .price th,
.dlc > .box .price td {
    padding: 25px 0 0 30px;
}
.dlc > .box .price tr:last-child th,
.dlc > .box .price tr:last-child td {
    padding: 25px 0 25px 30px;
}
.dlc > .box .price span {
    color: #cc528f;
}
.dlc > .box .event {
    margin-bottom: 70px;
}
.dlc > .box .event:last-child {
	margin-bottom: 0;
}

@media screen and (max-width: 639px) {
.dlc {
	margin-top: 0;
}
.dlc > .ttl {
    margin: 5% 0;
    font-size: 12px;
    text-align: center;
    line-height: 1.5;
}
.dlc > .box {
    width: 99.2%;
    margin: 0 auto;
    background-color: rgba(255, 255, 255, 0.8);
    box-shadow: 0px 2px 6px rgba(97, 85, 88, 0.38);
    padding: 0;
}
.dlc > .box > .menu {
    float: none;
    width: 90%;
    padding: 5%;
    font-size: 16px;
    text-align: center;
    background: #FFF;
}
.dlc > .box > .menu li {
    padding: 3px 0;
}
.dlc > .box > .menu li > * {
    padding: 4px;
}
.dlc > .box > .menu li > *:after {
	display: none;
}
.dlc > .box > .menu span {
    display: inline;
    font-size: inherit;
}
.dlc > .box > .content {
    float: none;
    width: 100%;
    border-left: none;
    padding: 0;
}
.dlc > .box > .content .txt,
.dlc > .box .chara .talk {
    line-height: 1.7;
    font-size: 16px;
}
.dlc > .box > .content .txt.fs {
    font-size: 12px;
    margin-top: 1em;
}
.dlc > .box > .content .shop_hl-sub {
	font-size: 17px;
}
.dlc > .box > .content .shop_hl-sub span {
	font-size: 13px;
	display: block;
}
.dlc > .box .chara {
    background-color: inherit;
    box-shadow: inherit;
    margin: 8% 0 3%;
}
.dlc > .box .chara .img {
    float: none;
    width: 100%;
}
.dlc > .box .chara .detail {
    float: none;
    width: 100%;
    padding: 8% 0;
}
.dlc > .box .chara .talk {
    margin: 1.5em 0;
}
.dlc > .box .chara .talk > dt {
    width: 20%;
}
.dlc > .box .chara .talk > dd {
    width: 80%;
}
.dlc > .box .price {
    font-size: 12px;
    margin-bottom: 10%;
}
.dlc > .box .price th {
    width: 26%;
}
.dlc > .box .price th,
.dlc > .box .price td {
    padding: 7% 0 0 5%;
}
.dlc > .box .price tr:last-child th,
.dlc > .box .price tr:last-child td {
    padding: 5% 0 7% 5%;




}
.dlc > .box .event {
    width: 90%;
    padding: 0 5%;
    border-bottom: 1px solid #d3d3d3;
    margin-bottom: 10%;
}
.dlc > .box .head {
    width: 90%;
    padding: 10% 5% 0;
}
}

/*****************************
	appLP
****************************/
#app_contents {
	font-size: 18px;
	line-height: 1.5;
}
#app_contents .bg {
	padding: 1%;
}
#app_contents .bg .bd {
	border: 2px solid #e6d68a;
}
#app_contents .sec01 {
	background: url(../../img/app/img02.jpg) no-repeat #f7e6f0;
	background-size: 100%;
	padding-bottom: 5%;
}
#app_contents .sec01 .ttl {
	padding: 33% 0 3.5%;
}
#app_contents .sec01 .ttl img {
	margin: 0 auto;
}
#app_contents .sec01 .box {
	margin: 0 5% 0 7%;
	position: relative;
}
#app_contents .sec01 .att {
    margin-top: 3%;
    text-align: center;
    font-size: 11px;
}
#app_contents .sec01 .frame {
	background: url(../../img/app/slide_frame.png) no-repeat;
	background-size: 100%;
	float: left;
	width: 51%;
	position: relative;
}
#app_contents .sec01 .slider {
	width: 80%;
	margin: 1.8% 0 0 8.8%;
}
#app_contents .sec01 .slider button {
	font-size: 0;
	border: none;
	outline: none;
	cursor: pointer;
	padding: 0;
}
#app_contents .sec01 .slider .slick-arrow {
	position: absolute;
	z-index: 1;
	top: 50%;
	width: 12%;
	height: 18.8%;
	margin-top: -9%;
}
#app_contents .sec01 .slider .slick-prev {
	background: url(../../img/app/arrow_l.png) no-repeat;
	background-size: 100%;
	left: -17%;
}
#app_contents .sec01 .slider .slick-next {
	background: url(../../img/app/arrow_r.png) no-repeat;
	background-size: 100%;
	right: -19%;
}
#app_contents .sec01 .slider .slick-dots {
	text-align: center;
	margin-top: 2%;
}
#app_contents .sec01 .slider .slick-dots li {
	display: inline-block;
	margin: 0 1.3%;
}
#app_contents .sec01 .slider .slick-dots .slick-active button {
	background: #9d3a68;
}
#app_contents .sec01 .slider .slick-dots button {
	border: 1px solid #9d3a68;
	background: none;
	border-radius: 50%;
	width: 13px;
	height: 13px;
}
#app_contents .sec01 .txt {
	float: right;
	width: 42%;
	margin-left: 5%;
	background-color: rgba(255,255,255,.9);
	box-shadow: 2px 2px 5px 0px rgba(0,0,0,0.58);
}
#app_contents .sec01 .txt .bd {
	padding: 7% 4%;
}
#app_contents .sec01 .txt p {
	margin-bottom: 1em;
}
#app_contents .sec02 {
	background: #c25689;
	padding: 3% 5%;
}
#app_contents .sec02 .bg {
	background: #FFF;
}
#app_contents .sec02 .bd {
	padding: 5% 4% 3%;
}
#app_contents .sec02 .ttl img {
	margin: 0 auto;
}
#app_contents .sec02 .box {
	margin-top: 5%;
}
#app_contents .sec02 .dl {
	float: left;
	width: 48%;
	margin-right: 4%;
}
#app_contents .sec02 .price {
	float: right;
	width: 48%;
}
#app_contents .sec02 .price {
	border-bottom: 1px solid #CCC;
}
#app_contents .sec02 .price .txt {
	text-align: center;
	font-weight: bold;
	margin-bottom: 2%;
}
#app_contents .sec02 .price table {
	width: 100%;
	text-align: left;
	border-top: 1px solid #CCC;
}
#app_contents .sec02 .price table th {
	width: 68%;
}
#app_contents .sec02 .price table tr:first-child th {
	padding: 2% 0;
}
#app_contents .sec02 .price table tr:last-child th {
	padding-bottom: 2%;
}
#app_contents .sec02 .price table td {
	color: #cc527a;
	text-align: right;
}
#app_contents .sec02 .price .cap {
	font-size: 13px;
	margin-bottom: 3%;
}
#app_contents .sec02 .price .cap + .cap {
	border-top: 1px solid #CCC;
	padding-top: 3%;
}
#app_contents .sec02 .btn {
	margin: 7% 0 0 7%;
	width: 109%;
}
#app_contents .sec02 .btn a {
	display: inline-block;
	margin-left: -7%;
	width: 49%;
}
#app_contents .sec03 {
	background: url(../../img/app/img03.jpg) no-repeat #5e5477;
	background-size: 100%;
	padding-bottom: 6.4%;
}
#app_contents .sec03 a {
	display: block;
}
#app_contents .sec03 img {
	margin: 0 auto;
}
#app_contents .sec03 .ttl {
	padding: 50% 0 1.5%;
}
#app_contents .sec03 .txt {
	color: #FFF;
	text-align: center;
	text-shadow: 0px 0px 24px rgba(111, 111, 111, 1),0px 0px 24px rgba(111, 111, 111, 1),0px 0px 24px rgba(111, 111, 111, 1);
	margin-bottom: 4%;
}
#app_contents .sec04 {
	width: 61.3%;
	margin: 5% auto 8%;
}
#app_contents .sec04 .spec {
	background-color: rgba(255,255,255,.9);
	padding: 4% 5% 6%;
}
#app_contents .sec04 .spec table {
	width: 100%;
}
#app_contents .sec04 .spec table th,
#app_contents .sec04 .spec table td {
	border-bottom: 1px solid #CCC;
	padding: 2% 0 1.8%;
	line-height: 1.8;
	font-size: 16px;
	vertical-align: middle;
}
#app_contents .sec04 .spec table tr:last-child th,
#app_contents .sec04 .spec table tr:last-child td {
	vertical-align: top;
}
#app_contents .sec04 .spec table th {
	font-weight: bold;
	width: 22%;
	text-align: left;
}
#app_contents .sec04 .spec table td a.btn {
	display: inline-block; 
	width: 50%;
	vertical-align: middle;
	margin-left: 1em;
}
#app_contents .sec04 .spec .box {
	width: 85%;
	display: block;
}
#app_contents .sec04 .spec .price {
	margin-left: 1em;
	color: #cc527a;
	float: right;
}
#app_contents .sec04 .spec .cap {
	font-size: 13px;
	line-height: 1.7;
	display: block;
	margin-top: 0.8em;
}
#app_contents .sec04 .spec .cap + .cap {
	border-top: 1px solid #CCC;
	padding-top: 0.8em;
}

#app_contents .sec05 {
	background: #c25689;
	padding: 1% 5%;
}

#app_contents .sec05 ul{
    text-align: center;
}

#app_contents .sec05 li {
    display: inline;
}

@media screen and (max-width: 639px) {
#app_contents {
	font-size: 14px;
	line-height: 2;
}
#app_contents .bg {
	padding: 2%;
}
#app_contents .bg .bd {
	border: 2px solid #e6d68a;
}
#app_contents .sec01 {
	background: #ffebf2;
	padding-bottom: 15%;
}
#app_contents .sec01 .ttl {
	padding: 0;
}
#app_contents .sec01 .box {
	margin: 0 2%;
}
#app_contents .sec01 .att {
	margin-top: 2%;
	font-size: 10px;
}
#app_contents .sec01 .frame {
	float: none;
	width: 100%;
}
#app_contents .sec01 .slider {
	width: 80%;
	margin: 0 0 0 8.8%;
	padding-top: 2%;
}
#app_contents .sec01 .slider .slick-arrow {
	width: 14%;
	height: 20%;
	margin-top: -12%;
}
#app_contents .sec01 .slider .slick-prev {
	left: -10%;
}
#app_contents .sec01 .slider .slick-next {
	right: -13%;
}
#app_contents .sec01 .slider .slick-dots {
	margin-top: 2%;
}
#app_contents .sec01 .slider .slick-dots li {
	margin: 0 1.3%;
}
#app_contents .sec01 .slider .slick-dots button {
	width: 11px;
	height: 11px;
}
#app_contents .sec01 .txt {
	float: none;
	width: 90%;
	margin: 7% auto 0;
}
#app_contents .sec01 .txt .bd {
	padding: 7% 4% 0;
}
#app_contents .sec02 {
	padding: 7% 5%;
}
#app_contents .sec02 .bd {
	padding: 10% 4% 8%;
}
#app_contents .sec02 .box {
	margin-top: 7%;
}
#app_contents .sec02 .dl {
	float: none;
	width: 100%;
	margin-right: 0;
}
#app_contents .sec02 .price {
	float: none;
	width: 100%;
}
#app_contents .sec02 .price table th {
	width: 60%;
	line-height: 1.5;
}
#app_contents .sec02 .price table th span {
	font-size: 11px;
}
#app_contents .sec02 .price table tr:first-child th {
	padding: 6% 0 0;
}
#app_contents .sec02 .price table tr:last-child th {
	padding-bottom: 6%;
}
#app_contents .sec02 .price table td {
	text-align: right;
}
#app_contents .sec02 .price .cap {
	font-size: 9px;
	margin-bottom: 5%;
	line-height: 1.5;
}
#app_contents .sec02 .price .cap + .cap {
	padding-top: 5%;
}
#app_contents .sec02 .btn {
	margin: 5% 0 10% 7%;
	width: 109%;
}
#app_contents .sec02 .btn a {
	margin-left: -7%;
	width: 49%;
}
#app_contents .sec03 {
	padding-bottom: 6.4%;
}
#app_contents .sec03 .ttl {
	padding: 0 5%;
	margin-top: -16%;
}
#app_contents .sec03 .txt {
	margin: 2% 0 6%;
}
#app_contents .sec03 a {
	margin: 0 5%;
}
#app_contents .sec04 {
	width: 90%;
	margin: 7% auto 8%;
}
#app_contents .sec04 .spec {
	padding: 4% 5% 6%;
}
#app_contents .sec04 .spec table th,
#app_contents .sec04 .spec table td {
	padding: 4% 0 3.8%;
	line-height: 1.8;
	font-size: 12px;
}

#app_contents .sec04 .spec table th {
	width: 30%;
}

#app_contents .sec04 .spec table td a.btn {
	display: inline-block; 
	width: 80%;
	vertical-align: middle;
	margin-left: 1em;
}

#app_contents .sec04 .spec table td .fs {
	font-size: 9px;
}
#app_contents .sec04 .spec .price {
	margin-left: 0;
	display: inline-block;
	float: none;
}
#app_contents .sec04 .spec .cap {
	font-size: 9px;
	line-height: 1.7;
	margin-top: 0.8em;
}

#app_contents .sec05 ul{
    text-align: center;
}

#app_contents .sec05 li{
    padding:10px;
}
}


/*****************************************
ここまで
*****************************************/
