/**************************************************
**
**	STYLE
**	-----------------------------------------------
**	SITE STYLE SETTING
**
***************************************************/


/**************************************************
**
**	PARTS
**
***************************************************/

.relative {
    position: relative;
}

/* .check-unread{
	position: absolute;
	top: 2px;
	right: 2px;
	width: 20px;
	height: 20px;
	line-height: 20px;
	background: #e62353;
	color: #FFFFFF;
	text-align: center;
	font-size: 11px;
	border-radius: 50%;
	font-weight: bold;
} */

.check-unread {
    position: absolute;
    top: -10px;
    right: 2px;
    width: 20px;
    height: 20px;
    line-height: 20px;
    background: #ff2d74;
    color: #fff;
    text-align: center;
    font-size: 11px;
    border-radius: 50%;
    font-weight: bold;
    /* border: solid 1px #fff; */
    z-index: 100;
}

.check-present {
    position: absolute;
    top: 0px;
    right: 0px;
    width: 16px;
    height: 16px;
    line-height: 16px;
    background: #ff2d74;
    color: #fff;
    /* border: solid 1px #fff; */
    text-align: center;
    font-size: 11px;
    border-radius: 50%;
    font-weight: bold;
}

.check-count{
	position: absolute;
	top: 0px;
	right: 2px;
	width: 30px;
	height: 13px;
	line-height: 13px;
	background: #e62353;
	color: #FFFFFF;
	text-align: center;
	font-size: 10px;
	border-radius: 10px;
	font-weight: bold;
}

.count-present{
	width: 20px;
	height: 20px;
	line-height: 20px;
	background: #e62353;
	color: #FFFFFF;
	text-align: center;
	font-size: 11px;
	border-radius: 50%;
	display: bloack;
	float: right;
	font-weight: bold;
}



/**************************************************
**
**	CONTENTS
**
***************************************************/

.title{
	background-image: url("/images/smart/title/title.png");
	background-repeat: no-repeat;
	background-size: 100% 100%;
	height: 40px;
	/* color: #020202; */
	color: #111820;
	font-size: 13px;
	font-weight: bold;
	text-align: center;
	margin: 0 auto 0px;
	line-height: 40px;
	position: relative;
	font-family: "M PLUS Rounded 1c", "メイリオ Regular", "ヒラギノ角ゴシック", sans-serif;
}

.title-nomargin{
	background-image: url("/images/smart/title/title.png");
	background-repeat: no-repeat;
	background-size: 100% 100%;
	height: 40px;
	/* color: #020202; */
	color: #111820;
	font-size: 13px;
	font-weight: bold;
	text-align: center;
	margin: 0 auto;
	line-height: 40px;
	position: relative;
	font-family: "M PLUS Rounded 1c", "メイリオ Regular", "ヒラギノ角ゴシック", sans-serif;
}

.title-margin{
	background-image: url("/images/smart/title/title.png");
	background-repeat: no-repeat;
	background-size: 100% 100%;
	height: 40px;
	/* color: #020202; */
	color: #716b6b;
	font-size: 13px;
	font-weight: bold;
	text-align: center;
	margin: 0 auto 15px;
	line-height: 40px;
	position: relative;
}

.title-frame{
	background-image: url("/images/smart/title/title.png");
	background-repeat: no-repeat;
	background-size: 100% 100%;
	height: 45px;
	/* color: #020202; */
	color: #716b6b;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	margin: 0 auto 5px;
	padding-top: 8px;
}

.title-ribon{
	background-image: url("/images/smart/title/title-ribon.png");
	background-repeat: no-repeat;
	background-size: contain;
	width: 320px;
	height: 40px;
	/* color: #020202; */
	color: #716b6b;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	margin: 0 auto 5px;
	padding-top: 5px;
}

.title .left{
	margin-left: 5px;
	float: left;
}

.title .right{
	margin-right: 5px;
	float: right;
}

.title a{
	background-color: #FF3366;
	color: #FFFFFF;
	font-size: 11px;
	font-weight: normal;
	border-radius: 10px;
	padding: 5px;
}



/**************************************************
**
**	BUTTON IMAGE
**
***************************************************/

.image-center{
	text-align: center;
	padding: 10px 0px 15px;
}

.image-center-nopadding{
	text-align: center;
	padding: 5px 0px 0px;
}

.image-center img {
    margin: 0 auto;
    width: 25%;
}



/**************************************************
**
**	LIST
**
***************************************************/

/* LIST */
.list {
	list-style: none;
	margin: 0px;
	padding: 0px;
}

.list li{
	list-style: none;
	color: #000000;
	padding: 5px 0px 5px 0px;
	border-bottom: 1px solid #ebebeb;
	clear: both;
    overflow: hidden;
}

.list li a {
	display: block;
	width: 100%;
	color: #666666;
	padding: 8px;
	position: relative;
	text-decoration: none;
}

.list-short li{
	list-style: none;
	color: #000000;
	border-bottom: 1px solid #ebebeb;
	clear: both;
    overflow: hidden;
}

.list-short li a {
	display: block;
	width: 100%;
	color: #666666;
	padding: 8px;
	position: relative;
	text-decoration: none;
}

/* .list-line li{
	list-style: none;
	padding: 8px;
	color: #000000;
	border-bottom: 1px solid #ebebeb;
	clear: both;
    overflow: hidden;
} */
.list-line li {
    list-style: none;
    padding: 8px;
    color: #000000;
    border-bottom: 1px solid #ebebeb;
    clear: both;
    overflow: hidden;
    background-color: #fff;
    border: solid 0.1em #b9bfc7;
    border-radius: 5px;
    margin: 10px;
    box-shadow: 0.1em 0.1em 0.1em #b9bfc7;
}

/*
.list li a::before {
	background: #eee;
	border-radius: 50%;
	content: "";
	padding: 14px;
	position: absolute;
	right: 21px;
	top: 23px;
	width: 1px;
	z-index: -2;
}
 
.list li a::after{
	border-right: 4px solid #9E9E9E;
	border-top: 4px solid #9E9E9E;
	border-radius: 2px;
	content: "";
	margin: 0 0 0 10px;
	height: 10px;
	right: 30px;
	position: absolute;
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	top: 30px;
	width: 10px;
	z-index: -1;
}
*/

.list li a:hover {
	background: rgba(255,255,255,0.1);
}

.list li a:active {
	background: #FFFFEE;
}

.list-secret{
	filter:alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
}

.image {
	position: relative;
	float: left;
	vertical-align: middle;
	margin-right: 10px;
	margin-bottom: 5px;
	width: 75px;
	height: 75px;
	/* border: 2px solid #FF99CC; */
	border-radius: 3px;
	overflow: hidden;
}

.image img {
	width: 75px;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;

}

.thumbnail {
	float: left;
	vertical-align: middle;
	margin-right: 10px;
	margin-bottom: 5px;
	width: 50px;
	height: 50px;
	overflow: hidden;
	position: relative;
}

.thumbnail img {
	width: 50px;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
}


.icon {
	background-image: url("/images/icon.png");
	float: left;
	margin-right: 10px;
	margin-bottom: 5px;
	width: 66px;
	height: 66px;
	border-radius: 3px;
	background-size: 66px;
	overflow: hidden;
}

.list-contents {
	min-height: 40px;
	color: #666666;
	font-size: 12px;
	padding: 0;
	padding-left: 85px;
	padding-right: 20px;
	/* padding-right: 45px; */
	border: none;
}

.list-contents-long {
	min-height: 40px;
	color: #666666;
	font-size: 12px;
	padding: 0;
	padding-left: 60px;
	padding-right: 20px;
	/* padding-right: 45px; */
	border: none;
}


/**************************************************
**
**	LIST MENU
**
***************************************************/

#list-menu{
	background-color: #FFFFFF;
	border-top: 1px solid #CCCCCC;
	clear: both;
}

#list-menu ul{
	list-style: none;
	margin: 0px;
	padding: 0px;
}

#list-menu ul li{
	list-style: none;
	border-bottom: 1px solid #CCCCCC;
	clear: both;
    overflow: hidden;
}

#list-menu ul li a {
	display: block;
	color: #111820;
	padding: 12px;
	position: relative;
	text-decoration: none;
	z-index: 3;
	font-family: "M PLUS Rounded 1c", "メイリオ Regular", "ヒラギノ角ゴシック", sans-serif;
}

#list-menu ul li a::before {
	background: #eee;
	border-radius: 50%;
	content: "";
	padding: 14px;
	position: absolute;
	right: 11px;
	top: 8px;
	width: 1px;
	z-index: 1;
}
 
#list-menu ul li a::after{
	border-right: 4px solid #9E9E9E;
	border-top: 4px solid #9E9E9E;
	border-radius: 2px;
	content: "";
	margin: 0 0 0 10px;
	height: 10px;
	right: 20px;
	position: absolute;
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	top: 15px;
	width: 10px;
	z-index: 2;
}



/**************************************************
**
**	LINK
**
***************************************************/

.title-link{
	padding-top: 5px;
	padding-bottom: 10px;
}

.title-link div{
	width: 50%;
	text-align: center;
	float: left;
}

.title-link div img{
	width: 90%;
	margin: 0 auto;
}


/**************************************************
**
**	INDEX
**
***************************************************/

#index-area{
	position: relative;
	width: 100%;
	height: 100%;
	padding: 0px;
	overflow: hidden;
}

#index-area img{
	width: 100%;
}

#index-enter-button{
	width: 100%;
}

#index-enter-button img{
	position: absolute;
	left: 0;
	right: 0;
	bottom: 150px;
	margin: auto;
	width: 50%;
}

#loginArea{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: 400px;
	/* height: 350px; */
	height: 420px;
	background-color: rgba(255,255,255,1.0);
	padding: 15px;
	border-radius: 15px;
}

#loginArea .formList ul li input{
	width: 100%;
}

#loginArea .formList ul li.subject{
	/* color: #FFFFFF; */
	font-weight: normal;
	font-family: "游ゴシック Medium";
}

#loginButton{
	width: 200px;
	height: 50px;
	margin: 5px auto;
}

#loginButton img{
	width: 100%;
}

#index-link-area{
	position: absolute;
	left: 0;
	right: 0;
	bottom: 80px;
	margin: auto;
	text-align: center;
}

#index-link-area ul{
	margin: 0px;
	padding: 0px;
	border: none;
	list-style: none;
}

#index-link-area ul li{
	width: 33%;
	text-align: center;
	margin: 0px;
	list-style: none;
	float: left;
}

#index-link-area a img{
	width: 90%;
	color: #FFFFFF;
	font-size: 10px;
	text-align: center;
	margin: 0 auto;
}

#adultsOnlyFrame{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: 480px;
	height: 450px;
	background-color: rgba(255,255,255,0.8);
	border-radius: 10px;
}

#adultsOnlyTitle{
	margin-bottom: 15px;
	-webkit-border-radius: 10px 10px 0px 0px / 10px 10px 0px 0px;
	-moz-border-radius: 10px 10px 0px 0px / 10px 10px 0px 0px;
	border-radius: 10px 10px 0px 0px / 10px 10px 0px 0px;
	overflow: hidden;
}

#adultsOnlyTitle img{
	width: 100%;
}

#adultsOnlyComment{
	/* color: #FF3366; */
	color: #FF9000;
	font-size: 120%;
	text-align: center;
	padding: 10px;
}

#adultsOnlyContents{
	position: relative;
	padding: 10px;
}

#adultsOnlyContents img{
	width: 100%;
}

#adultsOnlyButton{
	padding: 10px;
}

#adultsOnlyButton a{
	width: 100%;
	display: block;
}

#adultsOnlyNo{
	background-color: #999999;
	width: 32%;
	height: 65px;
	/* color: #000000; */
	font-size: 18px;
	font-weight: bold;
	line-height: 65px;
	text-align: center;
	/* text-shadow: 1px 1px 3px #CCC; */
	/* border: 1px solid #999999; */
	/* border-radius: 15px; */
	border-radius: 35px;
	float: left;
}

.adultsOnlyNo_white{
	color: #FFFFFF;
}

#adultsOnlyYes{
	background-color: #FF9000;
	width: 65%;
	height: 65px;
	color: #FFFFFF;
	font-size: 18px;
	font-weight: bold;
	line-height: 65px;
	text-align: center;
	/* text-shadow: 1px 1px 3px #000; */
	/* border: 1px solid #FF3366; */
	/* border-radius: 15px; */
	border-radius: 35px;
	float: right;
}

#adultsOnlyYes a{
	color: #FFFFFF;
}

#entry-link-area{
	text-align: center;
}

#entry-link-area ul{
	margin: 0px;
	padding: 0px;
	border: none;
	list-style: none;
}

#entry-link-area ul li{
	width: 50%;
	text-align: center;
	margin: 0px;
	list-style: none;
	float: left;
}

#entry-link-area ul li img{
	width: 150px;
}

#googleButton{
	width: 200px;
	margin: auto;
	/* padding: 16px 0 16px 65px;
    position: relative;
    text-align: left; */
}

#googleEntryButton{
	width: 300px;
	margin: auto;
}

.twitterButton{
	width: 200px;
	margin: auto;
	height: 40px;

	display: block;
    text-align: left;
    position: relative;
    overflow: hidden;
    background: #fff;
    border: 1px solid #dadce0;
	-webkit-border-radius: 20px;
    border-radius: 20px;
	line-height: 40px;
    color: #3c4043;
	text-align: center;
	-webkit-flex-grow: 1;
    flex-grow: 1;
}

.twitterButton::before{
	position: absolute;
    display: block;
    content: "";
    background: url(/images/icon/icon-twitter.png) no-repeat 0 0;
    background-size: 24px auto;
    width: 24px;
    height: 24px;
    top: 8px;
	left: 10px;
}

.twitterButton span{
	letter-spacing: 0.25px;
	/* font-family: 'Google Sans',arial,sans-serif; */
	padding-left: 30px;
	color: #3c4043;
}

.twitterEntryButton{
	width: 300px;
	margin: auto;
	height: 40px;

	display: block;
    text-align: left;
    position: relative;
    overflow: hidden;
    background: #fff;
    border: 1px solid #dadce0;
	-webkit-border-radius: 20px;
    border-radius: 20px;
	line-height: 40px;
    color: #3c4043;
	text-align: center;
	-webkit-flex-grow: 1;
    flex-grow: 1;
}

.twitterEntryButton::before{
	position: absolute;
    display: block;
    content: "";
    background: url(/images/icon/icon-twitter.png) no-repeat 0 0;
    background-size: 24px auto;
    width: 24px;
    height: 24px;
    top: 8px;
	left: 10px;
}

.twitterEntryButton span{
	letter-spacing: 0.25px;
	/* font-family: 'Google Sans',arial,sans-serif; */
	padding-left: 30px;
	color: #3c4043;
	font-family: "游ゴシック Medium";
}

.sns-entry-area{
	background-color: #FFFFFF;
}

.sns-entry-message{
	text-align: right;
	font-size: 13px;
    width: 90%;
    padding: 10px 10px 5px 10px;
}

/**************************************************
**
**	MAIN
**
***************************************************/

.name {
	color: #020202;
	font-size: 13px;
	font-weight: bold;
	padding-bottom: 2px;
	/*text-shadow: #cf5875 1px 1px 0px, #cf5875 -1px 1px 0px,#cf5875 1px -1px 0px, #cf5875 -1px -1px 0px;*/
}

.limit {
	color: #111820;
	font-size: 12px;
	padding-bottom: 2px;
}

.title_margin {
	color: #0041CF;
	font-size: 13px;
	font-weight: bold;
	padding-bottom: 5px;
	margin-bottom: 15px;
	line-height: 18px;
}

.content{
	position: relative;
}

.bubble {
	display:block;
	position: relative;
	padding: 5px;
	border-radius:5px;
	background: #FFEEEE;
	color: #000;
}

.bubble:after {
	position: absolute;
	content: " ";
	height: 0;
	width: 0;
}

.bubble-left:after {
	right: 100%;
	top: 50%;
	border:8px solid transparent;
	border-right:10px solid #FFEEEE;
	margin-top: -10px;
}

.talk{
	position: relative;
	background-color: #FFFFFF;
	color: #333333;
	padding: 5px 5px 8px 5px;
}

/*
.talk{
	position: relative;
	background-color: #FFFFFF;
	color: #333333;
	padding: 5px 5px 8px 5px;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-o-border-radius: 10px;
	-ms-border-radius: 10px;
	box-shadow: 0 5px 5px rgba(4, 4, 4, 0.4);
	border: 1px solid #EEEEEE;
}

.talk::before{
	content: "";
	position: absolute;
	left: -16px;
	top: 50%;
	margin-top: -5px;
	width: 0px;
	height: 0px;
	border-right: 10px solid #CCCCCC;
	border-top: 5px solid transparent;
	border-left: 5px solid transparent;
	border-bottom: 5px solid transparent;
	z-index:2;
}

.talk::after{
	content: "";
	position: absolute;
	left: -15px;
	top: 50%;
	margin-top: -5px;
	width: 0px;
	height: 0px;
	border-right: 10px solid #FFFFFF;
	border-top: 5px solid transparent;
	border-left: 5px solid transparent;
	border-bottom: 5px solid transparent;
	z-index:3;
}
*/

.talk img{
	vertical-align: middle;
}

.secret-key img{
	position: absolute;
	top: 0;
	right: 40px;
	width: 110px;
}

.under{
	font-size: 10px;
}

.under_time{
    grid-column: 5 / 6;
    grid-row: 1 / 3;
    color: #222;
    font-size: 1em;
    padding: 5px 0 0 0;
}

.option {
	float: left;
	font-size: 10px;
	margin-right: 5px;
	width: 78px;
	height: 20px;
	color: #fff;
	text-align: center;
	background-color: #bdc1c4;
	border-radius: 3px;
	line-height: 20px;
    border: 1px solid #fff;
}


.photocheck {
    float: left;
    margin: 0 5px;
    /* width: auto; */
    /* height: 14px; */
    padding: 3px 8px;
    color: #fff;
    text-align: center;
    /* background: #FF6600; */
    border-radius: 3px;
    line-height: 14px;
    border: 1px solid #fff;
	background-color: #bdc1c4;
}

.nickname{
	color: #FF3366;
}

.read{
	background-color: #bdc1c4;
	width: 40px;
	height: 14px;
	color: #FFFFFF;
	font-size: 10px;
	text-align: center;
	padding: 3px;
	border-radius: 13px;
	line-height: 14px;
	display: block;
	float: left;
}

/* .unread{
	background-color: #ff9d96;
	width: 40px;
	height: 14px;
	color: #FFFFFF;
	font-size: 10px;
	text-align: center;
	padding: 3px;
	border-radius: 3px;
	line-height: 14px;
	display: block;
	float: left;
	border: 1px solid #fff;
} */

.unread {
    background-color: #ff9d96;
    width: 40px;
    height: 14px;
    color: #FFFFFF;
    font-size: 10px;
    text-align: center;
    padding: 3px;
    border-radius: 20px;
    line-height: 14px;
    display: block;
    float: left;
    border: 1px solid #fff;
}

.send-date{
	color: #555555;
	font-size: 11px;
	padding-left: 15px;
}

.date{
	float: right;
	color: #000000;
}

.under-date{
	float: right;
	color: #666666;
	padding-right: 25px;
}

.balloon {
	display: block;
	float: left;
	margin-right: 5px;
	width: 50px;
	color: #fff;
	font-size: 8px;
	text-align: center;
	background: #F00;
	border-radius: 3px;
}



/**************************************************
**
**	CHARACTER
**
***************************************************/

#characterSelect{

}

#characterSelect ul li{
	position: relative;
	width: 50%;
	list-style: none;
	text-align: center;
	padding: 10px 0px 10px 0px;
	float: left;
}

#characterSelect ul a{
	width: 100%;
	display: block;
}

#characterSelect ul li img{
	width: 90%;
	margin: 0 auto;
}

.characterCount{
	position: absolute;
	top: 5px;
	right: 10px;
	width: 40px;
	height: 40px;
	line-height: 40px;
	background: #0099FF;
	color: #FFFFFF;
	text-align: center;
	font-size: 14px;
	border-radius: 50%;
	font-weight: bold;
	z-index: 100;
}

#characterSelectButton{
	position: absolute;
	right: 20px;
	bottom: 20px;
	width: 150px;
	height: 150px;
}

#characterSelectButton img{
	width: 100%;
}

#character-list{
	padding: 10px;
}

#character-list ul{
	width: 100%;
	margin: 0px;
	padding: 0px;
	list-style: none;
}

#character-list ul li{
	position: relative;
    list-style: none;
    /* background-color: #fff; */
    width: 100%;
    padding: 5px 0px;
}

#character-list ul a{
	width: 100%;
	display: block;
}

#character-list ul li a img{
	width: 100%;
}

/* #character-list ul li .secret-key img{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: 150px;
} */

#character-list ul li .secret-key img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    width: 70%;
}

.mail-unread {
    position: absolute;
    top: -10px;
    right: 2px;
    width: 28px;
    height: 28px;
    line-height: 28px;
    background: #ff2d74;
    color: #fff;
    /* border: solid 1px #fff; */
    text-align: center;
    font-size: 12px;
    border-radius: 50%;
    font-weight: bold;
}

.button-profile{
	position: absolute;
	right: 0px;
	bottom: 5px;
	margin: auto;
	width: 85px;
	z-index: 99;
}

.button-profile img{
	width: 100%;
}


.character-list{
	position: relative;
	margin: 0px;
	padding: 10px 8px 10px 8px;
	border-bottom: 1px dotted #EEEEEE;
	clear: both;
}

.character-list ul{
	width: 100%;
	margin: 0px;
	padding: 0px;
	list-style: none;
}

.character-list ul li{
	width: 33%;
	text-align: center;
	list-style: none;
	margin-left: -1px;
	padding: none;
	float: left;
	display: block;
}


.character-list ul li:first-child {

}

.character-list ul li:last-child {
	width: 34%;
}

.character-list-box{
	width: 90%;
	margin: 0 auto;
}

.character-list .clear{
	clear: both;
	display: none;
}

.character-list-image{
	position: relative;
	background-color: #000000;
	border: 2px solid #FF99CC;
	border-radius: 5px;
	margin-bottom: 10px;
}

.character-list-image img{
	width: 100%;
}

.no-mail {
    /* background-color: #000000; */
    filter: alpha(opacity=50);
    /* -moz-opacity: 0.5; */
    /* opacity: 0.5; */
    /* z-index: 100; */
    position: relative;
}

.no-mail::after {
    content: '';
    background-color: rgba(0,0,0,0.6);
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    border-radius: 10px;
}

.key-back{
	filter:alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
}

.character-list-image span img{
	position: absolute;
	top: -10px;
	right: -10px;
	width: 30px;
}

.character-list-name{
	background-color: #FF99CC;
	color: #FFFFFF;
	text-align: center;
	margin: 0 auto;
	padding: 4px;
	border-radius: 5px;
}

.character-list-box{
	margin: 10px auto;
	text-align: center;
}

#profile-area{
	position: relative;
}

#profile-area img{
	width: 100%;
}

#profile-area #return-button{
	position: absolute;
	/*
	left: 0;
	right: 0;
	bottom: 10px;
	margin: auto;
	width: 250px;
	*/

	right: 5px;
	bottom: 0;
	width: 140px;
}

#profile-area #return-button img{
	width: 100%;
}


.lschg{
	display: flex;
	height: 4em;
	padding-top: 15px;
	align-items: center;
	font-family: "M PLUS Rounded 1c", "メイリオ Regular", "ヒラギノ角ゴシック", sans-serif;
}

.lschg div{
	width: calc(100% / 3); 
	text-align:center;
	position: relative;
}

.lschg div[data-mail-cnt]:before {
    position: absolute;
    top: -14px;
    right: 5px;
    width: 22px;
    height: 22px;
    line-height: 22px;
    background: #ff2d74;
    color: #fff;
    /* border: solid 1px #fff; */
    text-align: center;
    font-size: 12px;
    border-radius: 50%;
    font-weight: bold;
    content: attr(data-mail-cnt)"";
}

.lschg img{
	max-width: 90%;
}

/* 20230303 */
span.girl{
	color: #ffffff;
    border: 1px solid;
    border-radius: 20px;
    padding: 6px 0px;
	background: rgba(255,144,0,0.8);
    width: 85%;
    display: block;
    margin: 0 auto;
}

span.glay{
	background: rgba(128,128,128,0.6);
	color: #ffffff;
    border: 1px solid;
    border-radius: 20px;
    padding: 6px 0px;
	width: 85%;
    display: block;
    margin: 0 auto;
}

span.capule{
	color: #ffffff;
    border: 1px solid;
    border-radius: 20px;
    padding: 6px 0px;
	background: rgba(235,99,244,0.8);
    width: 85%;
    display: block;
    margin: 0 auto;
}

span.event{
	color: #ffffff;
    border: 1px solid;
    border-radius: 20px;
    padding: 6px 0px;
	background: rgba(135,3,252,0.8);
    width: 85%;
    display: block;
    margin: 0 auto;
}

#closeness-reward {
    position: absolute;
    width: 180px;
    z-index: 100;
    right: 0px;
    bottom: 0px;
}

#closeness-reward img{
    width: 100%;
}

/**************************************************
**
**	PRESENTBOX
**
***************************************************/

.acceptance-all{
	margin-top: 10px;
	margin-bottom: 5px;
}

.acceptance-all img{
	width: 100%;
}



/**************************************************
**
**	ALBUM
**
***************************************************/

.albumCount{
	/*
	position: absolute;
	top: 0px;
	left: 140px;
	right: 00px;
	bottom: 0px;
	margin: auto;
	width: 30px;
	height: 30px;
	line-height: 30px;
	background: #FF3366;
	color: #FFFFFF;
	text-align: center;
	font-size: 13px;
	border-radius: 50%;
	font-weight: bold;
	display: inline-block;
	z-index: 100;
	*/
}

#album-list{
	min-height: 500px;
	height: auto !important;
	height: 500px;
}

.album-list{
	position: relative;
	margin: 0px;
	padding: 10px 8px 10px 8px;
	clear: both;
}

.album-list ul{
	width: 100%;
	margin: 0px;
	padding: 0px;
	list-style: none;
}

.album-list ul li{
	width: 25%;
	text-align: center;
	list-style: none;
	padding-bottom: 10px;
	float: left;
	display: block;
}

.album-list ul li p{
	background-color: #FFFFFF;
	width: 85%;
	vertical-align: middle;
	margin: 0 auto;
	padding: 3px;
	border: 1px solid #BBBBBB;
	border-radius: 5px;
	box-shadow:3px 3px 3px rgba(0,0,0,0.4);
}

/* .album-list ul li p a{
	position: relative;
	display: block;
	height: 90px;
	overflow: hidden;
} */

.album-list ul li p a {
    position: relative;
    display: block;
    height: 110px;
    overflow: hidden;
}

.album-list ul li p a img{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	border-radius: 8px;
	width: 100%;
}

.album-list ul li p a span{
	background-color: #000000;
	display: block;
	position: absolute;
	bottom: 0;
	width: 100%;
	font-size: 10px;
	color: #FFFFFF;
	text-align: center;
	filter:alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
}

.album-list-box{
	width: 90%;
	margin: 0 auto;
}

.album-list .clear{
	clear: both;
	display: none;
}

#albumDetail{
	width: 100%;
}

#albumDetail img{
	width: 100%;
}



/**************************************************
**
**	EXCHANGE
**
***************************************************/

#exchange-list{
	min-height: 500px;
	height: auto !important;
	height: 500px;
}

.exchange-list{
	position: relative;
	margin: 0px;
	padding: 10px 8px 10px 8px;
	clear: both;
}

.exchange-list ul{
	width: 100%;
	margin: 0px;
	padding: 0px;
	list-style: none;
}

.exchange-list ul li{
	width: 25%;
	text-align: center;
	list-style: none;
	padding-bottom: 10px;
	float: left;
	display: block;
}

.exchange-list ul li p{
	position: relative;
	background-color: #FFFFFF;
	width: 85%;
	vertical-align: middle;
	margin: 0 auto;
	padding: 3px;
	border: 1px solid #BBBBBB;
	border-radius: 5px;
	box-shadow:3px 3px 3px rgba(0,0,0,0.4);
}

.exchange-list ul li p label{
	position: relative;
	display: block;
	height: 90px;
	overflow: hidden;
}

.exchange-list ul li p label img{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	border-radius: 8px;
	width: 100%;
}

.exchange-list ul li p label span{
	background-color: #000000;
	display: block;
	position: absolute;
	bottom: 0;
	width: 100%;
	font-size: 10px;
	color: #FFFFFF;
	text-align: center;
	filter:alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
}

.exchange-list ul li p .exchange-checkbox{
	position: absolute;
	top: 5px;
	right: 5px;
	z-index: 100;
}

.exchange-list ul li p .no-exchange{
	background-color: #000000;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: 100%;
	font-size: 10px;
	color: #FFFFFF;
	font-weight: bold;
	text-align: center;
	vertical-align: middle;
	filter:alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
}

.exchange-rule{
	background-color: #FFFFFF;
	width: 95%;
	margin: 10px auto 10px;
	padding: 5px;
	border-radius: 10px;
	color: #111820;
}



/**************************************************
**
**	SHOP
**
***************************************************/

/* Android用 */
#item-frame{
	display: none;
}

/* Android用 */
#ticket-frame{
	display: none;
}

.item-name{
	display: none;
}

.item-description{
	display: none;
}

.shop-space{
	background-color: #FFFFFF;
	width: 100%;
	height: 45px;
	line-height: 45px;
	text-align: center;
	margin-bottom: 5px;
	border-top: 1px solid #ebebeb;
	border-bottom: 1px solid #ebebeb;
}

.shop-space a{
	display: block;
	text-align: center;
	font-family: "游ゴシック Medium";
	color: #111820;
}

.shop-banner{
	clear: both;
	/* padding: 50px 0 0 0; */
}

.shop-banner ul{
	width: 100%;
	margin: 0px;
	padding: 0px;
	list-style: none;
}

.shop-banner ul li{
	width: 100%;
	margin: 0px;
	padding: 0px;
	list-style: none;
}

.shop-banner ul li img{
	width: 100%;
}

/* #shop-list{
	border-top: 1px solid #ebebeb;
	clear: both;
}

#shop-list ul{
	list-style: none;
	margin: 0px;
	padding: 0px;
	
}

#shop-list ul li{
	list-style: none;
	border-top: 1px solid #ebebeb;
	clear: both;
    overflow: hidden;
}

#shop-list ul li a {
	display: block;
	width: 100%;
	color: #666666;
	padding: 8px;
	position: relative;
	text-decoration: none;
} */

#shop-list {
    clear: both;
    display: flex;
    flex-wrap: wrap;
    padding: 0.6em;
    justify-content: space-between;
    align-items: stretch;
	font-family: "游ゴシック Medium";
}

#shop-list ul {
    list-style: none;
    /* padding: 4px 0 4px 0; */
    width: 50%;
    text-align: center;
}

#shop-list ul li {
    list-style: none;
    clear: both;
    overflow: hidden;
    padding: 0.6em;
    height: 23em;
}

#shop-list ul li a {
    width: 100%;
    color: #666666;
    position: relative;
    text-decoration: none;
    height: 100%;
    flex-direction: column;
    display: flex;
    background-color: #fff;
    border-radius: 4px;
    /* align-items: stretch; */
    justify-content: center;
    box-shadow: 1px 1px 2px 1px rgb(113 107 107 / 30%);
}

/* #shop-list ul li a::before {
	background: #eee;
	border-radius: 50%;
	content: "";
	padding: 14px;
	position: absolute;
	right: 21px;
	top: 43px;
	width: 1px;
	z-index: -2;
}
 
#shop-list ul li a::after{
	border-right: 4px solid #9E9E9E;
	border-top: 4px solid #9E9E9E;
	border-radius: 2px;
	content: "";
	margin: 0 0 0 10px;
	height: 10px;
	right: 30px;
	position: absolute;
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	top: 50px;
	width: 10px;
	z-index: -1;
} */

.shopDeny{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.7);
	z-index: 3;
}

/* .shop-image {
	position: relative;
	width: 85px;
	height: 85px;
	vertical-align: middle;
	margin-right: 10px;
	margin-bottom: 5px;
	overflow: hidden;
	float: left;
}

.shop-image img {
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 85px;
} */

.shop-image {
    position: relative;
    width: 100%;
    /* height: 100px; */
    overflow: hidden;
    margin: auto;
}

.shop-image img {
    width: 100%;
    /* height: 100%; */
    vertical-align: bottom;
    user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -webkit-user-drag: none;
    -khtml-user-drag: none;
    touch-callout: none;
    -webkit-touch-callout: none;
    -moz-touch-callout: none;
    border: 0px;
    /* backface-visibility: hidden; */
    /* -webkit-backface-visibility: hidden; */
    /* image-rendering: pixelated; */
}

.shopDeny{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.7);
	z-index: 3;
}

/* .shop-contents {
	min-height: 60px;
	color: #666666;
	font-size: 12px;
	padding: 0;
	padding-left: 100px;
	padding-right: 35px;
	border: none;
} */

/* .shop-name{
	color: #020202;
	font-size: 15px;
	font-weight: bold;
	padding-bottom: 2px;
}

.description{
	color: #555555;
	font-size: 13px;
} */

/* .shop-image {
    position: relative;
    width: 100%;
    height: 100px;
    overflow: hidden;
}

.shop-image img {
    width: 100%;
    height: 100px;
} */

.shop-contents {
    min-height: 60px;
    color: #666666;
    font-size: 12px;
    border: none;
    padding: 4 2 0 2;
}

.shop-name {
    color: #111820;
    font-size: 16px;
    font-weight: bold;
    padding-bottom: 4px;
}

.description {
    color: #111820;
    font-size: 13px;
    text-align: justify;
    padding: 5px 10px;
}

/*
.price{
	position: absolute;
	bottom: 15px;
	background-color: #FFE5E5;
	color: #FF6699;
	font-size: 15px;
	padding: 1px 10px 1px 10px;
	border-radius: 30px;
}
*/

.price {
    /* background-color: #5ecb71; */
    color: #FFFFFF;
    font-weight: bold;
    font-size: 17px;
    padding: 1em 0 1em 0;
    border-radius: 4px;
    margin: 0 0.2em;
    background-image: url(/images/smart/button/button-shoplist.png);
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: center;
}

.buy{
	/*background-color: #FF6699;*/
	width: 85px;
	color: #332b2b;
	font-size: 15px;
	text-align: center;
	margin-right: 25px;
	padding: 1px 0px 1px 0px;
	border-radius: 30px;
	float: left;
	background: url(/images/smart/navigation.png);
    border: 2px solid #fff;
}

/* .price{
	background-color:#ff9d96;
	color: #FFFFFF;
	font-weight: bold;
	font-size: 15px;
	margin-right: 25px;
	padding: 1px 10px 1px 10px;
	border-radius: 30px;
	float: right;
} */

/* RESULT */
#shop-result{
	background-image: url("/images/smart/background/background-shop.png");
	width: 100%;
	padding: 0px;
}

#shop-result-area{
	position: relative;
	width: 100%;
	height: 400px;
}

#shop-result-box{
	background-image: url(/images/smart/background/background-modal.png);
	background-repeat: repeat;
	position: absolute;
	top: -100px;
	left: 0;
	right: 0;
	bottom: 0;
	width: 90%;
	height: 300px;
	margin: auto;
	padding-left: 5px;
	border: 5px solid #FF6699;
	border-radius: 8px;
	opacity: 0;
	filter: alpha(opacity=0);
}

.shop-result-title{
	padding-bottom: 5px;
}

.shop-result-title img{
	width: 100%;
}

#shop-result-item{
	width: 135px;
	margin: 0 auto;
	padding-bottom: 5px;
}

#shop-result-item ul{
	width: 100%;
	margin: 0px;
	padding: 0px;
	list-style-type: none;
	clear: both;
}

#shop-result-item ul li{
	display: none;
}

#shop-result-item ul li p{
	position: relative;
	width: 125px;
	height: 125px;
	vertical-align: middle;
	margin: 0 auto;
	padding: 0px;
	box-shadow:3px 3px 3px rgba(0,0,0,0.4);
	overflow: hidden;
}

#shop-result-item ul li p img{
	position: absolute;
	top: 0;
	left: 0;
	margin: auto;
	width: 100%;
	border-radius: 8px;
}

#shop-item-name{
	text-align: center;
	padding: 10px 0px 10px;
}

#shop-result-box span{
	background-color: #FF6699;
	color: #FFFFFF;
	font-size: 15px;
	padding: 1px 10px 1px 10px;
	border-radius: 30px;
}



/**************************************************
**
**	PAYMENT
**
***************************************************/

#paymentDetailArea{
	position: relative;
	width: 100%;
	height: 100%;
	overflow: auto;
}

#paymentItem{
	text-align: center;
	margin: 0 auto;
}

#paymentItem img{
	width: 150px;
	margin: 0 auto;
}

#paymentPrice{
	background-color:#FF6699;
	width: 200px;
	height: 40px;
	line-height: 40px;
	color: #FFFFFF;
	text-align: center;
	font-size: 18px;
	margin: 0 auto;
	border-radius: 30px;
}



/**************************************************
**
**	GACHA
**
***************************************************/

/* GACHA INDX */
.gacha-list{
	position: relative;
	margin: 0px;
	padding: 0px;
	clear: both;
}

.gacha-list ul{
	width: 100%;
	margin: 0px;
	padding: 0px;
	list-style: none;
	text-align: center;
}

.gacha-list ul li{
	position: relative;
	width: 100%;
	margin: 0px;
	padding: 0px;
	list-style: none;
	display: inline;
}

.gachar-start{
	position: relative;
}

.gacha-list ul li img{
	width: 33%;
}

.gacha-stepup-message{
	position: absolute;
	bottom: 16px;
	right: 24px;
	width: 80%;
	height: 20px;
	line-height: 20px;
	background: rgba(200,200,200,0);
	color: #35CDFF;
	text-align: right;
	font-size: 120%;
	font-weight: bold;
	text-shadow: 1px 1px 0px #592000;
}

@-webkit-keyframes gacha-stepup-message-blink{
	from   {opacity:0.0;}
	20%,to {opacity:0.6;}
	40%,to {opacity:1.0;}
	70%,to {opacity:0.6;}
	99%,to {opacity:0.0;}
}
@-moz-keyframes gacha-stepup-message-blink{
	from   {opacity:0.0;}
	20%,to {opacity:0.6;}
	40%,to {opacity:1.0;}
	70%,to {opacity:0.6;}
	99%,to {opacity:0.0;}
}
@keyframes gacha-stepup-message-blink{
	from   {opacity:0.0;}
	20%,to {opacity:0.6;}
	40%,to {opacity:1.0;}
	70%,to {opacity:0.6;}
	99%,to {opacity:0.0;}
}

.gachar-limitted {
	background:black;
}

.gachar-limitted img{
	/*opacity:0.5;*/
}

.gachar-limitted-none {
    position: absolute;
    top: 0px;
    right: 0px;
    width: 100%;
    height: 100%;
	/*opacity:50%;*/
}

/* GACHA DETAIL */
#gacha-screen{
	background-color: #FFFFFF;
}

#gacha-area{
	position: relative;
	/*background-image: url("/images/smart/background/background-gacha.png");*/
	background-color: #FFFFFF;
	width: 100%;
	height: 100%;
	padding: 0px;
}

#gacha-background{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 0;
}

#gacha-background img{
	width: 100%;
	z-index: 1;
}

#gacha-frame{
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
}

#gacha-frame img{
	width: 100%;
}

#gacha-start-button{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: 350px;
	height: 350px;
	z-index: 3;
}

#gacha-start-button img{
	width: 100%;
}

#gacha-skip-button{
	/* background: rgba(0,0,0,0.6); */
    width: 18%;
    height: 28px;
    text-align: center;
    margin: 4px;
    /* border-radius: 20px; */
    font-size: 9px;
    position: absolute;
    right: 3px;
    top: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

#gacha-skip-button img{
    width: 100%;
}

#gacha-result-area{
	position: relative;
	width: 100%;
	height: 400px;
}

/* #gacha-result-box{
	background-image: url(/images/smart/background/background-modal.png);
	background-repeat: repeat;
	position: absolute;
	top: -100px;
	left: 0;
	right: 0;
	bottom: 0;
	width: 90%;
	height: 300px;
	margin: auto;
	padding-left: 5px;
	border: 5px solid #FF6699;
	border-radius: 8px;
	opacity: 0;
	filter: alpha(opacity=0);
	z-index: 100;
} */

#gacha-result-box {
    background-image: url(/images/smart/background/background-modal.png);
    background-repeat: repeat;
    position: absolute;
    top: -100px;
    left: 0;
    right: 0;
    bottom: 0;
    width: 90%;
    height: 300px;
    margin: auto;
    padding-left: 5px;
    /* border: 2px solid #716b6b; */
    border-radius: 8px;
    opacity: 0;
    filter: alpha(opacity=0);
    z-index: 100;
}

.gacha-result-title{
	padding-bottom: 10px;
}

.gacha-result-title img{
	width: 100%;
}

/* MULTI */
#gacha-result-item-multi{
	padding-right: 5px;
	padding-bottom: 10px;
}

#gacha-result-item-multi ul{
	width: 100%;
	margin: 0px;
	padding: 0px;
	list-style-type: none;
	clear: both;
}

#gacha-result-item-multi ul li{
	width: 20%;
	margin-bottom: 15px;
	display: none;
	float: left;
}

#gacha-result-item-multi ul li p{
	position: relative;
	width: 50px;
	height: 50px;
	vertical-align: middle;
	margin: 0 auto;
	padding: 0px;
	border-radius: 8px;
	box-shadow:3px 3px 3px rgba(0,0,0,0.4);
	overflow: hidden;
}

#gacha-result-item-multi ul li p img{
	position: absolute;
	top:0;
	left: 0;
	margin: auto;
	border-radius: 8px;
	width: 100%;
}

#gacha-result-item-multi ul li p span{
	background-color: #000000;
	display: block;
	position: absolute;
	right: 0;
	bottom: 0;
	width: 20px;
	height: 20px;
	font-size: 10px;
	color: #FFFFFF;
	text-align: center;
	border-radius: 50%;
	filter:alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
}


/* SINGLE */
#gacha-result-item-single{
	width: 135px;
	margin: 0 auto;
	padding-bottom: 25px;
}

#gacha-result-item-single ul{
	width: 100%;
	margin: 0px;
	padding: 0px;
	list-style-type: none;
	clear: both;
}

#gacha-result-item-single ul li{
	display: none;
}

#gacha-result-item-single ul li p{
	position: relative;
	width: 125px;
	height: 125px;
	vertical-align: middle;
	margin: 0 auto;
	padding: 0px;
	border-radius: 20px;
	/* box-shadow:3px 3px 3px rgba(0,0,0,0.4); */
	overflow: hidden;
}

#gacha-result-item-single ul li p img{
	position: absolute;
	top:0;
	left: 0;
	margin: auto;
	width: 100%;
	border-radius: 8px;
}

#gacha-result-item-single ul li p span{
	background-color: #000000;
	display: block;
	position: absolute;
	right: 0;
	bottom: 0;
	width: 40px;
	height: 40px;
	line-height: 40px;
	font-size: 12px;
	color: #FFFFFF;
	text-align: center;
	border-radius: 50%;
	filter:alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
}

/**************************************************
**
**	GACHA HISTORY
**
***************************************************/

.gacha_history {
	display: grid;
	/* flex-wrap: wrap; */
	width: 100%;
	text-align:center;
	justify-content: center;
	font-size:10px;
	grid-template-columns: 30% 7% 35% 25%;
    grid-template-rows: auto;
}

.gacha_history .history_title {
	background-color:#FFFFFF;
	border: 1px solid #000;
}

.gacha_history .history_item {
	background-color:#FFFFFF;
	border-left: 1px solid #000;
	border-right: 1px solid #000;
	border-bottom: 1px solid #000;
	display: flex;
    align-items: center;
	justify-content: center;
}

.gacha_history li span {
	padding: 3px;
	font-size: 10px;
}

/**************************************************
**
**	PRESENT
**
***************************************************/



/**************************************************
**
**	EVENT
**
***************************************************/

#event-ranking-button a{
	background-color: #716b6b;
	width: 270px;
	height: 50px;
	color: #FFFFFF;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	line-height: 50px;
	margin: 10px auto 15px auto;
	border-radius: 10px;
	display: block;
}



/**************************************************
**
**	MYPAGE
**
***************************************************/

#mypage{
	padding: 10px;
}

#user-image{
	width: 40%;
	float: left;
}

#user-image img{
	width: 100%;
	margin: 0 auto;
}

/*
#user-data{
	background-color: #FFFFFF;
	width: 55%;
	border: 1px solid #CCCCCC;
	border-radius: 5px;
	float: right;
}
*/

#user-data{
	background-color: #FFFFFF;
	width: 90%;
	margin: 0 auto;
	border: 1px solid #CCCCCC;
	border-radius: 5px;
	color:#111820;
}

#user-data-contents{
	padding: 10px;
}

.profile-line{
	margin-bottom: 5px;
	color: #111820;
}

.profile-line span{
	/* color: #0099FF; */
	font-weight: bold;
	color: #111820;
}

.profile-title{
	padding-top: 8px;
	padding-bottom: 12px;
}

.profile-title img{
	width: 100%;
}

/**************************************************
**
**	NEWS LIST
**
***************************************************/

#sideNewsArea{
	background-color: #FFFFFF;
}

#side-news-list {
	background: rgba(255, 255, 255, .3);
	width: 310px;
	margin: 0px auto 25px;
	padding: 10px;
	border-radius: 10px;
	box-shadow: 0 2px 6px rgba(0, 0, 0, .15);
}

#side-news-list p{
	list-style: none;
	color: #bdc1c4;
	margin-bottom: 5px;
	padding-bottom: 5px;
	border: 0px;
	clear: both;
}

#side-news-list p a {
	display: block;
	color: #bdc1c4;
	position: relative;
	text-decoration: none;
}






/**************************************************
**
**	NEWS LIST
**
***************************************************/

/* #news-list{
	background-color: #FFFFFF;
	border-top: 1px solid #CCCCCC;
	clear: both;
} */
#news-list {
    /* background-color: #FFFFFF; */
    border-top: 1px solid #CCCCCC;
    clear: both;
    padding-top: 10px;
}

#news-list ul{
	list-style: none;
	margin: 0px;
	padding: 0px;
}

/* #news-list ul li{
	list-style: none;
	border-bottom: 1px solid #CCCCCC;
	clear: both;
    overflow: hidden;
} */
#news-list ul li {
    list-style: none;
    /* border-bottom: 1px solid #CCCCCC; */
    clear: both;
    overflow: hidden;
}

/* #news-list ul li a {
	display: block;
	color: #333333;
	padding: 12px;
	position: relative;
	text-decoration: none;
	z-index: 3;
} */
#news-list ul li a {
    display: block;
    color: #111820;
    padding: 12px;
    position: relative;
    text-decoration: none;
    z-index: 3;
    border: solid 0.1em #b9bfc7;
    border-radius: 6px;
    margin: 4px 10px;
    box-shadow: 0.1em 0.1em 0.1em #b9bfc7;
	background-color: #ffffff;
	font-family: "游ゴシック Medium";
}

#news-list ul li a::before {
	background: #FFFFFF;
	border-radius: 50%;
	/* content: ""; */
	padding: 14px;
	position: absolute;
	right: 11px;
	top: 18px;
	width: 1px;
	z-index: 2;
}
 
#news-list ul li a::after{
	border-right: 4px solid #9E9E9E;
	border-top: 4px solid #9E9E9E;
	border-radius: 2px;
	/* content: ""; */
	margin: 0 0 0 10px;
	height: 10px;
	right: 20px;
	position: absolute;
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	top: 25px;
	width: 10px;
	z-index: 3;
}

.news-date{
	color: #ff9000;
}

#news{
	background-image: url("/images/smart/background/background-white.png");
	background-repeart: repeart;
	width: 90%;
	padding: 10px;
	margin: 15px auto 15px;
	border-radius: 10px;
}

#news-body{
	padding-bottom: 8px;
	color:#111820;
}

#news-body img{
	width: 100%;
}

#news-body div{
	padding: 10px;
}

#news-body p{
	padding: 10px;
}

#news-date{
	font-size: 11px;
	text-align: right;
	padding-top: 8px;
	border-top: 1px dotted #CCCCCC;
}


/**************************************************
**
**	INFORMATION
**
***************************************************/

#guide-area{
	/*
	background-image: url("/images/smart/background/background-white.png");
	background-repeart: repeart;
	width: 90%;
	padding: 10px;
	margin: 15px auto 15px;
	border-radius: 10px;
	*/
}

#guide-area img{
	width: 100%;
}

#help-list{

}

#help-list ul{
	list-style: none;
	margin: 0px;
	padding: 0px;
}

#help-list ul li{
	list-style: none;
	color: #666666;
	padding: 12px;
	/* border-bottom: 1px solid #CCCCCC; */
	clear: both;
	font-family: "游ゴシック Medium";
}

.help-title{
	/* background-color: #ff9d96; */
	background-color: #ff9000;
	color: #FFFFFF;
	font-weight: bold;
	margin-bottom: 10px;
	padding: 5px;
	border-radius: 10px;
}

.help-answer{
	background-color: #FFFFFF;
	padding: 5px;
	border: 1px solid #DDDDDD;
	border-radius: 10px;
	color: #111820;
}


/**************************************************
**
** 	FORM
**
***************************************************/

#form {
	background-color: #FFFFFF;
	width: 90%;
	padding: 20px 10px 20px 10px;
	margin: 15px auto 15px;
	border-radius: 10px;
}

#form ul{
	width: 100%;
	margin: 0px;
	padding: 0px;
	list-style-type: none;
	clear: both;
	font-family: "游ゴシック Medium";
}

#form ul li{
	margin-bottom: 12px;
	padding-bottom: 12px;
	border-bottom: 1px dotted #999999;
	list-style-type: none;
	clear: both;
	color: #111820;
}

#form ul li p{
	background-image: url("/images/icon/icon-heart.png");
	background-repeat: no-repeat;
	background-size: 30px 19px;
	color: #111820;
	font-weight: bold;
	padding-left: 32px;
	padding-bottom: 5px;
}

#form ul li p span{
	font-weight: normal;
}

#form label {
	color: #000000;
	font-weight: bold;
	margin-bottom: 3px;
}

.form-comment {
	text-align: right;
}

#text-length{
	color: #FF0000;
	font-weight: bold;
}

.month-day-select {
	float: left;
}

.month-day-select label {
	position: relative;
}

.month-day-select select{
	width: 80px;
	margin-right: 15px;
	padding: 5px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: 1px solid #B0B0B0;
	background: #eee;
	background: -webkit-linear-gradient(top, #FFFFFF 0%,#EEEEEE 100%);
	background: linear-gradient(to bottom, #FFFFFF 0%,#EEEEEE 100%);
}

.month-day-select label:after {
	display: block;
	content: " ";
	position: absolute;
	top: 0;
	right: 20px;
	bottom: 0;
	margin: auto;
	width: 20px;
	height: 20px;
	background: url(/images/selecter-arrow.png) 0 0 no-repeat;
	background-size: 20px;
	pointer-events: none;
}

.submit-area{
	text-align: center;
}

#edit-button{
	background-image: url(/images/smart/button/button-edit.png);
	background-repeat: no-repeat;
	background-size: contain;
	background-color: #FFFFFF;
	width: 250px;
	height: 60px;
	margin: 0px;
	padding: 0px;
	border: none;
    display: inline;
}

#update{

}

/* submit.submit-button{
	background-color: #FF3366;
    width: 50%;
    height: 60px;
    display: block;
    font-size: 120%;
	text-align: center;
	line-height: 60px;
    cursor: pointer;
    border: none;
	border-radius: 10px;
    color: #fff;
	margin: 15px auto;
    -webkit-transition: background-color 0.2s linear, color 0.2s linear, border-color 0.2s linear;
} */

submit.submit-button {
    background-color: #716b6b;
    width: 50%;
    height: 50px;
    display: block;
    font-size: 120%;
    text-align: center;
    line-height: 50px;
    cursor: pointer;
    border: none;
    border-radius: 10px;
    color: #fff;
    margin: 15px auto;
    -webkit-transition: background-color 0.2s linear, color 0.2s linear, border-color 0.2s linear;
}

/* #prizeButton {
    background-color: #9e9e9e;
    width: 120px;
    height: 30px;
    line-height: 30px;
    text-align: center;
    margin: 15px auto 15px;
    border-radius: 20px;
} */

#prizeButton {
    /* background: rgba(0,0,0,0.6); */
    width: 15%;
    height: 20px;
    text-align: center;
    margin: 4px;
    /* border-radius: 20px; */
    font-size: 9px;
    position: absolute;
    right: 18vw;
    top: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    /* border: solid 1px #FFF; */
}

#prizeButton a {
    color: #fff;
    display: block;
    font-weight: bolder;
	white-space: nowrap;
}

/* #historyButton {
    background-color: #9e9e9e;
    width: 120px;
    height: 30px;
    line-height: 30px;
    text-align: center;
    margin: 15px auto 15px;
    border-radius: 20px;
} */

#historyButton {
    /* background: rgba(0,0,0,0.6); */
    width: 15%;
    height: 20px;
    text-align: center;
    margin: 4px;
    /* border-radius: 20px; */
    font-size: 9px;
    position: absolute;
    right: 3px;
    top: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    /* border: solid 1px #FFF; */
}

#historyButton a {
    color: #fff;
    display: block;
    font-weight: bolder;
	white-space: nowrap;
}


/**************************************************
**
** 	SELECT
**
***************************************************/

#select {
	/* background-color: #FFFFFF; */
	width: 90%;
	padding: 5px;
	margin: 5px auto 5px;
	border-radius: 10px;
}

#select ul{
	width: 100%;
	margin: 0px;
	padding: 0px;
	list-style-type: none;
	clear: both;
}

#select ul li{
	margin-bottom: 12px;
	list-style-type: none;
	clear: both;
}

#select ul li p{
	background-image: url("/images/icon/icon-heart.png");
	background-repeat: no-repeat;
	background-size: 30px 19px;
	color: #111820;
	font-weight: bold;
	padding-left: 32px;
	padding-bottom: 5px;
}

#select ul li p span{
	font-weight: normal;
}



/**************************************************
**
**	INFO
**
***************************************************/

#informationFrame{
	height: 80px;
	padding: 10px;
	border: 1px solid #CCCCCC;
	overflow: auto;
}

#agreeArea{
	text-align: center;
	padding: 15px;
}

.informationModalFrame{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: 800px;
	height: 90%;
	background-color: rgba(255,255,255,0.9);
	border-radius: 10px;
}

.informationModalTitle{
	background-image: url(/images/smart/title/title-background.png);
	background-repeat: no-repeat;
	height: 45px;
	color: #FFFFFF;
	text-align: center;
	font-size: 16px;
	margin-bottom: 15px;
	-webkit-border-radius: 10px 10px 0px 0px / 10px 10px 0px 0px;
	-moz-border-radius: 10px 10px 0px 0px / 10px 10px 0px 0px;
	border-radius: 10px 10px 0px 0px / 10px 10px 0px 0px;
	overflow: hidden;
}

.informationModalTitle p{
	padding: 10px;
	font-family: "M PLUS Rounded 1c", "メイリオ Regular", "ヒラギノ角ゴシック", sans-serif;
}

.informationModalContents{
	height: 80%;
	color: #111820;
	padding: 10px;
	overflow: auto;
	font-family: "游ゴシック Medium";
}

.modalFrame{

}

.informationModalFrame .modalConfirmArea{
	width: 100%;
    text-align: center;
    position: absolute;
    bottom: 3%;
	color: #111820;
}

.informationModalFrame .modalConfirmArea span{
	padding: 0.4em 2em;
    display: inline-block;
    position: relative;
    line-height: normal;
    margin-right: 0.1em;
    cursor: pointer;
    vertical-align: middle;
    text-align: center;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
	overflow: visible;
    border-radius: 20px;
	border: 1px solid #c5c5c5;
    background: #f6f6f6;
    font-weight: normal;
}

/**************************************************
**
**	NEXT / PREVIOUS
**
***************************************************/

#next_previous{
	display: table;
	width: auto;
	text-align: center;
	margin: 20px auto;
	font-family: "游ゴシック Medium";
}

#next_previous a{
	color: #FFFFFF;
	/* color: #ABABAB; */
	font-size: 14px;
	margin-left: 3px;
	margin-right: 3px;
	display: block;
}

.prev_box {
	/* background-color: #FF85AD; */
	background: rgba(17,24,32,0.3);
	width: 28px;
	height: 28px;
	font-size: 14px;
	text-align: center;
	line-height: 28px;
	margin-right: 6px;
	display: block;
	float: left;
	/* border: 2px solid #FF85AD; */
	border-radius: 5px;
	color: #222;
}

.fa-angles-left:before{
	content: "\f100";
	line-height: 2;
}

.next_box {
	/* background-color: #FF85AD; */
	background-color: rgba(17,24,32,0.3);
	width: 28px;
	height: 28px;
	font-size: 14px;
	text-align: center;
	line-height: 28px;
	margin-right: 6px;
	display: block;
	float: left;
	/* border: 2px solid #FF85AD; */
	border-radius: 5px;
	color: #222;
}
.fa-angles-right::before{
	content: "\f100";
	line-height: 2;
}

.number_box {
	/* background-color: #FF85AD; */
	background-color: rgba(17,24,32,0.3);
	width: 28px;
	height: 28px;
	color: #FFFFFF;
	font-size: 14px;
	text-align: center;
	line-height: 28px;
	margin-right: 6px;
	display: block;
	float: left;
	/* border: 2px solid #FF85AD; */
	border-radius: 5px;
	color: #222;
}

.last_box {
	/* background-color: #FF85AD; */
	background-color: rgba(17,24,32,0.3);
	width: 50px;
	height: 28px;
	color: #FFFFFF;
	font-size: 14px;
	text-align: center;
	line-height: 28px;
	margin-right: 6px;
	display: block;
	float: left;
	/* border: 2px solid #FF85AD; */
	border-radius: 5px;
	color: #222;
}

#next_previous #current {
	background: #ABABAB;
	color: #FFFFFF;
	border: 2px solid #ABABAB;
}



/**************************************************
**
**	OPTION
**
***************************************************/

.option-list{
	background-color: #FFCC99;
	width: 90px;
	color: #FF6600;
	font-weight: bold;
	text-align: center;
	margin: 0 0 5px 10px;
	padding: 5px;
	float: left;
	border-radius: 13px;
	display: inline-block;
}

.option-list a{
	color: #FF6600;
	font-size: 12px;
	display: block;
}

.option-count{
	background-color: #FFCCCC;
	width: 90px;
	font-size: 12px;
	color: #FF3366;
	font-weight: bold;
	text-align: center;
	margin: 0 10px 5px;
	padding: 5px;
	float: right;
	border-radius: 13px;
	display: inline-block;
}

.option-select{
	width: 180px;
	margin: 0px 0px 5px 10px;
	float: left;
}

.option-select form{
	width: 180px;
	margin: none;
	padding: none;
	display: inline-block;
}

.option-select select{
	margin: none;
	float: left;
}

.option-select input[type="submit"]{
	background-image: url("");
	background-color #FFFFFF;
	width: 40px;
	height: 20px;
	color: #444444;
	font-size: 13px;
	font-weight: bold;
	text-align: center;
	margin: -5px 0px 0px 2px;
	padding: 0px;
	border: 1px solid #CCCCCC;
    display: inline;
	float: left;
}

.top-line{
	border-top: 1px solid #CCCCCC;
}

.top-line-gray{
	border-top: 1px solid #EEEEEE;
}



/**************************************************
**
**	CAMPAIGN
**
***************************************************/

#campaign{
	padding-bottom: 15px;
}

/* #campaign-body{
	margin-top: -5px;
} */

#campaign-body {
    margin-top: 10px;
}

#campaign-body img{
	width: 100%;
}

#campaign-body div{
	padding: 10px;
}

#campaign-body p{
	padding: 10px;
}



/**************************************************
**
**	STATUS CHECK
**
***************************************************/

#check-comment{
	background-color: #FFDDDD;
	color: #FF6699;
	margin-bottom: 8px;
	padding: 5px;
	border-radius: 10px;
}

#button-next{
	background-image: url(/images/smart/button/button-next.png);
	background-repeat: no-repeat;
	background-size: contain;
	bottom: 0;
	width: 250px;
	height: 64px;
	margin: 0px auto;
	padding: 0px;
	border: none;
    display: block;
}



/**************************************************
**
**	ERROR
**
***************************************************/

/* RESULT */
#error-result{
	background-image: url("/images/smart/background/background-error.png");
	width: 100%;
	padding: 0px;
}

#error-result-area{
	position: relative;
	width: 100%;
	height: 400px;
}

#error-result-box{
	background-image: url(/images/smart/background/background-modal.png);
	background-repeart: repeart;
	position: absolute;
	top: -100px;
	left: 0;
	right: 0;
	bottom: 0;
	width: 90%;
	height: 300px;
	margin: auto;
	padding-left: 5px;
	border: 5px solid #FF6699;
	border-radius: 8px;
	opacity: 0;
	filter: alpha(opacity=0);
}

.error-result-title{
	padding-bottom: 10px;
}

.error-result-title img{
	width: 100%;
}

.error-result-contents{
	text-align: center;
}

.error-result-contents img{
	margin: 0 auto;
}



/**************************************************
**
**	FONT STYLE
**
***************************************************/

.style-red{
	color: #FF0000;
}

.style-blue{
	color: #0099FF;
}

#ie-check{
	background-color: #FF6699;
	padding: 5px;
}

#ie-check a{
	color: #FFFFFF;
}


/***********************************
**
**	RADIO / SELECTER
**
***********************************/

/* SELECTOR */
.radioSelect input {
	display: none;
}
.radioSelect label{
	display: block;
	float: left;
	cursor: pointer;
	width: 60px;
	margin: 0;
	padding: 10px;
	background: #FFFFFF;
	color: #0079FF;
	font-size: 16px;
	text-align: center;
	line-height: 1;
	transition: .2s;
	border: 1px solid #0079FF;
}
.radioSelect label:first-of-type{
	border-radius: 3px 0 0 3px;
}
.radioSelect label:last-of-type{
	border-radius: 0 3px 3px 0;
}
.radioSelect input[type="radio"]:checked + .switch-on {
	background-color: #0079FF;
	color: #FFFFFF;
}
.radioSelect input[type="radio"]:checked + .switch-off {
	background-color: #0079FF;
	color: #FFFFFF;
}


#thanks{
	width: 60%;
	margin: 10px auto 10px;
}

#thanks img{
	width: 100%;
}


#twitterArea{
	height: 400px;
	overflow: auto;
}

.lazy{
	content-visibility: auto; 
	contain-intrinsic-size: 860px; 
	background-image: url('/images/loading.gif');
	background-repeat: no-repeat;
	background-position: center center;
}

/*********************************************
** STILL MODAL
*********************************************/

.stillModalFrame{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: 95%;
	height: 85%;
	background-color: rgba(255,255,255,0.9);
	border-radius: 10px;
}

.stillModalTitle{
	background-image: url(/images/smart/title/title-background.png);
	background-repeat: no-repeat;
	height: 45px;
	color: #FFFFFF;
	text-align: center;
	font-size: 16px;
	/* margin-bottom: 15px; */
	-webkit-border-radius: 10px 10px 0px 0px / 10px 10px 0px 0px;
	-moz-border-radius: 10px 10px 0px 0px / 10px 10px 0px 0px;
	border-radius: 10px 10px 0px 0px / 10px 10px 0px 0px;
	overflow: hidden;
}

.stillModalTitle p{
	padding: 10px;
}

.stillModalContents{
	height: 80%;
    color: #333333;
    padding: 0 10px;
    overflow: auto;
}

.stillModalFrame .modalConfirmArea{
	width: 100%;
	text-align: center;
	position: absolute;
    bottom: 2%;
	font-size: 1.3em;
}

.stillModalFrame .modalConfirmArea span{
	padding: 0.4em 1em;
    display: inline-block;
    position: relative;
    line-height: normal;
    margin-right: 0.1em;
    cursor: pointer;
    vertical-align: middle;
    text-align: center;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
	overflow: visible;
    border-radius: 20px;
	border: 1px solid #c5c5c5;
    background: #f6f6f6;
    font-weight: normal;
}

#still-list{
	min-height: 500px;
	height: auto !important;
	height: 500px;
}

.still-list{
	position: relative;
	margin: 0px;
	/* padding: 10px 8px 10px 8px; */
	clear: both;
	width: 100%;
    height: 100%;
	display: flex;
    align-items: center;
}

.still-list ul{
	width: 100%;
    height: 75%;
    margin: 0px;
    padding: 0px;
    list-style: none;
    flex-wrap: wrap;
    display: flex;
    align-items: center;
    justify-content: space-around;
}

.still-list ul li{
	width: 30%;
	text-align: center;
	list-style: none;
	padding-bottom: 10px;
	float: left;
	display: block;
	padding: 0.3em;
	margin-bottom: 2vw
}

.still-list ul li p{
	background-color: #FFFFFF;
	width: 85%;
	vertical-align: middle;
	margin: 0 auto;
	padding: 3px;
	border: 1px solid #BBBBBB;
	border-radius: 5px;
	box-shadow:3px 3px 3px rgba(0,0,0,0.4);
}

.still-list ul li p a{
	position: relative;
	display: block;
	/* height: 25vw; */
	height: calc(800px / 5);
	overflow: hidden;
}

.still-list ul li p a img{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	border-radius: 8px;
	width: 100%;
}

.still-list ul li p a span{
	background-color: #000000;
	display: block;
	position: absolute;
	bottom: 0;
	width: 100%;
	font-size: 10px;
	color: #FFFFFF;
	text-align: center;
	filter:alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
}

.still-list-box{
	width: 90%;
	margin: 0 auto;
}

.still-list .clear{
	clear: both;
	display: none;
}

#stillDetail{
	width: 100%;
	/*
	height: 100%;
	overflow: hidden;
	*/
}

.still-list ul li .change-button {
    background-color: #9e9e9e;
    width: 80%;
    height: 25px;
    margin: 2vw auto;
    border-radius: 20px;
    font-size: 11px;
    display: flex;
    justify-content: center;
    align-items: center;
    border: solid 1px #FFFFFF;
    color: #FFF;
}

#albumDetail img{
	width: 100%;
	z-index: 30;
}

.still-random-check{
	position: absolute;
    bottom: 10%;
    left: 32%;
    right: 32%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.3em;
}

.still-random-check label{
	position: relative;
	top: 1px;
	margin-left: 3px;
	white-space: nowrap;
}