@charset "utf-8";

/* CSS INFORMATION -====================================================
File name : base.css
Description :
===================================================================== */

/* =====================================================================
*    共通・大枠
* =================================================================== */
html {
	font-size: calc(10 / 750 * 100vw);
	overflow-x: hidden;
}

.gDef-top-banner {
	background-color: #9b200c;
}

.gDef-contents {
	background: url(../images/common/bg_main.jpg) repeat center/calc(250 / 750 * 100%) auto;
	color: #000;
	font-family: YakuHanJP, "Noto Sans JP", "メイリオ", "ＭＳ Ｐゴシック", "小塚ゴシック Pro R", "ヒラギノ角ゴ Pro W3", "Meiryo", "MS PGothic", "KozGoPro-Regular", "Hiragino Kaku Gothic Pro", "MS UI Gothic", Osaka, sans-serif;
	font-size: 2.4rem;
	line-height: 1.7;
}

.set1,
.set1 * {
	position: relative;
}

.set1 img {
	width: 100%;
	height: auto;
	display: block;
}

.set1 a {
	color: #000;
	display: block;
}

.inner {
	width: calc(650 / 750 * 100%);
	margin: 0 auto;
	z-index: 1;
}

section h2 {
	margin-bottom: calc(70 / 650 * 100%);
}

.btn1 {
	width: calc(424 / 650 * 100%);
	margin: 0 auto;
}

.btn1 a {
	padding-top: calc(160 / 650 * 100%);
}

.btn1 img {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 100%;
	display: block;
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}

.btn1:hover img:nth-of-type(2) {
	opacity: 0;
}

.object-fit {
	-o-object-fit: cover;
	object-fit: cover;
	font-family: 'object-fit: cover;'
}


@media screen and (max-width: 767px) {
	.pc {
		display: none !important;
	}
}


@media screen and (min-width: 768px) {
	html {
		font-size: calc(10 / 1200 * 100vw);
	}

	.gDef-contents {
		font-size: 1.6rem;
		background-size: calc(250 / 1200 * 100%) auto;
	}

	.set1 a {
		-webkit-transition: 0.2s ease;
		transition: 0.2s ease;
	}

	.set1 a:hover {
		-webkit-transition: 0.2s ease;
		transition: 0.2s ease;
	}

	.outer {
		max-width: 1600px;
		margin: 0 auto;
	}

	.inner {
		width: 100%;
		max-width: 1200px;
		padding: 0 calc(100 / 1200 * 100%);
	}

	section h2 {
		width: calc(390 / 1000 * 100%);
		margin: 0 auto calc(54 / 1000 * 100%);
	}

	.sp {
		display: none !important;
	}

	.btn1 {
		width: calc(276 / 1000 * 100%);
		margin: calc(70 / 1000 * 100%) auto 0 !important;
	}
}


@media screen and (min-width: 1200px) {
	html {
		font-size: 10px;
	}

	.gDef-contents {
		background-size: 250px auto;
	}

	.inner {
		padding: 0 100px;
	}
}



/* =====================================================================
*    submv
* =================================================================== */
.submv {
	background-color: #781202;
}

.submv .inner {
	width: 100%;
}

.submv .inner::before {
	content: '';
	position: absolute;
	display: block;
	top: 0;
	left: 0;
	background: url(../images/common/img_submv.jpg) no-repeat center top/contain;
	width: calc(408 / 750 * 100%);
	padding-top: calc(288 / 750 * 100%);
	margin: calc(10 / 750 * 100%) 0 0 calc(10 / 750 * 100%);
}

.submv_ttl {
	width: calc(260 / 750 * 100%);
	margin-left: calc(452 / 750 * 100%);
	padding-top: calc(78 / 750 * 100%);
}

.submv_onair {
	width: calc(272 / 750 * 100%);
	margin: calc(16 / 750 * 100%) 0 0 calc(448 / 750 * 100%);
	padding-bottom: calc(57 / 750 * 100%);
}

@media screen and (min-width: 768px) {
	.submv {}

	.submv_inner {
		max-width: 1000px;
		margin: 0 auto;
	}

	.submv .inner::before {
		width: calc(295 / 1200 * 100%);
		padding-top: calc(208 / 1200 * 100%);
		margin: calc(10 / 1200 * 100%) 0 0 calc(100 / 1200 * 100%);
	}

	.submv_wrap {
		width: 100%;
	}

	.submv_ttl {
		width: calc(357 / 1000 * 100%);
		margin-left: calc(464 / 1000 * 100%);
		padding-top: calc(34 / 1000 * 100%);
	}

	.submv_onair {
		width: calc(651 / 1000 * 100%);
		margin: calc(17 / 1000 * 100%) 0 0 calc(320 / 1000 * 100%);
		padding-bottom: calc(75 / 1000 * 100%);
	}

	.submv_onair::before {
		content: '';
		position: absolute;
		background: url(../images/common/img_mv_onair_pc.png) no-repeat center/contain;
		top: 0;
		left: 0;
		width: 100%;
		padding-top: calc(43 / 651 * 100%);
	}

	.submv_onair img {
		display: none;
	}

}

@media screen and (min-width: 1200px) {
	.submv {}
}

/* =====================================================================
*    nav
* =================================================================== */
.header {
	z-index: 1;
}

.header_nav {
	background-color: #272727;
}

.nav_menu {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	padding: calc(5 / 750 * 100%) 0;
}

.nav_menu li {
	width: calc(125 / 750 * 100%);
	padding: calc(5 / 750 * 100%);
}

.nav_menu li a {
	border: 1px solid #b68e16;
	padding: calc(25 / 750 * 100vw) 0;
}

.nav_menu li img {
	width: calc(65 / 750 * 100vw);
	margin: auto;
}

.nav_menu li.nolink a,
.nav_menu li.cs a {
	pointer-events: none;
}

.nav_menu li.nolink img,
.nav_menu li.cs img {
	opacity: 0;
}

.nav_menu li.nolink a::before {
	content: '';
	position: absolute;
	display: block;
	width: 100%;
	height: calc(62 / 750 * 100vw);
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	background: url(../images/nav/nav_nolink.png) no-repeat center/contain;
}

.nav_menu li.cs a::before {
	content: '';
	position: absolute;
	display: block;
	width: 100%;
	height: calc(92 / 750 * 100vw);
	background: url(../images/nav/nav_cs.png) no-repeat center/contain;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
}

.nav_date {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	margin: -.8em 0 0;
	text-align: center;
	z-index: 3;
}

.nav_menu li:last-child .nav_date {
	margin-top: calc(-20 / 300 * 100%);
}

.nav_date span {
	display: inline-block;
	padding: .4em 1.2em;
	background-color: #fcee00;
	border-radius: 2em;
	font-size: 1.8rem;
	letter-spacing: -.1rem;
	line-height: 1;
}

.nav_date span::before {
	content: '';
	position: absolute;
	bottom: 0;
	right: 0;
	left: 0;
	margin: auto;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: .5em .3em 0 .3em;
	border-color: #fcee00 transparent transparent transparent;
	margin-bottom: -.5em;
}

.header_sns {
	background-color: #9b200c;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	padding: calc(16 / 750 * 100%) 0;
}

.header_sns li {
	width: calc(70 / 750 * 100%);
	margin: 0 calc(30 / 750 * 100%);
}

.header_sns li a {
	padding: calc(14 / 70 * 100%);
	border-radius: 50%;
	border: 1px solid #272727;
}


@media screen and (min-width: 768px) {
	.nav {
		width: 100%;
		max-width: 1200px;
		margin: 0 auto;
		padding: 0 calc(100 / 1200 * 100%);
	}

	.nav_menu {
		margin: 0 auto;
		padding: calc(5 / 1000 * 100%) 0;
	}

	.nav_menu li {
		width: calc(82 / 1000 * 100%);
		padding: calc(3 / 1000 * 100%);
	}

	.nav_menu li a {
		padding: calc(20 / 78 * 100%) 0;
	}

	.nav_menu li a::after {
		opacity: 0;
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		border: 5px solid #b68e16;
		-webkit-transition: .2s ease;
		transition: .2s ease;
	}

	.nav_menu li a:hover::after {
		opacity: 1;
		-webkit-transition: .2s ease;
		transition: .2s ease;
	}

	.nav_menu li a img {
		width: calc(55 / 78 * 100%);
	}

	.nav_menu li:last-child {
		width: calc(98 / 1000 * 100%);
	}

	.nav_menu li:last-child a {
		padding: calc(20 / 92 * 100%) 0;
	}

	.nav_menu li:last-child img {
		width: calc(52.5 / 92 * 100%);
	}

	.nav_menu li.cs a::before {
		height: calc(72 / 1200 * 100vw);
	}

	.nav_menu li.nolink a::before {
		height: calc(43 / 1200 * 100vw);
	}

	.nav_hulu {
		width: calc(330 / 1000 * 100%);
	}

	.nav_hulu a {
		padding-top: calc(79 / 330 * 100%);
	}

	.nav_date {
		margin: -1em auto !important;
		width: auto;
		right: 0;
	}

	.nav_date span {
		padding: .3em 1.2em;
		font-size: 1.2rem;
		letter-spacing: 0rem;
		margin-top: -1em;
	}

	.header_sns {
		padding: calc(10 / 1200 * 100%) 0;
	}

	.header_sns li {
		width: calc(50 / 1200 * 100%);
		margin: 0 calc(40 / 1200 * 100%);
	}

	.header_sns li a {
		padding: calc(10 / 50 * 100%);
	}

	.header_sns li a:hover {
		-webkit-box-shadow: 0 0 0 3px #272727;
		box-shadow: 0 0 0 3px #272727;
	}

}

@media screen and (min-width: 1200px) {
	.nav {
		padding: 0 100px;
	}

	.nav_menu li.cs a::before {
		height: 72px;
	}

	.nav_menu li.nolink a::before {
		height: 43px;
	}

	.header_sns {
		padding: 10px 0;
	}

	.header_sns li {
		width: 50px;
		margin: 0 40px;
	}

}



/* =====================================================================
*    banner
* =================================================================== */
.banner li {
    width: calc(560 / 650 * 100%);
    margin: 0 auto;
}

.banner li:not(:last-child) {
    margin-bottom: calc(30 / 560 * 100%);
}

.banner li a {
    -webkit-box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.1);
    -ms-box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.1);
    box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.1);
}

.banner_big li {
    margin-bottom: calc(30 / 560 * 100%);
    width: 100%;
}

@media screen and (min-width: 768px) {
    .banner {
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

    .banner li {
        width: calc(400 / 1000 * 100%);
        margin: 0;
    }

    .banner li:not(:last-child) {
        margin: 0 calc(18 / 1000 * 100%) 0 0;
    }

    .banner li a {
        overflow: hidden;
    }

    .banner li a img {
        -webkit-transition: .2s;
        transition: .2s;
    }

    .banner li a:hover img {
        -webkit-transform: scale(1.05);
        transform: scale(1.05);
        -webkit-transition: .2s;
        transition: .2s;
    }

    .banner li a::before {
        content: '';
        position: absolute;
        background: url(../images/common/img_banner_h.png) no-repeat center/contain;
        z-index: 2;
        width: calc(68 / 1200 * 100vw);
        height: calc(69 / 1200 * 100vw);
        right: calc(-100 / 1200 * 100vw);
        bottom: 0;
        -webkit-transition: .5s;
        transition: .5s;
    }

    .banner li a:hover::before {
        -webkit-transition: .5s;
        transition: .5s;
        right: 0;
    }

    .banner_big li {
        width: calc(700 / 1000 * 100%);
        margin: 0 0 calc(18 / 1000 * 100%);
    }

}

@media screen and (min-width: 1200px) {

    .banner li a::before {
        width: 68px;
        height: 69px;
        right: -100px;
    }
}



/* =====================================================================
*    footer
* =================================================================== */
.footer {
	padding: calc(80 / 750 * 100%) 0 0;
	background-color: #9b200c;
}

.footer::before {
	content: '';
	background: url(../images/common/bg_wave.png) repeat-x left calc(300 / 750 * 100%) bottom/calc(302 / 750 * 100%) auto;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	padding-top: calc(200 / 750 * 100%);
	margin-top: calc(-200 / 750 * 100%);
}

.footer_sns {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	padding-bottom: calc(250 / 650 * 100%);
}

.footer_sns li {
	width: calc(100 / 650 * 100%);
	margin: 0 calc(30 / 650 * 100%);
}

.footer_sns li a {
	padding: calc(20 / 100 * 100%) calc(20 / 100 * 100%);
	border-radius: 50%;
	border: 1px solid #2d2523;
}

.footer_bnr {
	margin-bottom: calc(100 / 650 * 100%);
}

.footer_bnr a {
	-webkit-box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.1);
	box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.1);
}

.pagetop {
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	width: calc(200 / 750 * 100vw);
	z-index: 100;
	margin: 0 auto;
	z-index: 9999;
	overflow: hidden;
}

.pagetop img {
	margin-bottom: calc(-50 / 750 * 100vw);
}

.pagetop.fixed {
	position: fixed;
}

.copyright {
	font-size: 2rem;
	color: #2d2523;
	text-align: center;
	background-color: #7b1403;
	padding: calc(30 / 750 * 100%);
}

@media screen and (min-width: 768px) {
	.footer {
		padding: calc(80 / 1200 * 100%) 0 0;
	}

	.footer::before {
		background-position: center bottom;
		background-size: calc(190 / 1200 * 100%);
		padding-top: calc(136 / 1200 * 100%);
		margin-top: calc(-136 / 1200 * 100%);
	}

	.pagetop {
		width: calc(111 / 1200 * 100%);
		-webkit-transform: perspective(1px) translateZ(0);
		transform: perspective(1px) translateZ(0);
	}

	.pagetop:hover img {
		-webkit-transition: .3s;
		transition: .3s;
		margin-bottom: 0;
	}

	.pagetop img {
		-webkit-transition: .3s;
		transition: .3s;
		margin-bottom: calc(-27 / 1200 * 100vw);
	}

	.footer_bnr {
		width: calc(475 / 1000 * 100%);
		margin: 0 auto calc(40 / 1000 * 100%);
	}

	.footer_bnr a {
		top: 0;
	}

	.footer_bnr a:hover {
		top: -10px;
	}

	.footer_sns {
		padding-bottom: calc(155 / 1000 * 100%);
	}

	.footer_sns li {
		width: calc(60 / 1000 * 100%);
		margin: 0 calc(20 / 1000 * 100%);
	}

	.footer_sns li a {
		padding: calc(15 / 60 * 100%) calc(14 / 60 * 100%) calc(14 / 60 * 100%);
	}

	.footer_sns li a:hover {
		-webkit-box-shadow: 0 0 0 3px #2d2523;
		box-shadow: 0 0 0 3px #2d2523;
	}

	.copyright {
		font-size: 1.2rem;
		padding: calc(20 / 1200 * 100%) 0;
	}
}

@media screen and (min-width: 1200px) {
	.footer {
		padding: 80px 0 0;
	}

	.footer::before {
		background-size: 190px;
		padding-top: 136px;
		margin-top: -136px;
	}

	.pagetop {
		width: 111px;
	}

	.pagetop img {
		margin-bottom: -27px;
	}

	.copyright {
		padding: 20px 0;
	}
}



/* =====================================================================
*    movie_popup
* =================================================================== */
.popup_wrapper {
	width: 100%;
	height: 100%;
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	background-color: rgba(0, 0, 0, 0.7);
	z-index: 100000;
	display: none;
	cursor: pointer;
}

.popup_wrapper .return_box {
	width: 100%;
	height: 100%;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
}

.popup_wrapper .popup_movie_wrap {
	width: 100%;
	height: auto;
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	margin: auto;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	text-align: center;
}

.popup_wrapper .popup_movie_wrap .popup_movie {
	width: 100%;
	padding-top: 56.25%;
	position: relative;
}

.popup_wrapper .popup_movie_wrap .popup_movie video {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
}

.popup_wrapper .popup_movie_wrap .popup_movie iframe {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
}

.vjs-icon-placeholder {
	display: block;
	margin: -1em 0 0;
	position: static;
}

.popup_wrapper .btn2 {
	margin: calc(50 / 750 * 100%) auto 0;
}

.popup_wrapper .btn2 a {
	color: #fff;
	text-decoration: none;
	border-bottom: 2px solid #fff;
	-webkit-transition: .2s;
	transition: .2s;
	font-size: 3rem;
	padding: 5px 10px;
}

@media screen and (min-width: 768px) {
	.popup_wrapper .popup_movie_wrap {
		width: calc(800 / 1200 * 100%);
	}

	.popup_wrapper .btn2 {
		margin: calc(30 / 800 * 100%) auto 0;
	}

	.popup_wrapper .btn2 a {
		font-size: 2rem;
	}

	.popup_wrapper .btn2 a:hover {
		color: #982411;
		border-color: #982411;
		-webkit-transition: .2s;
		transition: .2s;
	}
}

@media screen and (min-width: 1200px) {
	.popup_wrapper .popup_movie_wrap {
		width: 800px;
	}
}



@media print {

	.nextstory_movie_photo img,
	.story_movie_photo img,
	.news_list_photo img {
		display: none;
	}

	.story_txt_list_photo img {
		display: none;
	}

	.bucknumber_list img {
		display: none;
	}

	.chain_photo img {
		display: none;
	}

	.topics_photo img {
		display: none;
	}

	.chart_btn_img,
	.chart_photo img {
		display: none;
	}

	.music_artist_img_bg img {
		display: none;
	}
}
