@charset "utf-8";

html, body { width: 100%; margin: 0; padding: 0; height: 100%; }

html { font-size: 62.5%; }
body {
	font-family: "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	color: #333;
	text-align: left;
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	overflow-x: hidden;
}

header,
nav,
article,
aside,
section,
footer {
	display: block;
}

body,
h1,
h2,
h3,
h4,
h5,
div,
p {
	margin: 0;
	padding: 0;
	font-weight: normal;
}
h1,
h2,
h3,
h4,
h5 {
	font-size: 100%;
}

*, *::before, *::after { box-sizing: border-box; }

ul, ol { margin: 0; padding: 0; list-style: none; }
ol li { list-style: decimal-leading-zero; list-style-position: inside; }

span { display: inline-block; }

.br_t_ss	{ margin-top: 7px; }
.br_t_s		{ margin-top: 18px; }
.br_t		{ margin-top: 30px; }
.br_t_l		{ margin-top: 45px; }
.br_t_ll	{ margin-top: 60px; }
.br_t_xl	{ margin-top: 90px; }

.txt_l	{ text-align: left; }
.txt_c	{ text-align: center; }
.txt_r	{ text-align: right; }
/* PCのみセンタリング、mobileで左寄せの場合は .txt_cl を使用（イレギュラーで中央寄せした本文など ） */
/* 各style_×.cssに記載 */

.txt_th	{ text-decoration: line-through; }		/* 打消し線 */
.txt_em	{ font-weight: bold; }					/* 太字 */
.txt_u	{	/* 下線 */
	margin-bottom: 1em;
	border-bottom: 1px #333 solid;
	line-height: 1.6;
}

.txt_sml {	/* 小さめの文字 */
	font-size: 70% !important;
}

.mg_auto {	/* 左右中央に置きたいブロックに指定 */
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.mg_t_0 {
	margin-top: 0 !important;
}

.middle {
	vertical-align: middle;
}

a.btn,
a.btn_y,
a.btn_w{
	display: inline-block;
	padding: 10px 2em;
}

a.btn.soon,
a.btn_y.soon{	/* 待ち状態などでリンクしないボタン */
	padding: 10px 2em;
	display: inline-block;
	margin: 0 auto;
	color: #d6d6d6;
	background: #aaa;
	font-weight: bold;
}
a.btn.soon .fa,
a.btn_y.soon .fa{
	margin-left: 0.7em;
}

.txt_cre {	/* クレジット文字 */
	color: #666666;
	font-size: 11px;
	font-size: 1.1rem;
	line-height: 1.4;
	margin-top: 3px;
}

.txt_back_pink{
	display: inline-block;
	padding: 3px 8px;
	background: #a24081;
	color: #fff;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	margin-right: 0.3em;
	line-height: 1.3;
	vertical-align: text-top;
}
.txt_back_blue{
	display: inline-block;
	padding: 3px 8px;
	background: #077da2;
	color: #fff;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	margin-right: 0.5em;
	line-height: 1.3;
}
.txt_back_grn{
	display: inline-block;
	padding: 3px 8px;
	background: #24a879;
	color: #fff;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	margin-right: 0.7em;
	line-height: 1.3;
}

.txt_kkn{
	color: #CC5151;
	font-weight: bold;
}
.txt_kkn.end,
.txt_kkn.end span{
	text-decoration: line-through;
	color: #aaa;
}

.w100p	{ width: 100%; height: auto; }
.w95p	{ width: 95%; height: auto; }
.w75p	{ width: 75%; height: auto; }
.w50p	{ width: 50%; height: auto; }

img.w100p { display: block; }

.fuchi { border: 1px #ccc solid; }

.logo_piapro	{ vertical-align: middle; margin-left: 6px; }
.sponsor_logo p	{ display: inline-block; }

.dl{	/* 終了しましたバッジ */
	width: 85px;
	height: auto;
	vertical-align: middle;
}

.pr_illust{	/* PR大使イラスト */
	width: 100%;
	border: 1px #aaa solid;
	margin-bottom: 1em;
}

.remodal{	/*アーティストモーダルウィンドウ*/
	text-align: left;
}

.news_2018{
    color: #CC5151 !important;
}

/* ----------------------------------------------- */
/*                   text color                    */
/* ----------------------------------------------- */
.col_wht	{ color: #fff; }
.col_gly	{ color: #777; }
.col_bwn	{ color: #8a582d; }

.col_mku	{ color: #4EBDB7; }
.col_rin	{ color: #e0872a; }
.col_len	{ color: #ECC547; }
.col_lka	{ color: #EB66A1; }
.col_mko	{ color: #CC5151; }
.col_kto	{ color: #76A2E2; }

.week_sat	{ display: inline; color: #0089ec; }
.week_sun	{ display: inline;	color: #e85959; }

#footer		{ color: #eee; }

/* ----------------------------------------------- */
/*                 WEB Icon space                  */
/* ----------------------------------------------- */
/* webアイコンの横の余白 */
.fa		{ margin-right: 0.7em; }
a .fa	{ margin-left: 0.5em; }
.fa-chevron-left { margin-left: 0 !important; }
.fa.fa_r { margin-right: 0 !important; }

/* ----------------------------------------------- */
/*                   background                    */
/* ----------------------------------------------- */
body { background: #fff; }

#footer { background: rgba(33, 33, 33, 0.9); }

#contents section:last-child{
	border-bottom: 0;
}

/* ----------------------------------------------- */
/*                     anchor                      */
/* ----------------------------------------------- */
/* 基本リンク */
a			{ color: #109eb1; outline: none; }
a:link		{ text-decoration: none; }
a:visited	{ text-decoration: none; }
a:hover		{ text-decoration: underline; }
a:active	{ text-decoration: underline; }

/* ヘッダーメニュー */
#nav a			{ outline: none; text-decoration: none; }

/* ボタン */
a.btn 			{ background: #1ba18d; color: #fff; }
a.btn:link		{ text-decoration: none; }
a.btn:visited	{ text-decoration: none; }
a.btn:hover		{ background: #60bfb1; text-decoration: none; }
a.btn:active	{ text-decoration: none; }

a.btn_y 		{ background: #d28e29; color: #fff; }
a.btn_y:link	{ text-decoration: none; }
a.btn_y:visited	{ text-decoration: none; }
a.btn_y:hover	{ background: #e0a857; text-decoration: none; }
a.btn_y:active	{ text-decoration: none; }

a.btn.soon:hover,
a.btn_y.soon:hover		{ background: #aaa; text-decoration: none; }

a.btn_w 			{ border: 1px #fff solid; color: #fff; }
a.btn_w:link		{ text-decoration: none; }
a.btn_w:visited		{ text-decoration: none; }
a.btn_w:hover		{ background: rgba(255, 255, 255, 0.2); text-decoration: none; }
a.btn_w:active		{ text-decoration: none; }

/* TOP募集中 */
.top_notice li a			{ outline: none; display: block; color: #333; text-decoration: none; }
.top_notice li a:hover		{ background-color: rgba(255, 216, 56, 0.3); }

a.news_onair:hover		{ background-color: rgba(255, 216, 56, 0.3); }

/* ページ内リンクボタン */
.page_link a		{ text-decoration: none; color: #444; }


/* ----------------------------------------------- */
/*                       hr                        */
/* ----------------------------------------------- */
hr {
	border: none;
	border-bottom: 1px solid rgba(103, 149, 228, 0.5);
}

.tt{
	border: 0;
	background: url(../images/common/tateline.png) repeat-x;
	height: 15px;
}

.db {
    border: none;
    border-top: 3px double #bbb;
    text-align: center;
    margin: 60px 0;
}

/* ----------------------------------------------- */
/*                     title                       */
/* ----------------------------------------------- */
#contents h2.title{
	text-align:  center;
	position: relative;
	margin-bottom: 45px;
	z-index: 2;
	font-weight: bold;
}

#contents h3.title,
#contents h4.title{
	margin-bottom: 1em;
	font-weight: bold;
	border-bottom: 1px #333 solid;
	line-height: 1.6;
}

/* ----------------------------------------------- */
/*                      list                       */
/* ----------------------------------------------- */
ul.std li{	/* 通常 - 黄色菱形 */
	position: relative;
}

ul.std > li::after{
	content: '';
	display: block;
	position: absolute;
	background: #999;
	width: 5px;
	height: 5px;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

ul.onpu > li{	/* 通常 - 大きいリストマーク */
	position: relative;
}

ul.onpu > li::after{
	display: block;
	position: absolute;
	content: "\f001";
	font-family: FontAwesome;
}

ul.circle > li{	/* 通常 - 矢印マーク */
	position: relative;
	margin-left: 1em;
	padding: 0 0 0 20px;
}

ul.circle > li::after{
	content: '\f0a9';
	font-family: FontAwesome;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
}

ul.kome li{	/* 注意事項 - ※マーク */
	position: relative;
	padding: 0 0 0 20px;
}

ul.kome li::after{
	content: '※';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
}

/* ----------------------------------------------- */
/*                    clearfix                     */
/* ----------------------------------------------- */
.clearfix:after {
	content: "";
	display: block;
	clear: both;
	visibility: hidden;
}

.clearfix {
	min-height: 1%;
	zoom: 1;
}

/* ----------------------------------------------- */
/*                       sns                       */
/* ----------------------------------------------- */
.index_sns > *,
.contents_sns > * {
	display: inline-block;
	vertical-align: top;
	margin: 0 3px;
	z-index: 1000;
}

.fb_iframe_widget > span {
	vertical-align: baseline !important;
}

/* ----------------------------------------------- */
/*                      movie                      */
/* ----------------------------------------------- */
.movie {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
.movie iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}

/* ----------------------------------------------- */
/*                   google map                    */
/* ----------------------------------------------- */
.ggmap{
	position: relative;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
	border: 1px #ccc solid;
}

.ggmap iframe,
.ggmap object,
.ggmap embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* ----------------------------------------------- */
/*                  Material icons                 */
/* ----------------------------------------------- */
.material-icons {
	font-size: inherit !important;
	margin: 0 0.7em 0 -1px;
	vertical-align: middle;
}
