@charset "utf-8";

@media screen and (max-width: 480px) {
   .pic_l{
    width:100%;
    margin:0 auto;
} 
}

/*#####################################
	横幅680pxのボックス
#####################################*/

.wrap680{
    width:680px;
}

/*#####################################
	h3のタグの見出しの上にかぶる画像
#####################################*/

.superpoint{
	margin-bottom:-15px;
	z-index: 1000;
}

/*#####################################
	画像の中央寄せ
#####################################*/

.img_center{
 display: block;
 margin-left: auto;
 margin-right: auto;
}


/*#####################################
  文章自体はページの中央に表示
　文章の上下に30pxの余白が入る
　文章の頭は左揃えで始まる形
　枠線など装飾は何もない
#####################################*/

.introduction{
    width: 83%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 30px;
    margin-bottom: 30px;
    text-align: left;
}


/*#####################################
  文章自体はページの中央に表示
　文章の下に30pxの余白が入る
　文章の頭は左揃えで始まる形
　枠線など装飾は何もない
　width(幅)の指定が86％なのでintroduction_firstより若干横幅が広がる
#####################################*/

.normal_sentence{
    text-align: left;
    width: 86%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 30px;
}

/*#####################################
  文章自体はページの中央に表示
　薄い黄色の枠線
　文字サイズが12pxで表示される
#####################################*/

.frame_box{
    width: 80%;
    margin-top: 20px;
    margin-left: auto;
    margin-right: auto;
    text-align: left;
    font-size: 12px;
    padding: 15px;
    border: dotted 1px #FFB600;
}

/*#####################################
  オレンジ黄色系のグラデーションが背景色の角丸ボックス
#####################################*/

.grad_box{
    text-align: left;
    min-width: 250px;
    padding: 20px;
    margin-top: 30px;
    margin-left: auto;
    margin-right: auto;
    width: 80%;
    clear: both;
　　-moz-border-radius: 20px;    /* 古いFirefox */
    -webkit-border-radius: 20px; /* 古いSafari,Chrome */
    border-radius: 20px;         /* CSS3 */
　　background: #fefcea; /* Old browsers */
	background: -moz-linear-gradient(top, #fefcea 0%, #f1da36 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top, #fefcea 0%,#f1da36 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, #fefcea 0%,#f1da36 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fefcea', endColorstr='#f1da36',GradientType=0 ); /* IE6-9 */
　　background-clip: padding-box;
}

/*#####################################
  太字とアンダーラインのテキスト装飾
#####################################*/

.text_design_ub{
    display: block;
    font-weight: bold;
    text-decoration: underline;
    margin-bottom: 0px;
}

/*#####################################
  表（しろくろフェスのページだと商品一覧）
#####################################*/

.goods_list{
    width: 100%;
    border: 1px solid #000000;
    margin-left: auto;
    margin-right: auto;
}

/*#####################################
  表の見出し部分
　背景色オレンジ
#####################################*/

.goods_list .title_template{
    background-color: #FFC447;
    vertical-align: middle;
    width: 100%;
}

/*#####################################
  金額部分がdivで囲われていて右側に表示の指定になっている
#####################################*/

.amountofmoney{
	margin-right: 110px;
	display: inline-block;
	float: right;
	align:right;
}

/*#####################################
 イメージを横に四つ並び
#####################################*/

.pic_l{
	float:left;
}

/*#####################################
 floatのクリア
#####################################*/

.clear{
	clear:both
}



/*#####################################
 金額
#####################################*/
.price{ margin-right: 40px;
	display: inline-block;
	float: right;
}

/*#####################################
 見出しの次のリードテキスト
#####################################*/
.article_area{
	width: 83%;
	line-height:150%;
	margin-left: auto;
	margin-right: auto;
}


/*#####################################
テキストと画像横並びにするテーブル
#####################################*/
.text_and_img{
	margin-bottom:3px;
}

/*#####################################
テキストと画像横並びの時の左側のテキスト
#####################################*/
.imgside_text{
	line-height:150%;
	margin-left: 58px;
	width:420px;
	margin-right: auto;
}

/*#####################################
テキストと画像横並びの時の画像
#####################################*/
.textside_img{
	float: right;
    margin: 0 0 0 16px;
}

/*#####################################
オレンジ大文字
#####################################*/
.orange_big{
	font-weight:bold;
	font-size: 18pt;
	color: #ff6600;
	margin-top:6px;
	display:inline-block;
}

/*#####################################
水色大文字（オレンジよりやや小さめ）
#####################################*/
.blue_big{
	font-weight:bold;
	font-size: 14pt;
	color: #3366ff;
	margin-top:4px;
	display:inline-block;
}

/*#####################################
大きな黒色でセンター
#####################################*/
.big_center{
	font-weight:bold;
	font-size: 24pt;
	color: #000000;
	margin-top:45px;
	text-align:center;
}

/*#####################################
月刊ブシロードTV with トリモン & BanG Dream! 調整用
#####################################*/
.tv .main .contents .contents-box h2 {
	padding-right: 48px;
}
.tv .main .contents .contents-box .social-buttons {
	margin-top: -12px;
	margin-bottom: 4px;
}
.tv .main .contents .contents-box .entry-content h3:first-child {
	margin-top: 0;
}

@media screen and (max-width: 640px) {
	.tv .main .contents .contents-box h2 {
		font-size: 20px;
		padding-right: 8px;
	}
	.tv .main .contents .contents-box .social-buttons {
		margin: 16px 0;
	}
	.tv .main .contents .contents-box .entry-content h3:first-child {
		margin-top: 24px;
	}
}
@media screen and (max-width: 544px) {
	.tv .main .contents .contents-box h2 {
		font-size: 16px;
	}
}



/*#####################################
追加定義
#####################################*/

.contents-box img {
	max-width: 100%;
	height: auto;
}
.top-content {
	margin-top: -24px;
}
.top-content .top-list-box {
	margin-bottom: 48px;
}
.top-content h2 {
	margin-top: 0;
}
h2.top-info {
	font-size: 18px;
}
@media screen and (min-width: 1025px) {
	.top .contents .contents-box {
		margin-bottom: 8px;
	}
	.top .contents:first-child .contents-box {
		margin-bottom: 24px;
	}
	.top .contents {
		padding-left: 8px;
		padding-right: 8px;
		width: 496px;
		float: left;
		clear: none;
		margin-right: 16px;
	}
	.top .contents-box {
	}
	.top .contents:first-child {
		width: 100%;
		float: none;
		margin-right: 0;
	}
	.supplement {
		padding: 0;
		width: 488px;
		float: left;
	}
	.twitter-widget-container .pc {
		margin-top: 0;
		border-bottom: 1px solid #c6c6c6;
	}
}

@media screen and (max-width: 640px) {
	body.top .contents:first-child {
		margin-bottom: 0;
	}
	.supplement {
		padding-right: 0;
		padding-left: 0;
	}
}

@media screen and (max-width: 920px) {
	.header-menu a {
		font-size: 12px;
		line-height: 14px;
	}
	.header-menu li a[title]:after {
		font-size: 10px;
		right: 6px;
	}
}

@media screen and (max-width: 680px) {
	.header-menu a {
		font-size: 10px;
		line-height: 12px;
		right: 0;
	}
	.header-menu li a[title]:after {
		font-size: 8px;
	}
}

@media screen and (max-width: 640px) {
	.header-menu a {
		font-size: 14px;
		line-height: 14px;
		text-align: left;
	}
	.header-menu a br {
		display: none;
	}
	.header-menu li:after {
		display: none;
	}
	.header-menu .sub-menu {
		margin: 0 0 0 24px;
	}
	.header-menu .sub-menu li {
		width: 100%;
		height: auto;
		border-top: 1px solid #f7a979;
		border-bottom: none;
	}
	.header-menu .sub-menu li a {
		display: block;
		width: 100%;
		height: auto;
		padding: 12px 12px 12px 40px;
		line-height: 14px;
	}
	.top .contents .contents-box {
		margin-bottom: 16px;
	}
	.footer {
		margin-top: -16px;
	}
	li.only_ft.disp_sp {
		display: block;
	}
}

/* @media start */
@media screen and (min-width: 821px) and (max-width: 980px) {
	.header {
		height: 220px;
	}
	.header-menu {
		top: 148px;
	}
}
@media screen and (min-width: 697px) and (max-width: 820px) {
	.box-tv .desc  {
		width: 76px;
	}
	.box-nikkan .desc  {
		width: 76px;
	}
}
@media screen and (min-width: 761px) and (max-width: 820px) {
	.header {
		height: 200px;
	}
	.header-menu {
		top: 128px;
	}
}
@media screen and (min-width: 697px) and (max-width: 760px) {
	.header {
		height: 190px;
	}
	.header-menu {
		top: 118px;
	}
}

@media screen and (min-width: 641px) and (max-width: 696px) {
	.header {
		height: 180px;
	}
	.header-menu {
		top: 118px;
	}
	.box-tv .desc  {
		width: 58px;
	}
	.box-nikkan .desc  {
		width: 58px;
	}

}

@media screen and (max-width: 1024px) {
	.contents-banner {
		display: none;
	}
}



@media screen and (min-width: 641px) and (max-width: 1024px) {
	
	.catch {
		height: auto;
	}
	.catch .inner {
		display: flex;
	}
	.top-box1 {
		width: 100%;
		margin: 8px;
	}
	.top-box2 {
		width: 33.3333333%;
		margin: 8px 8px 8px 0;
	}
	.box-new,
	.top-slide-wrap,
	.box-tv,
	.box-nikkan,
	.box-column-banner {
		position: relative;
		width: 100%;
		height: auto;
		left: 0;
		top: 0;
		margin: 0;
	}
	.box-new {
		margin-bottom: 8px;
	}
	.box-tv {
		margin-bottom: 8px;
		padding-top: 8px;
	}
	.box-nikkan {
		padding-top: 48px;
	}
	.box-tv .logo {
		top: -4px;
		margin: 0;
	}
	.box-tv .desc {
		top: 4px;
	}
	.box-nikkan .logo {
		top: -4px;
	}
	.box-nikkan .desc {
		top: 4px;
	}
	.box-tv .update,
	.box-nikkan .update {
		position: relative;
		width: auto;
		height: auto;
	}
	.box-nikkan .update {
		margin: 0 -8px;
	}
	.box-tv .update:before,
	.box-nikkan .update:before {
		content: none;
	}

	.box-tv .update br,
	.box-nikkan .update br {
		display: none;
	}
	.box-tv .next {
		position: relative;
		height: 32px;
	}
	.box-tv .next .text {
		font-size: 12px;
	}
	.box-tv .next .btn {
		width: 60%;
		padding-right: 4px;
	}
	.box-tv .next .btn img {
		width: 98%;
	}
	.box-nikkan .btn {
		width: 60%;
	}
	.box-nikkan .btn img {
		width: 98%;
	}
	.top-slide-wrap {
		height: auto;
	}
	.flex-viewport {
		width: 95%;
		width: calc(100% - 8px);
		height: auto;
		top: 4px;
		margin-bottom: 4px;
	}
	.flex-control-nav {
		position: relative;
		width: auto;
		background-color: #bbb;
		top: auto;
	}
	.flex-viewport li img {
		max-width: 100%;
		height: auto;
	}
	
	.header h1,
	.header .desc,
	.header .header-balloon-container {
		position: static;
		display: inline-block;
		vertical-align: bottom;
	}
	.header {
		text-align: left;
	}
	.header h1 {
		width: 30%;
		/*margin-right: -5%;*/
		margin-right: -2.5%;
	}
	.header h1 img {
		width: 90%;
	}
	.header .desc {
		width: 25%;
	}
	.header h1 img,
	.header .desc img {
		max-width: 100%;
	}
	
	.header .header-balloon-container {
		width: 46%;
	}
	.header .header-balloon {
		width: 100%;
		height: auto;
		position: relative;
		top: 0;
		left: 0;
	}
	.header-balloon .char {
		display: flex;
		width: 100%;
	}
	.header-balloon .text {
		position: relative;
		left: 0;
		top: 0;
		background-image: none;
		background-size: contain;
		width: 75%;
	}
	.header-balloon .text a {
		background-size: contain;
		background-repeat: no-repeat;
	}

	.header-balloon .text a {
		font-size: 10px;
	}
	.header-balloon .icon {
		position: relative;
		left: 0;
		bottom: 0;
	}
	.header-balloon .char.disable {
		display: none;
	}
	.header-balloon .icon-wrap {
		width: 25%;
	}
	.header-balloon .icon {
		width: 100%;
	}

} /* @media end */



@media screen and (min-width: 801px) and (max-width: 1024px) {
	.header-balloon .text {
		margin-top: 24px;
	}
	.header-balloon .text a {
		background-image: url(img/balloon.png);
		padding-top: 0;
	}
}
@media screen and (min-width: 641px) and (max-width: 800px) {
	.header-balloon .icon {
		margin-top: 24px;
	}
	.header-balloon .text {
		width: 100%;
	}
	.header-balloon .text a {
		background-image: url(img/balloon.png);
		background-position: center center;
		padding: 8px 8px 8px 32px;
	}

}


/****** お問い合わせフォーム *********/
.contact-form div.wpcf7 {
	margin-left: 24px;
	text-align: center;
}
.contact-form div.wpcf7 .contact-required-text {
	text-align: center;
}
.contact-form div.wpcf7 .required {
	color: #F00;
}
.contact-form div.wpcf7 .contact-label {
	font-weight: bold;
	font-size: 16px;
}
.contact-form div.wpcf7 .contact-table {
	display: table;
	width: 100%;
	text-align: center;
}
.contact-form div.wpcf7 .contact-cell {
	display: table-cell;
	padding: 4px 16px;
	vertical-align: middle;
}
.contact-form div.wpcf7 .contact-cell-a {
	width: 25%;
	text-align: left;
}
.contact-form div.wpcf7 .contact-cell-b {
	width: 75%;
	text-align: left;
}
.contact-form div.wpcf7 input,
.contact-form div.wpcf7 select,
.contact-form div.wpcf7 textarea {
	padding: 8px 4px;
	border-radius: 4px;
	border-style: solid;
	border-width: 1px;
	border-color: #ccc;
	width: 85%;
}
.contact-form div.wpcf7 .wpcf7-not-valid-tip {
	padding: 4px 0 0 8px;
}
.contact-form div.wpcf7 input.wpcf7-submit {
	font-size: 16px;
	padding: 8px 60px;
	margin: 12px auto 0;
	width: auto;
	background-color: #f16c1c;
	border-color: #b44e11;
	color: #FFF;
	transition-duration: 0.2s;
}
.contact-form div.wpcf7 input.wpcf7-submit:hover {
	opacity: 0.8;
	/*background-color: #b44e11;*/
}

.contact-form div.wpcf7-validation-errors, div.wpcf7-acceptance-missing {
    border: 2px solid #f16c1c;
    padding: 6px;
}

.contact-form div.wpcf7 br {
	display: none;
}

@media screen and (min-width: 962px) {
	.contact-form div.wpcf7 .contact-cell-a {
		padding-left: 48px;
	}
}
@media screen and (max-width: 840px) {
	.contact-form div.wpcf7 .contact-cell-a {
		display: block;
		width: 100%;
		padding-top: 8px;
	}
	.contact-form div.wpcf7 .contact-cell-b {
		display: block;
		width: 100%;
	}

}
/** 最新号 **/
@media screen and (max-width: 780px) {
	.cover-info-table td:last-child {
		padding-left: 0;
		margin: 8px auto;
	}
	.cover-cm .video {
		width: auto;
	}
	.cover-info-table tr,
	.cover-info-table td {
		display: block;
	}
	.cover-cm {
		position: static;
	}
}

/** 次号予告 **/
.next-magazine p {
	text-align: center;
}

/** ブックス **/
.gift-table td {
	width: 33%;
}
.gift-table td img {
	margin-left: auto;
	margin-right: auto;
}
@media screen and (max-width: 960px) {
	.gift-table {
		width: 100%;
		display: block;
	}
	.gift-table tr {
		display: inline;
	}
	.gift-table td {
		display: inline-block;
	}
	.gift-table td {
		width: 48%;
		margin: 4px;
	}
}
@media screen and (max-width: 640px) {
	.gift-table tr,
	.gift-table td {
		display: block;
	}
	.gift-table td {
		width: 100%;
	}
}
/** お問い合わせ **/
.contact-privacy-text {
	text-align: center;
}
.contact-text-center p {
	text-align: center;
}
.privacy-check-area {
	font-size: 16px;
	margin-bottom: 16px;
}
#privacy-check {
	width: auto;
	transform: scale(1.5);
	margin-right: 8px;
}
#privacy-check:hover,
.privacy-check-area label:hover {
	cursor: pointer;
}
.wpcf7-submit:disabled {
	opacity: 0.5;
}
