/*===========================================================
+-----+// common
===========================================================*/

h1,h2,h3,h4,h5,h6,p,li,dt,dd,form,pre,td,th,label,div,figure,figcaption{
	font-size:1.4rem;
}

.pcOnly{display: none !important;}

body img{width: 100%;}

/*===========================================================
+-----+// header
===========================================================*/
header{
	padding: 7px 0 0;
	margin: 0 auto;
	position: fixed;
	width: 100%;
	background: #fff;
	box-sizing: border-box;
	z-index: 150;
	border-bottom: solid 2px #d2d2d2;
}

header #head_logo{
		width: 120px;
		margin: 0 auto;
}
header #head_logo ul{
	display: flex;
}
header #head_logo_col2 {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 120px;
	margin: 0 auto;
}
header #head_logo_col2 a:first-child {
	margin-right: 2px;
}
header #head_logo_col2 img {
	width: auto;
	height: 24px
}


header #menu{
		display: none !important;
}

#head_search {
	display: none;
}

/*===========================================================
+-----+// main
===========================================================*/
main{
	width: 100%;
	padding-top: 94px;
}
main .h1_ttl{
	text-align: center;
	margin: 35px 0 30px;
}
main .h1_ttl img{
	height: 22px;
	width: auto;
}

main .h2_ttl{
	text-align: center;
	background: url("/top/common/img/ttl_bg.png") left center repeat-x;
	margin-bottom: 40px;
}
main .h2_ttl img{
	background: #fff;
	height: 37px;
	width: auto;
	padding: 0 25px;
}

/*===========================================================
+-----+// soclial_area
===========================================================*/

#soclial_area{
	margin-bottom: 50px;
}
#soclial_area ul{
	width: 53%;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#soclial_area ul img{
	width: 50px;
}

/*===========================================================
+-----+// pagetop
===========================================================*/

#pagetop{
	position: fixed;
	bottom:80px;
	right: 10px;
	z-index: 100;
}

#pagetop a{
	display: block;
	width: 50px;
	height: 50px;
	text-indent: -9999px;
	background: url("/top/common/img/pagetop.png") center center no-repeat #fff;
	background-size:15px auto;
	border: solid 1px #333;
	box-sizing: border-box;
}

/*===========================================================
+-----+// search modal
===========================================================*/

#search_modal{
	position: fixed;
	width: 100vw;
	height: 100vh;
	top: 0;
	left: 0;
	z-index: 500;
	display: none;
}

#search_modal #search_modal_inner{
	width: 100vw;
	height: 100vh;
	display: flex;
	align-items: center;
	background: rgba(0,0,0,0.8);
	overflow: hidden;
}

#search_modal #search{
	width: 80%;
	margin: -20% auto 0;
	align-items: center;
}

#search_modal #search form{
	display: flex;
	justify-content: space-between;
	flex-wrap: nowrap;
}

#search_modal #search .searchBox{
	width: 80%;
	height: 30px;
	border-radius: 5px;
	padding: 5px 5px 5px 25px;
	box-sizing: border-box;
	position: relative;
	background: url("/top/common/img/icon_search.png") left 5px center no-repeat #fff;
	background-size: 15px 15px;
}

#search_modal #search .searchBtn{
	width: 15%;
	height: 30px;
	background: #999;
	font-size: 1.4rem;
	line-height: 30px;
	color: #fff;
	box-sizing: border-box;
	transition: all 0.3s;
	cursor: pointer;
}
#search_modal #search .searchBtn:hover{
	background: #ccc;
}


#search_modal .close{
	width: 20px;
	height: 20px;
	display: block;
	position: fixed;
	right: 15px;
	top:15px;
}

#search_modal .close a{
	width: 20px;
	height: 20px;
	display: block;
	position: relative;

}
#search_modal .close span{
	height: 1px;
	width: 100%;
	display: block;
	background: #fff;
	position: absolute;
	left: 0;
	top:10px;
}

#search_modal .close span:nth-child(1){
	transform: rotate(45deg);
}
#search_modal .close span:nth-child(2){
	transform: rotate(-45deg);
}


/*===========================================================
+-----+// footer
===========================================================*/

footer{
	padding: 10px 0 80px;
	background: #eeeeee;
}

footer .foot_attention {
	margin: -10px 0 10px;
	padding: 30px 20px;
	text-align: center;
	line-height: 2;
	color: #fff;
	background: #696969;
}

footer .foot_attention p,
footer .foot_attention a {
	color: inherit;
}

footer .foot_attention a {
	text-decoration: underline;
}

footer #foot_menu{
	display: none;
	position: fixed;
	left: 0;
	top: 38px;
	width: 100%;
	height: 100vh;
	overflow-y: scroll;
	z-index: 200;
	background:#d2d2d2;
}

footer #foot_menu section{
	position: relative;
	left: 100%;
}

footer #foot_menu section:last-child{
	margin-bottom: 105px;
}

footer #foot_menu a{
	display: block;
	padding: 15px;
	border-bottom: solid 1px #d2d2d2;
}
footer #foot_menu h2 a{
	color: #fff;
	background: url("/top/common/img/arrow02_r.png") right 15px center no-repeat #999;
	background-size: 10px auto;
}
footer #foot_menu h2.ac_btn a{
	background: url("/top/common/img/arrow02_d.png") right 13px center no-repeat #999;
	background-size: 15px auto;
}
footer #foot_menu h2.ac_btn.clickBtn_on0 a{
	background: url("/top/common/img/arrow02_u.png") right 13px center no-repeat #999;
	background-size: 15px auto;
}

footer #foot_menu .ac_content{
	display: none;
}

footer #foot_menu li a{
	background: url("/top/common/img/arrow01_r.png") right 15px center no-repeat #eee;
	background-size: 10px auto;
}
footer small{
	font-size: 1.2rem;
	display: block;
	text-align: center;
}

footer #foot_nav{
	background: #fff;
	padding: 10px 0;
	position: fixed;
	z-index: 300;
	bottom:0;
	width: 100%;
	box-sizing: border-box;
	box-shadow: 0 -5px 5px rgba(0,0,0,0.2);
}
footer #foot_nav ul{
	display: flex;
	justify-content: flex-start;
	align-items: flex-end;
	flex-wrap: nowrap;
}
footer #foot_nav ul li{
	text-align: center;
}
footer #foot_nav ul li a{
	display: block;
}
footer #foot_nav ul li img{
	width: 25px;
}
footer #foot_nav ul li span{
	font-size: 1.2rem;
	display: block;
	text-align: center;
	margin-top: 5px;
}
footer #foot_nav ul li:nth-child(1){
	width: 17%;
}
footer #foot_nav ul li:nth-child(2){
	width: 22%;
	padding-top: 2px;
}
footer #foot_nav ul li:nth-child(3) {
	width: 17%;
}
footer #foot_nav ul li:nth-child(3) span{
	margin-top: 3px;
}
footer #foot_nav ul li:nth-child(3) img{
	width: 27px;
}
footer #foot_nav ul li:nth-child(4) {
	width: 27%;
}
footer #foot_nav ul li:nth-child(4) span{
	margin-top: 5px;
	font-size: 1.1rem;
    -webkit-transform: scale(0.8,1);
    transform: scale(0.8,1);
	white-space: nowrap;
}
footer #foot_nav ul li:nth-child(4) img{
	width: 23px;
}
footer #foot_nav ul li:nth-child(5){
	width: 17%;
}
footer #foot_nav ul li:nth-child(5) span:last-child{
	margin-top: 8px;
}

footer #foot_nav .nav_menu{
	width: 25px;
	box-sizing: border-box;
	position: relative;
	left: 13%;
	top:3px;
	height: 23px;
}
footer #foot_nav .menu-trigger,
footer #foot_nav .menu-trigger span {
	display: inline-block;
	transition: all .4s;
	box-sizing: border-box;
}
footer #foot_nav .menu-trigger {
	text-align: center;
}
footer #foot_nav .menu-trigger span {
	position: absolute;
	width: 25px;
	height: 3px;
	background-color: #999;
	border-radius: 3px;
}
footer #foot_nav .menu-trigger span:nth-of-type(1) {
	top: -2px;
}
footer #foot_nav .menu-trigger span:nth-of-type(2) {
	top: 6px;
}
footer #foot_nav .menu-trigger span:nth-of-type(3) {
	bottom: 1px;
}
footer #foot_nav .menu-trigger.active span:nth-of-type(1) {
	-webkit-transform: translateY(8px) rotate(-315deg);
	transform: translateY(9px) rotate(-315deg);
}
footer #foot_nav .menu-trigger.active span:nth-of-type(2) {
	opacity: 0;
}
footer #foot_nav .menu-trigger.active span:nth-of-type(3) {
	-webkit-transform: translateY(-9px) rotate(315deg);
	transform: translateY(-7px) rotate(315deg);
}

article {
	margin-bottom: 30px;
}

/*===========================================================
+-----+// live
===========================================================*/
#live {
	display: none;
	margin-bottom: 12px;
	padding-top: 15px;
	background-color: #111;
}

#live.is-active {
	display: block;
}

#live * {
	color: #fff;
}

#live .heading {
	text-align: center;
}

#live h2 {
	display: inline-block;
	margin-bottom: 10px;
}

#live h2 img {
	width: 176px;
}

#live .thumb {
	position: relative;
	cursor: pointer;
}

#live .thumb::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 2;
	width: 68px;
	height: 68px;
	background: url("/top/common/img/icon_play.png") center center no-repeat;
	background-size: contain;
	transform: translate(-50%,-50%);
}

#live .thumb img {
	position: relative;
	z-index: 1;
	width: 100%;
}

#live .txtArea {
	padding: 10px 20px 15px;
}

#live .title {
	margin-bottom: 6px;
	font-size: 2rem;
}

#live dl {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
}

#live dl *:nth-child(n + 3) {
	margin-top: 8px;
}

#live dt {
	width: 92px;
	font-size: 1.3rem;
}

#live dd {
	width: calc(100% - 92px);
	overflow: hidden;
	font-size: 1.3rem;
}

#live dd.ellipsis {
	white-space: nowrap;
	text-overflow: ellipsis;
}

#live .detail_item.is-hidden {
	display: none;
}

#live .url {
	word-break: break-all;
	text-decoration: underline;
}

#live .btn {
	margin-top: 35px;
	font-size: 1.3rem;
	text-align: right;
	transition: margin 0.3s linear;
}

#live .acd_active .btn {
	display: block;
}

#live .acd_open .btn {
	margin-top: 15px;
}

#live .btn a {
	position: relative;
	vertical-align: top;
	text-decoration: underline;
}

#live .more {
	display: inline-block;
}

#live .acd_open .more {
	display: none;
}

#live .close {
	display: none;
}

#live .acd_open .close {
	display: inline-block;
}

#live_modal{
	position: fixed;
	left: 0;
	top: 0;
	z-index: 500;
	width: 100%;
	height: 100vh;
	background: rgba(0,0,0,0.8);
	display: none;
}

#live_modal .live_content {
	max-width: 100%;
	margin: 0 auto;
}

#live_modal .inner {
	position: relative;
	display: block;
	width: 100%;
	height: 0;
	padding-bottom: 56.25%;
}

#live_modal #jwplayer {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}

#live_modal .close {
	max-width: 890px;
	margin: 107px auto 8px;
	display: block;
}

#live_modal .close a {
	width: 18px;
	height: 18px;
	display: block;
	margin-left: auto;
	margin-right: 8px;
	position: relative;
	cursor: pointer;
	transition: opacity 0.3s;
}

#live_modal .close a:hover {
	opacity: 0.7;
}

#live_modal .close span {
	height: 2px;
	width: 23px;
	display: block;
	background: #fff;
	position: absolute;
	left: -2px;
	top: 7px;
}
#live_modal .close span:nth-child(1) {
	transform: rotate(45deg);
}
#live_modal .close span:nth-child(2) {
	transform: rotate(-45deg);
}

.top_attention {
	display: none;
	margin: 15px 12px;
	padding: 4px 8px;
	font-size: 1.2rem;
	font-weight: bold;
	font-style: oblique;
	line-height: 1.16;
	color: #fd0015;
	word-break: break-all;
	border: 2px solid #fd0015;
	box-sizing: border-box;
}

/* ツイッター シェア */
#live .liveShare {
	padding: 6px 16px 15px;
	font-weight: bold;
}

#live .liveShare_link {
	display: inline-block;
}

#live .liveShare_row {
	display: inline-flex;
	align-items: center;
}

#live .liveShare_row img {
	width: 40px;
	margin-right: 12px;
}

#live .liveShare_title {
	margin-right: 10px;
	font-size: 1.4rem;
	font-style: oblique;
	border-bottom: 2.5px solid #d3002f;
}

#live .liveShare_copy {
	position: relative;
	display: inline-block;
	padding-right: 15px;
	font-size: 1.167rem;
}

#live .liveShare_copy::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 4.5px 0 4.5px 9px;
	border-color: transparent transparent transparent #ffffff;
	transform: translateY(-50%);
}

#live .liveShare_account {
	color: #1da1f2;
}

#live .liveShare_terms {
	color: #ffd800;
	text-decoration: underline;
}

#live .liveShare_txt {
	font-size: 1.2rem;
}