
a.js__popup {
	cursor: pointer;
}

/* カラーピッカーの枠線 */
.sp-alpha-inner, .sp-initial,
.sp-color, .sp-hue, .sp-clear {
	border:solid 1px #a9b2b1;
}
.sp-container input {
	margin:0;
	padding:3px;
}
.sp-input-container {
	margin:0 0 10px;
}
.sp-button-container.sp-cf {
	float:none;
	display:block;
	clear:both;
	text-align:center;
	overflow:hidden;
}
.sp-container button.sp-palette-toggle:active,
.sp-container button.sp-palette-toggle:focus,
.sp-container button.sp-palette-toggle:hover,
.sp-container button.sp-palette-toggle {
	padding:5px 3px;
	color:inherit;
	margin:5px 0;
	border:solid 1px #a9b2b1;
	border-radius:3px;
	background:#fff;
	box-shadow:none;
	-webkit-user-select:none;
	-moz-user-select:none;
	-ms-user-select:none;
	text-shadow:none;
}
.sp-button-container.sp-cf button,
.sp-button-container.sp-cf a {
	display:inline-block;
	vertical-align:top;
	line-height:12px;
	font-size:12px;
	width:45%;
	padding:5px 3px;
	color:#fff;
	border:none;
	border-radius:3px;
	background:#aab3b3;
	-webkit-user-select:none;
	-moz-user-select:none;
	-ms-user-select:none;
	text-shadow:none;
}
.sp-button-container.sp-cf a.sp-cancel {
	float:left;
	color:#fff!important;
}
.sp-button-container.sp-cf button {
	float:right;
	background:#78CFC7;
}

/* カラーピッカー ena201802 */
.sp-replacer {
	background:#fff;
	border:1px solid #a9b2b1;
	color:inherit;
	line-height:30px;
	padding:2px 3px;
}
.sp-dd { display:none; }
.sp-preview {
	margin:0;
	width:20px;
	border:1px solid #656565;
}
.sp-container {
	background:#fff;
	border:2px solid #a9b2b1;
	border-radius:6px;
}
.sp-picker-container {
	border:none;
}
.sp-replacer:hover,
.sp-replacer.sp-active {
	border:1px solid #656565;
}
.texed-header .sp-replacer {
	vertical-align:top;
	float:right;
}
.sp-palette .sp-thumb-el {
	border:solid 1px #a9b2b1;
	margin:5px 5px 0 0;
	width:18px;
	height:18px;
}
.sp-palette .sp-thumb-el:last-child {
	margin:5px 0 0 0;
}
.sp-palette .sp-thumb-el:hover,
.sp-palette .sp-thumb-el.sp-thumb-active {
	border-color:#565656;
}

/* テキストエディタのカラーピッカー ochiai201802 */
.texed-colorbox .sp-palette-container {
	float:none;
	border-right:none;
}
.texed-colorbox .sp-palette-container .sp-palette-button-container {
	float:none;
	text-align:right;
}
.texed-colorbox .sp-picker-container {
	width:100%;
	box-sizing:border-box;
}
.texed-colorbox .sp-picker-container .sp-input-container {
	margin:0;
}
.texed-header .sp-replacer:hover,
.texed-header .sp-replacer:active,
.texed-header .sp-replacer:focus,
.texed-header .sp-replacer.sp-active {
	border-color:#a9b2b1;
	background:#f5f5f5;
}

/* テキストエディタ */
.texed-header {
	margin:10px 0 0 0;
	/* ochiai201802 */
	overflow-x:auto;
	overflow:visible;
	white-space:nowrap;
}
.texed-header button {
	background:#fff;
	border:1px solid #a9b2b1;
	padding:0 3px;
	margin:0 5px 3px 0;
	line-height:28px;
	height:28px;
	min-width:28px;
	overflow:visible;
	color:inherit;
	font:inherit;
	-webkit-user-select:none;
	-moz-user-select:none;
	-ms-user-select:none;
}
.texed-header button:hover,
.texed-header button:active,
.texed-header button:focus {
	background:#f5f5f5;
}
@media screen and (max-width:600px) {
	.texed-header button {
		height:30px;
		width:12.5%;
		min-width:36px;
		margin:0 0 5px;
		border-left:none;
	}
	.texed-header button.texed-btn:first-of-type,
	.texed-header .texed-colorpicker ul li button {
		border:1px solid #a9b2b1;
	}
}/* / ena201802  */

/* ochiai201802 */
.switch_small_wrap.texed_form {
	padding-top:7px;
}
.texed-header .btn_white {
	padding:0 5px;
}
.texed-header .texed-colorpicker {
	display:block;
	position:relative;
}
.texed-header .texed-colorpicker ul {
	display:inline-block;
	position:absolute;
	top:0;
	left:0;
	z-index:2;
}
.texed-header .texed-colorpicker ul li button {
	margin:0;
	padding-left:5px;
	min-width:85px;
	text-align:left;
	border-top:none;
}
.texed-header .texed-colorpicker ul li:first-child button {
	border:1px solid #a9b2b1;
}
.texed-header .texed-colorpicker ul li:first-child button::after {
	content:"\f0dd";
	font-family:FontAwesome;
	float:right;
	padding-right:3px;
	font-size:15px;
	line-height:10px;
}
.texed-header .js__texed-btn--picker-input {
	float:right;
	height:28px;
	width:100px;
	margin:0 0 0 5px;
}
@media screen and (max-width:600px) {
	.texed-header .sp-replacer {
		padding:3px;
	}
	.texed-header .js__texed-btn--picker-input {
		height:30px;
	}
}
.js__texed--footer .right {
	font-size: 70%;
	color: #A9B2B1;
	letter-spacing: 0.01em;
}

/* マイキャラ：並べ替え */

/* 並べ替えリスト */
ul.edit_order_list {
	padding:0 8px 0 0;
}
ul.edit_order_list li {
	display:block;
	overflow:hidden;
	position:relative;
	margin:10px 0 0 0;
}
ul.edit_order_list.chara_box li {
	border:none;
}
ul.edit_order_list li .order_item,
ul.edit_order_list li dl {
	padding:8px;
	width:85%;
	width:calc(100% - 70px);
	float:left;
}
ul.edit_order_list li .order_item h5 {
	padding:5px 0;
}
ul.edit_order_list li dl dt {
	padding:0;
}
ul.edit_order_list .avatar {
	line-height:0;
}
ul.edit_order_list li span.order {
	color:#C9D2D1;
	display:block;
	width:40px;
	height:16px;
	line-height:16px;
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	margin:auto;
	text-align:center;
}
ul.edit_order_list li > div {
	position:relative;
	display:inline-block;
	float:right;
	width:80%;
	width:calc(100% - 55px);
	background:#fff;
	border:1px solid #A9B2B1;
	-moz-border-radius:8px;
	-webkit-border-radius:8px;
	border-radius:8px;
}
ul.edit_order_list li.active > div{
	background:#f5f5f5;
}
ul.edit_order_list li > div > p {
	min-height:45px;
	padding:8px;
	margin:0;
	display:inline-block;
	float:left;
	width:72%;
	width:calc(100% - 66px);
}
ul.edit_order_list li > div p.ellipsis {
	min-height:10px;
}
ul.edit_order_list li span.arrow {
	display:block;
	width:50px;
	height:88px;
	position:relative;
	float:right;
	text-align:center;
	color:#C9D2D1;
	cursor:pointer;
}
ul.edit_order_list li span.arrow i {
	display:block;
	height:24px;
	line-height:24px;
	font-size:24px;
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	right:0;
	margin:auto;
}
ul.edit_order_list ul.arrow_steps {
	display:block;
	overflow:hidden;
	width:20px;
	height:52px;
	position:absolute;
	top:0;
	bottom:0;
	right:8px;
	margin:auto;
	text-align:center;
}
ul.edit_order_list ul.arrow_steps li {
	margin:0 0 10px;
	height:20px;
	width:20px;
	line-height:20px;
	font-size:18px;
	color:#fff;
	background:#78CFC7;
	-moz-border-radius:3px;
	-webkit-border-radius:3px;
	border-radius:3px;
	cursor:pointer;
}
ul.edit_order_list ul.arrow_steps li:only-child {
	margin:15px 0 0 0;
}

/*デザイン用画像並べ替え ena171130*/
ul.edit_order_list.image_order li > div {
	height:120px;
}
ul.edit_order_list li span.arrow {
	height:120px;
}
ul.edit_order_list.image_order li .image {
	width:100px;
	height:100px;
	float:left;
	padding:8px 0 8px 8px;
	text-align:center;
}
ul.edit_order_list.image_order li .image img {
	max-width:100%;
	max-height:100%;
}
ul.edit_order_list.image_order li p.title {
	width:60%;
	width:calc(100% - 180px);
}

@media only screen and (max-width:340px) {
	ul.edit_order_list li > div {
		width:calc(100% - 45px);
	}
	ul.edit_order_list.image_order li div p.title {
		padding-right:0;
		padding-left:5px;
		width:calc(100% - 165px);
	}
}

/* 小説：表紙一覧 */
ul.select_cover {
	overflow:hidden;
	line-height:0;
	text-align:center;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
}
ul.select_cover li {
	flex-grow:1;
	position:relative;
	display:inline-block;
	width:30%;
	z-index:3;
	margin:5px;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-ms-box-sizing:border-box;
	box-sizing:border-box;
}
ul.select_cover li img {
	width:100%;
}
ul.select_cover label {
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	right:0;
	margin:auto;
	z-index:3;
}
ul.select_cover input[type=radio]{
	display:none;
}
ul.select_cover input[type=radio]:checked ~ label {
	background:rgba(0, 0, 0, 0.4);
}
ul.select_cover input[type=radio]:checked ~ label::before {
	display:block;
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	right:0;
	margin:auto;
	height:45px;
	line-height:45px;
	font-size:45px;
	font-family:FontAwesome;
	content:"\f00c";
	color:#fff;
	z-index:5;
}

/* 表紙選択スライダー */
.cover_slider {
	position:relative;
	width:84%;
	width:calc(100% - 60px);
	outline:none;
	margin:15px auto;
}
.slick-slide {
	margin:0;
	outline:none;
}
.slick-prev,
.slick-next {
	width:30px;
	position:absolute;
	top:0;
	bottom:0;
	margin:auto;
	padding:0;
	color:transparent;
	border:none;
	outline:none;
	background:transparent;
	text-align:center;
}
.slick-prev:before,
.slick-next:before {
	display:block;
	width:30px;
	height:30px;
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	right:0;
	margin:auto;
	font-size:30px;
	color:#CCD2D2;
	font-family:FontAwesome;
	text-align:center;
}
.slick-prev {
	left:-30px;
}
.slick-prev:before {
	content:'\f053';
}
.slick-next{
	right:-30px;
}
.slick-next:before{
	content:'\f054';
}


/* テーマ色味選択 */
ul.select_scheme {
	overflow:hidden;
	line-height:0;
	text-align:center;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
}
ul.select_scheme > li {
	flex-grow:1;
	position:relative;
	display:inline-block;
	width:45%;
	z-index:3;
	margin:5px;
	border:1px solid #A9B2B1;
	-moz-border-radius:8px;
	-webkit-border-radius:8px;
	border-radius:8px;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-ms-box-sizing:border-box;
	box-sizing:border-box;
}
ul.select_scheme label {
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	right:0;
	margin:auto;
	z-index:3;
	-moz-border-radius:7px;
	-webkit-border-radius:7px;
	border-radius:7px;
}
ul.select_scheme input[type=radio]{
	display:none;
}
ul.select_scheme input[type=radio]:checked ~ label {
	background:rgba(0, 0, 0, 0.4);
}
ul.select_scheme input[type=radio]:checked ~ label::before {
	display:block;
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	right:0;
	margin:auto;
	height:45px;
	line-height:45px;
	font-size:45px;
	font-family:FontAwesome;
	content:"\f00c";
	color:#fff;
	z-index:5;
}
ul.select_scheme h5 {
	line-height:14px;
	font-size:14px;
	margin:10px 0;
	padding:5px;
	text-align:left;
}
ul.select_scheme ul.colors {
	overflow:hidden;
	padding:10px 0 ;
	text-align:center;
}
ul.select_scheme ul.colors li {
	line-height:0;
	display:inline-block;
	width:30px;
	height:30px;
	background:#000;
	-moz-border-radius:30px;
	-webkit-border-radius:30px;
	border-radius:30px;
}

/* テーマヘッダー画像 */
ul.theme_head_list {
	padding:0 8px;
}
ul.theme_head_list > li {
	overflow:hidden;
	padding:8px;
	margin:10px 0;
	border:1px solid #A9B2B1;
	-moz-border-radius:8px;
	-webkit-border-radius:8px;
	border-radius:8px;
}
ul.theme_head_list .image {
	margin:0 10px 0 0;
	display:inline-block;
	float:left;
	position:relative;
	width:120px;
}
ul.theme_head_list .image > div {
	position:relative;
	width:100%;
	height:0;
	overflow:hidden;
	padding-top:100%;
}
ul.theme_head_list img {
	position:absolute;
	top:0;
	left:0;
	bottom:0;
	right:0;
	margin:auto;
	height:100%;
	width:100%;
	object-fit:cover;
}
ul.theme_head_list h5 {
	padding:0;
	display:inline-block;
	width:60%;
	width:calc(100% - 130px);
	float:left;
	overflow:hidden;
	line-height:normal;
}

/* テーマ検索 */
ul.theme_list {
	padding: 0 8px;
}
ul.theme_list > li {
	padding:15px 0;
	border-bottom:1px solid #A9B2B1;
}
ul.theme_list img {
	width:120px;
	float:left;
	margin:0 10px 10px 0;
}
ul.theme_list h5 {
	padding:0;
}
ul.theme_list h5,
ul.theme_list p {
	display:inline-block;
	width:60%;
	width:calc(100% - 130px);
	float:left;
	overflow:hidden;
	line-height:normal;
	color: #55605f;
}
ul.theme_list p {
	font-size: 75%;
	word-break: break-word;
}
ul.theme_list div {
	margin-bottom: 15px;
}
ul.theme_list a div i {
	margin-right: 5px;
}
ul.theme_list button.btn.btn_green,
ul.theme_list a.btn.btn_green {
	margin-bottom: 0;
	height:40px;
	line-height:40px;
	max-width: 200px;
}

/* 開閉するテーマ検索条件 */
.toggle span.arrow {
	color:#CCD2D2;
	color: #dadede;
	float:right;
}
.theme_search .toggle {
	padding:15px 10px;
	color:#8D9391;
	transition:all 0.2s ease;
}
.theme_search .toggle.active {
	transition:all 0.2s ease;
}
.theme_search .toggle > i {
	color:#FFE651;
	margin:0 8px 0 0;
}
.theme_search .toggle.active span.arrow i {
	-moz-transform:translate(0, 50%);
	-ms-transform:translate(0, 50%);
	-webkit-transform:translate(0, 50%);
	transform:translate(0, 50%);
	-moz-transform:rotate(-180deg);
	-ms-transform:rotate(-180deg);
	-webkit-transform:rotate(-180deg);
	transform:rotate(-180deg);
}
.theme_search form {
	margin:10px 0;
}
.theme_search label {
	display:inline-block;
	width:48%;
	margin:5px 0;
	line-height:24px;
}
.theme_search input[type=checkbox]{
	margin:0 8px 0 0;
}
.theme_search .toggle_child {
	background:#F2F2F2;
	padding:8px;
}

/* 開閉する（追加情報など） */
#main form h3.toggle {
	margin:0;
}
.toggle_child {
	list-style-type:none;
	display:none;
	overflow:hidden;
}
.toggle_more_info {
	background:#f5f5f5;
	border-bottom:1px solid #78CFC7;
	list-style-type:none;
	display:none;
	padding:5px 10px;
	margin:0;
	letter-spacing: 0.04em;
	line-height: 1.6em;
	overflow:hidden;
}

/* 開閉する検索条件 */
.toggle_options .toggle {
	padding:15px 10px;
	margin:5px 0 0;
	color:#8D9391;
	border-bottom:1px solid #a9b2b1;
	transition:all 0.2s ease;
}
.toggle_options .toggle.active {
	border-bottom:1px solid #efe6d9;
	transition:all 0.2s ease;
}
.toggle_options .toggle > i {
	color:#FFE651;
	margin:0 8px 0 0;
}
.toggle_options .toggle.active span.arrow i {
	-moz-transform:translate(0, 50%);
	-ms-transform:translate(0, 50%);
	-webkit-transform:translate(0, 50%);
	transform:translate(0, 50%);
	-moz-transform:rotate(-180deg);
	-ms-transform:rotate(-180deg);
	-webkit-transform:rotate(-180deg);
	transform:rotate(-180deg);
}
.toggle_options dd {
	padding:5px 8px;
}
.toggle_options label {
	display:inline-block;
	width:48%;
	margin:5px 0;
	line-height:24px;
}
.toggle_options input[type=checkbox]{
	margin:0 8px 0 0;
}

/* 開閉する、背景が変わるチェックリスト */
.toggle_checklist .toggle{
	padding:15px 10px;
	margin:0;
	border-bottom:1px solid #a9b2b1;
}
.toggle_checklist ul li {
	position:relative;
	border-bottom:1px solid #a9b2b1;
}
.toggle_checklist label {
	display:block;
	width:80%;
	width:calc(100% - 50px);
	padding:15px 30px 15px 45px;
	margin:0;
	line-height:130%;
/* 影響範囲が大きいかもしれないため一時的にコメントアウトで対応
	white-space:nowrap;
	overflow:hidden;
	text-overflow:ellipsis;
*/
}
.toggle_checklist input[type=checkbox]{
	position:absolute;
	top:0;
	bottom:0;
	left:15px;
	margin:auto;
}
.toggle_checklist input[type=checkbox]:checked + label {
	background:#FFFBE8;
}
.toggle_checklist ul li.half {
	background:#fff;
	display:inline-block;
	float:left;
	width:50%;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-ms-box-sizing:border-box;
	box-sizing:border-box;
}
.toggle_checklist ul li.half label{
	width:100%;
	padding:15px 0 15px 45px;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-ms-box-sizing:border-box;
	box-sizing:border-box;
}
.toggle_checklist ul li.half:nth-child(even){
	border-left:1px solid #a9b2b1;
}


/* 開閉するメッセージ */
.toggle_more .message {
	padding:0 5px 0 0;
	display:block;
	white-space:nowrap;
	overflow:hidden;
	text-overflow:ellipsis;
}
.toggle_more.active .message {
	white-space:normal;
	text-overflow:initial;
}
.toggle_more.active .clamp {
	display:inline !important;
	-webkit-line-clamp:none;
	max-height:auto;
}
.toggle_more .show,
.toggle_more .hide {
	text-align:right;
	color:#78CFC7;
	margin:0;
}
.toggle_more .hide {
	display:none;
}
.toggle_more.active .show {
	display:none;
}
.toggle_more.active .hide {
	display:block;
}


/* アクセス解析 */
.today_ribbon{
	position:absolute;
	top:-7px;
	left:8px;
	display:block;
}
.today_ribbon:after{
	position:absolute;
	content:'';
	display:block;
	width:0;
	height:0;
	border-bottom:10px solid transparent;
	border-left:20px solid #78cfc7;
	border-right:20px solid #78cfc7;
}
.ribbon{
	position:relative;
	display:inline-block;
	text-align:center;
	color:#fff;
	background:#78cfc7;
	font-size:12px;
	line-height:1;
	width:40px;
	height:30px;
	line-height:30px;
	padding:0 ;
	border-top-left-radius:8px;
	text-transform:uppercase;
	display:block;
}
.ribbon:before,
.ribbon:after{
	position:absolute;
	content:'';
	display:block;
}
.ribbon:before {
	background:#6ec5d5;
	height:7px;
	width:6px;
	right:-6px;
	top:0;
}
.ribbon:after {
	background:#599993;
	height:7px;
	width:8px;
	border-radius:8px 8px 0 0;
	right:-8px;
	top:0;
}
.today_ribbon .year {
	font-size:11px;
	padding:10px 0 4px;
}


.access_box{
	position:relative;
	padding:0 15px 0 40px;
	margin:15px auto;
	color:#8E8F91;
	border:1px solid #a9b2b1;
	border-radius:8px;
}
.access_period {
	position:relative;
	margin:15px auto;
	color:#8E8F91;
	border:1px solid #a9b2b1;
	border-radius:8px;
}
.access_period > h5 {
	padding:10px 15px;
	color:#8E8F91;
	background:#F2F2F2;
	border-radius:7px 7px 0 0;
}
.access_period > h5.ellipsis {
	color:#78CFC7;
}
.access_period dl.row {
	padding:10px 0;
	letter-spacing: 0.01em;
}
.access_period dl.row dt {
	display:inline-block;
	vertical-align:middle;
	width:30%;
	padding:0 15px;
}
.access_period dl.row dd {
	display:inline-block;
	vertical-align:middle;
	width:60%;
	padding:0;
}
.access_period dl.row dd small {
	display:inline-block;
}
@media only screen and (max-width:360px) {
	.access_period {
		padding:0 0 5px;
	}
	.access_period dl.row {
		padding:5px 5px 0 5px;
	}
	.access_period dl.row dt {
		display:inline-block;
		width:28%;
		padding:0 5px;
	}
	.access_period dl.row dt h5 {
		font-size:12px;
	}
}

/* 機能別解析 */
.access_period.feature > h5 {
	margin:0 0 10px;
}
.access_period.feature h6 {
	text-align:left;
	padding:0 15px;
}
.access_period.feature dl.row {
	padding:0;
	margin:0 0 10px;
}
.access_period.feature dl.row dd {
	width:50%;
}
.access_period.feature .inner {
	padding:0 0 0 25px;
}
.access_period.feature .inner i {
	color:#cbd2d2;
}




.access_count {
	clear:both;
	display:flex;
	text-align:center;
}
.access_count dl {
	width:45%;
	flex-grow:1;
	padding:10px 0;
}
.access_count dd {
	padding:0;
}
.access_count p {
	font-size:120%;
}
.access_period i,
.access_count i {
	color:#FFE651;
}


/* アクセス集計 */
.access_total{
	margin:15px auto;
	color:#8E8F91;
	border:1px solid #a9b2b1;
	border-radius:8px;
}
.access_total .arrow{
	float:right;
	color:#ccd2d2;
}
.access_total h5 {
	color:#8E8F91;
	padding:15px 10px;
}
.access_total ul {
	padding:0 10px;
	text-align:center;
	border-bottom:1px solid #a9b2b1;
}
.access_total ul li {
	display:inline-block;
	float:left;
	width:40%;
	padding:10px 0;
}
.access_total ul li:first-child {
	width:35px;
}
.access_total ul li:nth-child(2) {
	width:49%;
}
.access_total ul.heading {
	color:#8E8F91;
	background:#F2F2F2;
}
.access_total ul:last-of-type ,
.access_total ul.heading {
	border:none;
}
@media only screen and (max-width:360px) {
	.access_total ul li:nth-child(2) {
		width:47%;
	}
}
.image_border {
	display:inline-block;
	padding:4px;
	border:1px solid #a9b2b1;
	line-height:0;
	font-size:0;
}
.image_border img {
	max-width:180px;
	max-height:180px;
}
img.image100 {
	width:100px;
	height:100px;
}
img.image180 {
	max-width:180px;
	max-height:180px;
}
img.mainimage_thumb {
	max-width:100%;
	max-height:150px;
}
@media only screen and (max-width:360px) {
	img.mainimage_thumb {
		max-height:100px;
	}
}

/* ユーザーアイコン */
img.avatar20{
	width:20px;
	height:20px;
	-moz-border-radius:10px;
	-webkit-border-radius:10px;
	border-radius:10px;
}
img.avatar70{
	width:70px;
	height:70px;
	-moz-border-radius:35px;
	-webkit-border-radius:35px;
	border-radius:35px;
}
img.avatar100{
	width:100px;
	height:100px;
	-moz-border-radius:50px;
	-webkit-border-radius:50px;
	border-radius:50px;
}

/* アバター付きユーザー名 */
.username a {
	overflow:hidden;
	display:block;
}
.username p {
	width:80%;
	display:inline-block;
	line-height:20px;
	margin:0;
}
.username img {
	float:left;
	margin:0 8px 0 0;
}
.username_right {
	text-align:right;
}
.username_right img {
	float:right;
	margin:0 0 0 5px;
}


/* なりチャ */
.narikiri_box {
	margin:10px 8px 15px;
	border:1px solid #a9b2b1;
	-moz-border-radius:8px;
	-webkit-border-radius:8px;
	border-radius:8px;
}
.narikiri_box dt {
	padding:8px;
	background:#F2F2F2;
	-moz-border-radius:7px 7px 0 0;
	-webkit-border-radius:7px 7px 0 0;
	border-radius:7px 7px 0 0;
}
.narikiri_box dt h4 {
	background:none;
	padding:0;
	margin:0 0 5px;
	color:#656767;
}
.narikiri_box dt a {
	display:block;
}
.narikiri_box dt a h4 {
	color:#78CFC7;
}
.narikiri_box dd {
	padding:8px 8px 5px;
}
.narikiri_box dd p.clamp {
	margin:0 0 10px;
}
.narikiri_box dl .labels {
	text-align:right;
}
.narikiri_box dl .labels > div {
	display:inline-block;
	margin:0 0 5px;
}
.narikiri_box dt .labels > div {
	margin:5px 0 0;
}
.narikiri_box .toggle_more  p.clamp {
	margin:0 0 5px;
}
.narikiri_box .btn_twins {
	margin:5px 0 0 0;
}

/* なりチャ キャラ */
ul.chara_box {
	padding:0 8px;
	overflow:hidden;
	text-align:center;
}
ul.chara_box li {
	text-align:left;
	margin:10px 0 15px;
	border:1px solid #a9b2b1;
	-moz-border-radius:8px;
	-webkit-border-radius:8px;
	border-radius:8px;
}
ul.chara_box li dt {
	padding:10px 10px 5px;
	overflow:hidden;
}
ul.chara_box li dd {
	padding:10px;
	border-top:1px solid #a9b2b1;
}
ul.chara_box li .avatar,
ul.chara_box li .title {
	position:relative;
	display:inline-block;
	float:left;
	min-height:70px;
}
ul.chara_box li dt .avatar a {
	display:block;
}
ul.chara_box li dt .avatar span.edit {
	display:inline-block;
	height:30px;
	width:30px;
	line-height:32px;
	text-align:center;
	position:absolute;
	bottom:-5px;
	right:-5px;
	background:#78CFC7;
	-moz-border-radius:25px;
	-webkit-border-radius:25px;
	border-radius:25px;
}
ul.chara_box li dt .avatar span.edit i {
	color:#fff;
	font-size:20px;
}
ul.chara_box li .title {
	position:relative;
	width:70%;
	width:calc(100% - 80px);
	margin:0 0 0 10px;
}
ul.chara_box li .title h5 {
	padding-top:0;
}
ul.chara_box li .title .labels {
	float:right;
	padding:7px 0;
	overflow:hidden;
}
ul.chara_box li dt .title p {
	margin:0;
	color:#56605F;
}
ul.chara_box li dt .title small {
	line-height:20px;
}
ul.chara_box li .title .bottom {
	position:absolute;
	bottom:0;
	right:0;
}

/* おことわり */
ul.chara_box li.gray_bg {
	background:#F2F2F2;
}
ul.chara_box li.gray_bg .avatar img{
	opacity:0.5;
	filter:alpha(opacity=50); /* For IE8 and earlier */
}

/* アイコン一覧用 */
ul.chara_box li.half {
	display:inline-block;
	width:48%;
	margin:0 0 10px;
}

ul.chara_box li.half:nth-child(even){
	float:right;
}

ul.chara_box li.half {
	float:left;
}
ul.chara_box li.half:nth-child(2n+1) {
	clear:both;
}
ul.chara_box li.half .title h5 {
	min-height:35px;
}
ul.chara_box li.half .title h5 a {
	color:#55605f;
}
ul.chara_box li.half .action_icon {
	bottom:0;
	margin-bottom:5px;
}
@media only screen and (max-width:360px) {
	ul.chara_box li.half {
		display:block;
		width:100%;
	}
	ul.chara_box li.half .title h5 {
		padding:5px 0;
	}
	ul.chara_box li.half:nth-child(odd),
	ul.chara_box li.half:nth-child(even){
		float:none;
	}
}

/* 読者一覧用 */
ul.chara_box.user_list li {
	padding:10px 10px 5px;
	overflow:hidden;
}
ul.chara_box.user_list li h5 {
	min-height:3.3em;
}
ul.chara_box.user_list li p.right {
	margin:0;
}

/* しおり用 */
.icons .page_name {
	max-width:220px;
	white-space:nowrap;
	overflow:hidden;
	text-overflow:ellipsis;
	text-align:right;
}

/* コメント */
.comment_box {
	margin:10px 0 15px;
	border:1px solid #a9b2b1;
	-moz-border-radius:8px;
	-webkit-border-radius:8px;
	border-radius:8px;
}
.comment_box .head {
	position:relative;
	background:#F2F2F2;
	padding:8px;
	overflow:hidden;
	-moz-border-radius:7px 7px 0 0;
	-webkit-border-radius:7px 7px 0 0;
	border-radius:7px 7px 0 0;
}
.comment_box .head p {
	margin:0;
}
.comment_box .head hr {
	margin:5px 0 10px;
}
.comment_box .head small.date {
	display:inline-block;
	vertical-align:bottom;
	height:25px;
	line-height:35px;
}
.comment_box .icons {
	display:inline-block;
	float:right;
	text-align:right;
}
.comment_box .icons span {
	display:inline-block;
	margin:0 0 0 5px;
}
.comment_box .icons .bottom {
	position:absolute;
	bottom:10px;
	right:10px;
}
.comment_box .message {
	margin:5px 10px;
}
.comment_box .toggle_more {
	padding:8px;
}
.comment_box .toggle_more p.message {
	padding:0;
	margin:5px 0;
}
.comment_box .head .username {
	margin:0 0 5px;
}
.comment_box p.ellipsis.indent {
	background:#fff;
	margin:2px 0 0 15px;
	text-indent:0;
	padding:1px 5px;
	color:#A9B2B1;
}

.block_user,
.block_user a {
	color:#A9B2B1;
}

/* キャラリスト */
ul.chara_list img.avatar70 {
	float:left;
	margin:0;
}
ul.chara_list li {
	overflow:hidden;
	padding:10px 10px 5px 10px;
	border-bottom:1px solid #A9B2B1;
}
ul.chara_list li > div {
	display:inline-block;
	float:left;
	margin:0 0 0 10px;
	width:72%;
	width:calc(100% - 80px);
}
ul.chara_list .title {
	min-height:2em;
}
ul.chara_list .title a {
	color:#55605f;
}
ul.chara_list .title h5 {
	padding:0 0 5px;
}
ul.chara_list p {
	margin:0;
}
ul.chara_list .username,
ul.check_image_list .username {
	margin:8px 0 0 0;
	float:right;
	display:inline-block;
	width:70%;
	width:calc(100% - 80px);
}
ul.chara_list .username_right,
ul.check_image_list .username_right {
	margin:8px 5px 0 0;
}
ul.chara_list .username p,
ul.check_image_list .username p {
	width:60%;
	width:calc(100% - 35px);
}
ul.check_image_list.reader_list .username {
	width: auto;
	font-size: 80%;
}
ul.check_image_list.reader_list .username p{
	width: auto;
	max-width: 220px;
}
ul.chara_list.link_list li {
	padding:10px;
	position:relative;
}
ul.chara_list.link_list li > div {
	width:65%;
	width:calc(100% - 105px);
	float:left;
}
ul.chara_list.link_list .username p {
	width:60%;
	width:calc(100% - 35px);
}
ul.chara_list.link_list span.arrow a{
	text-align:center;
	display:inline-block;
	float:right;
	width:35px;
	height:90px;
	position:absolute;
	top:0;
	right:0;
	margin:auto;
	font-size:16px;
	line-height:16px;
	color:#CCD2D2;
}
ul.chara_list.link_list span.arrow i{
	line-height:90px;
}

ul.chara_list.link_list .buttons {
	width:100%;
	margin:15px 0 0;
	padding:0;
	text-align:center;
	float:none;
	clear:both;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-ms-box-sizing:border-box;
	box-sizing:border-box;
}
ul.chara_list.link_list .buttons .btn {
	float:none;
	margin:0 auto;
}

/* 便利機能_ナビゲーション */
.theme_navi_type h5 {
	margin:0 10px;
}
.theme_navi_type ul.chara_box li {
	text-align:center;
	margin-top:0;
}
.theme_navi_type ul.chara_box img {
	margin:10px 3px 5px;
}

/* 公式ニュース、お問い合わせ */
ul.box_list {
	padding:0 8px;
	overflow:hidden;
	text-align:center;
}
ul.box_list li {
	text-align:left;
	margin:10px 0 15px;
	padding:0 5px;
	border:1px solid #a9b2b1;
	-moz-border-radius:8px;
	-webkit-border-radius:8px;
	border-radius:8px;
}
ul.box_list h5 a {
	color:#55605f;
}
ul.box_list .labels {
	text-align:right;
	margin-bottom:5px;
}
ul.box_list .labels .label {
	margin-right:5px;
}
ul.box_list li.gray_bg {
	background:#F2F2F2;
}
.news_title {
	background:#F2F2F2;
	padding:5px 8px;
	margin-bottom:5px;
}
.inquiry > div {
	clear:both;
	margin:15px 0;
	overflow:hidden;
}
.inquiry .message_wrap {
	overflow:hidden;
	position:relative;
}
.inquiry .details {
	text-align:right;
	margin:5px 0 0;
	padding:0 5px;
	display:inline-block;
	width:91%;
	width:calc(100% - 25px);
}
.chat_other .details {
	float:right;
}
.inquiry p.bubble {
	float:right;
	min-height:50px;
	position:relative;
	padding:5px;
	display:inline-block;
	vertical-align:bottom;
	width:93%;
	-moz-border-radius:5px;
	-webkit-border-radius:5px;
	border-radius:5px;
}
.chat_self p.bubble {
	float:left;
	margin:0 15px 0 0;
	background:#BAECE9;
	-moz-border-radius-bottomright:0;
	-webkit-border-bottom-right-radius:0;
	border-bottom-right-radius:0;
}
.chat_other p {
	margin:0;
}
.chat_other p.bubble {
	margin:0 0 0 15px;
	background:#F2F2F2;
	-moz-border-radius-bottomleft:0;
	-webkit-border-bottom-left-radius:0;
	border-bottom-left-radius:0;
}
.chat_self p.bubble:after {
	position:absolute;
	right:-10px;
	bottom:0;
	border:solid transparent;
	content:" ";
	height:0;
	width:0;
	pointer-events:none;
	border-color: transparent transparent #BAECE9;; transparent;
	border-width:10px;
}
.chat_other p.bubble:after {
	position:absolute;
	left:-10px;
	bottom:0;
	border:solid transparent;
	content:" ";
	height:0;
	width:0;
	pointer-events:none;
	border-color: transparent transparent #F2F2F2; transparent;
	border-width:10px;
}

/* 検索結果 */
.search_site .comment_box .head h4 {
	color:#78CFC7;
}
.search_site .comment_box .head h4 {
	background:none;
	padding:0;
	color:#656767;
}
.search_site .comment_box p {
	margin:0;
}
.search_site .comment_box p.clamp {
	padding:0;
}
.search_site .comment_box .toggle_more {
	padding:8px 8px 0;
}
.search_site .comment_box .keyword_list {
	width:auto;
	text-align:left;
	padding:10px 6px 5px;
}
.search_site .comment_box .keyword_list li {
	margin:3px;
}
.search_site .comment_box .keyword_list li a {
	padding:2px 15px 2px 5px;
	font-size:90%;
}
/* ボタン付きフォーム */
.form-button input,
.form-button button {
	display:inline-block;
	float:left;
	margin:0;
	padding:0;
	height:30px;
	line-height:30px;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-ms-box-sizing:border-box;
	box-sizing:border-box;
}
.form-button input {
	display:block;
	overflow:hidden;
	width:85%;
	margin:0 auto 10px;
	padding:0 5px;
}
.form-button button {
	width:15%;
	text-align:center;
	font-size:100%;
	background:#fff;
	color:#56605F;
	border:1px solid #a9b2b1;
	border-left:none;
	outline:none;
	-webkit-appearance:none;
	-moz-appearance:none;
	-o-appearance:none;
	-webkit-border-top-right-radius:5px;
	-webkit-border-bottom-right-radius:5px;
	-moz-border-radius:0 5px 5px 0;
	border-radius:0 5px 5px 0;
}

/* SNS連携 */
ul.sns_list li a i {
	font-size:160%;
	margin:0 10px 0 0;
	display:inline-block;
	vertical-align:middle;
	color:#ccd2d2;
}
ul.sns_list li a span.twitter i {
	color:#57aced;
}
ul.sns_list li a span.google_plus i {
	color:#dd4c37;
}
ul.sns_list li.no-caret a {
	padding:13px 10px;
}
ul.sns_list li.no-caret a:after {
	content:none;
}
ul.sns_list img.icon_img {
	width:24px;
	display:inline-block;
	vertical-align:middle;
	margin-right:8px;
}
ul.sns_list .sns_id {
	color:#78CFC7;
	padding-top:3px;
	width:50%;
	float:right;
	text-align:right;
	white-space:nowrap;
	overflow:hidden;
	text-overflow:ellipsis;
}
.display_links i.twitter_icon,
.display_links i.facebook_icon,
.switch_title i.twitter_icon,
.switch_title i.facebook_icon{
	height:20px;
	width:15px;
	margin:0px 15px 0 1px;
	vertical-align:middle;
}
img.line_icon {
	width:20px;
	display:inline-block;
	vertical-align:middle;
	margin-right:13px;
	margin-bottom:3px;
}
i.twitter_icon {
	font-size:140%;
	color:#57aced;
}
i.facebook_icon {
	font-size:140%;
	color:#3c5a96;
}

/* ログイン用SNSボタン */
ul.btn_trio {
	width:100%;
	height:36px;
	margin:10px 0 0 0;
	padding:0;
	overflow:hidden;
	text-align:center;
/*	display:-webkit-box;
	display:-moz-box;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:flex;
	*/
	-webkit-flex-direction:row;
	flex-direction:row;
	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	line-height:0;
}
ul.btn_trio li {
	display:inline-block;
	width:28%;
	padding:0;
	margin:0 5px;
	-webkit-flex-grow:1;
	flex-grow:1;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-ms-box-sizing:border-box;
	box-sizing:border-box;
}
ul.btn_trio li:first-child {
	margin-left:0;
}
ul.btn_trio li:last-child {
	margin-right:0;
}
ul.btn_trio li a.btn {
	width:100%;
	display:block;
	height:35px;
	line-height:35px;
	margin:0;
	padding:0;
	-webkit-box-shadow:none;
	box-shadow:none;
	text-shadow:none;
	border:none;
	overflow:hidden;
}
ul.btn_trio li a.btn img {
	display:inline-block;
	max-height:23px;
	vertical-align:middle;
}
ul.btn_trio li a.btn i {
	font-size:130%;
}
ul.btn_trio .twitter {
	background:#57aced;
}
ul.btn_trio .google {
	background:#dd4c37;
}
ul.btn_trio .line {
	background:#00b900;
}
/* 貼り付けメモ風角丸 */
.note {
	position:relative;
	z-index:1;
	width:100%;
	min-height:50px;
	color:#8E8F91;
	background:#FFF;
	border:2px solid #78CFC7;
	-webkit-border-radius:5px;
	-moz-border-radius:5px;
	border-radius:5px;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-ms-box-sizing:border-box;
	box-sizing:border-box;
}
.note:after {
	content:"";
	position:absolute;
	z-index:2;
	bottom:-2px;
	right:-2px;
	border-style:solid;
	background:#78CFC7; /* For Opera when also applying a border-radius */
	display:block; width:0; /* Only for Firefox 3.0 damage limitation */
	border-width:13px; /* Triggers a 1px 'step' along the diagonal in Safari 5 (and Chrome 10) */
	border-color:transparent #FFF #FFF transparent; /* Avoids the 1px 'step' in webkit. Background colour shows through */
	-webkit-border-top-left-radius:5px;
	-moz-border-radius:5px 0 0 0;
	border-radius:5px 0 0 0;
}
.note a {
	color:#8E8F91;
}
.note > a,
.note > div {
	padding:30px 0;
}

@media only screen and (max-width:400px) {
	.note:after {
		border-width:8px;
	}
	.note > a,
	.note > div {
		padding:20px 0;
	}
}




/* ニュース */
#news > a {
	display:block;
	padding:12px 8px;
}
#news ul {
	padding: 0 8px;/* 180529 */
}
#news li {
	overflow:hidden;
	border-bottom:1px solid #A9B2B1;
}
#news li a {
	display:block;
	padding:5px 8px;
}
#news li h5 {
	margin:5px 0;
}

/* マイページ情報 */
#mypage_site {
	overflow:hidden;
	position:relative;
	padding:10px;
	color:#8E8F91;
	border-bottom:1px solid #A9B2B1;
}
#mypage_site .site_thumb {
	display:inline-block;
	width:30%;
	float:left;
}
#mypage_site .site_info {
	display:inline-block;
	width:70%;
	float:left;
	overflow:hidden;
}
#mypage_site .site_info h5 {
	padding:0 0 0 10px;
	line-height:120%;
	color:#8E8F91;
}
#mypage_site span {
	position:absolute;
	right:10px;
	bottom:10px;
}

/* 機能一覧 */
ul.features {
	width:96%;
	height:auto;
	margin:10px auto;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-ms-box-sizing:border-box;
	box-sizing:border-box;
	overflow:hidden;
	text-align:center;
}
ul.features li {
	display:inline-block;
	float:left;
	margin:5px 0;
	font-size:100%;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-ms-box-sizing:border-box;
	box-sizing:border-box;
}
ul.features li.write {
	width:100%;
	font-size:160%;
}
ul.features li.pickup {
	width:48%;
	font-size:120%;
}
ul.features li.half {
	width:48%;
}
ul.features li.half a {
	font-size:110%;
	padding:20px 0;
}
ul.features li.half a i {
	margin:0 0 10px 0;
	font-size:30px;
}
ul.features li.half_h a {
	font-size:110%;
	padding:10px;
	text-align:left;
	line-height:30px;
}
ul.features li.half_h a i {
	margin:0 10px 0 0;
	font-size:25px;
	vertical-align:middle;
}
ul.features li:nth-child(2n) {
	float:right;
	letter-spacing:-0.08em;
}
ul.features li i {
	color:#FFE651;
	font-size:40px;
	line-height:40px;
	margin:0 0 10px 0;
}
ul.features li i.fa-mobile {
	font-size: 50px;
}

@media only screen and (max-width:400px) {
	ul.features li.note div {
		font-size:13px;
	}
}

ul.my_rolechat_links {
	width:98%;
	margin:10px auto;
	padding:0;
	display:-webkit-box;
	display:-moz-box;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:flex;
	-webkit-flex-direction:row;
	flex-direction:row;
	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-ms-box-sizing:border-box;
	box-sizing:border-box;
	overflow:hidden;
	text-align:center;
}
ul.my_rolechat_links li {
	position:relative;
	z-index:1;
	display:inline-block;
	-webkit-flex-grow:1;
	flex-grow:1;
	width:45%;
	float:none;
	text-align:center;
	margin:5px;
	padding:10px 0;
	font-size:100%;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-ms-box-sizing:border-box;
	box-sizing:border-box;
}
ul.my_rolechat_links li i {
	color:#FFE651;
	font-size:40px;
	margin:0 0 10px 0;
}
ul.my_rolechat_links li a {
	display:block;
	padding:0;
	margin:0;
}

/* ヘルプ用 */
.help_content h3 {
	position:relative;
}
a.help_anchor {
	display:block;
	position:absolute;
	top:-65px;
}
.help_content .help_thumb {
	display:block;
	margin:0 auto 10px;
}
.help_content p.bg_white {
	background:#fff;
	padding:10px 15px;
}
.help_content p.bg_gray {
	background:#f5f5f5;
	padding:10px 15px;
}
.help_content p span.plus_icon {
	display:block;
	margin-bottom:5px;
}

.styled_text {
	margin-bottom:15px;
	line-height:160%;
	letter-spacing:0.05em;
	word-break: break-word;
}
.styled_text p:last-child {
	margin-bottom:0;
}
ul.faq_list {
	padding:10px 0;
	text-align:center;
}
ul.faq_list li {
	position:relative;
	margin:40px 25px 0;
	padding:10px;
	border:1px solid #78cfc7;
	-moz-border-radius:8px;
	-webkit-border-radius:8px;
	border-radius:8px;
	background:#fff;
	line-height:1.5em;
}
ul.faq_list li:before {
	display:block;
	position:absolute;
	top:-28px;
	bottom:0;
	left:0;
	right:0;
	height:18px;
	line-height:16px;
	font-size:18px;
	color:#78cfc7;
	font-family:FontAwesome;
	content:"\f063";
}
ul.faq_list li:first-child {
	margin-top:0;
}
ul.faq_list li:first-child:before {
	content:none;
}
.help_content div img {
	border:1px solid #a9b2b1;
	margin-top:10px;
	box-sizing:border-box;
}
.help_content div .plus_icon img {
	margin-top:0;
	border:none;
}
ul.list_faq_search {
	margin-bottom:15px;
}
ul.list_faq_search li {
	padding:10px;
	margin:10px 8px 0;
	position:relative;
	border:1px solid #a9b2b1;
}
ul.list_faq_search li:hover {
	background:#f5f5f5;
}
ul.list_faq_search li h4 {
	background:transparent;
	padding:0 0 5px;
	color:#78CFC7;
}
ul.list_faq_search li a:hover h4,
ul.list_faq_search li a:active h4,
ul.list_faq_search li a:focus h4 {
	color:#78CFC7;
	text-decoration:none;
}
ul.list_faq_search li p {
	color:#A9B2B1;
	margin:0;
	padding-left:10px;
	font-size:88%;
}
ul.list_faq_search li a:hover p,
ul.list_faq_search li a:active p,
ul.list_faq_search li a:focus p {
	text-decoration:none;
}
/*リリース前ヘルプ用スタイル 新しいヘルプの仕組みが本番に反映されるまでは残してください */
.toggle_faq .toggle {
	padding:15px 10px;
	margin:10px 8px 0;
	color:#8D9391;
	transition:all 0.2s ease;
	position:relative;
}
.toggle_faq .toggle.active {
	transition:all 0.2s ease;
}
.toggle_faq .toggle.active_help {
	font-weight:bold;
	background:#FFFBE8;
	border-width:2px;
}
.toggle_faq .toggle > i {
	color:#FFE651;
}
.toggle_faq .toggle span.toggle_link {
	display:inline-block;
	width:95%;
}
.toggle_faq .toggle span.arrow {
	color:#CCD2D2;
	float:none;
	position:absolute;
	right:10px;
	top:50%;
	margin-top:-9px;
}
.toggle_faq .toggle.active span.arrow i {
	-moz-transform:translate(0, 50%);
	-ms-transform:translate(0, 50%);
	-webkit-transform:translate(0, 50%);
	transform:translate(0, 50%);
	-moz-transform:rotate(-180deg);
	-ms-transform:rotate(-180deg);
	-webkit-transform:rotate(-180deg);
	transform:rotate(-180deg);
}
dl.toggle_faq {
	margin-bottom:15px;
}
.toggle_faq dt {
	margin:10px 5px 0;
	padding:8px;
	border:1px solid #a9b2b1;
}
.toggle_faq dd {
	padding:15px 10px;
	margin:0 8px;
	background:#f5f5f5;
	border:1px solid #a9b2b1;
	border-top:1px solid #f5f5f5;
}
.toggle_faq label {
	display:inline-block;
	width:48%;
	margin:5px 0;
	line-height:24px;
}

/* 日記機能 */
ul.check_list .diary_icons {
	margin:0 10px 5px 0;
}
ul.check_list .diary_icons .icons {
	margin:0;
}
ul.check_list .diary_icons .icons a.diary_comment {
	line-height: 24px;
}
ul.check_list .diary_icons .icons small {
	margin-top:11px;
	margin-right:3px;
}
ul.check_list .diary_icons .icons .label_closed {
	margin-top:4px;
}

/* ギャラリー機能 */
ul.select_image_list {
	line-height:0;
	font-size:0;
	overflow:hidden;
	margin:15px 0;
	padding: 0 8px;
}
ul.select_image_list li {
	display:inline-block;
	float:left;
	width:33.33%;
}
ul.select_image_list li .image {
	width:100%;
	height:0;
	padding:0 0 100%;
	position:relative;
	overflow:hidden;
	border:1px solid #e0e0e0;
	border-left:none;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}
ul.select_image_list li:nth-child(3n+1) .image {
	border-left:1px solid #e0e0e0;
}
ul.select_image_list li .image a {
	display:block;
}
ul.select_image_list li .image .item_counter {
	display:block;
	position:absolute;
	z-index:3;
	bottom:10px;
	right:0;
	height:25px;
	line-height:25px;
	padding:0 5px;
	font-size:14px;
	text-align:right;
	color:#949494;
	background:rgba(255, 255, 255, 0.9);
	border-radius:3px 0 0 3px;
}
ul.select_image_list li .image .item_counter span {
	display:block;
	position:relative;
}
ul.select_image_list li .image .item_counter span::before {
	display:inline-block;
	vertical-align:middle;
	content:"";
	width:14px;
	height:14px;
	background:url(../img/gal_icon01.svg) center center no-repeat;
	background-size:14px;
	margin:0 5px 0 0;
}
ul.select_image_list li img {
	max-width:100%;
	max-height:100%;
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	right:0;
	margin:auto;
	z-index:1;
}
ul.select_image_list li img.label_img {
	width:45%;
	position:absolute;
	top:0;
	left:0;
	z-index:3;
	margin:0;
}
ul.select_image_list li label {
	position:absolute;
	top:0;
	left:0;
	z-index:2;
	display:inline-block;
	background:rgba(86, 96, 95, 0.4);
	padding:5px;
}
ul.select_image_list li .edit {
	line-height:normal;
	font-size:14px;
	display:block;
	clear:both;
	text-align:center;
	padding:5px 0 15px;
}
.gallery_image_border img {
	display:block;
	padding:4px;
	margin:15px auto;
	border:1px solid #a9b2b1;
	line-height:0;
	font-size:0;
	max-width:90%!important;
	max-height:400px!important;
}
/* コンテスト */
h3.bg_yellow {
	color:#4a4a4a;
}
h3.bg_yellow i.fa-trophy {
	font-size:20px;
}

.btn_edit {
	display:inline-block;
	padding:0 5px;
	min-width:4em;
}
@media only screen and (min-width:1000px) {
	.btn_edit:hover {
		text-decoration:underline;
	}
}

/* フォレスト＋ニュース */
ul.list_article {
	margin-bottom:10px;
}
ul.list_article li {
	position:relative;
	padding:8px 0 8px;
	overflow:hidden;
	border-bottom:1px solid #a9b2b1;
}
ul.list_article li:first-child {
	padding-top:0;
}
ul.list_article li .img_cover {
	width:30%;
	float:left;
	line-height:0;
	padding-right:8px;
	max-height:80px;
	overflow:hidden;
}
ul.list_article li a {
	color:#55605f;
}
ul.list_article li p {
	padding:0;
	margin:0 auto 15px;
	display:-webkit-box;
	display:-moz-box;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:flex;
}
ul.list_article li .date {
	position:absolute;
	right:0;
	bottom:4px;
	font-size:11px;
	text-align:right;
	color:#A9B2B1;
}
.press .news_title {
	background:#fff;
	margin-bottom:0;
}
.press small.ellipsis a {
	color:#A9B2B1;
	letter-spacing:0.05em;
	margin-right:5px;
}
.press small.ellipsis a i {
	margin-left:3px;
}
.press .news_title a:hover,
.press .container a:hover {
	text-decoration:underline;
}
.press ul.sns_icons {
	text-align:right;
	margin:10px 0;
}
.press ul.sns_icons li {
	display:inline-block;
	width:28px;
	margin-right:5px;
}
.press ul.sns_icons li:last-child {
	margin-right:8px;
}
.press .container h2 {
	text-align:left;
	height:auto;
	line-height:3em;
	border-top:1px solid;
	border-color:#A9B2B1;
	margin:2em 0 1em;
	padding-left:5px;
}
.press .container h3 {
	background:none;
	border:none;
	color:#55605f;
	padding:0;
	margin:1em 0 0.5em;
}
.press .container h3:before {
	content:"";
	display:inline-block;
	width:16px;
	height:16px;
	vertical-align:middle;
	margin:0 4px 3px 0;
	background-image:url("https://plus.fm-p.jp/assets/img/plus_yellow.svg");
	background-size:100%;
	background-repeat:no-repeat;
}
.press h4 {
	background:none;
	padding:0;
	margin:1em 0 0.5em;
}
.press img {
	height:auto;
}
.press img.wp-smiley {
	width:13px;
	padding:0 2px 0 1px;
}
.press a img,
.press a img.aligncenter {
	display:block;
	margin:0 auto;
}
.press .container:last-child ul.list_normal li a {
	color:#8D9391;
}
.press .creator_intro {
	background:#f5f5f5;
	padding:15px;
	box-sizing:border-box;
}
.press .creator_intro img {
	width:90px;
	height:auto;
	float:left;
	margin:0 20px 10px 0;
	-moz-border-radius:5px;
	-webkit-border-radius:5px;
	border-radius:5px;
}
.press .creator_intro h4 {
	margin:0;
}
.press .creator_intro h4 a {
	color:#55605f;
}
.press .creator_intro .creator_intro_name {
	float:left;
	display:inline-block;
	width:calc(100% - 130px);
}
.creator_intro_text {
	padding-top:10px;
	clear:both;
}
.press .creator_intro .small {
	font-size:90%;
	color:#A9B2B1;
	margin:6px 0 0 0;
}
.press .entry_books:after {
	content:"";
	display:block;
	clear:both;
}
.press .entry_books .image_box_wrap .image_box:first-child {
	margin-left:0;
}
.press .entry_books .image_box_wrap .image_box:nth-child(2n+1) {
	clear:both;
	margin-left:0;
}
.press .entry_books .image_box {
	text-align:left;
	display:inline-block;
	vertical-align:top;
	width:45.3%;
	width:calc(50% - 15px);
	float:left;
	margin:4px;
	padding:4px;
}
.press .entry_books .image_box a {
	color:#8D9391;
	line-height:normal;
	font-size:90%;
}
.press .entry_books .image_box a img {
	display:inline-block;
	width:100%;
	height:auto;
	clear:left;
	border:1px solid #A9B2B1;
	padding:4px;
	position:relative;
	left:-4px;
	margin:0 0 5px;
}
.review {
	margin:10px 0;
}
.review_talk {
	clear:both;
	overflow:hidden;
}
.review_talk.right {
	float:none;
	text-align:left;
}
.review_talk_icon {
	width:60px;
	float:left;
	margin:0 10px 0 0;
}
.review_talk.right .review_talk_icon {
    float:right;
    margin:0 0 0 10px;
}
.review_talk img {
	width:100%;
	margin:0;
}
.review_talk_content {
	min-height:60px;
	width:80%;
	width:calc( 100% - 80px );
	padding:10px;
	margin:0;
	font-size:13px;
	line-height:140%;
	float:right;
	position:relative;
	background:#fff;
	border:1px solid #A9B2B1;
	-moz-border-radius:5px;
	-webkit-border-radius:5px;
	border-radius:5px;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-ms-box-sizing:border-box;
	box-sizing:border-box;
}
.review_talk.right .review_talk_content {
	float:left;
	margin:0;
}
.review_talk_content:after, .review_talk_content:before {
	content:" ";
	right:100%;
	top:35px;
	border:solid transparent;
	height:0;
	width:0;
	position:absolute;
	pointer-events:none;
}
.review_talk_content:after {
	border-color:rgba(255, 255, 255, 0);
	border-right-color:#fff;
	border-width:10px;
	margin-top:-10px;
}
.review_talk_content:before {
	border-color:rgba(0, 0, 0, 0);
	border-right-color:#A9B2B1;
	border-width:11px;
	margin-top:-11px;
}
.review_talk.right .review_talk_content:after,
.review_talk.right .review_talk_content:before {
	left:100%;
	top:35px;
	border:solid transparent;
	content:" ";
	height:0;
	width:0;
	position:absolute;
	pointer-events:none;
}
.review_talk.right .review_talk_content:after {
	border-color:rgba(255, 255, 255, 0);
	border-left-color:#fff;
	border-width:10px;
	margin-top:-10px;
}
.review_talk.right .review_talk_content:before {
	border-color:rgba(0, 0, 0, 0);
	border-left-color:#A9B2B1;
	border-width:11px;
	margin-top:-11px;
}

/* プレミアム会員 ochiai201803 */
.btn_premium {
	display:inline-block;
	position:relative;
	min-width:300px;
	min-height:40px;
	margin:10px auto;
	padding:10px 40px;
	line-height:20px;
	text-align:center;
	background:#FFE651;
	color:#55605f;
	font-size:110%;
	border:2px solid #A5AFAE;
	-moz-border-radius:8px;
	-webkit-border-radius:8px;
	border-radius:8px;
	-moz-box-shadow:	inset 2px 2px 0 #FFF;
	-webkit-box-shadow:inset 2px 2px 0 #FFF;
	box-shadow:		 inset 2px 2px 0 #FFF;
	-webkit-appearance:none;
	box-sizing:border-box;
}
.btn_premium:hover {
	background:#f3d72e;
	color:#55605f;
	filter:alpha(opacity=80); /* For IE8 and earlier */
}
.btn_premium:active {
	filter:alpha(opacity=80); /* For IE8 and earlier */
	-moz-box-shadow:inset 2px 2px 0 rgba(0, 0, 0, 0.3);
	-webkit-box-shadow:inset 2px 2px 0 rgba(0, 0, 0, 0.3);
	box-shadow:inset 2px 2px 0 rgba(0, 0, 0, 0.3);
}
.btn_premium img {
	position:absolute;
	top:0;
	bottom:0;
	left:14px;
	width:28px;
	margin:auto;
}
.btn_premium img:last-child {
	left:auto;
	right:14px;
	transform:rotate(180deg);
}
.btn_premium small {
	color:#ada46c;
}
ul.premium_list {
	margin:10px 0;
	padding:15px;
	background:#b8ebe6;
}
ul.premium_list li {
	padding:10px;
	margin-bottom:15px;
	background:#fff;
}
ul.premium_list li:after {
	content:"";
	display:block;
	clear:both;
}
ul.premium_list li:last-child {
	margin-bottom:0;
}
ul.premium_list li img {
	float:left;
	width:55px;
}
ul.premium_list li h5 {
	font-size:16px;
	font-weight:bold;
	line-height:1.5em;
	padding-bottom:10px;
	width:80%;
	float:right;
}
ul.premium_list li h5 .underline {
	font-size:18px;
}
ul.premium_list li p {
	color:#8D9391;
	width:80%;
	float:right;
}
ul.premium_list li .underline,
table.premium_table .underline {
	border-bottom:4px solid #FFE651;
}
table.premium_table {
	width:100%;
	border-collapse:collapse;
}
table.premium_table th,
table.premium_table td {
	padding:15px 10px;
}
table.premium_table thead th {
	background:#f5f5f5;
	text-align:center;
	border:0;
}
table.premium_table thead th:first-child {
	background:transparent;
}
table.premium_table thead th:last-child {
	background:#FFE651;
}
table.premium_table tbody th {
	background:#b8ebe6;
	text-align:center;
	width:30%;
	border-bottom:1px solid #fff;
}
table.premium_table tbody td {
	background:#fff;
	text-align:center;
	border:1px solid #ccd2d2;
	color:#8D9391;
	width:120px;
}
table.premium_table tbody td:last-child {
	font-weight:bold;
	color:#55605f;
}
table.premium_table tbody td strong {
	font-size:130%;
}
@media only screen and (max-width:340px) {
	table.premium_table {
		font-size:90%;
	}
	ul.premium_list li h5,
	ul.premium_list li p {
		width:75%;
	}
}

table.payment_info_table {
	border-collapse:collapse;
	margin:15px auto;
	border:1px solid #a9b2b1;
}
table.payment_info_table th,
table.payment_info_table td {
	padding:5px 10px;
	text-align:center;
	vertical-align:middle;
}
table.payment_info_table th {
	background:#b8ebe6;
	min-width:80px;
}
table.payment_info_table td {
	padding:5px 25px;
}
table.payment_info_table td .btn {
	height:35px;
	line-height:35px;
	font-size:95%;
	margin:10px auto 0;
}

.btn_block {
	display:inline-block;
	text-align:center;
	min-width:200px;
	border:2px solid #78CFC7;
	min-height:50px;
	border-radius:8px;
	padding:20px 10px;
	margin:10px auto;
	color:#56605F;
	line-height:1.5em;
	box-shadow:0 4px 0 rgba(0,0,0,0.2);
	box-sizing:border-box;
}
.btn_block:hover {
	color:#56605F;
	background:#f5f5f5;
}
.btn_block .green:hover {
	color:#78CFC7;
}
.btn_block i {
	font-size:25px;
	color:#FFE651;
	vertical-align:middle;
}
.btn_block strong {
	font-size:110%;
	font-weight:bold;
	line-height:2em;
	display:block;
}
ul.credit_select {
	text-align:center;
}
ul.credit_select li {
	width:46.5%;
	display:inline-block;
	margin-right:10px;
}

ul.credit_select li:nth-child(2n) {
	margin-right:0;
}
ul.credit_select .btn_block {
	width:100%;
	min-width:auto;
}
@media only screen and (max-width:340px) {
	ul.credit_select li {
		width:45%;
	}
}

#getTokenForm ul.option_list.option_date select {
	padding:5px 20px 5px 5px;
}
#getTokenForm ul.option_list.option_date input {
	margin:0 5px;
	height:30px;
}
#getTokenForm ul.option_list .flex > input,
#getTokenForm ul.option_list .flex > select {
	flex-grow:0;
	width:25%;
}

ul.list_iconset .labels .label {
	float: right;
	margin: 8px 5px 0;
}

/* CSSカルーセル */

.popup.popup_tutorial {
	background: transparent;
	overflow: visible;
	width: 100%;
	height: 100%;
	max-height: none;
	top: 20px;
	left: 0;
	right: 0;
	margin: 0 auto;
}
.popup.popup_tutorial .container {
	padding: 0;
}
.popup.popup_tutorial .popup_close {
	position: absolute;
	top: 9px;
	right: 2px;
	bottom: auto;
	z-index: 5;
}

.css-carousel-wrap{
	height: 400px;
	height: 80vh;
	position:relative;
	width:auto;
	margin:0 auto;
}
.carousel-item{
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	right:0;
	opacity:0;
	transition: all 0.5s ease-in-out;
}
.carousel-item > div {
	width: 260px;
	margin: auto;
	position: relative;
}
.carousel-item > div img {
	display: block;
	margin: auto;
}
.css-carousel-wrap .arrow{
	position:absolute;
	display:block;
	font-size: 14px;
	width: 40%;
	height: 25px;
	display: inline-block;
	text-align: center;
	bottom: 7px;
	line-height: 25px;
	color: #8D9391;
	border: 1px solid #A9B2B1;
	border-radius: 6px;
}
.css-carousel-wrap .arrow-prev:before,
.css-carousel-wrap .arrow-next:before {
	font-family: FontAwesome;
}
.css-carousel-wrap .arrow-next:before {
	content: '';
	right: 10px;
}
.css-carousel-wrap .arrow-prev:before {
  content: '';
	left: 10px;
}
.css-carousel-wrap .arrow-prev{
  left: 20px;
}
.css-carousel-wrap .arrow-next{
	right: 20px;
}
.css-carousel-wrap .light{
  color:white;
}
@media (max-width: 480px) {
	.css-carousel-wrap .arrow,
	.css-carousel-wrap .light .arrow {
		background-size: 10px;
		background-position: 10px 50%;
	}
}
@media (max-width: 330px) {
	.carousel-item > div {
		width: 75%;
	}
	.css-carousel-wrap .arrow {
		width: 35%;
	}
	.popup.popup_tutorial .popup_close {
		top: 8px;
		right: -2px;
	}
}

.popup_nobg .question_banner img{
	padding-top:30px;
	height:224px;
	width:269px;
}

/*Select every element*/
[id^="item"] {
	display: none;
}
.item-1 {
	z-index: 2;
	opacity: 1;
}
*:target ~ .item-1 {
opacity: 0;
}
#item-1:target ~ .item-1 {
opacity: 1;
}
#item-2:target ~ .item-2,
#item-3:target ~ .item-3,
#item-4:target ~ .item-4,
#item-5:target ~ .item-5 {
z-index: 3;
opacity: 1;
}
/* ochiai201805 */
.lobby h2 {
	height: auto;
	line-height: 33px;
	font-size:90%;
}
.lobby h2 .btn_register {
	border: 0;
	display: block;
	margin: 0 auto 10px;
	padding: 0;
	min-height: 30px;
	line-height: 30px;
	min-width: 145px;
	width: 145px;
	font-weight: normal;
	color: #b7a225;
	-moz-box-shadow: nones;
	-webkit-box-shadow: none;
	box-shadow: none;
}

.sitelock_alert {
	text-align: center;
	margin: 15px 8px;
	padding: 10px;
	background: #ffffff;
	font-size: 12px;
	border: 2px solid #fe9582;
	border-radius: 15px;
}
.sitelock_alert i {
	font-size: 30px;
	color: #fe9582;
}
.sitelock_alert p {
	margin-bottom: 15px;
}
.sitelock_alert a.btn {
	margin: 10px auto 0;
	font-size: 14px;
}

/* 新規登録誘導 */
#signup_pr {
	overflow: hidden;
	padding: 40px 0;
	margin-top: 20px;
	letter-spacing: 0.1em;
}
#signup_pr h3 {
	background: transparent;
	color: #56605F;
	border: none;
	font-size: 1.6em;
	font-weight: normal;
	text-align: center;
	margin: 0 auto 1.2em;
	letter-spacing: 0.1em;
}
#signup_pr h3:before,
#signup_pr h3:after {
	content: '';
	position: absolute;
	top: 50%;
	display: inline-block;
	width: 44px;
	height: 2px;
	background-color: #dbdbdb;
}
#signup_pr h3:before {
	left:0;
	-moz-transform: rotate(60deg);
	-webkit-transform: rotate(60deg);
	-ms-transform: rotate(60deg);
	transform: rotate(60deg);
}
#signup_pr h3:after {
	right: 0;
	-moz-transform: rotate(-60deg);
	-webkit-transform: rotate(-60deg);
	-ms-transform: rotate(-60deg);
	transform: rotate(-60deg);
}
#signup_pr h4 {
	background: transparent;
	text-align: center;
	border-bottom: 2px solid #78CFC7;
	margin: 0 10px 1.5em;
	padding: 0 0 10px;
}
ul.signup_pr_list {
	padding: 0 10px;
}
ul.signup_pr_list li {
	border-bottom: 1px solid #dbdbdb;
	padding: 15px 5px;
}
ul.signup_pr_list li:after {
	content: "";
	display: block;
	clear: both;
}
ul.signup_pr_list li h5 {
	font-size: 1.2em;
	padding: 0 0 10px;
}
ul.signup_pr_list li h5 i {
	color: #78CFC7;
	font-size: 20px;
	margin-right: 5px;
}
ul.signup_pr_list li h5 span {
	position: absolute;
	bottom: 5px;
}
ul.signup_pr_list li h5 span:before {
	content: "";
	display: inline-block;
	height: 35px;
	width: 35px;
	background-image: url(../img/portal/signup/pickup.png);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
}
ul.signup_pr_list li .btn {
	float: right;
	background: #78CFC7;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	box-shadow: none;
	border: none;
	margin: 10px auto 0;
}
#signup_overlay {
	display: none;
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	background: rgba(30, 40, 39, 0.65);
	text-align: center;
	z-index: 2;
}
#signup_overlay .btn_register {
	margin: 15px auto;
}
@media screen and (max-width:768px) {
	#signup_overlay .btn_register:hover {
		background: #FFE651;
	}
}
/* オーバーレイ広告 ochiai201803 */
.ad_overlay #footer {
	margin-top:40px;
	padding-bottom:100px;
}
.ad_overlay #geniee_overlay {
	background:#f5f5f5;
	z-index:900!important;
}
.comment_ad {
	margin: 10px 0 15px;
}
