body {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-overflow-scrolling: touch;
}

/*
 * PC版標準指定
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
 .pc-visible {
	 display: none;
}
@media (min-width: 768px) {
	 .pc-visible {
		 display: block;
	}
	#top_onair .title_l h2,
	#top_onair p {
		margin: 0;
	}
	#top_staff .justify-content-md-center {
	}
}
/*
 * モバイル版標準指定
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
@media (max-width: 767px) {
	.navbar-toggler-icon {
		width: 22px;
		height: 22px;
	} 
	html {
		font-size: 17px;
	}
	body {
		margin: 0;
		padding: 0;
	}
	
	p, span {
		font-size: 1.25em;
		letter-spacing: 0.2px;
	}

	.title_r h2 {
		padding: 0 50px;
	}

	.title_r h2::after {
		width: 45px;
	}

	.title_l h2 {
		padding: 0 50px;
	}

	.title_l h2::before {
		color: currentColor;
		width: 45px;
	}
	
	/* Floating Menu
	 =============================== */
	.navbar.fixed-top {
		position: absolute;
	}
	#mobile_menu {
		transition: .5s;
		background: white;
    transform: translateY(0);
    position: fixed;
    box-shadow: 0 1px 0 0px rgba(0,0,0,0.15);
	}
	
	#mobile_menu .navbar {
		background: rgba(255,70,120,0);
		margin-left: auto;
	}
	
	#mobile_menu.hide{
    transform: translateY(-100%);
    box-shadow: none;
	}

	#mobile_menu .navbar-brand {
		padding: 3px 0 0;
	}
	#mobile_menu .navbar-brand img {
		height: 40px;
		width: auto;
	}
	.navbar-toggler {
		background: transparent;
		border: none;
		outline: none;
	}

	.navbar-toggler .navbar-toggler-icon {
		background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255,255,255,1)' stroke-width='3' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
	}
	#mobile_menu .navbar-toggler .navbar-toggler-icon {
		background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(0,0,0,1)' stroke-width='3' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
	}

	.navbar-nav {
		background: #fff;
		color: #868686;
		text-align: center;
		width: 100%;
		padding: 15px 0;
	}

	.navbar-nav li {
		padding-bottom: 5px;
	}
	
	.navbar-nav a,
	.navbar-nav a:active,
	.navbar-nav a:visited {
		color: #000;
	}

	.navbar-nav a:hover {
		color: #ffb6c1;
		text-decoration: none;
	}
	
	/* main_visual メインビジュアル
	 =============================== */
	#main_visual_m {
		background: #fa4678;
		height: 100vh;
		overflow: hidden;
	}
	#main_visual_m .bg {
		background-image: url("../../img/main_visual_m-min.png");
		background-repeat: no-repeat;
		background-position: center;
		background-size: 100%;
		height: 100vh;
	}
	#main_visual_m .top_catch {
		width: 30px;
		position: absolute;
		top: 30px;
		left: 20px;
		right: 0;
	}
	
	#main_visual_m .logo {
		width: 75%;
		position: absolute;
		top: 45%;
		left: 0;
		right: 0;
		margin: auto;
	}
	
	#main_visual_m .top_info {
		width: 65%;
		position: absolute;
		bottom: 85px;
		left: 0;
		right: 0;
		margin: auto;
	}
	
	#main_visual_m .top_aroow {
		width: 7%;
		position: absolute;
		bottom: 26px;
		left: 0;
		right: 0;
		margin: auto;
	}	
	
	/* top_pj
	=============================== */
	#top_pj {
		background: #000;
		margin: 0;
		padding-top: 30px;
		padding-bottom: 0;
	}
	
	/* top_news　News
	 =============================== */
	#top_news {
		background: #000;
		padding-top: 35px;
		padding-bottom: 35px;
	}
	
	#top_news h2 {
		color: #fff;
		margin-bottom: 15px;
	}	

	#top_news h2::before {
		background-color: #fff;
	}

	#top_news li {
		margin: 0 0 15px 0;
		min-height: 70px;
		height: auto !important;
		height: 70px;
		max-width: calc(100vw - 50px);
	}

	#top_news .news_data {
		padding: 15px 5px;
	}

	#top_news .news_title {
		padding: 15px 5px;
		width: 70%;
	}
	
	#top_news .news_title p {
	word-break: break-all;
}

	#top_news .news_icon {
		padding: 15px 10px 15px 10px;
		line-height: 0.7;
		font-size: 1.5em;
	}

	/* top_twitter　Twitter
	 =============================== */
	#top_twitter {
		background: #fafafa;
		padding-bottom: 50px;
	}

	#top_twitter h2 {
		color: #000;
		margin-bottom: 41px;
	}

	#top_twitter h2::before {
		background-color: #000;
	}

	#top_twitter span {
		color: #fa4678;
		font-size: 1.15rem;
	}

	/* top_youtube　YouTube
	 =============================== */
	#top_youtube {
		background: #000;
		padding: 0;
	}


	/* top_onair　ON AIR
	 =============================== */
	#top_onair {
		padding-bottom: 100px;
	}

	#top_onair p {
		padding: 50px 0 0 0px;
	}

	/* top_introduction　INTRODUCTION
	 =============================== */
	#top_introduction {
		background-image: url("../../img/bgm_introduction.jpg");
		margin: 0;
		padding: 0;
		background-size: cover;
		height: 100vh;
	}

	#top_introduction .col-md-9 {
		padding: 0; 
	}
	
	#top_introduction .block {
		background: rgba(0,0,0,0.4);
		padding: 80px 40px;
		margin: 0;
		height: calc(100vh - 500px);
	}

	#top_introduction h2 {
		color: #fff;
		margin-top: 380px;
		margin-bottom: 0;
	}

	#top_introduction .block p {
		font-weight: 100;
		font-size: 1.2rem;
		line-height: 1.5;
	}
	
	/* top_story STORY
	 =============================== */
	#top_story {
		background: #f3eee8;
		background-image: url("../../img/bgm_story.jpg");
		margin: 0;
		padding: 0;
		background-size: cover;
	}
	
	#top_story h2 {
		margin-top: 150px;
	}
	
	#top_story .block {
		margin-top: 180px;
		margin-left: auto;
		margin-right: auto;
	}

	#top_story .block li {
		font-size: 1rem;
		margin: 0 0 15px 0;
		padding: 10px 5px 10px 10px;
	  line-height: 25px;
		max-width: calc(100vw - 30px);
		flex: 1;
		display: flex;
		transition: background 0.5s ease;
	}	
	
	
	/* top_character　CHARACTER
	 =============================== */
	#top_character img {
		width: 80%;
		margin: auto;
	}
	
	/* top_staff STAFF & CAST
	 =============================== */
	#top_staff {
		background-color: transparent;
		background-image: none;
		background-repeat: no-repeat;
		background-position: top center;
		background-size: contain;
		background-attachment: fixed;
		background-attachment: scroll;
	}
	
	body::before {
	  background:#eae6e3 url("../../img/bg_s_staffcast-min.png") no-repeat left top;
	  background-size: 100% auto;
	  display: block;
	  position: fixed;
	  top: 50px;
	  left: 0;
	  width: 100%;
	  height: 100%;
	  content: "";
	  z-index: -1;
	}

	#top_staff h2 {
		color: #fa4678;
		margin-bottom: 39px;
	}

	#top_staff h2::after {
		background-color: #fa4678;
	}

	#top_staff .block {
		background: rgba(255,255,255,0.4);
		padding: 15px;
	}

	#top_staff .block .item {
		text-align: center;
		margin-bottom: 20px;
	}

	#top_staff .block .item span {
		color: #000;
		font-size: 0.85rem;
		margin: 0;
		padding: 0;
	}

	#top_staff .block .item p {
		color: #000;
		font-size: 1rem;
		font-weight: bold;
		margin: 3px 0;
	}

	#top_staff .block .item .comment {
		background: #fa4678;
		color: #fff;
		font-weight: 100;
		padding: 4px 12px;
		margin:15px 0;
	}
	#top_mu_twiter {
		background: white;
	}

	/* top_product PRODUCTS
	 =============================== */
	#top_product {
		background-image: url("../../img/bgm_products.jpg");
		background-size: cover;
		height: 100vh;
	}

	#top_product h2 {
		margin-top: 12.5px;
		color: #fa4678;
	}

	#top_product h2::before {
		background-color: #fa4678;
	}
	
	#top_product .block {
		margin-top: 170px;
		margin-left: auto;
		margin-right: auto;
	}

	#top_product .block li {
		border: solid 2px #fff;
		background: rgba(0,0,0,0.5);
		margin: 10px;
	  line-height: 60px;
		width: 70vw;
		font-size: 1rem;
		text-align: center;
		padding: 0;
		flex: 1;
		display: flex;
		transition: background 0.5s ease;
	}	
	

	
	/* footer
	 =============================== */
	#footer {
		background-image: url("../../img/bg_s_footer-min.png");
		background-repeat: no-repeat,no-repeat;
		background-position: left top;
		background-size: cover;
		color: #fff;
	}
	#footer .block {
		background: none;
		margin-top: 0;
		padding: 115% 0 50px 0;
	}

	#footer .sns li {
		padding-right: 10px;
		margin-top: 0px;
	}
	/* top_news　News
	 =============================== */
	#top_news .news_data {
		font-size: 0.8rem;
	}

	#top_news .news_title {
		font-size: 0.8rem;
	}

	#top_news .news_icon {
		font-size: 1.2em;
	}

	
	/* top_onair　ON AIR
	 =============================== */
	#top_onair p {
		padding: 60px 0 0 0px;
		font-size: 1.2rem;
	}
	
	/* top_introduction　INTRODUCTION
	 =============================== */
	#top_introduction h2 {
		color: #fff;
		margin-top: 180px;
		margin-bottom: 0;
	}

	#top_introduction .block {
		background: rgba(0,0,0,0.4);
		padding: 30px 20px;
		margin: 0;
		height: 47vh;
	}

	#top_introduction .block p {
		font-size: 1rem;
		line-height: 1.3;
	}
	
	.copy {
		font-size: 0.75rem;
	}
}

@media (max-width: 500px) {
	#top_story .block {
		max-width: calc(100vw - 40px);
	}
	
 	#top_story .block li {
		margin: 0 0 15px 0;
		padding: 10px 5px 10px 10px;
	}	

}